:root{color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;height:100%}body{font-family:IBM Plex Sans,system-ui,sans-serif;-webkit-font-smoothing:antialiased}.mono{font-family:IBM Plex Mono,monospace}.app{--bg:#0a0f16;--panel:#101924;--panel2:#152333;--ink:#e9f0f8;--muted:#8497ab;--line:#21303f;--rail:#0c131c;--railink:#8da0b5;--red: oklch(.57 .16 25);--ok: oklch(.72 .16 150);--amber: oklch(.74 .15 75);height:100vh;height:100dvh;display:flex;background:var(--bg);color:var(--ink);overflow:hidden}.app[data-theme=light]{color-scheme:light;--bg:#eceff3;--panel:#ffffff;--panel2:#f5f7fa;--ink:#16202c;--muted:#5c6878;--line:#e1e7ee;--rail:#0e1b2a;--railink:#aab8c8}.hue-blue{--accent:oklch(.55 .13 252)}.hue-teal{--accent:oklch(.57 .1 195)}.hue-amber{--accent:oklch(.66 .12 72)}.hue-red{--accent:oklch(.57 .16 25)}.hue-green{--accent:oklch(.6 .13 150)}.hue-orange{--accent:oklch(.64 .15 50)}.hue-purple{--accent:oklch(.55 .14 300)}.hue-slate{--accent:oklch(.52 .03 250)}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}.rail{width:76px;flex:0 0 auto;background:var(--rail);display:flex;flex-direction:column;align-items:center;padding:16px 0 18px;gap:8px;border-right:1px solid rgba(255,255,255,.06);z-index:20}.rail-mark{width:46px;height:46px;border-radius:12px;background:var(--red);color:#fff;display:grid;place-items:center;font:800 20px/1 IBM Plex Mono,monospace;letter-spacing:-.02em;margin-bottom:12px}.rail-nav{display:flex;flex-direction:column;gap:6px;flex:1;width:100%;align-items:center}.rail-btn{width:50px;height:50px;border:none;background:transparent;color:var(--railink);border-radius:13px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;transition:background .14s,color .14s;position:relative}.rail-btn span{font:9px IBM Plex Mono,monospace;letter-spacing:.02em}.rail-btn:hover{background:#ffffff12;color:#fff}.rail-btn.active{background:var(--red);color:#fff}.rail-foot{display:flex;flex-direction:column;align-items:center;gap:10px}.rail-toggle{width:46px;height:46px;border-radius:12px;border:1px solid rgba(255,255,255,.12);background:#ffffff0a;color:#cdd9e6;display:grid;place-items:center}.rail-avatar{width:40px;height:40px;border-radius:11px;background:#24344a;color:#fff;display:grid;place-items:center;font-weight:600}.main{flex:1;display:flex;flex-direction:column;min-width:0}.topbar{display:flex;align-items:center;gap:16px;padding:16px 28px;background:var(--panel);border-bottom:1px solid var(--line);flex:0 0 auto}.topbar>div:first-child{min-width:0}.topbar h1{font-size:19px;font-weight:600;letter-spacing:-.01em;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar .sub{font-size:12.5px;color:var(--muted);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tb-spacer{flex:1}.chip{display:inline-flex;align-items:center;gap:7px;padding:7px 12px;border-radius:8px;border:1px solid var(--line);font:11px IBM Plex Mono,monospace;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);background:var(--panel2);white-space:nowrap}.chip.ok{color:#4ac06c}.led{width:8px;height:8px;border-radius:50%;background:var(--ok);box-shadow:0 0 8px var(--ok);animation:blink 2s infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:.35}}.top-toggle{display:none}.scroll{flex:1;overflow-y:auto}.scroll::-webkit-scrollbar{width:10px}.scroll::-webkit-scrollbar-thumb{background:var(--line);border-radius:6px}.page{padding:26px 28px 60px;max-width:1180px;margin:0 auto}.ecg{height:30px;display:flex;align-items:center;margin-bottom:20px}.ecg svg{width:100%;height:26px;overflow:visible}.ecg path{fill:none;stroke:var(--ok);stroke-width:1.6}.ecg-base{opacity:.16}.ecg-pulse{stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:130 1000;stroke-dashoffset:1000;filter:drop-shadow(0 0 3px var(--ok))}@media (prefers-reduced-motion: no-preference){.ecg-pulse{animation:ecg-sweep 2.4s linear infinite}}@media (prefers-reduced-motion: reduce){.ecg-base{opacity:.5}.ecg-pulse{display:none}}@keyframes ecg-sweep{0%{stroke-dashoffset:1000}to{stroke-dashoffset:-130}}.console-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.tile{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:20px;display:flex;flex-direction:column;gap:11px;position:relative;overflow:hidden;text-align:left;transition:transform .15s,border-color .15s}.tile:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--accent)}.tile:hover{transform:translateY(-2px);border-color:color-mix(in oklab,var(--accent) 45%,var(--line))}.tile-head{display:flex;align-items:center;justify-content:space-between}.tile-num{font:700 13px IBM Plex Mono,monospace;color:var(--muted)}.tled{width:9px;height:9px;border-radius:50%}.tled.green{background:var(--ok);box-shadow:0 0 7px var(--ok)}.tled.amber{background:var(--amber);box-shadow:0 0 7px var(--amber)}.tile-ic{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:color-mix(in oklab,var(--accent) 20%,var(--panel));color:color-mix(in oklab,var(--accent) 80%,white)}.app[data-theme=light] .tile-ic{background:color-mix(in oklab,var(--accent) 13%,var(--panel));color:var(--accent)}.tile h3{margin:0;font-size:17px}.tile p{margin:0;font-size:13.5px;color:var(--muted);line-height:1.45;flex:1}.tile-foot{display:flex;align-items:center;justify-content:space-between}.tile-meta{font:10px IBM Plex Mono,monospace;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.tile-open{font:700 11px IBM Plex Mono,monospace;letter-spacing:.08em;color:color-mix(in oklab,var(--accent) 80%,white)}.app[data-theme=light] .tile-open{color:var(--accent)}.tile.soon{opacity:.92}.tile.soon .tile-open{color:var(--amber)}.home-strip{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:18px}.stat{flex:1;min-width:150px;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:14px 16px}.stat .k{font:10px IBM Plex Mono,monospace;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}.stat .v{font-size:20px;font-weight:600;margin-top:6px}.stat .v small{font-size:12px;color:var(--muted);font-weight:400}.sec-head{display:flex;align-items:baseline;gap:12px;margin-bottom:16px}.sec-head h2{font-size:15px;font-weight:600;margin:0}.sec-head .cnt{font:11px IBM Plex Mono,monospace;color:var(--muted)}.pl-bar{display:flex;align-items:center;gap:12px;margin-bottom:18px;flex-wrap:wrap}.pl-legend{display:flex;flex-wrap:wrap;gap:8px 16px;margin:-6px 2px 16px}.pl-leg{display:inline-flex;align-items:center;gap:7px;font:500 12px IBM Plex Mono,monospace;color:var(--muted)}.pl-leg i{width:10px;height:10px;border-radius:3px;background:var(--accent)}.pl-week{font-weight:600;font-size:15px}.legend{display:flex;gap:14px;flex-wrap:wrap;margin-left:auto}.legend span{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--muted)}.legend i{width:10px;height:10px;border-radius:3px}.ev-COMPETENCE{background:#2f74bb}.ev-SUIVI_PEDAGOGIQUE{background:#008989;background:oklch(.57 .1 195)}.ev-ADMINISTRATIF{background:#5a6b7d}.ev-RENTREE{background:#429c5a}.ev-STAGE{background:#c44844}.ev-SECURITE_INCENDIE{background:#d97230}.ev-EVALUATION{background:#8059bb}.ev-AUTRE{background:#727c86}.grid-cal{display:grid;grid-template-columns:56px repeat(7,1fr);background:var(--panel);border:1px solid var(--line);border-radius:16px;overflow:hidden}.cal-corner,.cal-dh{border-bottom:1px solid var(--line)}.cal-dh{padding:12px 8px;text-align:center;font-size:13px;font-weight:600;border-left:1px solid var(--line)}.cal-body{grid-column:1 / -1;display:grid;grid-template-columns:56px repeat(7,1fr);position:relative}.cal-hours{display:flex;flex-direction:column}.cal-hr{flex:1;min-height:46px;font:10px IBM Plex Mono,monospace;color:var(--muted);padding:4px 8px 0;text-align:right}.cal-col{border-left:1px solid var(--line);position:relative}.cal-col .line{position:absolute;left:0;right:0;border-top:1px dashed var(--line);opacity:.5}.ev{position:absolute;left:4px;right:4px;border-radius:8px;padding:7px 9px;color:#fff;font-size:11.5px;line-height:1.25;overflow:hidden;box-shadow:0 2px 8px #0000002e}.ev .et{font:9px IBM Plex Mono,monospace;opacity:.85}.ev .en{font-weight:600;margin-top:2px}.ev .ev-room{font:9px IBM Plex Mono,monospace;opacity:.82;margin-top:3px}.ev.added{box-shadow:0 2px 8px #0000002e,inset 0 0 0 1.5px #ffffff8c}.pl-add{display:inline-flex;align-items:center;gap:7px;height:34px;padding:0 14px;border-radius:9px;border:none;background:var(--red);color:#fff;font-weight:600;font-size:13.5px;transition:filter .14s}.pl-add:hover{filter:brightness(1.08)}.edt-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;padding:20px;background:#04080c8c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}@media (prefers-reduced-motion: no-preference){.edt-overlay{animation:edt-fade .16s ease both}.edt-modal{animation:edt-pop .2s cubic-bezier(.2,.7,.3,1) both}}@keyframes edt-fade{0%{opacity:0}}@keyframes edt-pop{0%{opacity:0;transform:translateY(8px) scale(.98)}}.edt-modal{width:100%;max-width:480px;background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:20px;box-shadow:0 24px 60px #0006}.edt-scroll{max-height:min(62vh,520px);overflow-y:auto;margin:0 -4px;padding:2px 4px}.edt-modal-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.edt-modal-h h3{margin:0;font-size:17px;letter-spacing:-.01em}.edt-x{width:32px;height:32px;border-radius:8px;border:1px solid var(--line);background:var(--panel2);color:var(--muted);display:grid;place-items:center}.edt-x:hover{color:var(--ink)}.edt-field{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.edt-field>span{font:600 11px IBM Plex Mono,monospace;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.edt-field input,.edt-field select{height:42px;padding:0 13px;border:1px solid var(--line);border-radius:10px;background:var(--panel2);color:var(--ink);font:inherit;font-size:14px;outline:none;width:100%}.edt-field input:focus,.edt-field select:focus{border-color:color-mix(in oklab,var(--red) 45%,var(--line))}.edt-field select{cursor:pointer}.app[data-theme=dark] .edt-field input[type=date],.app[data-theme=dark] .edt-field input[type=time]{color-scheme:dark}.app[data-theme=light] .edt-field input[type=date],.app[data-theme=light] .edt-field input[type=time]{color-scheme:light}.edt-field>span em{font-style:normal;text-transform:none;letter-spacing:0;color:var(--muted);font-weight:400}.edt-field textarea{padding:10px 13px;border:1px solid var(--line);border-radius:10px;background:var(--panel2);color:var(--ink);font:inherit;font-size:14px;outline:none;resize:vertical;min-height:46px;width:100%}.edt-field textarea:focus{border-color:color-mix(in oklab,var(--red) 45%,var(--line))}.edt-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.edt-row-3{grid-template-columns:1.1fr 1fr 1fr}.edt-seg{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:4px;background:var(--panel2);border:1px solid var(--line);border-radius:10px}.edt-seg button{height:34px;border:none;border-radius:7px;background:transparent;color:var(--muted);font:inherit;font-size:13.5px;font-weight:600;cursor:pointer;transition:background .14s,color .14s}.edt-seg button:hover{color:var(--ink)}.edt-seg button.on{background:var(--red);color:#fff}.edt-preview{display:flex;align-items:center;gap:10px;padding:11px 14px;border-radius:10px;color:#fff;margin:6px 0 18px;box-shadow:0 2px 8px #0000002e}.edt-preview-t{font:10px IBM Plex Mono,monospace;opacity:.85}.edt-preview-n{font-weight:600;font-size:13.5px}.edt-actions{display:flex;justify-content:flex-end;gap:10px}.dico-wrap{display:grid;grid-template-columns:1fr 1.05fr;gap:22px;align-items:start}.search{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--panel);margin-bottom:14px}.search input{border:none;background:transparent;outline:none;color:var(--ink);font-size:14px;flex:1}.search input::placeholder{color:var(--muted)}.cats{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}.cat-pill{padding:6px 12px;border-radius:999px;border:1px solid var(--line);background:var(--panel);color:var(--muted);font-size:12px}.cat-pill.on{background:var(--ink);color:var(--bg);border-color:var(--ink)}.dico-list{display:flex;flex-direction:column;gap:8px}.dico-item{display:flex;align-items:center;gap:14px;padding:13px 15px;background:var(--panel);border:1px solid var(--line);border-radius:12px;text-align:left;width:100%;transition:border-color .14s,transform .12s}.dico-item:hover{border-color:color-mix(in oklab,var(--accent) 45%,var(--line));transform:translate(2px)}.dico-item.on{border-color:var(--accent);background:color-mix(in oklab,var(--accent) 8%,var(--panel))}.dico-abbr{font:700 15px IBM Plex Mono,monospace;color:var(--accent);min-width:64px}.dico-l{font-size:14px;font-weight:500;flex:1}.dico-l small{display:block;font-size:11px;color:var(--muted);font-weight:400;margin-top:1px;font-family:IBM Plex Mono,monospace;text-transform:uppercase;letter-spacing:.04em}.detail{position:sticky;top:0;background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:26px}.detail .dchip{display:inline-block;font:10px IBM Plex Mono,monospace;text-transform:uppercase;letter-spacing:.06em;padding:4px 10px;border-radius:999px;background:color-mix(in oklab,var(--accent) 16%,var(--panel));color:var(--accent);margin-bottom:14px}.detail .dabbr{font:800 34px IBM Plex Mono,monospace;letter-spacing:-.02em}.detail .dlong{font-size:16px;font-weight:500;margin:4px 0 16px}.detail .ddesc{font-size:14.5px;line-height:1.6;color:var(--muted)}.detail .empty{color:var(--muted);font-size:14px;text-align:center;padding:30px 0}.proto-grid{display:grid;grid-template-columns:340px 1fr;gap:22px;align-items:start}.proto-list{display:flex;flex-direction:column;gap:9px}.proto-item{display:flex;align-items:center;gap:13px;padding:15px;background:var(--panel);border:1px solid var(--line);border-radius:13px;text-align:left;width:100%;transition:border-color .14s;position:relative;overflow:hidden}.proto-item:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--accent)}.proto-item:hover{border-color:color-mix(in oklab,var(--accent) 45%,var(--line))}.proto-item.on{border-color:var(--accent);background:color-mix(in oklab,var(--accent) 8%,var(--panel))}.proto-tag{font:700 11px IBM Plex Mono,monospace;color:#fff;background:var(--accent);padding:3px 8px;border-radius:6px}.proto-tt{flex:1}.proto-tt .pt{font-weight:600;font-size:14.5px}.proto-tt .pc{font:10px IBM Plex Mono,monospace;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-top:2px}.fiche{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:28px}.fiche .fhead{display:flex;align-items:center;gap:12px;margin-bottom:6px}.fiche h2{font-size:24px;margin:0}.fiche .fsub{color:var(--muted);font-size:14.5px;margin:8px 0 22px}.steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.steps li{display:flex;gap:14px;align-items:flex-start}.step-n{width:28px;height:28px;flex:0 0 auto;border-radius:8px;display:grid;place-items:center;font:700 12px IBM Plex Mono,monospace;background:color-mix(in oklab,var(--accent) 16%,var(--panel));color:var(--accent)}.steps li p{margin:3px 0 0;font-size:14.5px;line-height:1.5}.disclaim{margin-top:22px;padding:12px 14px;border-radius:10px;border:1px dashed var(--line);font-size:12px;color:var(--muted);display:flex;gap:9px;align-items:center}.simu-top{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:20px;flex-wrap:wrap}.simu-intro{max-width:56ch}.simu-kicker{display:inline-block;font:700 11px IBM Plex Mono,monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--amber);border:1px solid color-mix(in oklab,var(--amber) 40%,var(--line));padding:5px 11px;border-radius:999px}.simu-intro p{margin:12px 0 0;color:var(--muted);font-size:14px;line-height:1.55}.btn-draw{display:inline-flex;align-items:center;gap:9px;padding:12px 18px;border-radius:12px;border:1px solid var(--red);background:var(--red);color:#fff;font-weight:600;font-size:14px;white-space:nowrap;box-shadow:0 6px 18px color-mix(in oklab,var(--red) 32%,transparent);transition:filter .14s,transform .14s}.btn-draw:hover{filter:brightness(1.08)}.btn-draw:active{transform:translateY(1px)}.simu-filters{display:flex;flex-direction:column;gap:12px;padding:16px 18px;margin-bottom:20px;background:var(--panel);border:1px solid var(--line);border-radius:14px}.simu-filter-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.simu-filter-label{flex:0 0 56px;font:700 11px IBM Plex Mono,monospace;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}.seg{display:flex;flex-wrap:wrap;gap:6px;background:var(--panel2);border:1px solid var(--line);border-radius:11px;padding:4px}.seg-btn{display:inline-flex;flex-direction:column;align-items:center;gap:2px;padding:8px 14px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--muted);font-size:13.5px;font-weight:600;line-height:1.1;cursor:pointer;transition:background .14s,color .14s}.seg-btn em{font:9.5px IBM Plex Mono,monospace;font-style:normal;letter-spacing:.03em;opacity:.8}.seg-btn:hover{color:var(--ink)}.seg-btn.active{background:var(--red);border-color:var(--red);color:#fff}.seg-btn.active em{opacity:.85}.idcard{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:26px 28px 24px;position:relative;overflow:hidden}.idcard:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--accent)}@media (prefers-reduced-motion: no-preference){.idcard{animation:idcard-in .34s cubic-bezier(.2,.7,.3,1) both}}@keyframes idcard-in{0%{transform:translateY(9px)}to{transform:none}}.idcard-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:18px;border-bottom:1px solid var(--line)}.idc-dossier{display:inline-flex;align-items:center;gap:6px;font:700 12px IBM Plex Mono,monospace;letter-spacing:.04em;color:var(--muted)}.idc-dossier svg{color:var(--accent)}.idc-led{display:inline-flex;align-items:center;gap:8px;font:11px IBM Plex Mono,monospace;letter-spacing:.08em;text-transform:uppercase;color:#4ac06c}.idc-led i{width:8px;height:8px;border-radius:50%;background:var(--ok);box-shadow:0 0 8px var(--ok);animation:blink 2s infinite}.idcard-id{display:flex;align-items:center;gap:18px;padding:22px 0}.idc-avatar{width:64px;height:64px;flex:0 0 auto;border-radius:16px;display:grid;place-items:center;font:700 24px IBM Plex Mono,monospace;letter-spacing:-.02em;background:color-mix(in oklab,var(--accent) 20%,var(--panel));color:color-mix(in oklab,var(--accent) 82%,white)}.app[data-theme=light] .idc-avatar{background:color-mix(in oklab,var(--accent) 14%,var(--panel));color:var(--accent)}.idc-name{margin:0;font-size:27px;font-weight:500;letter-spacing:-.01em}.idc-name strong{font-weight:700}.idc-meta{display:flex;align-items:center;gap:10px;margin-top:7px;font-size:13.5px;color:var(--muted);flex-wrap:wrap}.idc-gtag{font:700 11px IBM Plex Mono,monospace;letter-spacing:.04em;text-transform:uppercase;color:#fff;background:var(--accent);padding:3px 9px;border-radius:6px}.idc-dot{width:3px;height:3px;border-radius:50%;background:var(--muted)}.idc-phone{margin-left:auto;display:flex;flex-direction:column;gap:6px;align-items:flex-end;text-align:right;padding:11px 16px;border:1px solid var(--line);border-radius:12px;background:var(--panel2)}.idc-phone-num{display:inline-flex;align-items:center;gap:8px;font:600 18px IBM Plex Mono,monospace;letter-spacing:.01em}.idc-phone-num svg{color:var(--accent)}.idc-vp{color:var(--amber);font-weight:600}.idc-sections{display:grid;grid-template-columns:1fr;gap:24px;padding:22px 0 4px}.idc-sec-label{display:flex;align-items:center;gap:9px;font:700 11px IBM Plex Mono,monospace;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);margin-bottom:14px}.idc-sec-n{display:grid;place-items:center;width:22px;height:22px;border-radius:6px;background:color-mix(in oklab,var(--accent) 16%,var(--panel));color:var(--accent);font-size:10px}.idc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;align-items:start}.idc-field{display:flex;flex-direction:column;gap:4px;padding:11px 13px;border:1px solid var(--line);border-radius:11px;background:var(--panel2)}.idc-field.wide{grid-column:span 2}.idc-flabel{font:10px IBM Plex Mono,monospace;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}.idc-fvalue{font-size:16px;font-weight:500}.idc-fvalue.mono{font-family:IBM Plex Mono,monospace;letter-spacing:.01em}.idc-addr{grid-column:1 / -1;display:flex;align-items:center;gap:9px;margin-top:14px;padding:12px 14px;border-radius:11px;border:1px dashed color-mix(in oklab,var(--accent) 36%,var(--line));background:color-mix(in oklab,var(--accent) 6%,var(--panel));font-size:14px;font-weight:500}.idc-addr svg{color:var(--accent);flex:0 0 auto}.idc-addrline{display:flex;align-items:center;gap:14px;margin-bottom:14px;padding:15px 17px;border-radius:13px;border:1px solid color-mix(in oklab,var(--accent) 34%,var(--line));background:color-mix(in oklab,var(--accent) 7%,var(--panel))}.idc-addrline>svg{color:var(--accent);flex:0 0 auto}.idc-addrtext{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}.idc-addrtext strong{font-size:19px;font-weight:600;line-height:1.2;letter-spacing:-.01em}.idc-addrtext span{font:500 14px IBM Plex Mono,monospace;letter-spacing:.01em;color:var(--muted)}.idc-lieutag{flex:0 0 auto;padding:6px 12px;border-radius:999px;font:700 11px IBM Plex Mono,monospace;letter-spacing:.07em;text-transform:uppercase;color:var(--accent);background:color-mix(in oklab,var(--accent) 14%,transparent);border:1px solid color-mix(in oklab,var(--accent) 32%,transparent)}.idc-lieutag.vp{color:var(--amber);background:color-mix(in oklab,var(--amber) 14%,transparent);border-color:color-mix(in oklab,var(--amber) 32%,transparent)}.idc-complement{display:flex;align-items:center;gap:18px;flex-wrap:wrap;padding:13px 17px;border-radius:13px;border:1px solid var(--line);background:var(--panel2)}.idc-comp-label{font:700 11px IBM Plex Mono,monospace;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);flex:0 0 auto}.idc-comp-items{display:flex;gap:28px;flex-wrap:wrap;flex:1;min-width:0}.idc-comp-item{display:inline-flex;align-items:baseline;gap:9px;font-size:16px;font-weight:500}.idc-comp-item em{font:600 11px IBM Plex Mono,monospace;font-style:normal;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.idc-comp-item .mono{font-family:IBM Plex Mono,monospace;letter-spacing:.01em}.idcard .disclaim{margin-top:22px}.admin-wrap{display:grid;grid-template-columns:300px 1fr;gap:22px;align-items:start}.admin-wrap.solo{grid-template-columns:1fr;max-width:860px}.admin-side{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:14px;position:sticky;top:0}.admin-side-h{display:flex;align-items:center;gap:8px;font:700 11px IBM Plex Mono,monospace;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);padding:4px 4px 12px}.admin-side-h svg{color:var(--accent)}.admin-school-list{display:flex;flex-direction:column;gap:6px}.admin-school{display:flex;align-items:center;gap:11px;padding:10px 11px;width:100%;text-align:left;background:transparent;border:1px solid transparent;border-radius:11px;transition:background .14s,border-color .14s}.admin-school:hover{background:var(--panel2)}.admin-school.on{background:color-mix(in oklab,var(--red) 9%,var(--panel));border-color:color-mix(in oklab,var(--red) 38%,var(--line))}.admin-school-badge{flex:0 0 auto;width:34px;height:34px;border-radius:9px;display:grid;place-items:center;font:700 13px IBM Plex Mono,monospace;color:var(--ink);background:var(--panel2);border:1px solid var(--line)}.admin-school.on .admin-school-badge{color:#fff;background:var(--red);border-color:var(--red)}.admin-school-tt{flex:1;min-width:0}.admin-school-tt .asn{display:block;font-size:13.5px;font-weight:600;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-school-tt .asc{display:block;font:10.5px IBM Plex Mono,monospace;color:var(--muted);margin-top:2px}.admin-school-n{flex:0 0 auto;min-width:22px;height:22px;padding:0 6px;border-radius:999px;display:grid;place-items:center;font:700 11px IBM Plex Mono,monospace;color:var(--muted);background:var(--panel2);border:1px solid var(--line)}.admin-school.on .admin-school-n{color:var(--red);border-color:color-mix(in oklab,var(--red) 36%,var(--line))}.admin-main{min-width:0}.admin-main-h{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.amh-eyebrow{font:700 11px IBM Plex Mono,monospace;letter-spacing:.09em;text-transform:uppercase;color:var(--red)}.amh-tt h2{margin:5px 0 6px;font-size:24px;letter-spacing:-.01em}.amh-city{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--muted)}.amh-city svg{color:var(--muted)}.amh-count{flex:0 0 auto;display:inline-flex;align-items:center;gap:8px;padding:8px 13px;border-radius:999px;font:600 13px IBM Plex Mono,monospace;color:var(--ink);background:var(--panel2);border:1px solid var(--line);white-space:nowrap}.amh-count svg{color:var(--accent)}.fmt-add{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:12px;margin-bottom:16px}.fmt-add-row{display:flex;gap:9px;flex-wrap:wrap;align-items:stretch}.fmt-in{flex:1 1 120px;min-width:0;display:flex;align-items:center;gap:8px;padding:0 13px;height:42px;border:1px solid var(--line);border-radius:10px;background:var(--panel2);color:var(--ink);font-size:14px}.fmt-in::placeholder{color:var(--muted)}.fmt-in input{border:none;background:transparent;outline:none;color:var(--ink);font:inherit;flex:1;min-width:0}.fmt-in svg{color:var(--muted);flex:0 0 auto}.fmt-in-mail{flex:2 1 200px}.fmt-in:focus-within{border-color:color-mix(in oklab,var(--red) 45%,var(--line))}.fmt-sel{flex:0 0 auto;height:42px;padding:0 12px;border:1px solid var(--line);border-radius:10px;background:var(--panel2);color:var(--ink);font:inherit;font-size:14px;cursor:pointer}.fmt-add-btn{flex:0 0 auto;display:inline-flex;align-items:center;gap:7px;height:42px;padding:0 18px;border:none;border-radius:10px;background:var(--red);color:#fff;font-weight:600;font-size:14px;transition:filter .14s,opacity .14s}.fmt-add-btn:hover{filter:brightness(1.08)}.fmt-add-btn:disabled{opacity:.4;cursor:not-allowed}.admin-search{margin-bottom:14px}.fmt-list{display:flex;flex-direction:column;gap:9px}.fmt-card{display:flex;align-items:center;gap:14px;padding:12px 14px;background:var(--panel);border:1px solid var(--line);border-radius:13px;position:relative;overflow:hidden}.fmt-card:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--accent)}.fmt-av{flex:0 0 auto;width:42px;height:42px;border-radius:11px;display:grid;place-items:center;font:700 15px IBM Plex Mono,monospace;letter-spacing:-.02em;background:color-mix(in oklab,var(--accent) 20%,var(--panel));color:color-mix(in oklab,var(--accent) 82%,white)}.app[data-theme=light] .fmt-av{background:color-mix(in oklab,var(--accent) 14%,var(--panel));color:var(--accent)}.fmt-id{flex:1;min-width:0}.fmt-name{font-size:15px;font-weight:600;line-height:1.2}.fmt-mail{display:inline-flex;align-items:center;gap:6px;margin-top:3px;font:12px IBM Plex Mono,monospace;color:var(--muted);overflow:hidden;text-overflow:ellipsis;max-width:100%}.fmt-mail svg{flex:0 0 auto}.fmt-mail:hover{color:var(--accent)}.fmt-rolesel{flex:0 0 auto;height:34px;padding:0 10px;border-radius:999px;cursor:pointer;font:700 11px IBM Plex Mono,monospace;letter-spacing:.04em;text-transform:uppercase;color:var(--accent);background:color-mix(in oklab,var(--accent) 14%,transparent);border:1px solid color-mix(in oklab,var(--accent) 32%,transparent)}.fmt-del{flex:0 0 auto;width:34px;height:34px;border-radius:9px;display:grid;place-items:center;border:1px solid var(--line);background:var(--panel2);color:var(--muted);transition:color .14s,border-color .14s}.fmt-del:hover{color:var(--red);border-color:color-mix(in oklab,var(--red) 40%,var(--line))}.fmt-empty{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;padding:40px 20px;border:1px dashed var(--line);border-radius:14px;color:var(--muted)}.fmt-empty svg{color:var(--muted);opacity:.7;margin-bottom:4px}.fmt-empty p{margin:0;font-size:14.5px;font-weight:600;color:var(--ink)}.fmt-empty span{font-size:13px}.adm-tabs{display:inline-flex;gap:4px;padding:4px;margin-bottom:18px;background:var(--panel2);border:1px solid var(--line);border-radius:12px}.adm-tab{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border:none;border-radius:9px;background:transparent;color:var(--muted);font-weight:600;font-size:14px;transition:background .14s,color .14s}.adm-tab svg{opacity:.85}.adm-tab em{font:700 11px IBM Plex Mono,monospace;font-style:normal;padding:1px 7px;border-radius:999px;background:color-mix(in oklab,var(--ink) 8%,transparent);color:var(--muted)}.adm-tab:hover{color:var(--ink)}.adm-tab.on{background:var(--red);color:#fff}.adm-tab.on em{background:#ffffff38;color:#fff}.cours-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:16px}.cours-intro{margin:0;font-size:13.5px;color:var(--muted);flex:1;min-width:220px}.cours-bar-acts{display:flex;align-items:center;gap:10px}.btn-link{display:inline-flex;align-items:center;gap:7px;height:34px;padding:0 13px;border-radius:9px;border:1px solid var(--line);background:var(--panel2);color:var(--ink);font-weight:600;font-size:13.5px;transition:border-color .14s}.btn-link svg{color:var(--accent, var(--red))}.btn-link:hover{border-color:var(--muted)}.cours-list{display:flex;flex-direction:column;gap:9px}.cours-row{display:flex;align-items:center;gap:14px;padding:13px 15px;background:var(--panel);border:1px solid var(--line);border-radius:13px}.cours-swatch{flex:0 0 auto;width:6px;height:38px;border-radius:3px;background:var(--accent, var(--muted))}.cours-when{flex:0 0 auto;width:96px;display:flex;flex-direction:column;gap:2px}.cours-day{font-weight:600;font-size:13.5px}.cours-time{font:11px IBM Plex Mono,monospace;color:var(--muted)}.cours-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px}.cours-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.cours-title{font-size:15px;font-weight:500}.cours-meta{display:flex;align-items:center;gap:14px;flex-wrap:wrap;font-size:12px;color:var(--muted)}.cours-meta span{display:inline-flex;align-items:center;gap:5px}.cours-meta svg{opacity:.8}.cours-portee{font:10px IBM Plex Mono,monospace;text-transform:uppercase;letter-spacing:.05em}.cours-acts{display:flex;align-items:center;gap:7px;flex:0 0 auto}.cours-edit{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;border:1px solid var(--line);background:var(--panel2);color:var(--muted);transition:color .14s,border-color .14s}.cours-edit:hover{color:var(--red);border-color:color-mix(in oklab,var(--red) 40%,var(--line))}.grp-add{display:flex;gap:9px;margin-bottom:16px}.grp-add .fmt-in{flex:1}.grp-list{display:flex;flex-direction:column;gap:12px}.grp-card{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:14px 16px}.grp-head{display:flex;align-items:center;gap:11px}.grp-ic{width:30px;height:30px;flex:0 0 auto;border-radius:8px;display:grid;place-items:center;background:color-mix(in oklab,var(--red) 14%,var(--panel));color:var(--red)}.grp-title{font-size:16px;font-weight:600}.grp-count{font:11px IBM Plex Mono,monospace;color:var(--muted);padding:3px 9px;border-radius:999px;background:var(--panel2);border:1px solid var(--line)}.grp-head .fmt-del{margin-left:auto}.grp-members{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0}.grp-chip{display:inline-flex;align-items:center;gap:7px;padding:5px 6px 5px 11px;border-radius:999px;font-size:13px;font-weight:500;background:var(--panel2);border:1px solid var(--line)}.grp-chip button{width:18px;height:18px;border-radius:50%;border:none;display:grid;place-items:center;background:color-mix(in oklab,var(--ink) 9%,transparent);color:var(--muted)}.grp-chip button:hover{background:color-mix(in oklab,var(--red) 22%,transparent);color:var(--red)}.grp-noempty{font-size:13px;color:var(--muted);font-style:italic}.grp-assign{display:flex;align-items:center;gap:8px;padding-top:11px;border-top:1px solid var(--line)}.grp-assign svg{color:var(--muted);flex:0 0 auto}.grp-assign select{flex:1;height:38px;padding:0 12px;border:1px solid var(--line);border-radius:9px;background:var(--panel2);color:var(--ink);font:inherit;font-size:13.5px;cursor:pointer}.grp-assign select:disabled{color:var(--muted);cursor:default}.edt-warn{display:flex;align-items:flex-start;gap:8px;margin:0 0 12px;padding:10px 13px;border-radius:10px;font-size:13px;line-height:1.4;color:var(--ink);border:1px dashed color-mix(in oklab,var(--amber) 45%,var(--line));background:color-mix(in oklab,var(--amber) 8%,var(--panel))}.edt-warn svg{color:var(--amber);flex:0 0 auto;margin-top:1px}.pl-scope{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;font:600 12px IBM Plex Mono,monospace;color:var(--ink);background:var(--panel2);border:1px solid var(--line)}.pl-scope svg{color:var(--red)}.home-groupes{display:flex;align-items:center;gap:14px;margin-bottom:18px;padding:14px 18px;border-radius:14px;border:1px solid color-mix(in oklab,var(--red) 30%,var(--line));background:color-mix(in oklab,var(--red) 6%,var(--panel))}.hg-ic{width:38px;height:38px;flex:0 0 auto;border-radius:10px;display:grid;place-items:center;background:color-mix(in oklab,var(--red) 16%,var(--panel));color:var(--red)}.hg-main{display:flex;flex-direction:column;gap:7px;min-width:0}.hg-label{font:700 11px IBM Plex Mono,monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.hg-chips{display:flex;flex-wrap:wrap;gap:7px;align-items:center}.hg-chip{display:inline-flex;align-items:center;padding:5px 13px;border-radius:999px;font-size:13.5px;font-weight:600;color:#fff;background:var(--red)}.hg-none{font-size:13.5px;color:var(--muted)}.cours-type{font:700 10px IBM Plex Mono,monospace;letter-spacing:.05em;text-transform:uppercase;padding:3px 9px;border-radius:999px;color:var(--accent);background:color-mix(in oklab,var(--accent) 14%,transparent);border:1px solid color-mix(in oklab,var(--accent) 30%,transparent)}.sched{max-width:720px;display:flex;flex-direction:column;gap:26px}.sched-dh{display:flex;align-items:center;gap:14px;margin-bottom:12px}.sd-day{font-size:16px;font-weight:700;letter-spacing:-.01em;white-space:nowrap}.sd-line{flex:1;height:1px;background:var(--line)}.sd-count{font:11px IBM Plex Mono,monospace;color:var(--muted);white-space:nowrap}.sched-list{display:flex;flex-direction:column;gap:10px}.sched-card{display:flex;gap:16px;padding:14px 16px 14px 18px;background:var(--panel);border:1px solid var(--line);border-radius:14px;position:relative;overflow:hidden;transition:border-color .14s,transform .12s}.sched-card:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--accent)}.sched-card:hover{border-color:color-mix(in oklab,var(--accent) 42%,var(--line));transform:translate(2px)}.sched-time{flex:0 0 auto;width:60px;display:flex;flex-direction:column;gap:5px}.sched-time b{font:700 17px IBM Plex Mono,monospace;letter-spacing:-.01em}.sched-dur{display:inline-flex;align-items:center;gap:6px;font:12px IBM Plex Mono,monospace;color:var(--muted)}.sched-tick{width:6px;height:6px;flex:0 0 auto;border-radius:50%;border:1.5px solid var(--muted)}.sched-body{flex:1;min-width:0}.sched-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px}.sched-title{font-size:16px;font-weight:600;line-height:1.25}.sched-meta{display:flex;gap:7px 18px;flex-wrap:wrap;font-size:13px;color:var(--muted)}.sched-meta>span{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.sched-meta svg{opacity:.8;flex:0 0 auto}.sched-portee{font:10px IBM Plex Mono,monospace;text-transform:uppercase;letter-spacing:.05em}.sched-portee.grp{color:var(--accent);font-weight:700}.sched-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:56px 20px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:14px}.sched-empty svg{opacity:.7}.sched-empty p{margin:0;font-size:14.5px}.sched-empty .pl-add{margin-top:8px}.cfg-section{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:18px 20px;margin-bottom:16px}.cfg-h{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:14px}.cfg-tt h3{margin:0 0 4px;font-size:16px;letter-spacing:-.01em}.cfg-tt p{margin:0;font-size:13px;color:var(--muted)}.cfg-add{display:flex;gap:9px;margin-bottom:14px;flex-wrap:wrap}.cfg-add .fmt-in{flex:1;min-width:130px}.cfg-add .cfg-cp{flex:0 0 140px;font-family:IBM Plex Mono,monospace}.cfg-acts{display:flex;gap:8px;flex-wrap:wrap}.dept-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(154px,1fr));gap:8px}.dept-chip{display:flex;align-items:center;gap:9px;padding:10px 12px;border:1px solid var(--line);border-radius:11px;background:var(--panel2);color:var(--ink);text-align:left;transition:background .14s,border-color .14s}.dept-chip b{font:700 13px IBM Plex Mono,monospace;color:var(--muted);min-width:22px}.dept-chip .dept-nom{flex:1;min-width:0;font-size:13.5px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dept-chip em{font:10px IBM Plex Mono,monospace;font-style:normal;color:var(--muted);padding:1px 6px;border-radius:999px;background:color-mix(in oklab,var(--ink) 8%,transparent)}.dept-chip:hover{border-color:color-mix(in oklab,var(--red) 35%,var(--line))}.dept-chip.on{background:color-mix(in oklab,var(--red) 10%,var(--panel));border-color:var(--red)}.dept-chip.on b{color:var(--red)}.dept-chip.on em{background:var(--red);color:#fff}.cfg-warn{display:flex;align-items:center;gap:7px;margin:12px 0 0;font-size:12.5px;color:var(--muted)}.cfg-warn svg{color:var(--amber);flex:0 0 auto}.cfg-global{display:inline-block;vertical-align:2px;margin-left:8px;padding:3px 9px;border-radius:999px;font:600 10.5px IBM Plex Mono,monospace;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);background:color-mix(in oklab,var(--ink) 7%,transparent);border:1px solid var(--line);white-space:nowrap}.act-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;margin-bottom:4px}.act-card{position:relative;display:flex;gap:0;padding:0;overflow:hidden;background:var(--panel2);border:1px solid var(--line);border-radius:14px;transition:border-color .14s}.act-card:hover{border-color:color-mix(in oklab,var(--accent) 38%,var(--line))}.act-bar{flex:0 0 auto;width:5px;align-self:stretch;background:var(--accent)}.act-card-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px;padding:13px 14px 12px}.act-label{width:100%;min-width:0;height:34px;padding:0 11px;border-radius:9px;font:inherit;font-size:14.5px;font-weight:700;letter-spacing:-.01em;color:color-mix(in oklab,var(--accent) 88%,var(--ink));background:color-mix(in oklab,var(--accent) 13%,var(--panel));border:1px solid color-mix(in oklab,var(--accent) 26%,transparent);transition:border-color .14s}.app[data-theme=light] .act-label{color:color-mix(in oklab,var(--accent) 70%,#1a1a1a)}.act-label::placeholder{color:var(--muted);font-weight:600}.act-label:focus{outline:none;border-color:var(--accent)}.act-id{font:11px IBM Plex Mono,monospace;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 2px}.act-id-hint{font-style:italic;opacity:.8}.act-card-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:2px}.act-color{flex:0 0 auto;display:inline-flex;align-items:center;gap:7px;height:32px;padding:0 9px 0 7px;border:1px solid var(--line);border-radius:8px;background:var(--panel);cursor:pointer;transition:border-color .14s}.act-color:hover{border-color:var(--muted)}.act-color input[type=color]{width:20px;height:20px;padding:0;border:none;border-radius:5px;background:none;cursor:pointer;box-shadow:0 0 0 1px var(--line)}.act-color input[type=color]::-webkit-color-swatch-wrapper{padding:0}.act-color input[type=color]::-webkit-color-swatch{border:none;border-radius:5px}.act-color input[type=color]::-moz-color-swatch{border:none;border-radius:5px}.act-color-hex{font:10.5px IBM Plex Mono,monospace;color:var(--muted);text-transform:uppercase}.act-use{flex:0 0 auto;font:10.5px IBM Plex Mono,monospace;color:var(--muted);white-space:nowrap}.act-del{position:absolute;top:9px;right:9px;width:28px;height:28px;border-radius:8px;display:grid;place-items:center;border:1px solid transparent;background:transparent;color:var(--muted);transition:color .14s,background .14s,border-color .14s}.act-del:hover:not(:disabled){color:var(--red);background:color-mix(in oklab,var(--red) 12%,transparent);border-color:color-mix(in oklab,var(--red) 32%,transparent)}.act-del:disabled{opacity:.28;cursor:not-allowed}.act-new{border-style:dashed;background:transparent}.act-new:hover{border-color:color-mix(in oklab,var(--accent) 50%,var(--line))}.act-add-btn{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 14px;border:none;border-radius:8px;background:var(--accent);color:#fff;font-weight:600;font-size:13px;transition:filter .14s,opacity .14s}.act-add-btn:hover:not(:disabled){filter:brightness(1.08)}.act-add-btn:disabled{opacity:.4;cursor:not-allowed}.cfg-toggle{display:flex;align-items:flex-start;gap:12px;cursor:pointer}.cfg-toggle input{width:20px;height:20px;flex:0 0 auto;margin-top:1px;accent-color:var(--red);cursor:pointer}.cfg-toggle-txt b{display:block;font-size:14.5px;font-weight:600}.cfg-toggle-txt small{display:block;font-size:12.5px;color:var(--muted);margin-top:2px}.top-school{display:inline-flex;align-items:center;gap:7px;padding:7px 12px;border-radius:8px;border:1px solid var(--line);font-size:12.5px;font-weight:500;color:var(--ink);background:var(--panel2);white-space:nowrap}.top-school svg{color:var(--muted)}.top-logout{min-width:38px;height:38px;padding:0 10px;border-radius:9px;border:1px solid var(--line);background:var(--panel2);color:var(--muted);display:inline-flex;align-items:center;justify-content:center;gap:7px}.top-logout:hover{color:var(--red);border-color:color-mix(in oklab,var(--red) 40%,var(--line))}.top-logout.arm{color:var(--red);border-color:color-mix(in oklab,var(--red) 45%,var(--line));background:color-mix(in oklab,var(--red) 9%,var(--panel2))}.top-logout.arm span{font:600 12.5px IBM Plex Sans,sans-serif;white-space:nowrap}.gate{position:absolute;top:0;right:0;bottom:0;left:0;overflow-y:auto;background:radial-gradient(120% 80% at 50% -10%,color-mix(in oklab,var(--red) 9%,var(--bg)),var(--bg) 60%);display:flex;flex-direction:column;align-items:center}.gate-ecg{position:absolute;left:0;right:0;top:38%;opacity:.25;pointer-events:none}.gate-ecg svg{width:100%;height:80px}.gate-ecg path{fill:none;stroke:var(--ok);stroke-width:1.4}.gate-toggle{position:absolute;top:22px;right:24px;width:40px;height:40px;border-radius:11px;border:1px solid var(--line);background:var(--panel);color:var(--ink);display:grid;place-items:center;z-index:5}.gate-inner{position:relative;z-index:2;width:100%;max-width:480px;margin:auto;padding:40px 24px 56px}.gate-brand{display:flex;flex-direction:column;align-items:center;gap:14px;margin-bottom:26px;text-align:center}.gate-mark{width:60px;height:60px;border-radius:16px;background:var(--red);color:#fff;display:grid;place-items:center;font:800 26px/1 IBM Plex Mono,monospace;box-shadow:0 8px 24px color-mix(in oklab,var(--red) 40%,transparent)}.gate-brand h1{font-size:23px;margin:0;letter-spacing:-.01em}.gate-brand p{margin:0;font-size:14px;color:var(--muted)}.gate-card{background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:26px;box-shadow:0 20px 50px #00000047}.gate-step{font:11px IBM Plex Mono,monospace;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:4px}.gate-card h2{font-size:18px;margin:0 0 18px;letter-spacing:-.01em}.role-seg{display:grid;grid-template-columns:1fr;gap:9px;margin-bottom:20px}.role-opt{display:flex;flex-direction:row;align-items:center;gap:13px;padding:13px 15px;border:1px solid var(--line);border-radius:14px;background:var(--panel2);color:var(--ink);text-align:left;transition:.14s}.role-opt .ri{flex:0 0 auto}.role-opt b{font-size:14.5px;display:block}.role-opt small{font-size:12px;color:var(--muted);display:block;margin-top:1px}.role-opt .rt{min-width:0}.role-opt .ri{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:color-mix(in oklab,var(--red) 14%,var(--panel));color:var(--red)}.role-opt b{font-size:14.5px}.role-opt small{font-size:12px;color:var(--muted)}.role-opt:hover{border-color:color-mix(in oklab,var(--red) 35%,var(--line))}.role-opt.on{border-color:var(--red);background:color-mix(in oklab,var(--red) 8%,var(--panel));box-shadow:0 0 0 1px var(--red)}.gate-label{display:block;font-size:12.5px;font-weight:500;color:var(--muted);margin:0 0 8px}.school-list{display:flex;flex-direction:column;gap:7px;max-height:248px;overflow-y:auto;margin-top:10px;padding-right:2px}.school-opt{display:flex;align-items:center;gap:12px;padding:12px 13px;border:1px solid var(--line);border-radius:12px;background:var(--panel2);text-align:left;width:100%;transition:.12s}.school-opt:hover{border-color:color-mix(in oklab,var(--red) 35%,var(--line))}.school-opt.on{border-color:var(--red);background:color-mix(in oklab,var(--red) 8%,var(--panel))}.school-badge{width:38px;height:38px;flex:0 0 auto;border-radius:10px;display:grid;place-items:center;font:700 13px IBM Plex Mono,monospace;background:color-mix(in oklab,var(--red) 14%,var(--panel));color:var(--red)}.school-opt .sn{font-size:14px;font-weight:500}.school-opt .sc{font-size:12px;color:var(--muted);margin-top:1px}.school-opt .sflex{flex:1;min-width:0}.school-opt .check{color:var(--red);opacity:0}.school-opt.on .check{opacity:1}.field{margin-bottom:14px}.field label{display:block;font-size:12.5px;font-weight:500;color:var(--muted);margin-bottom:6px}.field input,.field select{width:100%;padding:12px 13px;border:1px solid var(--line);border-radius:11px;background:var(--panel2);color:var(--ink);font:inherit;font-size:14px;outline:none}.field input:focus,.field select:focus{border-color:var(--red);box-shadow:0 0 0 3px color-mix(in oklab,var(--red) 18%,transparent)}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.gate-actions{display:flex;gap:10px;margin-top:22px}.btn{flex:1;padding:13px;border-radius:12px;border:1px solid var(--line);background:var(--panel2);color:var(--ink);font-weight:600;font-size:14px;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:.14s}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--red);border-color:var(--red);color:#fff}.btn-primary:not(:disabled):hover{filter:brightness(1.08)}.btn-ghost:hover{border-color:var(--muted)}.btn-sm{flex:0 0 auto;padding:9px 14px;font-size:13px;border-radius:10px}.gate-foot{text-align:center;font-size:12px;color:var(--muted);margin-top:18px;line-height:1.5}.gate-note{margin:0 0 16px;font-size:13.5px;line-height:1.5;color:var(--muted)}.gate-back{background:none;border:none;color:var(--muted);font:inherit;font-size:13px;display:inline-flex;align-items:center;gap:6px;margin-bottom:14px}.gate-back:hover{color:var(--ink)}.pending-ic{width:72px;height:72px;border-radius:20px;margin:0 auto 18px;display:grid;place-items:center;background:color-mix(in oklab,var(--amber) 18%,var(--panel));color:var(--amber)}.pending-card{text-align:center}.pending-card h2{margin:0 0 10px}.pending-card .pmsg{color:var(--muted);font-size:14px;line-height:1.55;margin:0 auto 20px;max-width:36ch}.pending-card .pmsg b{color:var(--ink)}.timeline{display:flex;flex-direction:column;gap:0;text-align:left;margin:4px 0 8px}.tl-item{display:flex;gap:13px;align-items:flex-start;padding-bottom:16px;position:relative}.tl-item:not(:last-child):before{content:"";position:absolute;left:13px;top:26px;bottom:-2px;width:2px;background:var(--line)}.tl-dot{width:28px;height:28px;flex:0 0 auto;border-radius:50%;display:grid;place-items:center;z-index:1;background:var(--panel2);border:1px solid var(--line);color:var(--muted)}.tl-item.done .tl-dot{background:var(--ok);border-color:var(--ok);color:#08120c}.tl-item.active .tl-dot{background:var(--amber);border-color:var(--amber);color:#1a1205}.tl-tt{font-size:14px;font-weight:600}.tl-tt small{display:block;font-weight:400;color:var(--muted);font-size:12.5px;margin-top:2px}.demo-note{margin-top:18px;padding:13px;border:1px dashed color-mix(in oklab,var(--amber) 40%,var(--line));border-radius:12px}.demo-note p{margin:0 0 10px;font-size:12px;color:var(--muted)}.fmt-head{display:flex;align-items:center;gap:12px;margin-bottom:4px}.fmt-count{margin-left:auto;font:700 12px IBM Plex Mono,monospace;color:#fff;background:var(--red);padding:4px 10px;border-radius:999px}.req-list{display:flex;flex-direction:column;gap:9px;margin:16px 0}.req-item{display:flex;align-items:center;gap:12px;padding:13px;border:1px solid var(--line);border-radius:13px;background:var(--panel2)}.req-av{width:40px;height:40px;flex:0 0 auto;border-radius:11px;display:grid;place-items:center;font-weight:600;font-size:14px;background:#24344a;color:#fff}.app[data-theme=light] .req-av{background:#dde6f0;color:#2c3a4c}.req-info{flex:1;min-width:0}.req-info .rn{font-size:14px;font-weight:600}.req-info .rm{font-size:12px;color:var(--muted);margin-top:1px}.req-acts{display:flex;gap:7px}.req-btn{width:36px;height:36px;border-radius:9px;border:1px solid var(--line);background:var(--panel);display:grid;place-items:center}.req-btn.ok{color:var(--ok)}.req-btn.ok:hover{background:color-mix(in oklab,var(--ok) 15%,var(--panel));border-color:var(--ok)}.req-btn.no{color:var(--muted)}.req-btn.no:hover{background:color-mix(in oklab,var(--red) 14%,var(--panel));border-color:var(--red);color:var(--red)}.req-done{font:11px IBM Plex Mono,monospace;text-transform:uppercase;letter-spacing:.05em;padding:5px 10px;border-radius:8px}.req-done.ok{color:var(--ok);background:color-mix(in oklab,var(--ok) 14%,var(--panel))}.req-done.no{color:var(--red);background:color-mix(in oklab,var(--red) 14%,var(--panel))}.req-empty{text-align:center;color:var(--muted);font-size:13.5px;padding:24px 0}@media (max-width: 1080px){.top-school .sname-long{display:none}.proto-grid{grid-template-columns:280px 1fr}.admin-wrap{grid-template-columns:1fr}.admin-side{position:static}.admin-school-list{flex-direction:row;overflow-x:auto;padding-bottom:4px}.admin-school{flex:0 0 auto;width:auto;max-width:260px}}@media (max-width: 900px){.dico-wrap,.proto-grid{grid-template-columns:1fr}.detail{position:static}.sched{max-width:none}}@media (max-width: 760px){.top-school .sname-long{display:none}.gate-inner{padding:28px 16px 48px}.role-seg{grid-template-columns:1fr}.rail{position:fixed;bottom:0;left:0;right:0;width:auto;height:calc(64px + env(safe-area-inset-bottom,0px));flex-direction:row;padding:0 8px env(safe-area-inset-bottom,0px);border-right:none;border-top:1px solid rgba(255,255,255,.08)}.rail-mark,.rail-foot{display:none}.rail-nav{flex-direction:row;justify-content:space-around;width:100%}.rail-btn{width:auto;flex:1 1 0;min-width:0;max-width:72px;height:56px}.main{padding-bottom:calc(64px + env(safe-area-inset-bottom,0px))}.top-toggle{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;border:1px solid var(--line);background:var(--panel2);color:var(--ink)}.topbar{padding:14px 16px}.topbar .clock{display:none}.page{padding:18px 16px 40px}.console-grid,.dico-wrap,.proto-grid,.admin-wrap{grid-template-columns:1fr}.admin-side{position:static}.fmt-add-row{flex-direction:column}.fmt-add-btn{justify-content:center}.idc-sections{grid-template-columns:1fr;gap:18px}.idcard-id{flex-wrap:wrap}.idc-phone{margin-left:0;width:100%;align-items:flex-start;text-align:left}.simu-top{flex-direction:column;align-items:stretch}.btn-draw{justify-content:center}.simu-filter-row{align-items:flex-start;flex-direction:column;gap:8px}.seg{width:100%}.seg-btn{flex:1}.idc-name{font-size:23px}.detail{position:static}.grid-cal,.cal-body{grid-template-columns:40px repeat(7,minmax(86px,1fr))}.grid-cal{overflow-x:auto}.legend{display:none}.pl-bar{gap:10px 12px}.pl-week{font-size:16px;flex:1 0 auto}.adm-tabs{display:flex;width:100%;max-width:100%;overflow-x:auto}.adm-tab{flex:1 0 auto;justify-content:center;padding:9px 12px;white-space:nowrap}.cours-row{flex-wrap:wrap}.cours-when{width:auto;flex-direction:row;align-items:baseline;gap:8px}.idcard{padding:20px 18px 18px}.fiche{padding:20px 18px}.idc-complement{gap:10px 18px}}@media (max-width: 480px){.top-school{display:none}.page{padding:16px 12px 40px}.topbar{padding:12px;gap:10px}.home-strip .stat{min-width:124px}.field-row,.edt-row,.edt-row-3{grid-template-columns:1fr}.idc-grid{grid-template-columns:1fr 1fr}.idc-field.wide{grid-column:1 / -1}.idc-comp-items{gap:10px 18px}.detail{padding:18px}.detail .dabbr{font-size:28px}.dico-abbr{min-width:52px}.gate-card{padding:20px 16px}.sched-card{gap:12px;padding:12px 13px 12px 15px}.sched-time{width:50px}}.drm-home{display:grid;grid-template-columns:1.35fr 1fr;gap:22px;align-items:start}.drm-create{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:20px}.drm-create .edt-field,.drm-create .drm-field{margin-bottom:12px}.drm-expected{border:1px dashed var(--line);border-radius:12px;padding:14px;margin-bottom:12px}.drm-launch{width:100%;margin-top:6px}.drm-recent{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:18px 20px;position:sticky;top:0}.drm-sess-list{display:flex;flex-direction:column;gap:8px}.drm-sess-item{display:flex;align-items:center;gap:12px;padding:12px 13px;width:100%;text-align:left;background:var(--panel2);border:1px solid var(--line);border-radius:12px;transition:border-color .14s,transform .12s}.drm-sess-item:hover{border-color:color-mix(in oklab,var(--red) 40%,var(--line));transform:translate(2px)}.drm-sess-dot{width:9px;height:9px;flex:0 0 auto;border-radius:50%;background:var(--muted)}.drm-sess-dot.on{background:var(--ok);box-shadow:0 0 7px var(--ok)}.drm-sess-main{flex:1;min-width:0}.drm-sess-name{display:block;font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drm-sess-meta{display:block;font:10.5px IBM Plex Mono,monospace;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-top:2px}.drm-dash{display:flex;flex-direction:column;gap:16px}.drm-dash-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.drm-dash-tt{display:flex;align-items:center;gap:13px}.drm-logo{width:40px;height:40px;flex:0 0 auto;border-radius:11px;display:grid;place-items:center;background:color-mix(in oklab,var(--red) 16%,var(--panel));color:var(--red)}.drm-dash-tt h2{margin:0;font-size:20px;letter-spacing:-.01em}.drm-status{display:inline-flex;align-items:center;gap:7px;font:11px IBM Plex Mono,monospace;text-transform:uppercase;letter-spacing:.06em;color:#4ac06c;margin-top:3px}.drm-status.closed{color:var(--muted)}.drm-dash-acts{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.drm-close.arm{color:var(--red);border-color:color-mix(in oklab,var(--red) 45%,var(--line));background:color-mix(in oklab,var(--red) 9%,var(--panel2))}.drm-top-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.drm-code-card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:18px 20px;display:flex;flex-direction:column;align-items:center;gap:12px}.drm-code-label{font:700 11px IBM Plex Mono,monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.drm-code{display:flex;gap:8px}.drm-code span{font:800 30px IBM Plex Mono,monospace;letter-spacing:.04em;color:var(--ink)}.drm-code-acts{display:flex;gap:8px}.drm-counter{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:20px 22px;display:flex;flex-direction:column;justify-content:center;gap:10px}.drm-counter-label{font:700 11px IBM Plex Mono,monospace;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}.drm-counter-big{font:700 46px/1 IBM Plex Mono,monospace;letter-spacing:-.02em;color:var(--red)}.drm-counter-big small{font-size:24px;color:var(--muted);font-weight:500}.drm-counter-bar{height:8px;border-radius:999px;background:var(--panel2);overflow:hidden;border:1px solid var(--line)}.drm-counter-bar i{display:block;height:100%;background:var(--red);transition:width .4s cubic-bezier(.2,.7,.3,1)}.drm-counter-sub{font:11px IBM Plex Mono,monospace;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.drm-parts{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:16px 18px}.drm-parts-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;font:700 11px IBM Plex Mono,monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.drm-parts-n{color:var(--ink);background:var(--panel2);border:1px solid var(--line);border-radius:999px;padding:2px 10px}.drm-parts-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:8px;max-height:200px;overflow-y:auto}.drm-part{display:flex;align-items:center;gap:9px;padding:8px 11px;background:var(--panel2);border:1px solid var(--line);border-radius:10px}.drm-part-dot{width:8px;height:8px;flex:0 0 auto;border-radius:50%;background:var(--amber);box-shadow:0 0 6px var(--amber)}.drm-part-dot.done{background:var(--ok);box-shadow:0 0 6px var(--ok)}.drm-part-name{flex:1;min-width:0;font-size:13.5px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drm-part-ok{display:inline-flex;align-items:center;gap:4px;font:10.5px IBM Plex Mono,monospace;color:#4ac06c}.drm-part-wait{font:10px IBM Plex Mono,monospace;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.drm-kpis{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.drm-kpi{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:16px;text-align:center}.drm-kpi-v{font:700 26px IBM Plex Mono,monospace;letter-spacing:-.01em}.drm-kpi-v.accent{color:var(--red);font-size:22px}.drm-kpi-l{font:10px IBM Plex Mono,monospace;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-top:6px;line-height:1.3}.drm-analytics{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}.drm-compare,.drm-prio-card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:18px 20px}.drm-card-h{display:flex;align-items:center;gap:9px;font:700 11px IBM Plex Mono,monospace;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);margin-bottom:16px}.drm-card-h svg{color:var(--red)}.drm-score{display:flex;align-items:center;gap:16px;margin-bottom:16px}.drm-score-pct{font:700 40px IBM Plex Mono,monospace;letter-spacing:-.02em;color:var(--red)}.drm-score-sub{font-size:12px;color:var(--muted);line-height:1.4}.drm-score-rows{display:flex;flex-direction:column;gap:9px}.drm-score-row{display:grid;grid-template-columns:130px 1fr 44px;align-items:center;gap:12px;font-size:13px}.drm-score-row>span:first-child{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drm-score-bar{height:8px;border-radius:999px;background:var(--panel2);overflow:hidden;border:1px solid var(--line)}.drm-score-bar i{display:block;height:100%;background:#4ac06c}.drm-score-row b{font:700 12px IBM Plex Mono,monospace;text-align:right}.drm-empty-note{font-size:13px;color:var(--muted);line-height:1.5}.drm-donut-wrap{display:flex;align-items:center;gap:22px}.drm-donut{width:132px;height:132px;flex:0 0 auto;border-radius:50%;display:grid;place-items:center}.drm-donut-hole{width:84px;height:84px;border-radius:50%;background:var(--panel);display:grid;place-items:center;font:700 24px IBM Plex Mono,monospace;color:var(--ink)}.drm-donut-hole small{display:block;font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.drm-legend{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px}.drm-leg{display:inline-flex;align-items:center;gap:7px;font:12px IBM Plex Mono,monospace;color:var(--muted)}.drm-leg i{width:10px;height:10px;border-radius:3px}.drm-leg b{color:var(--ink);margin-left:auto}.drm-projection{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:radial-gradient(120% 90% at 50% -10%,color-mix(in oklab,var(--red) 14%,#05080d),#05080d 60%);display:grid;place-items:center;color:#eef4fb}.drm-proj-exit{position:absolute;top:22px;right:24px;width:44px;height:44px;border-radius:12px;border:1px solid rgba(255,255,255,.16);background:#ffffff0f;color:#eef4fb;display:grid;place-items:center}.drm-proj-inner{display:flex;flex-direction:column;align-items:center;gap:26px}.drm-proj-label{font:700 15px IBM Plex Mono,monospace;letter-spacing:.16em;text-transform:uppercase;color:color-mix(in oklab,var(--red) 60%,#eef4fb)}.drm-proj-code{display:flex;gap:min(3vw,26px)}.drm-proj-code span{font:800 min(15vw,150px)/1 "IBM Plex Mono",monospace;letter-spacing:.02em}.drm-proj-counter{font:700 44px IBM Plex Mono,monospace}.drm-proj-counter small{font-size:22px;color:color-mix(in oklab,#eef4fb 55%,transparent)}.drm-proj-hint{font:12px IBM Plex Mono,monospace;text-transform:uppercase;letter-spacing:.08em;color:#fff6}.drm-student{display:block;overflow-y:auto;background:radial-gradient(120% 70% at 50% -8%,color-mix(in oklab,var(--red) 9%,var(--bg)),var(--bg) 60%)}.drm-stu-wrap{width:100%;max-width:560px;margin:0 auto;padding:32px 18px 64px;min-height:100dvh}.drm-join,.drm-done{background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:28px 24px;box-shadow:0 20px 50px #00000047;text-align:center;margin-top:6vh}.drm-join .gate-mark,.drm-done-ic{margin:0 auto 16px}.drm-join h1,.drm-done h1{font-size:22px;margin:0 0 8px}.drm-join-sub{color:var(--muted);font-size:14px;line-height:1.5;margin:0 auto 20px;max-width:42ch}.drm-flabel{display:block;text-align:left;font:600 11px IBM Plex Mono,monospace;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:14px 0 6px}.drm-code-input{width:100%;text-align:center;font:800 30px IBM Plex Mono,monospace;letter-spacing:.3em;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--panel2);color:var(--ink);outline:none;text-transform:uppercase}.drm-code-input:focus{border-color:var(--red);box-shadow:0 0 0 3px color-mix(in oklab,var(--red) 18%,transparent)}.drm-text-input{width:100%;padding:13px 14px;border:1px solid var(--line);border-radius:12px;background:var(--panel2);color:var(--ink);font:inherit;font-size:16px;outline:none}.drm-text-input:focus{border-color:var(--red);box-shadow:0 0 0 3px color-mix(in oklab,var(--red) 18%,transparent)}.drm-join-btn{width:100%;margin-top:18px}.drm-done-ic{width:72px;height:72px;border-radius:20px;display:grid;place-items:center;background:color-mix(in oklab,var(--ok) 18%,var(--panel));color:#4ac06c}.drm-form{display:flex;flex-direction:column;gap:14px}.drm-form-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin:4px 2px 2px}.drm-form-head h1{margin:3px 0 0;font-size:21px;letter-spacing:-.01em}.drm-eyebrow{font:700 11px IBM Plex Mono,monospace;letter-spacing:.09em;text-transform:uppercase;color:var(--red)}.drm-badge{flex:0 0 auto;font:700 12px IBM Plex Mono,monospace;letter-spacing:.08em;color:var(--red);background:color-mix(in oklab,var(--red) 14%,transparent);border:1px solid color-mix(in oklab,var(--red) 32%,transparent);padding:6px 12px;border-radius:999px}.drm-section{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:16px 18px}.drm-sec-label{font:700 11px IBM Plex Mono,monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:14px}.drm-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.drm-grid.one{grid-template-columns:1fr}.drm-field{display:flex;flex-direction:column;gap:6px;min-width:0}.drm-field.wide{grid-column:1 / -1}.drm-field>span{font:600 11px IBM Plex Mono,monospace;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.drm-field input,.drm-field select,.drm-field textarea{width:100%;padding:11px 13px;border:1px solid var(--line);border-radius:10px;background:var(--panel2);color:var(--ink);font:inherit;font-size:16px;outline:none}.drm-field textarea{resize:vertical;min-height:64px}.drm-field input:focus,.drm-field select:focus,.drm-field textarea:focus{border-color:color-mix(in oklab,var(--red) 45%,var(--line))}.drm-prio{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.drm-prio-btn{display:flex;flex-direction:column;align-items:center;gap:3px;padding:12px 6px;border-radius:12px;border:1px solid var(--line);background:var(--panel2);color:var(--ink);transition:.14s}.drm-prio-btn b{font:800 18px IBM Plex Mono,monospace;color:var(--accent)}.drm-prio-btn em{font-size:11px;font-style:normal;color:var(--muted)}.drm-prio-btn:hover{border-color:color-mix(in oklab,var(--accent) 45%,var(--line))}.drm-prio-btn.on{border-color:var(--accent);background:color-mix(in oklab,var(--accent) 12%,var(--panel));box-shadow:0 0 0 1px var(--accent)}.drm-form-actions{display:flex;gap:10px;margin-top:4px}.drm-hint{font-size:12px;color:var(--muted);text-align:center;margin:2px 0 0;line-height:1.5}.drm-recap{text-align:left;margin:16px 0 6px;border:1px solid var(--line);border-radius:12px;overflow:hidden}.drm-recap-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 14px;border-bottom:1px solid var(--line);font-size:14px}.drm-recap-row:last-child{border-bottom:none}.drm-recap-row>span{color:var(--muted);font:11px IBM Plex Mono,monospace;text-transform:uppercase;letter-spacing:.04em}.drm-recap-row b{text-align:right}@media (max-width: 900px){.drm-home,.drm-top-grid,.drm-analytics{grid-template-columns:1fr}.drm-recent{position:static}.drm-kpis{grid-template-columns:repeat(2,1fr)}}@media (max-width: 560px){.drm-grid{grid-template-columns:1fr}.drm-prio{grid-template-columns:repeat(2,1fr)}.drm-donut-wrap{flex-direction:column;align-items:flex-start}}
