:root{--ink-950: #0e1626;--ink-900: #141f36;--ink-800: #1c2b48;--ink-700: #26385c;--ink-600: #35507f;--ink-500: #5470a1;--ink-400: #7e93b8;--ink-300: #a6b5d0;--ink-200: #c9d3e5;--ink-100: #e3e9f3;--paper-0: #fdfcf9;--paper-50: #f8f5f0;--paper-100: #f2eee6;--paper-150: #ebe6db;--paper-200: #e0d9cb;--paper-300: #cbc2b0;--brand-50: #f1f6fb;--brand-100: #e0ebf7;--brand-200: #c2d9f2;--brand-300: #93beee;--brand-400: #509bef;--brand-500: #0a7af5;--brand-600: #0460c6;--brand-700: #084991;--brand-800: #023c7c;--brand-900: #092646;--gold-50: #fcf8f0;--gold-100: #f8efdd;--gold-200: #f4e2bd;--gold-300: #f1d090;--gold-400: #f1c060;--gold-500: #f4b02d;--gold-600: #ed9f05;--gold-700: #c18103;--gold-800: #926307;--gold-900: #684808;--pos-600: #1c7a51;--pos-500: #2b8a5f;--pos-100: #e3f1ea;--pos-200: #c4e2d3;--warn-600: #8c5e12;--warn-500: #a2711d;--warn-100: #f7edd8;--warn-200: #ecd9ab;--crit-600: #a83a30;--crit-500: #bd4a3f;--crit-100: #fae5e2;--crit-200: #f0c6c0;--info-600: #574f8e;--info-500: #6a62a0;--info-100: #ecebf6;--info-200: #d5d2ec;--plum-600: #7f2d55;--plum-500: #953c66;--plum-100: #f6e3ed;--plum-200: #e9c7d9;--stone-600: #67655d;--stone-500: #7b786f;--stone-100: #efede7;--stone-200: #ddd9d0;--d-bg: #0d1522;--d-bg-subtle: #101a2b;--d-surface: #16223a;--d-surface-alt: #1c2a45;--d-surface-hover: #223152;--d-text: #eae4d6;--d-text-muted: #9dadc9;--d-text-subtle: #74849f;--d-border: #2b3a58;--d-border-subtle: #223049;--d-border-strong: #3b4d70;--d-accent: #8ea4d8;--d-accent-hover: #a4b6e2;--d-accent-active: #bccaea;--d-accent-text: #0e1626;--d-accent-soft: #1e2a48;--d-focus: #b3c3e8;--d-nav-bg: #0a1120;--d-nav-surface: #101a2b;--d-nav-text: #c6d1e6;--d-nav-text-dim: #6f7fa2;--d-pos: #6fd3a4;--d-pos-bg: #113025;--d-pos-border: #1d5540;--d-warn: #e2bd68;--d-warn-bg: #35290f;--d-warn-border: #5c4718;--d-crit: #f0968a;--d-crit-bg: #381815;--d-crit-border: #5e2a24;--d-info: #b3abe8;--d-info-bg: #232045;--d-info-border: #3a3568;--d-plum: #e493b8;--d-plum-bg: #351628;--d-plum-border: #5a2743;--d-stone: #c4bfb3;--d-stone-bg: #282621;--d-stone-border: #423f37}:root{--font-ui: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans Arabic", "Segoe UI Arabic", Arial, sans-serif;--font-display: "Source Serif 4", "Iowan Old Style", Georgia, "Palatino Linotype", "Noto Naskh Arabic", "Times New Roman", serif;--font-mono: ui-monospace, SFMono-Regular, "JetBrains Mono", Menlo, Consolas, monospace;--fs-2xs: .6875rem;--fs-xs: .75rem;--fs-sm: .8125rem;--fs-md: .875rem;--fs-base: .9375rem;--fs-lg: 1.0625rem;--fs-xl: 1.25rem;--fs-2xl: 1.5rem;--fs-3xl: 1.875rem;--lh-tight: 1.18;--lh-snug: 1.35;--lh-normal: 1.55;--lh-relaxed: 1.7;--ls-tight: -.011em;--ls-wide: .04em;--ls-caps: .075em;--sp-1: .25rem;--sp-2: .5rem;--sp-3: .75rem;--sp-4: 1rem;--sp-5: 1.25rem;--sp-6: 1.5rem;--sp-7: 2rem;--sp-8: 2.5rem;--sp-9: 3rem;--sp-10: 4rem;--r-xs: .25rem;--r-sm: .375rem;--r-md: .5rem;--r-lg: .75rem;--r-xl: 1rem;--r-2xl: 1.25rem;--r-full: 999px;--control-h: 2.5rem;--control-h-sm: 2rem;--control-h-lg: 2.875rem;--t-fast: .12s;--t-base: .18s;--ease: cubic-bezier(.4, 0, .2, 1);--z-sticky: 20;--z-nav: 30;--z-dropdown: 40;--z-overlay: 50;--shell-max: 96rem;--sidebar-w: 16rem}:root{color-scheme:light;--bg: var(--paper-50);--bg-subtle: var(--paper-100);--surface: #ffffff;--surface-alt: var(--paper-50);--surface-hover: var(--paper-100);--surface-sunken: var(--paper-100);--text: var(--ink-950);--text-muted: var(--ink-500);--text-subtle: var(--ink-400);--text-inverse: #ffffff;--border: var(--paper-200);--border-subtle: var(--paper-150);--border-strong: var(--paper-300);--accent: var(--accent-color-override, var(--brand-700));--accent-hover: var(--accent-color-override, var(--brand-600));--accent-active: var(--accent-color-override, var(--brand-800));--accent-text: #ffffff;--accent-soft: var(--brand-50);--accent-soft-border: var(--brand-200);--focus: var(--brand-500);--ring-width: 3px;--ring: 0 0 0 var(--ring-width) color-mix(in srgb, var(--focus) 32%, transparent);--danger: var(--crit-600);--danger-hover: var(--crit-500);--danger-bg: var(--crit-100);--danger-border: var(--crit-200);--success: var(--pos-600);--success-bg: var(--pos-100);--success-border: var(--pos-200);--warning: var(--warn-600);--warning-bg: var(--warn-100);--warning-border: var(--warn-200);--st-note: var(--pos-600);--st-note-bg: var(--pos-100);--st-note-border: var(--pos-200);--st-absent-just: var(--warn-600);--st-absent-just-bg: var(--warn-100);--st-absent-just-border: var(--warn-200);--st-absent-nonjust: var(--crit-600);--st-absent-nonjust-bg: var(--crit-100);--st-absent-nonjust-border: var(--crit-200);--st-dispense: var(--info-600);--st-dispense-bg: var(--info-100);--st-dispense-border: var(--info-200);--st-fraude: var(--plum-600);--st-fraude-bg: var(--plum-100);--st-fraude-border: var(--plum-200);--st-annule: var(--stone-600);--st-annule-bg: var(--stone-100);--st-annule-border: var(--stone-200);--st-nonsaisi: var(--text-subtle);--shadow-xs: 0 1px 2px rgba(14, 22, 38, .05);--shadow-sm: 0 1px 2px rgba(14, 22, 38, .05), 0 1px 3px rgba(14, 22, 38, .05);--shadow-md: 0 2px 4px rgba(14, 22, 38, .04), 0 8px 18px -6px rgba(14, 22, 38, .12);--shadow-lg: 0 4px 8px rgba(14, 22, 38, .05), 0 20px 36px -12px rgba(14, 22, 38, .16);--shadow: var(--shadow-sm);--nav-bg: var(--ink-950);--nav-surface: var(--ink-900);--nav-text: #ccd6e8;--nav-text-dim: #8496b8;--nav-text-strong: #ffffff;--nav-active-bg: rgba(255, 255, 255, .1);--nav-hover-bg: rgba(255, 255, 255, .055);--nav-border: rgba(255, 255, 255, .08);--nav-marker: var(--brand-300)}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){color-scheme:dark;--bg: var(--d-bg);--bg-subtle: var(--d-bg-subtle);--surface: var(--d-surface);--surface-alt: var(--d-surface-alt);--surface-hover: var(--d-surface-hover);--surface-sunken: var(--d-bg-subtle);--text: var(--d-text);--text-muted: var(--d-text-muted);--text-subtle: var(--d-text-subtle);--text-inverse: var(--d-bg);--border: var(--d-border);--border-subtle: var(--d-border-subtle);--border-strong: var(--d-border-strong);--accent: var(--accent-color-dark-override, var(--d-accent));--accent-hover: var(--accent-color-dark-override, var(--d-accent-hover));--accent-active: var(--accent-color-dark-override, var(--d-accent-active));--accent-text: var(--d-accent-text);--accent-soft: var(--d-accent-soft);--accent-soft-border: var(--d-border-strong);--focus: var(--d-focus);--danger: var(--d-crit);--danger-hover: var(--d-crit);--danger-bg: var(--d-crit-bg);--danger-border: var(--d-crit-border);--success: var(--d-pos);--success-bg: var(--d-pos-bg);--success-border: var(--d-pos-border);--warning: var(--d-warn);--warning-bg: var(--d-warn-bg);--warning-border: var(--d-warn-border);--st-note: var(--d-pos);--st-note-bg: var(--d-pos-bg);--st-note-border: var(--d-pos-border);--st-absent-just: var(--d-warn);--st-absent-just-bg: var(--d-warn-bg);--st-absent-just-border: var(--d-warn-border);--st-absent-nonjust: var(--d-crit);--st-absent-nonjust-bg: var(--d-crit-bg);--st-absent-nonjust-border: var(--d-crit-border);--st-dispense: var(--d-info);--st-dispense-bg: var(--d-info-bg);--st-dispense-border: var(--d-info-border);--st-fraude: var(--d-plum);--st-fraude-bg: var(--d-plum-bg);--st-fraude-border: var(--d-plum-border);--st-annule: var(--d-stone);--st-annule-bg: var(--d-stone-bg);--st-annule-border: var(--d-stone-border);--st-nonsaisi: var(--d-text-subtle);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .3);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .32), 0 1px 3px rgba(0, 0, 0, .28);--shadow-md: 0 2px 4px rgba(0, 0, 0, .3), 0 8px 20px -6px rgba(0, 0, 0, .45);--shadow-lg: 0 4px 10px rgba(0, 0, 0, .35), 0 22px 40px -12px rgba(0, 0, 0, .55);--nav-bg: var(--d-nav-bg);--nav-surface: var(--d-nav-surface);--nav-text: var(--d-nav-text);--nav-text-dim: var(--d-nav-text-dim);--nav-border: rgba(255, 255, 255, .07)}}:root[data-theme=dark]{color-scheme:dark;--bg: var(--d-bg);--bg-subtle: var(--d-bg-subtle);--surface: var(--d-surface);--surface-alt: var(--d-surface-alt);--surface-hover: var(--d-surface-hover);--surface-sunken: var(--d-bg-subtle);--text: var(--d-text);--text-muted: var(--d-text-muted);--text-subtle: var(--d-text-subtle);--text-inverse: var(--d-bg);--border: var(--d-border);--border-subtle: var(--d-border-subtle);--border-strong: var(--d-border-strong);--accent: var(--accent-color-dark-override, var(--d-accent));--accent-hover: var(--accent-color-dark-override, var(--d-accent-hover));--accent-active: var(--accent-color-dark-override, var(--d-accent-active));--accent-text: var(--d-accent-text);--accent-soft: var(--d-accent-soft);--accent-soft-border: var(--d-border-strong);--focus: var(--d-focus);--danger: var(--d-crit);--danger-hover: var(--d-crit);--danger-bg: var(--d-crit-bg);--danger-border: var(--d-crit-border);--success: var(--d-pos);--success-bg: var(--d-pos-bg);--success-border: var(--d-pos-border);--warning: var(--d-warn);--warning-bg: var(--d-warn-bg);--warning-border: var(--d-warn-border);--st-note: var(--d-pos);--st-note-bg: var(--d-pos-bg);--st-note-border: var(--d-pos-border);--st-absent-just: var(--d-warn);--st-absent-just-bg: var(--d-warn-bg);--st-absent-just-border: var(--d-warn-border);--st-absent-nonjust: var(--d-crit);--st-absent-nonjust-bg: var(--d-crit-bg);--st-absent-nonjust-border: var(--d-crit-border);--st-dispense: var(--d-info);--st-dispense-bg: var(--d-info-bg);--st-dispense-border: var(--d-info-border);--st-fraude: var(--d-plum);--st-fraude-bg: var(--d-plum-bg);--st-fraude-border: var(--d-plum-border);--st-annule: var(--d-stone);--st-annule-bg: var(--d-stone-bg);--st-annule-border: var(--d-stone-border);--st-nonsaisi: var(--d-text-subtle);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .3);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .32), 0 1px 3px rgba(0, 0, 0, .28);--shadow-md: 0 2px 4px rgba(0, 0, 0, .3), 0 8px 20px -6px rgba(0, 0, 0, .45);--shadow-lg: 0 4px 10px rgba(0, 0, 0, .35), 0 22px 40px -12px rgba(0, 0, 0, .55);--nav-bg: var(--d-nav-bg);--nav-surface: var(--d-nav-surface);--nav-text: var(--d-nav-text);--nav-text-dim: var(--d-nav-text-dim);--nav-border: rgba(255, 255, 255, .07)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-ui);font-size:var(--fs-base);line-height:var(--lh-normal);font-feature-settings:"cv05" 1,"ss01" 1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.serif{font-family:var(--font-display)}a{color:var(--accent);text-decoration-color:color-mix(in srgb,var(--accent) 40%,transparent);text-underline-offset:.15em}a:hover{color:var(--accent-hover)}h1,h2,h3,h4{font-family:var(--font-display);font-weight:600;line-height:var(--lh-tight);letter-spacing:var(--ls-tight);text-wrap:balance;margin:0 0 var(--sp-3);color:var(--text)}h1{font-size:var(--fs-2xl)}h2{font-size:var(--fs-xl)}h3{font-size:var(--fs-lg)}h4{font-size:var(--fs-base)}p{margin:0 0 var(--sp-3)}p:last-child{margin-bottom:0}hr{border:none;border-block-start:1px solid var(--border);margin-block:var(--sp-5)}code,pre{font-family:var(--font-mono);font-size:.92em}code{background:var(--surface-sunken);border-radius:var(--r-xs);padding:.08em .35em}::selection{background:color-mix(in srgb,var(--accent) 22%,transparent)}*{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:var(--r-full);border:3px solid transparent;background-clip:content-box}*::-webkit-scrollbar-thumb:hover{background:var(--text-subtle);background-clip:content-box}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}button:not([class]){font:inherit;font-size:var(--fs-md);font-weight:600;min-block-size:var(--control-h);padding-inline:var(--sp-5);padding-block:0;border-radius:var(--r-md);border:1px solid var(--border-strong);background:var(--surface);color:var(--text);cursor:pointer;transition:background var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease),color var(--t-fast) var(--ease)}button:not([class]):hover:not(:disabled){background:var(--surface-hover);border-color:var(--accent);color:var(--accent)}button:not([class]):disabled{opacity:.5;cursor:not-allowed}input:not([class]),select:not([class]),textarea:not([class]){font:inherit;font-size:var(--fs-base);color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-md);padding-inline:var(--sp-3);padding-block:.55rem;transition:border-color var(--t-fast) var(--ease),box-shadow var(--t-fast) var(--ease)}input:not([class]):focus,select:not([class]):focus,textarea:not([class]):focus{outline:none;border-color:var(--focus);box-shadow:var(--ring)}input[type=checkbox],input[type=radio]{accent-color:var(--accent);inline-size:1rem;block-size:1rem;margin-inline-end:var(--sp-2);vertical-align:-.15em}fieldset{border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--sp-4) var(--sp-5);margin:0;min-inline-size:0}legend{padding-inline:var(--sp-2);font-family:var(--font-display);font-weight:600;font-size:var(--fs-md);color:var(--text)}table,.stat .value,.summary-stat .val,.tabular{font-variant-numeric:tabular-nums}.app{min-block-size:100vh;display:flex;flex-direction:column;background:radial-gradient(1100px 520px at 50% -12%,color-mix(in srgb,var(--accent) 13%,transparent),transparent 68%),var(--bg)}.app>main{flex:1;display:flex;flex-direction:column;justify-content:center;padding-inline:var(--sp-4)}.content-narrow,.content-wide{margin:0 auto;padding:var(--sp-7) var(--sp-5) var(--sp-10);display:flex;flex-direction:column;gap:var(--sp-5);inline-size:100%}.content-narrow{max-inline-size:46rem}.content-wide{max-inline-size:76rem}@media (max-width: 640px){.content-narrow,.content-wide{padding:var(--sp-5) var(--sp-4) var(--sp-9);gap:var(--sp-4)}}.page-title,h1.page-title{font-family:var(--font-display);font-weight:600;font-size:var(--fs-2xl);line-height:var(--lh-tight);letter-spacing:var(--ls-tight);margin:0;color:var(--text);text-wrap:balance}.form>.page-title{text-align:center}.section-title{font-family:var(--font-display);font-size:var(--fs-lg);font-weight:600;margin:var(--sp-2) 0 0;padding-block-end:var(--sp-2);border-block-end:1px solid var(--border)}.hint{font-size:var(--fs-md);color:var(--text-muted);margin:0}button.primary,button.secondary,button.ghost,button.danger,.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);font:inherit;font-size:var(--fs-md);font-weight:600;line-height:1;min-block-size:var(--control-h);padding-inline:var(--sp-5);padding-block:0;border-radius:var(--r-md);border:1px solid transparent;cursor:pointer;white-space:nowrap;text-decoration:none;transition:background var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease),color var(--t-fast) var(--ease),box-shadow var(--t-fast) var(--ease),transform var(--t-fast) var(--ease)}button.primary{background:var(--accent);color:var(--accent-text);box-shadow:var(--shadow-xs)}button.primary:hover:not(:disabled){background:var(--accent-hover);box-shadow:var(--shadow-sm)}button.primary:active:not(:disabled){background:var(--accent-active);transform:translateY(1px);box-shadow:none}button.secondary{background:var(--surface);color:var(--text);border-color:var(--border-strong);box-shadow:var(--shadow-xs)}button.secondary:hover:not(:disabled){background:var(--surface-hover);border-color:var(--accent);color:var(--accent)}button.secondary:active:not(:disabled){transform:translateY(1px);box-shadow:none}button.ghost{background:transparent;color:var(--text-muted);border-color:transparent}button.ghost:hover:not(:disabled){background:var(--surface-hover);color:var(--text)}button.danger{background:var(--danger-bg);color:var(--danger);border-color:var(--danger-border)}button.danger:hover:not(:disabled){background:var(--danger);color:var(--surface);border-color:var(--danger)}button.primary:focus-visible,button.secondary:focus-visible,button.ghost:focus-visible,button.danger:focus-visible,button:not([class]):focus-visible{outline:none;box-shadow:var(--ring)}button.primary:disabled,button.secondary:disabled,button.ghost:disabled,button.danger:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.btn-sm,button.primary.btn-sm,button.secondary.btn-sm{min-block-size:var(--control-h-sm);font-size:var(--fs-sm);padding-inline:var(--sp-3)}.icon-btn{display:inline-flex;align-items:center;justify-content:center;inline-size:var(--control-h-sm);block-size:var(--control-h-sm);border-radius:var(--r-md);border:1px solid var(--border-strong);background:var(--surface);color:var(--text-muted);cursor:pointer;flex:none;padding:0;transition:background var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease),color var(--t-fast) var(--ease)}.icon-btn:hover:not(:disabled){color:var(--accent);border-color:var(--accent);background:var(--surface-hover)}.icon-btn:focus-visible{outline:none;box-shadow:var(--ring)}.icon-btn:disabled{opacity:.5;cursor:not-allowed}.icon-btn svg{inline-size:1.05rem;block-size:1.05rem}.form{max-inline-size:27rem;margin:var(--sp-9) auto;padding:var(--sp-7);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--shadow-md);display:flex;flex-direction:column;gap:var(--sp-4)}.form.is-embedded{margin:0;box-shadow:none}.content-narrow>.form,.content-wide>.form{max-inline-size:none;margin:0}.form.is-wide{max-inline-size:48rem}.form>h2{margin:0;font-size:var(--fs-lg)}.form-block{display:flex;flex-direction:column;gap:var(--sp-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--shadow-sm);padding:var(--sp-6)}.form-block fieldset{display:flex;flex-direction:column;gap:var(--sp-3)}.field-row{display:flex;gap:var(--sp-4)}.field-row>.field{flex:1 1 0;min-inline-size:0}@media (max-width: 30rem){.field-row{flex-direction:column}}.field-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(17rem,1fr));gap:var(--sp-4);align-items:start}.field-grid.is-dense{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr))}.field-grid>.filtre-tableau{margin-block-end:0;align-self:end}p+.field-grid,p+.field-row{margin-block-start:var(--sp-5)}.form label:has(>input,>select,>textarea):not(:has(>input[type=radio],>input[type=checkbox])),.form-block label:has(>input,>select,>textarea):not(:has(>input[type=radio],>input[type=checkbox])),.field{display:flex;flex-direction:column;gap:var(--sp-2);font-size:var(--fs-xs);font-weight:600;color:var(--text-muted);letter-spacing:var(--ls-wide);text-transform:uppercase}.form label:not(:has(input,select,textarea)),.form-block label:not(:has(input,select,textarea)){font-size:var(--fs-xs);font-weight:600;color:var(--text-muted);letter-spacing:var(--ls-wide);text-transform:uppercase}.form label:not(:has(input,select,textarea))+input,.form label:not(:has(input,select,textarea))+select,.form label:not(:has(input,select,textarea))+textarea,.form-block label:not(:has(input,select,textarea))+input,.form-block label:not(:has(input,select,textarea))+select,.form-block label:not(:has(input,select,textarea))+textarea{margin-block-start:calc(var(--sp-2) - var(--sp-4))}.form label+input:not([type=radio],[type=checkbox]),.form label+select,.form label+textarea,.form-block label+input:not([type=radio],[type=checkbox]),.form-block label+select,.form-block label+textarea,.form label>input:not([type=radio],[type=checkbox]),.form label>select,.form label>textarea,.form-block label>input:not([type=radio],[type=checkbox]),.form-block label>select,.form-block label>textarea,.field input,.field select,.field textarea{font:inherit;font-size:var(--fs-base);font-weight:400;letter-spacing:normal;text-transform:none;color:var(--text);min-block-size:var(--control-h);padding-inline:var(--sp-3);padding-block:.55rem;border-radius:var(--r-md);border:1px solid var(--border-strong);background:var(--surface);transition:border-color var(--t-fast) var(--ease),box-shadow var(--t-fast) var(--ease),background var(--t-fast) var(--ease)}.field textarea{min-block-size:5rem;resize:vertical;line-height:var(--lh-normal)}.field input::placeholder,.field textarea::placeholder{color:var(--text-subtle)}.field input:hover:not(:disabled),.field select:hover:not(:disabled){border-color:var(--text-subtle)}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible,.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--focus);box-shadow:var(--ring)}.field input:disabled,.field select:disabled{background:var(--surface-sunken);color:var(--text-subtle);cursor:not-allowed}.field select{appearance:none;-webkit-appearance:none;cursor:pointer;background-repeat:no-repeat;background-image:linear-gradient(45deg,transparent 50%,var(--text-muted) 50%),linear-gradient(135deg,var(--text-muted) 50%,transparent 50%);background-position:right 1.05rem center,right .8rem center;background-size:.4rem .4rem,.4rem .4rem;padding-inline-end:2.3rem}.form-actions{display:flex;gap:var(--sp-3);flex-wrap:wrap}.form-actions .primary,.form-actions .secondary{flex:0 1 auto;min-inline-size:9rem}@media (max-width: 30rem){.form-actions .primary,.form-actions .secondary{flex:1 1 auto}}.form-error,.form-success{display:flex;align-items:flex-start;gap:var(--sp-2);font-size:var(--fs-md);font-weight:500;line-height:var(--lh-snug);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-md);border-inline-start:3px solid currentColor;margin:0}.form-error{color:var(--danger);background:var(--danger-bg)}.form-success{color:var(--success);background:var(--success-bg)}.form-warning{display:flex;flex-direction:column;align-items:flex-start;gap:var(--sp-3);font-size:var(--fs-md);line-height:var(--lh-snug);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-md);border-inline-start:3px solid var(--warning-border);background:var(--warning-bg);color:var(--warning);margin:0}.form-warning p{margin:0;font-weight:500}.form-warning .hint{font-weight:400}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--shadow-sm);padding:var(--sp-6)}.card>h2:first-child,.card>.card-head{margin-block:calc(-1 * var(--sp-6)) var(--sp-5);margin-inline:calc(-1 * var(--sp-6));padding:var(--sp-4) var(--sp-6);background:var(--surface-alt);border-start-start-radius:calc(var(--r-xl) - 1px);border-start-end-radius:calc(var(--r-xl) - 1px);border-block-end:1px solid var(--border-subtle);font-family:var(--font-display);font-size:var(--fs-lg);font-weight:600;color:var(--text)}.card>.card-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3)}.card>h2:not(:first-child){margin-block:var(--sp-6) var(--sp-3);padding-block-start:var(--sp-5);border-block-start:1px solid var(--border-subtle);font-size:var(--fs-base);text-transform:uppercase;letter-spacing:var(--ls-caps);font-family:var(--font-ui);font-weight:700;color:var(--text-muted)}.card>h3{font-size:var(--fs-base);margin-block:var(--sp-4) var(--sp-2)}.card p+p{margin-top:var(--sp-3)}.card>ul,.card>ol{margin:0;padding-inline-start:var(--sp-5);color:var(--text)}.card>ul li,.card>ol li{margin-block:var(--sp-1)}fieldset.pay-form{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);padding:var(--sp-5);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:var(--sp-4)}fieldset.pay-form legend{padding-inline:var(--sp-2);font-family:var(--font-display);font-weight:700;font-size:var(--fs-lg)}.sr-only{position:absolute;inline-size:1px;block-size:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.table-wrap{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--shadow-sm);overflow:auto;max-block-size:min(72vh,46rem)}table.matrix{inline-size:100%;border-collapse:separate;border-spacing:0;font-size:var(--fs-md)}table.matrix th,table.matrix td{padding:var(--sp-3) var(--sp-5);text-align:start;border-block-end:1px solid var(--border-subtle);white-space:normal;overflow-wrap:break-word;vertical-align:middle}table.matrix td.num,table.matrix th.num,table.matrix td.nowrap,table.matrix th.nowrap{white-space:nowrap;overflow-wrap:normal}table.matrix td input[type=number]{inline-size:5rem;min-inline-size:0;padding-inline:var(--sp-2)}table.matrix td.identite,table.matrix th.identite{min-inline-size:13rem}table.matrix td.saisie,table.matrix th.saisie{min-inline-size:16rem}.langues-terme{display:flex;flex-wrap:wrap;gap:var(--sp-1);align-items:center}.langue-mot{display:inline-flex;align-items:baseline;gap:var(--sp-1);padding:.15rem var(--sp-2);border-radius:var(--r-full);background:var(--surface-alt);border:1px solid var(--border);font-size:var(--fs-xs)}.code-langue{font-family:var(--font-mono);font-size:var(--fs-2xs);font-weight:700;letter-spacing:var(--ls-wide);text-transform:uppercase;color:var(--text-muted)}.filtre-tableau{display:flex;align-items:center;gap:var(--sp-3);flex-wrap:wrap;margin-block-end:var(--sp-3)}.filtre-tableau input[type=search]{flex:1 1 14rem;max-inline-size:24rem;min-inline-size:0}.filtre-compte{color:var(--text-muted);font-size:var(--fs-sm);font-variant-numeric:tabular-nums;white-space:nowrap}table.matrix .form-actions{gap:var(--sp-2)}table.matrix .form-actions .primary,table.matrix .form-actions .secondary{min-inline-size:0}table.matrix thead th{position:sticky;inset-block-start:0;z-index:1;font-family:var(--font-ui);font-size:var(--fs-2xs);font-weight:700;text-transform:uppercase;letter-spacing:var(--ls-caps);color:var(--text-muted);background:var(--surface-alt);border-block-end:1px solid var(--border);padding-block:var(--sp-3)}table.matrix tbody tr:nth-child(2n) td{background:color-mix(in srgb,var(--surface-alt) 55%,transparent)}table.matrix tbody tr:hover td{background:var(--surface-hover)}table.matrix tbody tr:last-child td{border-block-end:none}table.matrix td.num,table.matrix th.num{text-align:end;font-variant-numeric:tabular-nums}table.matrix tfoot td{background:var(--surface-alt);font-weight:700;border-block-start:1px solid var(--border)}@media (max-width: 720px){.table-wrap{max-block-size:none}table.matrix th,table.matrix td{padding-inline:var(--sp-3)}table.matrix tbody td:first-child{min-inline-size:7rem}}.badge{display:inline-flex;align-items:center;gap:var(--sp-1);padding:.15rem var(--sp-2);border-radius:var(--r-full);font-size:var(--fs-2xs);font-weight:700;letter-spacing:var(--ls-wide);text-transform:uppercase;background:var(--surface-alt);color:var(--text-muted);border:1px solid var(--border);white-space:nowrap;vertical-align:.05em}.badge.is-success{background:var(--success-bg);color:var(--success);border-color:var(--success-border)}.badge.is-warning{background:var(--warning-bg);color:var(--warning);border-color:var(--warning-border)}.badge.is-danger{background:var(--danger-bg);color:var(--danger);border-color:var(--danger-border)}.badge.is-accent{background:var(--accent-soft);color:var(--accent);border-color:var(--accent-soft-border)}.bareme-chip{display:inline-flex;align-items:baseline;gap:var(--sp-1);padding:.1rem var(--sp-3);border-radius:var(--r-full);background:var(--accent-soft);border:1px solid var(--accent-soft-border);color:var(--accent);font-variant-numeric:tabular-nums;font-weight:700;font-size:var(--fs-sm)}.chip-list{display:flex;flex-wrap:wrap;gap:var(--sp-2)}.quick-amounts,.doc-type-switch{display:flex;gap:var(--sp-2);flex-wrap:wrap}.quick-amounts button{font:inherit;font-size:var(--fs-sm);font-weight:600;min-block-size:var(--control-h-sm);padding-inline:var(--sp-3);border-radius:var(--r-full);border:1px solid var(--border-strong);background:var(--surface-alt);color:var(--text);cursor:pointer;transition:border-color var(--t-fast) var(--ease),color var(--t-fast) var(--ease)}.quick-amounts button:hover{border-color:var(--accent);color:var(--accent)}.quick-amounts button:focus-visible{outline:none;box-shadow:var(--ring)}.doc-type-switch button{font-size:var(--fs-sm);padding-inline:var(--sp-4);min-block-size:var(--control-h-sm)}kbd{font-family:var(--font-ui);font-size:var(--fs-2xs);font-weight:600;border:1px solid var(--border-strong);border-block-end-width:2px;border-radius:var(--r-xs);padding:.05rem .35rem;background:var(--surface-alt);color:var(--text-muted)}.ledger-stats,.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:var(--sp-3)}.stat,.summary-stat{display:flex;flex-direction:column;gap:var(--sp-1);padding:var(--sp-4);border-radius:var(--r-lg);background:var(--surface-alt);border:1px solid var(--border-subtle)}.stat .label,.summary-stat .lbl{font-size:var(--fs-2xs);font-weight:700;text-transform:uppercase;letter-spacing:var(--ls-caps);color:var(--text-muted)}.stat .value,.summary-stat .val{font-family:var(--font-display);font-size:var(--fs-2xl);font-weight:700;line-height:var(--lh-tight);font-variant-numeric:tabular-nums;color:var(--text)}.stat.paid .value{color:var(--success)}.stat.due .value{color:var(--warning)}.empty-state{display:none;padding:var(--sp-8) var(--sp-5);text-align:center;color:var(--text-muted);font-size:var(--fs-md);background:var(--surface);border:1px dashed var(--border-strong);border-radius:var(--r-xl);margin:0}.empty-state.is-visible{display:block}.skeleton{border-radius:var(--r-sm);background:linear-gradient(90deg,var(--surface-alt) 25%,var(--surface-hover) 37%,var(--surface-alt) 63%);background-size:400% 100%;animation:shimmer 1.4s ease-in-out infinite;color:transparent;-webkit-user-select:none;user-select:none}.skeleton-line{block-size:.75rem;margin-block:var(--sp-2)}@keyframes shimmer{0%{background-position:100% 50%}to{background-position:0 50%}}@media (prefers-reduced-motion: reduce){.skeleton{animation:none}}.search-wrap{padding-block-end:var(--sp-3)}.search-field{display:flex;align-items:center;gap:var(--sp-2);min-block-size:var(--control-h);padding-inline:var(--sp-3);border-radius:var(--r-md);border:1px solid var(--border-strong);background:var(--surface);transition:border-color var(--t-fast) var(--ease),box-shadow var(--t-fast) var(--ease)}.search-field:focus-within{border-color:var(--focus);box-shadow:var(--ring)}.search-field svg{flex:none;color:var(--text-subtle)}.search-field input{flex:1;min-inline-size:0;border:none;background:transparent;font:inherit;font-size:var(--fs-base);color:var(--text);padding-block:var(--sp-2)}.search-field input:focus{outline:none}.search-field input::placeholder{color:var(--text-subtle)}.search-field kbd{flex:none}.search-count{margin-block-start:var(--sp-2);font-size:var(--fs-xs);color:var(--text-muted)}ul.search-results{list-style:none;margin:0;padding:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--shadow-sm);overflow:hidden}ul.search-results li{display:flex;align-items:center;gap:var(--sp-3);padding-inline-end:var(--sp-4)}ul.search-results li+li{border-block-start:1px solid var(--border-subtle)}ul.search-results li>span{flex:1;min-inline-size:0;padding-block:var(--sp-3);padding-inline:var(--sp-5) 0;font-size:var(--fs-base)}ul.search-results button.search-option{display:block;inline-size:100%;text-align:start;font:inherit;font-size:var(--fs-base);font-weight:500;padding:var(--sp-3) var(--sp-5);min-block-size:0;border:none;border-radius:0;background:transparent;color:var(--text);cursor:pointer}ul.search-results button.search-option:hover,ul.search-results button.search-option:focus-visible,ul.search-results button.search-option.is-highlighted{background:var(--surface-hover);color:var(--accent);outline:none}ul.search-results li>button.secondary{flex:none;margin-block:var(--sp-2)}.progress-wrap{padding-block-end:var(--sp-4)}.progress-line{display:flex;justify-content:space-between;align-items:baseline;font-size:var(--fs-xs);font-weight:600;letter-spacing:var(--ls-wide);text-transform:uppercase;color:var(--text-muted);margin-block-end:var(--sp-2)}.progress-line strong{color:var(--text);font-variant-numeric:tabular-nums;font-size:var(--fs-md);letter-spacing:normal}.progress-track{block-size:8px;border-radius:var(--r-full);background:var(--surface-sunken);overflow:hidden;border:1px solid var(--border-subtle)}.progress-fill{block-size:100%;border-radius:var(--r-full);background:linear-gradient(90deg,var(--success),var(--accent));inline-size:var(--pct, 62%);transition:inline-size var(--t-base) var(--ease)}.sync-banner{display:flex;align-items:center;gap:var(--sp-2);margin-block-end:var(--sp-4);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-md);background:var(--warning-bg);color:var(--warning);font-size:var(--fs-md);font-weight:500;border-inline-start:3px solid currentColor}.sync-banner.is-error{background:var(--danger-bg);color:var(--danger)}.sync-banner .dot-pulse{inline-size:.5rem;block-size:.5rem;border-radius:var(--r-full);background:currentColor;flex:none;animation:pulse 1.8s ease-in-out infinite}@media (prefers-reduced-motion: reduce){.dot-pulse{animation:none}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}.sync-banner strong{font-variant-numeric:tabular-nums}.context,.progress-wrap,.search-wrap,.roster-main,.sync-banner,.bottombar-inner{max-inline-size:var(--shell-max);margin-inline:auto}.context{padding-block-end:var(--sp-4)}.context h1{font-family:var(--font-display);font-weight:600;font-size:var(--fs-2xl);margin:0 0 var(--sp-2);text-wrap:balance}.context p{max-inline-size:42rem;margin:var(--sp-2) 0 0;color:var(--text-muted);font-size:var(--fs-md)}.meta{color:var(--text-muted);font-size:var(--fs-md)}.context .meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-1) var(--sp-3)}.context .meta strong{color:var(--text);font-weight:600}.meta .dot:before{content:"·";margin-inline-end:var(--sp-3);color:var(--border-strong)}.meta>span:first-child .dot:before{content:none;margin:0}.brand{display:flex;align-items:baseline;gap:var(--sp-2);flex:none}.mark{font-family:var(--font-display);font-weight:700;font-size:var(--fs-lg);letter-spacing:var(--ls-tight);color:var(--accent)}.brand .mark{color:var(--accent)}.brand .sub{font-size:var(--fs-2xs);font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:var(--ls-caps)}.roster-main{flex:1;padding-block-end:var(--sp-10)}.col-headers{display:none}ul.roster{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--sp-2)}.row{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--sp-3) var(--sp-4);box-shadow:var(--shadow-xs);display:grid;grid-template-columns:1fr;gap:var(--sp-3)}.row.is-flagged{border-color:color-mix(in srgb,var(--st-fraude) 45%,var(--border))}.row[hidden]{display:none}.who{display:flex;align-items:baseline;gap:var(--sp-2);min-inline-size:0}.who .num{font-variant-numeric:tabular-nums;color:var(--text-subtle);font-size:var(--fs-xs);font-weight:600;flex:none;inline-size:1.4rem}.who .name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.who .matricule{font-variant-numeric:tabular-nums;color:var(--text-subtle);font-size:var(--fs-xs);flex:none;margin-inline-start:auto;padding-inline-start:var(--sp-2)}.entry{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap}select.etat{appearance:none;-webkit-appearance:none;font:inherit;font-size:var(--fs-sm);font-weight:600;min-block-size:var(--control-h-sm);padding-block:0;padding-inline-end:1.7rem;padding-inline-start:var(--sp-3);border-radius:var(--r-full);border:1px solid transparent;cursor:pointer;background-repeat:no-repeat;background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);background-position:right .9rem center,right .65rem center;background-size:.4rem .4rem,.4rem .4rem;color:var(--st-note);background-color:var(--st-note-bg);transition:background-color var(--t-fast) var(--ease)}select.etat:focus-visible{outline:none;box-shadow:var(--ring)}select.etat[data-etat=NON_SAISI]{color:var(--st-nonsaisi);background-color:transparent;border:1px dashed var(--border-strong)}select.etat[data-etat=NOTE]{color:var(--st-note);background-color:var(--st-note-bg);border-color:var(--st-note-border)}select.etat[data-etat=ABSENT_JUSTIFIE]{color:var(--st-absent-just);background-color:var(--st-absent-just-bg);border-color:var(--st-absent-just-border)}select.etat[data-etat=ABSENT_NON_JUSTIFIE]{color:var(--st-absent-nonjust);background-color:var(--st-absent-nonjust-bg);border-color:var(--st-absent-nonjust-border)}select.etat[data-etat=DISPENSE]{color:var(--st-dispense);background-color:var(--st-dispense-bg);border-color:var(--st-dispense-border)}select.etat[data-etat=FRAUDE]{color:var(--st-fraude);background-color:var(--st-fraude-bg);border-color:var(--st-fraude-border)}select.etat[data-etat=ANNULE]{color:var(--st-annule);background-color:var(--st-annule-bg);border-color:var(--st-annule-border)}.note-input{display:flex;align-items:baseline;gap:var(--sp-1);margin-inline-start:auto}.note-input input{inline-size:4.4rem;font:inherit;font-weight:700;font-variant-numeric:tabular-nums;font-size:var(--fs-lg);text-align:end;padding:var(--sp-1) var(--sp-2);border-radius:var(--r-sm);border:1px solid var(--border-strong);background:var(--surface);color:var(--text);transition:border-color var(--t-fast) var(--ease),box-shadow var(--t-fast) var(--ease)}.note-input input:focus-visible{outline:none;box-shadow:var(--ring);border-color:var(--focus)}.note-input .max{color:var(--text-subtle);font-size:var(--fs-md);font-variant-numeric:tabular-nums}.note-input.is-empty input{color:var(--text-subtle)}.note-input.is-invalid input{border-color:var(--danger);background:var(--danger-bg);color:var(--danger)}.row-error{display:none;align-items:center;gap:var(--sp-1);color:var(--danger);font-size:var(--fs-xs);font-weight:600}.row.has-error .row-error{display:flex}.row.has-error .row-foot>*:not(.row-error){display:none}.row-foot{display:flex;align-items:center;gap:var(--sp-2);font-size:var(--fs-xs);color:var(--text-muted);min-block-size:1rem}.chip-sync{display:inline-flex;align-items:center;gap:var(--sp-1);padding:.1rem var(--sp-2);border-radius:var(--r-full);background:var(--surface-alt);border:1px solid var(--border-subtle);font-size:var(--fs-2xs);font-weight:600}.chip-sync.pending{color:var(--warning)}.chip-sync.pending:before{content:"";inline-size:.4rem;block-size:.4rem;border-radius:var(--r-full);background:currentColor}.chip-sync.synced{color:var(--success)}.chip-sync.synced:before{content:"✓";font-size:var(--fs-2xs)}.chip-sync.error{color:var(--danger)}.chip-sync.error:before{content:"!";font-weight:700}.flag-note{color:var(--st-fraude);font-weight:600}.bottombar{position:fixed;inset-inline:0;inset-block-end:0;z-index:var(--z-overlay);background:var(--surface);border-block-start:1px solid var(--border);box-shadow:0 -4px 20px #0e16261a;padding:var(--sp-3) var(--sp-5) calc(var(--sp-3) + env(safe-area-inset-bottom))}.bottombar-inner{max-inline-size:75rem;margin:0 auto;display:flex;align-items:center;gap:var(--sp-3)}.bb-status{display:flex;flex-direction:column;gap:.1rem;font-size:var(--fs-xs);color:var(--text-muted);flex:1;min-inline-size:0}.bb-status strong{color:var(--text);font-size:var(--fs-md);font-variant-numeric:tabular-nums}.kbd-hint{display:none}footer.note{max-inline-size:44em;margin:var(--sp-6) auto var(--sp-10);padding-inline:var(--sp-5);font-size:var(--fs-md);color:var(--text-muted)}footer.note code{color:var(--text)}@media (min-width: 720px){.row{grid-template-columns:2.2fr auto auto;align-items:center;padding-block:var(--sp-2)}.who .matricule{margin-inline-start:0}.entry{justify-content:flex-end;flex-wrap:nowrap}.note-input{margin-inline-start:0}.row-foot{justify-self:end}.col-headers{display:grid;grid-template-columns:2.2fr auto auto;padding-inline:var(--sp-4);font-size:var(--fs-2xs);font-weight:700;text-transform:uppercase;letter-spacing:var(--ls-caps);color:var(--text-muted);margin-block-end:var(--sp-2)}.col-headers .h-right{text-align:end}}@media (min-width: 1040px){ul.roster{gap:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--shadow-sm);overflow:hidden}.row{grid-template-columns:minmax(0,2.6fr) minmax(20rem,1fr) 9rem;border-radius:0;box-shadow:none;border:none;border-block-end:1px solid var(--border-subtle);padding-inline:var(--sp-5)}.row:last-child{border-block-end:none}.row:nth-child(2n){background:color-mix(in srgb,var(--surface-alt) 55%,transparent)}.row:hover{background:var(--surface-hover)}.col-headers{grid-template-columns:minmax(0,2.6fr) minmax(20rem,1fr) 9rem;padding-inline:var(--sp-5)}.bottombar{position:static;box-shadow:none;border-block-start:1px solid var(--border);background:transparent;padding-inline:0}.bottombar-inner{padding-block:var(--sp-2)}.kbd-hint{display:inline-flex;align-items:center;gap:var(--sp-1);font-size:var(--fs-sm);color:var(--text-muted)}}.student-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);padding:var(--sp-4) var(--sp-5);box-shadow:var(--shadow-sm);display:flex;align-items:center;gap:var(--sp-4)}.avatar{flex:none;inline-size:2.75rem;block-size:2.75rem;border-radius:var(--r-full);background:var(--accent);color:var(--accent-text);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:700;font-size:var(--fs-lg);letter-spacing:.02em}.student-card .id{min-inline-size:0;flex:1}.student-card .id .name{font-weight:700;font-size:var(--fs-lg);letter-spacing:var(--ls-tight)}.student-card .id .sub{color:var(--text-muted);font-size:var(--fs-md);font-variant-numeric:tabular-nums;margin-block-start:.1rem}.clear-student{flex:none;inline-size:2rem;block-size:2rem;border-radius:var(--r-full);border:1px solid var(--border-strong);background:var(--surface);color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:var(--fs-md);transition:color var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease)}.clear-student:hover{color:var(--danger);border-color:var(--danger)}.clear-student:focus-visible{outline:none;box-shadow:var(--ring)}.next-due{margin-block-start:var(--sp-4);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-md);background:var(--warning-bg);color:var(--warning);display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);font-size:var(--fs-md);font-weight:600;border-inline-start:3px solid currentColor}.next-due span:last-child{font-variant-numeric:tabular-nums}details.breakdown{margin-block-start:var(--sp-4)}details.breakdown summary{cursor:pointer;font-size:var(--fs-md);font-weight:600;color:var(--accent);list-style:none;display:flex;align-items:center;gap:var(--sp-1)}details.breakdown summary::-webkit-details-marker{display:none}details.breakdown summary:before{content:"▸";font-size:var(--fs-xs);transition:transform var(--t-fast) var(--ease)}details.breakdown[open] summary:before{transform:rotate(90deg)}[dir=rtl] details.breakdown summary:before{transform:rotate(180deg)}[dir=rtl] details.breakdown[open] summary:before{transform:rotate(90deg)}.breakdown-table{margin-block-start:var(--sp-3);display:flex;flex-direction:column}.breakdown-row{display:flex;justify-content:space-between;gap:var(--sp-3);font-size:var(--fs-md);padding-block:var(--sp-2);border-block-end:1px dashed var(--border)}.breakdown-row:last-child{border-block-end:none}.breakdown-row .amt{font-variant-numeric:tabular-nums;color:var(--text-muted);font-weight:600}.breakdown-row.settled .amt{color:var(--success)}.amount-field{display:flex;align-items:baseline;gap:var(--sp-2)}.amount-field input{flex:1;min-inline-size:0;font:inherit;font-family:var(--font-display);font-size:var(--fs-3xl);font-weight:700;font-variant-numeric:tabular-nums;padding:var(--sp-1) var(--sp-1);border:none;border-block-end:2px solid var(--border-strong);border-radius:0;background:transparent;color:var(--text);transition:border-color var(--t-fast) var(--ease)}.amount-field input:focus-visible{outline:none;border-color:var(--focus)}.amount-field input.is-invalid{border-color:var(--danger);color:var(--danger)}.amount-field .cur{font-size:var(--fs-lg);color:var(--text-muted);font-weight:600}.method-detail{padding:var(--sp-4);border-radius:var(--r-md);background:var(--surface-alt);border:1px solid var(--border-subtle)}.receipt-line{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-md);background:var(--surface-alt);border:1px solid var(--border-subtle);font-size:var(--fs-md)}.receipt-line .num{font-weight:700;font-variant-numeric:tabular-nums}.role-note{display:flex;gap:var(--sp-2);align-items:flex-start;font-size:var(--fs-md);color:var(--text-muted);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-md);background:var(--surface-alt);border-inline-start:3px solid var(--border-strong)}.assignment-list{display:flex;flex-direction:column;gap:var(--sp-2)}.assignment-row{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);flex-wrap:wrap;white-space:normal}.seance{display:flex;flex-direction:column;align-items:flex-start;gap:.15rem;min-inline-size:0}.seance-principal{font-weight:600;color:var(--text);line-height:1.25}.seance-secondaire{font-size:var(--fs-sm);color:var(--text);line-height:1.25}.seance-personne{font-size:var(--fs-sm);color:var(--text-muted);line-height:1.25}.grille-seances{table-layout:fixed}.grille-seances th:first-child,.grille-seances td:first-child{inline-size:7.5rem}.grille-seances td{block-size:1px}.grille-seances td>div:not(.assignment-row){block-size:100%}.grille-seances td>div:not(.assignment-row)>.seance-teintee{block-size:100%}.seance-teintee{border:1px solid transparent;border-radius:var(--r-sm);padding:.2rem .35rem;inline-size:100%}.seance-teintee .seance-principal,.seance-teintee .seance-secondaire{color:inherit}.seance-teintee .seance-personne{color:inherit;opacity:.82}.seance-teintee .seance-lieu{color:inherit;opacity:.75;border-color:currentColor}.manuel-sommaire{margin-block-end:var(--sp-5)}.manuel-sommaire ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.35rem .5rem}.manuel-sommaire a{display:inline-block;padding:.2rem .6rem;border:1px solid var(--border);border-radius:var(--r-sm);font-size:var(--fs-sm);text-decoration:none}.manuel-etapes{margin:0;padding-inline-start:1.4rem;display:flex;flex-direction:column;gap:var(--sp-4)}.manuel-etapes li{padding-inline-start:.2rem}.manuel-ecran{display:block;font-size:var(--fs-2xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-block-end:.15rem}.manuel-texte{display:block}.manuel-blocage{margin-block-start:var(--sp-5);padding:.6rem .8rem;border-inline-start:3px solid var(--border);background:var(--surface-alt, transparent);font-size:var(--fs-sm)}.form-error-action{display:block;margin-block-start:.35rem;font-weight:600}.pastille-couleur{display:inline-flex;align-items:center;gap:.3rem;padding:.15rem .5rem;border:1px solid transparent;border-radius:var(--r-sm);font-size:var(--fs-sm);font-weight:600;cursor:pointer;white-space:nowrap}.pastille-couleur[aria-pressed=true]{outline:2px solid var(--text);outline-offset:1px}.pastille-couleur:disabled{cursor:progress;opacity:.6}.seance-lieu{font-size:var(--fs-2xs);color:var(--text-muted);border:1px solid var(--border);border-radius:var(--r-sm);padding:.05rem .4rem;letter-spacing:.02em;white-space:nowrap;margin-block-start:.1rem}table.matrix td.creneau-heure,table.matrix th.creneau-heure{white-space:nowrap;overflow-wrap:normal;inline-size:1%;font-weight:600;font-variant-numeric:tabular-nums}.assignment-row .role{font-size:var(--fs-2xs);font-weight:700;text-transform:uppercase;letter-spacing:var(--ls-caps);color:var(--text-muted);margin-inline-end:var(--sp-2)}.app-shell{min-block-size:100vh}.crumb-sep{color:var(--text-subtle);margin-inline:var(--sp-1)}.account-area{display:flex;align-items:center;gap:var(--sp-2)}.account-name{max-width:14ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;font-weight:600;color:var(--nav-fg, inherit)}.account-greeting{display:none;font-weight:400;opacity:.85}@media (min-width: 48rem){.account-name{max-width:26ch}.account-greeting{display:inline}}.app-shell--sidebar{display:flex;align-items:stretch}.sidebar{background:var(--nav-bg);color:var(--nav-text);inline-size:var(--sidebar-w);flex:none;display:flex;flex-direction:column;padding:var(--sp-3) var(--sp-3) var(--sp-4);position:sticky;inset-block-start:0;block-size:100vh;overflow-y:auto;border-inline-end:1px solid var(--nav-border)}.sidebar-brand{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-3) var(--sp-5)}.sidebar-brand .brand-badge{flex:none;inline-size:2.1rem;block-size:2.1rem;border-radius:var(--r-md);display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,var(--brand-400),var(--brand-700));color:#fff;font-family:var(--font-display);font-weight:700;font-size:var(--fs-lg);box-shadow:0 2px 8px #00000059}.marque-connexion{display:block;inline-size:100%;max-inline-size:min(100%,15rem);block-size:auto;margin:0 auto var(--sp-2)}.sidebar-brand img.brand-badge,.portal-brand img.brand-badge,.topbar-b img.brand-badge,img.brand-badge{flex:none;inline-size:2.1rem;block-size:2.1rem;object-fit:contain;background:none;box-shadow:none;border-radius:0}.sidebar-brand .brand-text{display:flex;flex-direction:column;line-height:1.1;min-inline-size:0}.sidebar-brand .mark{color:var(--nav-text-strong)}.sidebar-brand .sub{font-size:var(--fs-2xs);font-weight:600;color:var(--nav-text-dim);text-transform:uppercase;letter-spacing:var(--ls-caps)}.side-link,.side-cat>summary{position:relative;display:flex;align-items:center;gap:var(--sp-3);inline-size:100%;min-block-size:2.25rem;padding:var(--sp-2) var(--sp-3);border:none;border-radius:var(--r-md);cursor:pointer;background:transparent;color:var(--nav-text);text-decoration:none;font:inherit;font-size:var(--fs-md);font-weight:500;list-style:none;-webkit-user-select:none;user-select:none;text-align:start;transition:background var(--t-fast) var(--ease),color var(--t-fast) var(--ease)}.side-link:hover,.side-cat>summary:hover{background:var(--nav-hover-bg);color:var(--nav-text-strong)}.side-link:focus-visible,.side-cat>summary:focus-visible{outline:2px solid var(--nav-marker);outline-offset:-2px}.side-link.active{background:var(--nav-active-bg);color:var(--nav-text-strong);font-weight:600}.side-link.active:before{content:"";position:absolute;inset-inline-start:0;inset-block:.35rem;inline-size:3px;border-radius:var(--r-full);background:var(--nav-marker)}.side-cat>summary{font-size:var(--fs-2xs);font-weight:700;text-transform:uppercase;letter-spacing:var(--ls-caps);color:var(--nav-text-dim)}.side-cat>summary::-webkit-details-marker{display:none}.side-cat>summary .chev{margin-inline-start:auto;inline-size:.8rem;block-size:.8rem;opacity:.7;transition:transform var(--t-base) var(--ease)}.side-cat[open]>summary .chev{transform:rotate(90deg)}[dir=rtl] .side-cat>summary .chev{transform:rotate(180deg)}[dir=rtl] .side-cat[open]>summary .chev{transform:rotate(90deg)}.side-sub{display:flex;flex-direction:column;gap:1px;padding-block:var(--sp-1) var(--sp-2);padding-inline-start:var(--sp-4);margin-inline-start:var(--sp-4);border-inline-start:1px solid var(--nav-border)}.side-sub .side-link{font-size:var(--fs-md);padding-block:var(--sp-2);font-weight:400}.side-sub .side-link.active:before{inset-inline-start:calc(-1 * var(--sp-4) - 1px)}.side-section-gap{block-size:var(--sp-2)}.side-divider{block-size:1px;background:var(--nav-border);margin:var(--sp-3) var(--sp-2)}.sidebar-foot{margin-block-start:auto;padding-block-start:var(--sp-3);border-block-start:1px solid var(--nav-border)}.sidebar-foot .account-area{padding:var(--sp-2) var(--sp-2) 0}.sidebar-foot .icon-btn{background:transparent;border-color:var(--nav-border);color:var(--nav-text-dim)}.sidebar-foot .icon-btn:hover{color:var(--nav-text-strong);border-color:#fff6;background:var(--nav-hover-bg)}.sidebar-foot .lang-switch select{background:transparent;border-color:var(--nav-border);color:var(--nav-text)}.app-shell-content{flex:1;min-inline-size:0;display:flex;flex-direction:column}.topbar-a{display:flex;align-items:center;gap:var(--sp-4);min-block-size:3.5rem;padding-inline:var(--sp-7);padding-block:var(--sp-2);background:color-mix(in srgb,var(--surface) 88%,transparent);backdrop-filter:saturate(160%) blur(8px);-webkit-backdrop-filter:saturate(160%) blur(8px);border-block-end:1px solid var(--border);position:sticky;inset-block-start:0;z-index:var(--z-sticky)}.topbar-a .crumb{font-size:var(--fs-xs);font-weight:600;letter-spacing:var(--ls-wide);text-transform:uppercase;color:var(--text-subtle);min-inline-size:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-a .crumb strong{font-size:var(--fs-md);font-weight:700;letter-spacing:normal;text-transform:none;color:var(--text)}.topbar-a .account-area{margin-inline-start:auto}.topbar-b{display:flex;align-items:center;gap:var(--sp-1);flex-wrap:wrap;padding:var(--sp-2) var(--sp-5);background:var(--surface);border-block-end:1px solid var(--border);box-shadow:var(--shadow-xs);position:sticky;inset-block-start:0;z-index:var(--z-nav)}.topbar-b .brand{display:flex;align-items:center;gap:var(--sp-2);margin-inline-end:var(--sp-5)}.topbar-b .flat-link,.cat-btn{display:flex;align-items:center;gap:var(--sp-1);border:none;background:transparent;color:var(--text-muted);min-block-size:var(--control-h-sm);padding-inline:var(--sp-3);border-radius:var(--r-md);cursor:pointer;font:inherit;font-size:var(--fs-md);font-weight:600;transition:background var(--t-fast) var(--ease),color var(--t-fast) var(--ease)}.topbar-b .flat-link:hover,.cat-item:hover .cat-btn,.cat-item:focus-within .cat-btn{background:var(--surface-hover);color:var(--text)}.topbar-b .flat-link.active,.cat-btn.active{color:var(--accent);background:var(--accent-soft)}.cat-btn svg.chev{inline-size:.7rem;block-size:.7rem;opacity:.6}.cat-item{position:relative}.cat-panel{display:none;position:absolute;inset-block-start:calc(100% + var(--sp-2));inset-inline-start:0;min-inline-size:16rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);padding:var(--sp-2);z-index:var(--z-dropdown)}.cat-item:hover .cat-panel,.cat-item:focus-within .cat-panel{display:block}.cat-panel button{display:block;inline-size:100%;text-align:start;border:none;background:transparent;padding:var(--sp-2) var(--sp-3);border-radius:var(--r-sm);color:var(--text);font:inherit;font-size:var(--fs-md);cursor:pointer;min-block-size:0}.cat-panel button:hover{background:var(--surface-hover)}.cat-panel button.active{color:var(--accent);background:var(--accent-soft);font-weight:700}.topbar-b .spacer{flex:1}.subbar-b{padding:var(--sp-2) var(--sp-7);background:var(--surface-alt);border-block-end:1px solid var(--border);font-size:var(--fs-xs);font-weight:600;letter-spacing:var(--ls-wide);text-transform:uppercase;color:var(--text-subtle)}.subbar-b strong{font-size:var(--fs-md);font-weight:700;letter-spacing:normal;text-transform:none;color:var(--text)}.app-shell-main{flex:1;min-inline-size:0;padding:var(--sp-6) var(--sp-7) var(--sp-10)}.app-shell-main>.content-narrow,.app-shell-main>.content-wide{padding:0;margin-inline:0}@media (max-width: 640px){.app-shell-main{padding:var(--sp-4) var(--sp-4) var(--sp-9)}}@media (max-width: 860px){.app-shell--sidebar{flex-direction:column}.sidebar{inline-size:auto;block-size:auto;position:static;flex-direction:row;flex-wrap:wrap;align-items:center;gap:var(--sp-1);padding:var(--sp-2) var(--sp-3);border-inline-end:none;border-block-end:1px solid var(--nav-border)}.sidebar-brand{padding:var(--sp-1) var(--sp-2);margin-inline-end:var(--sp-2)}.side-link,.side-cat>summary{inline-size:auto}.side-cat{position:relative}.side-sub{padding-inline-start:var(--sp-2);margin-inline-start:0;border-inline-start:none}.side-section-gap,.side-divider{display:none}.sidebar-foot{margin-block-start:0;margin-inline-start:auto;padding-block-start:0;border-block-start:none}.sidebar-foot .account-area{padding:0}.topbar-a,.subbar-b{padding-inline:var(--sp-4)}}.tabs{display:flex;align-items:stretch;gap:var(--sp-1);overflow-x:auto;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tabs button{position:relative;font:inherit;font-size:var(--fs-md);font-weight:600;color:var(--text-muted);background:transparent;border:none;border-radius:0;min-block-size:2.75rem;padding-inline:var(--sp-4);cursor:pointer;white-space:nowrap;transition:color var(--t-fast) var(--ease)}.tabs button:hover{color:var(--text)}.tabs button:after{content:"";position:absolute;inset-inline:var(--sp-2);inset-block-end:0;block-size:2px;border-radius:var(--r-full) var(--r-full) 0 0;background:transparent;transition:background var(--t-fast) var(--ease)}.tabs button.active,.tabs button.tab-active{color:var(--accent)}.tabs button.active:after,.tabs button.tab-active:after{background:var(--accent)}.tabs button:focus-visible{outline:none;box-shadow:var(--ring);border-radius:var(--r-sm)}.portal-shell{min-block-size:100vh;display:flex;flex-direction:column;background:var(--bg)}.portal-header{background:var(--surface);border-block-end:1px solid var(--border);box-shadow:var(--shadow-xs);position:sticky;inset-block-start:0;z-index:var(--z-nav)}.portal-header-inner,.portal-tabs-inner{max-inline-size:64rem;margin:0 auto;inline-size:100%;padding-inline:var(--sp-5)}.portal-header-inner{display:flex;align-items:center;gap:var(--sp-4);min-block-size:3.75rem}.portal-brand{display:flex;align-items:center;gap:var(--sp-3);min-inline-size:0}.portal-brand .brand-badge{flex:none;inline-size:2.25rem;block-size:2.25rem;border-radius:var(--r-md);display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,var(--brand-400),var(--brand-700));color:#fff;font-family:var(--font-display);font-weight:700;font-size:var(--fs-lg);box-shadow:var(--shadow-sm)}.portal-brand .brand-text{display:flex;flex-direction:column;line-height:1.15;min-inline-size:0}.portal-brand .mark{color:var(--text)}.portal-brand .sub{font-size:var(--fs-2xs);font-weight:600;text-transform:uppercase;letter-spacing:var(--ls-caps);color:var(--text-muted)}.portal-header-actions{margin-inline-start:auto;display:flex;align-items:center;gap:var(--sp-2)}.portal-account{display:flex;align-items:center;gap:var(--sp-2);padding-block:var(--sp-1);padding-inline:var(--sp-1) var(--sp-3);border-radius:var(--r-full);background:var(--surface-alt);border:1px solid var(--border-subtle);font-size:var(--fs-sm);font-weight:600;color:var(--text-muted);white-space:nowrap}.portal-account .avatar{inline-size:1.75rem;block-size:1.75rem;font-size:var(--fs-sm)}.portal-tabs{border-block-start:1px solid var(--border-subtle)}.portal-tabs-inner{display:flex}.portal-main{flex:1;inline-size:100%}.portal-main>.content-narrow,.portal-main>.content-wide{max-inline-size:64rem}@media (max-width: 640px){.portal-header-inner,.portal-tabs-inner{padding-inline:var(--sp-4)}.portal-header-inner{min-block-size:3.25rem;gap:var(--sp-2);flex-wrap:wrap;padding-block:var(--sp-2)}.portal-brand{flex:0 1 auto;min-inline-size:0}.portal-brand .sub{display:none}.portal-brand .mark{white-space:nowrap}.portal-account{display:none}.portal-header-actions{gap:var(--sp-2)}.portal-header-actions button.secondary{font-size:var(--fs-sm);padding-inline:var(--sp-3)}.tabs button{padding-inline:var(--sp-3);font-size:var(--fs-sm)}}.lang-switch{display:flex;align-items:center;gap:var(--sp-1)}.lang-switch select{font:inherit;font-size:var(--fs-sm);font-weight:600;border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--surface);color:var(--text);min-block-size:var(--control-h-sm);padding-inline:var(--sp-2);cursor:pointer}.lang-switch select:focus-visible{outline:none;box-shadow:var(--ring)}[dir=rtl] .field select{background-position:left .8rem center,left 1.05rem center;padding-inline-end:var(--sp-3);padding-inline-start:2.3rem}[dir=rtl] select.etat{background-position:left .65rem center,left .9rem center;padding-inline-end:var(--sp-3);padding-inline-start:1.7rem}.matrix tbody tr.is-ecarte td{opacity:.45}.matrix tbody tr.is-ecarte td:not(:first-child){text-decoration:line-through;text-decoration-thickness:1px}table.matrix tbody tr.groupe-entete th{background:var(--surface-sunken);color:var(--text-muted);font-size:.82rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;text-align:left;padding:.5rem .75rem;border-block-start:2px solid var(--border-strong);position:sticky;top:0}table.matrix tbody:first-of-type tr.groupe-entete th{border-block-start:none}.onglets{display:flex;gap:var(--sp-2);flex-wrap:wrap;margin-block-end:var(--sp-4)}.onglet{display:inline-flex;align-items:center;gap:var(--sp-2);min-inline-size:auto}.onglet.is-actif{background:var(--accent);color:var(--on-accent, #fff);border-color:var(--accent)}.pastille-conflit{display:inline-grid;place-items:center;inline-size:1.15rem;block-size:1.15rem;border-radius:50%;background:var(--danger, #b3261e);color:#fff;font-size:.7rem;font-weight:700}.matrix tbody tr.is-conflit td{background:color-mix(in srgb,var(--danger, #b3261e) 10%,transparent)}.matrix tbody tr.is-avertissement td{background:color-mix(in srgb,var(--warning, #a06800) 10%,transparent)}.matrix tbody tr.is-saisi td{outline:2px dashed var(--accent);outline-offset:-2px}.case-vide{color:var(--text-muted);font-style:italic}.case-actions{display:flex;gap:var(--sp-2);align-items:center;flex-wrap:wrap}.verdicts{list-style:none;padding:0;margin-block-start:var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-2)}.aide-ecran{margin-block-start:var(--sp-6);padding-block-start:var(--sp-3);border-block-start:1px solid var(--border);color:var(--text-muted);font-size:var(--fs-xs);font-style:italic;line-height:1.5;max-inline-size:68ch}.pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-3);margin-block-start:var(--sp-4)}.pagination-etat{color:var(--text-muted);font-size:var(--fs-sm);font-variant-numeric:tabular-nums}.pagination-actions{display:flex;gap:var(--sp-2)}.select-filtrable{position:relative}.select-filtrable-label{display:block;margin-block-end:var(--sp-2);color:var(--text-muted);font-size:var(--fs-xs);font-weight:600;letter-spacing:var(--ls-wide);text-transform:uppercase}.select-filtrable input{inline-size:100%;padding-inline-end:var(--sp-8)}.select-filtrable-vider{position:absolute;inset-block:1px;inset-inline-end:1px;inline-size:var(--sp-8);display:flex;align-items:center;justify-content:center;padding:0;border:0;border-radius:var(--r-md);background:transparent;color:var(--text-muted);font-size:var(--fs-lg);line-height:1;cursor:pointer}.select-filtrable-vider:hover{color:var(--text);background:var(--surface-hover)}.select-filtrable-vider:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.select-filtrable-liste{position:absolute;z-index:20;inset-inline:0;margin:var(--sp-1) 0 0;padding:var(--sp-1);list-style:none;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-md);max-block-size:16rem;overflow-y:auto}.select-filtrable-liste li{padding:var(--sp-2) var(--sp-3);border-radius:var(--r-sm);cursor:pointer}.select-filtrable-liste li.is-highlighted{background:var(--surface-accent, var(--border))}.select-filtrable-liste li.empty{color:var(--text-muted);font-style:italic;cursor:default}.lien-evitement{position:absolute;left:-9999px;z-index:100;padding:var(--sp-3) var(--sp-4);background:var(--surface);border:2px solid var(--accent, var(--text));border-radius:var(--r-md);font-weight:600;text-decoration:none;color:var(--text)}.lien-evitement:focus{left:var(--sp-3);top:var(--sp-3)}.rappel-clavier{position:sticky;z-index:30;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-3);padding:var(--sp-2) var(--sp-4);background:var(--surface);border-block:1px solid var(--border);color:var(--text-muted);font-size:var(--fs-xs)}.rappel-clavier--bas{bottom:0}.rappel-clavier--haut{top:0}.rappel-clavier ul{display:flex;flex-wrap:wrap;gap:var(--sp-4);margin:0;padding:0;list-style:none}.rappel-clavier kbd{padding:.1em .4em;border:1px solid var(--border);border-block-end-width:2px;border-radius:var(--r-sm);background:var(--surface-alt, var(--surface));font-family:inherit;font-size:.95em}.rappel-clavier-actions{display:flex;gap:var(--sp-2)}.rappel-clavier-actions button,.rappel-clavier-rouvrir{background:none;border:none;padding:var(--sp-1) var(--sp-2);color:var(--text-muted);font-size:var(--fs-xs);text-decoration:underline;cursor:pointer}.rappel-clavier-rouvrir{display:block;margin-inline-start:auto}.notice{display:block;padding:var(--sp-3) var(--sp-4);border-radius:var(--r-md);border-inline-start:3px solid var(--border);background:var(--surface-alt);color:var(--text-muted);font-size:var(--fs-md);line-height:var(--lh-snug);margin:var(--sp-3) 0}.notice-action{display:block;margin-block-start:.35rem;font-weight:600;color:var(--text)}.error{display:block;padding:var(--sp-3) var(--sp-4);border-radius:var(--r-md);border-inline-start:3px solid currentColor;background:var(--danger-bg);color:var(--danger);font-size:var(--fs-md);font-weight:500;line-height:var(--lh-snug);margin:var(--sp-3) 0}.screen-header{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--sp-3);margin-block-end:var(--sp-4)}.check{display:inline-flex;align-items:center;gap:var(--sp-2);cursor:pointer}.ligne-inactive{color:var(--text-muted);font-style:italic}.ligne-inactive td{color:inherit}.ligne-active{font-weight:600}.ligne-attendue{font-weight:500}.ligne-attendue td:first-child{box-shadow:inset 3px 0 0 var(--warning)}.ligne-active td:first-child{box-shadow:inset 3px 0 0 var(--accent)}.actions{display:flex;gap:var(--sp-3);flex-wrap:wrap}.screen{display:flex;flex-direction:column;gap:var(--sp-5)}.is-late{color:var(--warn, #8a6414);font-weight:700}.modal-fond{position:fixed;inset:0;z-index:var(--z-overlay);display:flex;align-items:center;justify-content:center;padding:var(--sp-4);background:#00000073}.modal{width:min(30rem,100%);max-height:calc(100vh - 2 * var(--sp-4));overflow-y:auto;display:flex;flex-direction:column;gap:var(--sp-3);padding:var(--sp-5);border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);color:var(--text);box-shadow:0 10px 40px #00000040}.modal-titre{margin:0;font-size:var(--fs-lg, 1.125rem);font-weight:700}.modal-cible{margin:0;font-weight:600;overflow-wrap:break-word}.modal-consequence{margin:0;padding:var(--sp-3);border:1px solid var(--danger-border);border-radius:var(--r-sm);background:var(--danger-bg);color:var(--danger)}.modal-actions{display:flex;gap:var(--sp-3);justify-content:flex-end;flex-wrap:wrap}.personnes{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--sp-2)}.personnes>li{display:flex;align-items:baseline;gap:var(--sp-2);overflow-wrap:break-word}.lien-nombre{appearance:none;background:none;border:none;padding:0;margin:0;font:inherit;font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--accent);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--accent) 40%,transparent);text-underline-offset:.15em;cursor:pointer}.lien-nombre:hover{color:var(--accent-hover);text-decoration-color:currentColor}.modal.palette{inline-size:min(38rem,92vw);padding:0;overflow:hidden;display:flex;flex-direction:column;max-block-size:min(28rem,80vh)}.palette-champ{font:inherit;font-size:var(--fs-lg);border:none;border-block-end:1px solid var(--border);border-radius:0;padding:var(--sp-4);background:transparent;color:var(--text)}.palette-champ:focus-visible{outline:none;box-shadow:none;border-block-end-color:var(--accent)}.palette-liste{list-style:none;margin:0;padding:var(--sp-2);overflow-y:auto;min-block-size:0}.palette-item{inline-size:100%;display:flex;align-items:baseline;gap:var(--sp-3);font:inherit;text-align:start;background:transparent;border:none;border-radius:var(--r-sm);padding:var(--sp-2) var(--sp-3);cursor:pointer;color:var(--text)}.palette-item.active{background:var(--accent-soft);color:var(--accent)}.palette-titre{font-weight:600}.palette-categorie{color:var(--text-muted);font-size:var(--fs-sm)}.palette-touche{margin-inline-start:auto;font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-muted);border:1px solid var(--border);border-radius:var(--r-sm);padding:0 var(--sp-1);white-space:nowrap}.palette-aide{margin:0;padding:var(--sp-2) var(--sp-4) var(--sp-3);border-block-start:1px solid var(--border)}.invite-pwa{position:fixed;inset-inline:var(--sp-3);inset-block-end:calc(var(--sp-3) + env(safe-area-inset-bottom,0px));z-index:100;max-inline-size:30rem;margin-inline:auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-lg)}.invite-pwa p{margin:0;font-size:var(--fs-sm);color:var(--text)}.invite-pwa-actions{display:flex;gap:var(--sp-2);flex-shrink:0}.invite-pwa-texte{display:grid;gap:var(--sp-1)}.chip-file{display:inline-flex;align-items:center;gap:var(--sp-1);block-size:var(--control-h-sm);padding-inline:var(--sp-2);border-radius:var(--r-md);border:1px solid var(--border-strong);background:var(--surface);color:var(--text-muted);cursor:pointer;flex:none;font-size:var(--fs-2xs);font-weight:600;transition:background var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease),color var(--t-fast) var(--ease)}.chip-file svg{inline-size:1rem;block-size:1rem}.chip-file:hover{color:var(--accent);border-color:var(--accent);background:var(--surface-hover)}.chip-file.is-alerte{color:var(--danger);border-color:var(--danger)}.chip-file.is-alerte:hover{color:var(--danger);border-color:var(--danger);background:var(--surface-hover)}.chip-file-nb{font-variant-numeric:tabular-nums}
