:root{color-scheme:dark light;--bg: #0d1b2a;--surface: #132436;--surface-2: #0a1622;--line: #22384f;--ink: #e7ecf1;--ink-2: #5b6b7c;--accent: #f0b429;--accent-ink: #0d1b2a;--warn: #e08a1e;--crit: #d8402f;--shell: #06090d;--shell-ink: #5b6b7c;--accent-line: #F0B429;--radius-sm: 3px;--radius-md: 10px;--radius-lg: 14px;--radius-device: 26px;--radius-btn: 10px;--gut: 18px;--row: 24px;--rail-w: 22px;--time-w: 62px;--rail-stroke: 2px;--node: 9px;--sans: "Barlow Condensed", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, system-ui, sans-serif;--mono: "IBM Plex Mono", ui-monospace, "SF Mono", SFMono-Regular, "Roboto Mono", Menlo, Consolas, monospace}:root[data-theme=light]{color-scheme:light;--bg: #FFFFFF;--surface: #E7ECF1;--surface-2: #FFFFFF;--line: #5B6B7C;--ink: #0D1B2A;--ink-2: #5B6B7C;--accent: #F0B429;--accent-ink: #0D1B2A;--warn: #E08A1E;--crit: #D8402F;--shell: #E7ECF1;--shell-ink: #5B6B7C;--accent-line: #22384F}:root[data-theme=dark]{color-scheme:dark;--bg: #0d1b2a;--surface: #132436;--surface-2: #0a1622;--line: #22384f;--ink: #e7ecf1;--ink-2: #5b6b7c;--accent: #f0b429;--accent-ink: #0d1b2a;--warn: #e08a1e;--crit: #d8402f;--shell: #06090d;--shell-ink: #5b6b7c;--accent-line: #F0B429}[hidden]{display:none!important}:root{--line-soft: color-mix(in srgb, var(--line) 45%, transparent);--line-strong: color-mix(in srgb, var(--line) 70%, var(--ink));--accent-wash: color-mix(in srgb, var(--accent) 14%, transparent);--warn-wash: color-mix(in srgb, var(--warn) 14%, transparent);--crit-wash: color-mix(in srgb, var(--crit) 14%, transparent);--fs-display: clamp(1.9rem, 3.6vw, 2.6rem);--fs-title: 1.3rem;--fs-body: .98rem;--fs-data: .86rem;--fs-label: .72rem;--tk-label: .18em;--tk-place: .03em;--chevron: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'><path d='M1 1l4 4 4-4' stroke='%23e7ecf1' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/></svg>")}:root[data-theme=light]{--chevron: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'><path d='M1 1l4 4 4-4' stroke='%230d1b2a' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/></svg>")}*,*:before,*:after{box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.5;font-weight:400}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer;border:none;background:none;color:inherit}input,select,textarea{font:inherit;color:inherit;background:transparent;border:none;outline:none}select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:var(--chevron);background-repeat:no-repeat;background-position:right 10px center;background-size:10px 6px;padding-right:26px!important;cursor:pointer}select::-ms-expand{display:none}select:disabled{cursor:not-allowed;opacity:.45}input[type=radio]{appearance:none;-webkit-appearance:none;-moz-appearance:none;width:16px;height:16px;border:1.5px solid var(--line-strong);border-radius:50%;background:var(--surface-2);cursor:pointer;transition:border-color .15s;flex-shrink:0;margin:0;position:relative}input[type=radio]:hover{border-color:var(--accent-line)}input[type=radio]:checked{border-color:var(--accent-line)}input[type=radio]:checked:after{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--accent)}.grain{position:fixed;inset:0;pointer-events:none;z-index:9999;background-image:repeating-linear-gradient(180deg,rgba(255,255,255,.02) 0 1px,transparent 1px 26px)}:root[data-theme=light] .grain{display:none}h1,h2,h3,h4{font-family:var(--sans);font-weight:600;letter-spacing:.01em;margin:0}em{font-style:italic}#app{min-height:100vh;display:flex;flex-direction:column}.appbar{background:var(--shell);color:var(--ink);border-bottom:1px solid var(--line);padding:14px clamp(1rem,3vw,2.5rem);display:flex;align-items:center;gap:2.5rem;flex-wrap:wrap}.appbar__brand{display:flex;align-items:center;gap:.85rem;flex-shrink:0}.appbar__name{font-family:var(--sans);font-size:var(--fs-title);font-weight:600;letter-spacing:var(--tk-place);text-transform:uppercase}.appbar__name em{color:var(--accent-line);font-style:normal;font-weight:600}.appbar__sub{font-family:var(--mono);font-size:var(--fs-label);font-weight:500;letter-spacing:var(--tk-label);text-transform:uppercase;display:block;opacity:.55;margin-top:3px}.appbar__nav{display:flex;gap:1.5rem;flex:1;flex-wrap:wrap}.appbar__link{font-size:.85rem;font-weight:500;padding:6px 0;color:var(--ink);opacity:.6;cursor:pointer;border-bottom:1px solid transparent;transition:opacity .15s,border-color .15s}.appbar__link:hover{opacity:1}.appbar__link--active{opacity:1;border-bottom-color:var(--accent-line)}.appbar__link--disabled{opacity:.25;cursor:not-allowed}.param-subnav{display:flex;gap:28px;border-bottom:1px solid var(--line);margin-bottom:28px;flex-wrap:wrap}.param-subtab{font-size:.85rem;font-weight:500;padding:10px 0;color:var(--ink);opacity:.6;cursor:pointer;border-bottom:2px solid transparent;background:none;transition:opacity .15s,border-color .15s}.param-subtab:hover{opacity:1}.param-subtab--active{opacity:1;border-bottom-color:var(--accent-line)}.param-section{max-width:760px}.param-section h2{font-size:1.1rem;margin:0 0 12px}.param-section__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.param-section__head h2{margin:0}.users-tbl .role-pill{display:inline-block;font-size:.7rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;padding:2px 8px;border-radius:var(--radius-md)}.users-tbl .role-pill--admin{background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent-line)}.users-tbl .role-pill--member{background:color-mix(in srgb,var(--ink) 12%,transparent);color:var(--ink-2)}.users-tbl .user-row__name{font-size:.78rem;color:var(--ink-2);margin-top:2px}.users-tbl .user-row--inactive{opacity:.6}.user-form .f-email,.user-form .f-name,.user-form .f-pwd,.user-form .f-role{grid-column:span 12}.appbar__theme{flex-shrink:0;width:32px;height:32px;display:grid;place-items:center;font-size:.95rem;line-height:1;color:var(--ink);opacity:.5;border:1px solid var(--line);border-radius:var(--radius-btn);transition:opacity .15s,border-color .15s}.appbar__theme:hover{opacity:1;border-color:var(--accent-line)}.appbar__theme:focus-visible{outline:2px solid var(--accent-line);outline-offset:2px}.appbar__user{display:flex;align-items:center;gap:.85rem;font-size:.82rem}.appbar__user-info{text-align:right;display:flex;flex-direction:column;line-height:1.25}.appbar__user-name{font-weight:500}.appbar__user-role{font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;opacity:.5}.appbar__user-action{font-size:.75rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase;padding:6px 12px;background:color-mix(in srgb,var(--ink) 8%,transparent);border-radius:var(--radius-btn);transition:background .15s}.appbar__user-action:hover{background:color-mix(in srgb,var(--ink) 18%,transparent)}.page{flex:1;max-width:1500px;width:100%;margin:0 auto;padding:clamp(1.5rem,4vw,3rem) clamp(1rem,3vw,2.5rem)}.page__header{margin-bottom:2.5rem;padding-bottom:0}.page__crumbs{font-family:var(--mono);font-size:var(--fs-label);font-weight:500;letter-spacing:var(--tk-label);text-transform:uppercase;color:var(--ink-2);margin-bottom:.7rem}.page__title{font-size:var(--fs-display);font-weight:700;line-height:1;letter-spacing:var(--tk-place);text-transform:uppercase;color:var(--accent-line)}.page__title em{font-style:normal}.page__header:after{content:"";display:block;width:54px;height:2px;margin-top:.85rem;background:var(--accent-line);opacity:.55}.page__sub{font-size:var(--fs-body);color:var(--ink-2);margin-top:.9rem;max-width:65ch}.form{display:grid;gap:2rem;max-width:920px}.form__section{border:1px solid var(--line);background:var(--surface);padding:1.5rem 1.75rem;border-radius:var(--radius-lg)}.form__section-title{font-size:.78rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2);margin-bottom:1rem}.form__row{display:grid;grid-template-columns:180px 1fr;gap:1rem;align-items:center;padding:.55rem 0;border-bottom:1px dashed transparent}.form__row+.form__row{border-top:1px dashed var(--line)}.form__row label{font-size:.9rem;font-weight:500;color:var(--ink)}.form__row input:not([type=radio]):not([type=checkbox]),.form__row select,.form__row textarea{border:1px solid var(--line);background:var(--surface-2);padding:8px 10px;border-radius:var(--radius-md);font-size:.95rem;width:100%;font-family:var(--sans);transition:border-color .15s}.form__row input:not([type=radio]):not([type=checkbox]):focus,.form__row select:focus,.form__row textarea:focus{border-color:var(--accent-line)}.form__row input[type=radio]{flex-shrink:0;width:16px;height:16px;cursor:pointer}.form__row textarea{min-height:90px;resize:vertical}.form__hint{font-size:.78rem;color:var(--ink-2);margin-top:.4rem;font-style:italic}.form__actions{display:flex;justify-content:flex-end;gap:.75rem;padding-top:1rem}.btn{font-family:var(--sans);font-size:.9rem;font-weight:500;letter-spacing:.02em;padding:10px 22px;border-radius:var(--radius-btn);cursor:pointer;transition:transform .05s,background .15s,color .15s}.btn:active{transform:translateY(1px)}.btn--primary{background:var(--accent);color:var(--accent-ink);border-radius:var(--radius-btn);font-weight:600}.btn--primary:hover{background:var(--warn)}.btn--ghost{background:transparent;color:var(--ink);border:1px solid var(--line-strong);border-radius:var(--radius-btn)}.btn--ghost:hover{background:var(--surface);border-color:var(--accent-line)}.gate{flex:1;display:flex;align-items:center;justify-content:center;padding:4rem 2rem}.gate__panel{max-width:480px;text-align:center}.gate__title{font-size:2.5rem;margin-bottom:.5rem}.gate__title em{color:var(--accent-line);font-style:normal}.gate__sub{font-size:1rem;color:var(--ink-2);margin-bottom:2rem}.gate__form{display:flex;flex-direction:column;gap:14px;text-align:left;margin-bottom:18px}.gate__field{display:flex;flex-direction:column;gap:4px}.gate__field span{font-size:.78rem;letter-spacing:.04em;color:var(--ink-2)}.gate__field input{border:1px solid var(--line-strong);border-radius:var(--radius-md);padding:10px 12px;font-size:.95rem;background:var(--surface-2)}.gate__field input:focus{border-color:var(--accent-line);outline:none}.gate__pwd-wrap{position:relative}.gate__pwd-wrap input{width:100%;padding-right:40px}.gate__pwd-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:none;border:none;color:var(--ink-2);cursor:pointer;border-radius:var(--radius-btn)}.gate__pwd-toggle:hover{color:var(--ink)}.gate__pwd-toggle--shown,.gate__pwd-toggle--shown:hover{color:var(--accent-line)}.gate__error{background:color-mix(in srgb,var(--crit) 8%,transparent);color:var(--crit);padding:8px 12px;border-radius:var(--radius-md);font-size:.85rem}.gate__form .btn--primary{margin-top:4px}.gate__form .btn-link{font-size:.82rem;color:var(--ink-2);background:none;border:none;cursor:pointer;text-decoration:underline;align-self:center}.gate__alt{border-top:1px solid var(--line);padding-top:18px;margin-top:6px}.gate__alt .btn{font-size:.85rem;padding:8px 14px}.banner{margin-bottom:1.5rem;padding:12px 16px;border-radius:var(--radius-md);font-size:.9rem}.banner--ok{background:color-mix(in srgb,var(--ink) 8%,transparent);color:var(--ink-2)}.banner--err{background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent-line)}.banner--warn{background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent-line);border-left:3px solid var(--accent)}.import-summary{position:relative;border:1px solid var(--line);background:color-mix(in srgb,var(--ink) 8%,transparent);border-left:3px solid var(--ink-2);border-radius:var(--radius-lg);padding:14px 18px;margin-bottom:12px;font-size:.88rem}.import-summary__close{position:absolute;top:8px;right:10px;width:26px;height:26px;border-radius:50%;font-size:1.1rem;line-height:1;color:var(--ink-2);background:transparent;border:1px solid transparent;cursor:pointer}.import-summary__close:hover{background:color-mix(in srgb,var(--ink) 11%,transparent);color:var(--ink);border-color:var(--line)}.import-summary__title{font-family:var(--sans);font-size:1.2rem;font-weight:500;color:var(--ink);margin-bottom:10px;padding-right:30px}.import-summary__date{font-family:var(--sans);font-size:.78rem;font-weight:500;color:var(--ink-2);margin-left:8px;text-transform:capitalize}.import-summary__grid{display:grid;grid-template-columns:max-content 1fr;column-gap:18px;row-gap:4px;margin:0}.import-summary__grid dt{font-size:.72rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);align-self:center}.import-summary__grid dd{margin:0;color:var(--ink)}.banner--warn strong{display:block;margin-bottom:6px;color:var(--ink)}.banner--warn ul{margin:0;padding-left:22px;font-weight:400}.banner--warn li{margin:2px 0}.bandeau .field--missing>label{color:var(--accent-line);font-weight:700}.bandeau .field--missing>label:after{content:" ⚠";margin-left:4px}.bandeau .field--missing input,.bandeau .field--missing select,.bandeau .field--missing textarea{border-color:var(--accent-line)!important;background:color-mix(in srgb,var(--accent) 4%,transparent)}.placeholder{border:1px dashed var(--line);background:var(--surface);padding:3rem;text-align:center;border-radius:var(--radius-lg);color:var(--ink-2);font-style:italic}.bandeau{position:sticky;top:0;z-index:20;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-lg);padding:14px 16px 16px;margin-bottom:28px;display:flex;flex-direction:column;gap:16px;box-shadow:0 6px 24px -16px #0000002e}.bandeau-section{display:flex;flex-direction:column;gap:8px;padding-top:12px;border-top:1px solid var(--line)}.bandeau-section:first-of-type{border-top:none;padding-top:0}.bandeau-section__title{font-family:var(--mono);font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:var(--ink-2);margin:0}.bandeau-section__grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:10px 12px}.bandeau .field{display:flex;flex-direction:column;gap:4px;min-width:0}.bandeau .field>label{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-2);white-space:nowrap}.bandeau .field input,.bandeau .field select,.bandeau .field textarea{border:1px solid var(--line);background:var(--surface-2);padding:6px 8px;border-radius:var(--radius-md);font-size:.9rem;font-family:var(--sans);color:var(--ink);transition:border-color .15s;width:100%;min-width:0}.bandeau .field textarea{resize:vertical;line-height:1.4;font-family:var(--sans)}.bandeau .field input:focus,.bandeau .field select:focus,.bandeau .field textarea:focus{border-color:var(--accent-line);outline:none}.bandeau .field input[disabled],.bandeau .field select[disabled]{opacity:.6;cursor:not-allowed}.datenav{display:flex;align-items:center;gap:14px;margin-bottom:18px;padding:10px 14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg)}.datenav__arrow{width:32px;height:32px;border-radius:50%;border:1px solid var(--line);background:var(--surface);color:var(--ink);font-size:1.2rem;font-weight:600;display:flex;align-items:center;justify-content:center;transition:background .15s,border-color .15s}.datenav__arrow:hover{background:var(--surface);color:var(--ink);border-color:var(--accent-line)}.datenav__center{flex:1;text-align:center}.datenav__date{font-family:var(--sans);font-size:1.5rem;font-weight:500;color:var(--ink);padding:4px 12px;border-radius:var(--radius-md);letter-spacing:.01em;text-transform:capitalize}.datenav__date:hover{background:color-mix(in srgb,var(--ink) 8.8%,transparent)}.datenav__today{font-family:var(--sans);font-size:.78rem;font-weight:500;letter-spacing:.04em;padding:7px 14px;border-radius:var(--radius-btn);background:var(--surface);color:var(--ink);border:1px solid var(--line);white-space:nowrap;transition:background .15s}.datenav__today:hover{background:color-mix(in srgb,var(--ink) 8.8%,transparent)}.datenav__today--active,.datenav__today:disabled{opacity:.4;cursor:not-allowed;background:transparent}.f-type{grid-column:span 3}.f-course{grid-column:span 1}.f-attrs{grid-column:span 2}.f-client{grid-column:span 4}.f-geo{grid-column:span 2}.f-materiel{grid-column:span 12}.f-veh-num{grid-column:span 3}.f-veh-cap{grid-column:span 2}.f-veh-plate{grid-column:span 3}.f-veh-option,.f-veh-skip{grid-column:span 4}.f-contact-dispatch{grid-column:span 8}.f-contact-pick{grid-column:span 12}.f-contact-name{grid-column:span 6}.f-contact-tel{grid-column:span 4}.f-subcontractor{grid-column:span 6}.f-drivers,.f-emb{grid-column:span 12}.f-dest{grid-column:span 8}.f-retour{grid-column:span 4}.f-end-date{grid-column:span 3}.f-return-flight{grid-column:span 6}.f-depart{grid-column:span 7}.f-remarques{grid-column:span 12}.f-veh-option .attrs-row{flex-wrap:nowrap}.f-actions{grid-column:span 12;align-items:flex-end;flex-direction:row;gap:8px;justify-content:flex-end;flex-wrap:wrap}.f-actions__sep{flex:1;min-width:16px}@media(max-width:1100px){.f-client,.f-contact-name,.f-contact-tel,.f-drivers{grid-column:span 6}.f-dest,.f-retour{grid-column:span 12}.f-end-date{grid-column:span 6}.f-return-flight,.f-depart,.f-remarques,.f-subcontractor{grid-column:span 12}}.field-disabled-note{font-size:.85rem;color:var(--ink-2);font-style:italic;padding:7px 0}.bandeau .drivers-row{display:flex;flex-direction:column;gap:6px}.bandeau .driver-pick{display:flex;gap:6px;align-items:center}.bandeau .driver-pick select.driver-sel{flex:1}.bandeau .driver-pick select.driver-role{width:auto;min-width:80px;flex:0 0 auto}.bandeau .driver-pick .driver-rm{flex:0 0 auto}.bandeau .emb-rows{display:flex;flex-direction:column;gap:6px}.bandeau .emb-row{display:grid;grid-template-columns:80px 1fr 60px 32px;gap:6px;align-items:center}.bandeau .depart-options{display:flex;flex-wrap:wrap;gap:14px;padding:4px 0}.bandeau .radio-opt{display:flex;align-items:center;gap:6px;font-weight:400;font-size:.88rem;cursor:pointer}.bandeau .radio-opt input[type=radio]{width:16px;height:16px;margin:0;flex-shrink:0;cursor:pointer}.bandeau .radio-opt em{color:var(--ink-2);font-size:.82rem}.bandeau .depart-manual{max-width:100px;width:auto!important}.btn-mini{font-family:var(--sans);font-size:.78rem;font-weight:500;padding:4px 10px;border-radius:var(--radius-btn);background:color-mix(in srgb,var(--ink) 8.8%,transparent);color:var(--ink);border:1px solid var(--line);cursor:pointer;white-space:nowrap}.btn-mini:hover{background:color-mix(in srgb,var(--ink) 17.6%,transparent)}.btn-mini:disabled{opacity:.3;cursor:not-allowed}#saisie-bandeau .banner{margin-bottom:10px}.missions-list{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg)}.missions-list__title{font-family:var(--sans);font-size:1.25rem;font-weight:500;padding:16px 20px 12px;display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--line);background:var(--surface)}.missions-list__count{font-family:var(--sans);font-size:.7rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;background:var(--surface);color:var(--ink);border:1px solid var(--line);padding:3px 9px;border-radius:999px}.missions-list__count--warn{color:var(--accent-line);border-color:var(--accent-line)}.missions-list__title .btn--small{margin-left:auto;padding:5px 12px;font-size:.78rem}.btn--small:disabled{opacity:.5;cursor:wait}.missions-list__empty,.missions-list__loading{padding:40px 20px;text-align:center;color:var(--ink-2);font-style:italic}.missions-tbl{width:100%;border-collapse:collapse;font-size:.88rem}.missions-tbl thead th{font-size:.7rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-2);text-align:left;padding:10px 14px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--ink) 4.4%,transparent)}.missions-tbl tbody td{padding:10px 14px;border-bottom:1px solid var(--line);vertical-align:top}.missions-tbl tbody tr:last-child td{border-bottom:none}.missions-tbl tbody tr:hover{background:color-mix(in srgb,var(--accent) 5%,transparent)}.missions-tbl .col-num{font-family:var(--mono);font-size:.85rem;white-space:nowrap;color:var(--ink)}.missions-tbl--xlsx{table-layout:fixed;font-size:.76rem;width:100%}.missions-tbl--xlsx th,.missions-tbl--xlsx td{padding:5px 7px;vertical-align:top;white-space:normal;word-break:normal;overflow-wrap:break-word;line-height:1.32;border-right:1px solid var(--line-soft))}.missions-tbl--xlsx th:last-child,.missions-tbl--xlsx td:last-child{border-right:none}.missions-tbl--xlsx th{white-space:nowrap;font-size:.66rem}.missions-tbl--xlsx th:nth-child(1),.missions-tbl--xlsx td.col-course{width:42px;padding-left:6px;padding-right:4px;white-space:nowrap;text-align:left}.missions-tbl--xlsx th:nth-child(6),.missions-tbl--xlsx td:nth-child(6){width:56px;text-align:center;white-space:nowrap}.missions-tbl--xlsx th.col-actions,.missions-tbl--xlsx td.col-actions{width:64px;padding-left:5px;padding-right:5px!important;white-space:nowrap}.missions-tbl--xlsx .btn-row{font-size:.72rem;padding:3px 6px}.missions-tbl--xlsx .btn-row--del{font-size:.9rem;padding:2px 0}.missions-tbl--xlsx th:nth-child(2),.missions-tbl--xlsx td:nth-child(2){width:15%}.missions-tbl--xlsx th:nth-child(3),.missions-tbl--xlsx td:nth-child(3){width:6%}.missions-tbl--xlsx th:nth-child(4),.missions-tbl--xlsx td:nth-child(4){width:10%}.missions-tbl--xlsx th:nth-child(5),.missions-tbl--xlsx td:nth-child(5){width:12%}.missions-tbl--xlsx th:nth-child(7),.missions-tbl--xlsx td:nth-child(7){width:24%}.missions-tbl--xlsx th:nth-child(8),.missions-tbl--xlsx td:nth-child(8){width:10%}.missions-tbl--xlsx th:nth-child(9),.missions-tbl--xlsx td:nth-child(9){width:14%}.missions-tbl--xlsx th:nth-child(10),.missions-tbl--xlsx td:nth-child(10){width:13%}.col-course__inner{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.col-course__head{display:flex;align-items:center;gap:4px}.col-course__num{font-family:var(--mono);font-weight:600;color:var(--ink)}.col-course .completeness__label{font-size:.66rem;padding:0 5px;line-height:1.5}.type-dot{display:inline-block;width:8px;height:8px;border-radius:50%;flex-shrink:0;cursor:help}.type-dot--ar{background:#8fa3b8}.type-dot--ram_aller{background:#6fb3ae}.type-dot--nav_retour{background:#4e8c8a}.type-dot--mjr{background:#c9825a}.type-dot--mjnr{background:#6e92cc}.type-dot--relais{background:#a886c4}.type-dot--a_b{background:#8fae6b}.type-dot--materiel{background:#9a8a72}.type-dot--sous_traite{background:#6f7d8c}.type-dot--unknown{background:transparent;border:1px dashed var(--line-strong)}.row-mission{cursor:pointer}.row-mission:hover td{background:color-mix(in srgb,var(--accent) 6%,transparent)}.type-badge{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;font-family:var(--mono);font-size:.78rem;font-weight:600;color:var(--accent-ink);cursor:help}.type-badge--unknown{background:transparent;color:var(--ink-2);border:1px dashed var(--line-strong)}.completeness{position:relative;display:inline-block;cursor:help}.completeness__label{display:inline-flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:.78rem;font-weight:600;padding:2px 9px;border-radius:999px;white-space:nowrap}.completeness--ok .completeness__label{background:color-mix(in srgb,var(--ink) 12%,transparent);color:var(--ink-2)}.completeness--warn .completeness__label{background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent-line)}.completeness--apreciser .completeness__label{background:color-mix(in srgb,var(--ink) 12%,transparent);color:var(--ink-2)}.completeness__tooltip{position:absolute;z-index:100;top:calc(100% + 6px);left:0;min-width:240px;max-width:360px;background:var(--ink);color:var(--surface);padding:10px 14px;border-radius:var(--radius-lg);font-family:var(--sans);font-size:.82rem;font-weight:400;line-height:1.4;text-align:left;box-shadow:0 8px 24px -10px #0006;opacity:0;pointer-events:none;transform:translateY(-4px);transition:opacity .12s,transform .12s;white-space:normal}.completeness__tooltip:before{content:"";position:absolute;top:-5px;left:12px;width:10px;height:10px;background:var(--ink);transform:rotate(45deg)}.completeness__tooltip strong{display:block;font-weight:600;margin-bottom:6px;color:var(--accent-line)}.completeness__tooltip ul{margin:0;padding-left:18px}.completeness__tooltip li{margin:2px 0}.completeness:hover .completeness__tooltip,.completeness:focus-within .completeness__tooltip{opacity:1;transform:translateY(0)}.row--incomplete td{background:color-mix(in srgb,var(--accent) 2.5%,transparent)}.row--incomplete:hover td{background:color-mix(in srgb,var(--accent) 6%,transparent)!important}.missions-list__summary{font-family:var(--sans);font-size:.78rem;font-weight:500;padding:4px 11px;border-radius:999px;margin-left:auto;white-space:nowrap}.missions-list__summary--ok{background:color-mix(in srgb,var(--ink) 12%,transparent);color:var(--ink-2)}.missions-list__summary--warn{background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent-line)}.missions-list__summary--clickable{border:none;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:background .12s;font:inherit;font-size:.78rem;font-weight:500}.missions-list__summary--clickable:hover{background:color-mix(in srgb,var(--accent) 25%,transparent)}.missions-list__summary-arrow{font-size:.95em;opacity:.7;transition:transform .12s}.missions-list__summary--clickable:hover .missions-list__summary-arrow{transform:translate(2px);opacity:1}.issues-review{display:flex;flex-direction:column;gap:16px}.issues-review__intro{margin:0;font-size:.9rem;color:var(--ink-2);font-style:italic}.issues-review__list{display:flex;flex-direction:column;gap:10px}.issue-card{display:block;width:100%;text-align:left;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-md);padding:12px 14px;cursor:pointer;font:inherit;color:var(--ink);transition:border-color .12s,background .12s,transform .05s;position:relative}.issue-card:hover{border-color:var(--accent-line);background:var(--surface)}.issue-card:active{transform:translateY(1px)}.issue-card__header{display:flex;align-items:center;gap:10px;margin-bottom:8px}.issue-card__num{font-family:var(--sans);font-weight:600;font-size:.92rem}.issue-card__client{font-size:.88rem;color:var(--ink);flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.issue-card__count{font-size:.78rem;font-weight:600;color:var(--accent-line);background:color-mix(in srgb,var(--accent) 12%,transparent);padding:2px 8px;border-radius:999px}.issue-card__issues{margin:0 0 8px;padding-left:18px;font-size:.85rem;color:var(--ink);line-height:1.5}.issue-card__issues li{margin-bottom:2px}.issue-card__cta{font-size:.82rem;color:var(--accent-line);font-weight:600;display:inline-block;transition:transform .12s}.issue-card:hover .issue-card__cta{transform:translate(2px)}.overview{max-width:1100px;margin:0 auto}.overview__header{margin-bottom:24px}.overview__title{font-family:var(--sans);font-size:clamp(1.6rem,3vw,2rem);font-weight:500;margin-bottom:6px}.overview__subtitle{margin:0;color:var(--ink-2);font-size:.92rem;font-style:italic}.overview__section{margin-bottom:36px}.overview__section-title{font-family:var(--sans);font-size:1.2rem;font-weight:500;margin-bottom:16px;color:var(--ink)}.overview__all-clean{background:color-mix(in srgb,var(--ink) 8%,transparent);border-left:3px solid var(--ink-2);padding:18px 22px;border-radius:0 var(--radius-btn) var(--radius-btn) 0}.overview__all-clean .overview__section-title{color:var(--ink-2);margin-bottom:6px}.overview__all-clean p{margin:0;color:var(--ink)}.overview__date-block{margin-bottom:24px;border-bottom:1px solid var(--line);padding-bottom:18px}.overview__date-block:last-child{border-bottom:none}.overview__date-header{display:flex;align-items:baseline;gap:14px;margin-bottom:12px;flex-wrap:wrap}.overview__date-title{font-family:var(--sans);font-size:1.05rem;font-weight:500;color:var(--ink);margin:0}.overview__date-meta{font-size:.82rem;color:var(--accent-line);font-weight:600;background:color-mix(in srgb,var(--accent) 12%,transparent);padding:2px 10px;border-radius:999px}.overview__date-goto{margin-left:auto;font-size:.85rem}.overview__date-rows{display:flex;flex-direction:column}.issue-row{display:grid;grid-template-columns:auto auto minmax(120px,1fr) auto minmax(0,2fr) auto;align-items:center;gap:12px;width:100%;text-align:left;background:transparent;border:none;border-bottom:1px solid var(--line);padding:10px 6px;cursor:pointer;font:inherit;color:var(--ink);transition:background .1s,padding .1s}.issue-row:last-child{border-bottom:none}.issue-row:hover{background:color-mix(in srgb,var(--accent) 6%,transparent);padding-left:10px}.issue-row__num{font-family:var(--mono);font-weight:600;font-size:.85rem;color:var(--ink);min-width:36px}.issue-row__client{font-size:.9rem;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.issue-row__count{font-size:.74rem;font-weight:600;color:var(--accent-line);background:color-mix(in srgb,var(--accent) 12%,transparent);padding:1px 8px;border-radius:999px;white-space:nowrap}.issue-row__issues{font-size:.82rem;color:var(--ink-2);font-style:italic;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.issue-row__cta{color:var(--accent-line);font-size:.95rem;opacity:.5;transition:opacity .12s,transform .12s}.issue-row:hover .issue-row__cta{opacity:1;transform:translate(2px)}.kpi-row{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:24px;align-items:stretch}.kpi-card{flex:0 0 auto;min-width:120px;border:1px solid var(--line);background:var(--surface);padding:14px 18px;border-radius:var(--radius-lg)}.kpi-card--breakdown{flex:1 1 auto}.kpi-card__pills{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:baseline;font-family:var(--mono);font-size:.95rem;line-height:1.2}.kpi-pill{display:inline-flex;align-items:baseline;gap:4px;white-space:nowrap}.kpi-pill__cap{color:var(--ink-2);font-size:.82rem}.kpi-pill__n{color:var(--ink);font-weight:600}.kpi-card--warn,.kpi-card--err{border-color:var(--accent-line);background:color-mix(in srgb,var(--accent) 8%,transparent)}.kpi-card__label{font-size:.7rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-2);margin-bottom:6px}.kpi-card__value{font-family:var(--sans);font-size:2rem;font-weight:500;color:var(--ink);line-height:1}.search-row{display:flex;align-items:center;gap:14px;margin-bottom:14px}.search-row input[type=search]{flex:1;border:1px solid var(--line);background:var(--surface-2);padding:8px 12px;border-radius:var(--radius-md);font-size:.95rem;font-family:var(--sans)}.search-row input[type=search]:focus{border-color:var(--accent-line);outline:none}.search-row__count{font-size:.78rem;letter-spacing:.04em;color:var(--ink-2)}.chauffeurs-tbl{font-size:.78rem;table-layout:auto}.chauffeurs-tbl thead th{padding:8px;font-size:.65rem;white-space:nowrap}.chauffeurs-tbl tbody td{padding:8px}.chauffeurs-tbl .col-phone{font-family:var(--mono);font-size:.74rem;color:var(--ink);line-height:1.5}.chauffeurs-tbl .col-email{font-size:.74rem;color:var(--ink);word-break:break-all}.chauffeurs-tbl .col-niss{font-family:var(--mono);font-size:.74rem;color:var(--ink);white-space:nowrap}.chauffeurs-tbl .col-statut{min-width:150px}.chauffeurs-tbl .statut-row{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.chauffeurs-tbl .statut-detail{font-family:var(--mono);font-size:.72rem;color:var(--ink-2);margin-top:3px}.chauffeurs-tbl .col-mark{text-align:center;font-weight:700;color:var(--ink-2)}.chauffeurs-tbl .col-flexi,.chauffeurs-tbl .col-carte{white-space:nowrap}.chauffeurs-tbl .a1--warn{color:var(--accent-line);font-weight:600}.chauffeurs-tbl .a1--err{color:var(--crit);font-weight:600}.contract{display:inline-block;font-size:.72rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;padding:2px 8px;border-radius:var(--radius-md)}.contract--temps_plein{background:color-mix(in srgb,var(--ink) 12%,transparent);color:var(--ink-2)}.contract--extra{background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent-line)}.contract--unknown{background:color-mix(in srgb,var(--ink) 13.2%,transparent);color:var(--ink-2)}.contract-detail{font-size:.78rem;color:var(--ink-2);margin-top:2px}.badge-mini{display:inline-block;font-size:.68rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;padding:1px 6px;border-radius:var(--radius-md);background:color-mix(in srgb,var(--ink) 12%,transparent);color:var(--ink-2);vertical-align:middle}.restriction{font-size:.85rem;color:var(--accent-line);font-weight:500}.badge-flexi{display:inline-block;font-size:.68rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;padding:1px 6px;border-radius:var(--radius-md);vertical-align:middle}.badge-flexi--flexi{background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent-line)}.badge-flexi--pas_flexi{background:color-mix(in srgb,var(--ink) 13.2%,transparent);color:var(--ink-2)}.badge-carte{display:inline-block;font-family:var(--mono);font-size:.72rem;font-weight:600;letter-spacing:.05em;padding:2px 8px;border-radius:var(--radius-md)}.badge-carte--viva{background:color-mix(in srgb,var(--ink) 12%,transparent);color:var(--ink-2)}.badge-carte--argent{background:color-mix(in srgb,var(--ink) 17.6%,transparent);color:var(--ink)}.saisie-banner-host:empty{display:none}.saisie-banner-host:not(:empty){margin-bottom:18px}.saisie-toolbar{display:flex;align-items:center;gap:10px;margin-bottom:22px;flex-wrap:wrap}.saisie-toolbar .btn{padding:9px 16px;font-size:.88rem}.saisie-toolbar__sep{flex:1}.saisie-sources{margin-bottom:14px}.saisie-sources:empty{display:none}.saisie-sources__inner{display:flex;align-items:center;gap:14px;padding:8px 12px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md)}.saisie-sources__hint{color:var(--ink-2);font-size:.78rem;font-style:italic}.missions-tbl .col-actions{width:1%;white-space:nowrap;text-align:right;padding-right:10px!important;vertical-align:middle}.col-actions__stack{display:flex;flex-direction:column;align-items:stretch;gap:3px}.btn-row{display:inline-flex;align-items:center;justify-content:center;font-size:.78rem;padding:3px 8px;border-radius:var(--radius-btn);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);transition:background .12s,border-color .12s,color .12s}.btn-row:hover{background:color-mix(in srgb,var(--ink) 8.8%,transparent)}.btn-row--edit:hover,.btn-row--preview:hover{border-color:var(--accent-line);color:var(--accent-line)}.btn-row--del{padding:3px 0;font-size:.95rem;line-height:1}.btn-row--del:hover{border-color:var(--crit);color:var(--crit);background:color-mix(in srgb,var(--crit) 6%,transparent)}.missions-list__footer{display:flex;justify-content:flex-end;margin-top:14px}.missions-list__footer .btn{font-size:.85rem;padding:8px 14px}body.modal-open{overflow:hidden}.modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center}.modal__backdrop{position:absolute;inset:0;background:"rgba(0, 0, 0, 0.55)";backdrop-filter:blur(2px);cursor:pointer}.modal__panel{position:relative;width:min(1240px,calc(100vw - 48px));max-height:calc(100vh - 48px);display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-lg);box-shadow:0 30px 80px -20px #0006;overflow:hidden}.modal--map .modal__panel{width:min(1280px,calc(100vw - 48px))}.cm-layout{display:grid;grid-template-columns:440px 1fr;gap:18px}.cm-form-host{min-width:0}.cm-form{display:flex;flex-direction:column;gap:18px}.cm-form input:not([type=checkbox]),.cm-form select,.cm-form textarea{background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--radius-md);padding:7px 9px}.cm-form input:focus,.cm-form select:focus,.cm-form textarea:focus{border-color:var(--accent-line);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 15%,transparent)}.cm-form input::placeholder{color:var(--ink-2)}.cm-check{display:inline-flex;align-items:center;gap:7px;font-weight:600;cursor:pointer;padding:6px 0}.cm-check input{width:16px;height:16px;accent-color:var(--accent-line);cursor:pointer}.cm-map{display:flex;flex-direction:column;min-height:460px;align-self:start;position:sticky;top:0;max-height:calc(100vh - 220px)}.cm-map__canvas{flex:1;min-height:420px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-2)}.cm-map__hint{font-size:.8rem;color:var(--ink-2);margin-top:8px;min-height:1.1em}.cm-meta{display:grid;grid-template-columns:1fr 1fr;gap:8px 10px;align-items:center;padding:0 0 16px;border-bottom:1px solid var(--line)}.cm-meta select,.cm-meta input:not([type=checkbox]){width:100%}.cm-meta__bas{font-weight:500}.cm-meta__notes{grid-column:1 / -1;width:100%;resize:vertical;min-height:44px;font-family:var(--sans)}.cm-client__trigger{width:100%;display:flex;justify-content:space-between;align-items:center;gap:8px;background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--radius-md);padding:7px 9px;cursor:pointer;font:inherit;color:inherit;text-align:left}.cm-client__chev{color:var(--ink-2);font-size:.7rem}.clm-overlay{position:fixed;inset:0;z-index:1200;background:"rgba(0, 0, 0, 0.45)";display:flex;align-items:flex-start;justify-content:center;padding:6vh 16px;overflow-y:auto}.clm{width:min(720px,100%);background:var(--surface);border-radius:4px;box-shadow:0 24px 60px color-mix(in srgb,var(--ink) 35%,transparent);display:flex;flex-direction:column}.clm__head{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--line)}.clm__head h2{margin:0;font-size:1.05rem}.clm__x{border:none;background:none;font-size:1.1rem;color:var(--ink-2);cursor:pointer;padding:4px}.clm__x:hover{color:var(--ink)}.clm__new{display:flex;flex-direction:column;gap:8px;padding:16px 20px;background:var(--surface);border-bottom:1px solid var(--line)}.clm__new-title{font-size:.72rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2)}.clm__row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.clm__row>input,.clm__row>select{flex:1 1 140px;min-width:0}.clm .clm__wide{width:100%}.clm input,.clm select{background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--radius-md);padding:7px 9px;font:inherit;color:inherit}.clm input:focus,.clm select:focus{border-color:var(--accent-line);outline:none;box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 15%,transparent)}.clm__create{flex:0 0 auto;padding:7px 14px;border:1px solid var(--accent-line);background:var(--accent);color:var(--surface);border-radius:var(--radius-btn);cursor:pointer;font-family:var(--sans);font-weight:600}.clm__create:disabled{opacity:.45;cursor:not-allowed}.clm__existe{font-size:.78rem;line-height:1.35;color:var(--accent-line);border-left:2px solid var(--accent-line);padding:4px 0 4px 9px}.clm__search{margin:12px 20px 0}.clm__cards{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:12px 20px 20px;max-height:46vh;overflow-y:auto}.clm-card{display:flex;flex-direction:column;gap:3px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);cursor:pointer;font-family:var(--sans);text-align:left}.clm-card:hover{border-color:var(--accent-line);background:color-mix(in srgb,var(--accent) 5%,transparent)}.clm-card__top{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.clm-card__nom{font-weight:600}.clm-card__freq{font-size:.72rem;color:var(--accent-line);font-weight:700;font-variant-numeric:tabular-nums}.clm-card__line{font-size:.75rem;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.clm__empty{grid-column:1 / -1;font-size:.85rem;color:var(--ink-2);padding:12px;text-align:center}.dm-form{border-bottom:none;border-top:1px solid var(--line)}.clm input[type=radio],.clm input[type=checkbox]{border:none;padding:0;box-shadow:none;width:auto;accent-color:var(--accent-line)}.dm-field{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.dm-lbl{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-2);min-width:56px}.dm-radios{display:flex;gap:10px;flex-wrap:wrap}.dm-radio,.dm-check{display:inline-flex;align-items:center;gap:5px;font-size:.82rem;cursor:pointer}.dm-date{display:inline-flex;align-items:center;gap:6px;font-size:.82rem;color:var(--ink-2);flex:1 1 160px}.dm-tels{display:flex;flex-direction:column;gap:6px}.dm-addtel{align-self:flex-start;font-size:.78rem;color:var(--accent-line);background:none;border:1px dashed var(--line-strong);border-radius:var(--radius-btn);padding:3px 9px;cursor:pointer;font-family:var(--sans)}.dm-addtel:hover{border-color:var(--accent-line)}.dm-badge{font-size:.68rem;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-2)}.cm-meta #cm-type{font-weight:600}.cm-trip__label{display:flex;align-items:center;gap:10px;font-size:.72rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-2);margin-bottom:10px}.cm-mirror{font-family:var(--sans);font-size:.68rem;letter-spacing:.02em;text-transform:none;color:var(--accent-line);background:none;border:1px dashed var(--line-strong);border-radius:var(--radius-btn);padding:3px 9px;cursor:pointer}.cm-mirror:hover{border-color:var(--accent-line);background:color-mix(in srgb,var(--accent) 6%,transparent)}.cm-spine{margin-left:7px;padding-left:22px;border-left:2px solid color-mix(in srgb,var(--accent) 35%,transparent)}.cm-stop{position:relative;padding-bottom:16px}.cm-stop__dot{position:absolute;left:-29px;top:8px;width:12px;height:12px;border-radius:50%;background:var(--bg);border:2px solid var(--accent-line);box-sizing:border-box}.cm-stop--anchor .cm-stop__dot{background:var(--accent)}.cm-stop--dest .cm-stop__dot{width:14px;height:14px;left:-30px;border-width:3px}.cm-stop__body{display:flex;flex-direction:column;gap:6px}.cm-stop__line{display:flex;gap:6px}.cm-stop__place{flex:1;font-weight:600}.cm-stop__place{display:block;min-width:0;box-sizing:border-box;background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--radius-md)}.cm-stop__place:focus-within{border-color:var(--accent-line);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 15%,transparent)}.cm-stop__place::part(input){box-sizing:border-box;width:100%;font-family:var(--sans);font-size:.95rem;font-weight:600;line-height:1.4;color:var(--ink);background:transparent;border:0;border-radius:0;box-shadow:none;outline:none;padding:7px 9px;margin:0;min-height:0;height:auto}.cm-stop__place::part(prediction-list){background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);color:var(--ink)}.cm-stop__place::part(prediction-item){color:var(--ink)}.cm-stop__place::part(prediction-item-secondary-text){color:var(--ink-2)}.cm-stop__place::part(prediction-item-match){color:var(--accent-line);font-weight:700}.cm-stop__place::part(focus-ring){outline-color:var(--accent-line)}.cm-stop__echo{flex:1;font-weight:600;color:var(--ink);padding:8px 10px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md)}.cm-stop__lbl{flex:1;align-self:center;text-align:right;font-size:.68rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-2)}.cm-note{width:100%;font-size:.8rem}.cm-stop__more{align-self:flex-start;font-size:.72rem;color:var(--accent-line);background:none;border:none;padding:2px 0;cursor:pointer;font-family:var(--sans)}.cm-stop__more:hover{text-decoration:underline}.cm-stop__paxbox,.cm-stop__notebox{display:none}.cm-stop__paxbox.is-open{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.cm-stop__notebox.is-open{display:block}.cm-trip--pivot .cm-trip__label{color:var(--accent-line);font-weight:700}.cm-time{width:96px;flex:none}.cm-date{width:150px;flex:none}.cm-flow{display:inline-flex}.cm-flow button{font-size:.68rem;padding:2px 8px;border:1px solid var(--line);background:var(--surface);color:var(--ink-2);cursor:pointer;font-family:var(--sans);line-height:1.5}.cm-flow button:first-child{border-radius:var(--radius-btn) 0 0 var(--radius-btn);border-right:none}.cm-flow button:last-child{border-radius:0 var(--radius-btn) var(--radius-btn) 0}.cm-flow button.is-active{background:var(--accent);color:var(--surface);border-color:var(--accent-line)}.cm-stop__meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.cm-pax::-webkit-inner-spin-button,.cm-pax::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.cm-pax{-moz-appearance:textfield;appearance:textfield}.cm-stop__tag{font-size:.68rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-2)}.cm-stop__cum{font-size:.75rem;font-weight:600;color:var(--accent-line)}.cm-stop__del{border:none;background:none;color:var(--ink-2);cursor:pointer;margin-left:auto;font-size:.85rem;line-height:1;padding:4px}.cm-stop__del:hover{color:var(--accent-line)}.cm-pax{width:56px;text-align:center}.cm-form .cm-stop__paxbox input.cm-pax{height:24px;min-height:0;padding:0 6px;font-size:.8rem;align-self:center;box-sizing:border-box}.cm-stop__paxbox.is-open{align-items:center}.cm-addrow{display:flex;gap:8px;margin:2px 0 16px}.cm-addstop{border:1px dashed var(--line-strong);background:none;color:var(--accent-line);padding:5px 11px;border-radius:var(--radius-btn);cursor:pointer;font-size:.82rem;font-family:var(--sans)}.cm-addstop:hover{border-color:var(--accent-line);background:color-mix(in srgb,var(--accent) 6%,transparent)}.cm-addstop--quiet{border-color:transparent;color:var(--ink-2);font-size:.78rem;padding:3px 6px}.cm-addstop--quiet:hover{border-color:var(--line-strong);color:var(--accent-line);background:none}.cm-prec{display:inline-flex}.cm-prec button{font-size:.68rem;padding:2px 7px;border:1px solid var(--line);background:var(--surface);color:var(--ink-2);cursor:pointer;line-height:1.5;font-family:var(--sans)}.cm-prec button:not(:last-child){border-right:none}.cm-prec button:first-child{border-radius:var(--radius-btn) 0 0 var(--radius-btn)}.cm-prec button:last-child{border-radius:0 var(--radius-btn) var(--radius-btn) 0}.cm-prec button.is-active{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.cm-precrow{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.cm-pin{font-size:.68rem;padding:2px 8px;line-height:1.5;font-family:var(--mono);letter-spacing:.04em;color:var(--ink-2);background:transparent;border:1px dashed var(--line);border-radius:var(--radius-btn);cursor:pointer}.cm-pin:hover{color:var(--ink);border-color:var(--accent-line)}.cm-pin.is-armed{color:var(--accent-ink);background:var(--accent);border-style:solid;border-color:var(--accent)}.cm-pin:focus-visible{outline:2px solid var(--accent-line);outline-offset:2px}.cm-details{display:grid;grid-template-columns:1fr 1fr;gap:10px 12px;padding-top:12px;border-top:1px dashed var(--line)}.cm-detail{display:flex;flex-direction:column;gap:3px}.cm-detail label{font-size:.7rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-2)}.cm-detail input,.cm-detail select{width:100%}.cm-repat{grid-column:1 / -1;display:grid;grid-template-columns:1fr 1fr;gap:10px 12px}.cm-repat--top{padding-bottom:12px;border-bottom:1px dashed var(--line)}.cm-relais__crew{display:flex;gap:8px}.cm-stop__swap.is-on{color:var(--accent-line);font-weight:500}.cm-relay{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:6px}.cm-relay__col{display:flex;flex-direction:column;gap:4px;align-items:flex-start;padding:8px;border:1px solid var(--line);border-radius:4px}.cm-relay__col--other{border-style:dashed;opacity:.85}.cm-relay__hd{font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-2)}.cm-relay__p{border:1px solid var(--line);border-radius:3px;background:none;padding:2px 8px;cursor:pointer;font:inherit;font-size:.82rem;text-align:left}.cm-relay__p.is-wheel{border-color:var(--accent-line);font-weight:500}.cm-relay__empty{font-size:.78rem;color:var(--ink-2);font-style:italic}.cm-relay__hint{font-size:.7rem;color:var(--ink-2);margin-top:4px}.cm-stop__riders{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.cm-rider{display:inline-flex;align-items:center;gap:2px}.cm-rider__del{border:0;background:none;cursor:pointer;color:var(--ink-2);padding:0 2px;line-height:1}.cm-rider__del:hover{color:var(--crit)}.cm-stop__swapbox{display:none;align-items:center;gap:8px;margin-top:4px}.cm-stop__swapbox.is-open{display:flex}.cm-stop__swapbox label{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-2)}.cm-relais__crew>*{flex:1;min-width:0}.cm-repat__free{grid-column:2;grid-row:1 / span 2}.cm-repat__free textarea{flex:1;width:100%;min-height:72px;resize:vertical;font-family:var(--sans);font-size:inherit}.cm-notes{display:flex;flex-direction:column;gap:4px;padding-top:12px;border-top:1px dashed var(--line)}.cm-notes label{font-size:.7rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-2)}.cm-notes textarea{width:100%;resize:vertical;min-height:48px;font-family:var(--sans)}.modal__header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 22px;border-bottom:1px solid var(--line);background:var(--surface-2)}.modal__title{font-family:var(--sans);font-size:1.25rem;font-weight:500;color:var(--ink)}.modal__title strong{font-weight:600;color:var(--accent-line)}.modal__title-sub{font-family:var(--sans);font-size:.85rem;font-weight:400;color:var(--ink-2);margin-left:8px}.modal__header-actions{display:flex;align-items:center;gap:14px}.didactic-toggle{display:inline-flex;align-items:center;gap:8px;font-size:.82rem;color:var(--ink-2);cursor:pointer;user-select:none}.didactic-toggle input[type=checkbox]{appearance:none;-webkit-appearance:none;width:32px;height:18px;border-radius:9px;background:color-mix(in srgb,var(--ink) 18%,transparent);position:relative;cursor:pointer;transition:background .15s;flex-shrink:0}.didactic-toggle input[type=checkbox]:after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:var(--surface-2);transition:left .15s}.didactic-toggle input[type=checkbox]:checked{background:var(--accent)}.didactic-toggle input[type=checkbox]:checked:after{left:16px}.modal__close{width:30px;height:30px;border-radius:50%;font-size:1.4rem;line-height:1;color:var(--ink);transition:background .12s;display:inline-flex;align-items:center;justify-content:center}.modal__close:hover{background:color-mix(in srgb,var(--ink) 13.2%,transparent)}.modal__body{flex:1;overflow-y:auto;padding:20px 22px 22px}.modal__footer{display:flex;align-items:center;gap:10px;padding:12px 22px;border-top:1px solid var(--line);background:var(--surface)}.modal__footer-sep{flex:1}.btn--danger{background:transparent;color:var(--crit);border:1px solid color-mix(in srgb,var(--crit) 40%,transparent)}.btn--danger:hover{background:color-mix(in srgb,var(--crit) 8%,transparent);border-color:var(--crit)}.modal__body .bandeau{position:static;margin-bottom:0;box-shadow:none;border:none;background:transparent;padding:0;border-radius:0}.modal__body .banner{margin-bottom:14px}.fiche-preview__controls{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin-bottom:10px}.fiche-preview__switcher{display:flex;gap:8px;align-items:center}.fiche-preview__switcher label{font-weight:600;font-size:13px}.fiche-preview-host{background:color-mix(in srgb,var(--ink) 13.2%,transparent);margin:-20px -22px -22px;padding:18px 12px;display:flex;justify-content:center;min-height:calc(100vh - 200px)}.fiche-preview-host .fiche{box-shadow:0 6px 24px -6px #00000040}.rule-cite{grid-column:1 / -1;border-left:3px solid var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent);padding:10px 14px;margin:2px 0 6px;border-radius:0 var(--radius-btn) var(--radius-btn) 0;display:flex;flex-direction:column;gap:8px}.rule-cite__item{font-size:.82rem;line-height:1.5;color:var(--ink)}.rule-cite__head{font-weight:600;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-2);margin-bottom:3px}.rule-cite__body{font-style:italic;color:var(--ink-2)}.modal--no-didactic .rule-cite{display:none}.procedure{max-width:820px;margin:0 auto;padding:8px 0 60px}.procedure__header{border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:32px}.procedure__title{font-family:var(--sans);font-size:clamp(1.6rem,3vw,2.1rem);font-weight:500;margin-bottom:18px;color:var(--ink)}.procedure__meta{display:grid;grid-template-columns:max-content 1fr;gap:4px 16px;margin-bottom:18px;font-size:.88rem}.procedure__meta dt{font-weight:600;color:var(--ink-2);text-transform:uppercase;font-size:.72rem;letter-spacing:.06em;align-self:center}.procedure__meta dd{margin:0;color:var(--ink)}.procedure__meta code{font-family:var(--mono);font-size:.82rem;background:color-mix(in srgb,var(--ink) 8.8%,transparent);padding:1px 6px;border-radius:2px}.procedure__intro{color:var(--ink-2);font-size:.92rem;font-style:italic;line-height:1.55;margin:0}.procedure__intro code{font-family:var(--mono);font-style:normal;background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--accent-line);padding:0 4px;border-radius:2px}.proc-verbatim{font-size:.95rem;line-height:1.65;color:var(--ink)}.proc-verbatim__h2{font-family:var(--sans);font-size:1.3rem;font-weight:500;color:var(--accent-line);border-bottom:2px solid var(--accent);padding-bottom:6px;margin:36px 0 16px}.proc-verbatim__h2:first-child{margin-top:0}.proc-verbatim__h3{font-family:var(--sans);font-size:1.02rem;font-weight:600;color:var(--ink);margin:22px 0 10px}.proc-verbatim p{margin:0 0 12px}.proc-verbatim__emphasis{margin:14px 0 6px!important;color:var(--ink)}.proc-verbatim__list{margin:0 0 14px;padding-left:22px}.proc-verbatim__list li{margin-bottom:4px}.proc-notes{margin-top:48px;padding-top:24px;border-top:2px solid var(--ink)}.proc-notes__title{font-family:var(--sans);font-size:1.2rem;font-weight:600;margin-bottom:8px}.proc-notes__intro{font-size:.92rem;color:var(--ink-2);font-style:italic;margin:0 0 22px}.proc-notes__item{margin-bottom:20px;padding:14px 16px;background:var(--surface-2);border-left:3px solid var(--ink);border-radius:0 var(--radius-btn) var(--radius-btn) 0}.proc-notes__item-title{font-family:var(--sans);font-size:.95rem;font-weight:600;color:var(--ink);margin:0 0 6px}.proc-notes__item p{margin:0;font-size:.92rem;line-height:1.55;color:var(--ink)}.proc-notes__item code{font-family:var(--mono);font-size:.85em;background:var(--surface-2);padding:1px 5px;border-radius:2px}.driver-form .f-prenom,.driver-form .f-nom{grid-column:span 4}.driver-form .f-unlock{grid-column:span 4;align-self:end}.driver-form .f-tel,.driver-form .f-email{grid-column:span 6}.driver-form .f-contract{grid-column:span 12}.driver-form .f-contract-detail,.driver-form .f-niss{grid-column:span 6}.driver-form .f-a1,.driver-form .f-permis,.driver-form .f-restriction{grid-column:span 4}.driver-form .f-flexi,.driver-form .f-carte{grid-column:span 6}.vehicle-form .f-num{grid-column:span 3}.vehicle-form .f-unlock{grid-column:span 9;align-self:end}.vehicle-form .f-plate,.vehicle-form .f-capacity,.vehicle-form .f-remorque{grid-column:span 4}.vehicle-form .f-rem-color{grid-column:span 12}.field--locked>label:after{content:" 🔒";font-size:.78em;color:var(--ink-2)}.field--locked input[readonly]{background:color-mix(in srgb,var(--ink) 8.8%,transparent);color:var(--ink-2);cursor:not-allowed}.field-note{margin:4px 0 0;font-size:.78rem;line-height:1.35;color:var(--ink-2)}.btn-link{background:none;border:none;padding:0;font-size:.82rem;color:var(--accent-line);text-decoration:underline;cursor:pointer;text-align:left}.btn-link:hover{color:var(--accent-line)}.bandeau-section--inactive{opacity:.55}.bandeau-section__count{font-family:var(--mono);font-weight:400;margin-left:6px;color:var(--ink-2)}.bandeau-section__note{color:var(--ink-2);font-style:italic;font-size:.9rem;padding:6px 0}.segments-list{display:flex;flex-direction:column;gap:14px}.segments-add-row{display:flex;justify-content:flex-start;padding-top:4px}.segment-card{border:1px solid var(--line);border-left:3px solid var(--ink-2);border-radius:var(--radius-md);background:var(--surface);padding:12px 14px 10px}.segment-card__header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px}.segment-card__title{margin:0;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--ink)}.segment-card__remove{font-size:.78rem;background:transparent;border:none;color:var(--ink-2);cursor:pointer}.segment-card__remove:hover{color:var(--crit)}.segment-card__grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:10px 12px}.f-seg-origin,.f-seg-destination{grid-column:span 4}.f-seg-origin-link,.f-seg-destination-link{grid-column:span 2}.f-seg-departure{grid-column:span 4}.f-seg-arrival{grid-column:span 3}.f-seg-vehicle{grid-column:span 5}.f-seg-cap,.f-seg-plate{grid-column:span 2}.f-seg-veh-options{grid-column:span 3}.f-seg-drivers,.f-seg-stops{grid-column:span 12}.f-seg-materiel,.f-seg-notes{grid-column:span 6}.field--inactive{opacity:.45;pointer-events:none}.field--inactive>label:after{content:" (non pertinent)";font-size:.7rem;font-style:italic;color:var(--ink-2);text-transform:none;letter-spacing:0}.seg-count-badge{display:inline-block;font-size:.66rem;padding:0 5px;margin-left:4px;background:color-mix(in srgb,var(--ink) 12%,transparent);color:var(--ink);border-radius:8px;font-family:var(--mono)}.missions-tbl th.th-sortable{cursor:pointer;user-select:none;position:relative;transition:color .12s}.missions-tbl th.th-sortable:hover,.missions-tbl th.th-sortable--active{color:var(--accent-line)}.missions-tbl th .th-sort-arrow{display:inline-block;margin-left:4px;font-size:.85em;opacity:.7;font-weight:400}.missions-tbl th.th-sortable:not(.th-sortable--active) .th-sort-arrow:before{content:"↕";opacity:.25}.enrich-review{display:flex;flex-direction:column;gap:22px}.enrich-section{display:flex;flex-direction:column;gap:8px}.enrich-section__title{font-family:var(--mono);font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--ink);margin:0}.enrich-section__title .dim{font-weight:400;margin-left:6px}.enrich-section__hint{font-size:.85rem;margin:0 0 6px}.enrich-tbl{width:100%;border-collapse:collapse;font-size:.85rem}.enrich-tbl th{text-align:left;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-2);padding:4px 6px;border-bottom:1px solid var(--line)}.enrich-tbl td{padding:5px 6px;border-bottom:1px solid var(--line);vertical-align:middle}.enrich-tbl input[type=text],.enrich-tbl select{border:1px solid var(--line);background:var(--surface-2);padding:4px 7px;border-radius:var(--radius-md);font-size:.85rem;font-family:var(--sans);color:var(--ink);width:100%}.enrich-tbl input[type=text]:focus,.enrich-tbl select:focus{border-color:var(--accent-line);outline:none}.enrich-tbl input[type=checkbox]{appearance:none;-webkit-appearance:none;width:16px;height:16px;border:1.5px solid var(--line-strong);border-radius:3px;background:var(--surface-2);cursor:pointer;position:relative}.enrich-tbl input[type=checkbox]:checked{border-color:var(--accent-line);background:var(--accent)}.enrich-tbl input[type=checkbox]:checked:after{content:"✓";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;font-size:11px;font-weight:700;line-height:1}.enrich-drivers-list{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:6px 16px;font-size:.85rem}.depart-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.depart-row input[type=time]{width:auto;max-width:130px}.depart-suggest{font-size:.78rem;white-space:nowrap}.attrs-row{display:flex;flex-wrap:wrap;gap:14px 18px;align-items:center;padding:6px 0}.checkbox-opt{display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-size:.9rem;color:var(--ink)}.checkbox-opt input[type=checkbox]{appearance:none;-webkit-appearance:none;width:16px;height:16px;border:1.5px solid var(--line-strong);border-radius:3px;background:var(--surface-2);cursor:pointer;position:relative;flex-shrink:0;transition:border-color .15s,background .15s}.checkbox-opt input[type=checkbox]:hover{border-color:var(--accent-line)}.checkbox-opt input[type=checkbox]:checked{border-color:var(--accent-line);background:var(--accent)}.checkbox-opt input[type=checkbox]:checked:after{content:"✓";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;font-size:11px;font-weight:700;line-height:1}.contract-options{display:flex;gap:18px;flex-wrap:wrap;align-items:center;padding-top:4px}.tel-rows{display:flex;flex-direction:column;gap:6px}.tel-row{display:flex;align-items:center;gap:6px}.tel-row .tel-input{flex:1;border:1px solid var(--line);background:var(--surface-2);padding:6px 8px;border-radius:var(--radius-md);font-size:.9rem}.tel-row .tel-input:focus{border-color:var(--accent-line)}.journal{max-width:1100px;margin:0 auto}.journal__header{margin-bottom:18px}.journal__title{font-family:var(--sans);font-size:clamp(1.6rem,3vw,2rem);font-weight:500;margin:0 0 4px}.journal__subtitle{margin:0;color:var(--ink-2);font-size:.88rem;font-style:italic}.journal__filters{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:22px;padding:12px 14px;background:color-mix(in srgb,var(--ink) 4%,transparent);border:1px solid var(--line);border-radius:var(--radius-md)}.journal__filter{display:flex;flex-direction:column;gap:4px;min-width:140px}.journal__filter>span{font-size:.74rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ink);font-weight:600}.journal__filter select{padding:6px 8px;border:1px solid var(--line);background:var(--surface-2);border-radius:var(--radius-md);font:inherit;font-size:.92rem;color:var(--ink)}.journal__filter select:focus{border-color:var(--accent-line)}.journal__empty{padding:36px 12px;text-align:center;color:var(--ink);font-style:italic}.journal__day{margin-bottom:28px}.journal__day-header{font-family:var(--sans);font-size:.92rem;font-weight:600;letter-spacing:.02em;color:var(--ink);margin:0 0 10px;padding-bottom:6px;border-bottom:1px solid var(--line);display:flex;align-items:baseline;gap:10px}.journal__day-count{font-size:.72rem;color:var(--ink);background:color-mix(in srgb,var(--ink) 6%,transparent);padding:1px 7px;border-radius:999px;font-weight:500}.journal__rows{display:flex;flex-direction:column}.journal-row{display:grid;grid-template-columns:60px 80px 100px minmax(0,1fr);align-items:center;gap:12px;padding:7px 6px;border-bottom:1px solid var(--line);font-size:.9rem;color:var(--ink)}.journal-row:last-child{border-bottom:none}.journal-row:hover{background:color-mix(in srgb,var(--accent) 4%,transparent)}.journal-row__time{font-family:var(--mono);font-size:.82rem;color:var(--ink)}.journal-row__summary{color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.journal-chip{font-size:.7rem;letter-spacing:.04em;text-transform:uppercase;font-weight:600;padding:2px 8px;border-radius:999px;text-align:center;white-space:nowrap}.journal-chip--type-create{background:color-mix(in srgb,var(--ink) 14%,transparent);color:var(--ink)}.journal-chip--type-update{background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent-line)}.journal-chip--type-delete{background:color-mix(in srgb,var(--crit) 12%,transparent);color:var(--crit)}.journal-chip--type-import{background:color-mix(in srgb,var(--ink) 14%,transparent);color:var(--ink-2)}.journal-chip--type-generate{background:color-mix(in srgb,var(--ink) 16%,transparent);color:var(--ink)}.journal-chip--entity{background:color-mix(in srgb,var(--ink) 6%,transparent);color:var(--ink)}.journal__more{display:flex;justify-content:center;margin:24px 0 8px}@media(max-width:720px){.journal-row{grid-template-columns:50px 70px minmax(0,1fr)}.journal-row .journal-chip--entity{display:none}}.calpick__panel{width:min(420px,calc(100vw - 32px));max-height:calc(100vh - 48px);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-lg);box-shadow:0 30px 80px -20px #0006;display:flex;flex-direction:column;overflow:hidden}.calpick__header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px;border-bottom:1px solid var(--line);background:var(--surface-2)}.calpick__month{font-family:var(--sans);font-size:1.05rem;font-weight:500;color:var(--ink);text-transform:capitalize;letter-spacing:.01em;flex:1;text-align:center}.calpick__nav{width:30px;height:30px;border-radius:50%;border:1px solid var(--line);background:var(--surface);color:var(--ink);font-size:1.1rem;font-weight:600;display:inline-flex;align-items:center;justify-content:center;transition:background .15s,border-color .15s}.calpick__nav--year{color:var(--ink-2);font-size:.95rem}.calpick__nav:hover{background:var(--surface);color:var(--ink);border-color:var(--accent-line)}.calpick__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;padding:14px}.calpick__grid--large{grid-template-columns:repeat(3,1fr);gap:6px}.calpick__cell{padding:14px 6px;font-family:var(--sans);font-size:.85rem;font-weight:500;color:var(--ink);background:transparent;border:1px solid transparent;border-radius:var(--radius-md);text-transform:capitalize;font-variant-numeric:tabular-nums}.calpick__cell:hover{background:color-mix(in srgb,var(--ink) 8.8%,transparent)}.calpick__zoom{font:inherit;color:inherit;padding:3px 10px;border-radius:var(--radius-md);text-transform:inherit}.calpick__zoom:hover:not(:disabled){background:color-mix(in srgb,var(--ink) 8.8%,transparent)}.calpick__zoom:disabled{cursor:default}.calpick__dow{font-family:var(--sans);font-size:.72rem;font-weight:600;letter-spacing:.06em;color:var(--ink-2);text-align:center;padding:4px 0 8px;text-transform:uppercase}.calpick__day{position:relative;aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-family:var(--sans);font-size:.9rem;font-weight:500;color:var(--ink);background:transparent;border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;transition:background .12s,border-color .12s,color .12s}.calpick__day:hover{background:color-mix(in srgb,var(--ink) 8.8%,transparent);border-color:var(--line)}.calpick__day--other{color:color-mix(in srgb,var(--ink) 28%,transparent)}.calpick__day--today{border-color:var(--accent-line)}.calpick__day--selected{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.calpick__day--selected:hover{background:var(--warn)}.calpick__num{line-height:1}.calpick__count{display:inline-block;min-width:16px;padding:1px 4px;font-size:.62rem;font-weight:600;line-height:1.1;border-radius:8px;background:var(--accent);color:var(--accent-ink)}.calpick__day--selected .calpick__count{background:var(--surface);color:var(--ink)}.calpick__day--other .calpick__count{opacity:.45}.calpick__footer{display:flex;align-items:center;gap:8px;padding:10px 14px;border-top:1px solid var(--line);background:var(--surface)}.missions-page{display:flex;flex-direction:column;height:100%}.missions-page__header{padding:14px 18px;border-bottom:1px solid var(--line);background:var(--surface)}.missions-page__nav{display:flex;align-items:center;gap:10px}.missions-page__arrow{width:32px;height:32px;border:1px solid var(--line-strong);background:var(--surface);border-radius:var(--radius-btn);font-size:1.1rem;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.missions-page__arrow:hover{background:color-mix(in srgb,var(--ink) 6.6%,transparent)}.missions-page__today{padding:6px 12px;border:1px solid var(--line-strong);background:var(--surface);border-radius:var(--radius-btn);font-size:.8rem;cursor:pointer}.missions-page__today:hover{background:color-mix(in srgb,var(--ink) 6.6%,transparent)}.missions-page__nav input[type=date]{font-family:var(--mono);font-size:.85rem;padding:5px 10px;border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--surface-2)}.missions-page__title{font-family:var(--sans);font-size:1rem;font-weight:500;color:var(--ink);margin-left:8px}.missions-page__count{margin-left:auto;font-family:var(--mono);font-size:.78rem;color:var(--ink-2)}.missions-page__body{flex:1;padding:20px;overflow-y:auto}.missions-page__empty{text-align:center;color:var(--ink-2);font-size:.95rem;padding:60px 20px}.missions-page__empty-sub{font-size:.82rem;margin-top:8px}.missions-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:16px}.m-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:14px 16px;display:flex;flex-direction:column;gap:8px;transition:border-color .12s,box-shadow .12s}.m-card:hover{border-color:var(--line-strong);box-shadow:0 1px 3px #0000000a}.m-card--incomplete{background:color-mix(in srgb,var(--accent) 5%,transparent)}.m-card__head{display:flex;align-items:center;gap:10px;padding-bottom:8px;border-bottom:2px solid var(--form-color, var(--line));margin-bottom:4px}.m-card__car{font-family:var(--mono);font-size:1.1rem;font-weight:600;color:var(--ink)}.m-card__form{font-size:.7rem;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-2);font-weight:600}.m-card__mjbadge{font-family:var(--mono);font-size:.7rem;padding:2px 8px;border-radius:999px;background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent-line)}.m-card__actions{margin-left:auto;display:flex;gap:4px}.m-card__btn{width:28px;height:28px;border:1px solid var(--line-strong);background:var(--surface);border-radius:var(--radius-btn);cursor:pointer;font-size:.9rem;display:inline-flex;align-items:center;justify-content:center;padding:0}.m-card__btn:hover{background:color-mix(in srgb,var(--ink) 8.8%,transparent)}.m-card__client{font-family:var(--sans);font-size:.95rem;font-weight:500;color:var(--ink)}.m-card__contact{font-size:.78rem;color:var(--ink)}.m-card__itinerary{font-size:.85rem;color:var(--ink);line-height:1.5;background:color-mix(in srgb,var(--ink) 4.4%,transparent);border-radius:var(--radius-md);padding:8px 10px}.m-card__arrow{color:var(--ink-2);margin:0 2px}.m-card__extra-segs{display:flex;flex-direction:column;gap:4px;padding-left:12px;border-left:2px solid rgba(0,0,0,.06)}.m-card__extra-seg{font-size:.78rem;color:var(--ink);display:flex;align-items:baseline;gap:8px}.m-card__extra-time{font-family:var(--mono);font-size:.74rem;color:var(--ink-2)}.m-card__foot{margin-top:4px;padding-top:8px;border-top:1px solid rgba(0,0,0,.05);display:flex;flex-direction:column;gap:6px}.m-card__meta{display:flex;flex-wrap:wrap;gap:14px;font-size:.78rem;color:var(--ink)}.m-card__meta-item{display:inline-flex;align-items:baseline;gap:4px}.m-card__meta-label{font-size:.66rem;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-2);font-weight:600}.m-card__return{font-size:.78rem;color:var(--ink);display:flex;align-items:baseline;gap:6px}.m-card__issues{display:flex;flex-direction:column;gap:3px;margin-top:4px;padding-top:8px;border-top:1px dashed color-mix(in srgb,var(--accent) 50%,transparent)}.m-card__issue{font-size:.72rem;color:var(--accent-line)}.m-card__issue--more{font-style:italic;color:var(--ink-2)}.cal-page{position:absolute;inset:0;display:flex;flex-direction:column;overflow:hidden}.page:has(.cal-page){position:relative;padding:0!important;max-width:none!important}.cal-header{padding:14px 18px;border-bottom:1px solid var(--line);background:var(--surface);flex-shrink:0}.cal-header__nav{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.cal-header__arrow{width:32px;height:32px;border:1px solid var(--line-strong);background:var(--surface);border-radius:var(--radius-btn);font-size:1.1rem;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.cal-header__arrow:hover{background:color-mix(in srgb,var(--ink) 6.6%,transparent)}.cal-header__month{font-family:var(--sans);font-size:1rem;font-weight:500;color:var(--ink);min-width:140px;text-align:center}.cal-header__today{padding:6px 12px;border:1px solid var(--line-strong);background:var(--surface);border-radius:var(--radius-btn);font-size:.8rem;cursor:pointer}.cal-header__today:hover{background:color-mix(in srgb,var(--ink) 6.6%,transparent)}.cal-header__toggle{display:inline-flex;align-items:center;gap:6px;font-size:.82rem;color:var(--ink);cursor:pointer;margin-left:12px}.cal-header__toggle input{cursor:pointer}.cal-header__stats{margin-left:auto;font-family:var(--mono);font-size:.78rem;color:var(--ink-2)}.cal-grid-wrap{flex:1;min-height:0;overflow:auto;background:var(--surface)}.cal-empty{padding:40px;text-align:center;color:var(--ink-2);font-style:italic}.cal-grid{border-collapse:separate;border-spacing:0;font-family:var(--sans);font-size:.74rem}.cal-grid thead{position:sticky;top:0;z-index:5;background:var(--surface)}.cal-grid thead th{background:var(--surface);border-bottom:1px solid var(--line-strong)}.cal-grid__day{width:30px;min-width:30px;padding:6px 0;text-align:center;font-weight:500;color:var(--ink);border-right:1px solid var(--line)}.cal-grid__day-letter{font-size:.62rem;color:var(--ink-2);text-transform:uppercase;letter-spacing:.05em}.cal-grid__day-num{font-family:var(--mono);font-size:.82rem;font-weight:500;color:var(--ink);margin-top:2px}.cal-grid__day--weekend .cal-grid__day-letter,.cal-grid__day--weekend .cal-grid__day-num{color:var(--ink-2)}.cal-grid__day--today{background:color-mix(in srgb,var(--accent) 8%,transparent)}.cal-grid__day--today .cal-grid__day-num{color:var(--accent-line);font-weight:600}.cal-grid__resource{position:sticky;left:0;z-index:4;background:var(--surface);text-align:left;padding:6px 12px;border-right:1px solid var(--line-strong);min-width:180px;max-width:220px;vertical-align:middle}.cal-grid thead .cal-grid__resource{z-index:6}.cal-grid__corner{background:var(--surface)}.cal-grid__resource-name{font-size:.84rem;font-weight:500;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-grid__resource-sub{font-size:.68rem;color:var(--ink-2);margin-top:1px}.cal-grid__row:hover .cal-grid__resource{background:color-mix(in srgb,var(--ink) 5.5%,transparent)}.cal-cell{width:30px;min-width:30px;height:28px;text-align:center;font-family:var(--mono);font-size:.7rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line);cursor:pointer;user-select:none;vertical-align:middle;transition:filter .1s}.cal-cell:hover{filter:brightness(1.08);outline:1px solid var(--accent-line);outline-offset:-1px;position:relative;z-index:1}.cal-cell--empty{background:transparent;cursor:default}.cal-cell--empty:hover{filter:none;outline:none;background:color-mix(in srgb,var(--ink) 5.5%,transparent)}.cal-cell--active{font-weight:500}.cal-cell--unavailable{background:repeating-linear-gradient(45deg,var(--surface),var(--surface) 4px,color-mix(in srgb,var(--crit) 10%,transparent) 4px,color-mix(in srgb,var(--crit) 10%,transparent) 8px);cursor:pointer}.cal-cell--weekend.cal-cell--empty{background:color-mix(in srgb,var(--ink) 3.3%,transparent)}.cal-cell--today{box-shadow:inset 3px 0 0 var(--accent)}.cal-popover{position:absolute;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-md);padding:12px 14px;box-shadow:0 4px 14px #0000001f;z-index:100;width:320px;font-family:var(--sans);font-size:.82rem;color:var(--ink)}.cal-popover__date{font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-2);margin-bottom:8px}.cal-popover__head{display:flex;align-items:center;gap:8px;margin-bottom:6px}.cal-popover__color{width:10px;height:10px;border-radius:50%;flex-shrink:0}.cal-popover__form{font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-2);margin-left:auto}.cal-popover__client{font-weight:500;font-size:.88rem;margin-bottom:4px;color:var(--ink)}.cal-popover__route{font-size:.78rem;color:var(--ink);margin-bottom:6px}.cal-popover__line{font-size:.76rem;color:var(--ink);margin-top:3px}.cal-popover__warn-inline{color:var(--accent-line);font-style:italic}.cal-popover__sub{font-size:.72rem;color:var(--ink-2);margin-top:6px;padding-top:6px;border-top:1px dashed var(--line)}.cal-popover__empty{font-size:.82rem;color:var(--ink-2);font-style:italic}.cal-popover__warn{font-size:.82rem;color:var(--accent-line)}.veh-cap{font-size:.72rem;color:var(--ink-2);font-family:var(--mono)}.veh-badge{display:inline-block;padding:1px 5px;margin-left:3px;font-size:.6rem;font-weight:600;letter-spacing:.04em;border-radius:3px;vertical-align:middle}.veh-badge--bas{background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent-line)}.veh-badge--rem{background:color-mix(in srgb,var(--ink) 15%,transparent);color:var(--ink)}.badge-day{display:inline-block;padding:1px 7px;margin-left:5px;font-size:.68rem;font-weight:600;font-family:var(--mono);background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent-line);border-radius:9px}.badge-trip{display:inline-block;margin-left:3px;font-size:.72rem;color:var(--ink-2);cursor:help}.badge-link{display:inline-block;padding:1px 6px;margin-left:4px;font-size:.66rem;font-weight:600;font-family:var(--mono);background:color-mix(in srgb,var(--ink) 15%,transparent);color:var(--ink);border-radius:3px;border:1px solid color-mix(in srgb,var(--ink) 30%,transparent)}.badge-link--in{background:color-mix(in srgb,var(--ink) 12%,transparent);color:var(--ink);border-color:color-mix(in srgb,var(--ink) 30%,transparent)}.badge-confidence{display:inline-block;margin-left:4px;font-size:.78rem;color:var(--accent-line);cursor:help}.cal-popover__line--alert{background:color-mix(in srgb,var(--ink) 8%,transparent);border-left:3px solid var(--ink);padding:4px 8px;margin:4px -4px;border-radius:3px;font-size:.82rem}.cal-popover__line--warn{background:color-mix(in srgb,var(--accent) 12%,transparent);border-left:3px solid var(--accent-line);padding:4px 8px;margin:4px -4px;border-radius:3px;font-size:.82rem;color:var(--accent-line)}.missions-tbl--xlsx td[data-cellpop]{cursor:cell;position:relative}.missions-tbl--xlsx td[data-cellpop]:hover{box-shadow:inset 0 0 0 1.5px var(--accent-line);background:color-mix(in srgb,var(--accent) 6%,transparent)}.missions-tbl--xlsx td[data-cellpop].cell--editing{box-shadow:inset 0 0 0 2px var(--accent-line);background:color-mix(in srgb,var(--accent) 10%,transparent)}.cellpop{position:absolute;z-index:1100;background:var(--bg);border:1px solid var(--ink);border-radius:5px;box-shadow:0 14px 40px -10px #00000040;padding:14px 14px 12px;font-size:.84rem}.cellpop__arrow{position:absolute;top:-6px;left:24px;width:10px;height:10px;background:var(--bg);border-left:1px solid var(--ink);border-top:1px solid var(--ink);transform:rotate(45deg)}.cellpop--above .cellpop__arrow{top:auto;bottom:-6px;transform:rotate(225deg)}.cellpop__title{font-size:.7rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-2);margin:0 0 10px}.cellpop__body{display:flex;flex-direction:column;gap:8px}.cellpop__body label{display:block;font-size:.72rem;color:var(--ink-2);margin-bottom:3px;text-transform:uppercase;letter-spacing:.04em}.cellpop__body input[type=text],.cellpop__body input[type=number],.cellpop__body input[type=time],.cellpop__body input[type=date],.cellpop__body select,.cellpop__body textarea{font:inherit;width:100%;padding:6px 8px;border:1px solid var(--line);border-radius:3px;background:#fff}.cellpop__body input:focus,.cellpop__body select:focus,.cellpop__body textarea:focus{outline:2px solid var(--accent-line);outline-offset:-1px;border-color:transparent}.cellpop__error{background:color-mix(in srgb,var(--crit) 8%,transparent);color:var(--crit);padding:6px 10px;border-radius:3px;font-size:.8rem;margin-top:6px}.cellpop__footer{display:flex;align-items:center;gap:8px;margin-top:12px;padding-top:10px;border-top:1px solid var(--line)}.cellpop__footer-left{flex:1;font-size:.78rem;color:var(--ink-2)}.cellpop__footer-actions{display:flex;gap:6px}.cellpop__footer .btn{font-size:.82rem;padding:5px 12px}.cellpop__dispo{background:none;border:1px solid var(--line-strong);border-radius:3px;cursor:pointer;padding:4px 9px;font:inherit;font-size:.78rem;color:var(--ink-2);margin-right:4px}.cellpop__dispo:hover{background:color-mix(in srgb,var(--ink) 8.8%,transparent)}.cellpop__dispo--on{background:var(--ink);color:var(--bg);border-color:var(--ink)}.cellpop__dispo--on:hover{background:var(--ink)}.cellpop .pec-list{display:flex;flex-direction:column;gap:6px}.cellpop .pec-row{display:grid;grid-template-columns:180px 1fr 76px 30px;gap:8px;align-items:center}.cellpop .pec-row input,.cellpop .pec-row select{width:100%}.cellpop .pec-rm{border:1px solid var(--line);background:#fff;color:var(--ink-2);cursor:pointer;border-radius:3px;height:30px;font:inherit}.cellpop .pec-rm:hover{color:var(--crit);border-color:var(--crit)}.cellpop .pec-add{background:transparent;border:1px dashed var(--line);padding:6px 10px;border-radius:3px;cursor:pointer;color:var(--ink-2);font:inherit;width:100%;margin-top:4px}.cellpop .ret-grid{display:grid;grid-template-columns:1fr 100px;gap:8px}.cellpop .ret-grid .ret-full{grid-column:1 / -1}.cellpop .hour-field{display:flex;gap:4px;align-items:stretch}.cellpop .hour-field__input{flex:1;min-width:0}.cellpop .hour-field__tbd{background:#fff;border:1px solid var(--line);color:var(--ink-2);cursor:pointer;border-radius:3px;padding:0 8px;font:inherit;font-size:.78rem;white-space:nowrap}.cellpop .hour-field__tbd:hover{border-color:var(--accent-line);color:var(--accent-line)}.cellpop .hour-field--tbd .hour-field__input{background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent-line);font-style:italic}.cellpop .hour-field--tbd .hour-field__input::placeholder{color:var(--accent-line);content:"À préciser"}.cellpop .hour-field--tbd .hour-field__tbd{background:var(--accent-line);color:#fff;border-color:var(--accent-line);font-weight:600}.cellpop .pec-row .pec-new-name{grid-column:1 / -1;margin-top:4px;background:color-mix(in srgb,var(--accent) 12%,transparent);border-color:var(--accent-line)}.cellpop .pec-row--new .pec-new-name:focus{outline-color:var(--accent-line)}.cellpop .loc-field{display:flex;gap:4px;align-items:stretch}.cellpop .loc-field select{flex:1;min-width:0}.cellpop .loc-field__tbd{background:#fff;border:1px solid var(--line);color:var(--ink-2);cursor:pointer;border-radius:3px;padding:0 8px;font:inherit;font-size:.78rem;white-space:nowrap}.cellpop .loc-field__tbd:hover{border-color:var(--accent-line);color:var(--accent-line)}.cellpop .loc-field--tbd select{background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent-line);font-style:italic}.cellpop .loc-field--tbd .loc-field__tbd{background:var(--accent-line);color:#fff;border-color:var(--accent-line);font-weight:600}.cellpop .loc-field .loc-search{flex:1;min-width:0}.cellpop .loc-field--tbd .loc-search{background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent-line);font-style:italic}.cellpop .loc-results li:hover{background:color-mix(in srgb,var(--ink) 10%,transparent)}.import-list__panel{max-width:880px;width:92vw}.il-hint{margin:0 0 14px;color:var(--ink-2);font-size:var(--fs-data)}.il-vide{color:var(--ink-2);font-size:var(--fs-data);padding:20px 0;text-align:center}.il-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.il-row{display:flex;flex-wrap:nowrap;align-items:baseline;gap:10px;padding:9px 2px;border-bottom:1px solid var(--line);font-size:var(--fs-data)}.il-titre{flex:1 1 auto;min-width:0}.il-row>:not(.il-titre){flex:0 0 auto}.il-row--faite{opacity:.55}.il-num{color:var(--ink-2);font-variant-numeric:tabular-nums;text-align:right}.il-titre{color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.il-soustitre{color:var(--ink-2);font-size:var(--fs-label);white-space:nowrap}.il-etat{font-size:var(--fs-label);white-space:nowrap}.il-etat--ok{color:var(--ink-2)}.il-etat--warn{color:var(--accent-line)}.il-lieux{font-size:var(--fs-label);color:var(--accent-line);white-space:nowrap}.il-lieux--ok{color:var(--ink-2)}.il-ouvrir{padding:3px 10px;font-size:var(--fs-label)}.il-orphelin{flex:0 1 auto;white-space:normal;text-align:right;font-style:normal;color:var(--accent-line);font-size:var(--fs-label)}.il-compte{color:var(--ink-2);font-size:var(--fs-data)}.il-ignorees{margin-top:16px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-2);font-size:var(--fs-label)}.il-ignorees__summary{padding:8px 12px;cursor:pointer;user-select:none;color:var(--ink-2)}.il-ignorees__list{list-style:none;margin:0;padding:6px 12px 10px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:4px}.il-ign-row{display:flex;gap:10px;align-items:baseline}.il-ign-car{font-family:var(--mono);color:var(--ink)}.il-ign-client{color:var(--ink)}.il-ign-jour{color:var(--ink-2)}.cm-dossier{margin-top:14px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface)}.cm-dossier__head{cursor:pointer;user-select:none;padding:9px 12px;font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-2)}.cm-dossier__head:hover{color:var(--ink)}.cm-dossier[open] .cm-dossier__head{border-bottom:1px solid var(--line)}.cm-dossier__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;padding:14px 12px}.cm-dossier__wide{grid-column:1 / -1}.cm-dossier__row{display:flex;gap:6px;align-items:center}.cm-dossier__row input,.cm-dossier__row select{min-width:0}.cm-dossier__iso{width:56px;text-align:center;font-family:var(--mono);background:var(--surface-2)}.cm-dossier__vignettes{display:flex;flex-direction:column;gap:6px}.cm-dossier__cash select{flex:0 0 auto}.cm-dossier__cash input{flex:1 1 auto}.mois-bar{display:flex;align-items:center;gap:10px;margin-bottom:14px;flex-wrap:wrap}.mois-bar__label{font-family:var(--sans);font-size:20px;letter-spacing:.02em;color:var(--ink);min-width:170px}.mois-bar__count{font-family:var(--mono);font-size:11px;color:var(--ink-2)}.mois-bar input[type=search]{flex:0 1 240px}.mois-attente{margin-bottom:12px}.mois-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius-md)}.mois-tbl{border-collapse:separate;border-spacing:0;width:max-content;min-width:100%}.mois-name{position:sticky;left:0;z-index:2;background:var(--surface);border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-align:left;padding:4px 10px;white-space:nowrap;min-width:190px;font-weight:400}.mois-name--head{z-index:3;font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-2)}.mois-name__nom{color:var(--ink)}.mois-name__prenom{color:var(--ink-2);margin-left:5px}.mois-name__flag{display:inline-block;margin-left:7px;min-width:16px;text-align:center;background:var(--accent);color:var(--accent-ink);border-radius:var(--radius-sm);font-family:var(--mono);font-size:10px;padding:0 4px}.mois-th{position:sticky;top:0;z-index:1;background:var(--surface);border-bottom:1px solid var(--line);width:24px;min-width:24px;padding:3px 0;text-align:center;font-weight:400;font-family:var(--mono);font-size:10px;color:var(--ink-2);line-height:1.25}.mois-th__dow,.mois-th__num{display:block}.mois-th__num{color:var(--ink)}.mois-th--we{background:var(--surface-2)}.mois-th--today .mois-th__num{color:var(--accent-line)}.mois-td{width:24px;min-width:24px;height:24px;padding:0;text-align:center;font-family:var(--mono);font-size:10px;color:var(--ink);border-right:1px solid color-mix(in srgb,var(--line) 45%,transparent);border-bottom:1px solid color-mix(in srgb,var(--line) 45%,transparent)}.mois-td--we{background:color-mix(in srgb,var(--surface-2) 60%,transparent)}.mois-td--today{box-shadow:inset 1px 0 0 var(--accent-line),inset -1px 0 0 var(--accent-line)}.mois-td--pris{background:var(--surface);color:var(--ink)}.mois-td--multi{box-shadow:inset 0 -2px 0 var(--accent)}.mois-td--conge{background:var(--accent);color:var(--accent-ink);cursor:pointer}.mois-td--demande{cursor:pointer;color:var(--ink);background:repeating-linear-gradient(-45deg,color-mix(in srgb,var(--accent) 42%,transparent) 0 3px,transparent 3px 6px)}.mois-td--conge:hover,.mois-td--demande:hover{outline:1px solid var(--accent-line);outline-offset:-1px}.mois-legende{margin-top:10px;font-family:var(--mono);font-size:11px;color:var(--ink-2);line-height:1.5}.conge-pop{display:flex;flex-direction:column;gap:9px}.conge-pop__periode{color:var(--ink)}.conge-pop__jours{font-family:var(--mono);font-size:11px;color:var(--ink-2);margin-left:7px}.conge-pop__etat{font-family:var(--mono);font-size:11px;color:var(--ink-2)}.conge-pop__choix{display:flex;gap:14px;flex-wrap:wrap}.conge-pop__label{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-2)}.conge-pop textarea{width:100%}.fiche-bar{display:flex;align-items:center;gap:14px;margin-bottom:16px;flex-wrap:wrap}.fiche-bar__nom{flex:1 1 auto;font-family:var(--sans);font-size:22px;color:var(--ink)}.fiche-bar__nom strong{color:var(--ink)}.fiche-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:14px}.fiche-bloc{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);padding:14px 16px}.fiche-bloc--large{grid-column:1 / -1}.fiche-bloc__titre{margin:0 0 12px;font-family:var(--mono);font-size:10px;font-weight:400;text-transform:uppercase;letter-spacing:.12em;color:var(--ink-2)}.fiche-vide{color:var(--warn);font-style:italic}.fiche-warn{color:var(--warn)}.fiche-detail{font-family:var(--mono);font-size:11px;color:var(--ink-2)}.fiche-piece{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.fiche-piece+.fiche-piece{margin-top:3px}.fiche-verser{display:inline-block;margin-top:3px;cursor:pointer}.fiche-note{margin:12px 0 0;font-family:var(--mono);font-size:11px;color:var(--ink-2);line-height:1.5}.fiche-dl{display:grid;grid-template-columns:130px 1fr;gap:7px 12px;margin:0}.fiche-dl dt{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-2);padding-top:2px}.fiche-dl dd{margin:0;color:var(--ink)}.fiche-tbl{width:100%;border-collapse:collapse}.fiche-tbl td{padding:7px 10px 7px 0;border-bottom:1px solid var(--line);vertical-align:top}.fiche-tbl tr:last-child td{border-bottom:none}.fiche-titre__nom{color:var(--ink);white-space:nowrap}.fiche-titre__date{font-family:var(--mono);white-space:nowrap}.fiche-titre__etat{font-family:var(--mono);font-size:11px;white-space:nowrap}.fiche-titre--warn .fiche-titre__etat{color:var(--warn)}.fiche-titre--err .fiche-titre__etat{color:var(--crit)}.fiche-titre--vide .fiche-titre__etat{color:var(--warn)}.fiche-titre__piece{width:100%}.fiche-conges{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.fiche-conge__btn{display:flex;align-items:baseline;gap:10px;width:100%;text-align:left;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-btn);padding:8px 10px;cursor:pointer;color:var(--ink);font:inherit}.fiche-conge__btn:hover{border-color:var(--accent-line)}.fiche-conge__periode{flex:1 1 auto}.fiche-conge__jours{font-family:var(--mono);font-size:11px;color:var(--ink-2)}.fiche-conge__statut{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.1em}.fiche-conge--demande .fiche-conge__statut{color:var(--warn)}.fiche-conge--accepte .fiche-conge__statut{color:var(--accent-line)}.fiche-conge--refuse .fiche-conge__statut{color:var(--crit)}.fiche-conge__com{font-family:var(--mono);font-size:11px;color:var(--ink-2);padding:4px 10px 0;line-height:1.5}.fiche-retour__date{font-family:var(--mono);white-space:nowrap}.fiche-retour__etat{font-family:var(--mono);font-size:11px;color:var(--ink-2);white-space:nowrap}.fiche-retour--close .fiche-retour__etat{color:var(--ink)}.fiche-retour__detail{width:100%}.fiche-incident{color:var(--crit);font-family:var(--mono);font-size:11px;cursor:help}.mois-name__btn{background:none;border:none;padding:0;margin:0;cursor:pointer;font:inherit;text-align:left;color:inherit}.mois-name__btn:hover .mois-name__nom{color:var(--accent-line)}.ch-nom{font:inherit}.mois-carte{position:absolute;z-index:60;width:320px;max-width:calc(100vw - 16px);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:0 8px 24px #00000059;padding:10px 12px;pointer-events:none;font-family:var(--sans);font-size:14px;color:var(--ink);line-height:1.4}.mc-tete{display:flex;justify-content:space-between;gap:10px;align-items:baseline;padding-bottom:7px;margin-bottom:8px;border-bottom:1px solid var(--line)}.mc-jour{color:var(--ink)}.mc-nom{font-family:var(--mono);font-size:11px;color:var(--ink-2)}.mc-travail+.mc-travail{margin-top:9px;padding-top:9px;border-top:1px solid var(--line)}.mc-travail__tete{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}.mc-car{font-family:var(--mono);font-size:12px;background:var(--accent);color:var(--accent-ink);border-radius:var(--radius-sm);padding:0 5px}.mc-client{flex:1 1 auto;color:var(--ink)}.mc-role{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-2)}.mc-heures{font-family:var(--mono);font-size:12px;color:var(--ink);margin-top:3px}.mc-trajet{font-size:13px;color:var(--ink-2);margin-top:2px}.mc-surplace{font-family:var(--sans);font-size:13px;color:var(--ink-2);font-style:italic}.mc-conge{display:flex;flex-direction:column;gap:2px;margin-bottom:9px}.mc-conge__etat{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.1em}.mc-conge--demande .mc-conge__etat{color:var(--warn)}.mc-conge--accepte .mc-conge__etat{color:var(--accent-line)}.mc-conge--refuse .mc-conge__etat{color:var(--crit)}.mc-conge__periode{color:var(--ink)}.mc-conge__com{font-size:13px;color:var(--ink-2);margin-top:3px}.mc-conflit{font-family:var(--mono);font-size:11px;color:var(--warn);border-left:2px solid var(--warn);padding-left:7px;margin-bottom:9px}.mc-pied{margin-top:9px;padding-top:7px;border-top:1px solid var(--line);font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-2)}.mois-td[data-cell]{cursor:pointer}.mois-td[data-cell]:hover{outline:1px solid var(--accent-line);outline-offset:-1px}.fiche-jeton{display:block;font-family:var(--mono);font-size:12px;line-height:1.5;background:var(--surface-2);border:1px solid var(--accent-line);border-radius:var(--radius-md);padding:9px 11px;margin:10px 0;word-break:break-all;user-select:all;color:var(--ink)}
