:root{--bg:#07071a;--card:#111827;--card2:#0d1220;--border:rgba(245,197,24,.15);--gold:#f5c518;--text:#e2e8f0;--muted:#94a3b8;--green:#22c55e;--red:#ef4444;--blue:#3b82f6}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:Inter,system-ui,sans-serif;background:var(--bg);color:var(--text);min-height:100vh;line-height:1.5}
a{color:var(--gold);text-decoration:none}
.hidden{display:none!important}
.layout{display:flex;min-height:100vh}
.sidebar{width:220px;background:var(--card);border-right:1px solid var(--border);padding:20px 12px;flex-shrink:0}
.sidebar .brand{font-weight:800;color:var(--gold);font-size:16px;padding:8px 12px 20px}
.nav-item{display:block;width:100%;text-align:left;padding:10px 12px;border:none;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer;font-size:13px;margin-bottom:4px}
.nav-item.active,.nav-item:hover{background:rgba(245,197,24,.1);color:var(--gold)}
.main{flex:1;padding:24px;max-width:960px}
.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:12px;flex-wrap:wrap}
.topbar h1{font-size:20px;color:var(--gold)}
.topbar .sub{font-size:13px;color:var(--muted)}
.card{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:20px;margin-bottom:16px}
.card h3{font-size:14px;color:var(--gold);margin-bottom:12px}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-bottom:20px}
.stat{background:var(--card2);border:1px solid var(--border);border-radius:12px;padding:16px}
.stat .lbl{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.stat .val{font-size:26px;font-weight:800;margin-top:6px;color:var(--green)}
.stat .val.gold{color:var(--gold)}
.stat .val.muted{color:var(--muted);font-size:14px;font-weight:600}
.badge{display:inline-block;padding:4px 10px;border-radius:6px;font-size:11px;font-weight:700}
.badge-pending{background:rgba(234,179,8,.2);color:#eab308}
.badge-approved,.badge-trial,.badge-active{background:rgba(34,197,94,.2);color:var(--green)}
.badge-rejected,.badge-sem_credito{background:rgba(239,68,68,.2);color:var(--red)}
table{width:100%;border-collapse:collapse;font-size:13px}
th,td{padding:10px 8px;border-bottom:1px solid var(--border);text-align:left}
th{color:var(--muted);font-size:10px;text-transform:uppercase}
.pos{color:var(--green)}.neg{color:var(--red)}
label{display:block;font-size:11px;color:var(--muted);margin:10px 0 4px;text-transform:uppercase}
input,textarea,select{width:100%;padding:11px;border-radius:8px;border:1px solid var(--border);background:rgba(255,255,255,.05);color:var(--text);font-size:14px}
textarea{min-height:140px;resize:vertical}
.btn{background:var(--gold);color:#000;border:none;padding:11px 18px;border-radius:8px;font-weight:700;cursor:pointer;font-size:13px}
.btn-sm{padding:7px 12px;font-size:12px}
.btn-ghost{background:transparent;border:1px solid var(--border);color:var(--muted)}
.btn-ok{background:rgba(34,197,94,.2);color:var(--green);border:1px solid var(--green)}
.btn-no{background:rgba(239,68,68,.15);color:var(--red);border:1px solid var(--red)}
.btn-link{background:transparent;border:none;color:var(--gold);cursor:pointer;text-decoration:underline;font-size:13px}
.metodo-btn.active{background:rgba(245,197,24,.15);border-color:var(--gold);color:var(--gold)}
.pw-field{position:relative}
.pw-field input{padding-right:44px}
.pw-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:transparent;border:none;color:var(--muted);cursor:pointer}
.msg{font-size:12px;margin-top:10px;padding:8px 10px;border-radius:8px;display:none}
.msg.show{display:block}
.msg.ok{background:rgba(34,197,94,.15);color:var(--green)}
.msg.err{background:rgba(239,68,68,.15);color:var(--red)}
.empty{color:var(--muted);font-size:13px;padding:16px 0}
.script-card{background:var(--card2);border:1px solid var(--border);border-radius:12px;padding:16px;margin-bottom:12px}
.script-card pre{white-space:pre-wrap;font-size:12px;color:var(--muted);margin:10px 0;max-height:100px;overflow:auto}
.login-wrap{max-width:440px;margin:40px auto;padding:20px}
@media(max-width:768px){.layout{flex-direction:column}.sidebar{width:100%;display:flex;flex-wrap:wrap;gap:4px;padding:12px}.sidebar .brand{width:100%}.main{padding:16px}}
