:root{--bg:#0f1c2e;--card:#1b2b40;--edge:#24374f;--text:#fff;--dim:#9fb3c8;--accent:#2563eb;--link:#63b3ed;--good:#4ade80;--bad:#fca5a5}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif}button{cursor:pointer;font-family:inherit}.shell{min-height:100vh;display:flex}.side{background:var(--card);border-right:1px solid var(--edge);flex-shrink:0;width:180px;padding:16px 0}.side .brand{padding:0 16px 16px;font-size:15px;font-weight:800}.side .brand span{color:var(--dim);font-weight:600}.side a,.side button.navitem{text-align:left;width:100%;color:var(--dim);letter-spacing:.5px;background:0 0;border:none;padding:10px 16px;font-size:12px;font-weight:700;display:block}.side a.active,.side button.navitem.active{color:var(--text);border-left:3px solid var(--accent);background:var(--bg)}.content{flex:1;max-width:1000px;padding:24px}.content.wide{max-width:1400px}.grid-2{grid-template-columns:1fr 1fr;align-items:start;gap:14px;display:grid}@media (width<=800px){.grid-2{grid-template-columns:1fr}}.grid-4{grid-template-columns:repeat(4,1fr);align-items:start;gap:14px;display:grid}@media (width<=1300px){.grid-4{grid-template-columns:repeat(2,1fr)}}@media (width<=700px){.grid-4{grid-template-columns:1fr}}h1{margin:0 0 16px;font-size:20px}.card{background:var(--card);border:1px solid var(--edge);border-radius:10px;margin-bottom:14px;padding:16px}.stat-row{flex-wrap:wrap;gap:12px;margin-bottom:20px;display:flex}.stat{background:var(--card);border:1px solid var(--edge);border-radius:10px;min-width:120px;padding:14px 18px}.stat .n{font-size:24px;font-weight:800}.stat .l{color:var(--dim);margin-top:2px;font-size:12px}table{border-collapse:collapse;width:100%;font-size:13px}th{text-align:left;color:var(--dim);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--edge);padding:8px;font-size:11px}td{border-bottom:1px solid var(--edge);padding:10px 8px}tr.clickable{cursor:pointer}tr.clickable:hover td{background:var(--bg)}.badge{border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-block}.badge.good{color:var(--good);background:#14532d}.badge.bad{color:var(--bad);background:#4c1d1d}.badge.idle{color:var(--dim);background:#334155}.badge.free{color:var(--good);background:#14532d}.badge.freemium{color:#c7d2fe;background:#3730a3}.badge.paid{color:var(--bad);background:#4c1d1d}.badge.local{color:var(--dim);background:#334155}.badge.cloud{color:#93c5fd;background:#1e3a5f}.badge+.badge{margin-left:6px}.tag{background:var(--bg);border:1px solid var(--edge);color:var(--dim);border-radius:999px;margin:2px 4px 2px 0;padding:2px 8px;font-size:11px;display:inline-block}.btn{background:var(--accent);color:#fff;border:none;border-radius:7px;padding:9px 16px;font-size:13px;font-weight:700}.btn.ghost{background:var(--bg);border:1px solid var(--edge);color:var(--text)}.btn.danger{color:var(--bad);background:#4c1d1d}.btn:disabled{opacity:.5;cursor:default}.btn+.btn{margin-left:8px}input,select{background:var(--bg);border:1px solid var(--edge);color:var(--text);border-radius:8px;width:100%;padding:10px 12px;font-size:14px}.field{margin-bottom:12px}.field label{color:var(--dim);margin-bottom:6px;font-size:12px;display:block}.err{color:var(--bad);margin-top:8px;font-size:13px}.dim{color:var(--dim);font-size:13px}.back{color:var(--link);background:0 0;border:none;margin-bottom:14px;padding:0;font-size:13px}.login-wrap{justify-content:center;align-items:center;min-height:100vh;display:flex}.login-card{width:340px}
