:root{--ui-canvas:#ffffff;--ui-surface:#ffffff;--ui-surface-soft:#f7faff;--ui-text:#1a1f2b;--ui-muted:#526174;--ui-border:#e5e7eb;--ui-border-strong:#cbd5e1;--ui-navy:#0b1d3a;--ui-blue:#2563eb;--ui-blue-soft:#eef5ff;--ui-green:#16a34a;--ui-green-soft:#eef9f1;--ui-mint:#e8faf7;--ui-coral:#ff6b6b;--ui-coral-soft:#fff0ee;--ui-warning-soft:#f2efff;--ui-danger-soft:#fff0ee;--ui-radius:10px;--ui-control:38px;--ui-page-gap:28px}body,html{background:var(--ui-canvas);color:var(--ui-text);font-size:15px}body,button,input,select,textarea{font-family:Helvetica Neue,Helvetica,Arial,sans-serif}a,button,input,select,summary,textarea{-webkit-tap-highlight-color:transparent}.app-shell{background:var(--ui-canvas)}.app-sidebar{width:224px;flex-basis:224px;padding:20px 14px;background:var(--ui-surface);border-right:1px solid var(--ui-border);box-shadow:1px 0 0 rgb(0 27 48/2%)}.sidebar-brand{min-height:58px;padding:0 10px 17px;border-bottom:0}.brand-mark{color:var(--ui-blue);font-size:12px;font-weight:700;letter-spacing:.24em}.sidebar-brand h2{margin-top:2px;color:var(--ui-navy);font-size:22px;letter-spacing:-.03em}.sidebar-collapse{width:30px;height:30px;border:1px solid var(--ui-border);border-radius:8px;color:var(--ui-muted);background:var(--ui-surface-soft)}.sidebar-group+.sidebar-group{margin-top:18px;padding-top:12px;border-top:1px solid var(--ui-border)}.sidebar-group-toggle{min-height:30px;margin-bottom:4px;padding:4px 9px;color:var(--ui-muted);font-size:12px;font-weight:700;letter-spacing:.08em}.sidebar-link{min-height:38px;margin:2px 0;padding:8px 11px;border-radius:8px;color:var(--ui-muted);font-size:14px;line-height:1.25}.sidebar-link .sidebar-description{display:none}.sidebar-link:hover{color:var(--ui-navy);background:var(--ui-surface-soft)}.sidebar-link.is-active{color:var(--ui-blue);background:var(--ui-blue-soft);box-shadow:inset 3px 0 0 var(--ui-blue);font-weight:700}.app-main{min-width:0;padding:0 30px 52px}.app-topbar{min-height:58px;margin:0 -30px 28px;padding:0 30px;background:rgb(255 255 255/92%);border-bottom:1px solid var(--ui-border);box-shadow:none}.topbar-context{min-width:150px}.topbar-context p{margin:0;color:var(--ui-muted);font-size:12px}.topbar-context strong{color:var(--ui-navy);font-size:14px}.app-header-actions{gap:12px}.app-user-name{max-width:180px;overflow:hidden;color:var(--ui-text);font-size:14px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.global-search{width:min(420px,34vw)}.app-header-actions select,.global-search input{min-height:var(--ui-control);border:1px solid var(--ui-border-strong);border-radius:8px;background:var(--ui-surface);font-size:14px}.app-content{width:min(100%,1760px);margin:0 auto}.flow-page{width:100%;max-width:none;margin:0}.flow-page>header,.page-header{min-height:78px;margin-bottom:26px;padding-bottom:20px;border-bottom:1px solid var(--ui-border)}.flow-page>header h1,.page-header h1{margin:3px 0 0;color:var(--ui-navy);font-size:clamp(28px,2.2vw,32px);line-height:1.12;letter-spacing:-.04em}.eyebrow{margin:0;color:var(--ui-blue);font-size:12px;font-weight:700;letter-spacing:.11em;line-height:1.3;text-transform:uppercase}.flow-page>header>div>p:not(.eyebrow),.page-description{margin-top:7px;color:var(--ui-muted);font-size:14px}.button-danger,.button-ghost,.button-link,.button-primary,.button-secondary,.task-open,.task-primary-action{min-height:var(--ui-control);border-radius:8px;font-size:14px;font-weight:600;line-height:1.2}.button-link,.button-primary,.task-primary-action{padding:10px 15px;color:#fff!important;background:var(--ui-blue)!important;border:1px solid var(--ui-blue)!important}.button-link:hover,.button-primary:hover,.task-primary-action:hover{background:var(--ui-navy)!important;border-color:var(--ui-navy)!important}.button-secondary,.task-open{padding:9px 14px;color:var(--ui-blue)!important;background:var(--ui-surface)!important;border:1px solid var(--ui-border-strong)!important}.button-secondary:hover,.task-open:hover{background:var(--ui-blue-soft)!important;border-color:var(--ui-blue)!important}.button-ghost{min-height:34px;padding:7px 10px;color:var(--ui-muted)!important}.button-ghost:hover{color:var(--ui-navy)!important;background:var(--ui-surface-soft)}input,select,textarea{min-height:var(--ui-control);border:1px solid var(--ui-border-strong);border-radius:8px;background:var(--ui-surface);color:var(--ui-text);font-size:14px}input,select{padding:8px 10px}textarea{padding:10px}label{color:var(--ui-text);font-size:13px;line-height:1.35}.creation-panel,.flow-card,.records-panel,.workspace-table{border:1px solid var(--ui-border);border-radius:var(--ui-radius);background:var(--ui-surface);box-shadow:0 1px 2px rgb(0 27 48/3%)}.records-panel{padding:20px}.affaire-toolbar,.mission-toolbar,.task-toolbar{gap:12px;margin-bottom:18px;padding-bottom:18px;border-bottom:1px solid var(--ui-border)}.affaire-toolbar label,.mission-toolbar label,.task-toolbar label{gap:6px;font-size:13px;font-weight:600}.task-tabs,.work-view-tabs{gap:4px;margin:0 0 18px;padding:4px;border:1px solid var(--ui-border);border-radius:10px;background:var(--ui-surface-soft)}.task-tabs button,.work-view-tabs button{min-height:36px;padding:8px 13px;border-radius:7px;color:var(--ui-muted);font-size:13px;font-weight:600}.task-tabs button.active,.work-view-tabs button[aria-pressed=true]{color:var(--ui-blue);background:var(--ui-surface);box-shadow:0 1px 3px rgb(0 27 48/8%)}.affaire-table-wrap,.data-table-wrap,.planning-table-wrap,.workspace-table{width:100%;overflow-x:auto;border-radius:8px}.affaire-table,.data-table,.records-table{width:100%;min-width:760px;border-collapse:separate;border-spacing:0;background:var(--ui-surface);font-size:14px}.affaire-table th,.data-table th,.records-table th{height:42px;padding:10px 14px;border-bottom:1px solid var(--ui-border-strong);color:var(--ui-muted);background:var(--ui-surface-soft);font-size:12px;font-weight:700;letter-spacing:.04em;text-align:left;text-transform:uppercase;white-space:nowrap}.affaire-table td,.data-table td,.records-table td{min-height:48px;padding:12px 14px;border-bottom:1px solid var(--ui-border);color:var(--ui-text);vertical-align:middle}.affaire-table tbody tr:hover,.data-table tbody tr:hover,.records-table tbody tr:hover{background:#fbfcfd}.affaire-table td strong,.affaire-title,.data-table td strong,.mission-list-main>a,.records-table td strong,.task-title{color:var(--ui-navy);font-size:14px;font-weight:650}.affaire-table td small,.data-table td small,.mission-list-main>small,.records-table td small,.task-context,.task-meta{color:var(--ui-muted);font-size:13px}.mission-list-row{min-height:72px;padding:13px 14px;border:0;border-bottom:1px solid var(--ui-border);border-radius:0;background:transparent}.mission-list-row:hover{background:#fbfcfd}.mission-list-main{gap:4px}.mission-list-main>span{color:var(--ui-muted);font-size:13px}.mission-list-row>div>small{color:var(--ui-muted);font-size:12px;font-weight:600}.mission-row-alert strong,.task-late{color:#a65f00;font-size:13px}.mission-principal-assignment{position:relative;display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}.mission-assignment-menu{position:relative;flex:0 0 auto}.mission-assignment-menu summary{min-width:32px;min-height:32px;padding:7px 8px;border:1px solid var(--ui-border);border-radius:8px;color:var(--ui-muted);background:var(--ui-surface);cursor:pointer;font-size:15px;line-height:1;list-style:none;text-align:center}.mission-assignment-menu summary::-webkit-details-marker{display:none}.mission-assignment-menu>div{position:absolute;z-index:6;right:0;top:38px;display:grid;min-width:210px;gap:8px;padding:10px;border:1px solid var(--ui-border);border-radius:9px;background:var(--ui-surface);box-shadow:0 12px 28px rgb(0 27 48/12%)}.mission-assignment-menu .quick-edit-popover{position:static;min-width:0;padding:0;border:0;box-shadow:none}.flow-badge,.status-badge{min-height:24px;padding:4px 8px;border-radius:999px;font-size:12px;font-weight:650}.dashboard-page>header{align-items:center}.dashboard-page .dashboard-focus-grid{gap:22px;grid-template-columns:minmax(0,2fr) minmax(300px,1fr)}.dashboard-agency,.dashboard-primary,.dashboard-watch{border:1px solid var(--ui-border);border-radius:var(--ui-radius);background:var(--ui-surface);box-shadow:0 1px 2px rgb(0 27 48/3%)}.dashboard-primary,.dashboard-watch{padding:22px}.dashboard-agency h2,.dashboard-section-heading h2{margin:3px 0 0;color:var(--ui-navy);font-size:20px;letter-spacing:-.02em}.dashboard-primary .operational-block,.dashboard-watch .operational-block{padding:0;border:0;background:transparent}.dashboard-primary .operational-block>h2,.dashboard-watch .operational-block>h2{color:var(--ui-muted);font-size:13px;font-weight:600}.dashboard-agency{margin-top:22px;padding:22px}.role-home-grid{gap:12px}.role-home-grid>a{min-height:112px;padding:17px;border:1px solid var(--ui-border);border-radius:9px;background:var(--ui-surface-soft)}.role-home-grid>a strong{color:var(--ui-navy);font-size:26px;letter-spacing:-.04em}.role-home-grid>a span{color:var(--ui-text);font-size:14px;font-weight:600}.task-card{min-height:88px;padding:15px 16px;border:1px solid var(--ui-border);border-left:3px solid var(--ui-border-strong);border-radius:9px;background:var(--ui-surface);box-shadow:none}.task-card.priority-high{border-left-color:#d69a2d}.task-card.priority-urgent{border-left-color:#bd5a52}.task-actions{gap:7px}.meeting-more-actions summary,.row-actions-menu summary,.task-actions-menu summary{min-width:34px;min-height:34px;padding:7px 9px;border:1px solid var(--ui-border);border-radius:8px;color:var(--ui-muted);background:var(--ui-surface);font-size:16px;line-height:1}.meeting-more-actions>div,.row-actions-menu>div,.task-actions-menu>div{border:1px solid var(--ui-border);border-radius:9px;background:var(--ui-surface);box-shadow:0 12px 28px rgb(0 27 48/12%)}.creation-panel .flow-form,.flow-form,.quick-create{border-radius:var(--ui-radius);background:var(--ui-surface)}.flow-form{gap:16px;padding:22px}.flow-form label{gap:7px;font-size:13px;font-weight:600}.empty-state,.flow-empty{min-height:0;padding:20px;border:1px dashed var(--ui-border-strong);border-radius:9px;background:var(--ui-surface-soft);color:var(--ui-muted);font-size:14px}.patrimoine-page .records-table td:first-child{color:var(--ui-muted);font-size:13px}.patrimoine-page .records-table td:nth-child(2) .record-link{color:var(--ui-green)}.direction-portfolio .direction-kpis,.direction-portfolio .role-home-grid{gap:14px}.direction-portfolio .metric-card,.direction-portfolio .role-home-grid>a{border:1px solid var(--ui-border);border-radius:9px;background:var(--ui-surface);box-shadow:none}.planning-workspace .planning-table,.resources-page .data-table{min-width:1180px}.planning-workspace .planning-table td,.planning-workspace .planning-table th{white-space:nowrap}.planning-workspace .planning-table td:first-child,.planning-workspace .planning-table td:nth-child(2),.planning-workspace .planning-table th:first-child,.planning-workspace .planning-table th:nth-child(2){white-space:normal;min-width:180px}.contacts-page .contact-card,.contacts-page .contact-row{min-height:66px;padding:13px 16px;border-bottom:1px solid var(--ui-border);background:var(--ui-surface)}.contacts-page .contact-row-actions summary{min-height:34px;border:1px solid var(--ui-border);border-radius:8px}.affaire-detail-workspace .affaire-overview,.affaire-workspace .affaire-overview{gap:24px;grid-template-columns:minmax(0,1fr) minmax(280px,320px)}.affaire-detail-workspace .affaire-overview-secondary,.affaire-workspace .affaire-overview-secondary{gap:14px}.affaire-detail-workspace .specialized-rail,.affaire-workspace .specialized-rail{min-width:0}@media (max-width:1100px){.app-sidebar{width:208px;flex-basis:208px}.app-main,.app-topbar{padding-inline:22px}.app-topbar{margin-inline:-22px}.affaire-detail-workspace .affaire-overview,.affaire-workspace .affaire-overview,.dashboard-page .dashboard-focus-grid{grid-template-columns:minmax(0,1fr)}}@media (max-width:760px){.app-sidebar{width:72px;flex-basis:72px;padding-inline:8px}.sidebar-brand{justify-content:center;padding-inline:0}.sidebar-group-toggle,.sidebar-link .font-medium,.sidebar-link .sidebar-description{display:none}.sidebar-link{justify-content:center;padding-inline:8px;font-size:15px}.app-main,.app-topbar{padding-inline:14px}.app-topbar{margin-inline:-14px}.app-header-actions select,.app-user-name,.topbar-context{display:none}.global-search{width:min(46vw,260px)}.flow-page>header,.page-header{align-items:flex-start;gap:14px}.flow-page>header h1,.page-header h1{font-size:28px}.records-panel{padding:14px}}