.login-page{display:flex;align-items:center;justify-content:center;min-height:100vh;min-height:100dvh;padding:1.5rem;background:radial-gradient(ellipse 80% 40% at 50% 100%,rgba(45,170,190,.12),transparent 70%),#0a0c10;color:#e8edf7;font-family:system-ui,-apple-system,sans-serif}.login-card{width:min(100%,24rem);padding:2rem;border:1px solid rgba(125,211,252,.15);border-radius:1rem;background:#121a31d9;box-shadow:0 1rem 3rem #00000059}.login-card__eyebrow{margin:0 0 .5rem;color:#7dd3fc;font-size:.85rem;letter-spacing:.08em;text-transform:uppercase}.login-card h1{margin:0 0 .5rem;font-size:1.75rem}.login-card__subtitle{margin:0 0 1.5rem;color:#a8b3cf;line-height:1.5}.login-form{display:grid;gap:1rem}.login-form label{display:grid;gap:.4rem;font-size:.9rem;color:#c5cee0}.login-form input{padding:.7rem .85rem;border:1px solid rgba(125,211,252,.2);border-radius:.6rem;background:#0b1020;color:#e8edf7;font:inherit}.login-form input:focus{outline:2px solid rgba(125,211,252,.45);outline-offset:1px}.login-form button{margin-top:.25rem;padding:.75rem 1rem;border:none;border-radius:.6rem;background:linear-gradient(135deg,#0ea5e9,#0284c7);color:#fff;font:inherit;font-weight:600;cursor:pointer}.login-form button:disabled{opacity:.7;cursor:wait}.login-form__back{background:transparent;border:1px solid rgba(125,211,252,.25);color:#c5cee0}.login-form__error{margin:0;color:#fca5a5;font-size:.9rem}.page{max-width:960px;margin:0 auto;padding:2rem 1.25rem 3rem}.hero{margin-bottom:2rem}.eyebrow{margin:0 0 .5rem;color:#7dd3fc;font-size:.85rem;letter-spacing:.08em;text-transform:uppercase}.page h1{margin:0 0 .75rem;font-size:clamp(2rem,5vw,2.75rem)}.subtitle{margin:0 0 1.25rem;color:#a8b3cf;max-width:42rem}.page button{border:0;border-radius:999px;padding:.75rem 1.25rem;background:linear-gradient(135deg,#38bdf8,#6366f1);color:#fff;font-weight:600;cursor:pointer}.hero__logout{margin-left:.75rem;background:transparent;border:1px solid rgba(125,211,252,.35);color:#c5cee0}.page button:disabled{opacity:.7;cursor:wait}.error{color:#fca5a5}.warning{color:#fcd34d;background:#fbbf241a;border:1px solid rgba(251,191,36,.35);border-radius:.75rem;padding:.75rem 1rem}.empty,.meta{color:#94a3b8}.bet-grid{display:grid;gap:1rem}.bet-card{background:#121a31;border:1px solid #24304d;border-radius:1rem;padding:1.25rem}.bet-card__header{display:flex;justify-content:space-between;gap:1rem;align-items:start}.bet-card__competition{margin:0 0 .25rem;font-size:.8rem;color:#7dd3fc;text-transform:uppercase;letter-spacing:.06em}.bet-card__header h2{margin:0;font-size:1.15rem}.edge-badge{background:#22c55e26;color:#86efac;border:1px solid rgba(34,197,94,.35);border-radius:999px;padding:.25rem .65rem;font-size:.85rem;white-space:nowrap}.bet-card__market,.bet-card__pick{margin:.5rem 0 0;color:#cbd5e1}.bet-card__stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:1rem 0 0}.bet-card__stat{display:block;background:#0f1628;border-radius:.75rem;padding:.75rem;color:inherit;text-decoration:none}.bet-card__stat--link{border:1px solid transparent;transition:border-color .15s ease,background .15s ease}.bet-card__stat--link:hover{border-color:#3b82f6;background:#111b33}.bet-card__stat--link:focus-visible{outline:2px solid #7dd3fc;outline-offset:2px}.bet-card__stat dt{margin:0;font-size:.75rem;color:#94a3b8}.bet-card__stat-book{color:#7dd3fc}.bet-card__stat dd{margin:.25rem 0 0;font-size:1.1rem;font-weight:600}.bet-card__stat-odds{font-size:.9rem;font-weight:500;color:#cbd5e1}:root{color-scheme:dark;background:#0a0c10}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:#0a0c10}
