body.lobby{overflow-x:hidden}.lobby-bg{z-index:0;pointer-events:none;position:fixed;inset:0;overflow:hidden}.glow{filter:blur(90px);opacity:.55;border-radius:50%;position:absolute}.g1{background:radial-gradient(circle,#7b2dff,#0000 65%);width:52vmax;height:52vmax;top:-22vmax;left:-18vmax}.g2{opacity:.35;background:radial-gradient(circle,#ff2d75,#0000 65%);width:44vmax;height:44vmax;top:18vh;right:-16vmax}.g3{opacity:.22;background:radial-gradient(circle,#ffb200,#0000 62%);width:50vmax;height:50vmax;bottom:-30vmax;left:30vw}.suit{font-family:var(--font-display);color:#ffffff09;-webkit-user-select:none;user-select:none;font-size:clamp(80px,12vw,180px);position:absolute}.s1{top:55%;left:3vw;rotate:-14deg}.s2{color:#ff2d7512;top:12%;right:6vw}.s3{bottom:4%;right:18vw;rotate:12deg}.s4{top:6%;left:22vw;rotate:8deg}.lobby-shell{z-index:1;position:relative}.lobby-top{padding:2px 0 4px}.brand{flex:1;align-items:center;gap:12px;min-width:220px;text-decoration:none;display:flex}.brand-mark{color:#2a1200;background:radial-gradient(circle at 32% 26%, #fff6b0, var(--gold) 45%, #c47a00 100%);border-radius:14px;flex:none;place-items:center;width:48px;height:48px;font-size:26px;display:grid;box-shadow:0 0 24px #ffbe0073,inset 0 -3px #783c0080}.brand-copy{flex-direction:column;display:flex}.brand-copy b{font-family:var(--font-display);letter-spacing:.04em;background:linear-gradient(90deg, #fff6b0, var(--gold) 45%, #ff8a00);color:#0000;filter:drop-shadow(0 0 10px #ffaa0059);-webkit-background-clip:text;background-clip:text;font-size:clamp(18px,2.4vw,24px);font-weight:400;line-height:1}.brand-copy small{letter-spacing:.3em;color:var(--muted);margin-top:3px;font-size:9px;font-weight:700}.lobby-tools{align-items:center;gap:8px;display:flex}.btn.ghost{border:1px solid var(--edge);background:#ffffff0d}.btn.ghost:hover{border-color:var(--accent)}.hero{background:radial-gradient(at 85% 30%,#ff2d7529,#0000 55%),radial-gradient(at 10% 100%,#7b2dff33,#0000 60%),linear-gradient(135deg,#1b072e,#10041d 55%,#1a0a12);border:1px solid #ffd40047;border-radius:28px;grid-template-columns:1.12fr .88fr;gap:20px;padding:clamp(22px,4vw,46px);display:grid;position:relative;overflow:hidden;box-shadow:0 24px 70px #0000008c,inset 0 0 60px #7b2dff14}.hero:before{content:"";aspect-ratio:1;pointer-events:none;background:repeating-conic-gradient(from 0deg, #ffd4000b 0 4deg, transparent 4deg 14deg);width:140%;animation:100s linear infinite lobbySpin;position:absolute;top:50%;left:50%;translate:-50% -50%}.hero>*{z-index:1;position:relative}.hero-copy{flex-direction:column;align-items:flex-start;display:flex}.kicker{letter-spacing:.22em;color:#ffd98a;background:#ffd40017;border:1px solid #ffd40059;border-radius:999px;padding:5px 12px;font-size:10px;font-weight:900;display:inline-block}.hero h1{font-family:var(--font-display);letter-spacing:-.01em;margin:16px 0 0;font-size:clamp(32px,5vw,58px);font-weight:400;line-height:.98}.hero h1 em{background:linear-gradient(90deg, #fff6b0, var(--gold) 40%, #ff8a00 75%, #ff2d75);color:#0000;filter:drop-shadow(0 0 22px #ffa00059);-webkit-background-clip:text;background-clip:text;font-style:normal}.lede{color:#cdbfe2;max-width:46ch;margin:16px 0 0;font-size:clamp(13px,1.5vw,16px);line-height:1.6}.hero-actions{flex-wrap:wrap;gap:10px;margin-top:22px;display:flex}.hero-actions .btn{align-items:center;text-decoration:none;display:inline-flex}.hero-stats{border-top:1px solid #ffffff17;grid-template-columns:repeat(3,auto);gap:clamp(16px,3vw,34px);width:100%;margin-top:26px;padding-top:18px;display:grid}.hero-stats small{letter-spacing:.18em;color:var(--muted);font-size:9px;font-weight:700;display:block}.hero-stats b{font-family:var(--font-display);color:var(--gold);white-space:nowrap;margin-top:3px;font-size:clamp(16px,2.2vw,22px);font-weight:400;display:block}.hero-art{place-items:center;min-height:300px;display:grid;position:relative}.hero-ring{aspect-ratio:1;filter:blur(8px);background:conic-gradient(#0000,#ffd40047,#0000 35%,#ff2d754d,#0000 70%);border-radius:50%;width:min(360px,90%);animation:18s linear infinite lobbySpin;position:absolute}.cabinet{background:linear-gradient(#2a1240, #12001f) padding-box, linear-gradient(135deg, #fff6b0, var(--gold), #b37400, var(--gold), #fff6b0) border-box;border:4px solid #0000;border-radius:26px;flex-direction:column;align-items:center;gap:10px;width:min(250px,72%);padding:18px 18px 14px;animation:6s ease-in-out infinite cabFloat;display:flex;position:relative;rotate:-3deg;box-shadow:0 0 50px #ffb4004d,0 30px 60px #0009,inset 0 0 30px #000c}.cab-crown{color:var(--gold);text-shadow:0 0 16px var(--gold);font-size:26px;line-height:1}.cab-title{font-family:var(--font-display);letter-spacing:.16em;color:#ffd98a;font-size:16px}.cab-reels{background:#08020f;border:2px solid #ffd40073;border-radius:14px;gap:7px;padding:8px;display:flex;box-shadow:inset 0 0 20px #000}.cab-reels span{width:clamp(42px,6vw,54px);height:clamp(58px,8vw,72px);font-family:"Bungee Shade", var(--font-display);color:#ff1744;text-shadow:0 0 12px #ff1744,0 0 30px #ff1744;background:linear-gradient(#2a0a45,#0d0018);border-radius:8px;place-items:center;font-size:clamp(30px,4.4vw,40px);animation:2.8s ease-in-out infinite reelGlow;display:grid;box-shadow:inset 0 0 12px #000000e6}.cab-reels span:nth-child(2){animation-delay:.4s}.cab-reels span:nth-child(3){animation-delay:.8s}.cab-base{font-family:var(--font-display);letter-spacing:.2em;color:#fff3b0;text-shadow:0 0 14px #ffd40099;font-size:18px}.coin{width:38px;height:38px;font-family:var(--font-display);color:#7a3a00;background:radial-gradient(circle at 32% 26%, #fff6b0, var(--gold) 50%, #b37400);border:2px solid #ffe680;border-radius:50%;place-items:center;font-size:18px;animation:4.5s ease-in-out infinite coinFloat;display:grid;position:absolute;box-shadow:0 0 20px #ffbe008c}.coin.c1{animation-delay:0s;top:18%;left:2%}.coin.c2{width:28px;height:28px;font-size:13px;animation-delay:1.2s;top:40%;right:4%}.coin.c3{width:24px;height:24px;font-size:11px;animation-delay:2.1s;bottom:12%;left:12%}.lobby-games{gap:30px;scroll-margin-top:16px;display:grid}.game-section{gap:12px;display:grid}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.section-head h2{font-family:var(--font-display);align-items:center;gap:10px;margin:0;font-size:clamp(18px,2.4vw,24px);font-weight:400;display:flex}.section-head h2:before{content:"";background:linear-gradient(var(--gold), #ff2d75);border-radius:2px;width:4px;height:20px;box-shadow:0 0 12px #ffb40099}.section-head span{color:var(--muted);font-size:12px}.game-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;display:grid}.game-card{background:linear-gradient(180deg, color-mix(in srgb, var(--a) 10%, transparent), transparent 45%), var(--panel);border:1px solid var(--edge);border-radius:20px;flex-direction:column;text-decoration:none;transition:transform .18s,border-color .18s,box-shadow .18s;display:flex;position:relative;overflow:hidden}.game-card:hover{border-color:color-mix(in srgb, var(--a) 60%, transparent);box-shadow:0 18px 40px #00000080, 0 0 26px color-mix(in srgb, var(--a) 25%, transparent);transform:translateY(-4px)}.game-card:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.card-art{background:radial-gradient(circle at 70% 20%, color-mix(in srgb, var(--b) 30%, transparent), transparent 60%), radial-gradient(circle at 20% 90%, color-mix(in srgb, var(--a) 32%, transparent), transparent 55%), #0c0417;border-bottom:1px solid #ffffff12;place-items:center;height:132px;display:grid;position:relative;overflow:hidden}.card-art:after{content:"";pointer-events:none;background:repeating-linear-gradient(115deg,#ffffff06 0 2px,#0000 2px 9px);position:absolute;inset:0}.ga-skin{place-items:center;display:grid}.ga-skin span{filter:drop-shadow(0 0 16px var(--a)) drop-shadow(0 0 28px var(--b));font-size:58px;line-height:1}.ga-crash svg{width:82%;height:80%;overflow:visible}.ga-crash path{fill:none;stroke:var(--a);stroke-width:3.5px;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 7px var(--a))}.ga-crash circle{fill:#fff;filter:drop-shadow(0 0 8px var(--b))}.ga-crash .grid-line{stroke:#ffffff12;stroke-width:1px}.ga-bj{align-items:center;display:flex}.ga-bj .mini-card{color:#17121f;width:58px;height:82px;font-family:var(--font-display);background:linear-gradient(145deg,#fffdf5,#e7ddc9);border:1px solid #fff;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;display:flex;box-shadow:0 10px 24px #00000080}.ga-bj .mini-card b{font-size:22px;line-height:1}.ga-bj .mini-card span{font-size:20px;line-height:1}.ga-bj .mini-card.red{color:#d3123f}.ga-bj .c1{translate:8px 4px;rotate:-10deg}.ga-bj .c2{translate:-8px -4px;rotate:8deg}.ga-roulette{position:relative}.mini-wheel{background:radial-gradient(circle, #12031f 0 28%, transparent 29%), repeating-conic-gradient(from 0deg, #ff2d55 0 9.7deg, #1a0a2a 9.7deg 19.4deg);border:4px solid #c9a24a;border-radius:50%;width:106px;height:106px;animation:24s linear infinite lobbySpin;position:relative;box-shadow:0 0 24px #ff2d5559,inset 0 0 18px #000c}.mini-wheel:after{content:"0";color:#7cff4f;font-size:9px;font-weight:900;position:absolute;top:3px;left:50%;translate:-50%}.ga-roulette .pin{background:#fff;border-radius:50%;width:8px;height:8px;position:absolute;top:12%;left:50%;translate:-50%;box-shadow:0 0 10px #fff}.ga-mines{grid-template-columns:repeat(3,34px);gap:5px;display:grid}.ga-mines i{color:#ffffff1f;background:linear-gradient(#1d0b33,#0e031c);border:1px solid #ffffff1a;border-radius:8px;place-items:center;width:34px;height:34px;font-size:15px;font-style:normal;display:grid}.ga-mines i.gem{color:#7cff4f;text-shadow:0 0 10px #7cff4f;background:linear-gradient(#7cff4f38,#00e5ff1f);border-color:#7cff4f80}.card-body{flex-direction:column;flex:1;gap:7px;padding:13px 14px 14px;display:flex}.card-tags{flex-wrap:wrap;gap:5px;display:flex}.card-tags span{letter-spacing:.08em;color:color-mix(in srgb, var(--a) 85%, #fff);background:color-mix(in srgb, var(--a) 13%, transparent);border:1px solid color-mix(in srgb, var(--a) 32%, transparent);text-transform:uppercase;border-radius:999px;padding:2px 7px;font-size:9px;font-weight:900}.card-title{font-family:var(--font-display);margin:0;font-size:17px;font-weight:400;line-height:1.1}.card-blurb{color:#bcadd2;margin:0;font-size:12.5px;line-height:1.45}.card-foot{justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding-top:8px;display:flex}.card-foot .rtp{letter-spacing:.1em;color:var(--muted);font-size:10px;font-weight:700}.card-foot .play{letter-spacing:.14em;color:var(--a);font-size:11px;font-weight:900}.card-foot .play:after{content:" ›"}.last-badge{z-index:2;letter-spacing:.12em;color:#062b00;background:linear-gradient(#9dff6a,#22b33a);border-radius:999px;padding:3px 8px;font-size:9px;font-weight:900;position:absolute;top:10px;right:10px;box-shadow:0 0 12px #7cff4f73}.lobby-foot{color:var(--muted);border-top:1px solid #ffffff14;margin-top:6px;padding:16px 0 6px;font-size:12px;line-height:1.6}.lobby-foot p{margin:0 0 4px}.lobby-foot b{color:#d8cdea}.link-btn{color:#c9b6ff;font-size:inherit;padding:0;text-decoration:underline}.link-btn:hover{color:#fff}@keyframes lobbySpin{to{rotate:360deg}}@keyframes cabFloat{50%{translate:0 -10px}}@keyframes reelGlow{0%,to{filter:brightness()}50%{filter:brightness(1.45)}}@keyframes coinFloat{0%,to{translate:0;rotate:0deg}50%{translate:0 -14px;rotate:10deg}}@media (width<=900px){.hero{grid-template-columns:1fr}.hero-art{order:-1;min-height:280px}.cabinet{width:min(220px,62%)}.coin.c1{left:10%}.coin.c2{right:12%}}@media (width<=600px){.lobby-top{align-items:flex-start}.brand{min-width:0}.brand-mark{width:42px;height:42px;font-size:22px}.brand-copy small{display:none}.lobby-tools{justify-content:flex-end;width:100%}.hero{padding:20px 18px 24px}.hero h1{font-size:clamp(32px,9.5vw,44px)}.hero-actions .btn{justify-content:center;width:100%}.hero-stats{grid-template-columns:repeat(3,1fr);gap:10px}.hero-stats b{font-size:15px}.game-grid{grid-template-columns:1fr 1fr}.card-art{height:108px}.card-blurb{display:none}.card-title{font-size:14px}}@media (width<=420px){.game-grid{grid-template-columns:1fr}.card-blurb{display:block}}body.lobby{--hb-green:#8dc63f;--hb-green-deep:#5a9216;--hb-purple:#2a0b47}.btn.green{background:linear-gradient(140deg, #a6e05a, var(--hb-green-deep));color:#0d2b00;border:1px solid #c9ffb0;box-shadow:0 8px 22px #8dc63f52}.btn.green:hover:not(:disabled){filter:brightness(1.06)}.auth-controls{align-items:center;gap:8px;display:flex}.auth-controls .btn.small{text-decoration:none}.user-chip{background:var(--panel);border:1px solid var(--edge);border-radius:999px;align-items:center;gap:9px;padding:4px 6px 4px 10px;display:flex}.user-chip .uname{color:#fff;text-overflow:ellipsis;white-space:nowrap;max-width:120px;font-size:13px;font-weight:800;overflow:hidden}.user-chip .uavatar{color:#0d2b00;background:linear-gradient(140deg, var(--hb-green), var(--hb-green-deep));border-radius:50%;flex:none;place-items:center;width:28px;height:28px;font-size:13px;font-weight:900;display:grid}.user-chip .logout{color:var(--muted);font:inherit;cursor:pointer;background:#ffffff0f;border:none;border-radius:999px;padding:6px 11px;font-size:12px;font-weight:700}.user-chip .logout:hover{color:#fff;background:#ffffff1f}.promo{border:1px solid var(--hb-edge,#8dc63f66);background:linear-gradient(100deg,#8dc63f29,#7b2dff24);border-radius:16px;flex-wrap:wrap;align-items:center;gap:14px;margin:14px 0 2px;padding:12px 18px;text-decoration:none;display:flex;position:relative;overflow:hidden}.promo:after{content:"";pointer-events:none;background:linear-gradient(110deg,#0000 30%,#ffffff24 45%,#0000 60%);animation:5s ease-in-out infinite promoSheen;position:absolute;inset:0;transform:translate(-120%)}@keyframes promoSheen{0%,60%{transform:translate(-120%)}85%,to{transform:translate(220%)}}.promo-badge{font-family:var(--font-display);letter-spacing:.06em;color:#0d2b00;background:linear-gradient(140deg, #a6e05a, var(--hb-green-deep));white-space:nowrap;border-radius:999px;padding:5px 11px;font-size:12px;font-weight:400}.promo-text{color:#efe6ff;flex:1;min-width:180px;font-size:clamp(13px,1.6vw,15px);font-weight:600}.promo-text b{color:var(--hb-green);font-weight:900}.promo-cta{color:var(--hb-green);white-space:nowrap;font-size:14px;font-weight:900}.promo[hidden]{display:none}.cat-nav{flex-wrap:wrap;gap:10px;margin:20px 0 2px;display:flex}.cat-nav a{color:#e8ddff;background:var(--panel);border:1px solid var(--edge);border-radius:999px;padding:9px 16px;font-size:14px;font-weight:700;text-decoration:none;transition:border-color .15s,color .15s}.cat-nav a:hover{color:#fff;border-color:var(--hb-green)}.card-foot .play{color:var(--hb-green)}.cat-nav,.promo{z-index:1;position:relative}
