:root{color-scheme:dark;--bg:#08141e;--panel:#10212e;--raised:#152c3a;--border:#294655;--text:#e5f3fa;--muted:#9ab4c4;--accent:#4bd1fa;--danger:#ff9aac;--grid:#4bd1fa0d;--shadow:0 16px 45px #0003}
:root[data-theme=light]{color-scheme:light;--bg:#f3f8fc;--panel:#fff;--raised:#eaf4fa;--border:#bfd5e1;--text:#153044;--muted:#506d80;--accent:#007caa;--danger:#af2549;--grid:#007caa10;--shadow:0 16px 45px #18496912}
*{box-sizing:border-box}body{margin:0;background:var(--bg);background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-size:30px 30px;color:var(--text);font-family:Segoe UI,Arial,sans-serif;line-height:1.5}a{color:var(--accent)}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{background:var(--accent);color:var(--bg);border:1px solid var(--accent);border-radius:4px;padding:11px 16px;cursor:pointer;min-height:44px;font:13px Consolas,monospace;font-weight:600}:root[data-theme=light] button:not(.secondary):not(.text-button){color:#fff}button:disabled{opacity:.5;cursor:wait}.secondary{background:var(--raised);border-color:var(--border);color:var(--text)}.text-button{background:transparent;color:var(--accent);border-color:transparent}button:hover:not(:disabled){filter:brightness(1.1)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}input,select{width:100%;padding:12px;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:4px;min-height:44px}label{display:grid;gap:7px;font-size:13px;color:var(--muted)}h1,h2,h3{line-height:1.15;letter-spacing:-.03em}h1{font-size:clamp(24px,4vw,44px)}h2{font-size:22px}p{margin:10px 0 20px}.muted{color:var(--muted)}small{font-size:12px}.eyebrow{font:11px Consolas,monospace;letter-spacing:.15em;color:var(--accent)}.panel{padding:25px;background:var(--panel);border:1px solid var(--border);border-radius:6px;box-shadow:var(--shadow)}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.brand{width:145px;max-height:90px;object-fit:contain}:root[data-theme=light] .brand,:root[data-theme=light] .loading img{filter:invert(1)}.login-scene{max-width:1060px;min-height:100dvh;margin:auto;padding:65px 25px;display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:70px}.login-scene h1{font-size:clamp(36px,5vw,64px)}.login-card form{display:grid;gap:18px}.login-card .text-button{margin-top:14px}.activation{min-height:100dvh;display:grid;place-items:center;padding:25px}.activation>.panel{width:min(100%,500px)}.status{font-size:14px;color:var(--danger);min-height:20px}.shell{display:grid;grid-template-columns:245px minmax(0,1fr);min-height:100dvh}aside{padding:25px 18px;background:var(--panel);border-right:1px solid var(--border);position:sticky;top:0;height:100dvh;overflow:auto;display:flex;flex-direction:column}.brand-link{display:grid;gap:15px;text-decoration:none;font:10px Consolas,monospace;letter-spacing:.12em}.tenant{display:grid;gap:6px;padding:25px 0;border-bottom:1px solid var(--border);margin-bottom:18px}.tenant small{color:var(--muted)}nav{display:grid;gap:6px}nav a{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--muted);border:1px solid transparent;border-radius:4px;padding:13px 10px}nav a.active,nav a:hover{color:var(--accent);border-color:var(--border);background:var(--raised)}nav svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5}.sidebar-footer{display:grid;gap:8px;margin-top:auto;padding-top:30px}.workspace{min-width:0;padding:28px clamp(16px,3vw,45px)}.topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px}.topbar h1{margin:0;font-size:28px}.scope-badge{font:10px Consolas,monospace;color:var(--accent);border:1px solid var(--border);padding:8px}.filters{display:flex;gap:15px;align-items:end;flex-wrap:wrap}.filters label{flex:1;min-width:180px}.filters button{flex:0 0 auto}.metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px;margin:20px 0}.metric{border-top:2px solid var(--accent)}.metric strong{display:block;font:40px Consolas,monospace;margin:15px 0}.metric span{color:var(--muted);font-size:13px}.table-wrap{overflow:auto;border:1px solid var(--border);background:var(--panel)}table{width:100%;border-collapse:collapse;font-size:13px}th,td{padding:14px;text-align:left;border-bottom:1px solid var(--border);white-space:nowrap}th{font:11px Consolas,monospace;text-transform:uppercase;background:var(--raised);color:var(--muted)}td{color:var(--text)}tbody tr:hover{background:var(--raised)}.toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:20px}.toolbar span{font:12px Consolas,monospace;color:var(--muted)}.footnote{margin-top:24px;font-size:12px}dialog{background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:6px;width:min(900px,94vw);max-height:88dvh;overflow:auto;padding:25px}dialog::backdrop{background:#19364e66;backdrop-filter:blur(4px)}[hidden]{display:none!important}.svg-symbols{position:absolute;width:0;height:0;overflow:hidden}.loading{position:fixed;inset:0 0 0 245px;background:color-mix(in srgb,var(--bg) 80%,transparent);backdrop-filter:blur(3px);display:grid;place-items:center;z-index:100}.loading section{padding:32px;width:270px;text-align:center;background:var(--panel);border:1px solid var(--accent)}.loading img{width:95px;margin-bottom:22px}.loading strong{font:13px Consolas,monospace}.blocks{display:grid;grid-template-columns:repeat(3,8px);justify-content:center;gap:4px;margin-bottom:22px}.blocks i{width:8px;height:8px;background:var(--accent);animation:pulse 1s infinite alternate}.blocks i:nth-child(3n+2){animation-delay:.2s}.blocks i:nth-child(3n){animation-delay:.4s}#mobile-menu{display:none}body:not([data-page=portal]) .loading{inset:0}*{scrollbar-width:thin;scrollbar-color:var(--accent) var(--bg)}@keyframes pulse{from{opacity:.2}to{opacity:1}}@media(max-width:850px){.shell{display:block}aside{display:none;position:fixed;width:245px;inset:0 auto 0 0;z-index:150;box-shadow:var(--shadow)}.menu-open aside{display:flex}#mobile-menu{display:block}.scope-badge{display:none}.workspace{padding:18px 12px}.topbar{gap:12px}.topbar h1{font-size:24px}.loading{inset:110px 0 0}.login-scene{grid-template-columns:1fr;gap:25px;max-width:560px}.login-scene h1{font-size:38px}.login-scene>section:first-child .brand{width:100px}.panel{padding:20px}.filters label{min-width:100%;flex-basis:100%}input,select{font-size:16px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;scroll-behavior:auto!important}}
