*,:before,:after{box-sizing:border-box;-webkit-user-select:none;user-select:none;margin:0;padding:0}html,body,#root{width:100%;height:100%;overflow:hidden}body{background:#000}canvas{display:block}.error-overlay{-webkit-backdrop-filter:blur(6px);z-index:100;pointer-events:all;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.error-dialog{text-align:center;color:#e0e0e0;background:#2a2a2a;border:4px solid #888;border-radius:12px;width:90%;max-width:400px;padding:32px 40px;font-family:Arial,sans-serif}.error-dialog-code{letter-spacing:.08em;text-transform:uppercase;color:#aaa;margin:0 0 8px;font-size:.75rem}.error-dialog-message{margin:0;font-size:1rem;line-height:1.5}.game-ui{height:calc(72px * var(--ui-scale,1));padding:0 calc(32px * var(--ui-scale,1));z-index:100;color:#fff;pointer-events:auto;-webkit-user-select:none;user-select:none;background:#0009;justify-content:space-between;align-items:center;font-family:Arial,sans-serif;display:flex;position:fixed;bottom:0;left:0;right:0}@media (orientation:portrait){.game-ui{height:calc(120px * var(--ui-scale,1));grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr;align-items:stretch;padding:0;display:grid}.game-ui .ui-stake{min-width:unset;padding:0 calc(32px * var(--ui-scale,1));border-bottom:1px solid #ffffff1a;grid-area:1/1/auto/-1;justify-content:center;align-items:center}.game-ui .ui-win{min-width:unset;padding:0 calc(16px * var(--ui-scale,1));grid-area:2/1;justify-content:center;align-items:flex-start}.game-ui .ui-balance{min-width:unset;padding:0 calc(16px * var(--ui-scale,1));grid-area:2/2;justify-content:center;align-items:flex-end}}.ui-group{min-width:calc(140px * var(--ui-scale,1));flex-direction:column;align-items:center;gap:2px;display:flex}.ui-label{font-size:calc(11px * var(--ui-scale,1));letter-spacing:.12em;text-transform:uppercase;color:#ffffff80;font-weight:600}.ui-value{font-size:calc(22px * var(--ui-scale,1));color:#fff;letter-spacing:.04em;font-weight:700}.ui-stake{align-items:flex-start}.stake-controls{align-items:center;gap:calc(10px * var(--ui-scale,1));display:flex}.stake-btn{width:calc(32px * var(--ui-scale,1));height:calc(32px * var(--ui-scale,1));color:#fff;font-size:calc(20px * var(--ui-scale,1));cursor:pointer;background:0 0;border:2px solid #fff6;border-radius:50%;justify-content:center;align-items:center;line-height:1;transition:border-color .15s,background .15s;display:flex}.stake-btn:hover:not(.stake-btn--disabled){color:#ff1493;background:#ff149326;border-color:#ff1493}.stake-btn--disabled{opacity:.3;cursor:default}.stake-btn:active{background:#ff14934d}.ui-win{align-items:center}.ui-balance{align-items:flex-end}.spin-btn{bottom:calc(140px * var(--ui-scale,1));width:calc(100px * var(--ui-scale,1));height:calc(100px * var(--ui-scale,1));color:#fff;cursor:pointer;z-index:101;background:radial-gradient(circle at 40% 35%,#ffffff1f,#140a1eeb);border:3px solid #ffffffe6;border-radius:50%;justify-content:center;align-items:center;transition:box-shadow .15s,border-color .15s,transform .2s,opacity .2s;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 0 18px #ffffff40,inset 0 0 10px #ffffff14}.spin-btn img{width:calc(80px * var(--ui-scale,1));height:calc(80px * var(--ui-scale,1));filter:drop-shadow(0 0 4px #fff9)}.spin-btn:hover{border-color:#fff;transform:translate(-50%)scale(1.06);box-shadow:0 0 28px #ffffff73,inset 0 0 14px #ffffff26}.spin-btn:active{transform:translate(-50%)scale(.95);box-shadow:0 0 12px #ff149380,inset 0 0 8px #ff149333}.spin-btn--hidden{opacity:0;pointer-events:none;transform:translate(-50%)scale(.85)}@media (orientation:portrait){.spin-btn{width:calc(160px * var(--ui-scale,1));height:calc(160px * var(--ui-scale,1))}.spin-btn img{width:calc(72px * var(--ui-scale,1));height:calc(72px * var(--ui-scale,1))}.stake-btn{width:calc(48px * var(--ui-scale,1));height:calc(48px * var(--ui-scale,1));font-size:calc(30px * var(--ui-scale,1))}.stake-controls{gap:calc(16px * var(--ui-scale,1))}.ui-stake .ui-value{font-size:calc(33px * var(--ui-scale,1))}}@media (orientation:landscape){.spin-btn{bottom:auto;left:auto;right:calc(30px * var(--ui-scale,1));top:50%;transform:translateY(-50%)}.spin-btn:hover{transform:translateY(-50%)scale(1.06)}.spin-btn:active{transform:translateY(-50%)scale(.95)}.spin-btn--hidden{transform:translateY(-50%)scale(.85)}}
