:root{--navy: #1b2636;--navy-2: #0f1620;--card: #2e4058;--gold: #e7c15c;--gold-dk: #5a4a24;--text: #f2ece0;--text-dim: #b9b199;--text-muted: #898781;--green: #7bd88a;--red: #e08585;--gridline: #3a4a63;--series-ihia: #3987e5;--series-pataachada: #d95926}*{box-sizing:border-box}body{margin:0;background:var(--navy-2);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,sans-serif;font-variant-numeric:proportional-nums}.app-shell{display:flex;min-height:100vh}.sidebar{width:220px;background:var(--navy);border-right:1px solid var(--gold-dk);padding:20px 0;flex-shrink:0}.sidebar .brand{padding:0 20px 20px;font-size:1.2rem;font-weight:700;color:var(--gold)}.sidebar nav a{display:block;padding:10px 20px;color:var(--text-dim);text-decoration:none;font-size:.92rem}.sidebar nav a:hover{background:#e7c15c14;color:var(--text)}.sidebar nav a.active{color:var(--gold);background:#e7c15c1f;border-right:2px solid var(--gold)}.sidebar .logout{margin-top:24px;padding:10px 20px}.sidebar .logout button{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:.85rem}main.content{flex:1;padding:28px 32px;max-width:1100px}main.content h1{color:var(--gold);font-size:1.4rem;margin:0 0 20px}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:24px}.stat-tile{background:var(--card);border:1px solid var(--gold-dk);border-radius:10px;padding:16px 18px}.stat-tile .label{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.stat-tile .value{font-size:1.6rem;font-weight:700;color:var(--text);margin-top:4px;font-variant-numeric:tabular-nums}.stat-tile .value.gold{color:var(--gold)}.card{background:var(--card);border:1px solid var(--gold-dk);border-radius:10px;padding:20px;margin-bottom:20px}.card h2{font-size:.95rem;color:var(--gold);margin:0 0 14px;text-transform:uppercase;letter-spacing:.03em}.legend{display:flex;gap:16px;margin-bottom:10px;font-size:.82rem}.legend .item{display:flex;align-items:center;gap:6px;color:var(--text-dim)}.legend .swatch{width:10px;height:10px;border-radius:2px}table{width:100%;border-collapse:collapse;font-size:.88rem}th{text-align:left;color:var(--text-muted);font-weight:600;font-size:.72rem;text-transform:uppercase;letter-spacing:.03em;padding:8px 10px;border-bottom:1px solid var(--gridline)}td{padding:9px 10px;border-bottom:1px solid rgba(58,74,99,.4);color:var(--text)}tr:hover td{background:#e7c15c0a}.badge{display:inline-block;padding:2px 9px;border-radius:999px;font-size:.72rem;font-weight:600}.badge.active,.badge.ACTIVE,.badge.paid{background:#7bd88a26;color:var(--green)}.badge.pending,.badge.TRIAL{background:#e7c15c26;color:var(--gold)}.badge.suspended,.badge.OVERDUE,.badge.BLOCKED{background:#e0858526;color:var(--red)}.btn-sm{padding:5px 12px;font-size:.8rem;border-radius:6px;border:1px solid var(--gold-dk);background:#33405a;color:var(--text);cursor:pointer}.btn-sm.danger{border-color:var(--red);color:var(--red)}input[type=text],input[type=email],input[type=password]{width:100%;padding:10px 12px;border-radius:6px;border:1px solid var(--gold-dk);background:var(--navy);color:var(--text);font-size:1rem}.btn{padding:11px 20px;background:#4a3a12;color:var(--gold);border:1px solid var(--gold);border-radius:6px;font-weight:700;cursor:pointer}.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center}.login-card{width:340px;background:var(--card);border:1px solid var(--gold-dk);border-radius:12px;padding:28px}.login-card h1{color:var(--gold);font-size:1.3rem;margin:0 0 4px;text-align:center}.login-card p.sub{color:var(--text-dim);font-size:.85rem;text-align:center;margin:0 0 20px}.login-card label{display:block;font-size:.78rem;color:var(--gold);margin:12px 0 4px;text-transform:uppercase}.error-msg{color:var(--red);font-size:.85rem;margin-top:10px}.text-dim{color:var(--text-dim)}.text-muted{color:var(--text-muted)}
