:root{--bg: #f4f6fa;--surface: #ffffff;--surface-muted: #eef1f8;--text: #192339;--muted: #5f6a83;--line: #dce3f1;--accent: #0f766e;--accent-strong: #115e59;font-family:Space Grotesk,Segoe UI,sans-serif;color:var(--text)}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at top left,#d6f4f1 0,var(--bg) 35%)}h1,h2,h3,p{margin:0}ul{margin:0;padding:0;list-style:none}input,select,button{font:inherit}.admin-shell{min-height:100vh;display:grid;grid-template-columns:260px 1fr}.sidebar{background:#10182a;color:#e4ebff;padding:24px 18px;display:flex;flex-direction:column;gap:28px}.sidebar-footer{margin-top:auto;display:grid;gap:10px}.sidebar-footer p{color:#9aa8cb;font-size:.85rem;word-break:break-all}.brand{display:flex;gap:12px;align-items:center}.brand h1{font-size:1.1rem}.brand p{color:#9aa8cb;font-size:.85rem}.brand-badge{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;font-weight:700;color:#09211f;background:#7ff4d6}.nav-list{display:grid;gap:8px}.nav-item{color:#b8c5e6;text-decoration:none;border-radius:8px;padding:10px 12px;font-weight:600}.nav-item:hover{background:#1a2642}.nav-item-active{color:#0f172a;background:#7ff4d6}.content-area{padding:22px}.topbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px}.topbar h2{font-size:1.4rem}.topbar p{color:var(--muted);margin-top:4px}.page-body{display:grid;gap:16px}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.health-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.stack-lg{display:grid;gap:16px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:18px;box-shadow:0 8px 22px #0810230f}.panel h3{margin-bottom:8px}.panel-header-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.panel-label{color:var(--muted);font-size:.86rem}.panel-value{margin-top:4px;font-size:1.55rem;font-weight:700}.line-list{display:grid;gap:10px}.line-list li{border:1px solid var(--line);background:var(--surface-muted);border-radius:8px;padding:10px 12px;font-size:.95rem}.kv-grid{display:grid;grid-template-columns:1fr auto;gap:8px 16px;align-items:center}.kv-grid p:nth-child(odd){color:var(--muted)}.table-wrap{overflow-x:auto;margin-top:10px}table{width:100%;border-collapse:collapse}th,td{text-align:left;border-bottom:1px solid var(--line);padding:11px 8px}th{color:var(--muted);font-size:.86rem}.muted{color:var(--muted)}.table-link{color:var(--accent);font-weight:600;text-decoration:none}.table-link:hover{text-decoration:underline}.profile-kv-grid{grid-template-columns:minmax(150px,220px) 1fr}.filters-row{margin-top:12px;display:grid;grid-template-columns:1fr 180px 180px;gap:10px}.filters-row input,.filters-row select,table select,.auth-card input{width:100%;padding:10px 12px;border-radius:10px;border:1px solid var(--line);background:#fff}.pager-row{margin-top:12px;display:flex;align-items:center;justify-content:flex-end;gap:10px}.primary-btn,.secondary-btn{border:0;border-radius:10px;padding:10px 14px;font-weight:700;cursor:pointer}.primary-btn{background:var(--accent);color:#fff}.primary-btn:hover{background:var(--accent-strong)}.primary-btn:disabled,.secondary-btn:disabled{opacity:.55;cursor:not-allowed}.secondary-btn{background:#e9eefb;color:#1f2b45}.secondary-btn:hover{background:#dbe4fb}.center-state{border:1px solid var(--line);background:var(--surface);border-radius:12px;padding:22px;color:var(--muted)}.error-state{border:1px solid #f0c1c1;background:#fff3f3;color:#8f1d1d;border-radius:10px;padding:10px 12px;margin-top:12px}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:20px}.auth-card{width:100%;max-width:430px;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:20px;display:grid;gap:12px}.auth-card p{color:var(--muted)}.auth-card label{display:grid;gap:6px;font-weight:600}@media (max-width: 980px){.admin-shell{grid-template-columns:1fr}.sidebar{gap:14px}.stats-grid,.health-grid{grid-template-columns:1fr 1fr}.filters-row{grid-template-columns:1fr}}@media (max-width: 640px){.content-area{padding:14px}.topbar{flex-direction:column;align-items:flex-start}.stats-grid,.health-grid{grid-template-columns:1fr}}
