:root{color:#f9fbf4;background:#10140f;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html{min-height:100%}body{min-width:320px;min-height:100vh;margin:0;overflow-x:hidden}button{font:inherit}.game-shell{position:relative;isolation:isolate;min-height:100vh;display:grid;grid-template-rows:auto 1fr auto;place-items:center;gap:24px;padding:clamp(20px,5vw,48px);padding-bottom:max(248px,calc(228px + env(safe-area-inset-bottom)));overflow:hidden;background:#063c39}.water-background{position:fixed;inset:0;z-index:0;width:100%;height:100%;pointer-events:none}.game-shell>section{z-index:1}.score-panel{width:min(100%,720px);text-align:center}.eyebrow{margin:0 0 12px;color:#93d7ca;font-size:.88rem;font-weight:800;letter-spacing:0;text-transform:uppercase}.score-panel h1{margin:0;color:#fff;font-family:Arial Black,Trebuchet MS,system-ui,sans-serif;font-size:clamp(2.35rem,12vw,5.8rem);font-weight:900;line-height:.95;letter-spacing:0;-webkit-text-stroke:2px rgba(0,0,0,.86);paint-order:stroke fill;text-shadow:0 3px 0 rgba(0,0,0,.86),0 8px 18px rgba(0,0,0,.36);overflow-wrap:anywhere}.score-panel p:last-child{min-height:1.6em;margin:16px 0 0;color:#d9e5d1;font-size:clamp(1rem,3vw,1.35rem)}.obtained-message{position:fixed;top:max(18px,env(safe-area-inset-top));left:50%;z-index:5;max-width:min(92vw,680px);border:1px solid rgba(255,225,132,.72);border-radius:8px;padding:12px 18px;color:#10201b;font-size:clamp(1rem,3vw,1.25rem);font-weight:900;text-align:center;background:#ffe184eb;box-shadow:0 16px 32px #0000003d;animation:obtained-message-flash 1.8s ease both}.click-stage{position:relative;width:min(86vw,560px);display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto;place-items:center;overflow:visible}.click-stage--has-rod{gap:clamp(18px,4vw,36px)}.gb-logo{position:fixed;top:max(16px,env(safe-area-inset-top));left:max(16px,env(safe-area-inset-left));z-index:4;width:clamp(116px,16vw,188px);pointer-events:none;transition:top .42s ease,left .42s ease,width .42s ease,transform .42s ease}.gb-logo--sick{top:50%;left:50%;width:min(82vw,920px);transform:translate(-50%,-50%)}.gb-logo__inner{transform-style:preserve-3d}.gb-logo__image{width:100%;max-height:min(72vh,720px);object-fit:contain;filter:drop-shadow(0 18px 30px rgba(0,0,0,.28))}.fish-click-area{position:relative;width:100%;aspect-ratio:1071 / 409;display:grid;place-items:center}.item-display-row{width:min(100vw - 32px,1040px);min-height:clamp(102px,16vw,144px);display:flex;align-items:flex-start;justify-content:center;flex-wrap:wrap;gap:clamp(12px,1.8vw,18px);pointer-events:none}.rod-display,.temu-display,.accessory-display{width:clamp(70px,8vw,92px);display:grid;place-items:center;gap:0;pointer-events:auto}.rod-display:focus-visible,.temu-display:focus-visible,.accessory-display:focus-visible{outline:3px solid #93d7ca;outline-offset:5px;border-radius:8px}.item-display-name{flex:1 0 100%;min-height:1.25em;color:#fff;font-family:Arial Black,Trebuchet MS,system-ui,sans-serif;font-size:clamp(1.4rem,5vw,2.45rem);font-weight:900;line-height:1.05;letter-spacing:0;text-align:center;-webkit-text-stroke:2px rgba(0,0,0,.9);paint-order:stroke fill;text-shadow:0 3px 0 rgba(0,0,0,.9),0 8px 18px rgba(0,0,0,.38);pointer-events:none}.rod-display__badge,.temu-display__badge,.accessory-display__badge{position:relative;width:100%;aspect-ratio:1;display:grid;place-items:center;border:1px solid rgba(255,255,255,.36);border-radius:50%;background:#ffffff2e;box-shadow:inset 0 1px 18px #fff3,0 14px 28px #00000038;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.temu-display__badge{padding:4px;background:conic-gradient(rgba(255,225,132,.82) var(--temu-progress),rgba(255,255,255,.18) var(--temu-progress));transition:background .25s linear}.temu-display__inner{width:100%;height:100%;display:grid;place-items:center;border-radius:50%;background:#ffffff2e}.accessory-display__badge{padding:4px}.rod-display__image{width:64%;height:64%;aspect-ratio:801 / 818;object-fit:contain;filter:drop-shadow(0 9px 12px rgba(0,0,0,.36));transform:rotate(10deg)}.temu-display__image,.accessory-display__image{width:66%;height:66%;object-fit:contain;filter:drop-shadow(0 9px 12px rgba(0,0,0,.34))}.accessory-display__quantity{position:absolute;top:-4px;right:-4px;min-width:24px;height:24px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.3);border-radius:999px;padding-inline:6px;color:#10201b;font-size:.82rem;font-weight:900;line-height:1;background:#ffe184;box-shadow:0 6px 14px #00000042}.rod-floating-layer{position:absolute;inset:0;z-index:2;display:grid;place-items:center;pointer-events:none}.rod-floating-point{font-size:clamp(1.25rem,4vw,2.1rem)}.rod-display__count,.temu-display__count,.accessory-display__count{margin-top:-3px;color:#fff;font-family:Arial Black,Trebuchet MS,system-ui,sans-serif;font-size:clamp(.72rem,2vw,1rem);font-weight:900;letter-spacing:0;-webkit-text-stroke:1px rgba(0,0,0,.9);paint-order:stroke fill;text-shadow:0 2px 0 rgba(0,0,0,.9),0 5px 10px rgba(0,0,0,.38)}.temu-display--pop{animation:item-pop .42s cubic-bezier(.16,1,.3,1) both}.click-target{position:relative;z-index:1;width:100%;aspect-ratio:1071 / 409;display:grid;place-items:center;border:0;border-radius:8px;padding:0;color:#11160e;cursor:pointer;overflow:visible;touch-action:manipulation;-webkit-user-select:none;user-select:none;background:transparent}.click-target:focus-visible,.unlock-item:focus-visible,.secondary-button:focus-visible{outline:3px solid #93d7ca;outline-offset:5px}.click-target__fish-glow{position:absolute;z-index:0;width:100%;height:100%;object-fit:contain;pointer-events:none;opacity:0;filter:brightness(0) invert(1) blur(5px) drop-shadow(0 0 12px rgba(255,255,255,.95)) drop-shadow(0 0 26px rgba(161,247,223,.82)) drop-shadow(0 0 48px rgba(255,230,119,.5));transform-origin:50% 58%;animation:fish-sprite-glow .68s cubic-bezier(.16,1,.3,1) both}.click-target__fish{position:relative;z-index:1;width:100%;height:100%;object-fit:contain;pointer-events:none;animation:fish-swim 2.6s ease-in-out infinite;transform-origin:50% 58%}.floating-layer{position:absolute;inset:0;z-index:2;display:grid;place-items:center;pointer-events:none}.floating-point{position:absolute;color:#fff;font-family:Arial Black,Trebuchet MS,system-ui,sans-serif;font-size:clamp(1.6rem,6vw,2.6rem);font-weight:900;letter-spacing:0;-webkit-text-stroke:2px rgba(0,0,0,.88);paint-order:stroke fill;text-shadow:0 3px 0 rgba(0,0,0,.88),0 7px 14px rgba(0,0,0,.38)}.unlock-bar{position:fixed;left:max(16px,env(safe-area-inset-left));right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));z-index:2;width:min(1080px,calc(100vw - 32px));margin-inline:auto;display:flex;align-items:stretch;justify-content:center;flex-wrap:wrap;gap:10px}.unlock-item{position:relative;flex:1 1 340px;min-width:min(100%,340px);min-height:72px;display:grid;grid-template-columns:52px minmax(112px,1fr) minmax(118px,auto);align-items:center;gap:12px;border:1px solid rgba(255,255,255,.22);border-radius:8px;padding:12px;color:#f9fbf4;cursor:pointer;overflow:hidden;text-align:left;background:#072623db;box-shadow:0 18px 40px #0000004d;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:background-color .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}.unlock-item>:not(.unlock-item__progress){position:relative;z-index:1}.unlock-item__progress{position:absolute;inset:0;z-index:0;transform-origin:left center;background:#ffe18447;transition:transform .25s linear}.unlock-item:hover:not(:disabled){border-color:#ffe18494;background:#0b3a34e6;transform:translateY(-1px)}.unlock-item:disabled{cursor:not-allowed;opacity:.72}.unlock-item--temu:disabled{opacity:.86}.unlock-item__icon{width:52px;height:52px;border:1px solid rgba(255,255,255,.34);border-radius:50%;padding:8px;object-fit:contain;background:#fff3;filter:drop-shadow(0 6px 8px rgba(0,0,0,.3));transform:rotate(10deg)}.unlock-item__icon--temu{object-fit:contain;transform:none}.unlock-copy{min-width:0}.unlock-copy h2,.unlock-copy p{margin:0}.unlock-copy h2{color:#fff;font-size:clamp(1rem,3.8vw,1.18rem);font-weight:900;letter-spacing:0}.unlock-copy p{margin-top:4px;color:#ffe184;font-size:.95rem;font-weight:800}.unlock-stats{min-width:0;display:grid;gap:3px;color:#d9e5d1;font-size:.9rem;line-height:1.25;text-align:right}.secondary-button{flex:0 1 160px;min-height:44px;border:1px solid rgba(255,255,255,.24);border-radius:8px;padding:10px 18px;color:#f9fbf4;cursor:pointer;background:#ffffff17;transition:background-color .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}.secondary-button:hover{border-color:#ffffff70;background:#ffffff29;transform:translateY(-1px)}.unlock-bar--reset-only{width:min(220px,calc(100vw - 32px))}@media(max-width:560px){.game-shell{gap:16px;padding-block:24px max(380px,calc(360px + env(safe-area-inset-bottom)))}.click-stage{width:min(92vw,560px)}.rod-display,.temu-display,.accessory-display{width:clamp(58px,18vw,84px)}.rod-display__count,.temu-display__count,.accessory-display__count{margin-top:-5px}.unlock-bar{gap:8px}.unlock-item{flex-basis:100%;grid-template-columns:42px minmax(0,1fr);min-height:86px}.unlock-item__icon{width:42px;height:42px;padding:6px}.unlock-stats{grid-column:1 / -1;grid-row:2;grid-template-columns:repeat(2,minmax(0,1fr));text-align:left}.secondary-button{flex:1 1 100%}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important}.unlock-item,.secondary-button{transition:none}.click-target__fish{animation:none}.click-target__fish-glow{display:none}.temu-display--pop,.obtained-message{animation:none}}@keyframes fish-swim{0%,to{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-8px) rotate(1deg)}}@keyframes fish-sprite-glow{0%{opacity:0;transform:scale(.96)}24%{opacity:.42;transform:scale(1.08)}to{opacity:0;transform:scale(1.22)}}@keyframes item-pop{0%{opacity:1;transform:scale(1)}48%{opacity:1;transform:scale(1.18)}to{opacity:0;transform:scale(.2)}}@keyframes obtained-message-flash{0%{opacity:0;transform:translate(-50%) translateY(-10px) scale(.96)}16%,74%{opacity:1;transform:translate(-50%) translateY(0) scale(1)}to{opacity:0;transform:translate(-50%) translateY(-8px) scale(.98)}}
