:root{--app-font: "Segoe UI", system-ui, -apple-system, "Roboto", "Helvetica Neue", sans-serif;--app-bg-deep: #031820;--app-bg-mid: #052a3a;--app-bg-shallow: #0a3d52;--app-text: #e8fbff;--app-text-muted: rgba(232, 251, 255, .78);--app-accent: #6ee7ff;--app-accent-dim: rgba(110, 231, 255, .14);--app-nav-bg: #0b0c0e;--app-nav-border: rgba(255, 255, 255, .08);--app-nav-inactive: #ffffff;--app-nav-accent: #6de7ff;--app-nav-accent-dim: rgba(109, 231, 255, .35);--app-nav-accent-glow: rgba(161, 246, 255, .42);--app-surface: rgba(3, 26, 40, .72);--app-surface-elevated: rgba(6, 38, 56, .82);--app-border: rgba(120, 210, 255, .2);--app-border-strong: rgba(150, 230, 255, .32);--app-block-bg: rgba(6, 32, 48, .92);--app-block-border: rgba(100, 200, 255, .16);--app-block-shadow: 0 2px 18px rgba(0, 8, 20, .42);--app-row-divider: rgba(120, 190, 220, .12);--app-overlay-scrim: rgba(0, 6, 18, .75);--app-modal-bg: linear-gradient(165deg, rgba(12, 40, 58, .98) 0%, rgba(6, 26, 40, .99) 100%);--app-modal-border: rgba(110, 210, 255, .2);--app-modal-shadow: 0 14px 44px rgba(0, 4, 14, .55);--app-radius-sm: 10px;--app-radius-md: 14px;--app-radius-lg: 20px;--app-shadow-soft: 0 4px 24px rgba(0, 8, 24, .35);--app-shadow-nav: 0 -10px 40px rgba(0, 6, 18, .5);--app-blur: 12px;--app-nav-h: 96px;font-family:var(--app-font);color:var(--app-text);scroll-padding-bottom:calc(var(--app-nav-h) + env(safe-area-inset-bottom,0px))}*{box-sizing:border-box}html{height:100%;background:var(--app-bg-deep, #031820)}body{margin:0;min-width:320px;max-width:100vw;min-height:100%;min-height:-webkit-fill-available;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;background:var(--app-bg-deep, #031820)}#root{min-height:100%;min-height:100dvh;min-height:-webkit-fill-available}.app-shell{width:100%;height:100%;min-height:100vh;min-height:100dvh;min-height:-webkit-fill-available;padding:env(safe-area-inset-top,0) env(safe-area-inset-right,0) 0 env(safe-area-inset-left,0);display:flex;justify-content:center;overflow-y:auto;-webkit-overflow-scrolling:touch}.app{width:100%;max-width:none;display:flex;flex-direction:column;gap:12px;min-height:100vh;min-height:100dvh;min-height:-webkit-fill-available;padding-bottom:calc(var(--app-nav-h, 96px) + 32px + env(safe-area-inset-bottom,0px))}.app>main{flex:1;display:flex;flex-direction:column}.home-screen{position:relative;display:flex;flex-direction:column;gap:0;padding:6px 8px 0;overflow:visible;border-radius:0}.home-screen__bg,.tab-screen__bg{position:absolute;inset:0;z-index:0;border-radius:0;pointer-events:none;overflow:hidden;background-color:var(--app-bg-deep, #031820);background-image:linear-gradient(180deg,var(--app-bg-shallow, #0a3d52) 0%,var(--app-bg-mid, #052a3a) 28%,var(--app-bg-deep, #031820) 58%,#010c10 100%);background-repeat:no-repeat;opacity:1}.home-screen>.home-screen__bg,.tab-screen>.tab-screen__bg{background-image:radial-gradient(ellipse 130% 55% at 50% -15%,rgba(90,220,255,.14),transparent 55%),linear-gradient(180deg,#042a3efa,#031c2afc 38%,#02101a 72%,#01080e);background-size:cover,cover;background-position:center top,center;background-repeat:no-repeat}.tab-screen{position:relative;display:flex;flex-direction:column;flex:1;min-height:0;padding:6px 8px 0;z-index:0;overflow:hidden;border-radius:0}@media(min-width:600px){.home-screen,.tab-screen{padding-top:8px;padding-left:max(16px,env(safe-area-inset-left,0));padding-right:max(16px,env(safe-area-inset-right,0))}}.tab-panel{position:relative;z-index:1;border:none;border-radius:0;overflow:visible;background:transparent!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.tab-screen .counters.tab-panel,.tab-screen .screen-head{text-shadow:0 1px 4px rgba(0,8,20,.85),0 0 18px rgba(0,20,40,.45)}.tab-screen h2,.tab-screen h3{color:#fff;font-weight:700}.tab-screen .craft-note,.tab-screen .caption{color:#fffffff7;font-weight:600;opacity:1}.tab-screen p{color:#fffffff2;font-weight:600}.tab-screen .craft-note code,.tab-screen code{color:#f0fcff;font-weight:600}.tab-screen .nft-summary{color:#fff;font-weight:500;text-shadow:0 1px 3px rgba(0,8,20,.8);background:#08243480;border:none;border-radius:var(--app-radius-sm);padding:8px 10px}.tab-screen .craft-block{gap:8px;padding:14px 14px 16px;margin:0 0 8px;background:var(--app-block-bg);border:none;border-radius:var(--app-radius-md);box-shadow:var(--app-block-shadow)}.tab-screen .craft-block h3{font-size:13px;letter-spacing:.03em;color:var(--app-accent);text-shadow:none}.tab-screen .craft-block .nft-row{color:#fff;font-weight:500;text-shadow:0 1px 3px rgba(0,8,20,.8);background:transparent;border-radius:0;border-bottom:1px solid var(--app-row-divider);padding:10px 4px}.tab-screen .craft-block .nft-row:last-child{border-bottom:none}.tab-screen .nft-row-right{opacity:.92;color:#fffffff2;font-weight:600}.tab-screen .nft-chip{font-weight:600}.tab-screen .layer-card{color:#fff;font-weight:500}.tab-screen .aquarium-stats{color:#fff;font-weight:600;text-shadow:0 1px 3px rgba(0,8,20,.75)}.tab-screen .craft-btn,.tab-screen .nft-pill{color:#fff;font-weight:600}.tab-screen .nft-empty{color:#ffffffeb;font-weight:600}.home-screen__layer{position:relative;z-index:1}.home-screen__sheet{display:flex;flex-direction:column;gap:0;border:none;border-radius:0;overflow:visible;background:transparent!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.home-screen__sheet-head{border-bottom:none;background:transparent;position:relative;z-index:2;overflow:visible}.home-screen__sheet-drum.wheel-card{border-radius:0;border-left:none;border-right:none;margin:0}.home-screen__sheet-block,.home-screen__sheet-block--history{border-top:none}.wheel-card.wheel-card--drum{background:transparent!important;border:none!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.wheel-card.wheel-card--drum:before,.wheel-card.wheel-card--drum:after{display:none!important}.home-screen .top-panel,.home-screen .counters,.home-screen .decor-status,.home-screen .decor-status--blocked,.home-screen .decor-status--available,.home-screen .auto-spin-hint,.home-screen .mode-row,.home-screen .legend-row{text-shadow:0 1px 4px rgba(0,8,20,.85),0 0 18px rgba(0,20,40,.45)}.home-screen .counter-item,.home-screen .nft-row{background:transparent;border:none}.glass{border:none;border-radius:var(--app-radius-md, 16px);background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.top-panel{display:grid;grid-template-columns:1.1fr 1.4fr;gap:10px;padding:4px 2px 8px;overflow:visible}.wallet-box{display:flex;gap:8px;align-items:flex-end;flex-wrap:wrap;padding:6px 8px 8px;overflow:visible;border:none;border-radius:0;background:transparent;box-shadow:none}.jackpot-box{text-align:right;padding:4px 2px 8px;border:none;border-radius:0;background:transparent;box-shadow:none}.wallet-icon{width:min(60px,15vw);height:min(60px,15vw);display:block;flex-shrink:0;color:#7ce9ff;filter:drop-shadow(0 1px 4px rgba(0,8,20,.55));pointer-events:none}@media(max-width:420px){.wallet-icon{width:min(54px,16vw);height:min(54px,16vw)}}@media(max-width:360px){.wallet-icon{width:min(48px,17vw);height:min(48px,17vw)}.wallet-box{padding-bottom:6px}}.ton-connect-btn{border:1px solid rgba(161,241,255,.55);border-radius:8px;padding:6px 10px;font-size:11px;font-weight:600;color:#a8f4ff;background:#6de7ff1a;cursor:pointer;transition:color .2s ease,opacity .2s ease,border-color .2s ease,background .2s ease}.ton-connect-btn:hover{color:#d4fbff;opacity:.98;border-color:#c8faffbf;background:#6de7ff29}.modal-overlay{position:fixed;inset:0;background:var(--app-overlay-scrim, rgba(0, 6, 18, .75));display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;pointer-events:none}.modal-content{animation:modalSlideIn .3s ease-out;pointer-events:auto}.app-modal-panel{background:var(--app-modal-bg);border:none;border-radius:var(--app-radius-lg);box-shadow:var(--app-modal-shadow);padding:22px 24px;width:100%;max-width:min(440px,calc(100vw - 32px));margin:0 auto;box-sizing:border-box;color:var(--app-text)}.app-modal-panel--sm{max-width:min(380px,calc(100vw - 32px))}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.ton-connect-btn:active{transform:scale(.98)}.caption{margin:0;font-size:11px;opacity:.8}.user-caption{margin-top:4px;text-align:right}.value{margin:0;font-weight:700;font-size:14px}.jackpot-title{margin:0;font-size:14px;font-weight:800;color:#ffe382;display:flex;align-items:center;gap:6px;justify-content:flex-end;flex-wrap:wrap}.jackpot-fishes-inline{display:inline-flex;align-items:center;gap:4px}.jackpot-sub{margin:4px 0 0;font-size:11px;opacity:.85;text-align:right}.jackpot-label{display:block;width:100%;text-align:center;margin-top:4px;font-size:11px;opacity:.85}.jackpot-fishes-inline .symbol-badge{flex-shrink:0}.jackpot-marquee{position:fixed;top:0;left:0;right:0;background:linear-gradient(90deg,#ff6b6b,#feca57,#ff6b6b);color:#fff;font-size:16px;font-weight:700;padding:12px 0;text-align:center;z-index:10000;box-shadow:0 4px 20px #ff6b6b80;animation:marqueeGlow 2s ease-in-out infinite;overflow:hidden;white-space:nowrap}.jackpot-marquee:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:marqueeShine 3s linear infinite}@keyframes marqueeGlow{0%,to{box-shadow:0 4px 20px #ff6b6b80}50%{box-shadow:0 4px 40px #ffca57cc}}@keyframes marqueeShine{0%{left:-100%}to{left:100%}}.wheel-card{--reel-total: calc(200px + 200px / 3);--reel-col: calc(var(--reel-total) / 3);--reel-step: calc(var(--reel-total) / 3);position:relative;overflow:hidden;padding:10px;display:grid;gap:8px;border-radius:18px;isolation:isolate}.home-screen__sheet-drum.wheel-card{padding:8px;gap:6px}.confetti-layer{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:9999}.confetti-layer.confetti-fixed{position:fixed;inset:0;z-index:999;pointer-events:none}.confetti-particle{position:absolute;left:var(--x);top:var(--y);width:var(--w);height:var(--h);background:linear-gradient(135deg,var(--c),var(--c2, var(--c)));border-radius:var(--r);transform:translate(-50%,-50%) rotate(var(--rot)) rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg)) scale(.25);opacity:0;animation:confettiFall var(--t, 2.5s) cubic-bezier(.25,.46,.45,.94) forwards;animation-delay:var(--d);filter:drop-shadow(0 3px 2px rgba(0,10,24,.25))}.confetti-particle:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#fff0,#ffffff59,#fff0);opacity:.65;pointer-events:none}.confetti-particle--salute{mix-blend-mode:screen;filter:drop-shadow(0 0 4px rgba(255,240,200,.95)) drop-shadow(0 0 2px rgba(120,220,255,.8))}.confetti-particle--salute:after{opacity:.45;background:linear-gradient(0deg,transparent,rgba(255,255,255,.5),transparent)}.confetti-shape-circle{clip-path:none;border-radius:999px}.confetti-shape-rect{clip-path:none}.confetti-shape-streamer{clip-path:none;border-radius:999px}.confetti-shape-triangle{border-radius:0;clip-path:polygon(50% 0%,0% 100%,100% 100%)}.confetti-shape-star{border-radius:0;clip-path:polygon(50% 0%,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%)}@keyframes confettiFall{0%{transform:translate(-50%,-50%) rotate(var(--rot)) rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg)) scale(.2);opacity:0}10%{opacity:1}to{transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy))) rotate(calc(var(--rot) + 880deg)) rotateX(calc(var(--rx, 0deg) + 520deg)) rotateY(calc(var(--ry, 0deg) + 520deg)) scale(1);opacity:0}}.wheel-card:before{content:"";position:absolute;inset:-48px -36px -36px;background:radial-gradient(ellipse 90% 45% at 50% -5%,#8ce6ff38,#0000 58%),radial-gradient(ellipse 130% 70% at 50% 110%,#001930a6,#0000 52%),radial-gradient(120px 220px at 12% 86%,#3fe8b629,#0000 70%),radial-gradient(140px 260px at 86% 90%,#59b7ff24,#0000 72%),radial-gradient(220px 160px at 50% 18%,#7ce9ff1a,#0000 72%),radial-gradient(circle at 18% 42%,rgba(0,100,140,.28),transparent 28%),radial-gradient(circle at 82% 38%,rgba(30,120,160,.22),transparent 26%);filter:blur(.5px);opacity:1;pointer-events:none}.wheel-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#ffffff0a,#fff0 45%,#ffffff08);pointer-events:none;opacity:.8}.wheel-card>*{position:relative;z-index:1}.mode-row{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:8px}.mode-pill{border:none;border-radius:999px;font-size:10px;padding:4px 8px;opacity:.75;background:transparent}button.mode-pill{font:inherit;font-weight:700;letter-spacing:.02em;color:inherit;cursor:pointer;background:transparent}button.mode-pill:disabled{cursor:not-allowed;opacity:.45}.mode-pill.is-active{opacity:1;border:1px solid #7ce9ff;background:#7ce9ff24}.status{text-align:right;font-size:11px;opacity:.9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.legend-row{display:flex;justify-content:space-between;gap:8px;font-size:11px;opacity:.92}.legend-row span{display:inline-flex;align-items:center;gap:6px}.bottle-slot{position:relative;padding-right:0;max-width:100%;display:flex;justify-content:center}.bottle-glass{position:relative;border-radius:0;padding:0;background:transparent;border:none;box-shadow:none}.machine{position:relative;padding:4px;border-radius:10px;background:transparent;box-shadow:none}.payline{position:absolute;left:5px;right:5px;top:calc(50% - 1px);border-top:2px dashed rgba(255,215,120,.92);pointer-events:none;opacity:1;filter:drop-shadow(0 0 3px rgba(0,0,0,.35));z-index:3}.reels{display:grid;grid-template-columns:repeat(3,var(--reel-col));width:var(--reel-total);max-width:100%;margin:0 auto;gap:0;border-radius:8px;overflow:hidden;background:linear-gradient(165deg,#ffffff24,#c8ebff1f);backdrop-filter:blur(12px) saturate(1.15);-webkit-backdrop-filter:blur(12px) saturate(1.15);box-shadow:inset 0 0 0 1px #fff6,inset 0 1px #ffffff40,0 4px 20px #000c1c33;perspective:none;transform-style:flat}.reel-window{position:relative;height:calc(var(--reel-step) * 3);overflow:hidden;border-radius:0;border:none;background:transparent;box-shadow:none;transform:none;backface-visibility:visible}.reel-window:not(:last-child){border-right:1px solid rgba(255,255,255,.2)}.reel-window:before{display:none}.reel-window .reel-strip{position:relative;z-index:2}.reel-strip{width:100%}.reel-strip.fixed{transform:translateY(0)}.reel-strip.spinning{animation:spinDownFast .22s linear infinite}.reel-strip.spinning.col-2{animation:spinDownSlow .55s cubic-bezier(.2,.85,.35,1) infinite}.reel-strip.blur .reel-cell .symbol-badge{filter:blur(4px) saturate(1.2)}@keyframes spinDownFast{0%{transform:translateY(calc(var(--reel-step) * -4))}to{transform:translateY(0)}}@keyframes spinDownSlow{0%{transform:translateY(calc(var(--reel-step) * -2))}to{transform:translateY(0)}}.reel-cell{height:var(--reel-step);display:grid;place-items:center;padding:0;border-bottom:1px solid rgba(255,255,255,.12)}.reel-cell:last-child{border-bottom:0}.reel-cell.center-line{background:#ffdc641f;box-shadow:0 0 0 1px #ffd25059 inset}.symbol-badge{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;border:1px solid rgba(212,244,255,.32)}.symbol-badge.is-small{width:28px;height:28px;border-radius:8px}.symbol-icon{width:30px;height:22px;filter:drop-shadow(0 2px 1px rgba(0,10,24,.25))}.symbol-icon.is-small{width:20px;height:15px}.symbol-icon.is-decor{width:28px;height:28px}.symbol-icon.is-decor.is-small{width:18px;height:18px}.symbol-icon-decor-img{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;display:block}.symbol-icon-fish-img{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;display:block;filter:drop-shadow(0 1px 2px rgba(0,10,24,.35))}.decor-gray{background:#9eb0be47}.decor-green{background:#69dc9947}.decor-blue{background:#59b7ff47}.decor-purple{background:#b57dff47}.decor-gold{background:#ffd36857}.symbol-badge-anchor{background:#59b7ff52;border-color:#1864a080;box-shadow:0 0 0 1px #78c8ff33 inset;overflow:hidden}.symbol-badge-anchor .symbol-icon-decor-img{filter:drop-shadow(0 1px 3px rgba(0,50,120,.45)) brightness(1.06) saturate(1.12);transform:scale(1.52);transform-origin:center center}.craft-block .symbol-badge-anchor .symbol-icon-decor-img{transform:scale(1.62)}.symbol-badge-chest,.symbol-badge-shard{overflow:hidden}.symbol-badge-chest .symbol-icon-decor-img,.symbol-badge-shard .symbol-icon-decor-img{transform:scale(1.5);transform-origin:center center;filter:drop-shadow(0 1px 2px rgba(0,18,40,.4))}.craft-block .symbol-badge-chest .symbol-icon-decor-img,.craft-block .symbol-badge-shard .symbol-icon-decor-img{transform:scale(1.58)}.symbol-badge-castle{overflow:hidden;background:#ffd36847;border-color:#b482186b}.symbol-badge-castle .symbol-icon-decor-img{transform:scale(1.38);transform-origin:center center;filter:drop-shadow(0 1px 2px rgba(40,28,0,.35))}.craft-block .symbol-badge-castle .symbol-icon-decor-img{transform:scale(1.48)}.craft-block .symbol-badge.is-small{width:48px;height:48px;border-radius:12px}.craft-block .symbol-icon.is-small,.craft-block .symbol-icon.is-decor.is-small{width:40px;height:40px}.craft-block .decor-gray .symbol-icon-decor-img,.craft-block .decor-green .symbol-icon-decor-img,.craft-block .decor-blue .symbol-icon-decor-img,.craft-block .decor-purple .symbol-icon-decor-img,.craft-block .decor-gold .symbol-icon-decor-img{filter:drop-shadow(0 1px 2px rgba(0,12,28,.45)) contrast(1.06) saturate(1.08)}.fish-gray{background:#9eb0be;border-color:#4658666b;isolation:isolate}.fish-green{background:#5dd89a;border-color:#18784861;isolation:isolate}.fish-blue{background:#59b7ff;border-color:#1864a066;isolation:isolate}.fish-purple{background:#b889ff;border-color:#5a32a066;isolation:isolate}.fish-gold{background:#ffd368;border-color:#b4821873;isolation:isolate}.symbol-badge.fish-gray .symbol-icon-fish-img,.symbol-badge.fish-green .symbol-icon-fish-img,.symbol-badge.fish-blue .symbol-icon-fish-img,.symbol-badge.fish-purple .symbol-icon-fish-img,.symbol-badge.fish-gold .symbol-icon-fish-img{mix-blend-mode:multiply;filter:drop-shadow(0 1px 2px rgba(0,10,24,.32))}.wheel-card .symbol-badge.fish-gray .symbol-icon-fish-img,.wheel-card .symbol-badge.fish-green .symbol-icon-fish-img,.wheel-card .symbol-badge.fish-blue .symbol-icon-fish-img,.wheel-card .symbol-badge.fish-purple .symbol-icon-fish-img,.wheel-card .symbol-badge.fish-gold .symbol-icon-fish-img{filter:drop-shadow(0 2px 3px rgba(0,10,24,.38))}.wheel-card .symbol-badge:not(.is-small){width:calc(var(--reel-total) / 3 - 12px);height:calc(var(--reel-total) / 3 - 12px);max-width:calc(100% - 4px);max-height:calc(100% - 4px);border-radius:10px}.wheel-card .symbol-icon{width:calc((var(--reel-total) / 3 - 12px) * .78);height:calc((var(--reel-total) / 3 - 12px) * .58)}.wheel-card .symbol-icon.is-decor{width:calc((var(--reel-total) / 3 - 12px) * .74);height:calc((var(--reel-total) / 3 - 12px) * .74)}.spin-btn{border:0;border-radius:14px;padding:12px;font-weight:800;letter-spacing:.6px;color:#04334e;background:linear-gradient(90deg,#a1f6ff,#6de7ff,#a1f6ff);background-size:200% 100%;cursor:pointer;animation:wave 1.5s linear infinite}.spin-btn.auto-spin-active{background:linear-gradient(90deg,#ff6b6b,#feca57,#ff6b6b);animation:pulse .8s ease-in-out infinite}.spin-btn:disabled{opacity:.6;cursor:not-allowed}.wheel-card .spin-btn{display:block;width:var(--reel-total);max-width:100%;margin-left:auto;margin-right:auto;box-sizing:border-box}.wheel-card .auto-spin-hint,.wheel-card .decor-status{max-width:var(--reel-total);margin-left:auto;margin-right:auto}.wheel-card .decor-status--available,.wheel-card .decor-status--blocked{margin-top:8px;margin-bottom:12px}.decor-status--available{text-align:center;font-size:12px;font-weight:600;color:#9ff0e8}.decor-status--blocked{text-align:center;font-size:14px;font-weight:800;line-height:1.45;color:#fff8e6;padding:10px 4px;border-radius:0;border:none;background:transparent}@media(min-width:380px){.decor-status--blocked{font-size:15px;padding:16px 14px}}@keyframes wave{0%{background-position:0% 0}to{background-position:200% 0}}@keyframes pulse{0%,to{transform:scale(1);box-shadow:0 0 #ff6b6bb3}50%{transform:scale(1.02);box-shadow:0 0 0 8px #ff6b6b00}}.meta-row{display:flex;justify-content:space-between;font-size:11px;opacity:.85;gap:8px;flex-wrap:wrap}.decor-status{margin:0;font-size:11px;opacity:.9}.decor-status.decor-status--blocked,.decor-status.decor-status--available{opacity:1}.auto-spin-hint{margin:0 0 8px;font-size:10px;font-weight:700;color:#6de7ff;text-align:center;opacity:.85;animation:hintPulse 2s ease-in-out infinite}@keyframes hintPulse{0%,to{opacity:.6}50%{opacity:1}}.reset-decor-btn{margin-top:8px;border:none;border-radius:8px;padding:6px 10px;font-size:10px;font-weight:600;color:#ffd700e6;background:transparent;cursor:pointer;transition:color .2s ease,opacity .2s ease;width:100%}.reset-decor-btn:hover{color:gold;opacity:1}.reset-decor-btn:active{transform:scale(.98)}.counters{padding:10px;display:grid;gap:10px;max-height:fit-content;margin-bottom:0;height:fit-content}.counters+.counters{margin-top:0}.counters .counter-block{margin:0;padding:0}.app>main{flex:0 0 auto}.bottom-nav{background:var(--app-nav-bg, #0b0c0e);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-top:1px solid var(--app-nav-border, rgba(255, 255, 255, .08));box-shadow:0 -12px 40px #0000008c}.bottom-nav--fixed{position:fixed;bottom:0;left:0;right:0;z-index:1000;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:2px;padding:8px 2px calc(8px + env(safe-area-inset-bottom,0px));max-width:none;width:100%}.counter-block h2,.craft-screen h2,.placeholder-screen h2,.aquarium-screen h2{margin:0;font-size:13px}.counter-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.counter-item{border:none;border-radius:var(--app-radius-sm, 10px);padding:8px 4px;text-align:center;display:grid;gap:4px;place-items:center;background:transparent;box-shadow:none;transition:opacity .15s ease}.counter-item b{font-size:12px;color:#fff}.craft-note,.placeholder-screen p{margin:0;font-size:12px;opacity:.88}.craft-block{display:grid;gap:6px}.craft-block h3{margin:0;font-size:12px}.craft-grid{display:grid;gap:6px}.craft-btn{border:none;border-radius:10px;padding:10px;display:flex;justify-content:space-between;align-items:center;font-size:12px;background:transparent;color:#d8f6ff;cursor:pointer}.craft-btn:disabled{cursor:not-allowed;opacity:.8}.craft-btn.ready{border:1px solid rgba(160,241,255,.7);background:#1d617c73}.craft-item-left,.craft-item-right{display:inline-flex;align-items:center;gap:8px}.fish-craft-chain{display:flex;flex-direction:column;gap:8px}.fish-craft-step{display:grid;grid-template-columns:minmax(0,1fr) 22px minmax(0,1fr);align-items:stretch;gap:6px 8px;padding:8px 4px;border-radius:0;border:none;background:transparent}.fish-craft-step__source,.fish-craft-step__target{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:0}.fish-craft-step__label{font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#b4dcf0bf;line-height:1.2}.fish-craft-step__label--target{color:#a0e6ffe0;text-transform:none;letter-spacing:0;font-size:11px}.fish-craft-step__count{display:flex;align-items:baseline;gap:2px;font-size:15px;font-weight:800;font-variant-numeric:tabular-nums;color:#e8fbff}.fish-craft-step__count-num.is-ready{color:#9fffd0;text-shadow:0 0 10px rgba(100,255,180,.45)}.fish-craft-step__count-sep{opacity:.45;font-weight:600}.fish-craft-step__count-max{opacity:.55;font-size:13px;font-weight:700}.fish-craft-step__bar{width:100%;max-width:112px;height:5px;border-radius:999px;background:#00000059;overflow:hidden;border:1px solid rgba(100,180,210,.2)}.fish-craft-step__bar-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,#50a0c880,#78e6c8d9);transition:width .25s ease}.fish-craft-step__arrow{display:flex;align-items:center;justify-content:center;min-height:100%;font-size:1rem;font-weight:800;color:#8cdcff8c;padding-top:18px}.fish-craft-step__craft-btn{width:100%;max-width:152px;margin-top:2px;padding:10px 8px;border-radius:10px;border:1px solid rgba(140,210,240,.28);background:#08283ae0;color:#c8e6f5a6;font-size:12px;font-weight:700;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease,color .2s ease}.fish-craft-step__craft-btn:disabled{cursor:not-allowed;opacity:.72}.fish-craft-step__craft-btn.is-ready{border-color:#78ffc8cc;background:linear-gradient(165deg,#1e82648c,#0a4b5feb);color:#f0fff8;box-shadow:0 0 0 1px #64ffbe4d,0 0 18px #50dca059;animation:fish-craft-ready-glow 2.2s ease-in-out infinite}@keyframes fish-craft-ready-glow{0%,to{box-shadow:0 0 0 1px #64ffbe40,0 0 14px #50dca04d}50%{box-shadow:0 0 0 1px #8cffd273,0 0 22px #64f0be80}}.fish-craft-footer{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:12px;border:1px dashed rgba(200,180,120,.35);background:#14282359}.fish-craft-footer__text{font-size:12px;line-height:1.4;color:#d2e6f0e0;flex:1;min-width:0}.fish-craft-footer__inv{font-weight:800;color:#ffe8a6;font-variant-numeric:tabular-nums}.fish-craft-note-hl{color:#9fffd0;font-weight:700}.craft-note--fish-intro{margin-bottom:10px}.aquarium-decor-split{display:flex;width:100%;max-width:100%;border-radius:8px;overflow:hidden;border:1px solid rgba(124,233,255,.45)}.aquarium-decor-split__btn{flex:1;min-width:0;margin:0;border-radius:0;border:none;padding:8px 10px;font-size:16px;font-weight:700;line-height:1}.aquarium-decor-split__add{border-right:1px solid rgba(124,233,255,.35)}.aquarium-decor-split__btn:disabled{opacity:.45;cursor:not-allowed}.nft-screen{gap:10px}.nft-controls{display:grid;gap:8px}.nft-kind-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.nft-rarity-row{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px}.nft-rarity-row::-webkit-scrollbar{height:6px}.nft-rarity-row::-webkit-scrollbar-track{background:#0003;border-radius:3px}.nft-rarity-row::-webkit-scrollbar-thumb{background:#7ce9ff4d;border-radius:3px}.nft-rarity-row::-webkit-scrollbar-thumb:hover{background:#7ce9ff80}.nft-pill{border:none;border-radius:999px;background:transparent;color:#d7f7ff;font-size:12px;padding:10px 12px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px}.nft-pill--decor-craft-set{flex-direction:column;justify-content:center;align-items:center;gap:6px;min-height:88px;padding:10px 8px;font-size:11px;font-weight:600;color:var(--app-nav-inactive, rgba(255, 255, 255, .78));border:none;background:transparent;overflow:visible}.nft-pill--decor-craft-set.is-active{color:var(--app-nav-accent, #6de7ff);border:1px solid var(--app-nav-accent-dim, rgba(109, 231, 255, .45));background:var(--app-nav-accent-dim, rgba(109, 231, 255, .14));box-shadow:inset 0 0 0 1px #a1f6ff38}.nft-pill--decor-craft-set.is-active .decor-craft-tab-icon{filter:drop-shadow(0 0 6px var(--app-nav-accent-glow, rgba(161, 246, 255, .45)))}.decor-craft-tab-icon{width:26px;height:26px;object-fit:contain;flex-shrink:0;filter:drop-shadow(0 1px 2px rgba(0,8,20,.55));pointer-events:none}.decor-craft-tab-icon--sand{width:52px;height:26px;transform:perspective(140px) rotateX(10deg);transform-origin:50% 85%;filter:drop-shadow(0 2px 7px rgba(0,12,28,.85))}.decor-craft-tab-icon--stones{width:52px;height:36px;transform:perspective(140px) rotateX(10deg);transform-origin:50% 85%;filter:drop-shadow(0 2px 7px rgba(0,12,28,.88))}.decor-craft-tab-icon--shells{width:46px;height:46px;filter:drop-shadow(0 2px 8px rgba(0,12,28,.9))}.decor-craft-tab-icon--artifacts{width:46px;height:46px;transform:perspective(120px) rotateX(8deg) scale(1.78);transform-origin:50% 82%;filter:drop-shadow(0 2px 8px rgba(0,12,28,.9))}.nft-pill.is-active:not(.nft-pill--decor-craft-set):not(.nft-pill--nft-rarity){background:linear-gradient(180deg,#7eeaff4d,#349dc047);border:1px solid rgba(161,241,255,.65)}.nft-screen .nft-pill--nft-rarity:not(.is-active){border:none;background:transparent}.nft-screen .nft-pill--nft-rarity{transition:background .15s ease,border-color .15s ease,color .15s ease,transform .1s ease}.nft-screen .nft-pill--nft-rarity:active{transform:scale(.98)}.nft-screen .nft-pill--nft-rarity.is-active[data-rarity=green]{background:linear-gradient(165deg,#69dc9973,#1848346b);border-color:#69dc99e0;color:#f0fff7}.nft-screen .nft-pill--nft-rarity.is-active[data-rarity=blue]{background:linear-gradient(165deg,#59b7ff73,#183c6473);border-color:#59b7ffe6;color:#f0f8ff}.nft-screen .nft-pill--nft-rarity.is-active[data-rarity=purple]{background:linear-gradient(165deg,#b57dff6b,#3c246e7a);border-color:#b57dffe0;color:#faf5ff}.nft-screen .nft-pill--nft-rarity.is-active[data-rarity=gold]{background:linear-gradient(165deg,#ffd7008c,#7855006b);border-color:#c8a028eb;color:#2a2106}.nft-craft-mint-btn:active:not(:disabled){filter:brightness(1.06) saturate(1.08)}.nft-form{display:grid;grid-template-columns:1fr 1fr;gap:8px}.nft-field{display:grid;gap:6px;font-size:11px;opacity:.92}.nft-input{width:100%;border-radius:10px;border:none;border-bottom:1px solid rgba(168,232,255,.38);background:transparent;color:#d8f6ff;padding:10px 4px;font-size:14px;outline:none}.nft-input:focus{border-bottom-color:#a0f1ffd9}.nft-summary{display:flex;justify-content:space-between;gap:8px;font-size:11px;opacity:.9;flex-wrap:wrap}.nft-template-head{display:flex;justify-content:space-between;align-items:center;font-size:11px;opacity:.92}.nft-random{border:none;border-radius:999px;background:#061f2edb;color:#d7f7ff;font-size:11px;padding:6px 10px;cursor:pointer}.nft-random.claim-ready{border:1px solid rgba(161,241,255,.65);background:linear-gradient(90deg,#a1f6ff,#6de7ff,#a1f6ff);background-size:200% 100%;color:#04334e;font-weight:800;animation:claimWave 1.5s linear infinite,claimPulseCyan 2s ease-in-out infinite}@keyframes claimWave{0%{background-position:0% 0}to{background-position:200% 0}}@keyframes claimPulseCyan{0%,to{box-shadow:0 0 #6de7ff73}50%{box-shadow:0 0 0 6px #6de7ff00}}.nft-templates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.nft-template{border:1px solid rgba(168,232,255,.24);border-radius:12px;background:#031825b8;color:#d8f6ff;padding:10px;cursor:pointer;display:grid;grid-template-columns:42px 1fr;gap:10px;align-items:center;text-align:left}.nft-template.is-active{border-color:#a0f1ffb3;background:#1d617c73}.nft-preview{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;border:1px solid rgba(212,244,255,.22)}.nft-preview.fish-reef,.nft-preview.decor-reef{background:radial-gradient(circle at 30% 20%,#69dc9959,#061f2edb)}.nft-preview.fish-neon{background:radial-gradient(circle at 20% 25%,#7ce9ff73,#031825b8)}.nft-preview.decor-pearl{background:radial-gradient(circle at 30% 20%,#ffffff38,#031825b8)}.nft-preview.fish-royal,.nft-preview.decor-royal{background:radial-gradient(circle at 30% 20%,#ffd3686b,#031825b8)}.nft-preview.fish-ancient,.nft-preview.decor-ancient{background:radial-gradient(circle at 30% 20%,#b57dff66,#061f2edb)}.nft-preview.fish-void,.nft-preview.decor-void{background:radial-gradient(circle at 30% 20%,#59b7ff40,#0000008c)}.nft-template-text b{display:block;font-size:12px}.nft-template-text span{display:block;font-size:11px;opacity:.75}.nft-secondary{border:1px solid rgba(171,233,255,.25);border-radius:14px;padding:10px 12px;font-weight:700;color:#d7f7ff;background:#061f2edb;cursor:pointer}.nft-secondary:disabled{opacity:.6;cursor:not-allowed}.nft-chip{border:1px solid rgba(171,233,255,.22);border-radius:999px;padding:2px 8px;font-size:10px;opacity:.85}.nft-list{display:grid;gap:6px}.nft-row{border:none;border-radius:0;padding:8px 4px;background:transparent;display:flex;justify-content:space-between;gap:10px;font-size:12px;align-items:center}.nft-row.is-off{opacity:.55}.nft-row.is-off .nft-chip{opacity:.65}.nft-row-left{display:inline-flex;gap:8px;align-items:center}.nft-row-right{opacity:.75;font-size:11px;text-align:right;white-space:nowrap}.screen-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:8px 4px 12px;margin:0 0 6px;border-radius:0;background:transparent;border:none;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.tab-screen .screen-head h2{margin:0;font-size:clamp(1.05rem,4vw,1.2rem);font-weight:800;letter-spacing:.02em;text-shadow:0 1px 4px rgba(0,8,20,.85),0 0 20px rgba(0,20,40,.45)}.screen-close{width:38px;height:38px;border-radius:var(--app-radius-sm, 10px);border:none;background:transparent;color:#e8fbff;font-size:22px;line-height:0;cursor:pointer;transition:background .15s ease,opacity .15s ease,transform .1s ease}.screen-close:hover{background:#ffffff0f;opacity:.95}.screen-close:active{transform:translateY(1px) scale(.98)}.nft-empty{opacity:.9;justify-content:center;text-align:center}.aquarium-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;font-size:11px}.layer-row{display:grid;gap:6px}.layer-card{border:none;border-radius:0;padding:8px 4px;font-size:11px;background:transparent}.aquarium-canvas{width:100%;height:min(420px,52vh);min-height:360px;border-radius:0;border:none;background:#04172559}.tab-intro{margin-bottom:10px;padding:6px 4px;border-radius:0;border:none;background:transparent}.ref-intro-line{margin:0 0 4px;line-height:1.45}.ref-code{display:inline-block;margin:0 2px;padding:4px 10px;font-family:ui-monospace,Cascadia Code,monospace;font-size:13px;font-weight:700;letter-spacing:.06em;border-radius:var(--app-radius-sm);background:#000e1873;border:none;color:var(--app-accent)}.ref-invite-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.ref-invite-actions__btn{flex:1;min-width:min(140px,100%);justify-content:center}.ref-math-list{margin:0;padding-left:1.15em;font-size:12px;line-height:1.55;color:#fffffff0}.ref-math-list li{margin-bottom:4px}.ref-friends-list{margin-top:8px}.tab-footer-hint{margin-top:12px;padding-top:12px;border-top:none;opacity:.92}.aquarium-viewport-wrap{display:flex;flex-direction:column;gap:10px;margin-bottom:12px}.aquarium-empty-hint{margin:0;text-align:center;opacity:.85}.aquarium-control-panel{display:flex;flex-direction:column;gap:10px}.aquarium-section{margin-top:2px}.aquarium-ground-line{margin:4px 0 0;opacity:.88}.aquarium-export-row{flex-wrap:wrap;gap:8px}.aquarium-layers-hint{margin-top:4px}.aquarium-help{margin-top:14px;padding-top:12px;border-top:none}.aquarium-help-title{margin:0 0 8px;font-size:13px;font-weight:700;color:#e8fbff}.counters,.craft-screen,.aquarium-screen,.placeholder-screen{flex:1;display:flex;flex-direction:column;padding:10px;min-height:200px}.craft-screen,.aquarium-screen{overflow-y:auto}.nav-item{border:1px solid transparent;border-radius:12px;background:transparent;color:var(--app-nav-inactive, rgba(255, 255, 255, .72));font-size:clamp(8px,2.1vw,10px);padding:6px 1px 4px;cursor:pointer;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:4px;line-height:1.1;text-align:center;transition:color .15s ease,transform .12s ease,background .15s ease;box-shadow:none}.bottom-nav .nav-item{position:relative}.nav-item:active{transform:scale(.97)}.bottom-nav .nav-item.active{background:var(--app-nav-accent-dim, rgba(109, 231, 255, .22));border:1px solid var(--app-nav-accent-glow, rgba(161, 246, 255, .45));box-shadow:none;color:var(--app-nav-accent, #6de7ff)}.bottom-nav .nav-item.active .nav-item__svg{color:var(--app-nav-accent, #6de7ff);filter:drop-shadow(0 0 8px var(--app-nav-accent-glow, rgba(161, 246, 255, .4)))}.nav-item__icon{display:flex;align-items:center;justify-content:center;min-height:38px;line-height:0}.nav-item__svg{display:block;width:28px;height:28px;flex-shrink:0;color:currentColor;filter:drop-shadow(0 1px 2px rgba(0,0,0,.45))}.nav-item__svg--filled{filter:drop-shadow(0 1px 1px rgba(0,0,0,.55))}.nav-item__svg--friends,.nav-item__svg--missions,.nav-item__svg--aquarium{width:36px;height:36px}.nav-item--tab-friends .nav-item__label,.nav-item--tab-missions .nav-item__label,.nav-item--tab-aquarium .nav-item__label{font-size:clamp(9px,2.35vw,11px)}.nav-item__label{display:block;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.15;max-height:2.4em;padding:0 1px;font-weight:600;letter-spacing:-.02em}.decor-shop-block{margin-top:12px;padding-top:10px;border-top:none}.decor-shop-title{margin:0 0 6px;font-size:13px;font-weight:600;color:#e8fbff}.decor-shop-hint{margin-bottom:10px!important}.decor-shop-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}@media(min-width:380px){.decor-shop-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.decor-shop-btn{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 6px;border-radius:12px;border:none;background:transparent;color:#dff8ff;cursor:pointer;font-size:11px}.decor-shop-btn.is-ready{border:1px solid rgba(120,230,255,.55);background:#041c2a73}.decor-shop-btn:disabled{opacity:.55;cursor:not-allowed}.decor-shop-btn__rare{font-weight:600}.decor-shop-btn__price{color:#9ee8ff;font-size:11px}@media(max-width:380px){.app-shell{padding:env(safe-area-inset-top,0) env(safe-area-inset-right,0) 0 env(safe-area-inset-left,0)}.top-panel{grid-template-columns:1fr;gap:6px}.jackpot-box,.user-caption{text-align:left}.wheel-card{--reel-total: min(calc(200px + 200px / 3), calc(100vw - 16px) );--reel-col: calc(var(--reel-total) / 3);--reel-step: calc(var(--reel-total) / 3)}.legend-row{flex-direction:column;gap:2px}.craft-btn{font-size:11px}.aquarium-stats,.nft-form{grid-template-columns:1fr}}.fish-td-overlay{position:fixed;inset:0;z-index:4000;background:#040c14eb;display:flex;align-items:center;justify-content:center;padding:12px}.fish-td-panel{max-width:440px;width:100%;background:linear-gradient(180deg,#0c283afa,#061624fc);border-radius:16px;border:1px solid rgba(120,200,255,.35);padding:14px;max-height:min(92vh,720px);overflow-y:auto}.fish-td-panel--wide{max-width:520px}.fish-td-shop{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:10px}.fish-td-kind-btn{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:8px 10px;border-radius:10px;border:1px solid rgba(100,160,200,.45);background:#0018288c;color:#e0f2fe;cursor:pointer;font-size:13px;text-align:left;transition:border-color .15s,background .15s}.fish-td-kind-btn:hover{border-color:#78c8ffa6;background:#00283ca6}.fish-td-kind-btn.is-active{border-color:#4ade80a6;box-shadow:inset 0 0 0 1px #4ade8059}.fish-td-kind-name{font-weight:600}.fish-td-kind-price{font-size:11px;color:#7dd3fc;opacity:.95}.fish-td-upgrade-hint{font-size:12px;color:#a5f3fc;margin:8px 0 0;line-height:1.4}.fish-td-head{display:flex;flex-direction:row;justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:8px}.fish-td-title{margin:0;font-size:16px;color:#e0f2fe;line-height:1.25}.fish-td-close{flex-shrink:0;width:36px;height:36px;border-radius:10px;border:1px solid rgba(255,255,255,.25);background:#00000059;color:#fff;font-size:22px;line-height:1;cursor:pointer}.fish-td-hint{font-size:12px;color:#bae6fd;margin:0 0 10px;line-height:1.45}.fish-td-canvas-wrap{position:relative;width:100%}.fish-td-canvas{width:100%;height:auto;border-radius:10px;border:1px solid rgba(80,140,180,.6);cursor:crosshair;display:block;max-height:min(52vh,400px)}.fish-td-upgrade-fab{position:absolute;z-index:2;width:46px;height:46px;border-radius:50%;border:3px solid #bbf7d0;background:linear-gradient(180deg,#22c55e,#15803d);color:#fff;font-size:26px;font-weight:900;line-height:1;cursor:pointer;box-shadow:0 4px 16px #22c55e8c;display:flex;align-items:center;justify-content:center;padding:0;transform:translate(-50%)}.fish-td-upgrade-fab:hover{filter:brightness(1.08);box-shadow:0 6px 20px #22c55ea6}.fish-td-actions{margin-top:12px;display:flex;justify-content:flex-end}.fish-td-tier-btns{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.fish-td-tier-btn.is-ready{box-shadow:inset 0 0 0 2px #4ade8073}.fish-td-entry{border-color:#78c8ff47}
