@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{font-family:Archivo,Arial,sans-serif;color:#eee9d3;background:#031923;--gold:#e1c387;--mint:#b7e4d1;--line:#b5d7ce30}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0}a,button,input{color:inherit;font:inherit;touch-action:manipulation}a{text-decoration:none}button{border:0;cursor:pointer;background:none}button:disabled{opacity:.5;cursor:default}button,a,input{outline-offset:5px}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--gold)}p,h1,h2,h3{margin:0}p{line-height:1.6}img{max-width:100%}.skip{position:absolute;top:-100px;left:20px;z-index:20;background:#03232d;padding:15px}.skip:focus{top:10px}.mast{height:84px;display:flex;align-items:center;gap:28px;padding:0 4%;border-bottom:1px solid var(--line)}.mast img{display:block}.mast>span{font:9px Geist;letter-spacing:.16em}.mast small{display:block;font:11px Archivo;letter-spacing:0;margin-top:7px;color:#a7c9c3}.mast>a:last-child{margin-left:auto;font-size:12px}#places-nav{display:flex;justify-content:center;gap:28px;padding:16px 4%;border-bottom:1px solid var(--line)}#places-nav a{font-size:12px;padding:8px 4px;border-bottom:1px solid transparent}#places-nav a[aria-current=page]{color:var(--gold);border-color:var(--gold)}#places-nav small{display:block;font:8px Geist;color:#a0b7b1;margin-top:5px}main{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(310px,1fr);min-height:650px}.room{position:relative;isolation:isolate;overflow:hidden;min-height:690px;background:#062a36}.room>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-3}.room:after{content:'';position:absolute;inset:0;pointer-events:none;z-index:-1;background:linear-gradient(180deg,#0017248c,transparent 30%,transparent 75%,#001724c9)}.room-heading{position:absolute;left:6%;right:6%;top:6%;pointer-events:none}.room-heading p{font:9px Geist;letter-spacing:.17em;color:#e6d4a7;text-shadow:0 1px 8px #001620}.room-heading h1{font-size:clamp(32px,3.5vw,54px);max-width:550px;line-height:1.03;letter-spacing:-.05em;font-weight:600;margin-top:12px;text-shadow:0 2px 20px #00121e}.water-rays{position:absolute;inset:0;pointer-events:none;z-index:-2;background:repeating-conic-gradient(from 160deg at 58% -10%,transparent 0deg 9deg,#b3e9d41a 10deg,transparent 12deg 27deg);animation:rays 17s ease-in-out infinite alternate}.room-motes{position:absolute;inset:10% 8%;pointer-events:none;background:radial-gradient(circle at 15% 37%,#d2edc9 0 1px,transparent 3px),radial-gradient(circle at 78% 26%,#b8e9cd 0 1px,transparent 3px),radial-gradient(circle at 42% 74%,#c3ffe2 0 2px,transparent 4px),radial-gradient(circle at 64% 49%,#d8f8d7 0 1px,transparent 3px);opacity:.5;animation:motes 13s ease-in-out infinite alternate}.shared-scenery{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.shared-scenery g{opacity:0;transition:opacity 1.2s}.shared-scenery .feature-light{fill:#d2ffcc;stroke:#b4ecce55;stroke-width:1;filter:drop-shadow(0 0 7px #a6f4c9)}.feature-light ellipse{fill:none;stroke-dasharray:1 14}.feature-shells{fill:#f4d490;stroke:#f4d490;stroke-width:2}.feature-shells path{fill:none;stroke-dasharray:4 9}.feature-life{fill:#b8eaa3;filter:drop-shadow(0 0 6px #c3ffb7);animation:motes 6s ease-in-out infinite alternate}.room[data-light=true] .feature-light,.room[data-shells=true] .feature-shells,.room[data-tiny-life=true] .feature-life{opacity:1}.stations button{position:absolute;display:flex;align-items:center;gap:8px;padding:8px;border-radius:30px;transform:translate(-50%,-50%);background:#052833e8;border:1px solid #d8c39170;box-shadow:0 3px 25px #002235a0;text-align:left}.stations b{display:grid;place-items:center;border:1px solid #d8c39188;border-radius:50%;width:32px;height:32px;font:10px Geist;flex-shrink:0}.stations span{font-size:11px;padding-right:5px;max-width:95px}.stations [data-exhibit=light]{left:25%;top:56%}.stations [data-exhibit=shells]{left:77%;top:76%}.stations [data-exhibit=tiny-life]{left:84%;top:46%}.stations button[aria-pressed=true]{border-color:#fff3cd;box-shadow:0 0 0 2px #d9c59633}.stations button[data-added=true] b{background:#bee8cd;color:#113c3b;border-color:#ddf9d5}.stations button[data-attention=true]{box-shadow:0 0 24px #dbe6ae70}.room-keeper{position:absolute;width:23%;bottom:12%;left:44%;pointer-events:none}.room-keeper img{display:block;animation:keeper-drift 7s ease-in-out infinite alternate}.room-keeper span{display:block;text-align:center;font:8px Geist;color:#e6dab2;background:#04242cab;padding:6px;border-radius:20px}.room-bottom{position:absolute;bottom:23px;left:6%;right:6%;display:flex;justify-content:space-between;gap:12px;font-size:10px;color:#d3e6db}.room-bottom button{font-size:10px;padding:0;border-bottom:1px solid #cde3d96b}.desk{padding:38px clamp(22px,3vw,46px);background:radial-gradient(ellipse at top right,#143f43,#06242e 65%);border-left:1px solid var(--line)}.eyebrow{font:9px Geist;letter-spacing:.15em;color:#a4c7ba}.desk h2{font-size:35px;line-height:1.07;letter-spacing:-.04em;font-weight:550;margin:13px 0}.exhibit-state{font:9px Geist;color:var(--gold);margin-bottom:16px;line-height:1.5}.desk>p:not(.eyebrow,.exhibit-state){font-size:13px;color:#bed2c9}.primary,.secondary{display:block;width:100%;padding:15px 18px;border-radius:4px;line-height:1.5;text-align:left;font-size:12px;margin-top:20px}.primary{background:#d9e8c9;color:#15373b;font-weight:600}.secondary{border:1px solid #c1d9c758;margin-top:10px;color:#e1e8d5}.allowance{font-size:10px!important;color:#92b2ae!important;line-height:1.6;margin-top:14px}.text-button{font-size:11px;text-align:left;border-bottom:1px solid #b6cec650;padding:4px 0;margin-top:16px}#place-status{min-height:18px;margin-top:8px;font-size:11px}details{border-top:1px solid var(--line);margin-top:16px;padding-top:15px;font-size:11px}summary{cursor:pointer}details p,.receipt{font:9px Geist;line-height:1.7;color:#97b9ad;overflow-wrap:anywhere;margin-top:10px}.return-note{margin-top:23px;padding-top:24px;border-top:1px solid var(--line)}.return-note h3{font-size:22px;line-height:1.15;font-weight:500;letter-spacing:-.03em;margin:12px 0}.return-note>p:not(.eyebrow){font-size:12px;color:#b5cfc4}.return-note .date{font:9px Geist;margin-bottom:10px;color:var(--gold)}footer{display:flex;justify-content:space-between;gap:25px;padding:25px 4%;border-top:1px solid var(--line);font-size:11px;color:#9bbab4}.room[data-locked=true]>.stations,.room[data-locked=true]>.shared-scenery{display:none}.room[data-locked=true]>img{filter:brightness(.45) saturate(.5)}
dialog{width:min(640px,94vw);max-height:92dvh;overflow:auto;border:1px solid #b59b6b80;border-radius:16px;background:#05252f;color:#ece9d5;padding:30px;box-shadow:0 30px 100px #0009}dialog::backdrop{background:#00111bd9;backdrop-filter:blur(7px)}dialog>button{float:right;font-size:12px;padding:0 0 10px}dialog h2{font-size:30px;font-weight:500;letter-spacing:-.03em;margin:18px 0}dialog>p:not(.eyebrow){font-size:13px;color:#c5dccd}
@keyframes rays{to{transform:translateX(2%);opacity:.5}}@keyframes motes{to{transform:translate(7px,-12px)}}@keyframes keeper-drift{to{transform:translate(5px,-8px) rotate(-2deg)}}@keyframes lens-life{to{transform:translate(7px,-9px) scale(.8)}}body.paused .room *,body.paused .activity-stage *{animation-play-state:paused!important}body:has(#activity-dialog[open]) .room *{animation-play-state:paused!important}body.paused .shared-scenery g{transition:none}
@media(min-width:1600px){main{max-width:1800px;margin:auto}.room{min-height:800px}}
@media(max-width:760px){.mast{height:72px;padding:0 5%;gap:16px}.mast img{width:87px}.mast>span{font-size:7px;letter-spacing:.06em}.mast small{font-size:9px}.mast>a:last-child{font-size:10px;max-width:75px;line-height:1.5}#places-nav{gap:10px;justify-content:space-between;padding:10px 4%}#places-nav a{font-size:10px;max-width:32%;line-height:1.4}#places-nav small{font-size:7px}main{display:block}.room{min-height:360px;height:94vw;max-height:530px}.room-heading{top:6%}.room-heading h1{font-size:34px;max-width:290px}.room-heading p{font-size:7px}.room-bottom{bottom:15px;font-size:9px}.stations button{padding:5px;gap:4px}.stations b{width:29px;height:29px;font-size:9px}.stations span{font-size:9px;max-width:54px}.stations [data-exhibit=light]{left:21%;top:55%}.stations [data-exhibit=shells]{left:76%;top:77%}.stations [data-exhibit=tiny-life]{left:81%;top:45%}.room-keeper{width:27%;left:39%;bottom:11%}.room-keeper span{font-size:6px}.desk{padding:28px 6%}.desk h2{font-size:30px}.desk>p:not(.eyebrow,.exhibit-state){font-size:13px}.primary{margin-top:18px}.return-note{margin-top:20px}footer{font-size:9px;padding:20px 6%}dialog{padding:22px}dialog h2{font-size:25px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
.room[data-project=atlas] .stations [data-exhibit=light]{left:20%;top:44%}.room[data-project=atlas] .stations [data-exhibit=shells]{left:28%;top:76%}.room[data-project=nursery] .stations [data-exhibit=shells]{left:16%;top:76%}.room[data-project=nursery] .stations [data-exhibit=tiny-life]{left:81%;top:62%}
body[data-keeper-notebook=open] .room *{animation-play-state:paused!important}

.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}}

@media(max-width:420px){.mast{height:auto;min-height:98px;flex-wrap:wrap;padding-block:13px;gap:5px}.site-nav{width:100%;justify-content:space-between;margin:0;gap:10px}.site-nav a{min-height:40px}}

.field-guide-entry{padding:24px 0;border-top:1px solid #bad1b633}.field-guide-entry h3{font-size:25px;margin:0 0 12px;letter-spacing:-.04em}.field-guide-entry>p:not(.eyebrow){font-size:13px;line-height:1.65;color:#b4ccc4}

.site-home:not([hidden]){display:block;width:fit-content;margin:16px 4vw 0;color:#eee4c8;font-size:14px;text-decoration:none;padding:8px 0;}

/* The room title sits on a soft dark pool so it holds over the bright window, the same treatment as the reef's area title.
   The pool is anchored to the room's own top-left corner and fades out before its far edges, so it has no edge to see. */
.room:before{content:'';position:absolute;left:0;top:0;width:min(72%,720px);height:min(58%,400px);z-index:-1;pointer-events:none;background:radial-gradient(100% 100% at 0 0,#001724d9 0%,#0017248c 40%,transparent 72%)}
