:root{--ink:#1d1418;--soft:#6f6168;--line:#e7dccf;--bg:#f7f1e7;--card:#fffdf9;--plum:#2b0b27;--plum2:#3a0d33;--acc:#b8461f;--gold:#e4c27f;--pink:#ff2bc8;--moutarde:#eaa92b;--ok:#2fa36b;--ko:#d63b2f;--attente:#f2a33a;--gris:#8b8590;--f-display:"Fraunces",Georgia,serif;--f-body:"Outfit",system-ui,sans-serif;--f-mono:"Martian Mono",ui-monospace,monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);font:400 15px/1.5 var(--f-body);-webkit-font-smoothing:antialiased;margin:0}a{color:inherit}h1,h2,h3{font-family:var(--f-display);font-variation-settings:"SOFT" 100,"WONK" 1;letter-spacing:-.02em;margin:0;line-height:1.05}button,input,select,textarea{font:inherit;color:inherit}.mono{font-family:var(--f-mono);font-variant-numeric:tabular-nums}.app{grid-template-columns:232px minmax(0,1fr);min-height:100vh;display:grid}.side{background:var(--plum);color:#fbefdc;flex-direction:column;gap:4px;height:100vh;padding:22px 14px;display:flex;position:sticky;top:0;overflow:auto}.side .logo{aspect-ratio:248/214;background:var(--pink);width:84px;margin:0 10px 18px;-webkit-mask:url(/logo.svg) 50%/contain no-repeat;mask:url(/logo.svg) 50%/contain no-repeat}.side a{opacity:.82;border-radius:10px;align-items:center;gap:10px;padding:10px 12px;font-weight:500;text-decoration:none;display:flex}.side a:hover{opacity:1;background:#ffffff0f}.side a.on{opacity:1;color:var(--gold);background:#e4c27f29}.side .badge{background:var(--attente);color:#2b1500;font:600 .7rem var(--f-mono);border-radius:999px;margin-left:auto;padding:.1em .55em}.side .bas{opacity:.75;gap:6px;margin-top:auto;padding:12px;font-size:.82rem;display:grid}.side .bas button{color:#fbefdc;cursor:pointer;background:0 0;border:1px solid #fbefdc40;border-radius:999px;justify-self:start;padding:.45em .9em}.contenu{min-width:0;padding:26px clamp(16px,3vw,40px) 80px}.tete{flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:22px;display:flex}.tete h1{font-size:2.2rem}.tete .droite{flex-wrap:wrap;align-items:center;gap:10px;margin-left:auto;display:flex}.operateur{background:var(--card);border:1px solid var(--line);border-radius:999px;align-items:center;gap:10px;padding:6px 6px 6px 14px;font-size:.88rem;display:flex}.demo{color:#5b4300;background:#fff3c4;border:1px solid #f0d27a;border-radius:12px;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:18px;padding:10px 14px;font-size:.88rem;display:flex}.btn{border:1px solid var(--ink);background:var(--ink);color:#fff;cursor:pointer;white-space:nowrap;border-radius:999px;align-items:center;gap:.5em;padding:.6em 1.05em;font-size:.86rem;font-weight:600;text-decoration:none;display:inline-flex}.btn.clair{color:var(--ink);border-color:var(--line);background:0 0}.btn.clair:hover{border-color:var(--ink)}.btn.ok{background:var(--ok);border-color:var(--ok)}.btn.ko{background:var(--ko);border-color:var(--ko)}.btn.acc{background:var(--acc);border-color:var(--acc)}.btn.petit{padding:.4em .8em;font-size:.78rem}.btn[disabled]{opacity:.5;cursor:not-allowed}.carte-bloc{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:18px}.grille2{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.grille3{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.pile{gap:14px;display:grid}.ligne{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.aide{color:var(--soft);font-size:.86rem}.erreur{color:var(--ko);font-weight:500}.vide{color:var(--soft);text-align:center;border:1px dashed var(--line);border-radius:14px;padding:24px}.jours{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.jours input{border:1px solid var(--line);background:var(--card);border-radius:999px;padding:.5em .9em}.onglets{border:1px solid var(--line);background:var(--card);border-radius:999px;padding:3px;display:inline-flex}.onglets button{cursor:pointer;background:0 0;border:0;border-radius:999px;padding:.45em .95em;font-weight:500}.onglets button[aria-pressed=true]{background:var(--ink);color:#fff}.kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px;display:grid}.kpi{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:14px 16px}.kpi b{font:300 2rem/1 var(--f-mono);letter-spacing:-.04em;display:block}.kpi span{color:var(--soft);text-transform:uppercase;letter-spacing:.08em;font-size:.78rem}.alertes{gap:10px;margin-bottom:22px;display:grid}.alerte{background:#fff1dc;border:1px solid #f5c98a;border-radius:14px;align-items:center;gap:12px;padding:12px 16px;display:flex}.alerte.rouge{background:#fde7e4;border-color:#f2b0a8}.alerte b{font-weight:600}.resas{gap:10px;display:grid}.resa{background:var(--card);border:1px solid var(--line);border-left:6px solid var(--c,var(--gris));border-radius:14px;grid-template-columns:88px minmax(0,1.4fr) minmax(0,1fr) auto;align-items:center;gap:14px;padding:12px 14px;display:grid}.resa .h{font:600 1.15rem var(--f-mono)}.resa .h small{font:500 .66rem var(--f-body);letter-spacing:.06em;text-transform:uppercase;color:var(--soft);display:block}.resa .nom{font-size:1.02rem;font-weight:600}.resa .nb{font:600 .95rem var(--f-mono);background:var(--bg);border-radius:999px;margin-left:6px;padding:.15em .6em}.resa .details{color:var(--soft);flex-wrap:wrap;gap:4px 12px;margin-top:3px;font-size:.84rem;display:flex}.resa .actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.resa.estompee{opacity:.55}.pastille{white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:.25em .7em;font-size:.74rem;font-weight:600;display:inline-flex}.pastille.point:before{content:"";background:currentColor;border-radius:50%;width:7px;height:7px}.tag{background:var(--bg);border:1px solid var(--line);color:var(--ink);border-radius:6px;padding:.05em .45em;font-size:.74rem;display:inline-block}.tag.alerte-tag{background:#ffe9e4;border-color:#f6b8ab}.appels{color:var(--soft);border-top:1px dashed var(--line);grid-column:2/-1;gap:4px;padding-top:8px;font-size:.82rem;display:grid}.voile{z-index:50;background:#14080e8c;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.fenetre{background:var(--card);border-radius:18px;gap:14px;width:min(560px,100%);max-height:calc(100vh - 32px);padding:22px;display:grid;overflow:auto;box-shadow:0 30px 80px #00000059}.fenetre h2{font-size:1.6rem}.champs{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.champs .large{grid-column:1/-1}.f{gap:4px;display:grid}.f label{font:500 .72rem var(--f-body);letter-spacing:.06em;text-transform:uppercase;color:var(--soft)}.f input,.f select,.f textarea{border:1px solid var(--line);background:#fff;border-radius:10px;width:100%;padding:.6em .75em}.f textarea{min-height:70px}.case{align-items:flex-start;gap:8px;font-size:.92rem;display:flex}.case input{accent-color:var(--acc);width:16px;height:16px;margin-top:3px}.zones{flex-wrap:wrap;gap:6px;display:flex}.zones button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:999px;padding:.45em .9em}.zones button[aria-pressed=true]{background:var(--plum);color:#fff;border-color:var(--plum)}.pave{grid-template-columns:repeat(3,72px);justify-content:center;gap:10px;display:grid}.pave button{border:1px solid var(--line);height:64px;font:500 1.5rem var(--f-mono);cursor:pointer;background:#fff;border-radius:16px}.pins{justify-content:center;gap:12px;margin:6px 0;display:flex}.pins i{border:2px solid var(--plum);border-radius:50%;width:16px;height:16px}.pins i.plein{background:var(--plum)}table.t{border-collapse:collapse;background:var(--card);border:1px solid var(--line);border-radius:14px;width:100%;overflow:hidden}.t th,.t td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:10px 12px;font-size:.9rem}.t th{font:500 .72rem var(--f-body);letter-spacing:.06em;text-transform:uppercase;color:var(--soft);background:#fbf6ee}.t tr:last-child td{border-bottom:0}.droits{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 14px;display:grid}.interrupteur{border:1px solid var(--line);background:var(--card);border-radius:14px;align-items:center;gap:12px;padding:14px 16px;display:flex}.interrupteur.ferme{background:#fde7e4;border-color:#f2b0a8}.toast{background:var(--plum);color:#fbefdc;z-index:60;border-radius:999px;padding:.8em 1.3em;font-weight:500;position:fixed;bottom:18px;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #0000004d}@media (max-width:1000px){.app{grid-template-columns:minmax(0,1fr)}.side{z-index:20;flex-direction:row;gap:2px;height:auto;padding:10px;position:sticky;top:0;overflow-x:auto}.side .logo{flex:none;width:44px;margin:0 6px 0 0}.side a{flex:none;padding:8px 10px;font-size:.88rem}.side .bas{flex:none;margin:0 0 0 auto;padding:0 6px}.side .bas span{display:none}.resa{grid-template-columns:70px minmax(0,1fr)}.resa .actions,.resa .col3{grid-column:1/-1;justify-content:flex-start}.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.grille2,.grille3{grid-template-columns:minmax(0,1fr)}}@media (max-width:560px){.champs,.droits{grid-template-columns:minmax(0,1fr)}}
