:root{color-scheme:dark;--bg:#130e1d;--panel:#241a31;--line:#bda3d32c;--cream:#faf5e8;--muted:#bfb0cf;--acid:#d7fc63;--purple:#bc87e8}*{box-sizing:border-box}body{margin:0;background:var(--bg);font:14px/1.5 'Segoe UI',sans-serif;color:var(--cream);overflow:hidden}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{border:1px solid var(--line);background:#ffffff08;color:var(--cream);border-radius:9px;padding:10px 15px;cursor:pointer;transition:background .15s,transform .15s}button:hover:enabled{background:#ffffff16;transform:translateY(-1px)}button:disabled{opacity:.38;cursor:not-allowed}button:focus-visible,input:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid var(--acid);outline-offset:3px}input,select{border:1px solid #bb9bd440;border-radius:8px;background:#140f1d;color:var(--cream);padding:11px 12px;min-width:0;max-width:100%}input[type=number]{font-variant-numeric:tabular-nums}a{color:var(--acid)}.hidden,[hidden]{display:none!important}.primary{background:var(--acid);color:#21182b;border-color:var(--acid);font-weight:800;box-shadow:0 4px 0 #819e31}.primary:hover:enabled{background:#e7ffa3}.primary:active:enabled{transform:translateY(3px);box-shadow:0 1px 0 #819e31}.glass{background:#241b30b5;border:1px solid #d9bfef25;backdrop-filter:blur(15px)}.quiet{background:none;border:0;color:var(--muted);font-size:11px}.acid{color:var(--acid)!important}.eyebrow{font-size:9px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--muted)}#worldCanvas{position:fixed;inset:0;width:100%;height:100%;touch-action:none;outline:none}.vignette{position:fixed;inset:0;pointer-events:none;background:linear-gradient(0deg,#100b19ba,transparent 25%,transparent 80%,#100b1980),linear-gradient(90deg,#100b1940,transparent 40%)}#worldLabels{position:fixed;inset:0;pointer-events:none;overflow:hidden}.station-label{position:absolute;top:0;left:0;display:flex;align-items:center;gap:10px;border:1px solid color-mix(in srgb,var(--station-color),transparent 50%);background:#1c142ae8;backdrop-filter:blur(12px);padding:9px 13px;pointer-events:auto;white-space:nowrap;box-shadow:0 7px 20px #0004;transition:opacity .2s}.station-label:hover:enabled{background:#372245}.station-label strong{display:block;font-size:12px}.station-label small{display:block;font-size:8px;color:#ccb8dd}.station-label>b{color:var(--station-color);margin-left:8px;font-size:16px}.station-label .station-icon{font-size:24px;color:var(--station-color);line-height:1}.station-label.near{border-color:var(--acid);box-shadow:0 0 0 3px #d7fc6311}.avatar-label{position:absolute;top:0;left:0;font-size:9px;white-space:nowrap;padding:4px 8px;border-radius:20px;background:#1b122bd9;color:#f4e8ff;border:1px solid #b785df33}.hud-header{position:fixed;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:25px 32px;z-index:2;pointer-events:none;gap:20px}.hud-header>*{pointer-events:auto}.brand{display:flex;align-items:center;gap:12px;color:var(--cream);text-decoration:none}.brand img{width:48px;height:60px;filter:drop-shadow(0 4px 0 #0004)}.brand strong{font:900 22px/1 'Arial Black','Segoe UI',sans-serif;letter-spacing:-.7px}.brand small{font-size:7px;letter-spacing:1.6px;color:var(--acid);display:block;margin-top:7px;font-weight:800}.header-right{display:flex;align-items:center;gap:12px}.room-tag{font-size:10px;letter-spacing:1.5px;color:#d8c4e9;padding:8px 13px;border:1px solid var(--line);background:#21172cbb;border-radius:20px}.wallet{display:grid;grid-template-columns:1fr auto;gap:0 8px;padding:11px 18px;background:#21172de6;backdrop-filter:blur(15px);border:1px solid #d7fc6350;border-radius:12px;min-width:145px}.wallet>span{font-size:8px;letter-spacing:1.2px;color:var(--muted);grid-column:1/3}.wallet strong{font-size:25px;font-weight:800;color:var(--acid);line-height:1.2}.wallet small{align-self:end;font-size:9px;color:var(--muted)}.icon-button{font-size:20px;background:#21172dd9;padding:8px 13px}.welcome{position:fixed;inset:0;z-index:1;background:linear-gradient(90deg,#100b19fa 0%,#100b19ed 28%,#100b19b0 52%,transparent 85%);overflow-y:auto;padding:145px 6% 70px}.welcome-copy{max-width:500px}.welcome h1{font:900 clamp(42px,4.6vw,68px)/1.01 'Arial Black','Segoe UI',sans-serif;letter-spacing:-3px;margin:22px 0}.welcome em{font-style:normal;color:var(--acid)}.welcome-copy>p{color:var(--muted);font-size:14px;line-height:1.8;max-width:430px}.welcome label{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:1.2px;margin:25px 0 8px}.welcome input{width:100%;height:45px}.entry-actions{display:flex;gap:10px;margin-top:12px}.entry-actions button:first-child{flex:1}.entry-actions button{font-size:12px;min-height:45px}.join-row{display:flex;gap:9px;margin-top:22px}.join-row input{font-size:10px;letter-spacing:1.7px;text-transform:uppercase;max-width:190px}.join-row button{font-size:11px;flex:1;white-space:nowrap}.error{font-size:11px;color:#ffb6d0;min-height:17px}.download-link{font-size:10px;color:var(--muted);display:block;margin:15px 0 0}.welcome-facts{display:flex;gap:14px;flex-wrap:wrap;font-size:9px;color:var(--muted);margin-top:25px}.welcome-facts span:before{content:'●';color:var(--acid);font-size:6px;margin-right:7px}.welcome-stamp{position:absolute;right:10%;top:24%;font:900 25px/1.1 'Arial Black',sans-serif;color:#21142e;background:var(--acid);padding:25px 30px;transform:rotate(9deg);border:5px solid var(--cream);box-shadow:7px 7px 0 #20132e}.welcome-stamp b{display:block;font-size:17px;margin-top:7px}.left-dock{position:fixed;left:26px;top:140px;width:228px;padding:17px;background:#1d1428a6;backdrop-filter:blur(18px);border:1px solid #c3a0e025;border-radius:15px;z-index:1}.dock-label{font-size:8px;letter-spacing:1.5px;color:var(--muted);margin:0 0 12px}.dock-button{display:flex;width:100%;text-align:left;gap:11px;align-items:center;margin-bottom:8px;padding:11px 9px;background:#ffffff04}.dock-button>span{font-size:23px;color:var(--acid);width:24px;text-align:center}.dock-button strong{font-size:11px;display:block}.dock-button small{font-size:8px;color:var(--muted);display:block;margin-top:3px}.peer-list{font-size:9px;color:#d8c6e7;padding:8px 4px;max-height:170px;overflow:auto}.peer-list>div{padding:5px 0;display:flex;gap:6px;align-items:center}.peer-dot{width:5px;height:5px;background:#d7fc63;border-radius:50%}.peer-dot.offline{background:#89759a}.left-dock .quiet{padding:9px 3px 0}.movement-help{position:fixed;bottom:34px;left:30px;display:flex;gap:20px;align-items:center;font-size:9px;color:#d6c6e2;pointer-events:none}.movement-help kbd,kbd{font:700 9px 'Segoe UI',sans-serif;background:#2b203ae6;border:1px solid #b797d34d;border-bottom-width:3px;border-radius:5px;padding:4px 7px;color:#f0e6f8}.interaction{position:fixed;bottom:75px;left:50%;transform:translateX(-50%);z-index:2;border:1px solid #d7fc6366;background:#24192feb;backdrop-filter:blur(20px);border-radius:13px;display:flex;align-items:center;gap:17px;padding:15px 20px;box-shadow:0 15px 50px #0005}.interaction>kbd{font-size:15px;padding:7px 12px}.interaction strong{font-size:15px;display:block}.interaction small{color:var(--muted);font-size:10px;display:block;white-space:nowrap}.interaction button{font-size:12px;margin-left:20px}.credit{position:fixed;bottom:10px;right:22px;color:#cfbddc70;font-size:8px;letter-spacing:.6px;pointer-events:none;z-index:2}.joystick{display:none;position:fixed;left:25px;bottom:35px;width:100px;height:100px;border:1px solid #d8b4ec55;background:#261c39b0;backdrop-filter:blur(8px);border-radius:50%;z-index:2;touch-action:none}.joystick span{position:absolute;left:30px;top:30px;width:40px;height:40px;border-radius:50%;background:#b98be47c;border:1px solid #e3c3ff77}.mobile-interact{display:none;position:fixed;right:25px;bottom:48px;border-radius:50%;width:65px;height:65px;background:var(--acid);color:#21152c;font-weight:900;font-size:22px;z-index:2}.invitation-banner{position:fixed;right:25px;top:125px;max-width:340px;border:1px solid var(--acid);background:#241931f5;border-radius:12px;padding:17px;z-index:4;font-size:12px}.invitation-banner p{margin:0 0 10px}.invitation-banner button{font-size:11px;margin-right:7px}.overlay{position:fixed;inset:0;background:#09060fe0;backdrop-filter:blur(12px);z-index:5;display:flex;align-items:center;justify-content:center;padding:25px}.game-window{background:#191221;border:1px solid #bb95d94d;border-radius:20px;box-shadow:0 30px 100px #0008;width:min(1180px,100%);max-height:calc(100dvh - 50px);overflow:hidden;display:flex;flex-direction:column}.game-header{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 28px;border-bottom:1px solid var(--line);background:#241a30;flex-shrink:0}.game-header h2{font:900 28px/1.1 'Arial Black','Segoe UI',sans-serif;letter-spacing:-1px;margin:7px 0 0}.game-wallet{margin-left:auto;text-align:right}.game-wallet span{font-size:8px;letter-spacing:1px;color:var(--muted);display:block}.game-wallet strong{font-size:23px;color:var(--acid)}.close-button{font-size:26px;line-height:1;padding:6px 11px}.game-content{padding:26px 28px;overflow-y:auto;min-height:0}.muted{color:var(--muted)}.tiny{font-size:10px;color:var(--muted)}.notice{font-size:12px;color:#d7c5e6;line-height:1.7}.game-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:20px}.game-intro p{font-size:12px;color:var(--muted);margin:0;max-width:620px}.tag{font-size:9px;letter-spacing:.7px;white-space:nowrap;color:#c6afd7;border:1px solid var(--line);border-radius:20px;padding:5px 10px}.game-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:17px;background:#241a30;border:1px solid var(--line);border-radius:12px;margin:15px 0}.game-toolbar label{font-size:10px;color:var(--muted)}.game-toolbar input{width:125px;color:var(--acid);font-weight:800}.game-toolbar button{font-size:12px}.game-toolbar .primary{margin-left:auto}.game-result{border:1px solid #c99ee34d;background:#2b1c39;border-radius:12px;padding:16px 20px;margin-top:17px;font-size:14px}.game-result strong{color:var(--acid)}.game-result.loss strong{color:#f4a8c5}.game-result small{display:block;font-size:10px;color:var(--muted);margin-top:5px}.card-table{border:1px solid #b78ede66;border-radius:70px 70px 20px 20px;background:radial-gradient(ellipse at 50% 10%,#54336e,#2e1f3f 75%);padding:25px;min-height:270px;text-align:center;box-shadow:inset 0 0 0 8px #1c13284d}.card-caption{font-size:9px;letter-spacing:2px;color:#d9c4e8;margin-bottom:12px}.cards{display:flex;gap:7px;justify-content:center;flex-wrap:wrap;min-height:85px}.playing-card{width:60px;height:84px;border-radius:7px;background:#fbf4e3;color:#21172b;padding:6px 8px;text-align:left;box-shadow:0 5px 10px #0004;font:800 20px/1.2 Georgia,serif;display:flex;flex-direction:column;justify-content:space-between}.playing-card span:last-child{text-align:right;font-size:26px}.playing-card.red{color:#a33f60}.playing-card.back{border:3px solid #e3d3ef;background:repeating-linear-gradient(45deg,#3a2453 0 4px,#724c93 4px 6px);align-items:center;justify-content:center;color:#d7fc63;font-size:30px}.bj-hands{display:flex;justify-content:center;gap:20px;flex-wrap:wrap;margin-top:24px}.bj-hand{border:1px solid transparent;padding:15px;border-radius:12px}.bj-hand.active{border-color:var(--acid);background:#d7fc6307}.bj-hand>strong{display:block;margin-top:10px;font-size:12px}.bj-hand small{font-size:10px;color:var(--muted)}.game-actions{display:flex;justify-content:center;gap:9px;flex-wrap:wrap;margin-top:20px}.aid{font-size:11px;color:var(--muted);border-top:1px solid var(--line);padding-top:15px;margin-top:16px}.aid b{color:var(--acid);font-size:9px;letter-spacing:1px;display:block;margin-bottom:5px}.chips{display:flex;gap:10px;flex-wrap:wrap;padding:7px 0}.chips button{--chip:#307451;--edge:#cee7be;border:4px dashed var(--edge);border-radius:50%;background:radial-gradient(circle at 30% 20%,#ffffff35,transparent 65%),var(--chip);color:white;width:41px;height:41px;padding:0;font-size:9px;font-weight:800;position:relative;box-shadow:0 4px 0 #0004}.chips button:before{content:'';position:absolute;inset:3px;border-radius:50%;border:1px solid #ffffff65}.chips button.selected{outline:2px solid var(--acid);outline-offset:3px}.chips [data-chip="1"]{--chip:#d9d8cd;--edge:#fff4df;color:#24192b}.chips [data-chip="2"]{--chip:#3f8398;--edge:#c6eeed}.chips [data-chip="5"]{--chip:#ae4b52;--edge:#ffd1c5}.chips [data-chip="10"]{--chip:#2a66a4;--edge:#d0e6fb}.chips [data-chip="100"]{--chip:#322b3d;--edge:#e3d0ed}.chips [data-chip="500"]{--chip:#7e4b9e;--edge:#efd3ff}.chips [data-chip="1000"]{--chip:#bb8235;--edge:#ffe0a2}.chips [data-chip="5000"]{--chip:#b4486a;--edge:#ffccdf}.roulette-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:22px;align-items:start}.roulette-wheel-wrap{padding:20px;background:#241a30;border:1px solid var(--line);border-radius:14px;position:relative;text-align:center}.roulette-wheel{position:relative;aspect-ratio:1;margin:15px auto;max-width:320px;isolation:isolate}.wheel-rotor{position:absolute;inset:0;border:6px solid #c2a3d3;border-radius:50%;box-shadow:0 0 0 4px #352241,0 8px 25px #0005}.wheel-rotor svg{width:100%;height:100%}.wheel-center{position:absolute;inset:29%;border-radius:50%;background:radial-gradient(circle,#65407e,#30203e);border:3px solid #bf9cd3;box-shadow:0 0 0 6px #271b33;display:grid;place-items:center}.wheel-center img{width:75%;height:85%;object-fit:contain}.roulette-ball{position:absolute;left:calc(50% - 5px);top:calc(50% - 5px);width:10px;height:10px;background:radial-gradient(circle at 30% 20%,#fff,#ede7d8 50%,#a1a6a8);box-shadow:0 1px 4px #000a,0 0 7px #fff6;border-radius:50%;z-index:2}.wheel-pointer{position:absolute;top:-13px;left:50%;transform:translateX(-50%);font-size:25px;color:var(--acid);z-index:3}.number-result{font-size:35px;font-weight:900}.number-result.red{color:#ff8db3}.number-result.green{color:#b2edba}.wheel-history{display:flex;justify-content:center;gap:5px;flex-wrap:wrap;margin-top:10px}.wheel-history span{font-size:9px;width:23px;height:23px;display:grid;place-items:center;border-radius:5px;background:#140f1d}.wheel-history .red{background:#a64262}.wheel-history .green{background:#397452}.roulette-board-scroll{overflow-x:auto;padding:8px 5px 14px}.roulette-board{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr) 40px;gap:4px;grid-template-rows:repeat(3,43px) 38px 42px;min-width:590px;padding:12px;background:#2d1f3d;border:1px solid #ae8fc454;border-radius:12px;isolation:isolate}.r-numbers{grid-column:2;grid-row:1/4;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:repeat(3,43px);gap:4px}.r-number{padding:0;border:1px solid #d8c0e448;border-radius:4px;background:#160f20;font-size:14px;font-weight:800;position:relative;overflow:visible}.r-number.red{background:#a74162}.r-number.green{background:#327053}.r-zero{grid-column:1;grid-row:1/4;font-size:21px}.r-columns{grid-column:3;grid-row:1/4;display:grid;grid-template-rows:repeat(3,43px);gap:4px}.r-dozens{grid-column:2;grid-row:4;display:grid;grid-template-columns:repeat(3,1fr);gap:4px}.r-outside{grid-column:2;grid-row:5;display:grid;grid-template-columns:repeat(6,1fr);gap:4px}.r-out{padding:4px;font-size:10px;position:relative;overflow:visible}.r-number.winner,.r-out.winner{box-shadow:inset 0 0 0 2px var(--acid);color:var(--acid)}.r-dot{position:absolute;right:-3px;bottom:-5px;min-width:18px;height:18px;border:2px solid #f8f0df;border-radius:50%;background:var(--acid);font-size:7px;color:#251a2e;display:grid;place-items:center;z-index:5;padding:0 2px}.r-hit-layer{position:absolute;inset:0;z-index:3;pointer-events:none}.r-hit{position:absolute;pointer-events:auto;border:0;background:transparent;padding:0;border-radius:50%;width:13px;height:13px;min-width:0;transform:translate(-50%,-50%);box-shadow:none}.r-hit:hover:enabled,.r-hit:focus-visible{background:#d7fc63;box-shadow:0 0 0 3px #d7fc6333;transform:translate(-50%,-50%) scale(1.1)}.r-hit .r-dot{right:0;bottom:0;transform:translate(25%,25%);pointer-events:none}.r-chip-input{width:90px!important}.r-ticket{margin-top:12px;border:1px solid var(--line);border-radius:12px;overflow:hidden}.r-ticket-head{display:flex;justify-content:space-between;padding:12px 16px;background:#281d35;font-size:12px;font-weight:700}.r-ticket-rows{max-height:150px;overflow:auto;padding:0 15px}.r-ticket-row{display:flex;justify-content:space-between;align-items:center;padding:7px 0;border-bottom:1px solid var(--line);font-size:11px;gap:10px}.r-ticket-row small{color:var(--muted);font-size:9px}.r-ticket-row button{padding:2px 6px;font-size:12px}.r-ready{display:flex;gap:7px;flex-wrap:wrap;margin-top:15px}.r-ready button{font-size:11px}.r-table-players{font-size:10px;color:var(--muted);display:grid;gap:4px;margin-top:13px}.slot-machine{background:linear-gradient(145deg,#6a4290,#281c3a);border:3px solid #d3ac63;border-radius:25px;padding:24px;max-width:620px;margin:10px auto;box-shadow:0 0 0 7px #281b36,0 10px 70px #b688e51c;text-align:center}.slot-marquee{font:900 28px 'Arial Black',sans-serif;color:var(--acid);letter-spacing:-1px;text-shadow:0 0 20px #d7fc6333}.slot-sub{font-size:9px;letter-spacing:3px;color:#d9c0ea;margin:6px 0 18px}.reels{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;background:#130d1d;padding:13px;border:2px solid #e2bd70;border-radius:14px}.reel{height:145px;background:linear-gradient(#c9bfa7,#faf2de 35%,#fff7e3 60%,#baaf99);border-radius:8px;display:grid;place-items:center;font-size:65px;box-shadow:inset 0 10px 30px #0003;overflow:hidden;position:relative}.reel>span{display:block}.slot-payouts{display:flex;justify-content:center;gap:18px;flex-wrap:wrap;font-size:11px;margin-top:20px;color:#d7c3e6}.reel.spinning>span{animation:reel-roll .13s linear infinite;filter:blur(1px)}.slot-last{font-size:20px;color:var(--acid);font-weight:800;margin:17px 0 0;min-height:30px}.horse-track{background:linear-gradient(90deg,#20182b,#342242);border:1px solid var(--line);border-radius:15px;padding:15px 45px 15px 15px;overflow:hidden;position:relative}.horse-track:after{content:'';position:absolute;right:25px;top:15px;bottom:15px;width:12px;background:repeating-conic-gradient(#f2e7db 0 25%,#18111f 0 50%) 0/12px 12px}.horse-lane{height:52px;border-bottom:1px dashed #b998cd33;position:relative}.horse-lane:last-child{border:0}.horse-lane>small{position:absolute;left:5px;top:4px;font-size:8px;color:#b5a2c4}.horse-runner{position:absolute;left:0;bottom:2px;font-size:33px;line-height:1;transform:scaleX(-1);filter:drop-shadow(0 3px 0 #0004);z-index:1;transition:none}.horse-options{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}.horse-option{border:1px solid var(--line);border-radius:10px;padding:13px;text-align:left;background:#241b30}.horse-option strong{font-size:12px;display:block}.horse-option small{font-size:9px;color:var(--muted)}.horse-option.selected{border-color:var(--acid);background:#d7fc6308}.horse-option b{color:var(--acid);float:right}.arm-arena{display:grid;grid-template-columns:1fr minmax(180px,360px) 1fr;align-items:center;gap:20px;background:radial-gradient(ellipse at 50% 30%,#55346e,#21162e 70%);border:1px solid var(--line);border-radius:18px;padding:30px 24px;min-height:260px;text-align:center}.arm-person img{height:100px;max-width:100%;object-fit:contain}.arm-person strong{display:block;font-size:15px}.arm-person small{font-size:10px;color:var(--muted)}.arm-table-svg{width:100%;height:160px}.arm-countdown{font-size:35px;font-weight:900;color:var(--acid);margin-top:3px}.arm-meter{height:15px;background:linear-gradient(90deg,#d7fc63 50%,#bc87e8 50%);border-radius:12px;position:relative;margin-top:10px;border:2px solid #f3e7f166}.arm-meter:after{content:'';position:absolute;left:50%;height:20px;width:2px;background:white;top:-5px}.arm-meter span{position:absolute;left:50%;top:-7px;transform:translateX(-50%);font-size:17px;line-height:1;color:white}.tap-button{display:block;width:100%;max-width:500px;margin:20px auto 0;min-height:65px;font-size:19px;touch-action:manipulation;user-select:none}.tap-button kbd{margin-left:15px}.arm-score{font-size:25px;color:var(--acid);font-weight:800;margin-top:8px}.dice-arena{display:flex;gap:50px;justify-content:center;text-align:center;background:radial-gradient(ellipse,#47325c,#22172d);border:1px solid var(--line);border-radius:17px;padding:35px 20px}.dice-arena strong{display:block;font-size:11px;color:var(--muted);margin-bottom:18px;letter-spacing:1px}.dice-set{display:flex;gap:10px}.dice-face{width:80px;height:80px;border-radius:12px;background:#faf1df;color:#352342;font-size:63px;line-height:1;display:grid;place-items:center;box-shadow:0 6px 0 #998cac}.dice-face.rolling{animation:dice-roll .23s linear infinite}.shop-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:25px}.shop-preview{border:1px solid #b58ade55;background:radial-gradient(ellipse,#60407b,#251a31 70%);border-radius:15px;text-align:center;position:sticky;top:0;align-self:start;padding:24px 18px}.shop-preview img{width:130px;height:155px;filter:drop-shadow(0 12px 0 #0003)}.shop-preview strong{display:block;font-size:19px;color:var(--acid);margin:15px 0 4px}.shop-preview small{font-size:10px;color:#d8c6e7}.shop-clear{display:flex;gap:5px;flex-wrap:wrap;margin-top:20px}.shop-clear button{font-size:8px;padding:6px}.shop-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:15px}.shop-tabs button{font-size:11px}.shop-tabs button.active{color:var(--acid);border-color:var(--acid)}.shop-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.shop-item{background:#281c35;border:1px solid var(--line);border-radius:12px;padding:17px;text-align:center;min-width:0}.shop-item.equipped{border-color:var(--acid);background:#d7fc6307}.item-visual{height:80px;display:grid;place-items:center;font-size:46px;margin-bottom:13px}.item-visual .swatch{width:60px;height:70px;border-radius:50% 50% 45% 45%;border:3px solid #f7ecdf;box-shadow:inset -9px -7px 0 #0002,0 5px 0 #0003;position:relative}.item-visual .swatch:after{content:'';position:absolute;left:50%;top:7px;bottom:7px;width:1px;background:#0005}.shop-item h3{font-size:11px;min-height:32px;margin:0 0 10px;line-height:1.4}.shop-item p{font-size:13px;font-weight:800;color:var(--acid);margin:7px 0}.shop-item button{font-size:10px;width:100%;padding:8px 5px}.map-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.map-station{text-align:left;padding:22px;border-radius:14px;background:#2a1c36;border:1px solid var(--line)}.map-station>span{display:block;font-size:35px;color:var(--station-color);margin-bottom:15px}.map-station strong{font-size:14px;display:block}.map-station small{font-size:10px;color:var(--muted);display:block;margin-top:4px}.poker-players{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:20px}.poker-player{padding:16px;border:1px solid var(--line);background:#261b32;border-radius:12px;text-align:center}.poker-player.active{border-color:var(--acid)}.poker-player.folded{opacity:.45}.poker-player>strong{font-size:12px;display:block;margin-bottom:10px}.poker-player .cards{min-height:65px}.poker-player .playing-card{width:45px;height:64px;font-size:16px;padding:5px}.poker-player .playing-card span:last-child{font-size:21px}.poker-player small{color:var(--muted);font-size:9px;display:block;margin-top:8px}.pot{font-size:25px;color:var(--acid);font-weight:800;margin-top:17px}.poker-seat-list{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.poker-seat-list span{font-size:11px;background:#382645;border:1px solid var(--line);border-radius:8px;padding:8px 12px}dialog{border:1px solid #a782c4;border-radius:16px;background:#24182f;color:var(--cream);padding:28px;width:min(510px,calc(100% - 30px));max-height:90dvh;overflow:auto;box-shadow:0 30px 90px #0009}dialog::backdrop{background:#09050edb;backdrop-filter:blur(10px)}dialog h2{font-size:26px;margin:0 0 20px;font-weight:800}dialog p{font-size:12px;color:var(--muted);line-height:1.7}.toggle{display:flex;align-items:center;justify-content:space-between;margin:17px 0;font-size:13px}.toggle input{width:20px;height:20px;accent-color:var(--acid)}dialog .primary{display:block;margin-left:auto}.toast{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);z-index:20;background:#faf1de;color:#24172e;border-radius:11px;box-shadow:0 10px 40px #0006;font-size:12px;padding:13px 22px;max-width:calc(100% - 30px)}.reward{position:fixed;top:35%;left:50%;transform:translate(-50%,-50%);z-index:15;border:1px solid var(--acid);background:#291b38f5;border-radius:18px;box-shadow:0 20px 80px #0009;text-align:center;min-width:230px;padding:18px 30px;pointer-events:none;animation:reward-pop .4s ease-out}.reward img{width:80px;height:90px;margin-top:-50px;object-fit:contain}.reward strong{display:block;font-size:36px;color:var(--acid);font-weight:900}.reward span{display:block;font-size:11px;color:#decee9}.reward.loss{border-color:#ee9ec8}.reward.loss strong{color:#f5a8cb}.no-motion *{animation:none!important;transition:none!important}@keyframes reward-pop{from{scale:.8;opacity:0}to{scale:1;opacity:1}}@keyframes reel-roll{to{transform:translateY(12px)}}@keyframes dice-roll{to{transform:rotate(30deg) scale(.85)}}
@media(max-width:1100px){.hud-header{padding:20px}.left-dock{left:20px;width:200px;padding:13px}.welcome{padding-left:5%;padding-top:130px}.welcome-stamp{right:6%;font-size:22px}.welcome-copy{max-width:450px}.roulette-layout{grid-template-columns:240px minmax(0,1fr);gap:18px}.roulette-board{min-width:580px}.shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.shop-layout{grid-template-columns:200px minmax(0,1fr)}.game-window{width:100%}.movement-help{gap:12px;font-size:8px}.map-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.hud-header{padding:14px;gap:10px}.brand{gap:7px}.brand img{width:35px;height:47px}.brand strong{font-size:17px}.brand small{font-size:5px;letter-spacing:1px}.header-right{gap:7px}.header-right .glass{font-size:9px;padding:7px 9px}.room-tag{display:none!important}.wallet{min-width:0;padding:7px 11px;gap:0 5px}.wallet strong{font-size:21px}.wallet>span{font-size:6px}.wallet small{font-size:7px}.icon-button{font-size:16px;padding:8px}.welcome{padding:120px 22px 50px;background:linear-gradient(90deg,#100b19f7,#100b19df 50%,#100b1990);}.welcome h1{font-size:49px;letter-spacing:-2.5px}.welcome-copy{max-width:480px}.welcome-stamp{display:none}.welcome-copy>p{font-size:13px;max-width:400px}.welcome-facts{font-size:8px;gap:10px}.left-dock{left:12px;top:95px;width:175px;padding:11px;background:#1e1428bc}.dock-label{font-size:7px}.dock-button{padding:8px 6px;gap:8px;margin-bottom:6px}.dock-button strong{font-size:9px}.dock-button small{font-size:7px}.dock-button>span{font-size:19px;width:20px}.peer-list{font-size:8px;max-height:90px}.left-dock .quiet{font-size:9px}.movement-help{display:none}.joystick{display:block}.mobile-interact{display:block}.interaction{bottom:30px;left:50%;gap:10px;padding:11px 13px;min-width:200px;max-width:calc(100% - 165px)}.interaction>kbd{display:none}.interaction strong{font-size:12px}.interaction small{font-size:8px}.interaction button{display:none}.station-label{padding:6px 8px;gap:6px}.station-label .station-icon{font-size:18px}.station-label strong{font-size:9px}.station-label small{font-size:6px}.station-label>b{margin-left:4px;font-size:12px}.avatar-label{font-size:7px}.overlay{padding:9px}.game-window{max-height:calc(100dvh - 18px);border-radius:14px}.game-header{padding:16px;gap:11px}.game-header h2{font-size:23px}.game-header .eyebrow{font-size:7px;letter-spacing:1.4px}.game-wallet strong{font-size:19px}.game-wallet span{font-size:6px}.close-button{font-size:23px;padding:5px 9px}.game-content{padding:17px 15px}.game-intro{gap:10px;flex-wrap:wrap;margin-bottom:15px}.game-intro p{font-size:11px}.tag{font-size:8px}.roulette-layout{grid-template-columns:1fr}.roulette-wheel-wrap{display:grid;grid-template-columns:150px 1fr;align-items:center;gap:0 15px;padding:16px}.roulette-wheel{width:150px;grid-row:1/4;margin:5px 0}.roulette-wheel-wrap .eyebrow{display:none}.roulette-wheel-wrap .wheel-history{grid-column:2}.number-result{font-size:29px}.roulette-wheel-wrap .tiny{grid-column:2}.roulette-board-scroll{padding-top:5px}.roulette-board{min-width:630px}.r-ready{margin-top:12px}.game-toolbar{gap:8px;padding:13px}.game-toolbar .primary{margin-left:0}.game-toolbar input{width:100px}.game-toolbar button{font-size:11px}.chips{gap:10px}.chips button{width:38px;height:38px}.game-actions{gap:7px}.game-actions button{font-size:12px;padding:10px 13px}.card-table{padding:22px 10px;min-height:250px;border-radius:45px 45px 15px 15px}.playing-card{width:50px;height:73px;font-size:17px}.playing-card span:last-child{font-size:23px}.cards{gap:5px;min-height:73px}.bj-hand{padding:10px}.slot-machine{padding:18px 13px;border-radius:18px}.slot-marquee{font-size:24px}.reels{gap:7px;padding:9px}.reel{height:110px;font-size:47px}.slot-payouts{gap:12px;font-size:10px}.horse-options{grid-template-columns:repeat(2,1fr);gap:9px}.horse-option{padding:11px}.horse-option strong{font-size:10px}.horse-option small{font-size:8px}.horse-lane{height:46px}.horse-runner{font-size:29px}.arm-arena{grid-template-columns:65px minmax(0,1fr) 65px;gap:8px;padding:20px 10px;min-height:220px}.arm-person img{height:65px}.arm-person strong{font-size:10px}.arm-person small{font-size:8px}.arm-countdown{font-size:28px}.arm-table-svg{height:125px}.arm-score{font-size:20px}.tap-button{font-size:15px;min-height:60px}.dice-arena{gap:22px;padding:25px 10px}.dice-set{gap:7px}.dice-face{width:55px;height:55px;font-size:43px}.shop-layout{grid-template-columns:1fr;gap:18px}.shop-preview{position:relative;display:flex;align-items:center;justify-content:center;gap:20px;padding:14px}.shop-preview img{width:65px;height:80px}.shop-preview strong{font-size:16px;margin:5px 0}.shop-preview small{font-size:9px}.shop-clear{margin-top:10px}.shop-grid{gap:10px}.shop-item{padding:13px}.shop-item h3{font-size:10px}.item-visual{height:65px;font-size:40px}.map-grid{grid-template-columns:repeat(2,1fr);gap:10px}.map-station{padding:17px}.map-station>span{font-size:29px;margin-bottom:10px}.map-station strong{font-size:12px}.map-station small{font-size:9px}.poker-players{grid-template-columns:repeat(2,1fr);gap:9px}.poker-player{padding:11px}.poker-player .playing-card{width:39px;height:57px;font-size:14px}.poker-player>strong{font-size:10px}.invitation-banner{top:100px;right:12px;max-width:calc(100% - 24px);padding:14px;font-size:11px}.credit{font-size:7px;right:12px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

@media(max-width:480px){.brand strong{font-size:14px}.brand img{width:30px;height:39px}.brand{gap:6px}.brand small{font-size:4px;letter-spacing:.8px}.header-right{gap:5px}.wallet{padding:6px 9px}.left-dock{top:83px;left:12px;width:calc(100% - 24px);display:flex;gap:7px;padding:8px;border-radius:12px}.left-dock .dock-label,.left-dock .peer-list{display:none}.dock-button{margin:0;padding:7px;justify-content:center;flex:1;width:auto}.dock-button>div{display:none}.dock-button>span{font-size:20px}.left-dock .quiet{font-size:8px;padding:7px}.interaction{bottom:155px;min-width:220px;max-width:calc(100% - 40px)}}
