/* =============================================
   Leonbets Mirror — leon.kinomooviz.ru
   Palette: deep charcoal #0d1117 + teal #00bcd4
   Combined design: best of all 4 previous refs
   ============================================= */

:root {
  --c-teal: #00bcd4;
  --c-teal-h: #26c6da;
  --c-teal-dim: rgba(0,188,212,.1);
  --c-teal-border: rgba(0,188,212,.22);
  --c-orange: #ff7043;
  --c-orange-h: #ff8a65;
  --c-green: #26a69a;
  --c-green-dim: rgba(38,166,154,.08);
  --c-red: #ef5350;
  --c-bg: #0d1117;
  --c-bg-s: #111620;
  --c-bg-card: #161c28;
  --c-bg-alt: #1a2030;
  --c-bg-hd: #080c14;
  --c-border: #1e2535;
  --c-border-l: #28304a;
  --c-text: #9ba3bf;
  --c-text-m: #4a5470;
  --c-text-l: #6b7594;
  --c-head: #e8ecf8;
  --font: -apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
  --w: 1100px;
  --toc-w: 248px;
  --r-sm: 4px;
  --r-md: 8px;
  --r-lg: 14px;
  --tr: .2s ease;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--font);background:var(--c-bg);color:var(--c-text);font-size:15px;line-height:1.75;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:var(--c-teal);text-decoration:none}
a:hover{color:var(--c-teal-h);text-decoration:underline}
ul,ol{list-style:none}

.container{max-width:var(--w);margin:0 auto;padding:0 24px}

/* ---- HEADER ---- */
.site-header{background:var(--c-bg-hd);border-bottom:1px solid var(--c-border);position:sticky;top:0;z-index:1000}
.hd-top{display:flex;align-items:center;justify-content:space-between;padding:11px 0}
.hd-logo img{height:30px;width:auto}
.hd-actions{display:flex;align-items:center;gap:10px}
.btn-login{display:inline-block;padding:8px 18px;border:1.5px solid var(--c-border-l);border-radius:var(--r-sm);color:var(--c-text-l);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;transition:border-color var(--tr),color var(--tr)}
.btn-login:hover{border-color:var(--c-teal);color:var(--c-teal);text-decoration:none}
.btn-reg{display:inline-block;padding:8px 20px;background:var(--c-teal);border-radius:var(--r-sm);color:#0d1117;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;transition:background var(--tr)}
.btn-reg:hover{background:var(--c-teal-h);color:#0d1117;text-decoration:none}
.hd-nav{border-top:1px solid var(--c-border);overflow-x:auto;scrollbar-width:none}
.hd-nav::-webkit-scrollbar{display:none}
.nav-list{display:flex;white-space:nowrap}
.nav-list a{display:inline-block;padding:10px 15px;font-size:12px;font-weight:700;color:var(--c-text-l);text-transform:uppercase;letter-spacing:.4px;border-bottom:2px solid transparent;transition:color var(--tr),border-color var(--tr)}
.nav-list a:hover,.nav-list a.active{color:var(--c-teal);border-bottom-color:var(--c-teal);text-decoration:none}
.mob-menu-btn{display:none;background:none;border:1px solid var(--c-border-l);color:var(--c-text-l);padding:6px 10px;border-radius:var(--r-sm);cursor:pointer;font-size:18px;line-height:1}

/* ---- HERO ---- */
.hero{background:linear-gradient(135deg,#090d18 0%,#0d1220 50%,#0d1117 100%);border-bottom:1px solid var(--c-border);padding:48px 0}
.hero-inner{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.hero-badge{display:inline-block;background:var(--c-teal);color:#0d1117;font-size:10px;font-weight:900;letter-spacing:1.2px;text-transform:uppercase;padding:4px 10px;border-radius:3px;margin-bottom:14px}
.hero-title{font-size:28px;font-weight:900;color:var(--c-head);line-height:1.2;margin-bottom:14px}
.hero-title em{color:var(--c-teal);font-style:normal}
.hero-desc{font-size:14px;color:var(--c-text-l);margin-bottom:26px;line-height:1.8}
.hero-ctas{display:flex;gap:12px;flex-wrap:wrap}
.btn-cta{display:inline-block;padding:13px 28px;background:var(--c-teal);color:#0d1117;font-size:14px;font-weight:900;text-transform:uppercase;letter-spacing:.5px;border-radius:var(--r-sm);transition:background var(--tr)}
.btn-cta:hover{background:var(--c-teal-h);color:#0d1117;text-decoration:none}
.btn-cta-out{display:inline-block;padding:13px 26px;border:1.5px solid var(--c-teal);color:var(--c-teal);font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;border-radius:var(--r-sm);transition:background var(--tr)}
.btn-cta-out:hover{background:var(--c-teal-dim);text-decoration:none}
.hero-img img{border-radius:var(--r-lg);border:1px solid var(--c-border-l);box-shadow:0 10px 50px rgba(0,0,0,.8)}

/* ---- MAIN LAYOUT ---- */
.main-wrap{display:grid;grid-template-columns:var(--toc-w) 1fr;gap:30px;max-width:var(--w);margin:0 auto;padding:40px 24px;align-items:start}

/* ---- TOC SIDEBAR ---- */
.toc-sidebar{position:sticky;top:76px}
.toc-box{background:var(--c-bg-card);border:1px solid var(--c-border);border-radius:var(--r-md);overflow:hidden}
.toc-hd{background:linear-gradient(90deg,#161c28,#111620);padding:11px 14px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--c-border)}
.toc-title{font-size:11px;font-weight:900;color:var(--c-teal);text-transform:uppercase;letter-spacing:.9px}
.toc-toggle{background:none;border:none;color:var(--c-text-m);font-size:17px;cursor:pointer;padding:0;line-height:1}
.toc-list{padding:6px 0}
.toc-list li{border-bottom:1px solid var(--c-border)}
.toc-list li:last-child{border-bottom:none}
.toc-list a{display:block;padding:8px 14px;font-size:12px;color:var(--c-text-l);font-weight:500;transition:background var(--tr),color var(--tr)}
.toc-list a:hover{background:var(--c-teal-dim);color:var(--c-teal);text-decoration:none}
.toc-list a.active{color:var(--c-teal);background:var(--c-teal-dim);border-left:3px solid var(--c-teal);padding-left:11px}

/* ---- ARTICLE ---- */
.article{min-width:0}
.article h2{font-size:20px;font-weight:900;color:var(--c-head);margin:36px 0 14px;padding-bottom:10px;border-bottom:2px solid var(--c-border);scroll-margin-top:78px}
.article h2:first-child{margin-top:0}
.article h3{font-size:15px;font-weight:700;color:var(--c-head);margin:22px 0 10px;scroll-margin-top:78px}
.article p{color:var(--c-text);margin-bottom:14px;line-height:1.8}
.article ul,.article ol{margin-bottom:14px}
.article ul li,.article ol li{color:var(--c-text);margin-bottom:7px;line-height:1.7;padding-left:18px;position:relative;font-size:14px}
.article ul li::before{content:'▸';color:var(--c-teal);position:absolute;left:0;font-size:11px;top:4px}
.article ol{counter-reset:oc}
.article ol li{counter-increment:oc}
.article ol li::before{content:counter(oc)'.';color:var(--c-teal);position:absolute;left:0;font-size:12px;font-weight:700;top:2px}

/* ---- INFO / DATA TABLES ---- */
.info-tbl-wrap,.data-tbl-wrap{border:1px solid var(--c-border);border-radius:var(--r-md);overflow:hidden;margin:18px 0 26px}
.data-tbl-wrap{overflow-x:auto}
.info-tbl,.data-tbl{width:100%;border-collapse:collapse}
.info-tbl caption{background:linear-gradient(90deg,#161c28,#111620);color:var(--c-teal);font-size:11px;font-weight:900;letter-spacing:1px;text-transform:uppercase;padding:10px 14px;text-align:left;border-bottom:1px solid var(--c-border)}
.info-tbl tr:nth-child(even){background:rgba(255,255,255,.015)}
.info-tbl tr:nth-child(odd){background:var(--c-bg-card)}
.info-tbl th,.info-tbl td{padding:10px 14px;font-size:13px;border-bottom:1px solid var(--c-border);text-align:left}
.info-tbl tr:last-child th,.info-tbl tr:last-child td{border-bottom:none}
.info-tbl th{color:var(--c-text-m);font-weight:600;width:40%}
.info-tbl td{color:var(--c-head);font-weight:500}
/* data table (content tables from article) */
.data-tbl{min-width:460px}
.data-tbl thead tr{background:linear-gradient(90deg,#161c28,#111620)}
.data-tbl thead th{padding:10px 13px;color:var(--c-teal);font-weight:700;text-align:left;font-size:11px;letter-spacing:.6px;text-transform:uppercase}
.data-tbl tbody tr:nth-child(even){background:rgba(255,255,255,.015)}
.data-tbl tbody tr:nth-child(odd){background:var(--c-bg-card)}
.data-tbl tbody tr:hover{background:var(--c-teal-dim)}
.data-tbl td{padding:10px 13px;border-bottom:1px solid var(--c-border);color:var(--c-text);vertical-align:top;line-height:1.6;font-size:13px}
.data-tbl tbody tr:last-child td{border-bottom:none}
.data-tbl td:first-child{font-weight:600;color:var(--c-head)}

/* ---- PROS / CONS ---- */
.pros-cons{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:20px 0}
.pros,.cons{background:var(--c-bg-card);border:1px solid var(--c-border);border-radius:var(--r-md);padding:18px}
.pros{border-top:3px solid var(--c-green)}
.cons{border-top:3px solid var(--c-red)}
.pros-title{font-size:11px;font-weight:900;color:var(--c-green);text-transform:uppercase;letter-spacing:.8px;margin-bottom:12px}
.cons-title{font-size:11px;font-weight:900;color:var(--c-red);text-transform:uppercase;letter-spacing:.8px;margin-bottom:12px}
.pros ul li::before{content:'✓';color:var(--c-green);position:absolute;left:0;font-size:11px;top:4px}
.cons ul li::before{content:'✗';color:var(--c-red);position:absolute;left:0;font-size:11px;top:4px}
.pros ul li,.cons ul li{font-size:13px;color:var(--c-text-l)}

/* ---- BONUS GRID ---- */
.bonus-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:20px 0}
.bonus-card{background:var(--c-bg-card);border:1px solid var(--c-border);border-radius:var(--r-md);overflow:hidden;transition:border-color var(--tr),transform var(--tr)}
.bonus-card:hover{border-color:var(--c-teal);transform:translateY(-2px)}
.bonus-card-img{width:100%;aspect-ratio:16/9;object-fit:cover}
.bonus-card-body{padding:14px}
.bonus-tag{display:inline-block;background:var(--c-teal);color:#0d1117;font-size:9px;font-weight:900;letter-spacing:1px;text-transform:uppercase;padding:3px 7px;border-radius:3px;margin-bottom:7px}
.bonus-title{font-size:14px;font-weight:700;color:var(--c-head);margin-bottom:5px;line-height:1.3}
.bonus-desc{font-size:12px;color:var(--c-text-m);margin-bottom:12px;line-height:1.6}
.bonus-btn{display:inline-block;background:var(--c-teal);color:#0d1117;font-size:11px;font-weight:900;padding:7px 16px;border-radius:var(--r-sm);text-transform:uppercase;letter-spacing:.4px;transition:background var(--tr)}
.bonus-btn:hover{background:var(--c-teal-h);color:#0d1117;text-decoration:none}

/* ---- GAME GRID ---- */
.game-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:18px 0}
.game-card{background:var(--c-bg-card);border:1px solid var(--c-border);border-radius:var(--r-md);overflow:hidden;position:relative;transition:border-color var(--tr),transform var(--tr)}
.game-card:hover{border-color:var(--c-teal);transform:translateY(-2px)}
.game-card-img{width:100%;aspect-ratio:3/4;object-fit:cover}
.game-card-name{padding:7px 9px;font-size:11px;font-weight:600;color:var(--c-text-l);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.live-badge{position:absolute;top:6px;left:6px;background:var(--c-red);color:#fff;font-size:9px;font-weight:900;padding:2px 5px;border-radius:3px;letter-spacing:.5px}
.game-overlay{position:absolute;inset:0;background:rgba(0,0,0,.78);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity var(--tr)}
.game-card:hover .game-overlay{opacity:1}
.game-play-btn{background:var(--c-teal);color:#0d1117;font-size:11px;font-weight:900;padding:8px 18px;border-radius:var(--r-sm);text-transform:uppercase}

/* ---- SEO FIGURES ---- */
.seo-fig{margin:22px 0;border-radius:var(--r-md);overflow:hidden;border:1px solid var(--c-border)}
.seo-fig img{width:100%}
.seo-fig figcaption{padding:7px 13px;font-size:12px;color:var(--c-text-m);background:var(--c-bg-card);border-top:1px solid var(--c-border)}

/* ---- STEPS ---- */
.steps-wrap{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center;margin:20px 0}
.steps-list{list-style:none}
.steps-list li{display:flex;gap:13px;margin-bottom:16px;align-items:flex-start}
.step-n{flex-shrink:0;width:28px;height:28px;border-radius:50%;background:var(--c-teal);color:#0d1117;font-size:12px;font-weight:900;display:flex;align-items:center;justify-content:center}
.step-t{font-size:13px;color:var(--c-text);line-height:1.65;padding-top:4px}
.steps-img img{border-radius:var(--r-md);border:1px solid var(--c-border)}

/* ---- CALLOUT ---- */
.callout{background:var(--c-teal-dim);border:1px solid var(--c-teal-border);border-left:4px solid var(--c-teal);border-radius:var(--r-md);padding:16px 18px;margin:20px 0}
.callout p{color:var(--c-text);margin-bottom:0;font-size:14px}
.callout strong{color:var(--c-teal)}
.callout-warn{background:rgba(255,112,67,.08);border-left-color:var(--c-orange);border-color:rgba(255,112,67,.2)}
.callout-warn strong{color:var(--c-orange)}

/* ---- FAQ ---- */
.faq-list{margin:18px 0}
.faq-item{border:1px solid var(--c-border);border-radius:var(--r-md);margin-bottom:9px;overflow:hidden}
.faq-q{width:100%;background:var(--c-bg-card);border:none;color:var(--c-head);font-size:14px;font-weight:600;padding:15px 18px;text-align:left;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:10px;transition:background var(--tr)}
.faq-q:hover{background:var(--c-bg-alt)}
.faq-q[aria-expanded="true"]{background:var(--c-teal-dim);color:var(--c-teal)}
.faq-icon{flex-shrink:0;width:20px;height:20px;border-radius:50%;border:1.5px solid var(--c-border-l);display:flex;align-items:center;justify-content:center;font-size:15px;color:var(--c-text-m);transition:transform .3s,border-color .2s}
.faq-q[aria-expanded="true"] .faq-icon{transform:rotate(45deg);border-color:var(--c-teal);color:var(--c-teal)}
.faq-a{display:none;padding:14px 18px;color:var(--c-text);font-size:14px;line-height:1.75;border-top:1px solid var(--c-border);background:var(--c-bg-s)}
.faq-a.open{display:block}

/* ---- FOOTER ---- */
.site-footer{background:var(--c-bg-hd);border-top:1px solid var(--c-border);padding:40px 0 22px;margin-top:60px}
.ft-top{display:grid;grid-template-columns:1fr 2fr;gap:36px;margin-bottom:28px}
.ft-logo img{height:26px;margin-bottom:10px}
.ft-tagline{font-size:13px;color:var(--c-text-m);line-height:1.7;max-width:270px}
.ft-nav{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.ft-nav h4{font-size:11px;font-weight:900;color:var(--c-text-m);text-transform:uppercase;letter-spacing:1px;margin-bottom:10px}
.ft-nav ul li{margin-bottom:7px}
.ft-nav ul li a{font-size:13px;color:var(--c-text-m);transition:color var(--tr)}
.ft-nav ul li a:hover{color:var(--c-teal);text-decoration:none}
.ft-divider{border:none;border-top:1px solid var(--c-border);margin:0 0 18px}
.ft-bottom{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.ft-copy{font-size:12px;color:var(--c-text-m)}
.ft-age{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;border:2px solid var(--c-text-m);font-size:10px;font-weight:700;color:var(--c-text-m)}
.ft-disc{font-size:11px;color:var(--c-text-m);line-height:1.6;margin-top:12px;padding-top:12px;border-top:1px solid var(--c-border)}

/* ---- RESPONSIVE ---- */
@media(max-width:900px){
  .main-wrap{grid-template-columns:1fr}
  .toc-sidebar{position:static}
  .hero-inner{grid-template-columns:1fr}
  .hero-img{display:none}
  .hero-title{font-size:22px}
  .bonus-grid{grid-template-columns:1fr 1fr}
  .game-grid{grid-template-columns:repeat(3,1fr)}
  .ft-top{grid-template-columns:1fr}
  .ft-nav{grid-template-columns:1fr 1fr}
  .steps-wrap{grid-template-columns:1fr}
  .steps-img{display:none}
  .pros-cons{grid-template-columns:1fr}
}
@media(max-width:600px){
  .container{padding:0 14px}
  .hd-nav{display:none}
  .hd-nav.open{display:block}
  .mob-menu-btn{display:block}
  .hero{padding:26px 0}
  .hero-title{font-size:19px}
  .main-wrap{padding:22px 14px}
  .bonus-grid{grid-template-columns:1fr}
  .game-grid{grid-template-columns:repeat(2,1fr)}
  .ft-nav{grid-template-columns:1fr}
  .article h2{font-size:17px}
}
