:root{--bg:#0b0f19;--card:#ffffff0f;--card2:#ffffff14;--text:#ffffffeb;--muted:#ffffff9e;--line:#ffffff1f;--brand:#7c5cff;--brand2:#22c55e;--danger:#ef4444;--shadow:0 18px 60px #00000059;--r:18px;--r2:14px;--pad:18px;--font:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,"Noto Sans","Apple Color Emoji","Segoe UI Emoji"}*{box-sizing:border-box}html,body{height:100%}body{font-family:var(--font);color:var(--text);background:radial-gradient(1200px 700px at 20% 10%,#7c5cff38,transparent 60%),radial-gradient(900px 500px at 80% 20%,#22c55e29,transparent 55%),var(--bg);margin:0}a{color:inherit;text-decoration:none}a:hover{text-decoration:none}.bg{min-height:100%;padding:22px 18px 70px}.shell{max-width:1100px;margin:0 auto}.container{width:100%}.topbar{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px;display:flex}.brand .h1{margin:0}.h1{letter-spacing:.2px;font-size:26px;font-weight:900}.sub{color:var(--muted);margin:6px 0 0;font-size:13px;line-height:1.35}.card{background:linear-gradient(180deg,var(--card2),var(--card));border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:var(--pad)}.hr{background:var(--line);border:0;height:1px;margin:18px 0}.row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;display:flex}.grid{display:grid}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}@media (max-width:900px){.grid-3{grid-template-columns:1fr}.topbar{flex-direction:column}}.kpi{letter-spacing:.3px;margin-top:4px;font-size:30px;font-weight:950}.progress{border:1px solid var(--line);background:#ffffff14;border-radius:999px;width:100%;height:12px;overflow:hidden}.progress>div{background:linear-gradient(90deg,var(--brand),var(--brand2));border-radius:999px;height:100%}.btn{border:1px solid var(--line);color:var(--text);cursor:pointer;-webkit-user-select:none;user-select:none;background:#ffffff0f;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:10px 14px;font-weight:800;display:inline-flex}.btn:hover{background:#ffffff1a}.btn:active{transform:translateY(1px)}.btn-primary{background:linear-gradient(90deg,#7c5cfff2,#22c55e8c);border-color:#7c5cff73}.btn-primary:hover{filter:brightness(1.05)}.select,.input{border:1px solid var(--line);width:100%;color:var(--text);background:#00000040;border-radius:12px;outline:none;padding:10px 12px}.select:focus,.input:focus{border-color:#7c5cff8c;box-shadow:0 0 0 3px #7c5cff2e}.tablewrap{border-radius:var(--r);border:1px solid var(--line);background:#ffffff0a;overflow:auto}table{border-collapse:collapse;width:100%;min-width:760px}thead th{text-align:left;color:var(--muted);border-bottom:1px solid var(--line);background:#00000026;padding:12px 14px;font-size:12px;font-weight:900}tbody td{vertical-align:top;border-bottom:1px solid #ffffff0f;padding:14px}.muted{color:var(--muted);font-size:12px}.err{color:#ffffffe6;background:#ef44441a;border:1px solid #ef444459;border-radius:12px;padding:10px 12px;font-weight:700}.badge{background:#ffffff0f;border:1px solid #ffffff24;border-radius:999px;align-items:center;gap:8px;padding:6px 10px;font-size:12px;font-weight:900;display:inline-flex}.badge-violet{background:#7c5cff24;border-color:#7c5cff73}.badge-amber{background:#f59e0b24;border-color:#f59e0b73}.badge-emerald{background:#10b98124;border-color:#10b98173}.badge-slate{background:#94a3b81a;border-color:#94a3b859}.seg{background:#0003;border:1px solid #ffffff1f;border-radius:999px;gap:8px;padding:8px;display:flex;overflow:auto}.seg-btn{color:#ffffffc7;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:999px;align-items:center;gap:8px;padding:10px 12px;font-weight:900;display:inline-flex}.seg-btn:hover{color:#ffffffeb;background:#ffffff0f}.seg-active{color:#fffffff2;background:#ffffff14;border-color:#ffffff24}.dot{border-radius:999px;width:10px;height:10px;display:inline-block;box-shadow:0 0 0 3px #ffffff0f}.dot-violet{background:#7c5cfff2}.dot-amber{background:#f59e0bf2}.dot-emerald{background:#10b981f2}.dot-slate{background:#94a3b8d9}.tablewrap{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}tbody td{padding:16px 14px}tbody tr:hover{background:#ffffff0e}thead th{letter-spacing:.3px;text-transform:uppercase}
