@font-face{font-family:Fredoka;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fredoka-latin-400-normal-17JuUzdy.woff2)format("woff2"),url(/assets/fredoka-latin-400-normal-DbXSrOeS.woff)format("woff")}@font-face{font-family:Fredoka;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fredoka-latin-500-normal-B0JifZgm.woff2)format("woff2"),url(/assets/fredoka-latin-500-normal-BL692wg7.woff)format("woff")}@font-face{font-family:Fredoka;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fredoka-latin-600-normal-C4zohCW5.woff2)format("woff2"),url(/assets/fredoka-latin-600-normal-CcrEjrB4.woff)format("woff")}@font-face{font-family:Fredoka;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fredoka-latin-700-normal-BOIZVyIN.woff2)format("woff2"),url(/assets/fredoka-latin-700-normal-C8FeHd3X.woff)format("woff")}@font-face{font-family:Lilita One;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/lilita-one-latin-400-normal-87r-Z-Re.woff2)format("woff2"),url(/assets/lilita-one-latin-400-normal-DXkechA3.woff)format("woff")}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}button,input{font-family:inherit}body{margin:0}#root{min-height:100svh}.app{color:#e8f6ff;background:#021b2e;flex-direction:column;align-items:center;min-height:100vh;padding:72px 16px 64px;font-family:Fredoka,Segoe UI,system-ui,sans-serif;display:flex}.app__header{z-index:1;align-self:flex-start;margin-bottom:16px;position:relative}.topbar{z-index:10;pointer-events:none;align-items:center;gap:12px;height:44px;display:flex;position:fixed;top:16px;left:16px;right:16px}.topbar__round{white-space:nowrap;color:#fff;text-shadow:0 1px 3px #021b2eb3,0 0 8px #021b2e73;flex:none;font-size:1.15rem;font-weight:700}.audio-controls{pointer-events:auto;flex:none;align-items:center;gap:8px;margin-left:auto;display:flex}.audio-toggle{cursor:pointer;background:#021b2eb3;border:1px solid #ffffff40;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.4rem;line-height:1;transition:opacity .2s,background .2s,border-color .2s;display:flex;position:relative}.audio-toggle--on{background:#ffc40033;border-color:#ffd84d}.audio-toggle--off,.audio-toggle--closed{opacity:.55}.audio-toggle--off:after{content:"";background:#e8f6ff;width:26px;height:2px;position:absolute;transform:rotate(-45deg)}.scene{--world-w:calc(max(100cqw, 100cqh * 1671 / 941) * 1.05);--world-h:calc(var(--world-w) * 941 / 1671);--u:calc(var(--world-w) / 100);--water-top:calc(100cqh - var(--world-h) * .475);--px:0;--py:0;z-index:0;pointer-events:none;background:#1a74e8;position:fixed;inset:0;overflow:hidden;container-type:size}.scene__world{left:50%;bottom:calc(var(--world-h) * -.025);width:var(--world-w);height:var(--world-h);position:absolute;translate:-50%}.scene__base,.scene__img{-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.scene__base{position:absolute;inset:0}.scene__layer{transform:translate3d(calc(var(--px) * var(--depth) * var(--u) * .5), calc(var(--py) * var(--depth-y,var(--depth)) * var(--u) * .25), 0);transition:transform .7s cubic-bezier(.2,.7,.2,1);position:absolute}.scene__img--surface{animation:9s ease-in-out infinite alternate scene-swell}.scene__img--scenery{animation:11s ease-in-out infinite alternate scene-sway}@keyframes scene-swell{0%{transform:translate3d(calc(var(--u) * -.35), 0, 0)}to{transform:translate3d(calc(var(--u) * .35), 0, 0)}}@keyframes scene-sway{0%{transform:translate3d(calc(var(--u) * -.12), 0, 0)}to{transform:translate3d(calc(var(--u) * .12), calc(var(--u) * -.05), 0)}}.scene__img--sun{transform-origin:62.5% 15.5%;animation:6s ease-in-out infinite alternate scene-sun}@keyframes scene-sun{0%{opacity:.8;transform:scale(1)}to{opacity:1;transform:scale(1.04)}}.scene__sun-glow{width:calc(var(--u) * 26);aspect-ratio:1;background:radial-gradient(circle closest-side,#fff8d2f2 0%,#ffe26ebf 18%,#ffcd4666 28%,#ffc85024 46%,#ffc85000 72%);border-radius:50%;animation:6s ease-in-out infinite alternate scene-sun-glow;position:absolute;top:15.5%;left:62.5%;translate:-50% -50%}.scene__sun-glow:before,.scene__sun-glow:after{content:"";border-radius:50%;position:absolute;inset:0}.scene__sun-glow:before{background:repeating-conic-gradient(#ffec9600 0deg,#ffec96e6 1.6deg,#ffec9600 3.2deg 15deg);animation:90s linear infinite scene-sun-rays;-webkit-mask:radial-gradient(circle closest-side,#000 14%,#0000 80%);mask:radial-gradient(circle closest-side,#000 14%,#0000 80%)}.scene__sun-glow:after{background:repeating-conic-gradient(from 7deg,#fff8cd00 0deg,#fff8cdcc 1deg,#fff8cd00 2deg 22.5deg);animation:60s linear infinite reverse scene-sun-rays;-webkit-mask:radial-gradient(circle closest-side,#000 14%,#0000 52%);mask:radial-gradient(circle closest-side,#000 14%,#0000 52%)}@keyframes scene-sun-glow{0%{opacity:.8;transform:scale(.95)}to{opacity:1;transform:scale(1.05)}}@keyframes scene-sun-rays{to{transform:rotate(360deg)}}.scene__clouds{animation:260s linear infinite scene-clouds;position:absolute;inset:0}.scene__cloud-strip{-webkit-user-select:none;user-select:none;display:block;position:absolute}@keyframes scene-clouds{to{transform:translate(-100%)}}.scene__bubbles{--rise:calc(100cqh - var(--water-top));left:0;right:0;top:var(--water-top);position:absolute;bottom:0;overflow:hidden}.scene__bubble{background:radial-gradient(circle at 30% 30%,#ffffffbf,#beebff1f 45%,#beebff0a);border:1px solid #dcf5ff73;border-radius:50%;animation:linear infinite scene-bubble-rise;position:absolute;bottom:-40px}@keyframes scene-bubble-rise{0%{opacity:0;transform:translate(0)}8%{opacity:.85}50%{transform:translate(var(--bubble-drift), calc(var(--rise) * -.5))}92%{opacity:.7}to{transform:translate(calc(var(--bubble-drift) * -.6), calc(var(--rise) * -1));opacity:0}}.scene__fish{inset:0}.scene__vignette{background:linear-gradient(#010b1400 60%,#010b1466 100%);position:absolute;inset:0}@media (prefers-reduced-motion:reduce){.scene__layer{transition:none}.scene__img,.scene__sun-glow,.scene__sun-glow:before,.scene__sun-glow:after,.scene__clouds,.scene__bubble{animation:none}}.app__balance,.stage__countdown,.stage__multiplier,.bet-panel__place,.bet-panel__cashout,.bet-panel__cancel{font-family:Lilita One,Fredoka,system-ui,sans-serif;font-weight:400}.app__logo{margin:0;line-height:0}.app__logo img{-webkit-user-select:none;user-select:none;width:auto;max-width:100%;height:clamp(72px,14vh,120px);display:block}.stage__countdown{-webkit-text-stroke:8px #000;paint-order:stroke fill;stroke-linejoin:round}.app__status{text-overflow:ellipsis;white-space:nowrap;color:#fff;text-shadow:0 1px 3px #021b2eb3,0 0 8px #021b2e73;min-width:0;max-width:190px;padding:0 4px;font-size:1rem;font-weight:600;overflow:hidden}@media (width<=600px){.topbar__round{font-size:.9rem}.app__status{max-width:108px;font-size:.78rem}.app__status--player{display:none}.app__balance{padding:4px 10px;font-size:1rem}}.app__balance{color:#ffd84d;background:linear-gradient(#ffc4002e,#ffc4002e),#021b2ebf;border:1px solid #ffd84d;border-radius:999px;flex:none;padding:5px 14px;font-size:1.15rem;font-weight:800;line-height:1.2}.app__balance--blink{animation:.8s ease-out balance-blink}@keyframes balance-blink{0%{color:#ffd84d;text-shadow:none;transform:scale(1)}25%{color:#fff6d8;text-shadow:0 0 14px #ffd84de6;transform:scale(1.16)}to{color:#ffd84d;text-shadow:none;transform:scale(1)}}.app__main{z-index:1;flex-direction:column;gap:clamp(20px,5vh,56px);width:100%;max-width:560px;display:flex;position:relative}.stage{text-align:center;padding:72px 16px 32px;position:relative}.fishing-lines{pointer-events:none;z-index:2;height:76px;display:flex;position:absolute;top:0;left:0;right:0}.fishing-line{flex-direction:column;flex:1 1 0;align-items:center;display:flex}.fishing-line:not(.fishing-line--empty){animation:.45s cubic-bezier(.34,1.56,.64,1) both fishing-line-drop}@keyframes fishing-line-drop{0%{opacity:0;transform:translateY(-56px)}60%{opacity:1}to{opacity:1;transform:translateY(0)}}.fishing-line__string{transform-origin:top;background:linear-gradient(#e8f6ffb3,#e8f6ff33);width:2px;height:52px;position:relative}.fishing-line__string:before{content:"";background:#e8f6ffb3;width:100%;height:100vh;position:absolute;bottom:100%;left:0}.fishing-line__hook{font-size:1.3rem;line-height:1;position:relative;transform:translateY(-6px)}.fishing-line__hook-icon{z-index:1;filter:drop-shadow(0 1px 2px #0006);display:inline-block;position:relative}.fishing-line__fish{z-index:3;font-size:4.6rem;position:absolute;top:50%;left:50%;transform:translate(-50%)rotate(90deg)}.fishing-line__fish .creature-img{filter:saturate(1.4)contrast(1.15)brightness(1.06)drop-shadow(0 0 1.5px #000)drop-shadow(0 0 1.5px #000)drop-shadow(0 0 12px #fff6)}.creature-shiny{display:block;position:relative}.creature-shiny:after{content:"";pointer-events:none;-webkit-mask:var(--sprite) center / contain no-repeat;-webkit-mask:var(--sprite) center / contain no-repeat;mask:var(--sprite) center / contain no-repeat;background:linear-gradient(110deg,#0000 38%,#ffffffe6 50%,#0000 62%) 150% 0/250% 100% no-repeat,radial-gradient(at 35% 22%,#fff6,#0000 55%);animation:2.2s ease-in-out infinite fish-sheen;position:absolute;inset:0}@keyframes fish-sheen{0%{background-position:150% 0,0 0}60%,to{background-position:-50% 0,0 0}}.fishing-line__worm{z-index:2;font-size:.9rem;position:absolute;top:100%;left:50%;transform:translate(-50%,-50%)rotate(12deg)}.fishing-line--bite .fishing-line__hook{animation:.35s ease-in-out infinite fishing-bite-wiggle}.fishing-line--bite .fishing-line__string{animation:.35s ease-in-out infinite fishing-line-tug}.fishing-line--hooked .fishing-line__hook{animation:.35s ease-in-out infinite fishing-bite-wiggle}.fishing-line--hooked .fishing-line__string{animation:.35s ease-in-out infinite fishing-line-tug}.fishing-line--caught .fishing-line__hook-icon{opacity:.85}.fishing-line--caught .fishing-line__hook{animation:.7s ease-in forwards fishing-line-reel-up}.fishing-line--caught .fishing-line__string{animation:.7s ease-in forwards fishing-line-reel-string}@keyframes fishing-line-reel-up{0%{opacity:1;transform:translateY(-6px)scale(1)}55%{opacity:1;transform:translateY(-42px)scale(1.1)}to{opacity:0;transform:translateY(-64px)scale(.85)}}@keyframes fishing-line-reel-string{0%{opacity:1;transform:scaleY(1)}to{opacity:0;transform:scaleY(.3)}}.fishing-line--lost .fishing-line__string{background:linear-gradient(#e2574cb3,#e2574c00);height:68px}.fishing-line--lost .fishing-line__hook-icon{opacity:.35}.fishing-line__fish--escaping{animation:1.1s linear forwards fishing-fish-escape-left}.fishing-line:nth-child(2n) .fishing-line__fish--escaping{animation-name:fishing-fish-escape-right}@keyframes fishing-fish-escape-right{0%{opacity:1;transform:translate(-50%)rotate(90deg)scale(1)}18%{opacity:1;transform:translate(-50%,8px)rotate(6deg)scaleX(-1)}to{opacity:0;transform:translate(100vw,40px)rotate(6deg)scale(-.6,.6)}}@keyframes fishing-fish-escape-left{0%{opacity:1;transform:translate(-50%)rotate(90deg)scale(1)}18%{opacity:1;transform:translate(-50%,8px)rotate(-6deg)scale(1)}to{opacity:0;transform:translate(-100vw,40px)rotate(-6deg)scale(.6)}}@keyframes fishing-bite-wiggle{0%,to{transform:translateY(-6px)rotate(-10deg)}50%{transform:translateY(2px)rotate(10deg)}}@keyframes fishing-line-tug{0%,to{transform:scaleY(1)}50%{transform:scaleY(1.06)}}.stage__bg-fish{filter:drop-shadow(0 0 4px #00000059);animation-timing-function:ease-in-out;animation-iteration-count:infinite;position:absolute}.stage__bg-fish--right{animation-name:stage-fish-swim-right;left:-10%}.stage__bg-fish--left{animation-name:stage-fish-swim-left;right:-10%}@keyframes stage-fish-swim-right{0%{left:-10%;transform:translateY(0)scaleX(-1)}50%{transform:translateY(-10px)scaleX(-1)}to{left:110%;transform:translateY(0)scaleX(-1)}}@keyframes stage-fish-swim-left{0%{right:-10%;transform:translateY(0)scaleX(1)}50%{transform:translateY(10px)scaleX(1)}to{right:110%;transform:translateY(0)scaleX(1)}}.stage__readout{flex-direction:column;justify-content:center;align-items:center;min-height:clamp(130px,22vh,240px);display:flex}.stage__countdown{margin-top:8px;font-size:3.4rem;font-weight:700;line-height:1}.stage__multiplier{--m-top:#f0ffb8;--m-mid:#46ff8f;--m-bottom:#00b35a;--m-stroke:#03401d;--m-glow:#46ff968c;filter:drop-shadow(0 0 14px var(--m-glow));margin-top:8px;font-size:3.4rem;line-height:1;display:inline-block;position:relative}.stage__multiplier--crashed{--m-top:#ffc2b8;--m-mid:#ff4a3c;--m-bottom:#c20d1f;--m-stroke:#590610;--m-glow:#ff463c80}.stage__multiplier:before{content:attr(data-text);-webkit-text-stroke:10px var(--m-stroke);-webkit-text-fill-color:var(--m-stroke);paint-order:stroke fill;stroke-linejoin:round;position:absolute;top:0;left:0}.stage__multiplier-fill{background:linear-gradient(180deg, var(--m-top) 0%, var(--m-mid) 52%, var(--m-bottom) 100%);-webkit-text-fill-color:transparent;color:#0000;-webkit-background-clip:text;background-clip:text;position:relative}.stage__hint{opacity:.75;margin-top:4px}.stage__hint--crashed{color:#e2574c}.history{pointer-events:none;flex-wrap:nowrap;flex:1 1 0;align-items:center;gap:6px;min-width:0;height:44px;display:flex;overflow:hidden}.history-chip{border-radius:999px;flex:none;padding:4px 10px;font-size:.8rem;font-weight:600}.history-chip--low{color:#ff9c92;background:linear-gradient(#e2574c33,#e2574c33),#021b2ebf}.history-chip--mid{color:#6fe7c0;background:linear-gradient(#38d39f26,#38d39f26),#021b2ebf}.history-chip--high{color:#ffd84d;background:linear-gradient(#ffc40033,#ffc40033),#021b2ebf}.bet-panel{flex-direction:column;gap:12px;display:flex}.bet-panel__row{flex-wrap:wrap;gap:12px;display:flex}.bet-slot{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#021b2eb8;border:1px solid #ffffff1a;border-radius:16px;flex-direction:column;flex:200px;gap:12px;min-width:0;padding:16px;display:flex}.bet-amount{grid-template-columns:auto auto minmax(72px,1fr) auto auto;gap:4px;display:grid}.bet-amount__btn{color:#e8f6ff;cursor:pointer;background:#ffffff1a;border:1px solid #ffffff2e;border-radius:10px;min-height:44px;padding:0 6px;font-size:.95rem;font-weight:600;transition:opacity .2s,background .2s}.bet-amount__btn:hover:not(:disabled){background:#fff3}.bet-amount__btn--step{width:34px;padding:0;font-size:1.4rem;line-height:1}.bet-amount__btn:disabled{opacity:.35;cursor:not-allowed}.bet-amount__value{background:#0000004d;border:1px solid #ffffff26;border-radius:10px;justify-content:center;align-items:center;min-width:0;font-family:Lilita One,Fredoka,system-ui,sans-serif;font-size:1.3rem;display:flex}.bet-panel__place,.bet-panel__cashout,.bet-panel__cancel{--face-top:#8ff5a4;--face-mid:#2ecc71;--face-bottom:#1fa95a;--frame:#0f6a37;--edge:#0b4f29;--ink:#05341a;--lip:6px;min-height:64px;margin-bottom:var(--lip);border:3px solid var(--frame);background:linear-gradient(180deg, var(--face-top) 0%, var(--face-mid) 50%, var(--face-bottom) 100%);color:var(--ink);letter-spacing:.03em;text-shadow:0 1px #ffffff73;cursor:pointer;box-shadow:inset 0 3px 0 #fff9, inset 0 -4px 0 #00000024, 0 var(--lip) 0 var(--edge), 0 calc(var(--lip) + 4px) 10px #0006;-webkit-tap-highlight-color:transparent;touch-action:manipulation;border-radius:16px;padding:10px 14px;font-size:1.7rem;transition:transform 80ms,box-shadow 80ms,filter .15s;position:relative}.bet-panel__place:hover:not(:disabled),.bet-panel__cashout:hover:not(:disabled),.bet-panel__cancel:hover:not(:disabled){filter:brightness(1.08)}.bet-panel__place:active:not(:disabled),.bet-panel__cashout:active:not(:disabled),.bet-panel__cancel:active:not(:disabled){transform:translateY(calc(var(--lip) - 2px));box-shadow:inset 0 3px 0 #ffffff73, inset 0 -2px 0 #00000024, 0 2px 0 var(--edge), 0 4px 6px #0006}.bet-panel__cashout{--face-top:#fff0a6;--face-mid:#ffc928;--face-bottom:#f0a000;--frame:#8a5600;--edge:#6e4300;--ink:#4a2c00;justify-content:space-between;align-items:center;gap:12px;padding-left:22px;padding-right:22px;display:flex}.bet-panel__cashout-amount{white-space:nowrap;font-variant-numeric:tabular-nums}.bet-panel__cancel{--face-top:#ff9d93;--face-mid:#e2574c;--face-bottom:#c0392f;--frame:#7a1f18;--edge:#5f1812;--ink:#fff;text-shadow:0 2px #5a0f0a8c}.bet-panel__place:disabled,.bet-panel__cancel:disabled{filter:grayscale(.7)brightness(.8);opacity:.6;cursor:not-allowed}.bet-panel__status{background:#ffffff0f;border-radius:8px;padding:8px 10px;font-size:.85rem}.bet-panel__status--won{color:#6fe7c0}.bet-panel__status--lost{color:#ff9c92}.bet-panel__error{color:#ff9c92;font-size:.85rem}.bets-log{z-index:9;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);visibility:hidden;background:#021b2ec7;border:1px solid #ffffff1f;border-radius:16px;flex-direction:column;gap:8px;width:min(280px,100vw - 32px);max-height:calc(100vh - 88px);padding:14px;transition:transform .25s,visibility 0s linear .25s;display:flex;position:fixed;top:72px;right:16px;transform:translate(calc(100% + 24px))}.bets-log--open{visibility:visible;transition:transform .25s,visibility;transform:translate(0)}.bets-log__title{margin:0;font-family:Lilita One,Fredoka,system-ui,sans-serif;font-size:1.3rem;font-weight:400}.bets-log__empty{opacity:.6;margin:0;font-size:.85rem}.bets-log__list{flex-direction:column;gap:4px;min-height:0;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.bets-log__item{background:#ffffff0f;border-radius:8px;justify-content:space-between;align-items:baseline;gap:8px;padding:6px 8px;font-size:.85rem;display:flex}.bets-log__player{text-overflow:ellipsis;white-space:nowrap;color:#fff;min-width:0;font-size:.75rem;overflow:hidden}.bets-log__result{white-space:nowrap;flex:none}.bets-log__result--low{color:#d3d3d3}.bets-log__result--mid{color:#6fe7c0}.bets-log__result--high{color:#ffd84d}.fairness{opacity:.8;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#021b2eb8;border-radius:12px;padding:8px 12px;font-size:.8rem}.fairness summary{cursor:pointer}.fairness__row{flex-direction:column;gap:2px;margin-top:8px;display:flex}.fairness__row code{word-break:break-all;opacity:.7;font-size:.7rem}.creature-img{pointer-events:none;width:1.4em;height:auto;display:block}
