:root{--navy:#132a43;--blue:#235dd5;--ink:#172e49;--muted:#65758a;--line:#e4e9f0}body{background:#f4f6fa;color:var(--ink);font-size:.94rem}.sidebar{background:var(--navy);width:242px;position:fixed;inset:0 auto 0 0;padding:30px 20px;color:#bdcbdc;display:flex;flex-direction:column}.wordmark{font-size:1.65rem;font-weight:800;letter-spacing:.06em;color:white;text-decoration:none}.brand-mark{color:#79b4ff}.sidebar small{font-size:.68rem;letter-spacing:.15em;text-transform:uppercase}.sidebar nav a{display:block;border-radius:7px;padding:11px 13px;margin:4px 0;color:#d7e1ed;text-decoration:none}.sidebar nav a:hover,.sidebar nav a.active{background:#ffffff17;color:white}.sidebar hr{border-color:#60758d}.phase{margin-top:auto;font-size:.76rem;color:#a8bcd2}.workspace{margin-left:242px;min-height:100vh}.topbar{min-height:82px;background:white;border-bottom:1px solid var(--line);padding:16px 36px;display:flex;align-items:center;justify-content:space-between;gap:20px}.topbar select{min-width:220px}.content{max-width:1440px;margin:auto;padding:34px 36px}.eyebrow{color:var(--muted);text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:700;margin-bottom:10px}h1{font-weight:700;font-size:1.8rem;letter-spacing:-.04em}h2{font-size:1.1rem;font-weight:700}.card{border:1px solid var(--line);box-shadow:0 3px 12px #172e4903;border-radius:12px}.metric{font-size:2rem;font-weight:700;margin-top:14px}.metric-label{color:var(--muted);font-size:.82rem}.btn-primary{background:var(--blue);border-color:var(--blue)}.table{--bs-table-bg:transparent}.table th{font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);background:#f8fafc;font-weight:600;padding:14px 18px}.table td{padding:17px 18px;vertical-align:middle;border-color:#edf0f5}.table td a{text-decoration:none}.badge{font-weight:500;padding:.4em .65em}.badge-soft{background:#edf3ff;color:#235dd5}.badge-active{background:#e7f5ed;color:#207047}.badge-suspended{background:#fff1d9;color:#8e5c11}.badge-archived{background:#edf0f4;color:#626d7b}.subtle{color:var(--muted)}.form-label{font-size:.86rem;font-weight:600}.form-control,.form-select{padding:.62rem .85rem;border-color:#dce3ec}.login-wrap{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.login-brand{background:var(--navy);padding:65px 12%;display:flex;flex-direction:column;justify-content:space-between;color:#fff}.login-brand h1{font-size:2.8rem;line-height:1.15;max-width:460px}.login-brand p{max-width:380px;color:#afc4de;line-height:1.8}.login-form{padding:60px 14%;display:flex;justify-content:center;flex-direction:column;background:#fff}.login-form .wordmark{color:var(--ink);margin-bottom:40px}.footer{font-size:.75rem;color:#7c8999;padding:24px 36px}.empty{padding:44px;text-align:center;color:var(--muted)}.audit-action{font-family:ui-monospace,monospace;font-size:.8rem}.recovery-codes{font-family:ui-monospace,monospace;font-size:1.1rem;line-height:2}.secret{overflow-wrap:anywhere;font-family:ui-monospace,monospace}.page-actions{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:26px}.mobile-brand{display:none}.permissions{max-width:800px}.w-role{max-width:280px}.current-context{background:#eaf1ff;border:1px solid #dbe6ff;padding:12px 18px;border-radius:8px;margin-bottom:24px}.pagination a{color:var(--blue)}@media(max-width:991px){.sidebar{width:200px;padding:24px 14px}.workspace{margin-left:200px}.topbar{padding:15px 20px}.content{padding:25px 20px}.login-brand{padding:45px 10%}.login-brand h1{font-size:2.2rem}.login-form{padding:45px 10%}}@media(max-width:700px){.sidebar{position:static;width:100%;padding:16px 20px}.sidebar nav{display:flex;flex-wrap:wrap;margin-top:12px!important}.sidebar nav a{font-size:.8rem;padding:7px}.sidebar small,.sidebar hr,.sidebar .phase{display:none}.workspace{margin-left:0}.topbar{flex-wrap:wrap;gap:10px}.topbar select{min-width:0;max-width:220px}.content{padding:24px 16px}.page-actions{align-items:flex-start;flex-wrap:wrap}h1{font-size:1.5rem}.login-wrap{display:block}.login-brand{display:none}.login-form{min-height:100vh;padding:35px 8%}.footer{padding:20px 16px}.metric{font-size:1.6rem}}
