:root{--volt: #FAE100;--volt-soft: #FFF6A8;--volt-glow: rgba(250,225,0,.45);--graphite: #221F1F;--graphite-2: #2D2928;--graphite-3: #3A3533;--concrete: #E9EAE5;--slab: #FFFFFF;--slab-2: #F5F6F2;--ink: #1D1F1C;--ink-2: #3E413C;--muted: #6B6E68;--line: #D9DBD3;--line-soft: #E6E7E1;--good: #1B7F52;--good-bg: #DDF0E5;--warn: #8F6B00;--warn-bg: #FBF0C4;--bad: #B8352A;--bad-bg: #F8E1DD;--info: #2A649C;--info-bg: #DCE9F5;--yellow: var(--volt);--charcoal: var(--graphite);--bg: var(--slab-2);--card: var(--slab);--ease-out: cubic-bezier(.16,1,.3,1);--ease-spring: cubic-bezier(.34,1.56,.64,1);--t-fast: .16s;--t-med: .32s;--sidebar-w: 256px}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:Archivo,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:14px;line-height:1.5;background:var(--concrete);color:var(--ink);-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums}a{color:inherit}button{font-family:inherit;cursor:pointer}input,select,textarea{font-family:inherit;color:var(--ink)}::selection{background:var(--volt);color:var(--graphite)}:focus-visible{outline:2px solid var(--graphite);outline-offset:2px;border-radius:4px}.side :focus-visible{outline-color:var(--volt)}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes sweep{0%{transform:translate(-100%);opacity:1}70%{opacity:1}to{transform:translate(100vw);opacity:0}}@keyframes fillX{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes fillY{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes pulseRing{0%{box-shadow:0 0 0 0 var(--volt-glow)}70%{box-shadow:0 0 0 9px #fae10000}to{box-shadow:0 0 #fae10000}}@keyframes blink{0%,to{opacity:1}50%{opacity:.35}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes flow{to{background-position:0 -40px}}@keyframes pop{0%{transform:scale(.6);opacity:0}to{transform:scale(1);opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}.app-shell{display:flex;min-height:100vh}.main{flex:1;display:flex;flex-direction:column;min-width:0}.side{width:var(--sidebar-w);background:var(--graphite);color:#edeae6;display:flex;flex-direction:column;flex-shrink:0;position:sticky;top:0;height:100vh;z-index:40;background-image:radial-gradient(circle at 1px 1px,rgba(255,255,255,.045) 1px,transparent 0);background-size:18px 18px}.brand{display:flex;align-items:center;gap:12px;padding:22px 20px 20px;text-decoration:none}.brand .mark{width:38px;height:38px;border-radius:6px;background:var(--volt);color:var(--graphite);display:grid;place-items:center;position:relative;overflow:hidden;flex-shrink:0;box-shadow:0 0 0 1px #0003,0 0 22px -6px var(--volt-glow)}.brand .mark svg{width:20px;height:20px;transition:transform .5s var(--ease-spring)}.brand:hover .mark svg{transform:rotate(-12deg) scale(1.12)}.brand .name{font-size:17px;font-weight:800;font-stretch:80%;letter-spacing:.2px;line-height:1.1}.brand .sub{font-size:11.5px;color:#a9a39d;margin-top:2px}.nav{padding:4px 12px 16px;flex:1;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--graphite-3) transparent}.nav .grp{font-size:11.5px;color:#8c8681;margin:18px 12px 6px;font-weight:600}.nav-link,.nav-dropdown-toggle{position:relative;width:100%;display:flex;align-items:center;gap:11px;padding:9px 12px;border-radius:5px;border:none;background:transparent;color:#cfc9c3;text-decoration:none;font-size:13.5px;font-weight:500;text-align:left;margin-bottom:2px;transition:background var(--t-fast),color var(--t-fast)}.nav-link:before{content:"";position:absolute;left:-12px;top:8px;bottom:8px;width:3px;border-radius:0 3px 3px 0;background:var(--volt);transform:scaleY(0);transform-origin:center;transition:transform var(--t-med) var(--ease-out);box-shadow:0 0 12px var(--volt-glow)}.nav-link:hover,.nav-dropdown-toggle:hover{background:#ffffff0e;color:#fff}.nav-link:hover:before{transform:scaleY(.45)}.nav-link.active{background:#fae1001a;color:#fff;font-weight:700}.nav-link.active:before{transform:scaleY(1)}.nav-link.active .ico{color:var(--volt)}.ico{width:18px;height:18px;flex-shrink:0;color:#9e9893;transition:color var(--t-fast),transform var(--t-med) var(--ease-spring)}.nav-link:hover .ico,.nav-dropdown-toggle:hover .ico{color:#fff;transform:translate(1px)}.nav-dropdown-toggle{font-weight:600}.nav-dropdown-toggle .chev,.nav-dropdown-section-toggle .chev{margin-left:auto;width:14px;height:14px;color:#7a756f;transition:transform var(--t-med) var(--ease-out)}.nav-dropdown-toggle[aria-expanded=true] .chev,.nav-dropdown-section-toggle[aria-expanded=true] .chev{transform:rotate(90deg);color:var(--volt)}.nav-count{margin-left:auto;font-size:11px;font-weight:700;color:#8c8681;background:#ffffff0f;padding:1px 7px;border-radius:10px}.nav-count+.chev{margin-left:6px}.collapse{display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--t-med) var(--ease-out),opacity var(--t-med);opacity:0}.collapse.open{grid-template-rows:1fr;opacity:1}.collapse>.collapse-inner{overflow:hidden;min-height:0}.nav-dropdown{margin:2px 0 6px 21px;padding-left:10px;border-left:1px solid rgba(255,255,255,.1)}.nav-dropdown .nav-link{font-size:12.5px;padding:7px 10px}.nav-dropdown .nav-link:before{left:-11px}.nav-dropdown .ico{width:15px;height:15px}.nav-dropdown-section-toggle{width:100%;display:flex;align-items:center;gap:8px;padding:7px 10px;background:transparent;border:none;color:#b7b2ac;font-size:12.5px;font-weight:600;text-align:left;border-radius:5px;transition:color var(--t-fast),background var(--t-fast)}.nav-dropdown-section-toggle:hover{color:#fff;background:#ffffff0a}.nav-dropdown-items{padding-left:8px}.nav-dropdown-items .nav-link{font-size:12px;font-weight:400;color:#b0aaa4;line-height:1.35}.foot{margin:0 12px 12px;padding:12px;border-radius:6px;background:var(--graphite-2);display:flex;align-items:center;gap:10px;border:1px solid rgba(255,255,255,.06)}.avatar{width:34px;height:34px;border-radius:50%;background:var(--graphite-3);display:grid;place-items:center;font-size:12px;font-weight:800;color:var(--volt);flex-shrink:0;box-shadow:inset 0 0 0 2px #fae10040}.foot .who{font-size:13px;font-weight:700;color:#f2efeb;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.foot .role{font-size:11.5px;color:#9c9691;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.foot>div:nth-child(2){min-width:0;flex:1}.logout-btn{background:transparent;border:1px solid rgba(255,255,255,.1);color:#b7b2ac;width:32px;height:32px;border-radius:5px;display:grid;place-items:center;flex-shrink:0;transition:all var(--t-fast)}.logout-btn:hover{color:var(--graphite);background:var(--volt);border-color:var(--volt)}.logout-btn svg{width:16px;height:16px}.mobile-bar,.scrim{display:none}.topbar{position:relative;flex-shrink:0;display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:28px 32px 20px;background:var(--slab);border-bottom:1px solid var(--line)}.topbar:before{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--line)}.topbar:after{content:"";position:absolute;left:0;bottom:-1px;height:2px;width:38%;background:linear-gradient(90deg,transparent,var(--volt) 60%,#fff 100%);box-shadow:0 0 12px var(--volt-glow);animation:sweep 1.25s var(--ease-out) .05s both}.topbar h1{font-size:30px;line-height:1.05;font-weight:800;font-stretch:72%;letter-spacing:-.2px;margin:0;animation:rise .5s var(--ease-out) both}.topbar .meta{font-size:13px;color:var(--muted);margin-top:6px;animation:fade .6s .1s both}.tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap;animation:fade .5s .15s both}.search{width:260px;height:38px;border-radius:5px;border:1px solid var(--line);background:var(--slab-2);display:flex;align-items:center;padding:0 12px;gap:8px;color:var(--muted);transition:border-color var(--t-fast),box-shadow var(--t-fast),width var(--t-med) var(--ease-out),background var(--t-fast)}.search svg{width:16px;height:16px;flex-shrink:0}.search:focus-within{border-color:var(--graphite);background:#fff;box-shadow:0 0 0 3px #fae10073;width:300px}.search input{background:none;border:none;outline:none;font-size:13px;width:100%}.btn{position:relative;overflow:hidden;isolation:isolate;border-radius:5px;font-size:13px;font-weight:700;padding:9px 16px;border:1px solid transparent;display:inline-flex;align-items:center;gap:7px;text-decoration:none;line-height:1.2;white-space:nowrap;transition:transform var(--t-fast) var(--ease-out),background var(--t-fast),color var(--t-fast),border-color var(--t-fast),box-shadow var(--t-fast)}.btn svg{width:16px;height:16px}.btn:active:not(:disabled){transform:scale(.96)}.btn.pri{background:var(--graphite);color:var(--volt)}.btn.pri:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:var(--volt);transform:translate(-101%);transition:transform .38s var(--ease-out)}.btn.pri:hover:not(:disabled){color:var(--graphite)}.btn.pri:hover:not(:disabled):after{transform:none}.btn.ghost{background:var(--slab);color:var(--ink);border-color:var(--line)}.btn.ghost:hover:not(:disabled){border-color:var(--graphite);background:var(--slab-2)}.btn.danger{background:var(--slab);color:var(--bad);border-color:var(--line)}.btn.danger:hover:not(:disabled){background:var(--bad);color:#fff;border-color:var(--bad)}.btn.good{background:var(--good);color:#fff}.btn.good:hover:not(:disabled){background:#156944;box-shadow:0 6px 18px -8px var(--good)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.busy:before{content:"";width:13px;height:13px;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;animation:spin .7s linear infinite}.content{flex:1;padding:28px 32px 48px;animation:rise .55s var(--ease-out) .08s both}.card{background:var(--slab);border:1px solid var(--line);border-radius:6px;padding:20px 22px;margin-bottom:20px}.card h3{font-size:16px;margin:0 0 14px;font-weight:800;font-stretch:85%;letter-spacing:.1px}.card-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:14px}.card-head h3{margin:0}.card-head .hint{font-size:12.5px;color:var(--muted)}.card-head a{font-size:12.5px;font-weight:700;text-decoration:none;border-bottom:2px solid var(--volt)}.card-head a:hover{background:var(--volt)}.stagger>*{animation:rise .55s var(--ease-out) both}.stagger>*:nth-child(1){animation-delay:.1s}.stagger>*:nth-child(2){animation-delay:.16s}.stagger>*:nth-child(3){animation-delay:.22s}.stagger>*:nth-child(4){animation-delay:.28s}.stagger>*:nth-child(5){animation-delay:.34s}.stagger>*:nth-child(6){animation-delay:.4s}.meters{display:grid;grid-template-columns:repeat(4,1fr);margin-bottom:20px;background:var(--graphite);color:#f2efeb;border-radius:6px;overflow:hidden;position:relative}.meter{padding:20px 22px 18px;position:relative}.meter+.meter{border-left:1px solid rgba(255,255,255,.08)}.meter .lbl{font-size:12.5px;color:#b0aaa4;font-weight:500}.meter .val{font-size:44px;line-height:1;font-weight:800;font-stretch:68%;margin-top:10px;letter-spacing:-.5px}.meter .val small{font-size:15px;font-weight:600;color:#9c9691;margin-left:4px;font-stretch:100%}.meter .delta{font-size:12px;margin-top:8px;color:#b0aaa4;display:flex;align-items:center;gap:6px}.meter .gauge{height:3px;border-radius:2px;background:#ffffff14;margin-top:14px;overflow:hidden}.meter .gauge>i{display:block;height:100%;background:var(--volt);transform-origin:left;animation:fillX 1.2s var(--ease-out) .35s both;box-shadow:0 0 10px var(--volt-glow)}.meter.is-bad .gauge>i{background:#e0645a;box-shadow:none}.meter.is-good .gauge>i{background:#4bc48a;box-shadow:none}.meter.is-hot .val{color:var(--volt)}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px}.stat{background:var(--slab);border:1px solid var(--line);border-radius:6px;padding:16px 18px}.stat .lbl{font-size:12.5px;color:var(--muted);font-weight:600}.stat .val{font-size:30px;font-weight:800;font-stretch:72%;margin-top:6px}.stat .delta{font-size:12px;font-weight:700;margin-top:4px}.dash-row{display:grid;grid-template-columns:1.35fr 1fr;gap:20px}.typebars{display:flex;flex-direction:column;gap:11px}.typebar{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:4px 12px;align-items:center}.typebar .name{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.typebar .num{font-size:13px;font-weight:800;text-align:right;grid-row:span 2}.typebar .track{height:8px;background:var(--slab-2);border-radius:2px;overflow:hidden;border:1px solid var(--line-soft)}.typebar .track>i{display:block;height:100%;background:var(--graphite);border-radius:1px;transform-origin:left;animation:fillX .9s var(--ease-out) both}.typebar:first-child .track>i{background:var(--volt);box-shadow:inset 0 0 0 1px #00000014}.charge{display:flex;height:34px;border-radius:4px;overflow:hidden;background:var(--slab-2);border:1px solid var(--line);margin:4px 0 18px}.charge>i{display:block;height:100%;transform-origin:left;animation:fillX .8s var(--ease-out) both;position:relative;transition:filter var(--t-fast)}.charge>i:hover{filter:brightness(1.12)}.charge>i+i{box-shadow:inset 2px 0 #fff}.pipeline{display:flex;flex-direction:column}.rate{margin-top:auto;padding-top:18px;border-top:1px solid var(--line-soft);display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.rate .big{font-size:48px;line-height:.9;font-weight:800;font-stretch:66%}.rate .big small{font-size:22px}.rate p{margin:0;font-size:13px;color:var(--muted);max-width:28ch;text-align:right}.legend{margin-bottom:18px;display:grid;grid-template-columns:1fr 1fr;gap:10px 18px}.legend-item{display:flex;align-items:center;gap:9px;font-size:13px}.legend-item .sw{width:10px;height:10px;border-radius:2px;flex-shrink:0}.legend-item b{margin-left:auto;font-weight:800}.table-wrap{overflow-x:auto;margin:0 -22px;padding:0 22px}table{width:100%;border-collapse:collapse}th{text-align:left;font-size:12px;color:var(--muted);font-weight:600;padding:0 12px 10px;border-bottom:1px solid var(--line);white-space:nowrap}td{padding:13px 12px;font-size:13px;border-bottom:1px solid var(--line-soft);vertical-align:middle}tbody tr{transition:background var(--t-fast)}tbody tr:hover{background:#fbfbf7}tbody tr:last-child td{border-bottom:none}.rows-animate tbody tr{animation:rise .45s var(--ease-out) both}.rows-animate tbody tr:nth-child(1){animation-delay:.12s}.rows-animate tbody tr:nth-child(2){animation-delay:.16s}.rows-animate tbody tr:nth-child(3){animation-delay:.2s}.rows-animate tbody tr:nth-child(4){animation-delay:.24s}.rows-animate tbody tr:nth-child(5){animation-delay:.28s}.rows-animate tbody tr:nth-child(6){animation-delay:.32s}.rows-animate tbody tr:nth-child(7){animation-delay:.36s}.rows-animate tbody tr:nth-child(8){animation-delay:.4s}.rows-animate tbody tr:nth-child(9){animation-delay:.44s}.rows-animate tbody tr:nth-child(10){animation-delay:.48s}.rows-animate tbody tr:nth-child(n+11){animation-delay:.52s}td.amt,th.amt{text-align:right}td.amt{font-weight:700}.docnum{font-weight:800;color:var(--ink);text-decoration:none;font-stretch:88%;letter-spacing:.2px;background-image:linear-gradient(var(--volt),var(--volt));background-size:0 40%;background-position:0 88%;background-repeat:no-repeat;transition:background-size .3s var(--ease-out)}a.docnum:hover{background-size:100% 40%}.subtle{color:var(--muted)}.pill{padding:4px 10px 4px 9px;border-radius:20px;font-size:12px;font-weight:700;display:inline-flex;align-items:center;gap:6px;white-space:nowrap;animation:pop .35s var(--ease-spring) both}.pill:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.pill.draft{background:#ecede8;color:#5e615b}.pill.submitted{background:var(--warn-bg);color:var(--warn)}.pill.in_review,.pill.review,.pill.pending{background:var(--info-bg);color:var(--info)}.pill.submitted:before,.pill.in_review:before,.pill.pending:before{animation:blink 1.6s ease-in-out infinite}.pill.approved{background:var(--good-bg);color:var(--good)}.pill.rejected{background:var(--bad-bg);color:var(--bad)}.field{margin-bottom:16px}.field label{font-size:12.5px;font-weight:600;color:var(--ink-2);display:block;margin-bottom:6px}.field label .req{color:var(--bad);margin-left:2px}.field input,.field select,.field textarea,.filter-row select,.filter-row input,select.input,input.input,textarea.input{width:100%;min-height:40px;border-radius:5px;border:1px solid var(--line);background-color:#fff;padding:0 12px;font-size:13.5px;transition:border-color var(--t-fast),box-shadow var(--t-fast)}.field textarea,textarea.input{padding:10px 12px;line-height:1.5;resize:vertical}.field input:hover,.field select:hover,.field textarea:hover,.filter-row select:hover{border-color:#b9bcb3}.field input:focus,.field select:focus,.field textarea:focus,.filter-row select:focus,select.input:focus,input.input:focus,textarea.input:focus{outline:none;border-color:var(--graphite);box-shadow:0 0 0 3px #fae10080}textarea{font-family:inherit}select{-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23221F1F' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:34px!important}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.form-grid .span-2{grid-column:1 / -1}.line-items input{border:1px solid transparent;border-radius:4px;padding:7px 8px;font-size:13px;width:100%;background-color:transparent;transition:border-color var(--t-fast),background var(--t-fast)}.line-items input:hover{background-color:var(--slab-2)}.line-items input:focus{outline:none;border-color:var(--graphite);background-color:#fff;box-shadow:0 0 0 3px #fae10073}.line-items tbody tr{animation:rise .35s var(--ease-out) both}.total-bar{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-top:18px;padding:14px 18px;border-radius:5px;background:var(--graphite);color:#f2efeb}.total-bar .lbl{font-size:13px;color:#b0aaa4}.total-bar .amt{font-size:26px;font-weight:800;font-stretch:72%;color:var(--volt)}.form-actions{display:flex;gap:10px;margin-top:22px;justify-content:flex-end;padding-top:18px;border-top:1px solid var(--line-soft);flex-wrap:wrap}.module-head{display:flex;align-items:center;gap:14px;margin-bottom:20px}.module-head .badge{width:44px;height:44px;border-radius:6px;background:var(--volt);display:grid;place-items:center;font-size:20px;flex-shrink:0;animation:pop .45s var(--ease-spring) both}.module-head h3{margin:0;font-size:20px}.module-head p{margin:2px 0 0;font-size:13px;color:var(--muted)}.sidepanel{width:340px;flex-shrink:0;position:sticky;top:20px}.detail-layout{display:flex;gap:20px;align-items:flex-start}.filter-row{display:flex;gap:10px;margin-bottom:18px;flex-wrap:wrap}.filter-row select{width:auto;min-width:200px}.doc-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;padding-bottom:18px;margin-bottom:18px;border-bottom:1px solid var(--line-soft)}.doc-hero .kind{font-size:13px;color:var(--muted);font-weight:600}.doc-hero .num{font-size:34px;font-weight:800;font-stretch:70%;line-height:1.05;margin-top:2px}.kv{display:grid;grid-template-columns:170px 1fr;gap:0;margin-bottom:18px}.kv>dt,.kv>dd{padding:10px 0;border-bottom:1px solid var(--line-soft);margin:0;font-size:13.5px}.kv>dt{color:var(--muted)}.kv>dd{font-weight:600;white-space:pre-wrap}.section-title{font-size:14px;font-weight:800;font-stretch:85%;margin:22px 0 8px}.wf{position:relative}.timeline-item{display:flex;gap:14px;animation:rise .45s var(--ease-out) both}.timeline-rail{display:flex;flex-direction:column;align-items:center}.timeline-dot{width:28px;height:28px;border-radius:50%;font-size:12.5px;display:grid;place-items:center;font-weight:800;flex-shrink:0;background:var(--slab-2);color:var(--muted);border:2px solid var(--line);transition:all var(--t-med)}.timeline-dot.approved{background:var(--good);color:#fff;border-color:var(--good);animation:pop .4s var(--ease-spring) both}.timeline-dot.rejected{background:var(--bad);color:#fff;border-color:var(--bad);animation:pop .4s var(--ease-spring) both}.timeline-dot.pending{background:var(--volt);color:var(--graphite);border-color:var(--graphite);animation:pulseRing 1.8s ease-out infinite}.timeline-line{width:2px;flex:1;background:var(--line);position:relative;overflow:hidden;min-height:18px}.timeline-line>i{position:absolute;top:0;right:0;bottom:0;left:0;transform-origin:top;animation:fillY .6s var(--ease-out) both}.timeline-line.done>i{background:var(--good)}.timeline-line.live>i{background:repeating-linear-gradient(180deg,var(--volt) 0 8px,transparent 8px 20px);animation:fillY .6s var(--ease-out) both,flow 1s linear infinite;background-size:100% 40px}.timeline-body{padding-bottom:22px;min-width:0}.timeline-body .role{font-size:14px;font-weight:700}.timeline-body .who{font-size:12.5px;color:var(--muted)}.timeline-body .quote{font-size:12.5px;margin-top:8px;padding:8px 12px;background:var(--slab-2);border-left:3px solid var(--volt);border-radius:0 4px 4px 0}.decision{margin-top:8px;padding-top:18px;border-top:1px dashed var(--line);animation:rise .4s var(--ease-out) both}.leave-countdown{display:flex;align-items:center;gap:18px;border-radius:6px;padding:18px 22px;margin-bottom:20px;animation:rise .5s var(--ease-out) .1s both}.leave-countdown .big{font-size:56px;font-weight:800;font-stretch:65%;line-height:1}.error-text{color:var(--bad);font-size:13px;padding:10px 14px;background:var(--bad-bg);border-radius:5px;border-left:3px solid var(--bad);animation:rise .3s var(--ease-out) both}.empty-state{text-align:center;padding:48px 20px;color:var(--muted);font-size:14px}.empty-state svg{width:42px;height:42px;color:#b9bcb3;margin-bottom:10px}.empty-state .btn{margin-top:14px}.skeleton{background:linear-gradient(90deg,var(--line-soft) 25%,#F4F5F1 50%,var(--line-soft) 75%);background-size:200% 100%;animation:shimmer 1.3s linear infinite;border-radius:4px}.meters .skeleton{background:linear-gradient(90deg,#ffffff0f 25%,#ffffff24,#ffffff0f 75%);background-size:200% 100%}.chip-row{display:grid;gap:12px;margin-bottom:20px}.chip{text-align:left;background:var(--slab);border:1px solid var(--line);border-radius:6px;padding:14px 16px;transition:border-color var(--t-fast),transform var(--t-fast) var(--ease-out),background var(--t-fast);position:relative;overflow:hidden}.chip:hover{border-color:var(--graphite)}.chip:active{transform:scale(.98)}.chip .lbl{font-size:12.5px;color:var(--muted);font-weight:600}.chip .val{font-size:30px;font-weight:800;font-stretch:70%;line-height:1.1;margin-top:4px}.chip.on{background:var(--graphite);border-color:var(--graphite);color:#f2efeb}.chip.on .lbl{color:#b0aaa4}.chip.on .val{color:var(--volt)}.wait{font-weight:700;display:inline-flex;align-items:center;gap:6px}.wait.urgent{color:var(--bad)}.wait.urgent:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;animation:blink 1s infinite}.wait.normal{color:var(--warn)}.login-wrap{min-height:100vh;display:grid;grid-template-columns:1.1fr 1fr;background:var(--slab)}.login-art{position:relative;background:var(--graphite);color:#f2efeb;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:40px 48px}.login-art:after{content:"";position:absolute;inset:auto 0 0 0;height:60%;background:linear-gradient(to top,var(--graphite) 25%,rgba(34,31,31,0));pointer-events:none}.login-art svg.circuit{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.circuit .trace{fill:none;stroke:#ffffff1f;stroke-width:1.5;stroke-dasharray:1400;stroke-dashoffset:1400;animation:draw 2.4s var(--ease-out) forwards}.circuit .pulse{fill:none;stroke:var(--volt);stroke-width:2.5;stroke-linecap:round;stroke-dasharray:60 1400;stroke-dashoffset:60;filter:drop-shadow(0 0 6px var(--volt));animation:run 4.5s linear infinite}.circuit .node{fill:var(--graphite);stroke:#ffffff4d;stroke-width:1.5;opacity:0;animation:fade .4s forwards}.circuit .node.hot{stroke:var(--volt);fill:var(--volt)}@keyframes draw{to{stroke-dashoffset:0}}@keyframes run{0%{stroke-dashoffset:60}to{stroke-dashoffset:-1400}}.login-art .brand{padding:0;position:relative;z-index:1}.login-copy{position:relative;z-index:1;max-width:440px}.login-copy h1{font-size:64px;line-height:.95;font-weight:800;font-stretch:62%;margin:0 0 16px;letter-spacing:-.5px}.login-copy h1 span{display:block;animation:rise .7s var(--ease-out) both}.login-copy h1 span:nth-child(2){animation-delay:.12s}.login-copy h1 span:nth-child(3){animation-delay:.24s;color:var(--volt)}.login-copy p{font-size:15px;color:#b9b3ad;max-width:360px;margin:0;animation:fade .8s .5s both}.login-form-side{display:grid;place-items:center;padding:40px 24px}.login-card{width:100%;max-width:380px;animation:rise .6s var(--ease-out) .2s both}.login-card h2{font-size:30px;font-weight:800;font-stretch:72%;margin:0 0 4px}.login-card .lead{color:var(--muted);font-size:14px;margin:0 0 28px}.login-card .btn{width:100%;justify-content:center;padding:12px 16px;font-size:14px;margin-top:8px}.login-card .error-text{margin-bottom:12px}.pw-wrap{position:relative}.pw-toggle{position:absolute;right:6px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--muted);font-size:12px;font-weight:700;padding:6px 8px;border-radius:4px}.pw-toggle:hover{color:var(--ink);background:var(--slab-2)}.login-card .shake{animation:shake .4s}@keyframes shake{20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}.boot{min-height:100vh;display:grid;place-items:center;background:var(--graphite)}.boot .mark{width:52px;height:52px;border-radius:8px;background:var(--volt);display:grid;place-items:center;animation:pulseRing 1.4s ease-out infinite}.boot svg{width:26px;height:26px}@media (max-width:1200px){.meters{grid-template-columns:repeat(2,1fr)}.meter:nth-child(3){border-left:none}.meter:nth-child(n+3){border-top:1px solid rgba(255,255,255,.08)}.dash-row{grid-template-columns:1fr}}@media (max-width:1024px){.detail-layout{flex-direction:column}.sidepanel{width:100%;position:static}}@media (max-width:900px){.side{position:fixed;left:0;top:0;bottom:0;transform:translate(-100%);transition:transform .38s var(--ease-out);box-shadow:none}.side.open{transform:none;box-shadow:24px 0 60px #00000059}.scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#14121280;z-index:30;opacity:0;pointer-events:none;transition:opacity .3s}.scrim.open{opacity:1;pointer-events:auto}.mobile-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;position:sticky;top:0;z-index:20;height:56px;padding:0 16px;background:var(--graphite);color:#f2efeb}.mobile-bar .brand{padding:0}.mobile-bar .brand .mark{width:30px;height:30px}.mobile-bar .brand .mark svg{width:16px;height:16px}.menu-btn{background:transparent;border:1px solid rgba(255,255,255,.15);color:#f2efeb;width:38px;height:38px;border-radius:5px;display:grid;place-items:center}.menu-btn svg{width:20px;height:20px}.topbar{padding:20px 16px 16px}.topbar h1{font-size:26px}.content{padding:18px 16px 40px}.search,.search:focus-within{width:100%}.tools{width:100%}.login-wrap{grid-template-columns:1fr}.login-art{min-height:240px;padding:28px 24px}.login-copy h1{font-size:44px}.login-copy p{display:none}.form-grid,.kv{grid-template-columns:1fr}.kv>dt{padding-bottom:0;border-bottom:none}.card{padding:16px}.table-wrap{margin:0 -16px;padding:0 16px}}@media (max-width:560px){.meters{grid-template-columns:1fr}.meter+.meter{border-left:none;border-top:1px solid rgba(255,255,255,.08)}.legend{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important;transition-duration:.01ms!important}.topbar:after{display:none}}
