/* ---- THEME (v2) ---- */
:root{
  --bg: #0e2622;
  --panel: #12332e;
  --panel-2: #0d2a25;
  --primary: #ffd34d;
  --primary-2: #ffbf1a;
  --text: #eaf4f1;
  --muted: #9fb9b2;
  --chip: #173e37;
  --success: #22e0b3;
  --accent: #14c9a8;
  --danger: #ff6a6a;
  --glass: rgba(255,255,255,.07);
  --radius: 16px;
  --radius-lg: 22px;
  --shadow: 0 8px 28px rgba(0,0,0,.35);
  --space-1: 4px; --space-2: 8px; --space-3: 12px; --space-4: 16px; --space-5: 20px; --space-6: 24px;
  --space-7: 28px; --space-8: 32px;
  --baseline: 8px;
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family: Manrope, system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Arial, sans-serif;
  color: var(--text);
  background:
    radial-gradient(1100px 700px at 85% -100px, rgba(66,255,182,.12), transparent 60%),
    radial-gradient(900px 600px at -10% -50px, rgba(109,164,255,.12), transparent 60%),
    var(--bg);
  line-height:calc(var(--baseline) * 0.2 + 1.4);
}
.bg-waves{position:fixed;inset:0;pointer-events:none;background:
  radial-gradient(1200px 800px at 20% -10%, rgba(255,255,255,.03), transparent 60%),
  radial-gradient(1200px 800px at 120% 110%, rgba(255,255,255,.04), transparent 60%);
  mask-image:radial-gradient(100% 100% at 50% 0%, #000 30%, transparent 80%);opacity:.9}
a{color:inherit;text-decoration:none}
.container{max-width:1160px;padding:0 20px;margin:0 auto}

/* Topbar */
.topbar{position:sticky;top:0;z-index:50;background:linear-gradient(0deg, rgba(0,0,0,.0), rgba(0,0,0,.25)), var(--panel-2);border-bottom:1px solid rgba(255,255,255,.06)}
.topbar__wrap{display:flex;align-items:center;gap:var(--space-4);height:64px}
.logo{font-weight:800;font-size:22px;display:flex;align-items:center;gap:6px}
.logo__star{color:var(--primary)}
.logo__accent{color:var(--primary)}
.nav{display:flex;gap:var(--space-3);flex:1 1 auto}
.nav a{padding:10px 12px;border-radius:12px;color:var(--text);opacity:.92}
.nav a.is-active,.nav a:hover{background:var(--glass)}
.auth{display:flex;gap:var(--space-2)}
.btn{display:inline-block;padding:10px 16px;border-radius:14px;font-weight:800;border:1px solid transparent;box-shadow:var(--shadow)}
.btn--ghost{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.1)}
.btn--primary{background:linear-gradient(180deg, var(--primary), var(--primary-2)); color:#1a1a1a}
.btn--light{background:#ffffff;color:#0f1f1a}
.btn--full{display:block;text-align:center;width:100%}

/* Promos */
.promos{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4);margin:var(--space-6) auto}
.promo{position:relative;min-height:128px;border-radius:var(--radius-lg);padding:var(--space-4);background:var(--panel);overflow:hidden;border:1px solid rgba(255,255,255,.07)}
.promo header{font-weight:800;font-size:18px;margin-bottom:6px}
.promo p{margin:0;color:var(--text);opacity:.9}
.promo .ribbon{position:absolute;top:12px;right:-22px;background:linear-gradient(180deg,#ff8080,#ff5a5a);color:#1b1b1b;padding:8px 32px;transform:rotate(20deg);font-weight:900;border-radius:10px}
.promo .badge{position:absolute;right:12px;bottom:12px;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.15);backdrop-filter:blur(4px);font-weight:700}
.badge--verified::before{content:"✓";margin-right:6px}
.promo--sweet{background:linear-gradient(135deg,#36255b,#6a3cab)}
.promo--flags{background:linear-gradient(135deg,#14295f,#3553b6)}
.promo--android{background:linear-gradient(135deg,#1c3b3c,#1a6a6c)}
.promo--moolah{background:linear-gradient(135deg,#6b2c12,#de7e1c)}
.flagrow{position:absolute;right:12px;bottom:12px;display:flex;gap:8px}
.flag{display:inline-block;width:36px;height:24px;border-radius:4px;border:2px solid rgba(255,255,255,.6);box-shadow:0 6px 14px rgba(0,0,0,.25) inset}
.flag--no{background:linear-gradient(#ef2b2d 0 33%, #ffffff 33% 66%, #002868 66% 100%)}
.flag--kz{background:#00afca}
.devices{position:absolute;right:12px;bottom:12px;display:flex;gap:8px}
.device{width:26px;height:40px;border-radius:6px;background:rgba(255,255,255,.25);border:2px solid rgba(255,255,255,.55)}
.device--tall{height:54px}

/* Heroes */
.hero-rail{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4);margin:var(--space-2) auto var(--space-3)}
.hero{position:relative;border-radius:26px;padding:24px;background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.08);overflow:hidden;min-height:220px;isolation:isolate}
.hero__body{position:relative;z-index:2;max-width:60%}
.hero h1{margin:0 0 8px;font-size:28px;line-height:1.2}
.hero--olympus::after,
.hero--dog::after{content:"";position:absolute;inset:0;background-size:cover;opacity:.9;mix-blend:screen;z-index:1}
.hero--olympus::after{background-image:radial-gradient(800px 300px at 30% 5%, rgba(255,219,77,.6), transparent 60%), url('assets/olympus.svg')}
.hero--dog::after{background-image:radial-gradient(800px 300px at 30% 5%, rgba(255,153,77,.6), transparent 60%), url('assets/doghouse.svg')}

/* Categories */
.categories{display:flex;flex-wrap:wrap;gap:var(--space-3);margin:var(--space-4) auto}
.chip{padding:10px 14px;border-radius:999px;background:var(--chip);border:1px solid rgba(255,255,255,.06);box-shadow:0 6px 14px rgba(0,0,0,.15) inset, var(--shadow)}
.chip:hover{background:#1e4c43}

/* Slots */
.section-head{display:flex;align-items:center;justify-content:space-between;margin:var(--space-3) 0}
.section-head h2{margin:0;font-size:22px}
.legend{color:var(--muted);font-weight:600}
.dot{display:inline-block;width:10px;height:10px;border-radius:50%;vertical-align:middle;margin-right:6px}
.dot--hot{background:#ff6a6a}.dot--new{background:#4dd3ff}
.slot-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:var(--space-4)}
.slot-card{background:var(--panel);border:1px solid rgba(255,255,255,.07);border-radius:18px;padding:12px;display:flex;flex-direction:column;gap:10px;box-shadow:var(--shadow)}
.slot-card__thumb{aspect-ratio: 3 / 2;border-radius:12px;background:
   linear-gradient(135deg, rgba(255,255,255,.15), rgba(255,255,255,.03)),
   radial-gradient(240px 110px at 30% 20%, rgba(255,205,80,.55), transparent 60%),
   url('assets/slot-bg.svg'); background-size:cover}
.slot-card__row{display:flex;align-items:center;justify-content:space-between;gap:10px}
.slot-card__title{font-weight:800}
.pill{padding:6px 10px;border-radius:999px;font-weight:800;border:1px solid rgba(255,255,255,.15)}
.pill--hot{background:rgba(255,106,106,.18);color:#ffdede}
.pill--new{background:rgba(77,211,255,.18);color:#d8f5ff}
.slot-card__meta{display:flex;gap:12px;color:var(--muted);font-weight:700}

/* Sports */
.sports{margin:var(--space-6) auto}
.cards-4{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4)}
.card{background:var(--panel);border:1px solid rgba(255,255,255,.07);border-radius:16px;padding:14px}
.match h3{margin:0 0 6px;color:var(--primary)}
.match__row{display:flex;justify-content:space-between;gap:8px;font-weight:700}
.kickoff{opacity:.8}
.odds{display:flex;gap:10px;margin-top:10px}
.odds span{background:#102f28;border:1px solid rgba(255,255,255,.07);padding:6px 10px;border-radius:10px}
.duel{margin-top:18px;background:
  radial-gradient(600px 200px at 20% 40%, rgba(30,255,206,.25), transparent 60%),
  radial-gradient(600px 200px at 80% 60%, rgba(255,255,128,.22), transparent 60%),
  linear-gradient(135deg, #0e3a31 0%, #0b2f27 100%);border:1px solid rgba(255,255,255,.07);border-radius:24px;padding:26px;display:flex;flex-direction:column;align-items:center;text-align:center}
.duel h2{font-size:40px;margin:8px 0 16px;letter-spacing:1px}
.duel h2 span{font-size:20px;opacity:.8}
.overline{letter-spacing:.12em;text-transform:uppercase;opacity:.85}

/* Live */
.live .live-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
.live-card{height:130px;display:grid;place-items:center;text-align:center;background:
  linear-gradient(120deg, rgba(255,255,255,.06), rgba(255,255,255,.02)),
  radial-gradient(260px 120px at 50% 10%, rgba(255,220,120,.35), transparent 60%);
  border:1px solid rgba(255,255,255,.07);border-radius:16px;font-weight:800;line-height:1.1}
.live-card .accent{color:var(--primary)}

/* Content */
.content{margin:var(--space-6) auto}
.content h2{font-size:28px;margin:0 0 12px}
.content h3{margin:18px 0 10px}
.columns{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4);margin:14px 0}
.card h3{margin:0 0 8px}
.card ul{margin:0;padding-left:18px}
.steps{margin:0 0 12px;padding-left:20px}
.table-wrap{overflow:auto;border:1px solid rgba(255,255,255,.06);border-radius:14px;background:rgba(0,0,0,.08);margin:12px 0}
.table{width:100%;border-collapse:separate;border-spacing:0}
.table th,.table td{padding:12px 14px;border-bottom:1px solid rgba(255,255,255,.06)}
.table thead th{position:sticky;top:0;background:#153a33}
.table.is-zebra tbody tr:nth-child(odd){background:rgba(255,255,255,.02)}
.table tr:last-child td{border-bottom:none}

/* Footer */
.footer{margin-top:26px;background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02)), #0c2622;border-top:1px solid rgba(255,255,255,.06)}
.footer__grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:22px 0}
.footer .links{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:6px}
.muted{color:var(--muted);margin:0}
.payrow{display:flex;flex-wrap:wrap;gap:10px;margin:6px 0 10px}
.pay{width:44px;height:44px;border-radius:50%;background:radial-gradient(circle at 30% 30%, rgba(255,255,255,.35), rgba(255,255,255,.05));border:1px solid rgba(255,255,255,.12)}
.apk{display:inline-grid;place-items:center;width:160px;height:64px;border-radius:14px;border:1px dashed rgba(255,255,255,.2);font-weight:800}
.footer__legal{text-align:center;color:var(--muted);font-size:13px;padding:14px 0;border-top:1px solid rgba(255,255,255,.06)}

/* Responsiveness */
@media (max-width: 1200px){
  .slot-grid{grid-template-columns:repeat(4,1fr)}
  .live .live-grid{grid-template-columns:repeat(4,1fr)}
  .hero-rail{grid-template-columns:1fr}
}
@media (max-width: 900px){
  .promos{grid-template-columns:repeat(2,1fr)}
  .cards-4{grid-template-columns:repeat(2,1fr)}
  .slot-grid{grid-template-columns:repeat(2,1fr)}
  .live .live-grid{grid-template-columns:repeat(2,1fr)}
  .hero__body{max-width:100%}
  .nav{display:none}
}
@media (max-width:520px){
  .promos{grid-template-columns:1fr}
  .cards-4{grid-template-columns:1fr}
}
