:root{--bg:#0f1115;--bg-elevated:#171a21;--bg-card:#1c2029;--border:#2a2f3a;--border-strong:#3a4150;--text:#e8eaed;--text-muted:#9aa3b2;--text-faint:#6b7280;--accent:#4f8cff;--accent-soft:#4f8cff24;--danger:#ff5d5d;--success:#3ecf8e;--plan-free-bg:#2a2f3a;--plan-free-fg:#c2c9d6;--plan-plus-bg:#4f8cff2e;--plan-plus-fg:#8fb6ff;--plan-casal-bg:#3ecf8e29;--plan-casal-fg:#6fe3b4;--radius:10px;--radius-sm:6px;--shadow:0 1px 3px #00000059}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:14px;line-height:1.5}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{letter-spacing:-.01em;margin:0;font-weight:600}.shell{grid-template-columns:220px 1fr;min-height:100vh;display:grid}.sidebar{background:var(--bg-elevated);border-right:1px solid var(--border);flex-direction:column;gap:24px;padding:20px 16px;display:flex}.brand{letter-spacing:-.02em;font-size:16px;font-weight:700}.brand small{color:var(--text-faint);text-transform:uppercase;letter-spacing:.08em;margin-top:2px;font-size:11px;font-weight:500;display:block}.nav{flex-direction:column;gap:2px;display:flex}.nav a{border-radius:var(--radius-sm);color:var(--text-muted);padding:8px 10px;font-weight:500;display:block}.nav a:hover{background:var(--bg-card);color:var(--text);text-decoration:none}.nav a[data-active=true]{background:var(--accent-soft);color:var(--text)}.sidebar-footer{color:var(--text-faint);margin-top:auto;font-size:12px}.sidebar-footer form{margin:0}.logout-btn{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);font:inherit;text-align:left;background:0 0;border:none;width:100%;padding:8px 10px}.logout-btn:hover{background:var(--bg-card);color:var(--danger)}.main{max-width:1100px;padding:28px 32px}.page-header{margin-bottom:24px}.page-header h1{font-size:22px}.page-header p{color:var(--text-muted);margin:4px 0 0}.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:28px;display:grid}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px}.kpi .kpi-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:12px}.kpi .kpi-value{letter-spacing:-.02em;margin-top:6px;font-size:30px;font-weight:700}.kpi .kpi-sub{color:var(--text-faint);margin-top:4px;font-size:12px}.section-title{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin:28px 0 12px;font-size:13px}.plan-bars{flex-direction:column;gap:12px;display:flex}.plan-bar-row{grid-template-columns:70px 1fr 48px;align-items:center;gap:12px;display:grid}.plan-bar-track{background:var(--bg-elevated);border-radius:999px;height:10px;overflow:hidden}.plan-bar-fill{background:var(--accent);border-radius:999px;min-width:2px;height:100%}.plan-bar-count{text-align:right;font-variant-numeric:tabular-nums;color:var(--text-muted)}.pill{border-radius:999px;padding:2px 10px;font-size:12px;font-weight:600;line-height:1.6;display:inline-block}.pill-free{background:var(--plan-free-bg);color:var(--plan-free-fg)}.pill-plus{background:var(--plan-plus-bg);color:var(--plan-plus-fg)}.pill-casal{background:var(--plan-casal-bg);color:var(--plan-casal-fg)}.table-wrap{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}table{border-collapse:collapse;width:100%}thead th{text-align:left;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);border-bottom:1px solid var(--border);padding:12px 16px;font-size:11px;font-weight:600}tbody td{border-bottom:1px solid var(--border);vertical-align:middle;padding:12px 16px}tbody tr:last-child td{border-bottom:none}tbody tr:hover{background:var(--bg-elevated)}.cell-muted{color:var(--text-muted)}.cell-mono{font-variant-numeric:tabular-nums}.search-form{gap:8px;max-width:460px;margin-bottom:18px;display:flex}input[type=text],input[type=search],input[type=password],select{background:var(--bg-elevated);border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text);font:inherit;width:100%;padding:9px 12px}input:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.btn{background:var(--accent);color:#fff;border-radius:var(--radius-sm);font:inherit;cursor:pointer;white-space:nowrap;border:none;padding:9px 16px;font-weight:600}.btn:hover{filter:brightness(1.08)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-ghost{background:var(--bg-elevated);border:1px solid var(--border-strong);color:var(--text)}.detail-grid{grid-template-columns:1.4fr 1fr;align-items:start;gap:18px;display:grid}@media (max-width:820px){.detail-grid{grid-template-columns:1fr}}.dl{grid-template-columns:130px 1fr;gap:8px 16px;margin:0;display:grid}.dl dt{color:var(--text-muted)}.dl dd{word-break:break-word;margin:0}.stat-row{gap:24px;display:flex}.stat{flex:1}.stat .stat-value{font-size:24px;font-weight:700}.stat .stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:12px}.plan-form{align-items:center;gap:10px;margin-top:12px;display:flex}.plan-form select{max-width:160px}.login-page{place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:360px;box-shadow:var(--shadow);padding:28px}.login-card h1{margin-bottom:4px;font-size:20px}.login-card p.sub{color:var(--text-muted);margin:0 0 20px;font-size:13px}.login-card form{flex-direction:column;gap:12px;display:flex}.alert{border-radius:var(--radius-sm);border:1px solid #0000;margin-bottom:16px;padding:12px 14px;font-size:13px}.alert-error{color:#ffb3b3;background:#ff5d5d1a;border-color:#ff5d5d59}.alert-warn{color:#ffd86b;background:#ffc40014;border-color:#ffc4004d}.alert-success{color:#8ef0c2;background:#3ecf8e1a;border-color:#3ecf8e4d}.alert-info{background:var(--accent-soft);color:#bcd2ff;border-color:#4f8cff4d}.empty{text-align:center;color:var(--text-muted);padding:40px 20px}.muted{color:var(--text-muted)}.back-link{margin-bottom:16px;font-size:13px;display:inline-block}.placeholder-box{border:1px dashed var(--border-strong);border-radius:var(--radius);color:var(--text-muted);padding:28px}.placeholder-box h3{color:var(--text);margin-bottom:8px}.placeholder-box ul{margin:12px 0 0;padding-left:18px}.placeholder-box li{margin:4px 0}
