:root {
  --bg: #0A1628;
  --bg2: #0C1A30;
  --sidebar: #091422;
  --card: #0E1E36;
  --card2: #122340;
  --accent: #F5A623;
  --accent2: #FFB84D;
  --accent-glow: rgba(245,166,35,0.18);
  --accent-dim: rgba(245,166,35,0.08);
  --gold: #F5A623;
  --gold2: #E09000;
  --text: #E2E8F4;
  --muted: #6E7E96;
  --border: rgba(245,166,35,0.14);
  --border2: rgba(255,255,255,0.06);
  --radius: 10px;
  --radius-sm: 6px;
  --header-h: 62px;
  --sidebar-w: 220px;
  --t: 0.2s ease;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;font-size:15px;}
body{background:var(--bg);color:var(--text);font-family:'Inter',system-ui,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased;min-height:100vh;}
a{color:var(--accent2);text-decoration:none;transition:color var(--t);}
a:hover{color:#fff;}
img{max-width:100%;display:block;}
.container{max-width:1200px;margin:0 auto;padding:0 16px;}

h1,h2,h3{font-family:'Nunito',sans-serif;line-height:1.25;}
h1{font-size:clamp(1.6rem,3.5vw,2.4rem);font-weight:800;}
h2{font-size:clamp(1.15rem,2.5vw,1.5rem);font-weight:700;}
h3{font-size:1.05rem;font-weight:700;}

.btn-cta{
  display:inline-flex;align-items:center;justify-content:center;
  background:var(--gold);color:#0A1628;
  font-family:'Nunito',sans-serif;font-weight:800;font-size:0.9rem;
  padding:10px 22px;border-radius:var(--radius-sm);border:none;cursor:pointer;
  transition:filter var(--t),transform var(--t),box-shadow var(--t);
  white-space:nowrap;text-decoration:none;
  box-shadow:0 3px 14px rgba(245,166,35,0.28);
}
.btn-cta:hover{filter:brightness(1.08);transform:translateY(-1px);box-shadow:0 6px 20px rgba(245,166,35,0.4);color:#0A1628;}
.btn-cta-sm{padding:7px 16px;font-size:0.82rem;}

.btn-outline{
  display:inline-flex;align-items:center;justify-content:center;
  background:transparent;color:var(--text);
  border:1px solid var(--border2);border-radius:var(--radius-sm);
  font-family:'Nunito',sans-serif;font-weight:700;font-size:0.88rem;
  padding:9px 20px;cursor:pointer;
  transition:border-color var(--t),color var(--t),background var(--t);
  text-decoration:none;white-space:nowrap;
}
.btn-outline:hover{border-color:var(--accent);color:var(--accent2);background:var(--accent-dim);}

.btn-ghost{
  display:inline-flex;align-items:center;justify-content:center;
  background:var(--card2);color:var(--text);
  border:1px solid var(--border2);border-radius:var(--radius-sm);
  font-family:'Nunito',sans-serif;font-weight:700;font-size:0.88rem;
  padding:9px 20px;cursor:pointer;transition:border-color var(--t),color var(--t);
  text-decoration:none;white-space:nowrap;
}
.btn-ghost:hover{border-color:var(--accent);color:var(--accent2);}

.site-header{
  position:sticky;top:0;z-index:200;
  background:rgba(10,22,40,0.97);backdrop-filter:blur(16px);
  border-bottom:1px solid var(--border2);height:var(--header-h);
}
.header-inner{
  display:flex;align-items:center;justify-content:space-between;
  height:100%;padding:0 16px;gap:12px;
}
.logo-link{display:flex;align-items:center;gap:10px;flex-shrink:0;}
.logo-link img{height:36px;width:auto;}
.header-actions{display:flex;align-items:center;gap:8px;}

.catfish{
  position:fixed;bottom:0;left:0;right:0;z-index:300;
  background:var(--card2);border-top:1px solid var(--border);
  padding:9px 16px;
  display:none;align-items:center;gap:10px;
  transition:transform 0.3s ease;
}
.catfish.cf-visible{display:flex;}
.catfish-logo{flex-shrink:0;}
.catfish-logo img{height:30px;width:auto;}
.catfish-text{flex:1;min-width:0;}
.catfish-title{font-family:'Nunito',sans-serif;font-weight:800;font-size:0.82rem;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.catfish-sub{font-size:0.72rem;color:var(--muted);}
.catfish-actions{display:flex;align-items:center;gap:8px;flex-shrink:0;}
.catfish-close{background:none;border:none;color:var(--muted);cursor:pointer;font-size:1.1rem;padding:4px;line-height:1;}
.catfish-close:hover{color:#fff;}

.layout-wrap{display:flex;min-height:calc(100vh - var(--header-h));}

.sidebar{
  width:var(--sidebar-w);flex-shrink:0;
  background:var(--sidebar);border-right:1px solid var(--border2);
  position:sticky;top:var(--header-h);height:calc(100vh - var(--header-h));
  overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:var(--border2) transparent;
}
.sidebar-section{padding:14px 0;}
.sidebar-label{
  font-size:0.68rem;font-weight:700;color:var(--muted);text-transform:uppercase;
  letter-spacing:0.06em;padding:0 16px 8px;
}
.sidebar-link{
  display:flex;align-items:center;gap:10px;padding:9px 16px;
  color:var(--muted);font-size:0.85rem;font-weight:600;
  transition:background var(--t),color var(--t);cursor:pointer;
  text-decoration:none;
}
.sidebar-link:hover,.sidebar-link.active{background:var(--accent-dim);color:var(--accent2);}
.sidebar-link .ico{width:18px;text-align:center;font-size:0.95rem;}

.main-content{flex:1;min-width:0;padding:0 0 80px;}

.provider-row{
  border-bottom:1px solid var(--border2);padding:0 16px;
  overflow-x:auto;white-space:nowrap;scrollbar-width:none;
}
.provider-row::-webkit-scrollbar{display:none;}
.provider-chips{display:inline-flex;gap:6px;padding:10px 0;}
.provider-chip{
  display:inline-flex;align-items:center;gap:5px;
  background:var(--card);border:1px solid var(--border2);
  border-radius:20px;padding:5px 11px;font-size:0.77rem;font-weight:600;color:var(--muted);
  cursor:pointer;transition:border-color var(--t),color var(--t),background var(--t);
  white-space:nowrap;text-decoration:none;
}
.provider-chip:hover,.provider-chip.active{border-color:var(--accent);color:var(--accent2);background:var(--accent-dim);}

.hero-slider{position:relative;overflow:hidden;border-radius:0;height:220px;}
.hero-slides{display:flex;transition:transform 0.5s ease;height:100%;}
.hero-slide{
  min-width:100%;height:100%;
  background:linear-gradient(135deg,var(--card2) 0%,var(--bg) 100%);
  display:flex;align-items:center;padding:0 24px;gap:20px;
  position:relative;overflow:hidden;
}
.hero-slide::before{
  content:'';position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(10,22,40,0.85) 0%,rgba(10,22,40,0.2) 60%,transparent 100%);
}
.hero-slide-img{position:absolute;right:0;top:0;bottom:0;width:55%;object-fit:cover;object-position:center;}
.hero-content{position:relative;z-index:1;max-width:420px;}
.hero-badge{
  display:inline-block;background:var(--accent);color:#0A1628;
  font-size:0.7rem;font-weight:800;padding:2px 8px;border-radius:3px;
  margin-bottom:8px;text-transform:uppercase;letter-spacing:0.05em;
}
.hero-title{font-family:'Nunito',sans-serif;font-weight:800;font-size:1.3rem;color:#fff;line-height:1.2;margin-bottom:6px;}
.hero-sub{font-size:0.82rem;color:var(--text);margin-bottom:12px;opacity:0.85;}
.hero-dots{
  position:absolute;bottom:12px;left:50%;transform:translateX(-50%);
  display:flex;gap:6px;z-index:2;
}
.hero-dot{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,0.35);cursor:pointer;transition:background var(--t);}
.hero-dot.active{background:var(--accent);}

.cat-nav-wrap{border-bottom:1px solid var(--border2);padding:0 16px;}
.cat-nav{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;padding:10px 0;}
.cat-nav::-webkit-scrollbar{display:none;}
.cat-pill{
  display:inline-flex;align-items:center;gap:6px;
  background:var(--card);border:1px solid var(--border2);
  border-radius:20px;padding:6px 14px;font-size:0.8rem;font-weight:700;
  color:var(--muted);cursor:pointer;white-space:nowrap;
  transition:all var(--t);text-decoration:none;
}
.cat-pill:hover,.cat-pill.active{background:var(--accent);border-color:var(--accent);color:#0A1628;}

.section-block{padding:20px 16px;}
.section-block+.section-block{border-top:1px solid var(--border2);}
.section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;}
.section-head h2,.section-title{font-size:1rem;font-weight:700;margin:0;}
.section-head .view-all{font-size:0.78rem;color:var(--accent2);}
.section-head .view-all:hover{color:#fff;}

.bonus-card{
  background:var(--card);border:1px solid var(--border);
  border-radius:var(--radius);padding:18px;
  display:flex;flex-wrap:wrap;align-items:center;gap:16px;
}
.bonus-logo img{height:44px;width:auto;border-radius:var(--radius-sm);}
.bonus-info{flex:1;min-width:180px;}
.bonus-amount{font-family:'Nunito',sans-serif;font-weight:800;font-size:1.3rem;color:var(--accent);}
.bonus-desc{font-size:0.8rem;color:var(--muted);margin-top:2px;}
.bonus-terms{font-size:0.7rem;color:var(--muted);margin-top:8px;opacity:0.75;}

.slots-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(110px,1fr));
  gap:8px;
}
.slot-card{
  background:var(--card);border-radius:var(--radius-sm);overflow:hidden;
  border:1px solid var(--border2);position:relative;cursor:pointer;
  transition:transform var(--t),border-color var(--t);aspect-ratio:3/4;
}
.slot-card:hover{transform:translateY(-3px);border-color:var(--accent);}
.slot-card-img{width:100%;height:70%;object-fit:cover;}
.slot-card-body{padding:6px 8px;}
.slot-name{font-size:0.72rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.slot-provider{font-size:0.65rem;color:var(--muted);}
.slot-overlay{
  position:absolute;inset:0;background:rgba(10,22,40,0.85);
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;
  opacity:0;transition:opacity var(--t);
}
.slot-card:hover .slot-overlay{opacity:1;}

.jackpot-strip{
  display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding-bottom:4px;
}
.jackpot-strip::-webkit-scrollbar{display:none;}
.jackpot-item{
  flex-shrink:0;background:linear-gradient(135deg,var(--card2),var(--card));
  border:1px solid var(--border);border-radius:var(--radius-sm);
  padding:10px 14px;min-width:130px;
}
.jackpot-name{font-size:0.72rem;color:var(--muted);}
.jackpot-amount{font-family:'Nunito',sans-serif;font-weight:800;font-size:1rem;color:var(--accent);}

.live-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(140px,1fr));
  gap:8px;
}
.live-card{
  background:var(--card);border:1px solid var(--border2);border-radius:var(--radius-sm);
  overflow:hidden;position:relative;cursor:pointer;
  transition:transform var(--t),border-color var(--t);
}
.live-card:hover{transform:translateY(-3px);border-color:var(--accent);}
.live-card-img{width:100%;aspect-ratio:16/9;object-fit:cover;background:var(--card2);}
.live-card-body{padding:8px 10px;}
.live-card-name{font-size:0.78rem;font-weight:700;}
.live-card-table{font-size:0.68rem;color:var(--muted);}
.live-badge{
  position:absolute;top:7px;left:7px;
  background:#E53E3E;color:#fff;font-size:0.62rem;font-weight:800;
  padding:2px 6px;border-radius:3px;text-transform:uppercase;letter-spacing:0.05em;
}

.sport-leagues{display:flex;flex-direction:column;gap:4px;}
.sport-league{
  display:flex;align-items:center;gap:10px;
  background:var(--card);border:1px solid var(--border2);border-radius:var(--radius-sm);
  padding:10px 12px;transition:border-color var(--t);cursor:pointer;text-decoration:none;
}
.sport-league:hover{border-color:var(--accent);}
.sport-league-flag{font-size:1.1rem;}
.sport-league-info{flex:1;}
.sport-league-name{font-size:0.82rem;font-weight:700;}
.sport-league-type{font-size:0.68rem;color:var(--muted);}
.sport-league-count{font-size:0.75rem;color:var(--accent2);}

.payment-chips,.prov-chips{display:flex;flex-wrap:wrap;gap:6px;}
.payment-chip,.prov-chip{
  background:var(--card);border:1px solid var(--border2);border-radius:var(--radius-sm);
  padding:6px 12px;font-size:0.75rem;color:var(--muted);
  transition:border-color var(--t),color var(--t);cursor:default;
}
.payment-chip:hover,.prov-chip:hover{border-color:var(--accent);color:var(--accent2);}

.article-intro{padding:20px 16px 0;border-top:1px solid var(--border2);}
.article-intro h1{font-size:clamp(1.25rem,2.5vw,1.6rem);font-weight:800;margin-bottom:12px;}
.article-toc{
  background:var(--card);border:1px solid var(--border2);
  border-radius:var(--radius);padding:14px 18px;margin-top:14px;
}
.article-toc p{font-size:0.78rem;font-weight:700;color:var(--muted);margin-bottom:8px;text-transform:uppercase;letter-spacing:0.05em;}
.article-toc ol{padding-left:16px;display:flex;flex-direction:column;gap:4px;}
.article-toc li a{font-size:0.82rem;color:var(--accent2);}
.article-toc li a:hover{color:#fff;}

.seo-article{padding:20px 16px;border-top:1px solid var(--border2);}
.seo-article h2{font-size:clamp(1.1rem,2vw,1.35rem);font-weight:700;margin:28px 0 10px;padding-bottom:6px;border-bottom:1px solid var(--border2);}
.seo-article h2:first-child{margin-top:0;}
.seo-article h3{font-size:1.0rem;font-weight:700;margin:18px 0 8px;color:var(--accent2);}
.seo-article p{font-size:0.88rem;margin-bottom:14px;line-height:1.7;}
.seo-article p:last-child{margin-bottom:0;}

.seo-table{width:100%;border-collapse:collapse;margin:16px 0 20px;font-size:0.83rem;}
.seo-table caption{font-size:0.75rem;color:var(--muted);text-align:left;padding-bottom:6px;font-style:italic;}
.seo-table thead tr{background:var(--card2);border-bottom:2px solid var(--accent);}
.seo-table th{color:var(--accent2);font-weight:700;padding:10px 12px;text-align:left;}
.seo-table td{padding:9px 12px;border-bottom:1px solid var(--border2);}
.seo-table tbody tr:hover td{background:rgba(245,166,35,0.05);}

.seo-list{list-style:none;padding:0;margin:12px 0 16px;display:flex;flex-direction:column;gap:8px;}
.seo-list li{padding-left:18px;position:relative;font-size:0.88rem;line-height:1.6;}
.seo-list li::before{content:'';position:absolute;left:0;top:0.6em;width:6px;height:6px;border-radius:50%;background:var(--accent);}

.faq-section{padding:20px 16px;border-top:1px solid var(--border2);}
.faq-section h2{font-size:1.15rem;font-weight:700;margin-bottom:14px;}
.faq-item{border:1px solid var(--border2);border-radius:var(--radius-sm);margin-bottom:6px;overflow:hidden;}
.faq-item summary{
  list-style:none;padding:12px 14px;font-size:0.88rem;font-weight:700;
  cursor:pointer;display:flex;justify-content:space-between;align-items:center;
  background:var(--card);
}
.faq-item summary::after{content:'+';}
.faq-item[open] summary::after{content:'-';}
.faq-item p{padding:10px 14px 12px;font-size:0.84rem;line-height:1.65;background:var(--bg2);}

.site-footer{
  background:var(--sidebar);border-top:1px solid var(--border2);
  padding:24px 16px;text-align:center;font-size:0.75rem;color:var(--muted);
}
.footer-logo{display:flex;justify-content:center;margin-bottom:12px;}
.footer-logo img{height:32px;width:auto;}
.footer-links{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 16px;margin:10px 0 14px;}
.footer-links a{color:var(--muted);font-size:0.75rem;}
.footer-links a:hover{color:var(--accent2);}
.footer-text{line-height:1.65;max-width:680px;margin:0 auto;}

.mob-bottom-nav{
  display:none;
  position:fixed;bottom:0;left:0;right:0;z-index:250;
  background:var(--sidebar);border-top:1px solid var(--border2);
  padding:6px 0 env(safe-area-inset-bottom,6px);
}
.mob-nav-items{display:flex;justify-content:space-around;align-items:center;}
.mob-nav-item{
  display:flex;flex-direction:column;align-items:center;gap:2px;
  padding:4px 10px;color:var(--muted);font-size:0.62rem;font-weight:700;
  cursor:pointer;text-decoration:none;transition:color var(--t);
  text-transform:uppercase;letter-spacing:0.04em;
}
.mob-nav-item:hover,.mob-nav-item.active{color:var(--accent2);}
.mob-nav-ico{font-size:1.1rem;}

/* ── Hero slider с реальными изображениями ──────────────────── */
.hero-slider{position:relative;overflow:hidden;border-radius:0;height:240px;}
.hero-slides{display:flex;transition:transform 0.5s ease;height:100%;}
.hero-slide{
  position:relative;min-width:100%;overflow:hidden;
  border-radius:0;height:100%;
}
.hero-slide-img{
  width:100%;height:100%;object-fit:cover;
  display:block;
}
.hero-content{
  position:absolute;inset:0;
  display:flex;flex-direction:column;justify-content:flex-end;
  padding:22px 28px;
  background:linear-gradient(to top,rgba(5,12,28,0.92) 40%,rgba(5,12,28,0.25) 100%);
  z-index:1;
}
.hero-title{
  font-family:'Nunito',sans-serif;font-weight:800;
  font-size:clamp(1.1rem,2.5vw,1.55rem);
  color:#fff;line-height:1.2;margin-bottom:6px;
}
.hero-sub{font-size:0.82rem;color:rgba(255,255,255,0.82);margin-bottom:12px;}
.hero-terms{font-size:0.68rem;color:rgba(255,255,255,0.48);margin-top:5px;}
.hero-dots{
  position:absolute;bottom:14px;right:20px;
  display:flex;gap:6px;z-index:2;
}
.hero-dot{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,0.35);cursor:pointer;transition:background var(--t);}
.hero-dot.active{background:var(--accent);}

/* ── Promo cards (daily-check-in / vip) ─────────────────────── */
.promo-row{
  display:grid;grid-template-columns:1fr 1fr;
  gap:12px;margin-bottom:20px;
}
.promo-card{
  position:relative;border-radius:var(--radius);
  overflow:hidden;aspect-ratio:16/7;
  display:block;text-decoration:none;
  transition:transform var(--t);
}
.promo-card:hover{transform:translateY(-2px);}
.promo-card img{width:100%;height:100%;object-fit:cover;display:block;}
.promo-overlay{
  position:absolute;bottom:0;left:0;right:0;
  padding:12px 16px;
  background:linear-gradient(to top,rgba(5,12,28,0.90) 60%,transparent 100%);
}
.promo-title{
  font-family:'Nunito',sans-serif;font-weight:800;
  font-size:0.88rem;color:#fff;margin-bottom:2px;
}
.promo-sub{font-size:0.7rem;color:var(--accent2);}

/* ── Sport icons row ─────────────────────────────────────────── */
.sport-icons-row{
  display:flex;gap:10px;overflow-x:auto;
  padding-bottom:8px;margin-bottom:20px;
  -webkit-overflow-scrolling:touch;scrollbar-width:none;
}
.sport-icons-row::-webkit-scrollbar{display:none;}
.sport-icon-item{
  flex-shrink:0;display:flex;flex-direction:column;
  align-items:center;gap:5px;cursor:pointer;text-decoration:none;
}
.sport-icon-img-wrap{
  width:62px;height:62px;border-radius:50%;
  border:2px solid var(--border2);overflow:hidden;
  background:var(--card2);
  transition:border-color var(--t);
}
.sport-icon-item:hover .sport-icon-img-wrap{border-color:var(--accent);}
.sport-icon-img-wrap img{width:100%;height:100%;object-fit:cover;display:block;}
.sport-icon-label{
  font-size:0.62rem;color:var(--muted);text-align:center;
  white-space:nowrap;font-weight:600;
  transition:color var(--t);
}
.sport-icon-item:hover .sport-icon-label{color:var(--accent2);}

/* ── Slot card image wrapper (реальные thumbnails) ───────────── */
.slot-card-img{
  width:100%;aspect-ratio:4/3;overflow:hidden;position:relative;
}
.slot-card-img img{
  width:100%;height:100%;object-fit:cover;display:block;
  transition:transform 0.3s ease;
}
.slot-card:hover .slot-card-img img{transform:scale(1.07);}

/* ── Live card image wrapper (реальные фото столов) ─────────── */
.live-card-img{
  width:100%;aspect-ratio:16/9;overflow:hidden;position:relative;
}
.live-card-img img{
  width:100%;height:100%;object-fit:cover;display:block;
  transition:transform 0.3s ease;
}
.live-card:hover .live-card-img img{transform:scale(1.05);}

/* ── Responsive ──────────────────────────────────────────────── */
@media(max-width:900px){
  .sidebar{display:none;}
  .mob-bottom-nav{display:block;}
  .main-content{padding-bottom:70px;}
  .catfish{display:none!important;}
  .promo-row{grid-template-columns:1fr 1fr;}
}
@media(max-width:600px){
  .slots-grid{grid-template-columns:repeat(auto-fill,minmax(90px,1fr));}
  .live-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));}
  .bonus-card{flex-direction:column;align-items:flex-start;}
  .hero-slider{height:190px;}
  .sport-icon-img-wrap{width:52px;height:52px;}
  .promo-row{grid-template-columns:1fr 1fr;gap:8px;}
}

/* ── Footer responsible gambling orgs ───────────────────────── */
.footer-resp-orgs{
  display:flex;align-items:center;justify-content:center;
  gap:20px;flex-wrap:wrap;margin:18px 0 12px;
  padding:14px 16px;
  background:rgba(255,255,255,0.04);
  border-radius:var(--radius);
  border:1px solid var(--border2);
}
.footer-resp-item{
  display:flex;align-items:center;justify-content:center;
  opacity:0.75;transition:opacity var(--t);
  text-decoration:none;
}
.footer-resp-item:hover{opacity:1;}
.footer-resp-item img{
  height:40px;width:auto;max-width:120px;
  object-fit:contain;display:block;
  filter:brightness(0.9) contrast(1.05);
}
