:root{color-scheme:dark;--ink:#070807;--coal:#111311;--bottle:#15251d;--green:#19392b;--cream:#e8dfcd;--gold:#b49659;--red:#6f1f2b;--blue:#183e59;--magenta:#68244f;--line:rgba(180,150,89,.24);--muted:rgba(232,223,205,.55);--ease:cubic-bezier(.72,0,.16,1);font-family:Inter,"Helvetica Neue",Arial,sans-serif}*{box-sizing:border-box}html{background:var(--ink);scroll-behavior:smooth}body{margin:0;min-width:320px;background:var(--ink);color:var(--cream)}button,input,select{font:inherit}button,a{color:inherit}button{cursor:pointer}.app-shell{min-height:100vh}.overline{margin:0 0 .7rem;color:var(--gold);font-size:.62rem;font-weight:700;letter-spacing:.33em}.wordmark{display:inline-flex;flex-direction:column;color:var(--cream);font-family:Georgia,serif;font-size:1.7rem;line-height:.7;letter-spacing:.08em;text-decoration:none}.wordmark span{margin-top:.42rem;color:var(--gold);font:600 .42rem Arial,sans-serif;letter-spacing:.52em}.gold-button,.light-button,.play-cta{border:1px solid var(--gold);background:var(--gold);color:#090a08;font-size:.67rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.gold-button{min-height:46px;padding:.8rem 1.3rem}.gold-button.small{min-height:37px}.light-button{padding:.8rem 1.2rem;background:transparent;color:var(--cream)}.text-button,.link-button{padding:.6rem;border:0;background:transparent;color:var(--muted);font-size:.6rem;font-weight:700;letter-spacing:.2em}.text-button:hover,.link-button:hover{color:var(--cream)}
/* Landing */
.landing{min-height:100vh;overflow:hidden;background:radial-gradient(circle at 75% 25%,rgba(25,57,43,.68),transparent 28%),var(--ink)}.public-nav{position:relative;z-index:5;display:flex;align-items:center;justify-content:space-between;min-height:84px;padding:1.2rem clamp(1.3rem,5vw,5rem);border-bottom:1px solid rgba(180,150,89,.16)}.public-links{display:flex;gap:clamp(1rem,3vw,3rem)}.public-links a{color:var(--muted);font-size:.63rem;letter-spacing:.16em;text-decoration:none;text-transform:uppercase}.nav-actions{display:flex;align-items:center;gap:.6rem}.hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.9fr);align-items:center;min-height:calc(100vh - 84px);padding:5vh clamp(1.3rem,7vw,8rem)}.hero:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 12.45%,rgba(180,150,89,.04) 12.5% 12.55%,transparent 12.6% 25%);pointer-events:none}.hero-copy{position:relative;z-index:2;max-width:720px}.hero h1{margin:0;font-family:Georgia,serif;font-size:clamp(4rem,8.6vw,9.3rem);font-weight:400;line-height:.76;letter-spacing:-.07em}.hero h1 i{color:var(--gold);font-weight:400}.hero-lead{max-width:540px;margin:2rem 0;color:var(--muted);font:1rem/1.7 Georgia,serif}.hero-bonus{display:flex;align-items:center;gap:1rem;margin:2rem 0}.hero-bonus strong{font:400 clamp(1.7rem,3vw,3rem) Georgia,serif}.hero-bonus span{max-width:110px;color:var(--gold);font-size:.57rem;line-height:1.5;letter-spacing:.18em}.play-cta{display:block;padding:1.1rem 1.7rem}.play-cta b{margin-left:2rem}.hero-copy>small{display:block;margin-top:1rem;color:rgba(232,223,205,.35);font-size:.52rem;letter-spacing:.13em}.hero-visual{position:relative;height:min(72vh,680px)}.roulette-orbit{position:absolute;left:7%;top:7%;width:min(38vw,470px);aspect-ratio:1;border:46px double #1e201b;border-radius:50%;background:repeating-conic-gradient(#7b2631 0 9.5deg,#111 9.8deg 19.2deg);box-shadow:0 45px 80px #000,inset 0 0 0 12px var(--gold);animation:slow-spin 38s linear infinite}.roulette-orbit:before{content:"";position:absolute;inset:26%;border-radius:50%;background:radial-gradient(circle,#283b30,#090b09 65%);border:3px solid var(--gold)}.roulette-orbit span{position:absolute;inset:38%;z-index:2;display:grid;place-items:center;border-radius:50%;background:var(--green);font:4rem Georgia,serif}.hero-seven{position:absolute;right:0;bottom:5%;z-index:3;color:#8b2635;font:italic 700 clamp(10rem,22vw,22rem) Georgia,serif;text-shadow:8px 18px 0 #21090d,0 0 45px rgba(180,150,89,.25);transform:rotate(7deg)}.floating-chip{position:absolute;z-index:4;display:grid;place-items:center;border:5px dotted var(--gold);border-radius:50%;background:#151712;box-shadow:0 18px 30px #000;font:1.4rem Georgia,serif}.chip-one{left:4%;bottom:15%;width:82px;height:82px;animation:float 6s ease-in-out infinite}.chip-two{right:4%;top:18%;width:58px;height:58px;animation:float 5s 1s ease-in-out infinite}.featured{padding:5rem clamp(1.3rem,5vw,5rem);background:#0b0d0b}.featured>header,.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:2rem}.featured h2,.section-heading h2{margin:0;font:400 clamp(2rem,4vw,4rem) Georgia,serif}.public-game-grid,.game-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.public-footer{display:flex;justify-content:space-between;padding:2rem clamp(1.3rem,5vw,5rem);border-top:1px solid var(--line);color:var(--muted);font-size:.65rem}.public-footer span{font-family:Georgia,serif}.public-footer p{margin:0}.game-card{position:relative;min-width:0}.game-art{position:relative;display:grid;place-items:center;aspect-ratio:1.35;overflow:hidden;border:1px solid rgba(255,255,255,.08);background:radial-gradient(circle at 50% 40%,rgba(255,255,255,.13),transparent 28%),linear-gradient(145deg,#43151d,#16080b);box-shadow:0 18px 32px rgba(0,0,0,.38);transition:.35s}.game-art.green{background:radial-gradient(circle,rgba(180,150,89,.2),transparent 28%),linear-gradient(145deg,#174b36,#07150f)}.game-art.blue{background:radial-gradient(circle,rgba(90,170,220,.2),transparent 28%),linear-gradient(145deg,#1c4c68,#08141d)}.game-art.magenta{background:linear-gradient(145deg,#66244d,#180a14)}.game-art>span,.game-art:not(:has(>span)){font:italic 700 clamp(4rem,7vw,7rem) Georgia,serif;text-shadow:5px 7px 0 rgba(0,0,0,.55)}.game-art i{position:absolute;inset:13%;border:1px solid rgba(180,150,89,.4);transform:rotate(45deg)}.game-card:hover .game-art{transform:translateY(-5px);filter:brightness(1.17)}.favorite{position:absolute;right:.7rem;top:.7rem;z-index:3;width:34px;height:34px;border:1px solid rgba(255,255,255,.22);border-radius:50%;background:rgba(0,0,0,.46)}.favorite.active{color:var(--gold)}.card-play{position:absolute;left:50%;bottom:1rem;z-index:3;padding:.65rem 1.1rem;border:1px solid var(--gold);background:#090a08;color:var(--cream);font-size:.56rem;letter-spacing:.2em;opacity:0;transform:translate(-50%,12px);transition:.3s}.game-card:hover .card-play{opacity:1;transform:translate(-50%,0)}.game-info{display:flex;justify-content:space-between;gap:.5rem;padding:1rem .15rem}.game-info b{display:block;font:1rem Georgia,serif}.game-info span,.game-info small{display:block;margin-top:.32rem;color:var(--muted);font-size:.5rem;letter-spacing:.1em}.game-info small{color:var(--gold);text-align:right}.locked{opacity:.45}.locked .game-art{filter:grayscale(1)}
/* Auth */
.auth-page{display:grid;grid-template-columns:1.05fr .95fr;min-height:100vh}.auth-brand{position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:clamp(2rem,6vw,6rem);overflow:hidden;background:radial-gradient(circle at 65% 45%,#1d4533,transparent 36%),#090d0a}.auth-brand:before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 45%,rgba(180,150,89,.1));clip-path:polygon(0 0,100% 0,70% 100%,0 100%)}.auth-brand>div:not(.auth-symbols){position:relative;z-index:2}.auth-brand h1{margin:0;font:400 clamp(3.3rem,7vw,7rem)/.83 Georgia,serif;letter-spacing:-.06em}.auth-brand h1 i{color:var(--gold)}.auth-brand p:not(.overline){max-width:450px;color:var(--muted);font:1rem/1.7 Georgia,serif}.auth-brand>small{position:relative;color:rgba(232,223,205,.35);font-size:.52rem;letter-spacing:.16em}.auth-symbols{position:absolute;right:5%;bottom:10%;display:flex;gap:1rem;color:rgba(180,150,89,.16);font:8rem Georgia,serif;transform:rotate(-12deg)}.auth-panel{position:relative;display:grid;place-items:center;padding:3rem;background:#10120f}.auth-close{position:absolute;right:2rem;top:2rem;border:0;background:none;font-size:2rem}.auth-tabs{position:absolute;top:2.2rem;left:50%;display:flex;transform:translateX(-50%)}.auth-tabs button{padding:.8rem 1.2rem;border:0;border-bottom:1px solid rgba(232,223,205,.18);background:none;color:var(--muted);font-size:.6rem;letter-spacing:.2em}.auth-tabs button.active{border-color:var(--gold);color:var(--cream)}.auth-form{width:min(100%,430px)}.auth-form h2{margin:.4rem 0 2rem;font:400 2.5rem Georgia,serif}.auth-form label,.roulette-table label{display:grid;gap:.45rem;margin:1rem 0;color:var(--muted);font-size:.56rem;font-weight:700;letter-spacing:.16em}.auth-form input,.roulette-table input,.roulette-table select,.game-controls select,.blackjack-controls select,.admin-section input{width:100%;padding:.9rem;border:1px solid rgba(232,223,205,.18);border-radius:0;background:#090b09;color:var(--cream);outline:none}.auth-form input:focus,.roulette-table input:focus,.roulette-table select:focus{border-color:var(--gold)}.auth-form .gold-button{width:100%;margin-top:1rem}.auth-form .link-button{width:100%;margin-top:.6rem}.form-row{display:grid;grid-template-columns:1fr .42fr;gap:1rem}.form-note{color:rgba(232,223,205,.35);font-size:.58rem;line-height:1.5;text-align:center}
/* Casino shell */
.casino-shell{display:grid;grid-template:76px minmax(0,1fr)/220px minmax(0,1fr);min-height:100vh;background:#0b0d0b}.casino-header{grid-column:1/-1;position:sticky;top:0;z-index:40;display:grid;grid-template-columns:180px minmax(180px,440px) 1fr auto auto;align-items:center;gap:1rem;padding:0 1.5rem;border-bottom:1px solid var(--line);background:rgba(7,8,7,.96)}.search-box{display:flex;align-items:center;gap:.7rem;padding:.65rem .9rem;background:#111410;border:1px solid rgba(255,255,255,.08)}.search-box input{width:100%;border:0;outline:0;background:transparent;color:var(--cream)}.wallet-pill{justify-self:end;display:flex;flex-direction:column;align-items:flex-end;padding:.45rem .8rem;border:1px solid var(--line);background:var(--bottle)}.wallet-pill span{font:1rem Georgia,serif}.wallet-pill small{color:var(--gold);font-size:.42rem;letter-spacing:.24em}.notice-button{position:relative;width:38px;height:38px;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--gold)}.notice-button b{position:absolute;right:-3px;top:-4px;display:grid;place-items:center;width:17px;height:17px;border-radius:50%;background:var(--red);color:white;font-size:.5rem}.profile-chip{display:flex;align-items:center;gap:.6rem;padding:0;border:0;background:none;text-align:left}.profile-chip i,.admin-user i{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--gold);border-radius:50%;background:var(--green);font:1rem Georgia,serif}.profile-chip span{font-size:.66rem}.profile-chip small{display:block;margin-top:.25rem;color:var(--muted);font-size:.43rem;letter-spacing:.08em}.side-nav{grid-row:2;display:flex;flex-direction:column;padding:1.4rem .8rem;border-right:1px solid var(--line);background:#0a0c0a}.side-nav button,.mobile-nav button{display:flex;align-items:center;gap:.75rem;padding:.82rem;border:0;border-left:2px solid transparent;background:none;color:var(--muted);font-size:.55rem;font-weight:700;letter-spacing:.13em;text-align:left}.side-nav button span{width:25px;color:var(--gold);font:1rem Georgia,serif;text-align:center}.side-nav button.active{border-color:var(--gold);background:linear-gradient(90deg,rgba(180,150,89,.14),transparent);color:var(--cream)}.side-spacer{flex:1}.casino-main{min-width:0;overflow:hidden}.mobile-nav{display:none}.lobby-page,.profile-page,.game-page{padding:clamp(1rem,3vw,3rem)}.casino-hero{position:relative;min-height:270px;padding:clamp(2rem,4vw,4rem);overflow:hidden;border:1px solid rgba(180,150,89,.2);background:radial-gradient(circle at 80% 50%,rgba(180,150,89,.25),transparent 25%),linear-gradient(110deg,#4b1720,#101811 70%)}.casino-hero.welcome{background:radial-gradient(circle at 80% 50%,rgba(180,150,89,.25),transparent 25%),linear-gradient(110deg,#153f2e,#0d120e 70%)}.casino-hero.roulette{background:radial-gradient(circle at 80% 50%,rgba(30,150,90,.25),transparent 25%),linear-gradient(110deg,#143a29,#0a120d 70%)}.casino-hero h1{margin:.3rem 0;font:400 clamp(2.6rem,5.5vw,6rem) Georgia,serif;letter-spacing:-.05em}.casino-hero p:not(.overline){color:var(--muted)}.hero-emblem{position:absolute;right:7%;top:50%;color:rgba(232,223,205,.12);font:italic 700 14rem Georgia,serif;transform:translateY(-50%) rotate(8deg)}.hero-dots{position:absolute;left:4rem;bottom:1rem;display:flex;gap:.4rem}.hero-dots button{width:22px;height:2px;padding:0;border:0;background:rgba(255,255,255,.3)}.hero-dots button.active{background:var(--gold)}.balance-strip{display:grid;grid-template-columns:repeat(4,1fr) auto;align-items:center;margin:1rem 0 3rem;border:1px solid var(--line);background:#111410}.balance-strip>div{padding:1.1rem;border-right:1px solid var(--line)}.balance-strip span{display:block;color:var(--muted);font-size:.48rem;letter-spacing:.15em}.balance-strip strong{display:block;margin-top:.4rem;font:1rem Georgia,serif}.balance-strip button{height:100%;padding:0 1.2rem;border:0;background:var(--gold);color:#090a08;font-size:.53rem;font-weight:800;letter-spacing:.12em}.category-tabs{display:flex;flex-wrap:wrap;gap:.4rem}.category-tabs button{padding:.65rem .8rem;border:0;border-bottom:1px solid transparent;background:none;color:var(--muted);font-size:.52rem;letter-spacing:.1em}.category-tabs button.active{border-color:var(--gold);color:var(--cream)}.game-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.lobby-lower{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:3rem}.lobby-lower article{padding:1.5rem;border:1px solid var(--line);background:#101310}.lobby-lower h3{font:1.2rem Georgia,serif}.progress{height:3px;background:#292c28}.progress i{display:block;height:100%;background:var(--gold)}.lobby-lower article>span{display:block;margin-top:.5rem;color:var(--muted);font-size:.55rem}.empty-state{grid-column:1/-1;display:grid;gap:.5rem;place-items:center;min-height:180px;border:1px dashed var(--line);color:var(--muted)}
/* Games */
.game-page-head{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;margin-bottom:1rem}.game-page-head>div{text-align:center}.game-page-head h1{margin:0;font:400 2rem Georgia,serif}.game-page-head>span{text-align:right;color:var(--muted);font-size:.5rem;letter-spacing:.18em}.back-casino,.paytable-link{border:0;background:none;color:var(--muted);font-size:.55rem;letter-spacing:.18em}.slot-stage{max-width:930px;margin:auto;padding:1.5rem 3rem 2rem;border:2px solid #6f5c39;background:linear-gradient(90deg,#13140f,#263a2c 50%,#13140f);box-shadow:0 30px 70px #000,inset 0 0 50px #000}.slot-marquee{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:.8rem;border-bottom:1px solid var(--line);font-size:.5rem;letter-spacing:.15em}.slot-marquee strong{font:2rem Georgia,serif;text-align:center}.slot-marquee i{color:var(--red)}.slot-marquee span:last-child{text-align:right}.slot-window{display:grid;grid-template-columns:repeat(5,1fr);grid-template-rows:repeat(3,1fr);margin:1.3rem 0;padding:10px;border:9px solid #151710;outline:2px solid var(--gold);background:#ded7c6;box-shadow:inset 0 0 30px #625e54}.slot-symbol{display:grid;place-items:center;min-height:112px;border-right:1px solid #918a7c;border-bottom:1px solid #a8a08f;color:#141611;font:400 clamp(1.8rem,4vw,4rem) Georgia,serif;font-style:normal;text-shadow:0 1px white;transition:.25s}.slot-symbol:nth-child(5n){border-right:0}.slot-symbol.seven{color:var(--red);font-style:italic;font-weight:800}.slot-symbol.wild{background:#1b382a;color:var(--gold)}.slot-symbol.scatter{color:var(--gold)}.slot-symbol.bar{font:800 1.25rem Arial,sans-serif}.slot-symbol.spinning{animation:reel .11s linear infinite;filter:blur(1px)}.slot-symbol.winner{z-index:2;color:white;background:var(--red);animation:winner .55s alternate infinite}.game-message{min-height:38px;display:grid;place-items:center;color:var(--gold);font:1rem Georgia,serif;letter-spacing:.12em}.game-controls{display:grid;grid-template-columns:1fr auto 1fr;align-items:end;gap:1rem}.game-controls label{color:var(--muted);font-size:.5rem;letter-spacing:.15em}.game-controls>div:last-child{text-align:right}.game-controls span{display:block;color:var(--muted);font-size:.5rem;letter-spacing:.15em}.game-controls strong{font:1.5rem Georgia,serif}.spin-housing{display:grid;place-items:center;width:160px;height:110px;border:1px solid var(--gold);background:#11120f;clip-path:polygon(12% 0,88% 0,100% 20%,95% 100%,5% 100%,0 20%)}.physical-spin{width:78%;height:64%;border:2px solid #9c804c;background:linear-gradient(#7a2935,#3c1017);color:white;font:1rem Georgia,serif;letter-spacing:.2em;box-shadow:inset 0 4px rgba(255,255,255,.12),0 6px #1f080c}.physical-spin:active{transform:translateY(5px);box-shadow:inset 0 3px 8px #1f080c}.physical-spin:disabled{filter:grayscale(1)}.paytable-link{display:block;margin:1rem auto 0}.roulette-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:2rem;max-width:1050px;margin:auto;padding:2rem;border:1px solid var(--line);background:radial-gradient(circle at 25% 50%,#183a2b,#0b0e0b 45%)}.roulette-wheel-wrap{display:grid;place-items:center}.roulette-wheel{position:relative;display:grid;place-items:center;width:min(40vw,430px);aspect-ratio:1;border:35px double #28251c;border-radius:50%;background:repeating-conic-gradient(#781f2d 0 4.75deg,#111 5deg 9.5deg);box-shadow:0 25px 50px #000,inset 0 0 0 8px var(--gold)}.roulette-wheel:after{content:"";position:absolute;inset:27%;border:2px solid var(--gold);border-radius:50%;background:#123c29}.roulette-wheel b{z-index:2;font:4rem Georgia,serif}.roulette-wheel b.red{color:#f05c65}.roulette-wheel b.green{color:#7bd69f}.roulette-ball{position:absolute;z-index:4;top:2%;left:48%;width:12px;height:12px;border-radius:50%;background:white;box-shadow:0 0 8px white}.roulette-wheel.spinning{animation:spin-fast 1.9s var(--ease)}.roulette-history{margin-top:1rem;color:var(--muted);font-size:.55rem;letter-spacing:.12em}.roulette-table{padding:1rem}.roulette-table h2{font:2rem Georgia,serif}.potential{display:flex;justify-content:space-between;padding:1rem 0;border-block:1px solid var(--line)}.potential span{color:var(--muted);font-size:.5rem;letter-spacing:.15em}.potential strong{font:1.2rem Georgia,serif}.roulette-table>.gold-button{width:100%;margin-top:1rem}.quick-bets{display:grid;grid-template-columns:repeat(3,1fr);gap:.4rem;margin-top:1rem}.quick-bets button{padding:.65rem;border:1px solid var(--line);background:#10130f;font-size:.55rem}.blackjack-table{position:relative;min-height:670px;max-width:1100px;margin:auto;padding:2rem;border:8px solid #221a11;border-radius:45% 45% 8% 8%/18% 18% 4% 4%;background:radial-gradient(ellipse at 50% 50%,#256142,#0f2e1e 72%);box-shadow:0 28px 60px #000,inset 0 0 80px #07120c}.dealer-zone,.player-zone{display:grid;place-items:center;min-height:210px}.dealer-zone p,.player-zone p{color:var(--gold);font-size:.55rem;letter-spacing:.17em}.cards{display:flex;justify-content:center;gap:.6rem;min-height:142px}.hand{display:flex;position:relative;gap:.4rem;padding:.5rem;border:1px solid transparent}.hand.active{border-color:var(--gold)}.hand small{position:absolute;left:50%;bottom:-1rem;transform:translateX(-50%);white-space:nowrap;color:var(--muted);font-size:.45rem}.card{display:flex;flex-direction:column;justify-content:space-between;width:92px;height:132px;padding:.55rem;border-radius:5px;background:#ede6d7;color:#151613;font:1.5rem Georgia,serif;box-shadow:0 8px 12px rgba(0,0,0,.35)}.card span{align-self:center;font-size:2.4rem}.red-card{color:#8b2230}.back-card{display:grid;place-items:center;background:repeating-linear-gradient(45deg,#172b21 0 8px,#b49659 9px 10px);color:white}.empty-card{opacity:.13}.table-mark{text-align:center;color:rgba(180,150,89,.55);font:2.2rem Georgia,serif}.table-mark small{font:.48rem Arial,sans-serif;letter-spacing:.2em}.blackjack-controls{display:flex;align-items:end;justify-content:center;gap:.5rem}.blackjack-controls label{color:var(--muted);font-size:.5rem;letter-spacing:.1em}.blackjack-controls button:not(.gold-button){min-height:42px;padding:.6rem .9rem;border:1px solid var(--line);background:#11140f;color:var(--cream);font-size:.55rem;letter-spacing:.1em}.blackjack-controls button:disabled{opacity:.28}.debug-panel{max-width:900px;margin:1rem auto;padding:1rem;border:1px solid #784600;background:#171009;color:#e7bb64;font:12px monospace}.debug-panel pre{white-space:pre-wrap}
/* Profile and admin */
.profile-hero{display:flex;align-items:center;gap:1.5rem;padding:2rem;border-bottom:1px solid var(--line);background:linear-gradient(90deg,#19392b,transparent)}.avatar-large{display:grid;place-items:center;width:105px;height:105px;border:2px solid var(--gold);border-radius:50%;background:#101b15;font:2.2rem Georgia,serif}.profile-hero h1{margin:0;font:3rem Georgia,serif}.profile-hero span{color:var(--gold);font-size:.6rem;letter-spacing:.18em}.profile-hero button{margin-left:auto}.profile-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin:2rem 0;background:var(--line);border:1px solid var(--line)}.profile-stats article{padding:1.4rem;background:#0e110e}.profile-stats span{display:block;color:var(--muted);font-size:.48rem;letter-spacing:.15em}.profile-stats strong{display:block;margin-top:.6rem;font:1.3rem Georgia,serif}.activity{margin-top:3rem}.activity h2{font:2rem Georgia,serif}.activity-row{display:grid;grid-template-columns:1.1fr 1.3fr 1fr .7fr 1fr;gap:1rem;padding:1rem;border-bottom:1px solid rgba(255,255,255,.07);font-size:.65rem}.activity-row.heading{color:var(--muted);font-size:.48rem;letter-spacing:.12em}.activity-row small{display:block;margin-top:.3rem;color:var(--muted);font-size:.45rem}.positive{color:#73c794}.negative{color:#d46671}.admin-login{display:grid;place-items:center;min-height:100vh;background:radial-gradient(circle,#1b382a,#070807 60%)}.admin-login>.wordmark{position:absolute;left:2rem;top:2rem}.admin-login form{width:min(90%,390px);padding:2.5rem;border:1px solid var(--line);background:#101310}.admin-login h1{font:2.2rem Georgia,serif}.admin-login label{display:grid;gap:.5rem;color:var(--muted);font-size:.55rem}.admin-login input{padding:.9rem;border:1px solid var(--line);background:#080a08;color:white}.admin-login .gold-button{width:100%;margin:1rem 0}.admin-login small{color:var(--muted)}.admin-shell{display:grid;grid-template-columns:230px 1fr;min-height:100vh;background:#0d0f0d}.admin-shell>aside{display:flex;flex-direction:column;gap:.3rem;padding:2rem 1rem;border-right:1px solid var(--line);background:#080a08}.admin-shell>aside .wordmark{margin:0 1rem 2rem}.admin-shell>aside button{padding:.9rem;border:0;border-left:2px solid transparent;background:none;color:var(--muted);font-size:.55rem;letter-spacing:.13em;text-align:left}.admin-shell>aside button.active{border-color:var(--gold);background:#141711;color:white}.admin-shell>aside div{flex:1}.admin-shell>main{padding:2.5rem}.admin-shell>main>header{display:flex;justify-content:space-between}.admin-shell h1{margin:.3rem 0;font:2.4rem Georgia,serif}.admin-shell>main>header>span{color:var(--muted);font-size:.55rem}.admin-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:2rem 0}.admin-metrics article{padding:1.3rem;border:1px solid var(--line);background:#121512}.admin-metrics span{display:block;color:var(--muted);font-size:.48rem;letter-spacing:.13em}.admin-metrics strong{display:block;margin-top:.7rem;font:1.4rem Georgia,serif}.admin-section{margin:1rem 0;padding:1.5rem;border:1px solid var(--line);background:#101310}.admin-section>header{display:flex;justify-content:space-between;align-items:center}.admin-section h2{font:1.2rem Georgia,serif}.admin-section>header span{color:var(--muted);font-size:.5rem}.admin-games article{display:grid;grid-template-columns:1fr 130px 130px 110px;align-items:center;gap:1rem;padding:1rem 0;border-top:1px solid rgba(255,255,255,.07)}.admin-games article span{display:block;margin-top:.3rem;color:var(--muted);font-size:.5rem}.admin-games label{color:var(--muted);font-size:.45rem}.switch{display:flex;align-items:center;gap:.5rem}.switch input{width:auto}.admin-user{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:1rem;padding:.8rem 0;border-top:1px solid rgba(255,255,255,.07)}.admin-user small{display:block;color:var(--muted)}.admin-user button{padding:.5rem;border:1px solid var(--line);background:none;color:var(--gold)}.audit-row{display:grid;grid-template-columns:1fr 1fr 1fr;padding:.7rem 0;border-top:1px solid rgba(255,255,255,.07);color:var(--muted);font-size:.55rem}
/* Modal, toast */
.modal-backdrop{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:1rem;background:rgba(0,0,0,.78);backdrop-filter:blur(7px)}.wallet-modal,.notice-modal,.paytable-modal{position:relative;width:min(94vw,530px);max-height:90vh;overflow:auto;padding:2rem;border:1px solid var(--gold);background:#11140f;box-shadow:0 30px 80px #000}.modal-close{position:absolute;right:1rem;top:1rem;border:0;background:none;font-size:1.5rem}.wallet-modal h2{margin:.3rem 0;font:3rem Georgia,serif}.virtual-stamp{display:block;margin-bottom:1.5rem;color:var(--gold);font-size:.48rem;letter-spacing:.13em}.wallet-modal article,.paytable-modal article{display:flex;justify-content:space-between;padding:.8rem 0;border-top:1px solid rgba(255,255,255,.08);font-size:.65rem}.wallet-modal article span{color:var(--muted)}.wallet-modal .gold-button{width:100%;margin-top:1rem}.notice-modal h2,.paytable-modal h2{font:2rem Georgia,serif}.notice-modal article{padding:1rem 0;border-top:1px solid rgba(255,255,255,.08)}.notice-modal article p{color:var(--muted);font-size:.7rem}.paytable-modal article{display:grid;grid-template-columns:1fr repeat(3,.7fr)}.paytable-modal>small{display:block;margin-top:1rem;color:var(--muted)}.toast-root{position:fixed;right:1rem;bottom:1rem;z-index:150;display:grid;gap:.5rem}.toast{display:grid;gap:.35rem;width:min(380px,calc(100vw - 2rem));padding:1rem;border-left:3px solid var(--gold);background:#151914;box-shadow:0 15px 35px #000;animation:toast-in .35s ease}.toast.error{border-color:#bb3e4f}.toast b{font-size:.62rem;letter-spacing:.12em}.toast span{color:var(--muted);font-size:.68rem}
@keyframes slow-spin{to{transform:rotate(360deg)}}@keyframes spin-fast{to{transform:rotate(1260deg)}}@keyframes float{50%{transform:translateY(-18px) rotate(8deg)}}@keyframes reel{from{transform:translateY(-8px)}to{transform:translateY(8px)}}@keyframes winner{to{transform:scale(1.08);filter:drop-shadow(0 0 12px var(--gold))}}@keyframes toast-in{from{opacity:0;transform:translateX(20px)}}
@media(max-width:1000px){.public-links{display:none}.hero{grid-template-columns:1fr}.hero-visual{position:absolute;right:-12%;width:55%;opacity:.5}.public-game-grid,.game-grid{grid-template-columns:repeat(2,1fr)}.casino-shell{grid-template-columns:78px 1fr}.casino-header{grid-template-columns:58px 1fr auto auto}.casino-header .wordmark span,.profile-chip span{display:none}.side-nav button{font-size:0}.side-nav button span{font-size:1rem}.balance-strip{grid-template-columns:repeat(2,1fr)}.balance-strip button{min-height:50px}.roulette-layout{grid-template-columns:1fr}.roulette-wheel{width:min(65vw,400px)}.admin-shell{grid-template-columns:80px 1fr}.admin-shell>aside button{font-size:0}.admin-shell>aside .wordmark{font-size:1rem}.admin-shell>aside .wordmark span{display:none}.admin-games article{grid-template-columns:1fr 100px 100px}.admin-games .switch{grid-column:2/4}.blackjack-controls{flex-wrap:wrap}}
@media(max-width:700px){.public-nav{min-height:68px}.nav-actions .text-button{display:none}.hero{min-height:calc(100vh - 68px);padding-top:3rem}.hero h1{font-size:clamp(3.3rem,17vw,5.5rem)}.hero-visual{right:-30%;width:80%}.roulette-orbit{width:75vw}.featured{padding-block:3rem}.public-game-grid,.game-grid{grid-template-columns:1fr 1fr;gap:.6rem}.game-info{display:block}.game-info small{text-align:left}.public-footer{display:block}.casino-shell{display:block;padding-bottom:66px}.casino-header{height:68px;grid-template-columns:1fr auto auto;padding:.7rem 1rem}.casino-header .search-box,.casino-header .profile-chip{display:none}.side-nav{display:none}.mobile-nav{position:fixed;left:0;right:0;bottom:0;z-index:60;display:grid;grid-template-columns:repeat(5,1fr);height:66px;border-top:1px solid var(--line);background:#090b09}.mobile-nav button{display:grid;place-items:center;gap:.2rem;padding:.4rem;border-left:0;border-top:2px solid transparent;font-size:.42rem;text-align:center}.mobile-nav button span{font-size:1rem}.mobile-nav button.active{border-color:var(--gold);color:white}.lobby-page,.profile-page,.game-page{padding:1rem}.casino-hero{min-height:230px;padding:1.5rem}.casino-hero h1{font-size:2.7rem}.hero-emblem{font-size:9rem}.hero-dots{left:1.5rem}.balance-strip{margin-bottom:2rem}.balance-strip>div:nth-child(3),.balance-strip>div:nth-child(4){display:none}.section-heading{display:block}.category-tabs{margin-top:1rem;overflow:auto;flex-wrap:nowrap}.category-tabs button{white-space:nowrap}.lobby-lower{grid-template-columns:1fr}.game-page-head{grid-template-columns:auto 1fr auto}.slot-stage{padding:1rem .6rem}.slot-marquee span{font-size:.38rem}.slot-marquee strong{font-size:1.3rem}.slot-window{padding:5px;border-width:5px}.slot-symbol{min-height:78px}.game-controls{grid-template-columns:1fr auto 1fr}.spin-housing{width:110px;height:84px}.roulette-layout{padding:1rem}.roulette-wheel{width:75vw;border-width:25px}.blackjack-table{min-height:650px;padding:1rem;border-width:4px;border-radius:38% 38% 3% 3%/12% 12% 2% 2%}.card{width:63px;height:94px;font-size:1rem}.card span{font-size:1.7rem}.profile-hero{display:grid;grid-template-columns:auto 1fr}.profile-hero button{grid-column:1/-1;margin:0}.profile-stats{grid-template-columns:repeat(2,1fr)}.activity-row{grid-template-columns:1fr 1fr 1fr}.activity-row span:nth-child(4),.activity-row span:nth-child(3){display:none}.auth-page{grid-template-columns:1fr}.auth-brand{min-height:240px;padding:2rem}.auth-brand>div:not(.auth-symbols){align-self:end}.auth-brand h1{font-size:3rem}.auth-brand p:not(.overline),.auth-brand>small{display:none}.auth-panel{min-height:calc(100vh - 240px);padding:5rem 1.3rem 2rem}.admin-shell{display:block}.admin-shell>aside{display:none}.admin-shell>main{padding:1rem}.admin-metrics{grid-template-columns:repeat(2,1fr)}.admin-games article{grid-template-columns:1fr 1fr}.admin-games article>div{grid-column:1/-1}.admin-games .switch{grid-column:1/-1}.admin-user{grid-template-columns:auto 1fr}.admin-user>strong,.admin-user>button{grid-column:2}.audit-row{grid-template-columns:1fr}.wallet-modal h2{font-size:2rem}}
