@font-face{font-family:Archivo;src:url('../../game/fonts/archivo.woff2') format('woff2');font-weight:100 900;font-display:swap}@font-face{font-family:Geist;src:url('../../game/fonts/geist-mono.woff2');font-display:swap}
:root{--ink:#062a32;--cream:#f0eddd;--muted:#a4c4c3;--line:#b4ded52b;--mint:#b8f1d7;font-family:Archivo,Arial,sans-serif;color:var(--cream);background:#031c25;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button,a{color:inherit;-webkit-tap-highlight-color:transparent;touch-action:manipulation}button{cursor:pointer;border:0;background:none}button:disabled{cursor:default;opacity:.45}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #eacd87;outline-offset:5px}a{text-decoration:none}p,h1,h2,h3{margin:0}button{text-align:left}button,strong,a,input{min-width:0}button:hover:not(:disabled){filter:brightness(1.13)}[hidden]{display:none!important}.eyebrow{font-family:Geist,monospace;font-size:10px;letter-spacing:.16em;line-height:1.5}.mast{height:86px;padding:0 4%;display:flex;align-items:center;gap:28px;border-bottom:1px solid var(--line);background:#041c24}.brand img{display:block}.mast-place{font-family:Geist,monospace;font-size:10px;letter-spacing:.1em}.mast-place i{display:block;font:11px Archivo;margin-top:5px;color:var(--muted);letter-spacing:0}.back{margin-left:auto;font-size:12px}.cove{height:690px;position:relative;isolation:isolate;overflow:hidden;background:#075566}.reef-film{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-3;filter:saturate(.8)}.cove:before{content:'';position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#001e34d4,transparent 70%),linear-gradient(0deg,#03262ded,transparent 45%,#03394b44)}.shafts{position:absolute;inset:-40%;z-index:-1;background:repeating-conic-gradient(from 160deg at 65% 0%,transparent 0 8deg,#bcfff113 9deg,transparent 12deg 21deg);animation:drift 18s ease-in-out infinite alternate;pointer-events:none}@keyframes drift{to{transform:translateX(4%) rotate(4deg)}}.introduction{position:absolute;top:52px;left:6%;max-width:390px;z-index:2;pointer-events:none}.introduction .eyebrow{color:#c4eade}.introduction h1{font-size:clamp(42px,4.6vw,66px);font-weight:600;line-height:1.03;letter-spacing:-.06em;margin:20px 0}.introduction>p:last-child{font-size:15px;line-height:1.65;color:#cfe2dc}.fish-home{position:absolute;inset:8% 3% 13% 29%;z-index:1}#fish-stage{width:100%;height:100%}#fish-stage canvas{display:block;width:100%;height:100%;pointer-events:none}#fish-fallback{position:absolute;width:60%;left:20%;top:20%;object-fit:contain}.fish-shadow{position:absolute;bottom:12%;left:35%;width:33%;height:25px;background:#00141f60;filter:blur(16px);border-radius:50%;pointer-events:none}.fish-speech{position:absolute;top:29%;right:8%;max-width:230px;font-size:15px;line-height:1.5;background:#032630c9;border:1px solid #b4ded53b;border-radius:20px 20px 20px 3px;padding:15px 20px;z-index:3;transition:opacity .3s;pointer-events:none}.identity{position:absolute;left:6%;bottom:111px;z-index:2}.identity>div{display:flex;align-items:baseline;gap:20px;margin:7px 0}.identity h2{font-size:38px;letter-spacing:-.04em;font-weight:550;max-width:320px;overflow-wrap:anywhere}.identity button{font-size:11px;border-bottom:1px solid #b4ded588;padding:0 0 3px}.identity>span{font-size:12px;color:#bbd4d0}.identity i{padding:0 9px}.care-strip{position:absolute;right:6%;bottom:115px;display:flex;gap:35px;z-index:2}.care-strip>div>span{font:500 12px/1.4 Arial,sans-serif;letter-spacing:0;color:#bad0cc}.care-strip strong{display:block;font:500 25px/1 Arial,sans-serif;font-variant-numeric:lining-nums tabular-nums;letter-spacing:0;margin-top:8px}.pips{display:flex;gap:7px;margin-top:15px}.pips i{width:13px;height:13px;border:1px solid #cbeadd80;border-radius:50%}.pips i.full{background:#b8f1d7;box-shadow:0 0 13px #b8f1d744}.cove-tools{position:absolute;bottom:25px;left:6%;right:6%;display:flex;justify-content:space-between;align-items:center;gap:15px;border-top:1px solid var(--line);padding-top:20px;font-size:10px;color:#afc7c5}.cove-tools button{padding:0;border-bottom:1px solid #b4ded55b;padding-bottom:3px}.habitat-find{position:absolute;right:5%;bottom:245px;display:flex;gap:10px;align-items:center;pointer-events:none}.habitat-find>span{font-size:56px;color:#e7d894;text-shadow:0 0 26px #fff29299}.habitat-find p{font-size:12px;line-height:1.6}.habitat-find small{font-size:10px;color:#c4d4c8}#morsels{position:absolute;inset:0;pointer-events:none}#morsels i{position:absolute;top:15%;left:50%;width:7px;height:11px;border-radius:40%;background:#bcdb7a;box-shadow:0 0 14px #f0f8b277;animation:food-fall 2.2s ease-out both}#morsels i:nth-child(2){margin-left:15px;animation-delay:.1s}#morsels i:nth-child(3){margin-left:-18px;animation-delay:.3s}@keyframes food-fall{0%{opacity:0;transform:translateY(-15px) rotate(0)}20%{opacity:1}90%{opacity:1}100%{opacity:0;transform:translateY(100px) rotate(90deg)}}#play-light{position:absolute;top:35%;left:45%;width:54px;height:54px;border-radius:50%;border:1px solid #ebfbd586;background:radial-gradient(circle,#fff7b8 2px,#c4f6b222 16px,transparent 30px);box-shadow:0 0 28px #c4f6b24a;z-index:4;transition:top .7s,left .7s;animation:light-pulse 2s ease-in-out infinite}@keyframes light-pulse{50%{box-shadow:0 0 40px #c4f6b287}}.companion-desk{max-width:1440px;margin:auto;padding:0 6% 55px}.desk-tabs{display:flex;gap:40px;border-bottom:1px solid var(--line)}.desk-tabs>:is(button,a){display:flex;align-items:center;gap:13px;padding:27px 0;font:10px Geist;color:#829e9f;border-bottom:2px solid transparent}.desk-tabs>:is(button,a) span{font:16px Archivo;color:#b3c7c5}.desk-tabs>:is(button,a)[aria-pressed=true]{border-color:#bee6cc;color:#c8e5cf}.desk-tabs>:is(button,a)[aria-pressed=true] span{color:var(--cream)}.desk-tabs b{font:10px Geist;background:#bfd8c315;color:#bcd3c8;border-radius:50%;width:20px;height:20px;display:grid;place-items:center}.desk-panel{padding-top:42px}.panel-heading{margin-bottom:28px}.panel-heading .eyebrow{color:#83aaa8}.panel-heading h2{font-size:32px;letter-spacing:-.045em;font-weight:500;margin:9px 0 13px}.panel-heading>p:last-child{font-size:14px;color:#a9c2bf;line-height:1.65}.care-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.care-action{position:relative;padding:24px 24px 24px 126px;min-height:170px;background:linear-gradient(135deg,#15474766,#0a313e44);border:1px solid var(--line);border-radius:3px;transition:background .3s,transform .3s}.care-action:hover{transform:translateY(-3px);background:#174e5055}.care-action strong,.care-action>span:not(.object-art),.care-action small{display:block}.care-action strong{font-size:18px;font-weight:500;letter-spacing:-.02em;line-height:1.3}.care-action>span:not(.object-art){font-size:11px;color:#abc8c0;margin-top:9px;line-height:1.5}.care-action small{font-size:11px;color:#d5e7ce;margin-top:18px}.object-art{position:absolute;left:16px;top:25px;width:95px;height:110px;filter:drop-shadow(0 0 20px #9fecd128)}.object-art svg{width:100%;height:100%}.kelp svg{fill:#82b991;stroke:#c5dcad;stroke-width:1.3}.plankton svg{fill:#bcdcc8;stroke:#dbf6b5;stroke-width:1.2}.light svg{fill:#ece6b1;stroke:#c3d4ba;stroke-width:.7}.light svg circle{fill:none;stroke-dasharray:1 6;stroke-width:1.5}.care-note{font-size:12px;color:#95b4ac;margin-top:23px;min-height:22px}.route-list{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.route{position:relative;padding:0 0 23px;border:1px solid var(--line);border-radius:80px 80px 3px 3px;overflow:hidden;background:#0a2e36}.route[aria-pressed=true]{border-color:#c2e4bd;box-shadow:0 0 0 1px #c2e4bd}.route-window{display:block;height:155px;background:linear-gradient(0deg,#0a2e36,transparent 60%),url('../film/reef.jpg') 43% 55%/cover;transition:transform 1s}.garden .route-window{background-position:85% 65%;filter:hue-rotate(-25deg)}.deep .route-window{background-position:20% 60%;filter:brightness(.55) hue-rotate(25deg)}.route>span:nth-child(2){display:block;padding:6px 22px 0}.route small{font:9px Geist;letter-spacing:.08em;color:#accdc4}.route strong{display:block;font-size:22px;letter-spacing:-.03em;font-weight:500;margin:8px 0}.route em{font-size:11px;font-style:normal;color:#95b4af}.route>b{position:absolute;right:18px;top:18px;font-size:18px;color:#dae7cd}.route.locked>b{font-size:11px;border:1px solid var(--line);padding:5px 8px;border-radius:20px;background:#062530bb}.preparation{display:flex;gap:30px;justify-content:space-between;align-items:center;margin-top:30px;padding-top:25px;border-top:1px solid var(--line)}fieldset{border:0;margin:0;padding:0;display:flex;gap:18px;flex-wrap:wrap}legend{font-size:13px;margin-bottom:17px}fieldset label{font-size:12px;display:flex;align-items:center;gap:6px}input[type=radio]{accent-color:#bde3b4}.primary{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;background:#dce9c9;color:#13353c;font-size:13px;font-weight:600;padding:16px 22px;border-radius:3px;min-height:48px}.depart p{font-size:11px;color:#b2c7bd;margin-bottom:12px;max-width:330px;line-height:1.5}.depart .primary{width:100%}.text-link{font-size:12px;text-decoration:underline;text-underline-offset:5px;padding:10px 0}.pilot-note{font-size:10px;color:#839f9d;line-height:1.7;margin-top:22px;max-width:700px}.empty-book{border-block:1px solid var(--line);padding:24px 0;color:#a9c2bf}.empty-book>span{font-size:38px;color:#dbd2a4;display:block;margin-bottom:13px}.empty-book p{font-size:18px;margin-bottom:12px}#journal:has(.journal-card){display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.journal-card{background:#e9e4cf;color:#23434a;padding:13px 13px 22px;transform:rotate(-1deg);transition:transform .3s}.journal-card:nth-child(even){transform:rotate(1deg)}.journal-card:hover{transform:rotate(0) translateY(-4px)}.journal-card .route-window{height:160px;border-radius:2px;background-image:linear-gradient(0deg,#06394366,transparent),url('../film/reef.jpg')}.journal-card small{display:block;font:9px Geist;margin:16px 5px 10px;letter-spacing:.06em}.journal-card strong{display:block;font-size:21px;font-weight:500;letter-spacing:-.04em;margin:0 5px}.journal-card p{margin:10px 5px 0;font-size:12px;line-height:1.55;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.page-footer{border-top:1px solid var(--line);padding:25px 6%;display:flex;align-items:center;gap:30px;font-size:11px}.page-footer>span{white-space:nowrap}.page-footer p{color:#839f9d;font-size:10px;line-height:1.6}.page-footer a{margin-left:auto;white-space:nowrap}dialog{padding:30px;border:1px solid #8daea2;background:#0b3038;color:var(--cream);max-width:min(650px,calc(100vw - 28px));max-height:92dvh;overflow:auto;border-radius:6px}dialog::backdrop{background:#001722cc;backdrop-filter:blur(7px)}dialog h2{font-size:30px;font-weight:500;letter-spacing:-.04em;margin:14px 0 25px}#rename-dialog label{display:flex;flex-direction:column;gap:10px;font-size:12px}#name-input{color:var(--cream);background:#062630;border:1px solid var(--line);padding:15px;font-size:20px;width:100%;margin-bottom:25px}#rename-dialog form>div{display:flex;justify-content:space-between;gap:25px}#note-dialog{padding:0;background:#e9e4cf;color:#244049;width:620px}.close-note{position:absolute;right:12px;top:8px;font-size:30px;z-index:2;background:#e9e4cfbb;width:34px;text-align:center;border-radius:50%}#postcard .card-picture{height:205px;background:url('../film/reef.jpg') center 60%/cover;position:relative}#postcard .card-picture img{position:absolute;width:170px;height:140px;object-fit:contain;left:calc(50% - 85px);top:35px;filter:drop-shadow(0 8px 15px #001c3277)}.card-copy{padding:28px 35px}.card-copy .eyebrow{color:#476863}.card-copy h2{margin:10px 0 19px;font-size:34px}.card-copy .story{font-size:16px;line-height:1.7;font-family:var(--font-body,Archivo,Arial,sans-serif)}.card-copy .signature{margin-top:20px;font-size:12px}.receipt{border-top:1px solid #24404933;margin-top:22px;padding-top:15px;display:grid;gap:6px;font:9px Geist;line-height:1.5;overflow-wrap:anywhere;color:#506b69}.note-actions{padding:0 35px 25px;display:flex;flex-wrap:wrap;gap:13px;align-items:center}.note-actions .primary{background:#234b4b;color:#f0eddd}.note-actions>span{font-size:9px;color:#526c68}.paused .shafts,.paused #play-light{animation-play-state:paused}
@media(min-width:1500px){.cove{height:760px}.fish-home{right:8%;left:35%}}
@media(max-width:1050px){.care-action{padding:130px 20px 23px}.object-art{left:20px;top:10px}.fish-speech{right:5%;top:40%;max-width:180px;font-size:13px}.introduction{max-width:330px}.care-strip{gap:22px}.route strong{font-size:20px}.preparation{align-items:flex-start;gap:20px}fieldset{gap:12px}.identity h2{max-width:240px}}
@media(max-width:650px){.mast{height:74px;padding:0 20px;gap:17px;flex-wrap:wrap}.brand img{width:82px;height:auto}.mast-place{font-size:8px}.mast-place i{font-size:10px}.back{font-size:10px;max-width:90px;line-height:1.6;text-align:right}.cove{height:790px}.introduction{left:24px;top:30px}.introduction h1{font-size:44px;margin:15px 0}.introduction>p:last-child{font-size:13px}.introduction .eyebrow{font-size:8px}.reef-film{object-position:64% center}.cove:before{background:linear-gradient(180deg,#033044aa,transparent 44%,#03262df2 92%)}.fish-home{inset:190px -15% 190px}.fish-speech{top:265px;right:22px;max-width:160px;padding:11px 15px;font-size:12px}.identity{bottom:185px;left:24px}.identity h2{font-size:34px;max-width:230px}.identity>div{gap:15px}.identity .eyebrow{font-size:8px}.care-strip{left:24px;right:24px;bottom:98px;gap:38px}.care-strip>div>span{font-size:11px}.care-strip strong{font-size:20px}.pips{margin-top:12px}.pips i{width:11px;height:11px}.cove-tools{left:24px;right:24px;bottom:22px;align-items:flex-start;font-size:9px}.cove-tools span{max-width:175px;text-align:right;line-height:1.5}.habitat-find{right:22px;bottom:220px}.habitat-find>span{font-size:45px}.habitat-find p{display:none}.companion-desk{padding:0 20px 35px}.desk-tabs{gap:0;justify-content:space-between}.desk-tabs>:is(button,a){flex-direction:column;align-items:flex-start;gap:8px;font-size:9px;padding:22px 0;position:relative}.desk-tabs>:is(button,a) span{font-size:13px}.desk-tabs b{position:absolute;top:16px;left:22px;font-size:8px;width:16px;height:16px}.desk-panel{padding-top:29px}.panel-heading h2{font-size:29px}.panel-heading>p:last-child{font-size:12px}.care-actions{gap:9px}.care-action{padding:88px 10px 15px;min-height:220px}.object-art{width:65px;height:75px;top:5px;left:calc(50% - 32px)}.care-action strong{font-size:15px}.care-action>span:not(.object-art){font-size:10px}.care-action small{font-size:10px;margin-top:13px}.care-note{font-size:11px;line-height:1.5}.route-list{grid-template-columns:1fr;gap:13px}.route{display:flex;align-items:center;min-height:114px;border-radius:3px;padding:0 28px 0 0}.route-window{width:100px;min-width:100px;height:118px;border-radius:50% 50% 0 0}.route>span:nth-child(2){padding:0 10px 0 16px}.route strong{font-size:20px}.route small{font-size:8px}.route em{font-size:10px}.route>b{right:8px;top:10px}.route.locked>b{padding:3px 5px;font-size:9px}.preparation{flex-direction:column;gap:25px}.depart{width:100%}fieldset{gap:12px;row-gap:16px}fieldset label{font-size:11px}.pilot-note{font-size:9px}#journal:has(.journal-card){grid-template-columns:1fr}.journal-card .route-window{width:100%;height:170px}.journal-card{max-width:400px}.page-footer{flex-wrap:wrap;gap:15px;padding:25px 24px}.page-footer p{order:3;flex-basis:100%;font-size:9px}.card-copy{padding:23px}.card-copy h2{font-size:29px}.card-copy .story{font-size:15px}.note-actions{padding:0 23px 23px}.card-copy .receipt{font-size:8px}#postcard .card-picture{height:165px}#postcard .card-picture img{top:15px}dialog{padding:23px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}

/* Quiet instrument glass and pools of light keep the small details legible. */
.identity{background:#052a339e;border:1px solid #c7e6d522;border-radius:5px;padding:16px 22px;backdrop-filter:blur(8px)}
.care-strip{background:#052a33b5;border:1px solid #c7e6d529;border-radius:5px;padding:18px 24px;backdrop-filter:blur(8px)}
.object-art:before{content:'';position:absolute;inset:10px -5px;border-radius:50%;background:radial-gradient(ellipse,#94d6a420,transparent 70%);z-index:-1;transition:opacity .3s,transform .3s}
.plankton .object-art:before{background:radial-gradient(ellipse,#9ddddd2e,transparent 70%)}.light .object-art:before{background:radial-gradient(ellipse,#f7df922a,transparent 70%)}
.care-action:hover .object-art:before{transform:scale(1.3)}
@media(max-width:650px){.identity{padding:10px 14px;bottom:177px;max-width:calc(100% - 100px)}.identity h2{max-width:190px}.care-strip{padding:13px 15px;gap:30px;bottom:86px}.identity>span{font-size:11px}}
/* A companion's finds become a place, with each silhouette drawn for this world. */
.wallet-strip{display:flex;justify-content:space-between;align-items:center;gap:24px;max-width:1200px;margin:auto;padding:24px 40px;background:#072e36;border-bottom:1px solid #8ba9a333}.wallet-strip p{margin:0 0 7px}.wallet-strip small{color:#a5c3bd}.wallet-strip button{flex-shrink:0}.wallet-dialog-inner{padding:35px;max-width:540px}.wallet-dialog-inner h2{font:38px Georgia}.wallet-dialog-inner p{line-height:1.6}.wallet-buttons{display:flex;gap:14px;margin-top:24px}.wallet-dialog-inner select{color:inherit;background:#123a42;padding:10px;border:1px solid #90b4ae}.desk-tabs{overflow-x:auto}.desk-tabs :is(button,a){min-width:130px}.home-choices{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.habitat-choice{display:flex;flex-direction:column;gap:14px;text-align:left;padding:22px;background:linear-gradient(160deg,#204e50,#092c36);border:1px solid #8cbab547;border-radius:90px 90px 10px 10px;min-height:270px}.habitat-choice[aria-pressed=true]{border-color:#e6dca5;box-shadow:inset 0 0 30px #b8d7b514}.habitat-choice:disabled{opacity:.5}.habitat-art{display:block;align-self:center;font:96px Georgia;height:125px;color:#e0d3a3;text-shadow:0 0 32px #8edbd666}.habitat-choice strong{font:22px Georgia}.habitat-choice small{line-height:1.5;color:#c1d1c9}.home-choices .light .habitat-art{color:#aef8df}.home-choices .tiny-life .habitat-art{color:#9bc68a}.habitat-scenery{position:absolute;bottom:50px;left:22%;width:58%;height:250px;pointer-events:none;z-index:1}.habitat-scenery span{position:absolute;display:none}.home-shell{width:110px;height:75px;bottom:0;left:25%;border-radius:70% 70% 18% 18%;background:repeating-conic-gradient(from -60deg at 50% 100%,#e3d7ac 0deg 12deg,#b9a582 13deg 17deg);box-shadow:0 14px 22px #03242faa;transform:rotate(-12deg)}.home-glow{width:54px;height:75px;bottom:95px;left:56%;border-radius:55% 55% 35% 35%;background:radial-gradient(ellipse at 40% 25%,#d2ffed,#6dcbb766 50%,transparent 70%);box-shadow:0 0 65px 25px #83e8c936;animation:home-drift 5s ease-in-out infinite}.home-frond{bottom:0;width:45px;height:170px;border:8px solid #689777;border-width:0 0 0 11px;border-radius:70% 20% 80% 10%;transform-origin:bottom;animation:home-sway 5s ease-in-out infinite;filter:drop-shadow(12px 8px 0 #3a7471)}.home-frond.one{left:20%}.home-frond.two{left:75%;height:130px;animation-delay:-2s}.home-frond.three{left:80%;height:100px;animation-delay:-3s}[data-habitat=shells] .home-shell,[data-habitat=light] .home-glow,[data-habitat=tiny-life] .home-frond{display:block}[data-habitat=light] .cove{background:#06233c}[data-habitat=light] .reef-film{filter:brightness(.65) hue-rotate(20deg)}.habitat-find{cursor:pointer;text-align:left;z-index:4}.shore-scene{height:350px;position:relative;overflow:hidden;border-radius:140px 140px 14px 14px;background:linear-gradient(180deg,#0c647180,#03344550),url('../film/reef.jpg') center 60%/cover;box-shadow:inset 0 -100px 100px #052c37}.shore-sun{position:absolute;left:25%;top:-60px;width:55%;height:340px;background:conic-gradient(from 150deg at 50% 0%,transparent,#cdf3da44 5deg,transparent 13deg,#c7e7d422 18deg,transparent 25deg);filter:blur(7px)}.fishing-line{position:absolute;left:53%;top:-12%;height:64%;width:1px;background:#e9e6c9c4;transform:rotate(-14deg);transform-origin:top}.float{position:absolute;left:58%;top:45%;width:20px;height:36px;border-radius:50%;background:linear-gradient(#e8cf91 0 50%,#d56e49 51%);transform:rotate(12deg);box-shadow:0 7px 15px #032634;animation:bob 3.4s ease-in-out infinite}.float i{position:absolute;bottom:-30px;height:32px;left:8px;width:2px;background:#ced3af80}.shore-ripple{position:absolute;width:100px;height:18px;border:1px solid #d7e9d98c;border-radius:50%;left:calc(58% - 40px);top:53%;animation:ripple 3.4s ease-out infinite}.shore-caption{position:absolute;left:35px;bottom:24px}.shore-caption span{font:11px monospace;letter-spacing:.23em;color:#b4d3ca}.shore-caption p{font:30px Georgia;margin:12px 0}.shore-controls{display:flex;align-items:center;gap:24px;margin-top:24px}.shore-controls p,#shore-status{color:#c1d4cb;line-height:1.6}.casting .float{animation:cast .8s ease-in-out infinite}.caught-shell{display:flex;gap:30px;align-items:center;margin:30px 0;padding:30px;background:linear-gradient(125deg,#315951,#103b43);border:1px solid #dfd5a05c;border-radius:12px}.caught-shell h3{font:32px Georgia;margin:7px 0}.caught-shell p{line-height:1.6;max-width:630px}.catch-object{font:110px Georgia;color:#e4ddb3;text-shadow:0 0 40px #cff8d55c}.pilot-note a{color:#dae3c5}.note-actions{flex-wrap:wrap}.fish-home{z-index:2}@keyframes bob{50%{translate:0 7px;rotate:-9deg}}@keyframes ripple{0%{scale:.5;opacity:0}20%{opacity:1}100%{scale:1.5;opacity:0}}@keyframes cast{50%{translate:0 25px;rotate:25deg}}@keyframes home-drift{50%{translate:-10px 18px}}@keyframes home-sway{50%{rotate:8deg}}.paused .habitat-scenery span,.paused .float,.paused .shore-ripple{animation-play-state:paused}
@media(max-width:700px){.wallet-strip{padding:22px;flex-direction:column;align-items:stretch}.home-choices{grid-template-columns:1fr 1fr;gap:12px}.habitat-choice{padding:20px 15px;min-height:250px}.habitat-choice strong{font-size:19px}.desk-tabs :is(button,a){min-width:128px}.shore-scene{height:280px;border-radius:100px 100px 12px 12px}.shore-caption{left:22px}.shore-caption p{font-size:25px}.shore-controls{align-items:stretch;flex-direction:column;gap:5px}.caught-shell{padding:22px;gap:15px;flex-direction:column;align-items:flex-start}.catch-object{font-size:65px}.wallet-buttons{flex-direction:column}.wallet-dialog-inner{padding:24px}.habitat-scenery{left:5%;width:90%;bottom:165px;height:150px}.home-shell{scale:.7}.home-frond{height:100px}}
@media(prefers-reduced-motion:reduce){.habitat-scenery span,.float,.shore-ripple{animation:none!important}}
.habitat-art{width:115px;position:relative;font-size:0}.habitat-art svg{width:100%;height:100%;filter:drop-shadow(0 10px 10px #032c32)}.home-glow{background:radial-gradient(ellipse at 50% 35%,#e5ffd5, #88d4b677 24%,#12392d11 62%);border:1px solid #d3d8ac5c;border-radius:35% 35% 22% 22%;width:38px;height:60px}.home-glow:before{content:'';position:absolute;width:20px;height:15px;border:3px solid #b3b48c;border-radius:50% 50% 0 0;top:-13px;left:6px}
/* Activities belong in view immediately, including after wallet sign-in. */
.activity-launcher{position:sticky;top:0;z-index:10;display:flex;justify-content:center;gap:8px;padding:10px 4%;background:#082c34f5;border-bottom:1px solid #b4ded543;backdrop-filter:blur(12px)}.activity-launcher :is(button,a){padding:12px 20px;border:1px solid #aac8b445;border-radius:5px;font-size:13px;min-height:44px;white-space:nowrap;color:#d8e7d7}.activity-launcher button[aria-pressed=true]{background:#dce9c9;color:#13353c;border-color:#dce9c9}.desk-panel{scroll-margin-top:80px}.habitat-find{pointer-events:auto}
@media(max-width:700px){.activity-launcher{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:8px 12px;gap:5px}.activity-launcher :is(button,a){padding:9px 4px;font-size:11px;min-height:40px;white-space:normal;text-align:center}.desk-panel{scroll-margin-top:110px}}
/* The companion is an activity screen: fish and usable controls share the viewport. */
.mast{height:58px;padding:0 24px}.mast-place i{display:none}.brand img{width:92px;height:auto}.activity-launcher{height:60px;padding:8px 20px;gap:6px}.activity-launcher :is(button,a){padding:10px 18px;min-height:42px}
main{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(370px,.88fr);grid-template-areas:'fish account' 'fish desk' 'footer footer';grid-template-rows:auto 1fr auto;align-items:start;max-width:1800px;margin:auto}
.cove{grid-area:fish;height:calc(100svh - 118px);min-height:420px;position:sticky;top:60px;border-right:1px solid var(--line)}.wallet-strip{grid-area:account;padding:14px 22px;gap:15px;width:100%;min-width:0;margin:0;border-bottom:1px solid var(--line);align-items:center}.wallet-strip p{font-size:11px;line-height:1.5;margin-bottom:4px;overflow-wrap:anywhere}.wallet-strip small{font-size:9px;line-height:1.4}.wallet-strip .primary{padding:10px 13px;font-size:11px;min-height:40px;gap:8px}.wallet-strip #disconnect{font-size:11px;white-space:nowrap}.wallet-strip>div{min-width:0;flex:1}
.companion-desk{grid-area:desk;width:100%;min-width:0;margin:0;padding:22px;max-height:calc(100svh - 225px);overflow-y:auto;overscroll-behavior:contain;scrollbar-color:#567f77 #082c34;scrollbar-width:thin}.desk-tabs{display:none}.desk-panel{padding-top:0;scroll-margin-top:0}.panel-heading{margin-bottom:18px}.panel-heading .eyebrow{font-size:8px}.panel-heading h2{font-size:27px;margin:7px 0 10px}.panel-heading>p:last-child{font-size:12px;line-height:1.5}.care-actions{grid-template-columns:1fr;gap:10px}.care-action{padding:16px 18px 16px 98px;min-height:94px;border-radius:10px}.care-action .object-art{left:18px;top:10px;width:64px;height:72px}.care-action strong{font-size:18px}.care-action>span:not(.object-art){margin-top:6px;font-size:12px}.care-action small{display:none}.care-note{margin-top:14px;font-size:11px;line-height:1.5}
.introduction{top:25px;left:25px;max-width:85%}.introduction .eyebrow,.introduction>p:last-child{display:none}.introduction h1{font-size:27px;margin:0;letter-spacing:-.04em}.fish-home{inset:55px -3% 125px}.fish-speech{top:85px;right:22px;font-size:12px;max-width:180px;padding:12px 15px}.identity{left:22px;bottom:90px;padding:12px!important;max-width:55%}.identity h2{font-size:28px;max-width:220px}.identity>div{gap:12px}.identity>span{font-size:10px}.identity .eyebrow{font-size:8px}.care-strip{right:20px;bottom:95px;padding:12px!important;gap:16px}.care-strip>div>span{font-size:11px}.pips{gap:4px;margin-top:10px}.pips i{width:9px;height:9px}.care-strip strong{font-size:20px}.cove-tools{left:24px;right:24px;bottom:20px;gap:12px;font-size:9px}.habitat-scenery{left:12%;width:70%;bottom:130px;height:160px}.habitat-find{right:22px;bottom:175px}.habitat-find p{display:none}.habitat-find>span{font-size:38px}.page-footer{grid-area:footer;padding:16px 24px;font-size:10px}.page-footer p{font-size:9px}
.route-list{gap:10px}.route{border-radius:35px 35px 4px 4px;padding-bottom:14px}.route-window{height:75px}.route>span:nth-child(2){padding:6px 12px 0}.route strong{font-size:17px}.route small{font-size:8px}.route em{font-size:10px}.route>b{font-size:13px;right:8px;top:8px}.preparation{flex-direction:column;align-items:stretch;gap:18px;margin-top:18px;padding-top:16px}.depart p{max-width:none}.pilot-note{font-size:10px;margin-top:16px}.home-choices{grid-template-columns:1fr 1fr;gap:12px}.habitat-choice{min-height:210px;padding:18px}.habitat-art{height:85px;width:85px}.habitat-choice strong{font-size:19px}.habitat-choice small{font-size:11px}.shore-scene{height:200px;border-radius:70px 70px 10px 10px}.shore-caption{left:22px;bottom:16px}.shore-caption p{font-size:23px}.shore-controls{gap:12px;flex-wrap:wrap;margin-top:16px}.shore-controls p,#shore-status{font-size:11px}.caught-shell{padding:20px;gap:18px}.catch-object{font-size:62px}.caught-shell h3{font-size:25px}.caught-shell p{font-size:12px}#journal:has(.journal-card){grid-template-columns:1fr 1fr;gap:14px}.journal-card .route-window{height:100px}
@media(min-width:761px) and (max-height:720px){.care-action{min-height:76px;padding-block:12px}.care-action .object-art{height:54px;top:8px}.panel-heading{margin-bottom:12px}.panel-heading h2{font-size:24px}.care-note{margin-top:10px}.introduction h1{font-size:24px}.fish-speech{top:65px}}
@media(max-width:760px){
 .mast{height:52px;padding:0 16px;gap:14px}.mast-place{font-size:8px}.brand img{width:74px}.back{font-size:10px;max-width:96px}.activity-launcher{height:auto;min-height:82px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:6px 10px;gap:4px}.activity-launcher :is(button,a){min-height:34px;font-size:10px;padding:7px 4px}
 main{display:flex;flex-direction:column}.wallet-strip{order:0;min-height:58px;padding:8px 14px;display:flex;flex-direction:row;align-items:center;gap:12px}.wallet-strip p{font-size:10px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0}.wallet-strip small{display:none}.wallet-strip .primary{font-size:10px;padding:9px 10px;max-width:130px;min-height:38px}.wallet-strip #disconnect{font-size:10px}
 .cove{order:1;position:relative;top:auto;width:100%;height:230px;min-height:0;border-right:0;border-bottom:1px solid var(--line)}.introduction{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);padding:0;margin:0}.fish-home{inset:6px 8% 53px}.fish-speech{top:8px;right:12px;font-size:10px;max-width:130px;padding:7px 10px}.identity{left:12px;bottom:33px;padding:7px 10px!important;max-width:56%;}.identity .eyebrow{font-size:6px;letter-spacing:.09em}.identity h2{font-size:22px;max-width:145px;line-height:1.1}.identity>div{margin:4px 0;gap:9px}.identity button{font-size:9px}.identity>span{font-size:8px}.identity i{padding:0 4px}.care-strip{left:auto;right:12px;bottom:34px;gap:10px;padding:8px!important}.care-strip>div>span{font-size:10px;letter-spacing:0}.care-strip strong{font-size:15px;margin-top:6px}.pips{gap:3px;margin-top:9px}.pips i{width:7px;height:7px}.cove-tools{left:14px;right:14px;bottom:7px;padding-top:5px;border-top:0;font-size:8px;align-items:center}.cove-tools span{font-size:8px;max-width:220px}.habitat-scenery{bottom:68px;height:85px}.home-shell{scale:.4;transform-origin:bottom}.home-glow{scale:.5;bottom:10px}.home-frond{height:65px;scale:.65}.habitat-find{right:14px;bottom:106px}.habitat-find>span{font-size:25px}
 .companion-desk{order:2;padding:14px;max-height:none;overflow:visible;scroll-margin-top:88px;overscroll-behavior:auto}.desk-panel{padding-top:0}.panel-heading{margin-bottom:12px}.panel-heading .eyebrow{display:none}.panel-heading h2{font-size:23px;margin:0 0 7px}.panel-heading>p:last-child{font-size:11px}.care-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.care-action{padding:48px 6px 12px;min-height:112px;border-radius:8px;text-align:center}.care-action .object-art{width:38px;height:43px;top:3px;left:calc(50% - 19px)}.care-action strong{font-size:12px;line-height:1.3}.care-action>span:not(.object-art){font-size:9px;line-height:1.4;margin-top:5px}.care-note{font-size:10px;margin-top:10px;min-height:0}.page-footer{order:3;gap:10px;width:100%;padding:16px 14px}.page-footer p{order:3}.route-list{grid-template-columns:1fr;gap:10px}.route{min-height:84px;border-radius:5px;display:flex;padding:0 24px 0 0}.route .route-window{width:75px;min-width:75px;height:88px}.route strong{font-size:18px}.route>span:nth-child(2){padding:6px 10px}.shore-controls{flex-direction:row;align-items:center}.shore-controls .primary{min-height:44px;font-size:12px}.shore-scene{height:160px}.shore-caption p{font-size:20px}.caught-shell{flex-direction:column}.habitat-choice{min-height:200px}.habitat-art{width:80px;height:80px}#journal:has(.journal-card){grid-template-columns:1fr}
}
@media(max-width:760px) and (max-height:700px){.cove{height:190px}.fish-home{inset:0 10% 54px}.fish-speech{max-width:110px;font-size:9px}.identity h2{font-size:20px}.care-action{min-height:100px;padding-top:43px}.care-action .object-art{height:37px}.companion-desk{padding-top:12px}.panel-heading h2{font-size:21px}}
/* Each route has its own environment; selection previews it without spending energy. */
.environment-backdrop{position:absolute;inset:0;z-index:-3;opacity:0;transition:opacity 900ms ease;pointer-events:none;overflow:hidden}.environment-backdrop img{width:100%;height:100%;object-fit:cover;animation:environment-current 24s ease-in-out infinite alternate;transform:scale(1.04)}.reef-film{transition:opacity 900ms ease}.environment-life{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}.environment-life:after{content:'';position:absolute;inset:-15%;opacity:0;background:radial-gradient(circle at 18% 65%,#aaffdccc 0 1px,transparent 3px),radial-gradient(circle at 65% 30%,#bdffc6bb 0 1px,transparent 3px),radial-gradient(circle at 74% 70%,#bbfffccc 0 2px,transparent 5px),radial-gradient(circle at 32% 28%,#fcdf9888 0 1px,transparent 3px),radial-gradient(circle at 45% 78%,#9be5eb88 0 1px,transparent 3px);animation:environment-motes 16s ease-in-out infinite alternate;transition:opacity 900ms}.environment-life i{position:absolute;bottom:-7%;left:3%;width:22px;height:35%;border-radius:100% 0 0 0;background:linear-gradient(90deg,#153e29e6,#7dba5888);transform-origin:bottom;animation:environment-grass 6s ease-in-out infinite alternate;opacity:0;transition:opacity 900ms}.environment-life i:nth-child(2){left:8%;height:27%;width:15px;animation-delay:-2s}.environment-life i:nth-child(3){left:0;height:43%;animation-delay:-4s}.environment-life i:nth-child(4){left:auto;right:4%;height:32%;animation-delay:-3s}.environment-life i:nth-child(5){left:auto;right:10%;height:23%;animation-delay:-1s}.environment-life i:nth-child(6){left:auto;right:0;height:40%;animation-delay:-5s}
body[data-environment=garden] .environment-garden,body[data-environment=deep] .environment-deep{opacity:1}body[data-environment=garden] .reef-film,body[data-environment=deep] .reef-film{opacity:0}body[data-environment=garden] .environment-life i{opacity:.8}body[data-environment=garden] .environment-life:after{opacity:.5}body[data-environment=deep] .environment-life:after{opacity:1}body[data-environment=deep] .shafts{opacity:.25}body[data-environment=garden] .shafts{opacity:.6}.shafts{transition:opacity 900ms}body[data-environment=deep] .cove:before{background:linear-gradient(0deg,#03152ae0,transparent 40%,#03152a22)}body[data-environment=garden] .cove:before{background:linear-gradient(0deg,#062d27e0,transparent 45%,#062d2722)}body[data-environment=deep] #fish-stage{filter:brightness(.85) drop-shadow(0 0 12px #83d4ff33)}#fish-stage{transition:filter 900ms}.environment-name{display:none}
/* Completed Keeper places preview their own rooms, not the parent biome. */
body[data-environment=observatory] .environment-observatory,body[data-environment=atlas] .environment-atlas,body[data-environment=nursery] .environment-nursery{opacity:1}
body:is([data-environment=observatory],[data-environment=atlas],[data-environment=nursery]) .reef-film{opacity:0}
body[data-environment=observatory] .shafts{opacity:.25}body[data-environment=atlas] .shafts,body[data-environment=nursery] .shafts{opacity:.5}
body[data-environment=observatory] .environment-life:after{opacity:.65}
.shallows{--route-art:url('../film/reef.jpg')}.garden{--route-art:url('environments/garden.jpg')}.deep{--route-art:url('environments/deep.jpg')}.route .route-window,.journal-card .route-window,#postcard .card-picture{background-image:linear-gradient(0deg,#062b3444,transparent 65%),var(--route-art);background-position:center;background-size:cover;filter:none}
@keyframes environment-current{from{transform:scale(1.04) translate(-.5%,0)}to{transform:scale(1.09) translate(.5%,-.5%)}}@keyframes environment-grass{from{rotate:-7deg}to{rotate:9deg}}@keyframes environment-motes{from{transform:translate(-1%,2%);filter:brightness(.75)}to{transform:translate(2%,-4%);filter:brightness(1.3)}}.paused .environment-backdrop img,.paused .environment-life:after,.paused .environment-life i{animation-play-state:paused}
@media(max-width:760px){.environment-name{display:block;position:absolute;top:10px;left:14px;max-width:48%;font-size:9px;color:#eff2da;text-shadow:0 1px 4px #001e29;z-index:3;pointer-events:none}.environment-life i{width:12px}.environment-backdrop img{object-position:center 55%}}
@media(prefers-reduced-motion:reduce){.environment-backdrop,.reef-film,.shafts,#fish-stage,.environment-life i,.environment-life:after{transition:none}.environment-backdrop img,.environment-life:after,.environment-life i{animation:none}}

.site-nav{display:flex;align-items:center;gap:18px;margin-left:auto;font-size:12px;white-space:nowrap}.site-nav a{min-height:36px;display:inline-flex;align-items:center}.site-nav .site-home{padding:0 14px;border:1px solid #72988d88;border-radius:24px;color:#f1ebd4;font-weight:600}
@media(max-width:760px){.mast{gap:12px}.mast>span{display:none}.site-nav{gap:12px;font-size:11px}.site-nav .site-home{padding:0 10px}.mast img{width:74px}}

.discovery-journey{padding:22px;border:1px solid #729b88;border-radius:14px;background:linear-gradient(140deg,#164b48,#082f3b);margin-bottom:20px}.discovery-journey .eyebrow{font-size:8px;color:#b8d8bb}.discovery-journey h3{font-size:27px;line-height:1.15;margin:10px 0}.discovery-journey p:not(.eyebrow){font-size:13px;line-height:1.6;color:#c8dfd0;margin:9px 0}.discovery-journey small{display:block;font-size:10px;color:#b3cfc3;line-height:1.5;margin:12px 0}.discovery-journey button{display:block;white-space:normal}.discovery-journey .primary{margin:16px 0 12px;max-width:100%}.discovery-journey .text-link{font-size:11px}.companion-desk[data-guided=true] #care-panel{display:none}.discovery-update{border-top:1px solid #729b8866;margin:18px 0 0;padding-top:15px}.discovery-update p:not(.eyebrow){font-size:12px;line-height:1.5;margin:8px 0}.discovery-update button{font-size:12px}
#postcard .note-fish{position:absolute;inset:0}#postcard .note-fish canvas{width:100%;height:100%;display:block}.discovery-home{margin:0 24px 22px;padding:20px;border:1px solid #56796955;border-radius:12px;background:#d6decb}.discovery-home h3{font:26px Georgia;margin:8px 0}.discovery-home p:not(.eyebrow){font-size:13px;line-height:1.6;margin:10px 0}.discovery-home .primary{background:#234b4b;color:#f0eddd;white-space:normal;font-size:13px}.card-copy .receipt summary{cursor:pointer;font-size:11px}.card-copy .receipt[open] summary{margin-bottom:12px}#note-dialog .keeper-offer{color:#dae8d5}#note-dialog .keeper-offer .keeper-primary{background:#d9e9bb;color:#12383a}.discovery-journey:focus-within{border-color:#b5d6ad}
@media(max-width:760px){.discovery-journey{padding:17px;margin-bottom:10px}.discovery-journey h3{font-size:24px}.discovery-journey p:not(.eyebrow){font-size:12px}.discovery-journey .primary{font-size:13px;padding:13px 17px}.discovery-home{margin:0 16px 18px;padding:16px}}

/* Care results stay readable beside the fish, including when motion is paused. */
#morsels{z-index:4}
#morsels .meal-result{position:absolute;left:50%;bottom:7%;transform:translateX(-50%);white-space:nowrap;padding:9px 15px;border:1px solid #b9eed4a6;border-radius:22px;background:#082c32ed;color:#f6f0d8;font-size:15px;box-shadow:0 4px 20px #001c2777}
#morsels i{top:18%;left:50%;margin:0!important;width:10px;height:17px;border-radius:45% 10%;background:#bbdc7b;box-shadow:0 0 17px #def9a8aa;animation:meal-drift 2.6s ease-in var(--delay) both}
#morsels[data-food=plankton] i{width:9px;height:9px;border-radius:50%;background:#f3edb6}
@keyframes meal-drift{0%{transform:translate(var(--spread),-18px);opacity:0}15%{opacity:1}75%{opacity:1}100%{top:51%;transform:translate(0,0) scale(.35);opacity:0}}
.paused #morsels i{animation:none;transform:translate(var(--spread),0)}
@media(max-width:760px){#morsels .meal-result{font-size:12px;padding:6px 11px;top:28px;bottom:auto;left:25%}}

/* Fishing shares the reef's existing detailed art and explains its two actions. */
.shore-scene{height:310px;border-radius:24px;background:linear-gradient(180deg,#0c647130,#03344580),url('../film/reef.jpg') center/cover}
.shore-dock{position:absolute;height:112%;width:75%;object-fit:contain;right:-3%;bottom:-9%;filter:drop-shadow(0 12px 18px #001b28aa);animation:dock-sway 7s ease-in-out infinite}
.shore-scene[data-shore-region=garden]{background-image:linear-gradient(180deg,#0c647130,#03344580),url('environments/garden.jpg')}
.shore-scene[data-shore-region=deep]{background-image:linear-gradient(180deg,#0c647130,#03344580),url('environments/deep.jpg')}
.shore-caption{z-index:2;left:22px;bottom:20px;max-width:42%;text-shadow:0 2px 12px #001b28}
.shore-caption p{font-family:inherit;font-weight:500;line-height:1.15;font-size:25px}
.shore-ripple{left:19%;top:63%;width:65px}
@keyframes dock-sway{50%{transform:translateY(-5px) rotate(.4deg)}}
.casting .shore-dock{animation:dock-sway .8s ease-in-out infinite}
.paused .shore-dock{animation-play-state:paused}
.shore-steps{padding:0;display:flex;gap:10px;list-style:none;margin:15px 0;color:#b1cdc6;font-size:12px}
.shore-steps li{flex:1;padding:10px 0;border-top:2px solid #315451}
.shore-steps .complete,.shore-steps .current{color:#e7edc9;border-color:#acdbbd}
.orbio-explainer{margin:20px 0;color:#b6cdc7;font-size:13px;line-height:1.6}
.orbio-explainer summary{color:#e8e9cc;cursor:pointer}
.catch-preview{height:135px;width:150px;min-width:110px;border-radius:12px;background-image:var(--route-art);background-size:cover;background-position:center}
.journal-place{display:block;margin:8px 5px 0;font-size:13px}
#collection-overview{margin-bottom:26px}
#collection-overview>strong{display:block;font-weight:500;color:#cae6d7;font-size:15px;margin-bottom:16px}
.collection-regions{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.collection-region{text-align:left;padding:0;background:#0e323a;border:1px solid #44615d;border-radius:12px;overflow:hidden;color:#f3ecd5}
.collection-region .route-window{width:100%;min-width:0;height:80px;border-radius:0;background-image:var(--route-art);background-position:center;background-size:cover}
.collection-region strong,.collection-region small{display:block;margin:10px;font-size:12px;line-height:1.4}
.collection-region small{color:#b7cfc8;font-size:10px}
.voyage-next{border-left:2px solid #b6d8bd;padding:0 0 0 15px;margin:0 0 22px;color:#c2d9cb;font-size:13px;line-height:1.5}
@media(max-width:760px){.shore-scene{height:210px}.shore-caption p{font-size:20px}.shore-caption span{font-size:9px;letter-spacing:.12em}.shore-steps{font-size:10px;gap:7px}.collection-regions{gap:7px}.collection-region strong{font-size:11px}.catch-preview{width:100%;height:110px}.collection-region .route-window{height:60px}}
@media(prefers-reduced-motion:reduce){.shore-dock{animation:none!important}}

.desk-panel:focus{outline:none}
/* Optional regional activities share the living fish and painted environments. */
.region-activity{width:min(720px,calc(100vw - 24px));max-height:calc(100dvh - 24px);box-sizing:border-box;background:#092b34;color:#f3ecd5;border:1px solid #668f84;border-radius:22px;padding:24px;overflow:auto}
.region-activity::backdrop{background:#00151dcc;backdrop-filter:blur(8px)}
.region-activity header{display:flex;align-items:start;justify-content:space-between;gap:15px}
.region-activity h2{font-size:28px;line-height:1.1;margin:8px 0}
.region-activity>p{font-size:14px;line-height:1.5;color:#bcd9ce}
.activity-scene{position:relative;height:310px;border-radius:18px;overflow:hidden;background:linear-gradient(0deg,#052b3670,transparent),url('../film/reef.jpg') center/cover}
[data-region=garden] .activity-scene{background-image:linear-gradient(0deg,#052b3670,transparent),url('environments/garden.jpg')}
[data-region=deep] .activity-scene{background-image:linear-gradient(0deg,#052b3630,transparent),url('environments/deep.jpg')}
.activity-fish{position:absolute;inset:0;pointer-events:none}
.activity-pool{position:absolute;transform:translate(-50%,-50%);width:98px;height:65px;border-radius:50%;background:radial-gradient(ellipse,#207b8b55,#062e3988);border:2px solid #c9e6cdbb;box-shadow:0 0 0 7px #c9e6cd14,inset 0 0 20px #ade7c74d;color:#fff8df;font-size:12px;text-shadow:0 2px 5px #00151d}
.activity-pool.examined{border-color:#d7dbaa;box-shadow:0 0 25px #dceab466;opacity:.65}
.activity-controls{display:flex;flex-wrap:wrap;gap:10px}
.activity-status{min-height:42px}
.activity-explanation{font-size:12px!important}
.activity-current{position:absolute;inset:0;pointer-events:none;width:100%;height:100%;fill:none;stroke:#d0f3d7;stroke-opacity:.4;stroke-width:2;stroke-dasharray:8 12;animation:current-travel 8s linear infinite}
@keyframes current-travel{to{stroke-dashoffset:-160}}
.activity-pattern{position:absolute;top:12px;left:50%;transform:translateX(-50%);white-space:nowrap;background:#062731da;border-radius:20px;padding:9px 18px;color:#edf1c8;font-size:18px}
.activity-lantern{position:absolute;top:62%;transform:translate(-50%,-50%);width:58px;height:58px;border-radius:50%;border:1px solid #c9efd5;color:#fbf4d8;background:radial-gradient(circle,#bdecd399,#2e8198aa 48%,#12363a);box-shadow:0 0 24px #7bdcd966;font-size:20px}
.activity-lantern.lit{box-shadow:0 0 38px #dcf9b9cc;background:#4b9185}
.field-activity{margin:16px 0;padding:14px 16px;background:#163b41;border:1px solid #547369;border-radius:12px;color:#c1d8cc;font-size:13px;line-height:1.5}
.field-activity p{margin:7px 0}.field-activity button{font-size:13px}
.memory-accent{position:absolute;z-index:2;bottom:16%;left:25%;width:110px;height:40px;pointer-events:none;filter:drop-shadow(0 0 8px #8fdbcb55)}
.memory-accent[hidden]{display:none}
.memory-accent[data-finding=spiral]{background:repeating-radial-gradient(circle at 50% 50%,#e2d6b6 0 3px,#69877c 4px 6px,transparent 7px 10px);width:42px;border-radius:50%;transform:rotateX(30deg)}
.memory-accent[data-finding=pebbles]{background:radial-gradient(ellipse at 20% 70%,#b9cfc4 0 14%,transparent 16%),radial-gradient(ellipse at 53% 45%,#e1d8b7 0 20%,transparent 22%),radial-gradient(ellipse at 82% 72%,#789c91 0 16%,transparent 18%)}
.memory-accent[data-finding=sheltered],.memory-accent[data-finding=drifting]{height:75px;background:repeating-linear-gradient(78deg,transparent 0 13px,#70b594bb 14px 18px,transparent 20px 25px);border-radius:65% 90% 8% 8%;transform:skewX(-10deg);width:65px}
.memory-accent[data-finding=drifting]{width:120px;transform:skewX(18deg)}
.memory-accent[data-finding=blue],.memory-accent[data-finding=amber]{bottom:28%;background:radial-gradient(circle at 15% 70%,#94e8ff 0 4%,transparent 9%),radial-gradient(circle at 48% 30%,#94e8ff 0 5%,transparent 10%),radial-gradient(circle at 83% 65%,#94e8ff 0 4%,transparent 9%);filter:drop-shadow(0 0 10px #8adaff);animation:memory-glow 4s ease-in-out infinite}
.memory-accent[data-finding=amber]{filter:hue-rotate(175deg) drop-shadow(0 0 10px #f7d389)}
@keyframes memory-glow{50%{opacity:.5}}
.paused .activity-current,.paused .memory-accent{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){.activity-current,.memory-accent{animation:none!important}}
@media(max-width:760px){.region-activity{padding:16px}.region-activity h2{font-size:23px}.activity-scene{height:240px}.activity-pool{width:76px;height:54px}.activity-controls .primary{font-size:12px;padding:12px}.memory-accent{left:8%;bottom:35%;transform:scale(.65)}}

.region-activity header>button{flex-shrink:0;white-space:nowrap}
/* Audio startup must not move a navigation link between pointerdown and click. */
.site-nav #cove-sound{width:112px;flex:0 0 112px;padding:8px 0;white-space:normal;text-align:center}
@media(max-width:760px){.site-nav #cove-sound{width:90px;flex-basis:90px}}
@media(max-width:380px){.mast{height:auto;min-height:52px;padding-block:8px}.site-nav{width:100%;margin:0;justify-content:space-between;gap:8px}}

/* The cove title sits on a soft dark pool so it holds over sunlit water, the same treatment as the reef's area title.
   The pool is anchored to the cove's own top-left corner and fades out before its far edges, so it has no edge to see. */
.cove:before{content:'';position:absolute;inset:0;width:auto;height:auto;z-index:1;pointer-events:none;background:radial-gradient(ellipse 720px 400px at 0 0,#001e34d9 0%,#001e348c 40%,transparent 72%)}

/* Aquarium is a destination, styled alongside the companion activity buttons. */
.activity-launcher>a{display:flex;align-items:center;justify-content:center;text-decoration:none}.desk-tabs>a{text-decoration:none}
