:root{--brand-green:#1e8451;--brand-green-dark:#0f4f35;--brand-green-light:#55a779;--brand-gold:#b9a46a;--brand-gold-light:#d8c58e;--charcoal:#303030;--charcoal-deep:#191b1a;--off-white:#f7f5ef;--light-neutral:#e7e7e3;--pond-teal:#347f78;--pond-light:#8bc9b3}
[hidden]{display:none!important}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--charcoal-deep);color:var(--off-white);font-family:ui-rounded,"Trebuchet MS",system-ui,sans-serif;overflow-x:hidden}body{background:radial-gradient(circle at 50% 10%,#174d39 0,#191b1a 65%);touch-action:manipulation}.page-shell{min-height:100dvh;display:grid;grid-template-rows:1fr auto;padding:max(10px,env(safe-area-inset-top)) max(10px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left));gap:9px}.game-frame{width:min(1180px,100%);height:min(800px,calc(100dvh - 55px));min-height:520px;margin:auto;border:1px solid #d8c58e99;border-radius:25px 8px 25px 8px;background:#191b1a;box-shadow:0 20px 70px #0008,0 0 0 4px #0f4f35;overflow:hidden;display:flex;flex-direction:column}.hud{height:62px;flex:none;display:flex;align-items:center;padding:7px 13px;gap:18px;background:linear-gradient(110deg,#191b1a,#123b2d);border-bottom:1px solid #b9a46a88;z-index:5}.score-block,.best-block{display:grid;line-height:1}.score-block span,.best-block span{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:#d8c58e}.score-block strong{font-size:25px;color:#f7f5ef;font-variant-numeric:tabular-nums}.best-block strong{font-size:17px;color:#d8c58e;font-variant-numeric:tabular-nums}.health{display:flex;gap:5px;margin-left:auto}.plate{width:23px;height:23px;display:grid;place-items:center;color:#d8c58e;background:#1e8451;border:1px solid #d8c58e;border-radius:8px 3px;filter:drop-shadow(0 2px 2px #0008);transition:.25s}.plate.empty{color:#666;background:#292d2b;border-color:#59605b;transform:scale(.82)}.bonus{display:grid;gap:2px;min-width:112px;color:#d8c58e;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.bonus progress{width:100%;height:5px;border:0;background:#303030}.bonus progress::-webkit-progress-value{background:#d8c58e}.bonus progress::-webkit-progress-bar{background:#303030}.hud-actions{display:flex;gap:6px}.icon-btn{border:1px solid #b9a46a77;background:#303030;color:#f7f5ef;width:36px;height:36px;border-radius:11px 4px;cursor:pointer;font-weight:800;font-size:16px}.text-icon{font-size:10px}.icon-btn:hover,.icon-btn[aria-pressed=true]{background:#1e8451;border-color:#d8c58e}.icon-btn:focus-visible,.primary-btn:focus-visible,.secondary-btn:focus-visible,input:focus-visible{outline:3px solid #d8c58e;outline-offset:3px}.stage{position:relative;min-height:0;flex:1;overflow:hidden;background:#347f78;isolation:isolate}canvas{display:block;width:100%;height:100%;touch-action:none;cursor:default}.water-glow{position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 100px #0f4f3577;mix-blend-mode:multiply;z-index:1}.overlay{position:absolute;inset:0;z-index:10;display:grid;place-items:center;padding:18px;background:linear-gradient(#071c1688,#071c16cc);backdrop-filter:blur(4px);opacity:0;pointer-events:none;transition:opacity .25s}.overlay.visible{opacity:1;pointer-events:auto}.overlay[hidden]{display:none}.panel{width:min(520px,96%);padding:24px 28px;text-align:center;background:linear-gradient(145deg,#26312c,#171b19);border:1px solid #d8c58e;border-radius:30px 9px 30px 9px;box-shadow:0 18px 60px #0009,inset 0 0 0 4px #0f4f35;position:relative}.title-panel{padding-top:20px}.emblem{width:55px;height:55px;margin:-5px auto 7px;display:grid;place-items:center;clip-path:polygon(50% 0,94% 25%,94% 75%,50% 100%,6% 75%,6% 25%);background:#d8c58e}.emblem span{width:47px;height:47px;display:block;background:conic-gradient(from 30deg,#1e8451,#0f4f35,#55a779,#1e8451);clip-path:inherit}.eyebrow{margin:4px 0 5px;color:#b9a46a;font-size:10px;font-weight:800;letter-spacing:.22em}.panel h1{font-size:clamp(38px,7vw,68px);letter-spacing:-.06em;line-height:.88;margin:0;text-transform:uppercase;text-shadow:0 4px #0f4f35}.panel h1 em{display:block;color:#55a779;font-style:normal}.subtitle{margin:12px 0;color:#e7e7e3}.pond-vignette{height:80px;margin:14px 0 8px;border-radius:50%;position:relative;overflow:hidden;background:radial-gradient(ellipse,#8bc9b3,#347f78 60%,#0f4f35);border:1px solid #b9a46a55}.pad{position:absolute;width:34px;height:24px;border-radius:50%;background:#1e8451;border:2px solid #b9a46a88}.p1{left:12%;top:22px;transform:rotate(12deg)}.p2{right:15%;bottom:11px;transform:rotate(-16deg)}.mini-turtle{position:absolute;width:45px;height:30px;border-radius:50%;background:#0f4f35;border:3px solid #b9a46a;left:45%;top:28px;animation:swim 3s ease-in-out infinite alternate}.mini-turtle:after{content:"";position:absolute;width:15px;height:12px;border-radius:50%;background:#55a779;right:-12px;top:6px}.fly{position:absolute;right:25%;top:14px;width:7px;height:7px;border-radius:50%;background:#d8c58e;box-shadow:-8px -4px 0 2px #f7f5efaa,8px 4px 0 2px #f7f5efaa;animation:fly 2.4s ease-in-out infinite}.controls-copy{display:flex;justify-content:center;gap:20px;color:#e7e7e3;font-size:12px}.primary-btn,.secondary-btn{font:inherit;font-weight:900;letter-spacing:.04em;cursor:pointer;border-radius:15px 5px;padding:13px 24px}.primary-btn{display:block;width:min(290px,100%);margin:15px auto 9px;border:1px solid #d8c58e;color:#f7f5ef;background:linear-gradient(#269460,#176e48);box-shadow:0 5px 0 #0b3c28}.primary-btn:hover{filter:brightness(1.12);transform:translateY(-1px)}.primary-btn:active{transform:translateY(3px);box-shadow:0 2px 0 #0b3c28}.secondary-btn{border:1px solid #b9a46a88;color:#e7e7e3;background:#303030}.sound-choice{font-size:12px;color:#d8c58e;cursor:pointer}.sound-choice input{accent-color:#1e8451}.flavor{font-size:11px;color:#aaa;margin:14px 0 0;font-style:italic}.compact-panel h2,.gameover-panel h2{margin:8px 0;color:#f7f5ef}.compact-panel p{color:#b9a46a}.small-shell{font-size:38px;color:#1e8451;text-shadow:0 0 0 #d8c58e}.dizzy-shell{font-size:50px;color:#1e8451;position:relative}.dizzy-shell i{font-size:13px;color:#d8c58e;position:absolute;animation:fly 1.5s infinite}.dizzy-shell i:first-child{left:44%;top:-5px}.dizzy-shell i:last-child{right:38%;top:2px;animation-delay:.5s}.final-score{margin:13px auto;display:grid}.final-score span{text-transform:uppercase;color:#b9a46a;font-size:11px;letter-spacing:.15em}.final-score strong{font-size:45px;color:#d8c58e}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:12px 0}.stats div{padding:8px 3px;background:#101813;border-radius:10px 3px}.stats dt{font-size:9px;text-transform:uppercase;color:#8bc9b3}.stats dd{margin:4px 0 0;font-weight:900}.tutorial{position:absolute;z-index:4;left:50%;bottom:20px;transform:translateX(-50%);padding:9px 15px;border:1px solid #d8c58e99;background:#191b1add;color:#f7f5ef;border-radius:14px;font-size:12px;white-space:nowrap;animation:tutorial 5s both}.joystick{display:none;position:absolute;z-index:3;width:92px;height:92px;border:2px solid #d8c58e55;border-radius:50%;background:#191b1a33;pointer-events:none}.joystick-knob{position:absolute;width:42px;height:42px;left:23px;top:23px;border-radius:50%;background:#1e8451aa;border:1px solid #d8c58e}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}footer{text-align:center;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#b9a46a}.footer-shell{color:#55a779;font-size:17px;vertical-align:-1px}@keyframes swim{to{transform:translateX(45px) rotate(8deg)}}@keyframes fly{50%{transform:translate(13px,-9px) rotate(15deg)}}@keyframes tutorial{0%{opacity:0;transform:translate(-50%,12px)}10%,78%{opacity:1;transform:translate(-50%,0)}100%{opacity:0}}
@media(max-width:700px){.page-shell{padding:0;gap:0}.game-frame{height:calc(100dvh - 25px);min-height:460px;border-radius:0;width:100%;box-shadow:none}.hud{height:56px;padding:5px 7px;gap:8px}.best-block{display:none}.score-block strong{font-size:21px}.health{margin-left:auto}.plate{width:20px;height:20px}.icon-btn{width:32px;height:32px}.hud-actions{gap:3px}.bonus{position:absolute;top:61px;left:9px;z-index:6;background:#191b1aaa;padding:5px;border-radius:8px}.panel{padding:18px}.pond-vignette{height:64px}.controls-copy{gap:8px;flex-wrap:wrap}.stats{grid-template-columns:repeat(2,1fr)}footer{height:25px;display:grid;place-items:center}.tutorial{white-space:normal;width:90%;text-align:center;bottom:12px}}
@media(max-height:620px) and (orientation:landscape){.game-frame{height:100dvh;min-height:0}.page-shell{padding:0}.hud{height:48px}.panel{padding:10px 20px}.emblem{width:38px;height:38px}.emblem span{width:32px;height:32px}.panel h1{font-size:34px}.subtitle{margin:5px}.pond-vignette{display:none}.controls-copy{margin:7px}.primary-btn{padding:8px;margin:6px auto}.flavor{margin-top:7px}footer{display:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}}
body.reduced-motion *,body.reduced-motion *:before,body.reduced-motion *:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
.at-logo-mark{display:block;width:62px;height:76px;object-fit:contain;margin:-10px auto 5px;filter:drop-shadow(0 4px 5px #0008)}
footer img{width:18px;height:22px;object-fit:contain;vertical-align:middle;margin-right:5px;filter:drop-shadow(0 2px 2px #0008)}
@media(max-height:620px) and (orientation:landscape){.at-logo-mark{width:38px;height:46px;margin:-5px auto 2px}}
.pond-vignette img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.01)}
.controls-copy span{width:112px;min-height:28px;display:inline-flex;align-items:center;justify-content:center;gap:7px;line-height:1;white-space:nowrap}.controls-copy b{font-size:12px;letter-spacing:.02em}.controls-copy small{font-size:11px;color:#b9a46a;text-transform:uppercase;letter-spacing:.05em}
.desktop-layout{width:min(1460px,100%);min-height:0;margin:auto;display:grid;grid-template-columns:minmax(0,1180px) 250px;gap:16px;align-items:center}.desktop-layout .game-frame{width:100%;margin:0}.mobile-hold{display:none}.leaderboard-card{align-self:stretch;max-height:min(800px,calc(100dvh - 55px));padding:20px 16px;background:linear-gradient(155deg,#19392d,#121b17);border:1px solid #d8c58e88;border-radius:8px 25px 8px 25px;box-shadow:0 18px 60px #0007;overflow:hidden}.leaderboard-card header{padding:0 7px 13px;border-bottom:1px solid #d8c58e44}.leaderboard-card header p{margin:0;color:#8bc9b3;font-size:10px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.leaderboard-card h2{margin:3px 0 0;font-size:29px;text-transform:uppercase}.leaderboard-card ol{list-style:none;counter-reset:rank;margin:12px 0;padding:0}.leaderboard-card li{counter-increment:rank;display:grid;grid-template-columns:24px 1fr auto;gap:8px;align-items:center;min-height:42px;padding:7px;border-bottom:1px solid #ffffff12}.leaderboard-card li:before{content:counter(rank);color:#d8c58e;font-weight:900}.leaderboard-card .leader-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:800}.leaderboard-card .leader-score{color:#8bc9b3;font-variant-numeric:tabular-nums}.leaderboard-card .empty-score{grid-column:1/-1;color:#87938d;font-size:12px;text-align:center}.leaderboard-note{margin:15px 7px 0;color:#87938d;font-size:10px}.mechanics-card{position:absolute;z-index:3;top:12px;right:12px;width:220px;padding:11px 12px;background:#13251fe6;border:1px solid #d8c58e88;border-radius:7px 18px 7px 18px;box-shadow:0 7px 24px #071c1677;backdrop-filter:blur(5px);pointer-events:none}.mechanics-card h2{margin:0 0 7px;color:#d8c58e;font-size:13px;letter-spacing:.09em;text-transform:uppercase}.mechanics-card dl{margin:0;display:grid;gap:5px}.mechanics-card dl div{display:grid;grid-template-columns:72px 1fr;gap:5px}.mechanics-card dt{color:#8bc9b3;font-size:9px;font-weight:900;text-transform:uppercase}.mechanics-card dd{margin:0;color:#e7e7e3;font-size:9px;line-height:1.25}.score-form{margin:10px 0;padding:11px;background:#0d1914;border:1px solid #d8c58e88;border-radius:12px}.score-form label{display:block;margin-bottom:7px;color:#d8c58e;font-weight:900}.score-form div{display:flex;gap:7px}.score-form input{min-width:0;flex:1;padding:10px 12px;border:1px solid #8bc9b3;background:#f7f5ef;color:#16251f;border-radius:8px;font:800 16px ui-rounded,"Trebuchet MS",sans-serif;text-transform:uppercase}.score-form .secondary-btn{padding:8px 15px}.score-form small{display:block;margin-top:4px;color:#87938d;text-align:left}
.leaderboard-card .empty-score:before{display:none}
.guide-overlay{padding:12px}.guide-panel{width:min(850px,98%);max-height:calc(100% - 14px);padding:18px 22px;overflow:auto;text-align:left}.guide-panel>header{position:sticky;top:-18px;z-index:2;display:flex;align-items:center;justify-content:space-between;margin:-18px -22px 14px;padding:16px 20px 12px;background:linear-gradient(#26312c 82%,transparent)}.guide-panel>header h2{margin:0;font-size:30px;text-transform:uppercase}.guide-panel>header .eyebrow{margin:0}.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.guide-grid article{min-width:0;overflow:hidden;background:#0f1915;border:1px solid #d8c58e44;border-radius:15px 5px;padding:9px}.guide-grid h3{margin:8px 2px 4px;color:#8bc9b3;font-size:13px;text-transform:uppercase}.guide-grid p{margin:0 2px 4px;color:#d3ddd7;font-size:11px;line-height:1.35}.guide-picture{position:relative;height:92px;overflow:hidden;border-radius:10px 3px;background:linear-gradient(#a9d6c8 0 25%,#347f78 26% 100%)}.guide-picture img{display:block}.food-picture img,.fry-picture img,.fly-picture img{position:absolute;width:300%;height:300%;max-width:none}.food-picture img{left:-200%;top:-100%}.fry-picture img{left:-100%;top:0}.fly-picture img{left:-100%;top:-100%}.kelp-picture img,.log-picture img{width:100%;height:100%;object-fit:contain}.berry-picture img{position:absolute;width:360%;max-width:none;left:-28%;top:-170%}.guide-panel>.primary-btn{margin-bottom:4px}
@media(max-width:1050px) and (min-width:801px){.guide-grid{grid-template-columns:repeat(2,1fr)}.guide-picture{height:80px}}
.guide-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin:0 0 12px}.guide-tabs button{padding:9px 7px;border:1px solid #587164;background:#111b17;color:#aebbb4;border-radius:8px 3px;font:800 11px ui-rounded,"Trebuchet MS",sans-serif;text-transform:uppercase;cursor:pointer}.guide-tabs button.active{border-color:#d8c58e;background:#1e8451;color:#fff}.guide-pages{min-height:385px}.guide-page{animation:none}.guide-hero{display:grid;grid-template-columns:42% 1fr;gap:18px;align-items:center;padding:14px;background:#0f1915;border:1px solid #d8c58e44;border-radius:18px 6px}.guide-hero canvas,.item-grid canvas{display:block;width:100%;height:116px;background:linear-gradient(#aed9cd 0 24%,#438e87 25% 100%);border-radius:12px 4px;cursor:default}.guide-hero h3,.item-grid h3{margin:0 0 5px;color:#8bc9b3;font-size:15px;text-transform:uppercase}.guide-hero p,.item-grid p{margin:0;color:#d3ddd7;font-size:12px;line-height:1.4}.mechanic-list{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:11px 0 0}.mechanic-list div{padding:11px;background:#101814;border-left:3px solid #1e8451}.mechanic-list dt{margin-bottom:4px;color:#d8c58e;font-size:11px;font-weight:900;text-transform:uppercase}.mechanic-list dd{margin:0;color:#cbd6d0;font-size:11px;line-height:1.35}.item-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.item-grid article{display:grid;grid-template-columns:170px 1fr;grid-template-rows:auto 1fr;column-gap:12px;min-height:174px;padding:10px;background:#0f1915;border:1px solid #d8c58e44;border-radius:16px 5px}.item-grid canvas{grid-row:1/3;width:170px;height:152px;align-self:center}.item-grid h3{align-self:end}.guide-footer{display:grid;grid-template-columns:auto auto 1fr auto;align-items:center;gap:9px;margin-top:13px}.guide-footer .secondary-btn{padding:9px 14px}.guide-footer .secondary-btn:disabled{opacity:.35;cursor:not-allowed}.guide-footer span{color:#8fa198;font-size:11px;text-align:center}.guide-footer .primary-btn{width:auto;margin:0;padding:10px 22px}.guide-page[hidden]{display:none!important}
@media(max-width:1050px) and (min-width:801px){.item-grid article{grid-template-columns:125px 1fr}.item-grid canvas{width:125px}.guide-panel{width:min(760px,98%)}.guide-pages{min-height:405px}}
.guide-hero canvas,.item-grid canvas{height:auto;aspect-ratio:17/8;object-fit:contain}
.page-shell{min-height:calc(100dvh - 45px);grid-template-rows:1fr auto}.transition-banner{width:100%;min-height:45px;margin:0;padding:10px 18px;display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;text-align:center;background:#2b2f2d;border:0;border-top:3px solid #1e8451;border-bottom:3px solid #b9a46a;border-radius:0;box-shadow:0 5px 20px #0005;color:#d9dfdc}.transition-banner strong{font-size:13px;letter-spacing:.055em;text-transform:uppercase}.transition-banner a{color:#d8c58e;text-decoration-color:#55a779;text-decoration-thickness:2px;text-underline-offset:3px}.transition-banner a:hover,.transition-banner a:focus-visible{color:#f4e6af}.transition-banner span{font-size:11px;color:#bcc7c1}
@media(max-width:800px){.transition-banner{position:relative;z-index:3;min-height:76px;padding:10px 14px;gap:4px}.transition-banner strong,.transition-banner span{display:block;width:100%}.mobile-hold{height:calc(100dvh - 76px)}}
@media(max-width:1180px) and (min-width:801px){.desktop-layout{grid-template-columns:minmax(0,1fr) 220px}.leaderboard-card{padding-inline:10px}.mechanics-card{width:190px}.mechanics-card dl div{grid-template-columns:62px 1fr}}
@media(max-width:800px){body{overflow:hidden}.page-shell{display:block;padding:0}.desktop-layout,.page-shell>footer{display:none}.mobile-hold{position:relative;display:grid;width:100vw;height:100dvh;place-items:end center;overflow:hidden;background:#10251d}.mobile-hold>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.65) saturate(.88)}.mobile-hold:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 20%,#071c16e8 82%)}.mobile-hold>div{position:relative;z-index:1;width:100%;padding:34px 24px max(42px,env(safe-area-inset-bottom));text-align:center}.mobile-hold div img{width:58px;height:58px}.mobile-hold p{margin:5px 0;color:#d8c58e;font-size:11px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.mobile-hold h1{max-width:430px;margin:8px auto;font-size:clamp(30px,10vw,48px);line-height:.98;text-transform:uppercase}.mobile-hold span{color:#c8d8d0;font-size:13px}}
