:root{--color-primary:#303d52;--color-primary-text:#fff;--color-primary-light:#5a6f8f;--color-primary-lighter:#7f94b0;--color-primary-dark:#001f3f;--color-secondary:#73524c;--color-secondary-light:#a9746d;--color-tertiary:#a3a96f;--color-tertiary-light:#bfc6a1;--color-quaternary:#5c677b;--color-quaternary-light:#7f8a9e;--color-quinary:#7d8465;--color-success:#4caf50;--color-warning:#ffc107;--color-error:#f44336;--color-info:#2196f3;--color-info-light:#64b5f6;--bg:var(--color-primary-dark);--bg-elev:var(--color-primary);--panel:color-mix(in oklab, var(--bg-elev) 88%, #000 12%);--panel-strong:color-mix(in oklab, var(--bg-elev) 72%, #000 28%);--line:color-mix(in oklab, var(--color-quaternary-dark,#3b4455) 72%, #fff 8%);--text:#f8fbff;--muted:var(--color-primary-lighter);--accent:var(--color-info);--accent-2:var(--color-info-light);--accent-contrast:#001225;--surface:color-mix(in oklab, var(--bg-elev) 70%, #071426 30%);--surface-muted:color-mix(in oklab, var(--bg) 72%, var(--bg-elev) 28%);--shadow:0 14px 34px #000c1e57;--radius:8px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{min-height:100%}body{color:var(--text);background:linear-gradient(180deg, #001a34 0%, var(--bg) 44%, #102642 100%);margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,Noto Sans,sans-serif}button,input,select{font:inherit}button{color:inherit}button:disabled{cursor:not-allowed;opacity:.48}.visually-hidden{clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.eyebrow{color:color-mix(in oklab, var(--color-tertiary-light) 84%, #fff 16%);letter-spacing:.16em;text-transform:uppercase;margin:0 0 4px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;font-weight:700;line-height:1.1;display:block}.app-shell{grid-template-rows:auto 1fr;min-height:100vh;display:grid}.topbar{z-index:10;background:linear-gradient(180deg, color-mix(in oklab, var(--bg-elev) 82%, #000 18%), color-mix(in oklab, var(--bg-elev) 72%, #000 28%));border-bottom:2px solid color-mix(in oklab, var(--bg) 58%, #000 42%);grid-template-columns:auto minmax(180px,260px) minmax(380px,1fr) minmax(180px,auto) auto;align-items:center;gap:10px;min-height:68px;padding:10px 14px;display:grid;position:sticky;top:0;box-shadow:0 12px 24px #000a1838}.topbar__brand,.brand-row,.page-header__title,.topbar__actions,.unit-switcher,.nav-tab,.primary-action,.secondary-action,.icon-btn,.profile-chip{align-items:center;display:inline-flex}.topbar__brand{gap:10px;min-width:0}.brand-mark{width:42px;height:42px;color:var(--accent-contrast);background:linear-gradient(180deg, var(--accent-2), var(--accent)), var(--accent);border:1px solid color-mix(in oklab, var(--accent-2) 52%, #fff 18%);border-radius:var(--radius);flex:none;place-items:center;display:inline-grid;box-shadow:inset 0 1px #ffffff47,0 12px 22px #0000003d}.brand-mark--small{width:36px;height:36px}.topbar__title strong,.brand-row h1{color:var(--text);margin:0;font-size:18px;line-height:1.1;display:block}.brand-row{gap:14px}.unit-switcher{min-width:0;height:40px;color:var(--text);background:var(--surface-muted);border:1px solid color-mix(in oklab, var(--line) 78%, transparent);border-radius:var(--radius);gap:8px;padding:0 30px 0 12px;position:relative}.unit-switcher select{width:100%;min-width:0;color:inherit;appearance:none;background:0 0;border:0;outline:0;font-size:13px;font-weight:650}.unit-switcher svg:last-child{pointer-events:none;position:absolute;right:10px}.app-nav{background:color-mix(in oklab, var(--bg-elev) 74%, #000 26%);border:1px solid var(--line);border-radius:10px;gap:5px;min-width:0;padding:4px;display:inline-flex;overflow-x:auto}.nav-tab{min-width:104px;height:38px;color:var(--muted);border-radius:var(--radius);cursor:pointer;white-space:nowrap;background:0 0;border:0;justify-content:center;gap:7px;padding:0 12px;font-size:13px;font-weight:700}.nav-tab:hover,.profile-chip:hover,.icon-btn:hover,.secondary-action:hover{border-color:var(--accent);color:var(--text)}.nav-tab.is-active,.profile-chip.is-active{color:var(--accent-contrast);background:linear-gradient(180deg, var(--accent), var(--accent-2));box-shadow:var(--shadow);border-color:#0000}.topbar__context{min-width:0;padding:0 8px;line-height:1.25}.topbar__context strong,.topbar__context span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.topbar__context strong{font-size:13px}.topbar__context span{color:var(--muted);font-size:12px}.topbar__actions{justify-content:flex-end;gap:8px}.icon-btn,.profile-chip,.secondary-action,.primary-action{border:1px solid var(--line);border-radius:var(--radius);cursor:pointer}.icon-btn{background:var(--surface-muted);justify-content:center;width:38px;height:38px;position:relative}.search-btn{width:44px}.profile-chip{max-width:190px;height:38px;color:var(--text);background:var(--surface-muted);gap:7px;padding:0 11px;font-size:13px;font-weight:700}.profile-chip span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.main-pane{width:min(1480px,100vw - 28px);margin:0 auto;padding:22px 0 34px}.page{gap:18px;display:grid}.page-header{justify-content:space-between;align-items:center;gap:14px;padding:2px 0 0;display:flex}.page-header__title{gap:12px;min-width:0}.page-header h1{color:var(--text);margin:0;font-size:28px;line-height:1.12}.page-header__actions{gap:8px;display:flex}.module-icon,.status-icon,.stat-card__icon{color:var(--accent-contrast);background:linear-gradient(180deg, var(--accent), var(--accent-2));border-radius:var(--radius);place-items:center;display:inline-grid}.module-icon{flex:none;width:40px;height:40px}.module-icon--flat{width:34px;height:34px;color:var(--text);background:color-mix(in oklab, var(--color-info) 28%, var(--surface-muted) 72%);border:1px solid color-mix(in oklab, var(--accent) 40%, var(--line) 60%)}.primary-action,.secondary-action{justify-content:center;gap:8px;min-height:38px;padding:0 14px;font-size:13px;font-weight:750}.primary-action{color:var(--accent-contrast);background:linear-gradient(180deg, var(--accent), var(--accent-2));border-color:#0000}.secondary-action{color:var(--text);background:var(--surface-muted)}.stats-grid,.module-grid,.detail-grid,.license-grid,.membership-grid{gap:12px;display:grid}.stats-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.stat-card,.data-surface,.module-preview,.license-card,.membership-card,.unit-overview,.profile-main,.gate-card{background:linear-gradient(180deg, color-mix(in oklab, var(--surface) 92%, #fff 4%), color-mix(in oklab, var(--surface) 82%, #000 18%));border:1px solid color-mix(in oklab, var(--line) 82%, transparent);border-radius:var(--radius);box-shadow:var(--shadow)}.stat-card{grid-template-columns:auto 1fr;grid-template-areas:"icon label""icon value";align-items:center;gap:3px 12px;min-height:86px;padding:16px;display:grid}.stat-card__icon{grid-area:icon;width:38px;height:38px}.stat-card span{color:var(--muted);text-transform:uppercase;grid-area:label;font-size:12px;font-weight:650}.stat-card strong{grid-area:value;font-size:26px;line-height:1}.stat-card--accent .stat-card__icon{background:linear-gradient(180deg, var(--color-tertiary-light), var(--color-tertiary))}.stat-card--success .stat-card__icon{background:linear-gradient(180deg, #79d27d, var(--color-success))}.data-surface,.unit-overview{padding:16px}.data-surface--plain{box-shadow:none}.surface-header,.license-card__top,.module-preview__head{justify-content:space-between;align-items:center;gap:12px;display:flex}.surface-header{margin-bottom:14px}.surface-header h2,.module-preview h2,.profile-main h2,.unit-identity h2,.license-card h3{margin:0}.surface-header h2{font-size:16px}.status-pill{min-height:24px;color:color-mix(in oklab, var(--text) 86%, #fff 14%);background:color-mix(in oklab, var(--color-quaternary) 28%, var(--surface-muted) 72%);border:1px solid color-mix(in oklab, var(--line) 78%, transparent);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;padding:0 9px;font-size:12px;font-weight:760;display:inline-flex}.status-pill--accent{color:var(--accent-contrast);background:color-mix(in oklab, var(--accent) 74%, #fff 4%);border-color:#0000}.status-pill--success{color:#061d09;background:color-mix(in oklab, var(--color-success) 78%, #fff 14%);border-color:#0000}.status-pill--warning{color:#261a00;background:color-mix(in oklab, var(--color-warning) 80%, #fff 12%);border-color:#0000}.member-list{gap:8px;display:grid}.member-row{background:color-mix(in oklab, var(--surface-muted) 82%, #000 18%);border:1px solid color-mix(in oklab, var(--line) 64%, transparent);border-radius:var(--radius);grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:10px;min-height:62px;padding:10px;display:grid}.avatar,.profile-avatar{color:var(--accent-contrast);background:linear-gradient(180deg, var(--color-tertiary-light), var(--color-tertiary));border-radius:var(--radius);flex:none;place-items:center;font-weight:850;display:inline-grid}.avatar{width:38px;height:38px}.member-row__main{min-width:0}.member-row__main strong,.member-row__main span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.member-row__main strong{font-size:14px}.member-row__main span{color:var(--muted);font-size:12px}.unit-overview{grid-template-columns:minmax(280px,.9fr) minmax(420px,1.1fr);align-items:stretch;gap:18px;display:grid}.unit-identity{align-items:center;gap:16px;min-width:0;display:flex}.unit-identity p,.profile-main p,.license-card p,.muted-line{color:var(--muted)}.unit-identity p,.license-card p,.profile-main p{margin:6px 0 0}.unit-badge{width:64px;height:64px;color:var(--text);background:color-mix(in oklab, var(--color-secondary) 44%, var(--surface-muted) 56%);border:1px solid color-mix(in oklab, var(--color-secondary-light) 44%, var(--line) 56%);border-radius:var(--radius);flex:none;place-items:center;display:inline-grid}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-item{background:color-mix(in oklab, var(--surface-muted) 86%, #000 14%);border:1px solid color-mix(in oklab, var(--line) 62%, transparent);border-radius:var(--radius);grid-template-columns:auto 1fr;gap:4px 8px;min-width:0;padding:12px;display:grid}.detail-item svg{color:var(--color-tertiary-light);grid-row:1/span 2}.detail-item span{color:var(--muted);font-size:12px}.detail-item strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:14px;overflow:hidden}.license-grid,.module-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.license-card,.module-preview,.membership-card{min-width:0;padding:14px}.license-card h3{margin-top:16px;font-size:17px}.license-card p,.muted-line{font-size:13px}.muted-line{margin-top:12px;display:block}.module-preview{min-height:190px}.module-preview .eyebrow{margin-top:34px}.module-preview h2{font-size:22px}.empty-state{min-height:180px;color:var(--muted);background:color-mix(in oklab, var(--surface-muted) 76%, #000 24%);border:1px dashed color-mix(in oklab, var(--line) 86%, transparent);border-radius:var(--radius);place-items:center;gap:10px;display:grid}.profile-layout{grid-template-columns:minmax(300px,.8fr) minmax(420px,1.2fr);gap:16px;display:grid}.profile-main{align-items:center;gap:16px;min-width:0;padding:18px;display:flex}.profile-avatar{width:72px;height:72px;font-size:28px}.membership-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.membership-card{background:color-mix(in oklab, var(--surface-muted) 84%, #000 16%);box-shadow:none;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:4px 10px;display:grid}.membership-card svg{color:var(--color-tertiary-light);grid-row:1/span 2}.membership-card strong,.membership-card span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.membership-card span{color:var(--muted);font-size:12px}.gate{background:linear-gradient(180deg, #001a34 0%, var(--bg) 52%, #102642 100%);place-items:center;min-height:100vh;padding:24px;display:grid}.login-shell{grid-template-columns:minmax(300px,.95fr) minmax(340px,430px);align-items:stretch;gap:18px;width:min(920px,100%);display:grid}.gate-card{width:min(100%,430px);padding:24px}.gate-card--compact{text-align:center;justify-items:center;gap:14px;display:grid}.gate-card h1{margin:0;font-size:26px}.gate-copy{color:var(--muted);margin:14px 0 20px;line-height:1.5}.login-intro{background:linear-gradient(180deg, color-mix(in oklab, var(--surface) 86%, #fff 5%), color-mix(in oklab, var(--surface) 80%, #000 20%));border:1px solid color-mix(in oklab, var(--line) 82%, transparent);border-radius:var(--radius);min-width:0;box-shadow:var(--shadow);align-content:center;gap:22px;padding:28px;display:grid}.login-logo-frame{background:color-mix(in oklab, var(--bg) 62%, var(--bg-elev) 38%);border:1px solid color-mix(in oklab, var(--line) 78%, transparent);border-radius:14px;place-items:center;width:96px;height:96px;display:grid;overflow:hidden;box-shadow:inset 0 1px #ffffff1f,0 18px 32px #00000042}.login-logo{object-fit:cover;border-radius:10px;width:84px;height:84px;display:block}.login-intro h1{margin:0;font-size:44px;line-height:1}.login-intro p,.login-panel__heading p{color:var(--muted);margin:10px 0 0;line-height:1.55}.login-intro p{max-width:31rem;font-size:16px}.login-intro__meta{flex-wrap:wrap;gap:8px;display:flex}.login-intro__meta span{min-height:28px;color:color-mix(in oklab, var(--text) 88%, #fff 12%);background:color-mix(in oklab, var(--color-quaternary) 30%, var(--surface-muted) 70%);border:1px solid color-mix(in oklab, var(--line) 78%, transparent);border-radius:999px;align-items:center;padding:0 10px;font-size:12px;font-weight:760;display:inline-flex}.login-panel{align-content:center;gap:14px;display:grid}.login-panel__heading{margin-bottom:4px}.login-panel__heading h2{margin:0;font-size:24px;line-height:1.1}.login-panel__heading p{font-size:14px}.field{gap:7px;display:grid}.field span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:750}.field input{width:100%;min-height:42px;color:var(--text);background:var(--surface-muted);border:1px solid var(--line);border-radius:var(--radius);outline:0;padding:0 12px}.field input:focus{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in oklab, var(--accent) 30%, transparent)}.inline-alert{color:#ffd7d4;background:color-mix(in oklab, var(--color-error) 16%, var(--surface-muted) 84%);border:1px solid color-mix(in oklab, var(--color-error) 46%, var(--line) 54%);border-radius:var(--radius);align-items:center;gap:8px;padding:10px 12px;font-size:13px;display:flex}.inline-alert--wide{width:min(720px,100%);margin:42px auto 0}.spinner{border:3px solid color-mix(in oklab, var(--line) 82%, transparent);border-top-color:var(--accent-2);border-radius:999px;width:34px;height:34px;animation:.8s linear infinite spin}.status-icon{width:48px;height:48px;margin-bottom:16px}.status-icon--warning{color:#261a00;background:linear-gradient(180deg, #ffe08a, var(--color-warning))}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=1180px){.topbar{grid-template-columns:auto minmax(180px,1fr) auto;grid-template-areas:"brand unit actions""nav nav nav"}.topbar__brand{grid-area:brand}.unit-switcher{grid-area:unit}.app-nav{grid-area:nav}.topbar__context{display:none}.topbar__actions{grid-area:actions}}@media (width<=900px){.stats-grid,.license-grid,.module-grid,.unit-overview,.profile-layout{grid-template-columns:1fr}.login-shell{grid-template-columns:1fr;width:min(560px,100%)}.gate-card{width:100%}.detail-grid,.membership-grid{grid-template-columns:1fr}}@media (width<=720px){.topbar{grid-template-columns:1fr;grid-template-areas:"brand""unit""nav""actions";padding:10px;position:static}.topbar__actions{justify-content:start;overflow-x:auto}.app-nav{width:100%}.nav-tab{min-width:96px}.profile-chip{max-width:180px}.main-pane{width:min(100vw - 20px,1480px);padding-top:16px}.page-header{flex-direction:column;align-items:flex-start}.member-row{grid-template-columns:auto minmax(0,1fr)}.member-row .status-pill{justify-self:start}.login-intro{padding:22px}.login-intro h1{font-size:36px}}
