/*
Theme Name:     1xBet Nepal Child
Theme URI:      n/a
Template:       kadence
Author:         Rivit
Author URI:     n/a
Description:    Custom child theme for 1xBet Nepal
Version:        1.3
License:        GNU General Public License v3.0 (or later)
License URI:    https://www.gnu.org/licenses/gpl-3.0.html
*/

/* ========================================================
   OFFICIAL 1XBET PROMO BANNER (60,000 NPR TURNOVER)
   ======================================================== */

.xbet-promo-showcase {
  width: 100%;
  max-width: 1240px;
  margin: 32px auto 44px auto;
  box-sizing: border-box;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

.xbet-promo-frame {
  position: relative;
  background: linear-gradient(135deg, #092142 0%, #06172E 50%, #030C1A 100%);
  border: 1px solid rgba(20, 160, 255, 0.35);
  border-radius: 18px;
  box-shadow: 
    0 24px 60px -10px rgba(0, 0, 0, 0.8),
    inset 0 1px 0 rgba(255, 255, 255, 0.15),
    0 0 45px -10px rgba(20, 160, 255, 0.25);
  overflow: hidden;
  box-sizing: border-box;
}

/* 1xBet Signature Angled Brand Accent Lines */
.xbet-bg-accents {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  overflow: hidden;
  z-index: 1;
}

.xbet-accent-skew {
  position: absolute;
  top: -40%;
  right: 20%;
  width: 280px;
  height: 200%;
  background: linear-gradient(115deg, transparent 0%, rgba(20, 160, 255, 0.04) 45%, rgba(20, 160, 255, 0.1) 50%, transparent 55%);
  transform: skewX(-24deg);
}

.xbet-accent-glow {
  position: absolute;
  top: -100px;
  right: -50px;
  width: 450px;
  height: 450px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(20, 160, 255, 0.2) 0%, rgba(80, 184, 0, 0.08) 50%, transparent 70%);
  filter: blur(80px);
}

/* Layout Grid */
.xbet-promo-layout {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 36px;
  padding: 40px 48px;
  box-sizing: border-box;
}

/* Left Content Area */
.xbet-promo-main {
  flex: 1;
  max-width: 690px;
  display: flex;
  flex-direction: column;
}

/* Badges */
.xbet-badge-group {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  margin-bottom: 14px;
}

.xbet-tag-pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(20, 160, 255, 0.12);
  border: 1px solid #14A0FF;
  color: #14A0FF;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 1px;
  text-transform: uppercase;
  padding: 6px 14px;
  border-radius: 6px;
}

.live-pulse {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #14A0FF;
  box-shadow: 0 0 10px #14A0FF;
  animation: xbet-pulse 1.8s infinite;
}

@keyframes xbet-pulse {
  0%, 100% { opacity: 1; transform: scale(1); }
  50% { opacity: 0.3; transform: scale(0.85); }
}

.xbet-tag-sub {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.8px;
  color: #93B2D7;
  text-transform: uppercase;
}

/* Headline */
.xbet-hero-title {
  font-family: 'Sora', 'Inter', sans-serif !important;
  font-size: 42px !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;
  color: #FFFFFF !important;
  letter-spacing: -0.5px;
  margin: 0 0 18px 0 !important;
  text-transform: uppercase !important;
}

.text-1x-blue {
  color: #14A0FF !important;
  text-shadow: 0 0 25px rgba(20, 160, 255, 0.5);
}

/* Turnover Highlight Banner */
.xbet-turnover-banner {
  display: flex;
  align-items: center;
  gap: 16px;
  background: rgba(6, 23, 46, 0.85);
  border: 1px solid rgba(80, 184, 0, 0.45);
  border-left: 4px solid #50B800;
  border-radius: 10px;
  padding: 14px 18px;
  margin-bottom: 16px;
  backdrop-filter: blur(8px);
}

.turnover-badge {
  display: flex;
  flex-direction: column;
  background: linear-gradient(135deg, #50B800 0%, #3B8C00 100%);
  color: #FFFFFF;
  padding: 8px 14px;
  border-radius: 7px;
  flex-shrink: 0;
  text-align: center;
  box-shadow: 0 4px 14px rgba(80, 184, 0, 0.35);
}

.tb-title {
  font-size: 9.5px;
  font-weight: 800;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.9);
}

.tb-amount {
  font-family: 'Sora', sans-serif;
  font-size: 17px;
  font-weight: 800;
  line-height: 1.2;
}

.turnover-desc {
  font-size: 13.5px;
  line-height: 1.5;
  color: #D6E6F5;
}

.turnover-desc strong {
  color: #FFFFFF;
}

/* Summary Description */
.xbet-summary-text {
  font-size: 14.5px;
  line-height: 1.6;
  color: #9FBBDC;
  margin: 0 0 24px 0 !important;
  max-width: 630px;
}

.xbet-summary-text strong {
  color: #FFFFFF;
}

/* CTA & Payment Methods */
.xbet-cta-row {
  display: flex;
  align-items: center;
  gap: 24px;
  flex-wrap: wrap;
}

.xbet-official-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  background: linear-gradient(180deg, #56C400 0%, #46A300 100%);
  color: #FFFFFF !important;
  font-size: 15px;
  font-weight: 800;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  padding: 15px 34px;
  border-radius: 8px;
  text-decoration: none !important;
  box-shadow: 
    0 10px 25px -4px rgba(80, 184, 0, 0.6),
    inset 0 1px 0 rgba(255, 255, 255, 0.3);
  transition: all 0.22s ease-in-out;
  flex-shrink: 0;
}

.xbet-official-btn:hover {
  background: linear-gradient(180deg, #60D800 0%, #4EBA00 100%);
  transform: translateY(-2px);
  box-shadow: 
    0 14px 32px -4px rgba(80, 184, 0, 0.75),
    inset 0 1px 0 rgba(255, 255, 255, 0.4);
  filter: brightness(1.05);
}

.xbet-official-btn:active {
  transform: translateY(0);
}

.btn-arrow {
  transition: transform 0.2s ease;
}

.xbet-official-btn:hover .btn-arrow {
  transform: translateX(4px);
}

/* Payment Methods Strip */
.xbet-payment-strip {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.payment-strip-title {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  color: #6A8BB3;
}

.payment-strip-logos {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.payment-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #FFFFFF;
  border-radius: 6px;
  padding: 3px 8px;
  height: 28px;
  min-width: 54px;
  box-sizing: border-box;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.4);
  border: 1px solid rgba(255, 255, 255, 0.95);
  transition: transform 0.18s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.18s cubic-bezier(0.4, 0, 0.2, 1);
  cursor: default;
}

.payment-pill:hover {
  transform: translateY(-2px);
  box-shadow: 0 5px 12px rgba(0, 0, 0, 0.5), 0 0 10px rgba(20, 160, 255, 0.35);
}

.payment-pill img {
  height: 18px;
  max-height: 20px;
  width: auto;
  max-width: 50px;
  object-fit: contain;
  display: block;
}

/* Disclaimer */
.xbet-disclaimer {
  margin-top: 18px;
  font-size: 11px;
  color: #557297;
  line-height: 1.4;
}

/* Right Visual Side: Authentic Sportsbook VIP Ticket */
.xbet-promo-ticket-side {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.xbet-vip-pass {
  position: relative;
  width: 310px;
  background: linear-gradient(160deg, #0D2B52 0%, #071B36 50%, #041021 100%);
  border: 1px solid rgba(20, 160, 255, 0.45);
  border-radius: 16px;
  box-shadow: 
    0 16px 40px rgba(0, 0, 0, 0.65),
    inset 0 1px 0 rgba(255, 255, 255, 0.15),
    0 0 30px rgba(20, 160, 255, 0.2);
  padding: 22px 24px;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.vip-pass-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 12px;
  border-bottom: 1px dashed rgba(20, 160, 255, 0.3);
}

.brand-1x-logo {
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

.logo-box {
  background: #14A0FF;
  color: #FFFFFF;
  font-family: 'Sora', sans-serif;
  font-weight: 900;
  font-size: 15px;
  padding: 2px 7px;
  border-radius: 4px;
  line-height: 1.1;
}

.logo-text {
  font-family: 'Sora', sans-serif;
  font-weight: 900;
  font-size: 15px;
  color: #FFFFFF;
  letter-spacing: 0.5px;
}

.vip-status {
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.8px;
  color: #FFC107;
  background: rgba(255, 193, 7, 0.12);
  border: 1px solid rgba(255, 193, 7, 0.35);
  padding: 3px 8px;
  border-radius: 4px;
}

.vip-pass-body {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.pass-sub {
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  color: #8EB3DE;
  letter-spacing: 0.8px;
}

.pass-hero-value {
  display: flex;
  align-items: baseline;
  gap: 8px;
}

.pass-hero-value .num {
  font-family: 'Sora', sans-serif;
  font-size: 44px;
  font-weight: 900;
  line-height: 1;
  color: #FFFFFF;
  letter-spacing: -1px;
}

.pass-hero-value .curr {
  font-family: 'Sora', sans-serif;
  font-size: 20px;
  font-weight: 800;
  color: #14A0FF;
}

.vip-pass-meta {
  display: flex;
  flex-direction: column;
  gap: 8px;
  background: rgba(3, 13, 26, 0.6);
  border-radius: 8px;
  padding: 10px 14px;
  border: 1px solid rgba(255, 255, 255, 0.05);
}

.meta-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 11.5px;
}

.meta-item .m-label {
  color: #7A9BC4;
  font-weight: 600;
  text-transform: uppercase;
  font-size: 10.5px;
}

.meta-item .m-val {
  color: #FFFFFF;
  font-weight: 700;
  font-family: 'Sora', sans-serif;
}

.meta-item.highlight .m-val {
  color: #50B800;
  font-weight: 800;
}

/* Barcode Area */
.vip-pass-barcode {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  padding-top: 10px;
  border-top: 1px dashed rgba(20, 160, 255, 0.3);
}

.barcode-lines {
  width: 100%;
  height: 22px;
  background: repeating-linear-gradient(
    90deg,
    #14A0FF 0px,
    #14A0FF 2px,
    transparent 2px,
    transparent 5px,
    #FFFFFF 5px,
    #FFFFFF 8px,
    transparent 8px,
    transparent 11px,
    #50B800 11px,
    #50B800 13px,
    transparent 13px,
    transparent 17px
  );
  opacity: 0.7;
}

.barcode-id {
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 1px;
  color: #6C8EBA;
  text-transform: uppercase;
}

/* ========================================================
   RESPONSIVE DESIGN (TABLET & MOBILE)
   ======================================================== */

@media (max-width: 1080px) {
  .xbet-promo-layout {
    padding: 34px 34px;
    gap: 28px;
  }
  .xbet-hero-title {
    font-size: 34px !important;
  }
  .xbet-vip-pass {
    width: 270px;
    padding: 18px 20px;
  }
  .pass-hero-value .num {
    font-size: 36px;
  }
}

@media (max-width: 860px) {
  .xbet-promo-layout {
    flex-direction: column;
    padding: 30px 22px;
    gap: 28px;
  }

  .xbet-promo-main {
    max-width: 100%;
    width: 100%;
  }

  .xbet-promo-ticket-side {
    width: 100%;
  }

  .xbet-vip-pass {
    width: 100%;
    max-width: 360px;
  }

  .xbet-hero-title {
    font-size: 30px !important;
  }

  .xbet-cta-row {
    flex-direction: column;
    align-items: stretch;
    gap: 16px;
  }

  .xbet-official-btn {
    width: 100%;
    text-align: center;
    padding: 16px 20px;
  }

  .payment-strip-logos {
    justify-content: flex-start;
  }
}

@media (max-width: 480px) {
  .xbet-hero-title {
    font-size: 26px !important;
  }

  .xbet-turnover-banner {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }

  .turnover-badge {
    width: 100%;
    box-sizing: border-box;
  }
}

/* ========================================================
   OFFICIAL 1XBET SPORTSBOOK TOP HEADER & NAVIGATION
   ======================================================== */

html {
  scroll-behavior: smooth !important;
}

/* Offset for sticky header on anchor scroll */
#games,
#football,
#cricket,
#payments,
#promo,
#bonus-promo,
[id="games"],
[id="football"],
[id="cricket"],
[id="payments"],
[id="promo"] {
  scroll-margin-top: 92px !important;
}

/* Sticky Header with 1xBet Stadium Styling */
header.wp-block-kadence-header,
.wp-block-kadence-header1239-cpt-id {
  position: sticky !important;
  top: 0 !important;
  z-index: 99999 !important;
  background: linear-gradient(180deg, rgba(6, 20, 39, 0.98) 0%, rgba(3, 13, 26, 0.96) 100%) !important;
  border-bottom: 1px solid rgba(20, 160, 255, 0.22) !important;
  box-shadow: 
    0 8px 32px rgba(0, 0, 0, 0.55),
    0 1px 0 rgba(255, 255, 255, 0.08) inset,
    0 2px 10px rgba(20, 160, 255, 0.1) !important;
  transition: all 0.25s ease !important;
}

.wp-block-kadence-header-desktop.kb-header-container,
.wp-block-kadence-header-tablet.kb-header-container {
  backdrop-filter: blur(16px) saturate(180%) !important;
  -webkit-backdrop-filter: blur(16px) saturate(180%) !important;
}

.wp-block-kadence-header-row.wp-block-kadence-header-row1239_bba759-c7 .kadence-header-row-inner {
  min-height: 74px !important;
  padding: 0 24px !important;
  max-width: 1240px !important;
  margin: 0 auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
}

/* 1xBet Logo Polish */
.kb-identity a,
.wp-block-site-logo img {
  display: flex !important;
  align-items: center !important;
  transition: transform 0.2s cubic-bezier(0.4, 0, 0.2, 1), filter 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.kb-identity a:hover .custom-logo,
.wp-block-site-logo img:hover {
  transform: scale(1.03) !important;
  filter: drop-shadow(0 0 12px rgba(20, 160, 255, 0.6)) !important;
}

/* Navigation Menu Container */
.wp-block-kadence-navigation1243-cpt-id .menu-container ul.kb-navigation {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Nav Menu Items */
.wp-block-kadence-navigation1243-cpt-id .kb-navigation > li.menu-item {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
}

.wp-block-kadence-navigation1243-cpt-id .kb-navigation > li > .kb-link-wrap > a.kb-nav-link-content {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-family: 'Sora', sans-serif !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.8px !important;
  text-transform: uppercase !important;
  color: #C3D7EF !important;
  text-decoration: none !important;
  padding: 8px 16px !important;
  border-radius: 8px !important;
  background: rgba(255, 255, 255, 0.03) !important;
  border: 1px solid rgba(255, 255, 255, 0.06) !important;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
  cursor: pointer !important;
}

/* Dynamic Hover Effect */
.wp-block-kadence-navigation1243-cpt-id .kb-navigation > li > .kb-link-wrap > a.kb-nav-link-content:hover,
.wp-block-kadence-navigation1243-cpt-id .kb-navigation > li.current-menu-item > .kb-link-wrap > a.kb-nav-link-content {
  color: #FFFFFF !important;
  background: rgba(20, 160, 255, 0.14) !important;
  border-color: rgba(20, 160, 255, 0.45) !important;
  box-shadow: 
    0 0 16px rgba(20, 160, 255, 0.3),
    inset 0 1px 0 rgba(255, 255, 255, 0.15) !important;
  transform: translateY(-1px) !important;
  text-shadow: 0 0 8px rgba(20, 160, 255, 0.5) !important;
}

/* Vector 1xBet Cyan Icons via ::before */
.wp-block-kadence-navigation1243-cpt-id a[href="#football"]::before,
.wp-block-kadence-navigation1251-cpt-id a[href="#football"]::before {
  content: "" !important;
  display: inline-block !important;
  width: 17px !important;
  height: 17px !important;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2314A0FF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpolygon points='12 7 16 10 14.5 15 9.5 15 8 10 12 7'/%3E%3Cline x1='12' y1='2' x2='12' y2='7'/%3E%3Cline x1='16' y1='10' x2='21' y2='8.5'/%3E%3Cline x1='14.5' y1='15' x2='18' y2='20'/%3E%3Cline x1='9.5' y1='15' x2='6' y2='20'/%3E%3Cline x1='8' y1='10' x2='3' y2='8.5'/%3E%3C/svg%3E") no-repeat center / contain !important;
  filter: drop-shadow(0 0 3px rgba(20, 160, 255, 0.5)) !important;
}

.wp-block-kadence-navigation1243-cpt-id a[href="#cricket"]::before,
.wp-block-kadence-navigation1251-cpt-id a[href="#cricket"]::before {
  content: "" !important;
  display: inline-block !important;
  width: 17px !important;
  height: 17px !important;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2314A0FF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='18' cy='6' r='3' fill='%2314A0FF'/%3E%3Cpath d='M3 21l8-8'/%3E%3Cpath d='M9 15l2 2'/%3E%3Cpath d='M14 6l4 4-7 7-4-4z'/%3E%3C/svg%3E") no-repeat center / contain !important;
  filter: drop-shadow(0 0 3px rgba(20, 160, 255, 0.5)) !important;
}

.wp-block-kadence-navigation1243-cpt-id a[href="#payments"]::before,
.wp-block-kadence-navigation1251-cpt-id a[href="#payments"]::before {
  content: "" !important;
  display: inline-block !important;
  width: 17px !important;
  height: 17px !important;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2314A0FF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='1' y='4' width='22' height='16' rx='3' ry='3'/%3E%3Cline x1='1' y1='10' x2='23' y2='10'/%3E%3Cpath d='M6 15h3'/%3E%3C/svg%3E") no-repeat center / contain !important;
  filter: drop-shadow(0 0 3px rgba(20, 160, 255, 0.5)) !important;
}

.wp-block-kadence-navigation1243-cpt-id a[href="#games"]::before,
.wp-block-kadence-navigation1251-cpt-id a[href="#games"]::before {
  content: "" !important;
  display: inline-block !important;
  width: 17px !important;
  height: 17px !important;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2314A0FF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='6' width='20' height='12' rx='6'/%3E%3Cpath d='M6 12h4m-2-2v4'/%3E%3Ccircle cx='15' cy='11' r='1.2' fill='%2314A0FF'/%3E%3Ccircle cx='18' cy='13' r='1.2' fill='%2314A0FF'/%3E%3C/svg%3E") no-repeat center / contain !important;
  filter: drop-shadow(0 0 3px rgba(20, 160, 255, 0.5)) !important;
}

.wp-block-kadence-navigation1243-cpt-id a[href="#promo"]::before,
.wp-block-kadence-navigation1251-cpt-id a[href="#promo"]::before {
  content: "" !important;
  display: inline-block !important;
  width: 17px !important;
  height: 17px !important;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2314A0FF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 12 20 22 4 22 4 12'/%3E%3Crect x='2' y='7' width='20' height='5'/%3E%3Cline x1='12' y1='22' x2='12' y2='7'/%3E%3Cpath d='M12 7H7.5a2.5 2.5 0 0 1 0-5C11 2 12 7 12 7z'/%3E%3Cpath d='M12 7h4.5a2.5 2.5 0 0 0 0-5C13 2 12 7 12 7z'/%3E%3C/svg%3E") no-repeat center / contain !important;
  filter: drop-shadow(0 0 3px rgba(20, 160, 255, 0.5)) !important;
}

/* Glowing "HOT" Badge on Promo Link */
.wp-block-kadence-navigation1243-cpt-id a[href="#promo"]::after,
.wp-block-kadence-navigation1251-cpt-id a[href="#promo"]::after {
  content: "HOT" !important;
  font-family: 'Sora', sans-serif !important;
  font-size: 8.5px !important;
  font-weight: 900 !important;
  letter-spacing: 0.5px !important;
  color: #020B16 !important;
  background: #50B800 !important;
  padding: 1px 5px !important;
  border-radius: 4px !important;
  margin-left: 5px !important;
  box-shadow: 0 0 8px rgba(80, 184, 0, 0.7) !important;
  animation: pulse-hot 2s infinite ease-in-out !important;
}

@keyframes pulse-hot {
  0%, 100% { transform: scale(1); opacity: 1; }
  50% { transform: scale(1.08); opacity: 0.88; box-shadow: 0 0 12px rgba(80, 184, 0, 0.9); }
}

/* Official 1xBet Electric Green REGISTER Button */
.wp-block-kadence-advancedbtn.kb-btns1239_fc80fe-d6 a.kb-button,
.wp-block-kadence-advancedbtn.kb-btns1239_a07c14-e6 a.kb-button,
.kb-btn1239_103c11-d9,
.kb-btn1239_b56766-9c {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: linear-gradient(135deg, #5CD600 0%, #3D9900 100%) !important;
  color: #FFFFFF !important;
  font-family: 'Sora', sans-serif !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  padding: 10px 24px !important;
  border-radius: 8px !important;
  border: 1px solid rgba(255, 255, 255, 0.28) !important;
  box-shadow: 
    0 4px 16px rgba(80, 184, 0, 0.42),
    inset 0 1px 0 rgba(255, 255, 255, 0.35) !important;
  text-decoration: none !important;
  cursor: pointer !important;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.wp-block-kadence-advancedbtn.kb-btns1239_fc80fe-d6 a.kb-button:hover,
.wp-block-kadence-advancedbtn.kb-btns1239_a07c14-e6 a.kb-button:hover,
.kb-btn1239_103c11-d9:hover,
.kb-btn1239_b56766-9c:hover {
  transform: translateY(-2px) scale(1.02) !important;
  background: linear-gradient(135deg, #6BE800 0%, #46AB00 100%) !important;
  box-shadow: 
    0 6px 22px rgba(80, 184, 0, 0.65),
    0 0 14px rgba(20, 160, 255, 0.35) !important;
  filter: brightness(1.08) !important;
}

/* ========================================================
   OFFICIAL 1XBET MOBILE OFF-CANVAS NAVIGATION & DRAWER
   ======================================================== */

/* Mobile Header Row */
.wp-block-kadence-header-row.wp-block-kadence-header-row1239_772ef9-de .kadence-header-row-inner {
  min-height: 62px !important;
  padding: 0 16px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  box-sizing: border-box !important;
}

.wp-block-kadence-header-row.wp-block-kadence-header-row1239_772ef9-de .wp-block-kadence-header-column-tablet-left {
  display: flex !important;
  align-items: center !important;
}

.wp-block-kadence-header-row.wp-block-kadence-header-row1239_772ef9-de .wp-block-kadence-header-column-tablet-right {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
}

/* 1xBet Cyan Hamburger Toggle Button */
.wp-block-kadence-off-canvas-trigger {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  padding: 0 !important;
  color: #FFFFFF !important;
  background: rgba(20, 160, 255, 0.12) !important;
  border: 1px solid rgba(20, 160, 255, 0.35) !important;
  border-radius: 8px !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3) !important;
}

.wp-block-kadence-off-canvas-trigger:hover,
.wp-block-kadence-off-canvas-trigger:focus {
  background: rgba(20, 160, 255, 0.25) !important;
  border-color: #14A0FF !important;
  box-shadow: 0 0 14px rgba(20, 160, 255, 0.45) !important;
  transform: scale(1.03) !important;
}

.wp-block-kadence-off-canvas-trigger svg {
  width: 24px !important;
  height: 24px !important;
  stroke: #14A0FF !important;
  stroke-width: 2.2 !important;
  transition: stroke 0.2s ease !important;
}

.wp-block-kadence-off-canvas-trigger:hover svg {
  stroke: #FFFFFF !important;
}

/* Off-Canvas Viewport Container */
.wp-block-kadence-off-canvas {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  height: 100dvh !important;
  z-index: 999999 !important;
  display: none;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  pointer-events: none;
}

.wp-block-kadence-off-canvas.show-off-canvas {
  display: block !important;
  pointer-events: auto !important;
}

/* Dimmed Stadium Glass Overlay */
.wp-block-kadence-off-canvas .kb-off-canvas-overlay {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  height: 100dvh !important;
  background: rgba(2, 11, 22, 0.78) !important;
  backdrop-filter: blur(6px) !important;
  -webkit-backdrop-filter: blur(6px) !important;
  z-index: 1000000 !important;
  opacity: 0;
  transition: opacity 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.wp-block-kadence-off-canvas.active .kb-off-canvas-overlay {
  opacity: 1 !important;
}

/* Premium Slide-In Off-Canvas Drawer */
.wp-block-kadence-off-canvas .kb-off-canvas-inner-wrap {
  position: fixed !important;
  top: 0 !important;
  bottom: 0 !important;
  right: 0 !important;
  left: auto !important;
  width: 320px !important;
  max-width: 86vw !important;
  height: 100vh !important;
  height: 100dvh !important;
  background: linear-gradient(180deg, #071E3B 0%, #030F1F 100%) !important;
  border-left: 1px solid rgba(20, 160, 255, 0.35) !important;
  box-shadow: -14px 0 45px rgba(0, 0, 0, 0.9) !important;
  z-index: 1000001 !important;
  transform: translateX(100%) !important;
  transition: transform 0.32s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.25s ease !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  -webkit-overflow-scrolling: touch !important;
  box-sizing: border-box !important;
}

.wp-block-kadence-off-canvas.active .kb-off-canvas-inner-wrap {
  transform: translateX(0%) !important;
  opacity: 1 !important;
}

.wp-block-kadence-off-canvas .kb-off-canvas-inner {
  padding: 24px 20px 36px 20px !important;
  display: flex !important;
  flex-direction: column !important;
  min-height: 100% !important;
  box-sizing: border-box !important;
}

/* Brand Header inside Drawer */
.xbet-drawer-brand {
  display: flex !important;
  align-items: center !important;
  padding-bottom: 20px !important;
  margin-bottom: 8px !important;
  border-bottom: 1px solid rgba(20, 160, 255, 0.22) !important;
  padding-right: 52px !important;
}

.xbet-drawer-brand a {
  display: flex !important;
  align-items: center !important;
  text-decoration: none !important;
}

/* High-Contrast Close Button */
.wp-block-kadence-off-canvas .kb-off-canvas-close {
  position: absolute !important;
  top: 18px !important;
  right: 18px !important;
  width: 40px !important;
  height: 40px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #FFFFFF !important;
  background: rgba(20, 160, 255, 0.12) !important;
  border: 1px solid rgba(20, 160, 255, 0.38) !important;
  border-radius: 50% !important;
  cursor: pointer !important;
  transition: all 0.25s ease !important;
  z-index: 1000002 !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4) !important;
  outline: none !important;
}

.wp-block-kadence-off-canvas .kb-off-canvas-close:hover,
.wp-block-kadence-off-canvas .kb-off-canvas-close:focus {
  background: rgba(20, 160, 255, 0.3) !important;
  border-color: #14A0FF !important;
  transform: rotate(90deg) scale(1.08) !important;
  box-shadow: 0 0 16px rgba(20, 160, 255, 0.6) !important;
}

.wp-block-kadence-off-canvas .kb-off-canvas-close svg {
  width: 20px !important;
  height: 20px !important;
  stroke: #FFFFFF !important;
  stroke-width: 2.2 !important;
}

/* Off-Canvas Navigation Links */
.wp-block-kadence-navigation1251-cpt-id ul.kb-navigation {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  padding: 10px 0 24px 0 !important;
  margin: 0 !important;
  list-style: none !important;
}

.wp-block-kadence-navigation1251-cpt-id ul.kb-navigation > li.menu-item {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
}

.wp-block-kadence-navigation1251-cpt-id ul.kb-navigation a.kb-nav-link-content {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  font-family: 'Sora', sans-serif !important;
  font-size: 14.5px !important;
  font-weight: 700 !important;
  color: #D3E4F8 !important;
  padding: 14px 18px !important;
  background: rgba(255, 255, 255, 0.04) !important;
  border-radius: 10px !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.8px !important;
  text-decoration: none !important;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.wp-block-kadence-navigation1251-cpt-id ul.kb-navigation a.kb-nav-link-content:hover,
.wp-block-kadence-navigation1251-cpt-id ul.kb-navigation a.kb-nav-link-content:active {
  background: rgba(20, 160, 255, 0.18) !important;
  border-color: rgba(20, 160, 255, 0.5) !important;
  color: #FFFFFF !important;
  transform: translateX(4px) !important;
  box-shadow: 0 4px 16px rgba(20, 160, 255, 0.28) !important;
}

/* Off-Canvas Register CTA Button */
.wp-block-kadence-advancedbtn.kb-btns1239_a07c14-e6 {
  margin-top: auto !important;
  padding-top: 18px !important;
  border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.wp-block-kadence-advancedbtn.kb-btns1239_a07c14-e6 a.kb-button {
  width: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 14px 20px !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  letter-spacing: 1px !important;
  border-radius: 10px !important;
  box-sizing: border-box !important;
}

/* ========================================================
   MOBILE RESPONSIVE & LAYOUT HARDENING
   ======================================================== */

/* Mobile Background Resilience (prevents iOS white gaps) */
@media (max-width: 1024px) {
  html,
  body,
  .site,
  .wp-site-blocks,
  #page,
  #wrapper,
  #inner-wrap,
  #primary,
  .content-container,
  #main,
  .content-wrap,
  article,
  .entry-content {
    background-color: #020B16 !important;
  }

  body,
  .site,
  .wp-site-blocks,
  #page {
    background-attachment: scroll !important;
  }
}

/* Mobile Hero Mascot & Typography */
@media (max-width: 767px) {
  #games {
    padding-top: 20px !important;
    padding-bottom: 24px !important;
  }

  #games h1,
  .kt-adv-heading1258_10602e-6c {
    font-size: 32px !important;
    line-height: 1.2 !important;
    margin-bottom: 12px !important;
  }

  #games .wp-block-column:last-child {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    margin-top: 16px !important;
  }

  #games img {
    max-width: 88% !important;
    height: auto !important;
    margin: 0 auto !important;
    display: block !important;
    filter: drop-shadow(0 12px 28px rgba(0, 0, 0, 0.7)) !important;
  }
}

/* Mobile Section Badges Polish (FOOTBALL, CRICKET, PAYMENTS, PROMO) */
.kb-btn1258_79599d-4a,
.kb-btn1258_a3bf6b-05,
.kb-btn1258_b8f0ca-2d,
.kb-btn1258_cf4b68-2d,
.kb-btn1258_6e6590-83 {
  background: rgba(20, 160, 255, 0.12) !important;
  border: 1px solid #14A0FF !important;
  color: #FFFFFF !important;
  font-family: 'Sora', sans-serif !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: 1.2px !important;
  padding: 6px 14px !important;
  border-radius: 6px !important;
  box-shadow: 0 0 12px rgba(20, 160, 255, 0.25) !important;
}

.kb-btn1258_79599d-4a .kt-btn-inner-text,
.kb-btn1258_a3bf6b-05 .kt-btn-inner-text,
.kb-btn1258_b8f0ca-2d .kt-btn-inner-text,
.kb-btn1258_cf4b68-2d .kt-btn-inner-text,
.kb-btn1258_6e6590-83 .kt-btn-inner-text {
  color: #FFFFFF !important;
}

/* Swipeable Payment Grid on Mobile */
@media (max-width: 767px) {
  .payment-grid {
    display: flex !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch !important;
    padding: 10px 16px 24px 16px !important;
    margin-left: -16px !important;
    margin-right: -16px !important;
    gap: 16px !important;
  }

  .payment-card {
    scroll-snap-align: start !important;
    flex: 0 0 220px !important;
    width: 220px !important;
    min-width: 220px !important;
  }
}

