:root{color-scheme:dark;--ink:#171923;--rail:#1d202c;--panel:#20232e;--line:#343744;--gold:#ffb300;--text:#f8f8fc;--muted:#a9aab4}
*{box-sizing:border-box}
body{margin:0;background:var(--ink);color:var(--text);font-family:Inter,"Segoe UI",Arial,sans-serif;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{max-width:100%}
a:focus-visible{outline:3px solid #fff;outline-offset:3px}
.side-rail{position:fixed;left:0;top:0;bottom:0;z-index:5;width:110px;background:var(--rail);display:flex;align-items:center;flex-direction:column;border-right:1px solid #292d39}
.rail-logo{height:113px;width:100%;display:grid;place-items:center;border-bottom:1px solid #353846}.rail-logo img{border-radius:50%;width:70px;height:70px}
.rail-item{min-height:51px;width:100%;display:grid;place-items:center;color:#858790;font-size:30px;font-weight:700;line-height:1}.rail-item:hover{color:var(--gold);background:#282c38}.rail-top{font-size:28px;margin-top:13px}.rail-spacer{flex:1}.rail-help{color:#a5e828}.rail-sun{color:var(--gold);font-size:38px;margin-bottom:8px}
.casino-shell{margin-left:110px;min-height:100vh}
.casino-header{height:113px;border-bottom:1px solid #373944;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(24px,3.3vw,64px);gap:20px}
.header-left,.header-right{display:flex;align-items:center}.header-left{gap:18px}.header-right{gap:10px}
.hamburger{display:flex;flex-direction:column;justify-content:center;gap:8px;width:48px;height:50px;padding:4px}.hamburger span{height:4px;width:44px;background:#f9f9fb;border-radius:4px}.hamburger:hover span{background:var(--gold)}
.casino-wordmark{font-size:31px;font-weight:1000;line-height:.76;letter-spacing:-.07em;transform:scaleX(1.02)}.wordmark-o{display:inline-block;transform:rotate(-15deg);color:#fff;text-shadow:2px 2px 0 var(--ink)}
.header-mascot{display:inline-grid;place-items:center;font-size:44px;width:62px;height:62px;filter:drop-shadow(0 3px 0 #b67600)}
.login-link,.register-link,.language-link{display:inline-grid;place-items:center;height:59px;border-radius:9px;font-size:19px;font-weight:800}.login-link{width:99px;border:1px solid var(--gold);color:var(--gold)}.register-link{padding:0 21px;background:var(--gold);color:#0d0d0f}.login-link:hover,.register-link:hover,.category-play:hover,.intro-cta:hover,.promo-button:hover{filter:brightness(1.15)}
.language-link{width:62px;border:1px solid #3f414c;position:relative}.ru-flag{display:block;width:37px;height:28px;background:linear-gradient(to bottom,#fff 0 33.33%,#2355ac 33.33% 66.66%,#d43940 66.66%);box-shadow:0 1px 3px #0008}.language-sync{position:absolute;right:-7px;bottom:-3px;font-size:25px;color:var(--gold);text-shadow:0 0 3px #12151c}
.casino-main{max-width:1800px;margin:0 auto;padding:52px clamp(24px,3.3vw,64px) 44px}
.casino-intro h1{font-size:clamp(41px,3.1vw,56px);line-height:1.05;margin:4px 0 33px;font-weight:1000;letter-spacing:-.045em}.casino-intro h1 span{font-size:.8em}
.stats-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:10px}.stat-card{min-height:145px;display:flex;align-items:center;gap:14px;background:#20232e;border-radius:16px;padding:22px 25px}.stat-label{display:block;color:#a8a9ad;font-size:24px;margin-bottom:8px}.stat-card strong{display:block;font-size:clamp(27px,2.4vw,40px);line-height:1;white-space:nowrap;font-weight:900;letter-spacing:-.025em}.stat-icon{display:grid;place-items:center;flex:none;width:50px;height:50px;border-radius:50%;background:#a2a3a6;color:#20232e;font-size:28px;font-weight:900}.stat-user{font-size:30px;line-height:1}.stat-money{background:#43a34e;color:white;font-family:Georgia,serif;font-size:43px;font-weight:400}
.intro-text{font-size:20px;line-height:1.24;margin:31px 0 28px}.intro-cta,.category-play,.promo-button{display:inline-flex;align-items:center;justify-content:center;gap:22px;background:var(--gold);color:#101014;font-size:20px;font-weight:800;border-radius:8px}.intro-cta{height:60px;width:400px;max-width:100%}.intro-cta span,.category-play span,.promo-button span{font-size:30px;font-weight:400;line-height:1}
.promo-carousel{height:393px;position:relative;overflow:hidden;margin:49px 0 50px;border-radius:24px;background:linear-gradient(105deg,rgba(0,0,0,.83) 0,rgba(29,13,12,.82) 31%,rgba(101,30,7,.2) 64%,rgba(0,0,0,.55) 100%),radial-gradient(circle at 72% 47%,#fe8b1b,#7c260d 45%,#130e13 78%);isolation:isolate}
.promo-carousel:before,.promo-carousel:after{content:"";position:absolute;border-radius:50%;border:35px solid rgba(255,183,0,.12);transform:rotate(-20deg);width:540px;height:540px;right:15%;top:-60%;filter:blur(8px);z-index:-1}.promo-carousel:after{right:-4%;top:26%;width:280px;height:280px;border-width:27px;filter:blur(2px)}
.promo-glow{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.3),transparent 25%),radial-gradient(circle at 65% 72%,rgba(255,223,74,.4),transparent 38%);z-index:-1}
.promo-copy{position:absolute;z-index:1;top:35px;left:clamp(50px,5.3vw,105px);max-width:60%;line-height:1}.promo-kicker{color:#ffcd85;font-size:14px;text-transform:uppercase;font-weight:900;letter-spacing:.2em}.promo-title{margin-top:15px;display:flex;flex-direction:column;letter-spacing:-.07em;font-weight:1000;transform:scaleX(.92);transform-origin:left}.promo-title span{color:#fe7a12;font-size:clamp(48px,6vw,106px);text-shadow:0 6px 0 #1c0e08}.promo-title strong{color:#fff;font-size:clamp(52px,6vw,106px);text-shadow:0 6px 0 #1c0e08}.promo-copy p{font-size:21px;margin:14px 0;color:#fff}.promo-prize{display:inline-block;margin-top:8px;padding:5px 18px;background:#ff9c0a;border:4px solid #f9c66b;box-shadow:0 12px 0 #6e2700;font-size:38px;font-weight:1000;transform:rotate(-5deg)}
.promo-jester{position:absolute;right:8%;top:-8%;height:110%;width:auto;filter:drop-shadow(0 12px 12px #0007)}
.carousel-arrow{position:absolute;z-index:2;top:48%;display:grid;place-items:center;width:43px;height:43px;border-radius:50%;background:rgba(0,0,0,.45);font-size:36px;color:#d6d6d9;line-height:1}.arrow-left{left:22px}.arrow-right{right:22px}.carousel-arrow:hover{background:#000a;color:#fff}
.promo-button{position:absolute;right:30px;bottom:28px;z-index:2;padding:0 20px;height:58px}.promo-dots{position:absolute;left:42%;bottom:8px;display:flex;gap:10px}.promo-dots a{width:50px;height:5px;background:#b9aaa1aa;border-radius:10px}.promo-dots a.active{background:#fff}
.category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:29px}.category-card{min-width:0;padding:29px;border-radius:18px;background:radial-gradient(circle at 20% 20%,#273e56 0,transparent 52%),linear-gradient(135deg,#232a38,#223c3e);overflow:hidden}.category-live{background:radial-gradient(circle at 82% 7%,#362c3d 0,transparent 53%),linear-gradient(130deg,#202438,#1c3543)}
.category-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:28px}.category-head h2{font-size:30px;line-height:1;margin:3px 0 9px;font-weight:900}.category-head p{margin:0;color:#f6f6f6;font-size:19px}.signal{color:#9fdd20;font-size:24px}.category-play{height:60px;padding:0 20px;flex:none}
.game-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.game-card{position:relative;min-width:0;aspect-ratio:.72;border-radius:15px;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;padding:13px 7px 12px;text-align:center;isolation:isolate;transition:transform .18s ease}.game-card:before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.69),transparent 58%)}.game-card:hover{transform:translateY(-5px)}.game-art{position:absolute;top:17%;left:0;right:0;display:block;font-size:clamp(53px,5.2vw,93px);line-height:1;filter:drop-shadow(0 8px 8px #0008)}.game-title{font-size:clamp(13px,1.13vw,23px);font-weight:1000;line-height:.96;text-shadow:0 2px 3px #0008;white-space:normal}.game-card small{font-size:clamp(7px,.57vw,10px);margin-top:7px;letter-spacing:.02em;font-weight:700;text-shadow:0 2px 3px #000}
.game-sweet{background:radial-gradient(circle at 40% 26%,#ffe3e4,#f25ba2 44%,#783190)}.game-minotaur{background:radial-gradient(circle at 60% 20%,#b95722,#452a20 55%,#191b1e)}.game-treasures{background:radial-gradient(circle at 44% 20%,#ffc235,#9a172a 45%,#24091b)}.game-olympus{background:radial-gradient(circle at 50% 17%,#e8ba66,#61442f 54%,#24211e)}.game-crazy{background:radial-gradient(circle at 50% 15%,#e8a858,#cf6123 54%,#3e393e)}.game-blackjack{background:radial-gradient(circle at 50% 18%,#f5c5a8,#734644 56%,#221d2b)}.game-balls{background:radial-gradient(circle at 50% 20%,#b9c28b,#255f59 58%,#193a3e)}.game-roulette{background:radial-gradient(circle at 50% 15%,#b2abb2,#504852 56%,#25232d)}
.casino-footer{max-width:1800px;margin:0 auto;padding:0 clamp(24px,3.3vw,64px) 50px}.footer-nav{display:flex;flex-wrap:wrap;gap:14px 23px;padding:28px 0 26px;border-top:1px solid #3c3f4b;border-bottom:1px solid #3c3f4b;font-size:18px}.footer-nav a:hover{color:var(--gold)}.footer-bottom{display:grid;grid-template-columns:1fr 1fr;gap:44px;padding-top:22px}.footer-responsible,.footer-info{display:flex;align-items:flex-start;gap:18px}.footer-bottom p{margin:8px 0 0;color:#9395a1;font-size:14px;line-height:1.45}.age-badge{display:grid;place-items:center;flex:none;width:50px;height:50px;border-radius:50%;background:#ef4951;color:#fff;font-size:20px;font-weight:900}.footer-info img{flex:none;border-radius:50%}
@media(max-width:1400px){.game-card{aspect-ratio:.65}.game-title{font-size:16px}.stat-card strong{font-size:32px}.promo-jester{right:2%}.promo-prize{font-size:32px}}
@media(max-width:1120px){.category-grid{grid-template-columns:1fr}.game-card{aspect-ratio:.9}.game-title{font-size:20px}.game-art{font-size:86px}.promo-copy{left:60px}.promo-title span,.promo-title strong{font-size:70px}.promo-prize{font-size:30px}}
@media(max-width:760px){.side-rail{display:none}.casino-shell{margin-left:0}.casino-header{height:74px;padding:0 15px}.hamburger{width:30px;gap:5px}.hamburger span{height:3px;width:28px}.casino-wordmark{font-size:21px}.header-mascot,.login-link,.language-link{display:none}.register-link{font-size:13px;height:40px;padding:0 11px}.casino-main{padding:35px 16px}.stats-grid{grid-template-columns:1fr}.stat-card{min-height:100px}.stat-label{font-size:17px}.stat-card strong{font-size:27px;white-space:normal;overflow-wrap:anywhere}.intro-text{font-size:17px}.promo-carousel{height:300px;margin:36px 0}.promo-jester{right:-15%;height:88%;top:9%;opacity:.78}.promo-copy{left:32px;top:28px}.promo-title span,.promo-title strong{font-size:clamp(40px,8vw,60px)}.promo-prize{font-size:20px}.promo-copy p{display:none}.promo-button{height:42px;font-size:15px;bottom:20px;right:14px}.promo-dots{display:none}.category-card{padding:20px}.category-head h2{font-size:23px}.category-head p{font-size:14px}.category-play{height:45px;font-size:15px}.game-card{aspect-ratio:.65}.game-title{font-size:clamp(10px,2.2vw,16px)}.game-card small{font-size:7px}.game-art{font-size:clamp(37px,7vw,70px)}.casino-footer{padding:0 16px 35px}.footer-nav{font-size:14px;gap:10px 17px}.footer-bottom{grid-template-columns:1fr;gap:12px}}
@media(max-width:480px){.side-rail{display:none}.casino-shell{margin-left:0}.casino-intro h1{font-size:40px}.game-grid{gap:5px}.game-card{padding:6px 3px}.game-title{font-size:10px}.category-card{padding:16px}.promo-copy{left:20px}.promo-title span,.promo-title strong{font-size:40px}.promo-prize{font-size:18px}.promo-jester{right:-29%}.carousel-arrow{width:29px;height:29px;font-size:25px}.arrow-left{left:3px}.arrow-right{right:3px}}
.casino-intro h1{font-size:clamp(34px,2.55vw,46px);max-width:1600px}
.promo-carousel{background-image:linear-gradient(90deg,rgba(0,0,0,.58) 0,rgba(0,0,0,.32) 40%,transparent 67%),url('hero-joker.jpg');background-size:cover;background-position:center 44%}
.promo-carousel:before,.promo-carousel:after{display:none}
.promo-glow{background:linear-gradient(0deg,rgba(0,0,0,.25),transparent 42%);pointer-events:none}
.game-cover{position:absolute;inset:0;z-index:0;width:100%;height:100%;object-fit:cover;object-position:center 28%;transition:transform .2s ease}
.game-card:hover .game-cover{transform:scale(1.05)}
.game-card:before{z-index:1;background:linear-gradient(0deg,rgba(0,0,0,.83),rgba(0,0,0,.08) 49%,transparent 72%)}
.game-title,.game-card small{position:relative;z-index:2}
@media(max-width:760px){.promo-carousel{background-position:61% center}.promo-copy{max-width:76%}}
@media(max-width:480px){.casino-intro h1{font-size:32px}}
