:root{
  --bg:#07101f;--panel:#0f1b2d;--panel2:#14243a;--line:#253a57;--text:#eef5ff;
  --muted:#94a8c2;--cyan:#35d3ff;--green:#28df99;--red:#ff6978;--amber:#ffbd4a;
  --radius:18px;--shadow:0 20px 50px rgba(0,0,0,.28)
}
*{box-sizing:border-box} body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;background:radial-gradient(circle at top right,#102a49 0,#07101f 35%);color:var(--text)}
button,input,select,textarea{font:inherit} button{cursor:pointer}
.hidden{display:none!important}.muted{color:var(--muted)}.fineprint{font-size:12px;color:var(--muted)}
.auth-shell{min-height:100vh;display:grid;place-items:center;padding:24px}
.auth-card{width:min(440px,100%);background:rgba(15,27,45,.94);border:1px solid var(--line);border-radius:24px;padding:32px;box-shadow:var(--shadow)}
.auth-card h1{margin:28px 0 6px}.brand{display:flex;align-items:center;gap:12px}.brand strong,.brand small{display:block}.brand small{color:var(--muted);font-size:11px}.brand-large .brand-mark{width:52px;height:52px}
.brand-mark{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,var(--cyan),var(--green));color:#00111d;font-weight:900}
label{display:grid;gap:7px;font-size:13px;color:#c5d4e8;margin-bottom:14px}
input,select,textarea{width:100%;border:1px solid var(--line);background:#091525;color:var(--text);padding:12px 13px;border-radius:10px;outline:none}
input:focus,select:focus,textarea:focus{border-color:var(--cyan);box-shadow:0 0 0 3px rgba(53,211,255,.12)}
.primary,.ghost{border:1px solid transparent;padding:11px 16px;border-radius:10px;font-weight:800}
.primary{background:linear-gradient(135deg,var(--cyan),var(--green));color:#04121d}.ghost{background:#12233a;border-color:var(--line);color:var(--text)}
.wide{width:100%}.link-btn{background:none;border:0;color:var(--cyan);padding:4px}
.app{min-height:100vh;display:grid;grid-template-columns:250px 1fr}.sidebar{position:sticky;top:0;height:100vh;padding:22px;border-right:1px solid var(--line);background:rgba(6,14,27,.94);display:flex;flex-direction:column}
nav{display:grid;gap:7px;margin-top:32px}nav button{border:0;background:transparent;color:var(--muted);text-align:left;padding:12px 14px;border-radius:10px;font-weight:700}
nav button:hover,nav button.active{background:#14253b;color:var(--text)}.sidebar-bottom{margin-top:auto}.user-badge{margin-bottom:12px;font-size:12px;color:var(--muted);overflow-wrap:anywhere}
.main{padding:26px 34px 48px;min-width:0}.topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px}.topbar h1{margin:0}.topbar p{margin:6px 0 0}
.status-pill{border:1px solid var(--line);background:#0d1b2d;border-radius:999px;padding:8px 12px;font-size:12px}.dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--green);margin-right:7px;box-shadow:0 0 12px var(--green)}
.page{display:none}.page.active{display:block}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:18px}
.kpi,.panel{background:linear-gradient(145deg,rgba(20,36,58,.95),rgba(12,25,43,.95));border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.kpi{padding:20px}.kpi span{color:var(--muted);font-size:13px}.kpi strong{display:block;font-size:28px;margin-top:8px}.panel{padding:20px}.panel h2{margin-top:0}
.two-col{display:grid;grid-template-columns:1.2fr 1fr;gap:18px}.panel-head,.toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.toolbar{margin-bottom:15px;justify-content:flex-start}.toolbar select{width:auto;min-width:170px}
.stack{display:grid;gap:12px}.mini-card,.bet-card,.pick-card{border:1px solid var(--line);background:#0a1728;border-radius:14px;padding:15px}
.mini-card-head,.bet-card-head{display:flex;justify-content:space-between;gap:12px}.tag{display:inline-flex;padding:4px 8px;border-radius:999px;background:#18314c;color:#bdeeff;font-size:11px;font-weight:800}
.progress{height:8px;background:#1e3047;border-radius:999px;overflow:hidden;margin:12px 0}.progress>span{display:block;height:100%;background:linear-gradient(90deg,var(--cyan),var(--green))}
.cards-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.bet-card h3,.pick-card h3{margin:10px 0 6px}.meta{color:var(--muted);font-size:12px}.money-positive{color:var(--green)}.money-negative{color:var(--red)}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px}.span-2{grid-column:span 2}
.drop-zone{border:2px dashed #315172;border-radius:18px;min-height:170px;display:grid;place-content:center;text-align:center;gap:5px;margin:18px 0;background:#091525}
.drop-zone:hover{border-color:var(--cyan)}.preview{display:block;max-width:100%;max-height:360px;margin:0 auto 18px;border-radius:14px}
.sport-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.sport-tabs button{border:1px solid var(--line);background:#0d1c2e;color:var(--muted);padding:9px 13px;border-radius:999px}
.sport-tabs button.active{background:var(--cyan);color:#00131e}
.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:14px}table{width:100%;border-collapse:collapse;min-width:760px}th,td{padding:13px 14px;text-align:left;border-bottom:1px solid var(--line);font-size:13px}th{color:#a9bad0;background:#0d1a2b}tr:last-child td{border-bottom:0}
.notice{border:1px solid #4c4625;background:#2a2512;color:#ffe1a0;border-radius:12px;padding:13px 15px;margin-bottom:16px}.toast{position:fixed;right:20px;top:20px;z-index:99;background:#10223a;border:1px solid var(--line);padding:12px 16px;border-radius:10px;transform:translateY(-130%);transition:.2s}.toast.show{transform:translateY(0)}
.small-btn{border:1px solid var(--line);background:#12243a;color:var(--text);padding:7px 9px;border-radius:8px;font-size:12px}
@media(max-width:1050px){.cards-grid{grid-template-columns:repeat(2,1fr)}.kpi-grid{grid-template-columns:repeat(2,1fr)}.two-col{grid-template-columns:1fr}}
@media(max-width:760px){.app{grid-template-columns:1fr}.sidebar{position:static;height:auto}.sidebar nav{grid-template-columns:repeat(2,1fr)}.sidebar-bottom{margin-top:18px}.main{padding:20px}.cards-grid,.kpi-grid,.form-grid{grid-template-columns:1fr}.span-2{grid-column:span 1}.topbar{align-items:flex-start}.status-pill{display:none}}
