*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --bg-primary:#0a0f0a;
  --bg-secondary:#111811;
  --bg-card:#1a2418;
  --bg-card-hover:#222e20;
  --green-primary:#1a8c3a;
  --green-bright:#28c94f;
  --green-neon:#39ff14;
  --green-dark:#0d3d1a;
  --gold:#d4a017;
  --gold-light:#f0c040;
  --gold-dark:#a67c00;
  --text-primary:#ffffff;
  --text-secondary:#b0b8a8;
  --text-gold:#d4a017;
  --border-gold:rgba(212,160,23,.3);
  --border-green:rgba(40,201,79,.2);
  --shadow-gold:0 0 20px rgba(212,160,23,.15);
  --shadow-green:0 0 20px rgba(40,201,79,.1);
  --radius:8px;
  --radius-lg:12px;
  --font-main:'Inter',sans-serif;
  --font-display:'Playfair Display',serif;
}
html{scroll-behavior:smooth}
body{font-family:var(--font-main);background:var(--bg-primary);color:var(--text-primary);min-height:100vh;overflow-x:hidden;position:relative}
body > *:not(.casino-bg):not(.modal-overlay):not(.support-fab):not(.loading-screen):not(.scroll-top):not(.push-toast){position:relative;z-index:1}
a{text-decoration:none;color:inherit}
button{cursor:pointer;border:none;font-family:inherit}
.hidden{display:none!important}

/* BUTTONS */
.btn{padding:10px 20px;border-radius:var(--radius);font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.5px;transition:all .2s}
.btn-sm{padding:7px 14px;font-size:11px}
.btn-lg{padding:14px 32px;font-size:15px}
.btn-full{width:100%}
.btn-gold{background:linear-gradient(135deg,var(--gold),var(--gold-light));color:#000}
.btn-gold:hover{background:linear-gradient(135deg,var(--gold-light),#ffe066);transform:translateY(-1px);box-shadow:var(--shadow-gold)}
.btn-green{background:var(--green-bright);color:#000}
.btn-green:hover{background:var(--green-neon);transform:translateY(-1px);box-shadow:var(--shadow-green)}
.btn-outline-gold{background:transparent;border:1px solid var(--gold);color:var(--gold)}
.btn-outline-gold:hover{background:rgba(212,160,23,.1)}

/* HEADER */
.header{position:sticky;top:0;z-index:100;background:var(--bg-secondary);border-bottom:1px solid var(--border-green)}
.header-top{display:flex;align-items:center;justify-content:space-between;padding:8px 24px;gap:16px;flex-wrap:wrap}
.logo{display:flex;align-items:center;gap:10px}
.logo-crown{width:48px;height:36px;filter:drop-shadow(0 0 10px rgba(212,160,23,.6))}
.logo-crown svg{width:100%;height:100%}
.logo-name{font-family:var(--font-display);font-size:24px;font-weight:800;color:var(--gold);display:block;line-height:1}
.logo-sub{font-size:9px;color:var(--text-secondary);letter-spacing:2px;display:block}
.header-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.social-icons{display:flex;gap:4px}
.social-btn{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;background:var(--bg-card);border:1px solid var(--border-green)}
.social-btn:hover{background:var(--bg-card-hover)}
.auth-buttons,.user-panel{display:flex;align-items:center;gap:8px}
.user-balance{color:var(--green-bright);font-weight:800;font-size:15px;padding:6px 12px;background:rgba(26,140,58,.15);border:1px solid rgba(40,201,79,.35);border-radius:8px;font-variant-numeric:tabular-nums;min-width:90px;text-align:center}
.user-name{color:var(--text-secondary);font-size:13px}
.lang-selector{padding:6px 10px;font-size:12px;color:var(--text-secondary);border-left:1px solid #333;cursor:pointer}
.clock{font-family:monospace;font-size:13px;color:var(--text-secondary);padding:6px 10px;border-left:1px solid #333}

/* NAV */
.main-nav{display:flex;gap:0;overflow-x:auto;padding:0 16px;background:var(--bg-primary);border-bottom:1px solid var(--border-green);scrollbar-width:none}
.main-nav::-webkit-scrollbar{display:none}
.nav-item{display:flex;align-items:center;gap:6px;padding:12px 16px;font-size:12px;font-weight:600;color:var(--text-secondary);white-space:nowrap;transition:all .2s;border-bottom:2px solid transparent}
.nav-item:hover,.nav-item.active{color:var(--green-bright);border-bottom-color:var(--green-bright);background:rgba(40,201,79,.05)}
.nav-icon{font-size:14px}

/* HERO SLIDER */
.hero-slider{position:relative;height:380px;overflow:hidden;background:var(--bg-secondary)}
.slider-container{position:relative;height:100%}
.slide{position:absolute;inset:0;display:flex;align-items:center;opacity:0;transition:opacity .8s ease;pointer-events:none}
.slide.active{opacity:1;pointer-events:auto}
.slide-content{position:relative;z-index:2;padding:40px 60px;max-width:55%}
.slide-content h2{font-family:var(--font-display);font-size:36px;color:var(--gold);margin-bottom:12px;text-shadow:0 2px 20px rgba(212,160,23,.3)}
.slide-content p{font-size:16px;color:var(--text-secondary);margin-bottom:24px;line-height:1.6}
.slide-visual{position:absolute;right:0;top:0;width:55%;height:100%;background-size:cover;background-position:center}
.slide-visual::after{content:'';position:absolute;inset:0;background:linear-gradient(to right,var(--bg-secondary) 0%,transparent 60%)}
.slider-dots{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);display:flex;gap:8px;z-index:5}
.slider-dots .dot{width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.3);cursor:pointer;transition:all .3s}
.slider-dots .dot.active{background:var(--green-bright);box-shadow:0 0 8px var(--green-bright)}
.slider-counter{position:absolute;top:16px;right:24px;background:rgba(0,0,0,.5);padding:4px 12px;border-radius:20px;font-size:12px;color:var(--text-secondary);z-index:5}

/* JACKPOT TICKER */
.jackpot-ticker{background:var(--bg-primary);padding:12px 0;border-bottom:1px solid var(--border-green);overflow:hidden}
.ticker-track{display:flex;gap:12px;padding:0 24px;animation:tickerScroll 30s linear infinite}
.ticker-item{display:flex;align-items:center;gap:10px;background:var(--bg-card);padding:10px 16px;border-radius:var(--radius);border:1px solid var(--border-green);min-width:220px;flex-shrink:0}
.ticker-label{font-size:10px;color:var(--green-bright);font-weight:700;text-transform:uppercase}
.ticker-amount{font-size:18px;font-weight:800;color:var(--text-primary)}
.ticker-play{width:28px;height:28px;border-radius:50%;background:var(--green-bright);color:#000;font-size:10px;display:flex;align-items:center;justify-content:center;border:none}
@keyframes tickerScroll{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* PROMO BANNERS */
.promo-banners{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:24px;max-width:1400px;margin:0 auto}
.promo-card{height:200px;border-radius:var(--radius-lg);overflow:hidden;position:relative;border:1px solid var(--border-gold);cursor:pointer;transition:transform .3s}
.promo-card:hover{transform:scale(1.02)}
.promo-loss{background:linear-gradient(135deg,#0d3d1a,#1a2418 60%,#2a1a0a)}
.promo-odds{background:linear-gradient(135deg,#1a2418,#0a2a0a 60%,#1a3a1a)}
.promo-text{position:absolute;bottom:0;left:0;right:0;padding:24px;background:linear-gradient(transparent,rgba(0,0,0,.8))}
.promo-text h3{font-family:var(--font-display);font-size:22px;color:var(--gold);margin-bottom:8px}
.promo-text p{color:var(--text-secondary);font-size:14px}
.promo-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.promo-tags span{background:rgba(212,160,23,.15);border:1px solid var(--border-gold);padding:4px 12px;border-radius:20px;font-size:11px;color:var(--gold)}

/* GAME SECTIONS */
.game-section{padding:0 24px 24px;max-width:1400px;margin:0 auto}
.section-header{background:var(--green-dark);padding:12px 20px;border-radius:var(--radius) var(--radius) 0 0;margin-bottom:0}
.section-header h3{font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:1px}
.game-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:16px 12px;background:var(--bg-secondary);padding:28px 16px 16px;border-radius:0 0 var(--radius) var(--radius);border:1px solid var(--border-green);border-top:none;overflow:visible}
.game-card{background:transparent;border:none;cursor:pointer;transition:all .35s cubic-bezier(.4,0,.2,1);text-align:center;overflow:visible;position:relative;padding-top:18px}
.game-card span{display:block;padding:8px 4px 0;font-size:11px;font-weight:600;color:var(--text-secondary);position:relative;z-index:1}
.game-card:hover span{color:var(--green-bright)}
.game-thumb{height:128px;position:relative;overflow:visible;border:none;border-radius:10px;background:transparent;box-shadow:none}
.game-thumb img{position:absolute;left:50%;bottom:-4px;transform:translateX(-50%);width:104%;height:auto;min-height:168px;max-height:185px;object-fit:contain;object-position:bottom center;z-index:3;filter:drop-shadow(0 8px 16px rgba(0,0,0,.6));transition:transform .35s cubic-bezier(.4,0,.2,1);pointer-events:none}
.gc-1{background:linear-gradient(135deg,#1a3a1a,#0d2a0d)}.gc-2{background:linear-gradient(135deg,#2a1a3a,#1a0d2a)}
.gc-3{background:linear-gradient(135deg,#3a1a1a,#2a0d0d)}.gc-4{background:linear-gradient(135deg,#1a1a3a,#0d0d2a)}
.gc-5{background:linear-gradient(135deg,#3a2a0a,#2a1a0a)}.gc-6{background:linear-gradient(135deg,#0a2a3a,#0a1a2a)}
.gc-7{background:linear-gradient(135deg,#2a3a0a,#1a2a0a)}.gc-8{background:linear-gradient(135deg,#3a0a2a,#2a0a1a)}
.slot-1{background:linear-gradient(135deg,#ff6b9d,#c44dff)}.slot-2{background:linear-gradient(135deg,#ffd700,#ff8c00)}
.slot-3{background:linear-gradient(135deg,#ff4444,#cc0000)}.slot-4{background:linear-gradient(135deg,#aa44ff,#4400cc)}
.slot-5{background:linear-gradient(135deg,#44ffaa,#00cc66)}.slot-6{background:linear-gradient(135deg,#4488ff,#0044cc)}
.fast-1{background:linear-gradient(135deg,#ff4444,#aa0000)}.fast-2{background:linear-gradient(135deg,#ff44aa,#cc0088)}
.fast-3{background:linear-gradient(135deg,#8844ff,#4400aa)}.fast-4{background:linear-gradient(135deg,#44aaff,#0088cc)}
.fast-5{background:linear-gradient(135deg,#ffaa44,#cc6600)}.fast-6{background:linear-gradient(135deg,#aaff44,#66cc00)}
.fast-7{background:linear-gradient(135deg,#ffdd44,#ccaa00)}.fast-8{background:linear-gradient(135deg,#ff6644,#cc2200)}

/* SPORTS */
.sports-section{padding:0 24px 24px;max-width:1400px;margin:0 auto}
.sports-table{background:var(--bg-secondary);border-radius:var(--radius);border:1px solid var(--border-green);overflow:hidden}
.sport-row{display:grid;grid-template-columns:140px 1fr 70px 70px 70px;gap:8px;padding:12px 16px;align-items:center;border-bottom:1px solid rgba(255,255,255,.05);font-size:13px}
.sport-row.header-row{background:var(--green-dark);font-weight:700;font-size:12px;text-transform:uppercase;color:var(--text-secondary)}
.sport-row:hover:not(.header-row){background:var(--bg-card)}
.odd{background:var(--green-bright);color:#000;padding:8px;text-align:center;border-radius:4px;font-weight:700;cursor:pointer;transition:all .2s}
.odd:hover{background:var(--green-neon);transform:scale(1.05)}

/* FOOTER */
.footer{background:var(--bg-secondary);padding:40px 24px 20px;border-top:1px solid var(--border-green);margin-top:24px}
.footer-social{display:flex;justify-content:center;gap:12px;margin-bottom:32px}
.footer-social-btn{background:var(--bg-card);padding:10px 20px;border-radius:var(--radius);font-size:13px;border:1px solid var(--border-green);transition:all .2s}
.footer-social-btn:hover{border-color:var(--green-bright);color:var(--green-bright)}
.footer-links{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:800px;margin:0 auto 32px;text-align:center}
.footer-col h4{font-size:12px;color:var(--text-secondary);margin-bottom:12px;text-transform:uppercase;letter-spacing:1px}
.footer-col a{display:block;font-size:13px;color:var(--text-secondary);padding:4px 0;transition:color .2s}
.footer-col a:hover{color:var(--green-bright)}
.footer-apps{display:flex;justify-content:center;gap:16px;margin-bottom:20px}
.footer-apps img{opacity:.85;transition:opacity .2s}
.footer-apps img:hover{opacity:1}
.footer-license{display:flex;justify-content:center;margin-bottom:16px}
.footer-payments{display:flex;justify-content:center;align-items:center;gap:20px;flex-wrap:wrap;margin-bottom:24px;font-size:13px;color:var(--text-secondary)}
.footer-bottom{text-align:center;padding-top:16px;border-top:1px solid rgba(255,255,255,.05)}
.footer-bottom p{font-size:12px;color:var(--text-secondary);margin-top:8px}
.age-badge{display:inline-block;background:var(--green-dark);border:1px solid var(--green-bright);padding:4px 10px;border-radius:4px;font-weight:700;font-size:14px;color:var(--green-bright)}

/* SUPPORT FAB */
.support-fab{position:fixed;z-index:150}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.5}}

/* MODALS */
.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.75);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:200;padding:20px}
.modal{background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--border-gold);box-shadow:0 0 40px rgba(212,160,23,.1);position:relative;max-height:90vh;overflow-y:auto}
.modal-close{position:absolute;top:12px;right:16px;background:none;color:var(--text-secondary);font-size:24px;z-index:10;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%}
.modal-close:hover{color:var(--text-primary);background:rgba(255,255,255,.1)}

/* AUTH MODAL */
.modal-auth{width:420px;padding:32px;text-align:center}
.modal-header-auth{display:flex;gap:0;margin-bottom:20px;border-bottom:1px solid rgba(255,255,255,.1)}
.tab-switch{flex:1;padding:10px;background:none;color:var(--text-secondary);font-weight:700;font-size:13px;border-bottom:2px solid transparent;transition:all .2s}
.tab-switch.active{color:var(--gold);border-bottom-color:var(--gold)}
.modal-logo{margin-bottom:24px}
.modal-crown{width:64px;height:48px;margin:0 auto 8px;filter:drop-shadow(0 0 16px rgba(212,160,23,.5))}
.modal-crown svg{width:100%;height:100%}
.support-crown{font-size:18px;filter:drop-shadow(0 0 6px var(--gold))}
.modal-logo h2{font-family:var(--font-display);font-size:28px;color:var(--gold);margin:8px 0 4px}
.modal-logo p{font-size:11px;color:var(--text-secondary);letter-spacing:2px}
.auth-form{display:flex;flex-direction:column;gap:12px;text-align:left}
.auth-form input,.auth-form select{width:100%;padding:12px 16px;background:var(--bg-card);border:1px solid var(--border-green);border-radius:var(--radius);color:var(--text-primary);font-size:14px;outline:none;transition:border-color .2s}
.auth-form input:focus,.auth-form select:focus{border-color:var(--green-bright)}
.auth-form input::placeholder{color:#666}
.checkbox-label{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-secondary);cursor:pointer}
.auth-error{color:#ff4444;font-size:13px;text-align:center;padding:8px;background:rgba(255,68,68,.1);border-radius:var(--radius)}
.auth-link{display:block;margin-top:12px;font-size:12px;color:var(--text-secondary);transition:color .2s}
.auth-link:hover{color:var(--gold)}
.support-link{margin-top:16px;padding-top:16px;border-top:1px solid rgba(255,255,255,.1)}
.register-intro{margin-bottom:20px;text-align:center}
.register-intro p{color:var(--text-secondary);font-size:13px}
.register-intro h3{font-size:16px;margin-top:4px;color:var(--text-primary)}
.modal-register{width:440px}

/* SUPPORT MODAL */
.modal-support{width:440px;max-height:600px;display:flex;flex-direction:column}
.support-header{background:var(--green-dark);padding:16px 20px;display:flex;align-items:center;justify-content:space-between;border-radius:var(--radius-lg) var(--radius-lg) 0 0}
.support-header-logo{font-weight:700;color:var(--gold);font-size:14px}
.support-body{padding:20px;overflow-y:auto}
.support-body h3{font-size:16px;margin-bottom:16px}
.support-promos{list-style:none;margin-bottom:20px}
.support-promos li{padding:6px 0;font-size:13px;color:var(--text-secondary);border-bottom:1px solid rgba(255,255,255,.05)}
#supportForm label{display:block;margin-bottom:12px;font-size:13px;font-weight:600;color:var(--text-secondary)}
#supportForm input,#supportForm select{width:100%;padding:10px 12px;margin-top:4px;background:#fff;border:1px solid #ddd;border-radius:var(--radius);color:#333;font-size:14px}
#supportForm fieldset{border:1px solid var(--border-green);border-radius:var(--radius);padding:12px;margin-bottom:16px}
#supportForm fieldset legend{font-size:12px;color:var(--text-secondary);padding:0 8px}
#supportForm fieldset label{display:inline-flex;align-items:center;gap:6px;margin-right:16px;font-weight:400;color:var(--text-primary)}

/* CHAT */
.support-chat{display:flex;flex-direction:column;height:400px}
.chat-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:8px}
.chat-msg{max-width:80%;padding:10px 14px;border-radius:12px;font-size:13px;line-height:1.4}
.chat-msg.user{align-self:flex-end;background:var(--green-dark);color:var(--text-primary);border-bottom-right-radius:4px}
.chat-msg.admin{align-self:flex-start;background:var(--bg-card);border:1px solid var(--border-gold);border-bottom-left-radius:4px}
.chat-msg.system{align-self:center;background:rgba(212,160,23,.1);color:var(--gold);font-size:12px;text-align:center;max-width:90%}
.chat-msg .msg-time{font-size:10px;color:var(--text-secondary);margin-top:4px;display:block}
.chat-input-area{display:flex;gap:8px;padding:12px;border-top:1px solid var(--border-green)}
.chat-input-area input{flex:1;padding:10px 14px;background:var(--bg-card);border:1px solid var(--border-green);border-radius:var(--radius);color:var(--text-primary);font-size:14px;outline:none}
.chat-input-area input:focus{border-color:var(--green-bright)}

/* WARNING MODAL */
.modal-warning{width:480px;padding:0;overflow:hidden;border:2px solid var(--gold);box-shadow:0 0 30px rgba(212,160,23,.2)}
.warning-header{background:var(--green-dark);padding:16px 20px;display:flex;align-items:center;justify-content:space-between}
.warning-header h3{font-size:16px;color:var(--gold)}
.warning-body{padding:24px;text-align:center}
.official-domains{display:flex;flex-direction:column;gap:8px;margin:16px 0}
.official-domains span{background:var(--bg-card);padding:10px;border-radius:var(--radius);font-weight:700;color:var(--green-bright);border:1px solid var(--border-green)}
.warning-note{color:#ff4444;font-size:13px;margin-top:12px}
.modal-warning .btn{margin:0 24px 12px;width:calc(100% - 48px)}
.warning-check{padding:0 24px 20px;display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-secondary)}

/* RESPONSIVE */
@media(max-width:768px){
  .header-top{flex-direction:row;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 12px}
  .logo{flex:1;min-width:0}
  .header-actions{flex-wrap:wrap;gap:6px;width:100%;justify-content:flex-end}
  .header-actions .user-panel{width:100%;justify-content:flex-end}
  .main-nav{display:none}
  .hero-slider{height:260px}
  .slide-content{padding:16px}
  .slide-content h2{font-size:20px}
  .slide-content p{font-size:12px}
  .slide-counter{font-size:11px}
  .section-header h3{font-size:16px;padding:0 12px}
  .game-section,.sports-section,.roulette-section,.promo-banners{padding-left:12px;padding-right:12px}
  .footer{padding:24px 16px 90px}
  .footer-payments{flex-wrap:wrap;gap:8px;justify-content:center}
  .modal-auth-real,.modal-register-real{width:95%!important;max-width:100%}
  .auth-body-real{padding:8px 16px 20px}
  .bottom-nav{display:flex}
}
