@keyframes spin{to{transform:rotate(360deg)}}*{box-sizing:border-box;margin:0;padding:0}:root{--font-ui:"DM Sans",system-ui,sans-serif;--font-label:"DM Sans",system-ui,sans-serif;--font-num:"DM Mono",ui-monospace,monospace;--font-display:"DM Sans",system-ui,sans-serif;--font-brand:"Playfair Display",Georgia,serif;--bg:#f6f4f0;--bg-deep:#efece6;--surface:#fff;--surface-hover:#f1eee8;--accent:#c8323c;--accent-gradient:#c8323c;--accent-dim:#c8323c14;--accent-text:#fff;--secondary:#5a4632;--highlight:#e9c46a;--text:#2f2a24;--text-bright:#16120d;--text-muted:#575047;--text-dim:#6e665b;--text-faint:#766d61;--border:#e4dfd6;--border-strong:#d3ccc0;--overlay:#140f0a66;--modal-bg:#fff;--input-bg:#fff;--sidebar-bg:#fbfaf7;--panel-bg:#fff;--panel-border:#e4dfd6;--danger:#b8432f;--danger-bg:#b8432f12;--danger-border:#b8432f47;--success:#2f7d4f;--success-bg:#2f7d4f14;--success-border:#2f7d4f47;--warning-bg:#c4881417;--warning-border:#c488144d;--warning-text:#855a0e;--success-text:#286b43;--todo:#b9b1a5;--etape-1:#d0453f;--etape-1-soft:#d0453f1f;--etape-2:#e07b24;--etape-2-soft:#e07b2421;--etape-3:#c99a06;--etape-3-soft:#c99a0626;--etape-4:#3a9a4f;--etape-4-soft:#3a9a4f21;--etape-5:#2f74d0;--etape-5-soft:#2f74d01f;--etape-6:#7d4fc4;--etape-6-soft:#7d4fc41f;--char-avatar-text:#fff;--badge-num:#a8862c;--narration:#a8862c;--narration-dim:#a8862c1f;--narration-border:#a8862c52;--fs-xs:10px;--fs-sm:11px;--fs-base:12px;--fs-md:13px;--fs-lg:14px;--fs-xl:16px;--fs-2xl:20px;--radius-sm:4px;--radius:6px;--radius-lg:8px;--radius-pill:999px;--space-1:4px;--space-2:6px;--space-3:8px;--space-4:10px;--space-5:12px;--space-6:16px;--space-7:24px}.dark{--bg:#171512;--bg-deep:#12100e;--surface:#1f1c18;--surface-hover:#27231e;--accent:#e0545c;--accent-gradient:#e0545c;--accent-dim:#e0545c24;--accent-text:#fff;--secondary:#b4a48a;--highlight:#f4a261;--text:#e4ddd2;--text-bright:#faf6ef;--text-muted:#b0a698;--text-dim:#958b7e;--text-faint:#8f8679;--border:#322d27;--border-strong:#433c34;--overlay:#0009;--modal-bg:#1f1c18;--input-bg:#1a1714;--sidebar-bg:#1a1815;--panel-bg:#1f1c18;--panel-border:#322d27;--danger:#e07a64;--danger-bg:#e07a641a;--danger-border:#e07a644d;--success:#6cc08f;--success-bg:#6cc08f1a;--success-border:#6cc08f4d;--warning-bg:#e8b0461a;--warning-border:#e8b0464d;--warning-text:#e8b046;--success-text:#7fcb9e;--todo:#5a5249;--etape-1:#ec6b64;--etape-1-soft:#ec6b6429;--etape-2:#f29a4e;--etape-2-soft:#f29a4e29;--etape-3:#e8c043;--etape-3-soft:#e8c04329;--etape-4:#5dc072;--etape-4-soft:#5dc07229;--etape-5:#64a0ef;--etape-5-soft:#64a0ef29;--etape-6:#a787e0;--etape-6-soft:#a787e029;--char-avatar-text:#edf2f4;--badge-num:#e8b046;--narration:#d4b65e;--narration-dim:#c8a84c2e;--narration-border:#c8a84c59}html,body{background:var(--bg);height:100dvh;color:var(--text);font-family:var(--font-ui);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14px}.case-ligne .case-actions{opacity:0;transition:opacity .12s}.case-ligne:hover .case-actions,.case-ligne:focus-within .case-actions{opacity:1}@media (hover:none){.case-ligne .case-actions{opacity:1}}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn{justify-content:center;align-items:center;gap:var(--space-2);padding:7px var(--space-5);border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);min-height:36px;color:var(--text);font-family:var(--font-ui);font-size:var(--fs-md);white-space:nowrap;cursor:pointer;font-weight:500;line-height:1.2;transition:background .12s,border-color .12s;display:inline-flex}.btn:hover:not(:disabled){background:var(--surface-hover)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primaire{background:var(--accent);border-color:var(--accent);color:var(--accent-text);font-weight:600}.btn-primaire:hover:not(:disabled){background:var(--accent);filter:brightness(.94)}.btn-danger{background:var(--danger-bg);border-color:var(--danger-border);color:var(--danger)}.btn-danger:hover:not(:disabled){background:var(--danger-bg);border-color:var(--danger)}.btn-discret{color:var(--text-muted);background:0 0;border-color:#0000}.btn-discret:hover:not(:disabled){background:var(--surface-hover);color:var(--text)}
