:root{color-scheme:dark;--bg: #0f172a;--surface: rgba(11, 18, 32, .86);--border: rgba(148, 163, 184, .18);--text: #e2e8f0;--muted: #94a3b8;--brand: #f59e0b;--brand-deep: #ea580c;--radius: 20px;font-family:Segoe UI,Inter,sans-serif}*{box-sizing:border-box}html,body,#app{min-height:100%}body{margin:0;background:radial-gradient(circle at top left,rgba(245,158,11,.22),transparent 30%),radial-gradient(circle at top right,rgba(59,130,246,.16),transparent 30%),linear-gradient(180deg,#08111f,#0f172a 42%,#111827);color:var(--text)}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.login-shell,.app-shell{min-height:100vh}.login-shell{display:grid;place-items:center;padding:32px 20px}.login-card,.panel{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 24px 80px #0f172a59}.login-card{width:min(960px,100%);display:grid;grid-template-columns:1.1fr .9fr;overflow:hidden}.login-copy,.login-form{padding:40px}.eyebrow,.chip{display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:7px 12px;background:#f59e0b24;color:#fbbf24;font-size:.82rem;letter-spacing:.04em;text-transform:uppercase}.login-title,.page-title{margin:18px 0 12px;line-height:1.02}.login-title{font-size:clamp(2.3rem,4vw,4rem)}.page-title{font-size:clamp(1.6rem,2vw,2.2rem)}.muted{color:var(--muted)}.stack,.content-grid,.list,.sidebar-footer{display:grid;gap:14px}.field{display:grid;gap:8px}.field label{font-size:.92rem;color:var(--muted)}.input,.select{width:100%;border-radius:14px;border:1px solid var(--border);background:#0f172ab3;color:var(--text);padding:14px 15px}.button-row,.toolbar,.toolbar-actions,.filter-bar,.meta-row,.brand-row{display:flex;flex-wrap:wrap;gap:12px}.toolbar{justify-content:space-between;align-items:center;margin-bottom:20px}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;border:0;border-radius:14px;padding:0 18px;cursor:pointer}.button-primary{background:linear-gradient(135deg,var(--brand) 0%,var(--brand-deep) 100%);color:#1f1300;font-weight:700}.button-secondary{background:#94a3b81f;color:var(--text);border:1px solid var(--border)}.banner,.error{border-radius:16px;padding:12px 14px}.banner{border:1px solid rgba(245,158,11,.24);background:#f59e0b1a;color:#fcd34d}.error{border:1px solid rgba(249,115,22,.25);background:#f973161a;color:#fdba74}.app-shell{display:grid;grid-template-columns:280px minmax(0,1fr)}.sidebar{position:sticky;top:0;min-height:100vh;padding:24px 18px;border-right:1px solid var(--border);background:#070b18cc;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand-mark{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,var(--brand) 0%,var(--brand-deep) 100%);color:#1b1202;font-weight:800}.brand-title{font-size:1.2rem;font-weight:700}.nav-list{margin-top:28px;display:grid;gap:8px}.nav-link{display:flex;justify-content:space-between;align-items:center;border-radius:16px;padding:14px 16px;color:var(--muted);border:1px solid transparent}.nav-link.router-link-active{border-color:#f59e0b3d;background:#f59e0b1f;color:#fef3c7}.main-content{padding:26px}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.stat-card,.panel{padding:18px}.stat-value{font-size:2rem;font-weight:700;margin:10px 0 6px}.split-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:18px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:12px 10px;border-bottom:1px solid rgba(148,163,184,.12);vertical-align:top}th{color:var(--muted);font-size:.88rem;text-transform:uppercase;letter-spacing:.06em}.list-item{border:1px solid var(--border);border-radius:18px;padding:16px;background:#0f172a8c}.meta-pill{border-radius:999px;padding:6px 10px;background:#94a3b81f;color:var(--muted);font-size:.84rem}@media(max-width:980px){.login-card,.app-shell,.split-grid{grid-template-columns:1fr}.sidebar{position:relative;min-height:auto;border-right:0;border-bottom:1px solid var(--border)}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.login-copy,.login-form,.main-content{padding:20px}.stats-grid{grid-template-columns:1fr}}
