/* ============================================================
   REDESIGN 2026 — TOP-CASINO LAYER
   ============================================================ */

:root {
    --rd-radius: 18px;
    --rd-radius-lg: 26px;
    --rd-radius-pill: 999px;
    --rd-tile-radius: 16px;
    --rd-card-bg: linear-gradient(160deg, rgba(255,255,255,0.07) 0%, rgba(255,255,255,0.02) 100%);
    --rd-card-border: rgba(255,255,255,0.09);
    --rd-card-border-hi: rgba(var(--brand-rgb), 0.55);
    --rd-line: rgba(255,255,255,0.08);
    --rd-ink: var(--content-high, #fff);
    --rd-ink-dim: var(--content-dim, rgba(255,255,255,0.72));
    --rd-elev: 0 18px 50px -20px rgba(0,0,0,0.65);
    --rd-elev-hi: 0 26px 70px -22px rgba(0,0,0,0.78);
    --rd-glow: 0 0 0 1px rgba(var(--brand-rgb),0.35), 0 12px 40px -12px rgba(var(--brand-rgb),0.55);
    --rd-cta: linear-gradient(135deg, var(--brand-primary) 0%, var(--brand-vivid, var(--brand-primary)) 45%, var(--brand-primary-dark, var(--brand-primary)) 100%);
    --rd-section-gap: clamp(2.4rem, 5vw, 4.2rem);
}

/* ---------- Базовый фон в стиле игровых платформ ---------- */
body {
    background:
        radial-gradient(1200px 700px at 12% -8%, rgba(var(--brand-rgb), 0.16), transparent 60%),
        radial-gradient(1000px 600px at 92% 4%, rgba(var(--brand-rgb), 0.10), transparent 55%),
        linear-gradient(180deg, var(--surface-deep) 0%, var(--surface-raised) 45%, var(--surface-deep) 100%);
    background-attachment: fixed;
    line-height: 1.7;
}

/* Приглушаем «кислотные» оригинальные орбы → спокойный премиум-фон */
.background-effects::after { opacity: 0.035 !important; }
.gradient-orb { opacity: 0.18 !important; }
.orb-3 { display: none; }

/* ============================================================
   HEADER — плавающая стеклянная панель
   ============================================================ */
.header {
    background: linear-gradient(180deg, rgba(8,10,16,0.92), rgba(8,10,16,0.74)) !important;
    backdrop-filter: saturate(160%) blur(22px) !important;
    -webkit-backdrop-filter: saturate(160%) blur(22px) !important;
    border-bottom: 1px solid var(--rd-line) !important;
    box-shadow: 0 10px 40px -28px rgba(0,0,0,0.9);
}
.header.scrolled {
    background: linear-gradient(180deg, rgba(8,10,16,0.96), rgba(8,10,16,0.85)) !important;
    border-bottom-color: rgba(var(--brand-rgb), 0.22) !important;
}
.header-inner { padding: 12px 24px; gap: 20px; }

.logo { height: 50px; filter: drop-shadow(0 6px 18px rgba(var(--brand-rgb), 0.35)); }

/* Навигация: компактные «таблетки» с активной подсветкой */
.nav-list { gap: 4px; }
.nav-link {
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.2px;
    padding: 8px 12px;
    border-radius: var(--rd-radius-pill);
    color: var(--rd-ink-dim);
    opacity: 1;
    border: 1px solid transparent;
}
.nav-link .nav-icon { font-size: 13px; opacity: 0.85; }
.nav-link:hover {
    background: rgba(var(--brand-rgb), 0.12);
    color: #fff;
    border-color: rgba(var(--brand-rgb), 0.28);
}
.nav-link.active {
    background: rgba(var(--brand-rgb), 0.16);
    color: #fff;
    border-color: rgba(var(--brand-rgb), 0.45);
    box-shadow: inset 0 0 0 1px rgba(var(--brand-rgb), 0.25);
}

/* Кнопки в шапке */
.header-actions { gap: 10px; }
.btn-outline {
    border-width: 1.5px !important;
    border-radius: var(--rd-radius-pill) !important;
    padding: 9px 20px !important;
    font-size: 12px !important;
    letter-spacing: 0.6px !important;
    background: rgba(255,255,255,0.04) !important;
    color: #fff !important;
    border-color: rgba(255,255,255,0.22) !important;
}
.btn-outline:hover {
    border-color: var(--brand-primary) !important;
    background: rgba(var(--brand-rgb), 0.16) !important;
    color: #fff !important;
    transform: translateY(-2px);
}

/* ============================================================
   КНОПКИ — крупные, сочные, как у топ-брендов
   ============================================================ */
.btn-primary, .btn-cta, .btn-apple-primary {
    border-radius: var(--rd-radius-pill) !important;
    background: var(--rd-cta) !important;
    color: #fff !important;
    font-weight: 800 !important;
    letter-spacing: 0.4px !important;
    box-shadow: var(--rd-glow) !important;
    border: 1px solid rgba(255,255,255,0.18) !important;
    text-transform: none !important;
}
.btn-primary:hover, .btn-cta:hover, .btn-apple-primary:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 0 0 1px rgba(var(--brand-rgb),0.5), 0 20px 50px -14px rgba(var(--brand-rgb),0.7) !important;
    filter: saturate(1.08);
}
.btn-apple {
    border-radius: var(--rd-radius-pill) !important;
    padding: 14px 30px !important;
    font-size: 15px !important;
    font-weight: 800 !important;
}
.btn-apple-secondary {
    background: rgba(255,255,255,0.06) !important;
    border: 1px solid rgba(255,255,255,0.18) !important;
    color: #fff !important;
}
.btn-apple-secondary:hover {
    background: rgba(var(--brand-rgb), 0.14) !important;
    border-color: rgba(var(--brand-rgb), 0.4) !important;
    transform: translateY(-3px) !important;
}
.btn-badge {
    background: #fff !important;
    color: #0b0e16 !important;
    font-weight: 900 !important;
    box-shadow: 0 4px 14px rgba(0,0,0,0.35) !important;
}

/* ============================================================
   ТИПОГРАФИКА КОНТЕНТА
   ============================================================ */
.main { padding-top: clamp(96px, 12vh, 132px); }
.main-title, h1.gradient-text {
    font-family: var(--font-display);
    font-weight: 800;
    line-height: 1.08;
    letter-spacing: -0.02em;
    font-size: clamp(2rem, 4.6vw, 3.4rem);
    margin-bottom: 1.1rem;
}
.gradient-text {
    background: linear-gradient(100deg, #fff 0%, var(--brand-primary-light, var(--brand-primary)) 55%, var(--brand-primary) 100%);
    -webkit-background-clip: text; background-clip: text;
    -webkit-text-fill-color: transparent; color: transparent;
}
.article-content h2 {
    font-family: var(--font-display);
    font-weight: 700;
    font-size: clamp(1.4rem, 2.6vw, 2rem);
    margin: var(--rd-section-gap) 0 1rem;
    padding-left: 16px;
    position: relative;
    line-height: 1.18;
}
.article-content h2::before {
    content: '';
    position: absolute; left: 0; top: 0.15em; bottom: 0.15em;
    width: 5px; border-radius: 4px;
    background: var(--rd-cta);
    box-shadow: 0 0 16px rgba(var(--brand-rgb), 0.6);
}
.article-content h3 { font-family: var(--font-display); font-weight: 700; color: #fff; margin: 1.8rem 0 0.7rem; }
.article-content p { color: var(--rd-ink-dim); margin-bottom: 1.05rem; }
.article-content a { color: var(--brand-primary-light, var(--brand-primary)); border-bottom: 1px dashed rgba(var(--brand-rgb), 0.5); }
.article-content a:hover { color: #fff; border-bottom-color: #fff; text-shadow: none; }
.article-content ul li, .article-content ol li { color: var(--rd-ink-dim); }

/* ============================================================
   УНИВЕРСАЛЬНАЯ СТЕКЛЯННАЯ КАРТОЧКА
   ============================================================ */
.glass-card,
.value-pillars,
.slots-dashboard,
.recent-payouts-block,
.bonus-programs-section,
.related-sections,
.faq-section,
.site-structure-block,
.review-quotes-block,
.page-thematic-block,
.bonus-calculator-widget,
.promo-timer-widget {
    background: var(--rd-card-bg) !important;
    border: 1px solid var(--rd-card-border) !important;
    border-radius: var(--rd-radius-lg) !important;
    box-shadow: var(--rd-elev) !important;
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

/* ============================================================
   HERO — игровая витрина
   ============================================================ */
.hero-value {
    background:
        radial-gradient(800px 320px at 0% 0%, rgba(var(--brand-rgb), 0.18), transparent 60%),
        var(--rd-card-bg) !important;
    border: 1px solid var(--rd-card-border) !important;
    border-radius: var(--rd-radius-lg) !important;
    padding: clamp(1.4rem, 3vw, 2.6rem) !important;
    box-shadow: var(--rd-elev);
    overflow: hidden;
    position: relative;
}
.hero-value-grid { display: grid; grid-template-columns: 1.15fr 0.85fr; gap: clamp(1.2rem, 3vw, 2.4rem); align-items: stretch; }
.hero-badge {
    display: inline-flex; align-items: center; gap: 8px;
    padding: 7px 14px; border-radius: var(--rd-radius-pill);
    background: rgba(var(--brand-rgb), 0.16);
    border: 1px solid rgba(var(--brand-rgb), 0.4);
    font-weight: 700; font-size: 13px; color: #fff;
    margin-bottom: 14px;
}
.hero-badge .badge-icon { color: var(--brand-primary-light, var(--brand-primary)); font-weight: 900; }
.hero-headline { font-family: var(--font-display); font-weight: 800; font-size: clamp(1.8rem, 4vw, 3rem); line-height: 1.05; margin-bottom: 0.6rem; }
.hero-tagline { color: var(--rd-ink-dim); font-size: clamp(1rem, 1.6vw, 1.15rem); margin-bottom: 1.4rem; max-width: 48ch; }

.hero-features { list-style: none; display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 0 0 1.5rem; padding: 0; }
.hero-features li {
    display: flex; align-items: center; gap: 10px;
    padding: 12px 14px; border-radius: var(--rd-tile-radius);
    background: rgba(255,255,255,0.04);
    border: 1px solid var(--rd-line);
    font-weight: 600; color: #fff;
}
.hero-features .feature-icon { font-size: 20px; }
.hero-actions { display: flex; gap: 12px; flex-wrap: wrap; }
.hero-live-online {
    margin-top: 14px; display: inline-flex; align-items: center; gap: 8px;
    color: var(--rd-ink-dim); font-size: 14px;
}
.live-dot { width: 9px; height: 9px; border-radius: 50%; background: #2ecc71; box-shadow: 0 0 0 4px rgba(46,204,113,0.18); animation: rd-pulse 1.6s ease-in-out infinite; }
@keyframes rd-pulse { 0%,100% { transform: scale(1); opacity: 1; } 50% { transform: scale(1.25); opacity: 0.7; } }

/* Быстрые ссылки → плитки игр */
.hero-quicklinks {
    background: rgba(0,0,0,0.22);
    border: 1px solid var(--rd-line);
    border-radius: var(--rd-radius) !important;
    padding: 18px !important;
}
.quicklinks-title { font-family: var(--font-display); font-weight: 700; font-size: 1rem; margin-bottom: 12px; color: #fff; text-transform: uppercase; letter-spacing: 1px; opacity: 0.85; }
.quicklinks-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.quicklink-item {
    display: flex; flex-direction: column; gap: 4px;
    padding: 14px; border-radius: var(--rd-tile-radius);
    background: linear-gradient(160deg, rgba(var(--brand-rgb), 0.10), rgba(255,255,255,0.02));
    border: 1px solid var(--rd-line);
    transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.quicklink-item:hover {
    transform: translateY(-4px);
    border-color: var(--rd-card-border-hi);
    box-shadow: var(--rd-glow);
    color: #fff;
}
.quicklink-item .ql-icon { font-size: 22px; }
.quicklink-item .ql-text { font-weight: 700; color: #fff; }
.quicklink-item .ql-meta { font-size: 12px; color: var(--rd-ink-dim); }

@media (max-width: 880px) {
    .hero-value-grid { grid-template-columns: 1fr; }
}

/* ============================================================
   TRUST / VALUE PILLARS
   ============================================================ */
.value-pillars { padding: clamp(1.4rem, 3vw, 2.2rem) !important; }
.value-pillars-heading { font-family: var(--font-display); font-weight: 700; text-align: center; margin-bottom: 1.4rem; }
.value-pillars-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 14px; }
.value-pillar {
    text-align: center; padding: 20px 16px; border-radius: var(--rd-tile-radius);
    background: rgba(255,255,255,0.03); border: 1px solid var(--rd-line);
    transition: transform .2s ease, border-color .2s ease;
}
.value-pillar:hover { transform: translateY(-4px); border-color: var(--rd-card-border-hi); }
.value-pillar-icon { font-size: 32px; margin-bottom: 10px; display: block; }
.value-pillar-title { font-weight: 700; color: #fff; margin-bottom: 6px; }
.value-pillar-desc { font-size: 13px; color: var(--rd-ink-dim); }

/* ============================================================
   SLOTS DASHBOARD — каталог игр
   ============================================================ */
.slots-dashboard { padding: clamp(1.2rem, 3vw, 2rem) !important; }
.slots-dashboard-header { margin-bottom: 16px; }
.slots-dashboard-tabs { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 18px; }
.slots-dashboard-tabs button, .slots-tab {
    padding: 9px 18px; border-radius: var(--rd-radius-pill);
    background: rgba(255,255,255,0.05); border: 1px solid var(--rd-line);
    color: var(--rd-ink-dim); font-weight: 600; cursor: pointer; transition: all .2s ease;
}
.slots-dashboard-tabs button.active, .slots-tab.active {
    background: var(--rd-cta); color: #fff; border-color: transparent; box-shadow: var(--rd-glow);
}
.slots-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: 14px; }
.slot-card {
    border-radius: var(--rd-tile-radius); overflow: hidden;
    background: rgba(0,0,0,0.28); border: 1px solid var(--rd-line);
    transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}
.slot-card:hover { transform: translateY(-6px); border-color: var(--rd-card-border-hi); box-shadow: var(--rd-elev-hi); }
.slot-poster img, .slot-poster { border-radius: 0; }
.slot-info { padding: 12px; }
.slot-footer { padding: 0 12px 14px; }

/* ============================================================
   LIVE WINS / JACKPOT
   ============================================================ */
.recent-payouts-block { padding: clamp(1.2rem, 3vw, 1.8rem) !important; }
.jackpot-strip-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 12px; margin-bottom: 16px; }
.jackpot-cell {
    text-align: center; padding: 16px; border-radius: var(--rd-tile-radius);
    background: radial-gradient(120% 120% at 50% 0%, rgba(var(--brand-rgb), 0.18), rgba(255,255,255,0.02));
    border: 1px solid rgba(var(--brand-rgb), 0.3);
}
.payout-row {
    display: flex; align-items: center; justify-content: space-between; gap: 12px;
    padding: 11px 14px; border-radius: 12px; margin-bottom: 8px;
    background: rgba(255,255,255,0.03); border: 1px solid var(--rd-line);
}
.payout-row-mega, .payout-row-jackpot { border-color: rgba(var(--brand-rgb), 0.45); background: rgba(var(--brand-rgb), 0.08); }

/* ============================================================
   BONUS / CTA / ACTION
   ============================================================ */
.bonus-programs-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 16px; }
.bonus-card {
    padding: 22px; border-radius: var(--rd-radius); position: relative; overflow: hidden;
    background: linear-gradient(165deg, rgba(var(--brand-rgb), 0.12), rgba(255,255,255,0.02));
    border: 1px solid var(--rd-line); transition: transform .2s ease, border-color .2s ease;
}
.bonus-card:hover { transform: translateY(-5px); border-color: var(--rd-card-border-hi); box-shadow: var(--rd-glow); }

.action-block, .spot-cta-block, .cta-block {
    background:
        radial-gradient(600px 200px at 100% 0%, rgba(var(--brand-rgb), 0.2), transparent 60%),
        var(--rd-card-bg) !important;
    border: 1px solid rgba(var(--brand-rgb), 0.28) !important;
    border-radius: var(--rd-radius-lg) !important;
    padding: clamp(1.4rem, 3vw, 2.2rem) !important;
    box-shadow: var(--rd-elev);
}
.spot-cta-number {
    display: inline-flex; align-items: center; justify-content: center;
    width: 46px; height: 46px; border-radius: 50%;
    background: var(--rd-cta); color: #fff; font-weight: 900; font-size: 20px;
    box-shadow: var(--rd-glow);
}

/* ============================================================
   FAQ
   ============================================================ */
.faq-section { padding: clamp(1.2rem, 3vw, 2rem) !important; }
.faq-item {
    border: 1px solid var(--rd-line) !important;
    border-radius: var(--rd-tile-radius) !important;
    margin-bottom: 10px;
    overflow: hidden;
    background: rgba(255,255,255,0.025) !important;
}
.faq-item.open { border-color: var(--rd-card-border-hi) !important; }
.faq-question { font-weight: 700 !important; color: #fff !important; }
.faq-question:hover { color: var(--brand-primary-light, var(--brand-primary)) !important; }
/* ВАЖНО: не задаём padding/height самому .faq-answer — иначе ломается схлопывание
   (в базе .faq-answer { max-height:0; overflow:hidden }). Отступы только на внутренних p/div. */
.faq-answer p, .faq-answer div { color: var(--rd-ink-dim) !important; }

/* ============================================================
   RELATED / STRUCTURE
   ============================================================ */
.related-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 14px; }
.related-card {
    padding: 18px; border-radius: var(--rd-tile-radius);
    background: rgba(255,255,255,0.03); border: 1px solid var(--rd-line);
    transition: transform .2s ease, border-color .2s ease;
}
.related-card:hover { transform: translateY(-4px); border-color: var(--rd-card-border-hi); }
.related-card-title { font-weight: 700; color: #fff; margin-bottom: 6px; }
.related-card-desc { font-size: 13px; color: var(--rd-ink-dim); }

/* ============================================================
   FOOTER
   ============================================================ */
.site-footer {
    background: linear-gradient(180deg, transparent, rgba(0,0,0,0.4)) !important;
    border-top: 1px solid var(--rd-line) !important;
    margin-top: var(--rd-section-gap);
}
.footer-nav-link { color: var(--rd-ink-dim) !important; }
.footer-nav-link:hover { color: #fff !important; }

/* ============================================================
   MOBILE NAV
   ============================================================ */
.mobile-menu-btn { border-radius: 14px !important; }
.mobile-nav-link { border-radius: 14px !important; }
.mobile-nav-link:hover, .mobile-nav-link.active {
    background: var(--rd-cta) !important; border-color: transparent !important;
}

/* ============================================================
   5 СКИНОВ — design-design1..5
   делают рандомизацию визуально разной
   ============================================================ */

/* design1 — Modern Pill (база, мягкие скругления) */
body.design-design1 { --rd-radius: 18px; --rd-radius-lg: 26px; --rd-tile-radius: 16px; }

/* design2 — Sharp Esports (острые углы, плотная сетка, контраст) */
body.design-design2 { --rd-radius: 8px; --rd-radius-lg: 12px; --rd-tile-radius: 8px; --rd-radius-pill: 8px; }
body.design-design2 .article-content h2::before { width: 4px; border-radius: 0; }
body.design-design2 .nav-link { border-radius: 8px; }
body.design-design2 .btn-primary, body.design-design2 .btn-cta, body.design-design2 .btn-apple-primary,
body.design-design2 .btn-outline, body.design-design2 .btn-apple { border-radius: 8px !important; }
body.design-design2 .hero-value, body.design-design2 .glass-card { border-radius: 12px !important; }

/* design3 — Soft Luxe (крупные скругления, золотая обводка, мягкие тени) */
body.design-design3 { --rd-radius: 28px; --rd-radius-lg: 36px; --rd-tile-radius: 24px; --rd-card-border: rgba(255,255,255,0.14); }
body.design-design3 .hero-value, body.design-design3 .glass-card,
body.design-design3 .value-pillars, body.design-design3 .slots-dashboard,
body.design-design3 .faq-section { box-shadow: 0 30px 80px -30px rgba(0,0,0,0.8), inset 0 1px 0 rgba(255,255,255,0.06) !important; }
body.design-design3 .quicklink-item, body.design-design3 .value-pillar { background: rgba(255,255,255,0.05); }

/* design4 — Neon Arcade (яркое свечение, неоновые рамки) */
body.design-design4 { --rd-card-border: rgba(var(--brand-rgb), 0.30); }
body.design-design4 .hero-value, body.design-design4 .value-pillars,
body.design-design4 .slots-dashboard, body.design-design4 .recent-payouts-block,
body.design-design4 .bonus-programs-section, body.design-design4 .faq-section,
body.design-design4 .related-sections {
    box-shadow: 0 0 0 1px rgba(var(--brand-rgb),0.3), 0 0 50px -16px rgba(var(--brand-rgb),0.6) !important;
}
body.design-design4 .quicklink-item:hover, body.design-design4 .slot-card:hover,
body.design-design4 .value-pillar:hover { box-shadow: 0 0 0 1px rgba(var(--brand-rgb),0.6), 0 0 40px -8px rgba(var(--brand-rgb),0.8); }
body.design-design4 .main-title, body.design-design4 .hero-headline { text-shadow: 0 0 30px rgba(var(--brand-rgb), 0.5); }

/* design5 — Editorial Grid (минимализм, тонкие линии, типографика) */
body.design-design5 {
    --rd-card-bg: linear-gradient(160deg, rgba(255,255,255,0.035), rgba(255,255,255,0.012));
    --rd-radius: 14px; --rd-radius-lg: 18px; --rd-tile-radius: 12px;
}
body.design-design5 .hero-value, body.design-design5 .glass-card,
body.design-design5 .value-pillars, body.design-design5 .slots-dashboard,
body.design-design5 .faq-section, body.design-design5 .bonus-programs-section,
body.design-design5 .related-sections { box-shadow: none !important; border-color: var(--rd-line) !important; }
body.design-design5 .article-content h2 { padding-left: 0; }
body.design-design5 .article-content h2::before { display: none; }
body.design-design5 .article-content h2 { border-bottom: 1px solid var(--rd-line); padding-bottom: 10px; }

/* ============================================================
   СТРУКТУРНЫЕ ВАРИАНТЫ (layout-structure-*)
   ============================================================ */
body.layout-structure-asymmetric .hero-value-grid { grid-template-columns: 0.85fr 1.15fr; }
body.layout-structure-asymmetric .hero-info { order: 2; }
body.layout-structure-asymmetric .hero-quicklinks { order: 1; }
body.layout-structure-vertical .hero-value-grid { grid-template-columns: 1fr; }
body.layout-structure-vertical .quicklinks-grid { grid-template-columns: repeat(3, 1fr); }

/* ============================================================
   УСИЛЕНИЕ РАЗЛИЧИЙ ТЕМ
   ============================================================ */
/* t2 Midnight Luxe — золото, прямые линии, uppercase */
body.theme-t2 .nav-link { text-transform: uppercase; font-size: 11px; letter-spacing: 0.08em; }
body.theme-t2 .btn-primary, body.theme-t2 .btn-cta, body.theme-t2 .btn-apple-primary { text-transform: uppercase; letter-spacing: 0.06em; }
body.theme-t2 .hero-value, body.theme-t2 .glass-card { --rd-radius-lg: 10px; }

/* t4 Platinum Day — светлая тема: правим контраст карточек, плиток и текста */
body.theme-t4 {
    --rd-card-bg: linear-gradient(160deg, #ffffff 0%, #f6f8fc 100%);
    --rd-card-border: rgba(15,23,42,0.10);
    --rd-line: rgba(15,23,42,0.10);
    --rd-ink: #0f172a;
    --rd-ink-dim: #475569;
    --rd-elev: 0 18px 50px -24px rgba(15,23,42,0.22);
    --rd-elev-hi: 0 26px 70px -26px rgba(15,23,42,0.28);
}
/* Заголовки и имена — тёмные */
body.theme-t4 .hero-headline, body.theme-t4 .value-pillar-title,
body.theme-t4 .quicklink-item .ql-text, body.theme-t4 .faq-question,
body.theme-t4 .related-card-title, body.theme-t4 .article-content h3,
body.theme-t4 .quicklinks-title, body.theme-t4 .value-pillars-heading,
body.theme-t4 .slot-info, body.theme-t4 .slots-dashboard-header { color: #0f172a !important; }
/* Вторичный текст — серый */
body.theme-t4 .article-content p, body.theme-t4 .hero-tagline,
body.theme-t4 .value-pillar-desc, body.theme-t4 .quicklink-item .ql-meta,
body.theme-t4 .hero-live-online, body.theme-t4 .related-card-desc,
body.theme-t4 .breadcrumb-link { color: #475569 !important; }
/* Полупрозрачно-белые плитки → светлый слейт (иначе не видны на белом) */
body.theme-t4 .hero-features li, body.theme-t4 .value-pillar,
body.theme-t4 .related-card, body.theme-t4 .faq-item,
body.theme-t4 .payout-row, body.theme-t4 .slots-dashboard-tabs button,
body.theme-t4 .slots-tab { background: #f1f5f9 !important; color: #0f172a; }
/* Тёмные панели → светлые */
body.theme-t4 .hero-quicklinks { background: #f1f5f9; border-color: rgba(15,23,42,0.08); }
body.theme-t4 .slot-card { background: #f8fafc; }
body.theme-t4 .quicklink-item { background: linear-gradient(160deg, rgba(var(--brand-rgb),0.08), #f8fafc); }
/* Бейджи: тёмный бренд-текст вместо белого на светлой подложке */
body.theme-t4 .hero-badge {
    background: rgba(var(--brand-rgb),0.12);
    color: var(--brand-primary-dark, #0f172a);
    border-color: rgba(var(--brand-rgb),0.35);
}
body.theme-t4 .hero-badge .badge-icon { color: var(--brand-primary-dark, var(--brand-primary)); }
/* Кнопки-призраки: не белый текст на светлом фоне (в т.ч. при ховере) */
body.theme-t4 .btn-outline, body.theme-t4 .btn-outline:hover,
body.theme-t4 .btn-apple-secondary, body.theme-t4 .btn-apple-secondary:hover {
    color: var(--brand-primary-dark, #0f172a) !important;
    background: #ffffff !important;
    border-color: rgba(var(--brand-rgb),0.4) !important;
}
body.theme-t4 .header { background: linear-gradient(180deg, rgba(255,255,255,0.95), rgba(255,255,255,0.8)) !important; }
body.theme-t4 .nav-link { color: #475569; }
body.theme-t4 .nav-link:hover, body.theme-t4 .nav-link.active { color: #0f172a; }
body.theme-t4 .breadcrumb-link:hover { color: var(--brand-primary-dark, #0f172a) !important; }
body.theme-t4 .gradient-text, body.theme-t4 .main-title {
    background: linear-gradient(100deg, #0f172a 0%, var(--brand-primary-dark, var(--brand-primary)) 70%, var(--brand-primary) 100%);
    -webkit-background-clip: text; background-clip: text;
    -webkit-text-fill-color: transparent; color: transparent;
}

/* t5 Cyber Terminal — моно-шрифт, рамки */
body.theme-t5 .nav-link, body.theme-t5 .quicklinks-title { font-family: var(--font-mono, var(--font-display)); text-transform: uppercase; }
body.theme-t5 .hero-value, body.theme-t5 .glass-card { --rd-radius-lg: 6px; }
body.theme-t5 .btn-primary, body.theme-t5 .btn-cta { border-radius: 6px !important; }

/* ============================================================
   ВСПОМОГАТЕЛЬНОЕ
   ============================================================ */
.breadcrumbs { margin: 8px 0 18px; opacity: 0.85; }
.breadcrumb-link { color: var(--rd-ink-dim); }
.breadcrumb-link:hover { color: #fff; }

@media (max-width: 600px) {
    .hero-features { grid-template-columns: 1fr; }
    .quicklinks-grid { grid-template-columns: 1fr; }
    .main-title, h1.gradient-text { font-size: clamp(1.7rem, 7vw, 2.2rem); }
}

/* ============================================================
   НОВЫЕ БЛОКИ ТОП-КАЗИНО (casino-blocks-2026.php)
   ============================================================ */
.cb-section-title {
    font-family: var(--font-display); font-weight: 800; color: #fff;
    font-size: clamp(1.3rem, 2.6vw, 1.9rem); margin-bottom: 0.3rem; line-height: 1.15;
}
.cb-section-sub { color: var(--rd-ink-dim); margin-bottom: 1.1rem; }
.cb-categories, .cb-providers, .cb-tournament, .cb-vip, .cb-payments {
    margin: var(--rd-section-gap) 0;
}

/* ---- Категории игр ---- */
.cb-cat-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 12px; }
.cb-cat-grid-bento { grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); }
.cb-cat-grid-bento .cb-cat-tile:first-child { grid-column: span 2; }
.cb-cat-tile {
    display: flex; align-items: center; gap: 14px; padding: 16px 18px;
    border-radius: var(--rd-tile-radius);
    background: linear-gradient(160deg, rgba(var(--brand-rgb), 0.10), rgba(255,255,255,0.02));
    border: 1px solid var(--rd-line);
    transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.cb-cat-tile:hover { transform: translateY(-4px); border-color: var(--rd-card-border-hi); box-shadow: var(--rd-glow); }
.cb-cat-ic { font-size: 30px; line-height: 1; flex-shrink: 0; }
.cb-cat-body { display: flex; flex-direction: column; flex: 1; }
.cb-cat-tx { font-weight: 800; color: #fff; }
.cb-cat-meta { font-size: 12px; color: var(--rd-ink-dim); }
.cb-cat-num { font-weight: 800; color: var(--brand-primary-light, var(--brand-primary)); font-size: 14px; }
.cb-cat-scroll { display: flex; gap: 10px; overflow-x: auto; padding-bottom: 10px; scroll-snap-type: x mandatory; }
.cb-cat-scroll::-webkit-scrollbar { height: 6px; }
.cb-cat-chip {
    display: inline-flex; align-items: center; gap: 8px; padding: 12px 18px;
    border-radius: var(--rd-radius-pill); white-space: nowrap; scroll-snap-align: start;
    background: rgba(255,255,255,0.05); border: 1px solid var(--rd-line); color: #fff; font-weight: 700;
}
.cb-cat-chip .cb-cat-num { color: var(--brand-primary-light, var(--brand-primary)); }

/* ---- Провайдеры ---- */
.cb-marquee { overflow: hidden; -webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); }
.cb-marquee-track { display: flex; gap: 12px; width: max-content; animation: cb-marquee 38s linear infinite; }
.cb-providers-marquee:hover .cb-marquee-track { animation-play-state: paused; }
@keyframes cb-marquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }
.cb-provider-chip {
    display: inline-flex; align-items: center; padding: 10px 18px; white-space: nowrap;
    border-radius: var(--rd-radius-pill); background: rgba(255,255,255,0.04);
    border: 1px solid var(--rd-line); color: var(--rd-ink-dim); font-weight: 700; letter-spacing: 0.3px;
}
.cb-providers-grid-wrap { display: flex; flex-wrap: wrap; gap: 10px; }

/* ---- Турнир ---- */
.cb-tournament {
    background: radial-gradient(700px 240px at 100% 0%, rgba(var(--brand-rgb), 0.2), transparent 60%), var(--rd-card-bg);
    border: 1px solid rgba(var(--brand-rgb), 0.3); border-radius: var(--rd-radius-lg);
    padding: clamp(1.4rem, 3vw, 2.2rem); box-shadow: var(--rd-elev);
}
.cb-tournament-split { display: grid; grid-template-columns: 0.9fr 1.1fr; gap: 24px; align-items: center; }
.cb-tn-badge { display: inline-flex; padding: 6px 14px; border-radius: var(--rd-radius-pill); background: rgba(var(--brand-rgb), 0.18); border: 1px solid rgba(var(--brand-rgb), 0.4); font-weight: 800; color: #fff; margin-bottom: 10px; }
.cb-tn-pool { color: var(--rd-ink-dim); margin: 6px 0 16px; }
.cb-tn-pool strong { color: var(--brand-primary-light, var(--brand-primary)); font-size: 1.15em; }
.cb-leaderboard { display: flex; flex-direction: column; gap: 8px; }
.cb-lb-row { display: grid; grid-template-columns: 48px 1fr auto; align-items: center; gap: 12px; padding: 12px 16px; border-radius: 12px; background: rgba(255,255,255,0.03); border: 1px solid var(--rd-line); }
.cb-lb-row-top { background: rgba(var(--brand-rgb), 0.10); border-color: rgba(var(--brand-rgb), 0.4); }
.cb-lb-rank { font-size: 20px; text-align: center; font-weight: 800; }
.cb-lb-name { font-weight: 700; color: #fff; }
.cb-lb-pts { font-weight: 800; color: var(--brand-primary-light, var(--brand-primary)); }
.cb-tn-foot { margin-top: 16px; text-align: center; }
.cb-tn-cta { display: inline-flex; }

/* ---- VIP ---- */
.cb-vip-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 12px; }
.cb-vip-scroll { display: flex; gap: 12px; overflow-x: auto; padding-bottom: 10px; }
.cb-vip-scroll .cb-vip-card { min-width: 180px; }
.cb-vip-card {
    display: flex; flex-direction: column; align-items: center; text-align: center; gap: 4px;
    padding: 20px 14px; border-radius: var(--rd-tile-radius);
    background: rgba(255,255,255,0.03); border: 1px solid var(--rd-line); transition: transform .2s ease, border-color .2s ease;
}
.cb-vip-card:hover { transform: translateY(-4px); border-color: var(--rd-card-border-hi); }
.cb-vip-card-hi { background: linear-gradient(165deg, rgba(var(--brand-rgb), 0.16), rgba(255,255,255,0.02)); border-color: rgba(var(--brand-rgb), 0.4); }
.cb-vip-ic { font-size: 30px; }
.cb-vip-title { font-weight: 800; color: #fff; }
.cb-vip-cb { font-weight: 800; color: var(--brand-primary-light, var(--brand-primary)); font-size: 14px; }
.cb-vip-note { font-size: 12px; color: var(--rd-ink-dim); }

/* ---- Платежи ---- */
.cb-pay-grid { display: flex; flex-wrap: wrap; gap: 10px; }
.cb-pay-badge {
    display: inline-flex; align-items: center; padding: 12px 20px; border-radius: var(--rd-tile-radius);
    background: rgba(255,255,255,0.05); border: 1px solid var(--rd-line); color: #fff; font-weight: 700; letter-spacing: 0.4px;
}

/* ---- Sticky мобильная панель ---- */
/* Только на телефонах (≤640px): на планшетах есть гамбургер-меню, чтобы не дублировать
   навигацию и не держать лишний нижний отступ. */
.cb-mobile-bar { display: none; }
@media (max-width: 640px) {
    .cb-mobile-bar {
        display: grid; grid-template-columns: repeat(5, 1fr);
        position: fixed; left: 0; right: 0; bottom: 0; z-index: 9998;
        background: linear-gradient(180deg, rgba(8,10,16,0.92), rgba(8,10,16,0.99));
        backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px);
        border-top: 1px solid var(--rd-line); padding: 6px 6px calc(6px + env(safe-area-inset-bottom));
    }
    body { padding-bottom: 72px; }
    .floating-offer, #bonusPopup { bottom: 80px !important; }
}
.cb-tab { display: flex; flex-direction: column; align-items: center; gap: 3px; padding: 8px 4px; color: var(--rd-ink-dim); border-radius: 12px; }
.cb-tab-ic { font-size: 18px; line-height: 1; }
.cb-tab-tx { font-size: 10px; font-weight: 700; }
.cb-tab-active { color: #fff; background: rgba(var(--brand-rgb), 0.16); }
.cb-tab-cta { color: #fff; }
.cb-tab-cta .cb-tab-ic {
    width: 40px; height: 40px; display: inline-flex; align-items: center; justify-content: center;
    border-radius: 50%; background: var(--rd-cta); box-shadow: var(--rd-glow); margin-top: -16px; font-size: 15px;
}

/* ---- Светлая тема t4 для новых блоков ---- */
body.theme-t4 .cb-section-title, body.theme-t4 .cb-cat-tx, body.theme-t4 .cb-vip-title,
body.theme-t4 .cb-lb-name, body.theme-t4 .cb-pay-badge, body.theme-t4 .cb-cat-chip { color: #0f172a !important; }
body.theme-t4 .cb-section-sub, body.theme-t4 .cb-cat-meta, body.theme-t4 .cb-vip-note,
body.theme-t4 .cb-provider-chip, body.theme-t4 .cb-tn-pool { color: #475569 !important; }
/* Светлые подложки плиток вместо полупрозрачно-белых */
body.theme-t4 .cb-cat-tile, body.theme-t4 .cb-vip-card, body.theme-t4 .cb-lb-row,
body.theme-t4 .cb-pay-badge, body.theme-t4 .cb-provider-chip,
body.theme-t4 .cb-cat-chip { background: #f1f5f9 !important; }
/* Бейдж турнира: тёмный бренд-текст на светлой подложке */
body.theme-t4 .cb-tn-badge {
    color: var(--brand-primary-dark, #0f172a) !important;
    background: rgba(var(--brand-rgb),0.12);
    border-color: rgba(var(--brand-rgb),0.35);
}
body.theme-t4 .cb-mobile-bar { background: linear-gradient(180deg, rgba(255,255,255,0.92), rgba(255,255,255,0.99)); }
body.theme-t4 .cb-tab { color: #475569; }
body.theme-t4 .cb-tab-active { color: #0f172a; }

/* ---- Плюсы/минусы и сравнительные таблицы ---- */
.cb-proscons, .cb-compare {
    margin: 28px 0; padding: 24px;
    background: var(--rd-card-bg, rgba(255,255,255,0.03));
    border: 1px solid var(--rd-card-border, rgba(255,255,255,0.08));
    border-radius: var(--rd-radius-lg, 16px);
}
.cb-pc-split { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.cb-pc-col { padding: 16px; border-radius: 12px; }
.cb-pc-col-pro { background: rgba(16, 185, 129, 0.08); border: 1px solid rgba(16, 185, 129, 0.25); }
.cb-pc-col-con { background: rgba(239, 68, 68, 0.08); border: 1px solid rgba(239, 68, 68, 0.25); }
.cb-pc-heading { font-size: 15px; font-weight: 800; margin: 0 0 12px; color: #fff; display: flex; align-items: center; gap: 8px; }
.cb-pc-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.cb-pc-item { display: flex; gap: 10px; align-items: flex-start; font-size: 14px; line-height: 1.45; color: var(--rd-ink, #e2e8f0); }
.cb-pc-ic { flex-shrink: 0; width: 22px; height: 22px; display: inline-flex; align-items: center; justify-content: center; border-radius: 50%; font-size: 11px; font-weight: 800; }
.cb-pc-pro .cb-pc-ic { background: rgba(16, 185, 129, 0.2); color: #34d399; }
.cb-pc-con .cb-pc-ic { background: rgba(239, 68, 68, 0.2); color: #f87171; }
.cb-proscons-stack .cb-pc-col { margin-bottom: 16px; }
.cb-pc-cards-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 12px; }
.cb-pc-card { padding: 14px; border-radius: 12px; font-size: 13px; line-height: 1.45; }
.cb-pc-card-pro { background: rgba(16, 185, 129, 0.1); border: 1px solid rgba(16, 185, 129, 0.2); }
.cb-pc-card-con { background: rgba(239, 68, 68, 0.1); border: 1px solid rgba(239, 68, 68, 0.2); }
.cb-pc-card .cb-pc-ic { margin-bottom: 8px; }
.cb-pc-table-wrap, .cb-cmp-table-wrap { overflow-x: auto; margin-top: 12px; }
.cb-pc-table, .cb-cmp-table { width: 100%; border-collapse: collapse; font-size: 14px; }
.cb-pc-table th, .cb-cmp-table th { text-align: left; padding: 10px 12px; background: rgba(var(--brand-rgb), 0.12); color: #fff; font-weight: 700; }
.cb-pc-table td, .cb-cmp-table td { padding: 10px 12px; border-bottom: 1px solid var(--rd-line, rgba(255,255,255,0.06)); color: var(--rd-ink, #e2e8f0); }
.cb-pc-td-pro { color: #6ee7b7 !important; }
.cb-pc-td-con { color: #fca5a5 !important; }
.cb-pc-meter-row { display: flex; align-items: center; gap: 12px; margin: 12px 0 8px; }
.cb-pc-meter-label { font-size: 13px; font-weight: 700; min-width: 64px; color: var(--rd-ink-dim); }
.cb-pc-meter { flex: 1; height: 8px; background: rgba(255,255,255,0.08); border-radius: 99px; overflow: hidden; }
.cb-pc-meter-fill { height: 100%; border-radius: 99px; }
.cb-pc-meter-pro { background: linear-gradient(90deg, #10b981, #34d399); }
.cb-pc-meter-con { background: linear-gradient(90deg, #ef4444, #f87171); }
.cb-pc-meter-val { font-size: 12px; font-weight: 800; color: var(--rd-ink-dim); min-width: 36px; }
.cb-pc-list-inline { margin-bottom: 16px; }
.cb-cmp-cards-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 12px; margin-top: 12px; }
.cb-cmp-card { padding: 14px; border-radius: 12px; background: rgba(255,255,255,0.04); border: 1px solid var(--rd-card-border); display: flex; flex-direction: column; gap: 6px; }
.cb-cmp-param { font-size: 12px; color: var(--rd-ink-dim); text-transform: uppercase; letter-spacing: 0.04em; }
.cb-cmp-brand { font-size: 18px; font-weight: 800; color: var(--brand-primary-light, var(--brand-primary)); }
.cb-cmp-rival { font-size: 12px; color: var(--rd-ink-dim); }
.cb-cmp-bars-list { display: flex; flex-direction: column; gap: 14px; margin-top: 12px; }
.cb-cmp-row { display: grid; grid-template-columns: 140px 1fr; gap: 12px; align-items: center; }
.cb-cmp-label { font-size: 13px; font-weight: 600; color: var(--rd-ink-dim); }
.cb-cmp-bars { display: flex; flex-direction: column; gap: 6px; }
.cb-cmp-bar { padding: 8px 12px; border-radius: 8px; font-size: 13px; font-weight: 700; }
.cb-cmp-bar-brand { background: rgba(var(--brand-rgb), 0.18); color: #fff; border: 1px solid rgba(var(--brand-rgb), 0.35); }
.cb-cmp-bar-rival { background: rgba(255,255,255,0.05); color: var(--rd-ink-dim); }
.cb-cmp-scroll-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; }
.cb-cmp-table .cb-cmp-win td:nth-child(2) { color: #6ee7b7; }
.cb-cmp-dual-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 12px; }
.cb-cmp-table-half { font-size: 13px; }

body.theme-t4 .cb-proscons, body.theme-t4 .cb-compare {
    background: #f8fafc !important; border-color: rgba(15,23,42,0.08) !important;
}
body.theme-t4 .cb-pc-heading, body.theme-t4 .cb-pc-item,
body.theme-t4 .cb-cmp-brand, body.theme-t4 .cb-cmp-table td,
body.theme-t4 .cb-cmp-table th, body.theme-t4 .cb-pc-table td,
body.theme-t4 .cb-pc-table th { color: #0f172a !important; }
body.theme-t4 .cb-pc-col-pro { background: rgba(16,185,129,0.12); }
body.theme-t4 .cb-pc-col-con { background: rgba(239,68,68,0.1); }
body.theme-t4 .cb-pc-card, body.theme-t4 .cb-cmp-card { background: #f1f5f9 !important; border-color: rgba(15,23,42,0.08) !important; }
body.theme-t4 .cb-cmp-param, body.theme-t4 .cb-cmp-rival, body.theme-t4 .cb-cmp-label,
body.theme-t4 .cb-pc-meter-label, body.theme-t4 .cb-pc-meter-val { color: #475569 !important; }
body.theme-t4 .cb-cmp-bar-brand { color: #0f172a !important; }
body.theme-t4 .cb-cmp-table th, body.theme-t4 .cb-pc-table th { background: rgba(var(--brand-rgb),0.12) !important; }

@media (max-width: 760px) {
    .cb-pc-split, .cb-cmp-dual-grid { grid-template-columns: 1fr; }
    .cb-cmp-row { grid-template-columns: 1fr; }
    .cb-tournament-split { grid-template-columns: 1fr; }
    .cb-cat-grid-bento .cb-cat-tile:first-child { grid-column: span 1; }
}

/* конец REDESIGN 2026 */
