@font-face{font-family:Fraunces;font-style:normal;font-weight:600 800;font-display:swap;src:url(/lantern-logic/assets/fraunces-latin-ext-BtuXJSoo.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:600 800;font-display:swap;src:url(/lantern-logic/assets/fraunces-latin-CGbQT07w.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-weight:500 800;font-display:swap;src:url(/lantern-logic/assets/nunito-latin-ext-CXYtwYOx.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-weight:500 800;font-display:swap;src:url(/lantern-logic/assets/nunito-latin-BzFMHfZw.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Caveat;font-style:normal;font-weight:600;font-display:swap;src:url(/lantern-logic/assets/caveat-latin-ext-DDJRD6ps.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Caveat;font-style:normal;font-weight:600;font-display:swap;src:url(/lantern-logic/assets/caveat-latin-zlTlWIYU.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--px-night: #0b1e2b;--px-deep: #0e2a33;--px-teal: #17414c;--px-teal-mid: #24606b;--px-tide: #3e8a8c;--px-foam: #7cc0b8;--px-paper: #f5ecd7;--px-paper-hi: #fff8ea;--px-paper-lo: #e3d3b0;--px-wood: #8a5a3c;--px-wood-dk: #5b3a28;--px-amber: #f2a541;--px-glow: #ffd27a;--px-ember: #d9782b;--px-coral: #e9765b;--px-dusk: #8c6e9e;--bg: #f5ecd7;--bg-desk: #5b3a28;--page: #fff8ea;--page-edge: #e3d3b0;--ink: #1f3a40;--ink-soft: #45636a;--ink-faint: rgba(31, 58, 64, .28);--ink-x: rgba(31, 58, 64, .85);--amber: #f2a541;--amber-hi: #ffd27a;--amber-deep: #d9782b;--amber-text: #a85a1c;--coral: #e9765b;--coral-deep: #b4533f;--coral-soft: rgba(233, 118, 91, .22);--tide: #3e8a8c;--tide-deep: #2e6b6d;--tide-soft: rgba(62, 138, 140, .18);--teal: #17414c;--dusk: #8c6e9e;--dusk-deep: #6e5486;--cream: #fff8ea;--shadow-solid: 0 3px 0 rgba(31, 58, 64, .18);--shadow-lift: 0 10px 24px rgba(14, 42, 51, .22);--rope: #c9955a;--c0: #f3c9a6;--c1: #86bcc2;--c2: #c8dda2;--c3: #f5de96;--c4: #b7a2d2;--c5: #e39a92;--c6: #b6dec9;--c7: #c9ab78;--c8: #cad5f2;--c9: #c2967c;--f-display: "Fraunces", Georgia, "Times New Roman", serif;--f-ui: "Nunito", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--f-hand: "Caveat", "Segoe Print", cursive;--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-back: cubic-bezier(.34, 1.56, .64, 1);--ease-in: cubic-bezier(.55, 0, 1, .45);--ease-sine: cubic-bezier(.37, 0, .63, 1);--gutter: 16px;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--tabbar-h: 64px;color-scheme:light}:root[data-theme=dark]{--bg: #0e2a33;--bg-desk: #0b1e2b;--page: #22414a;--page-edge: #17414c;--ink: #f3e6cc;--ink-soft: #b9cbc8;--ink-faint: rgba(243, 230, 204, .24);--ink-x: rgba(243, 230, 204, .85);--tide: #5fb0ae;--c0: #8a5a3c;--c1: #2f6a7c;--c2: #4d6b33;--c3: #8a7630;--c4: #5d4a7c;--c5: #864848;--c6: #2f6e5c;--c7: #6e5a3a;--c8: #44528a;--c9: #6b4a3e;color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;height:100%;background:var(--bg);color:var(--ink);font-family:var(--f-ui);font-weight:500;font-size:15px;line-height:1.4;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;overscroll-behavior:none}body{overflow:hidden;touch-action:manipulation;user-select:none;-webkit-user-select:none}#app{position:relative;height:100vh;height:100dvh;overflow:hidden;isolation:isolate;container-type:inline-size}@media(min-width:900px)and (min-height:600px)and (orientation:landscape){body{background-color:#3a2418;background-image:radial-gradient(60% 60% at 50% 20%,rgba(255,210,122,.16),transparent 70%),var(--tex-wood),linear-gradient(180deg,#5b3a28,#3a2418);background-size:100% 100%,256px 256px,100% 100%}#app{max-width:520px;margin:0 auto;box-shadow:0 0 0 1px #0b1e2b66,0 20px 60px #0b1e2b8c}.toast{bottom:110px}}.screen{position:absolute;inset:0;display:flex;flex-direction:column;overflow:hidden;z-index:1;background:var(--bg)}.screen.leaving{pointer-events:none;z-index:0;transform-origin:left center}h1,h2,h3,p{margin:0}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--amber-deep);outline-offset:2px}.hand{font-family:var(--f-hand);font-weight:600;font-size:20px;line-height:1.1}.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.page{position:relative;background-color:var(--page);border-radius:18px;box-shadow:var(--shadow-lift)}.page:after{content:"";position:absolute;inset:0;border-radius:inherit;background-image:var(--tex-grain);background-size:128px 128px;opacity:.35;pointer-events:none;mix-blend-mode:multiply}.ico{display:inline-flex;width:24px;height:24px;flex:none}.ico svg{width:100%;height:100%}.ico .duo{fill:var(--amber);opacity:.35}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 20px;border-radius:14px;font-weight:700;font-size:16px;line-height:1.2;text-align:center;transition:transform .14s var(--ease-back),box-shadow .14s var(--ease-back)}.btn .ico{width:20px;height:20px}.btn.primary{min-height:56px;border-radius:16px;background:var(--amber);color:var(--ink);border:2px solid var(--amber-deep);box-shadow:0 4px 0 var(--amber-deep);font-weight:800}.btn.primary .ico .duo{fill:var(--cream);opacity:.6}.btn.secondary{color:var(--ink);background:var(--page);border:2px solid rgba(31,58,64,.8);box-shadow:var(--shadow-solid)}.btn:active{transform:translateY(3px);transition-duration:80ms;transition-timing-function:var(--ease-out)}.btn.primary:active{box-shadow:0 1px 0 var(--amber-deep)}.btn.secondary:active{box-shadow:0 0 #1f3a402e}.btn:disabled{opacity:.45;pointer-events:none}.icon-btn{display:inline-grid;place-items:center;width:44px;height:44px;border:0;border-radius:14px;background:transparent;flex:none}.icon-btn:active{background:var(--ink-faint)}.tool{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:64px;height:60px;padding:4px 6px;border:0;border-radius:16px;background:transparent;color:var(--cream)}.tool-ico{position:relative;display:grid;place-items:center;width:40px;height:32px;border-radius:16px;transition:background .12s var(--ease-out)}.tool .ico .duo{fill:var(--amber-hi);opacity:.45}.tool-label{font-size:13px;font-weight:700;line-height:1;white-space:nowrap}.tool:active .tool-ico{background:#fff8ea2e;transform:translateY(2px)}.tool.on .tool-ico{background:var(--amber);color:var(--ink)}.tool:disabled{opacity:.4}.badge{position:absolute;top:-6px;right:-8px;min-width:20px;height:20px;padding:0 5px;border-radius:10px;background:var(--amber);color:var(--ink);font-size:13px;font-weight:800;line-height:20px;text-align:center;box-shadow:0 1px 0 var(--amber-deep)}.badge .ico{width:14px;height:14px;vertical-align:-2px}.chip{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 12px 0 8px;border-radius:14px;background:var(--tide-soft);color:var(--ink);font-size:13px;font-weight:700;white-space:nowrap;flex:none;transition:background .24s var(--ease-back),color .24s var(--ease-back)}.chip .dot{width:8px;height:8px;border-radius:50%;border:2px solid var(--tide-deep)}.chip .ico{width:16px;height:16px}.chip.done{background:var(--tide-deep);color:var(--cream)}.chip.done .ico .duo{fill:var(--cream)}.chip.done .ico svg path:not(.duo){stroke-dasharray:400;animation:draw-check .24s var(--ease-back)}.chip.bad{background:var(--coral-soft);color:var(--coral-deep);animation:chip-blink .3s var(--ease-sine) 2}.chip.bad .dot{border-color:var(--coral-deep)}.seal-chip{display:inline-flex;align-items:center;gap:4px;height:28px;padding:0 12px;border-radius:14px;background:var(--amber);color:var(--ink);font-size:13px;font-weight:800;white-space:nowrap}.seal-chip .ico{width:16px;height:16px}.row{display:flex;align-items:center;gap:12px;width:100%;min-height:52px;padding:8px 0;border:0;border-top:1px solid var(--ink-faint);background:transparent;text-align:left}.row:first-of-type{border-top:0}.row-text{display:flex;flex-direction:column;flex:1;gap:2px}.row-label{font-weight:700;font-size:15px;flex:1}.row-desc{font-size:13px;color:var(--ink-soft)}.switch{position:relative;width:52px;height:30px;border-radius:15px;background:#b9b3a3;border:2px solid rgba(31,58,64,.5);flex:none;transition:background .16s var(--ease-out)}.knob{position:absolute;top:2px;left:2px;width:22px;height:22px;border-radius:50%;background:var(--page);border:2px solid var(--ink);transition:transform .18s var(--ease-back);display:grid;place-items:center}.flame{width:8px;height:11px;border-radius:50%/60% 60% 40% 40%;background:transparent}.toggle-row[aria-checked=true] .switch{background:var(--tide-deep)}.toggle-row[aria-checked=true] .knob{transform:translate(22px);background:var(--amber-hi)}.toggle-row[aria-checked=true] .flame{background:var(--amber-deep)}.slider-row{padding-left:4px;border-top:0;min-height:44px}.slider-row .ico{width:22px;height:22px;color:var(--ink-soft)}.slider-row input[type=range]{flex:1;height:44px;margin:0;background:transparent;-webkit-appearance:none;appearance:none}.slider-row input[type=range]::-webkit-slider-runnable-track{height:8px;border-radius:4px;background:linear-gradient(90deg,var(--amber) var(--p, 50%),var(--page-edge) var(--p, 50%));border:1px solid rgba(31,58,64,.35)}.slider-row input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:26px;height:26px;margin-top:-10px;border-radius:50%;background:var(--page);border:2px solid var(--ink);box-shadow:var(--shadow-solid)}.slider-row input[type=range]::-moz-range-track{height:8px;border-radius:4px;background:var(--page-edge)}.slider-row input[type=range]::-moz-range-progress{height:8px;border-radius:4px;background:var(--amber)}.slider-val{width:32px;text-align:right;font-weight:700;font-size:13px;font-variant-numeric:tabular-nums;color:var(--ink-soft)}.seg{display:flex;gap:4px;padding:4px;border-radius:14px;background:#1f3a4014;border:1px solid var(--ink-faint)}.seg-btn{flex:1 1 0;min-width:0;min-height:44px;padding:0 6px;border:0;border-radius:10px;background:transparent;font-weight:700;font-size:13px;color:var(--ink-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.seg-btn.on{background:var(--page);color:var(--ink);box-shadow:0 0 0 2px var(--ink) inset,var(--shadow-solid);font-weight:800}.toast{position:fixed;left:50%;bottom:calc(96px + var(--safe-bottom));z-index:50;max-width:min(92vw,420px);padding:10px 18px;border-radius:22px;background:var(--teal);color:var(--cream);font-weight:700;font-size:14px;text-align:center;transform:translate(-50%);box-shadow:var(--shadow-lift);animation:toast-in .2s var(--ease-out);pointer-events:none}.toast.out{opacity:0;transition:opacity .2s var(--ease-in)}.tabbar{display:flex;justify-content:space-around;align-items:stretch;height:calc(var(--tabbar-h) + var(--safe-bottom));padding-bottom:var(--safe-bottom);background:var(--teal);flex:none;position:relative;z-index:3}.tab{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;flex:1;min-width:64px;border:0;background:transparent;color:#fff8ea99}.tab .ico .duo{fill:var(--amber-hi)}.tab-label{font-size:13px;font-weight:700}.tab:not(.on) .tab-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.tab.on{color:var(--cream)}.tab.on:after{content:"";position:absolute;top:6px;right:calc(50% - 18px);width:7px;height:7px;border-radius:50%;background:var(--amber)}.overlay{position:absolute;inset:0;z-index:20;display:flex;flex-direction:column}.tide{display:block;width:64px;height:64px}.tide svg{width:100%;height:100%;overflow:visible}.tide-bubble{position:relative;max-width:230px;padding:8px 14px;border-radius:16px 16px 4px;background:var(--page);color:var(--ink);border:2px solid var(--ink);box-shadow:var(--shadow-solid);font-family:var(--f-hand);font-weight:600;font-size:20px;line-height:1.1}.bubble-btn{display:flex;align-items:center;gap:6px;min-height:44px;margin-top:6px;padding:0 12px;border:2px solid var(--amber-deep);border-radius:12px;background:var(--amber);font-family:var(--f-ui);font-size:14px;font-weight:800}.bubble-btn .ico{width:18px;height:18px}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,16px)}}@keyframes chip-blink{50%{background:#e9765b73}}@keyframes draw-check{0%{stroke-dashoffset:400}}.reduce-motion *,.reduce-motion *:before,.reduce-motion *:after{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}}.screen>.toast{position:absolute}.splash{align-items:center;justify-content:center;gap:10px;background:var(--px-night);color:var(--cream)}.splash-lantern{position:relative;width:128px;height:128px;margin-bottom:28px;animation:sway 2.4s var(--ease-sine) infinite alternate;transform-origin:50% 0}.splash-glow{position:absolute;left:50%;top:56%;width:220px;height:220px;margin:-110px 0 0 -110px;border-radius:50%;background:radial-gradient(circle,rgba(255,210,122,.55),rgba(242,165,65,.15) 45%,transparent 70%);animation:glow-grow .6s var(--ease-out) both}.splash-lamp,.splash-lamp svg{position:relative;display:block;width:128px;height:128px}.logo{font-family:var(--f-display);font-weight:800;font-size:34px;line-height:40px;letter-spacing:.01em;animation:rise-in .5s .15s var(--ease-out) both}.logo-sub{font-weight:800;font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:var(--amber-hi);animation:rise-in .5s .25s var(--ease-out) both}.splash-waves{position:absolute;left:0;right:0;bottom:70px;height:14px;background:radial-gradient(circle at 10px -4px,transparent 9px,rgba(124,192,184,.55) 10px 11.5px,transparent 12.5px) 0 0 / 20px 14px repeat-x;animation:waves-roll 3s linear infinite}.home{background:var(--px-teal)}.hud{position:absolute;top:0;left:0;right:0;z-index:4;display:flex;align-items:center;gap:8px;height:calc(56px + var(--safe-top));padding:var(--safe-top) 8px 0 16px;color:var(--cream)}.wordmark{flex:1;font-family:var(--f-display);font-weight:800;font-size:20px;text-shadow:0 2px 0 rgba(11,30,43,.35);white-space:nowrap}.hud-pill{display:inline-flex;align-items:center;gap:4px;height:36px;padding:0 12px 0 6px;border-radius:18px;background:#0b1e2b8c;border:1.5px solid rgba(255,248,234,.25);font-weight:800;font-size:15px;font-variant-numeric:tabular-nums}.hud-pill .ico{width:22px;height:22px}.hud-pill .ico .duo{fill:var(--amber-hi);opacity:.6}.hud-lamp,.hud-lamp svg{display:block;width:26px;height:26px}.hud-gear{color:var(--cream)}.hud-gear .ico .duo{fill:var(--amber-hi)}.diorama{position:relative;flex:1 1 auto;min-height:230px;overflow:hidden;--glow: .6;--sea: clamp(96px, 26%, 150px);--isw: min(100cqw, 420px);background:linear-gradient(180deg,var(--sky-top) 0%,var(--sky-mid) 55%,var(--sky-hor) 100%);transition:background 4s linear}.sky-morning{--sky-top: #9fd3e0;--sky-mid: #cfe6e0;--sky-hor: #f7e3c4;--glow: .25}.sky-afternoon{--sky-top: #7ec3d1;--sky-mid: #bfe0da;--sky-hor: #f3d9a6;--glow: .25}.sky-dusk{--sky-top: #3e5c7a;--sky-mid: #e8a0a0;--sky-hor: #f2a541;--glow: .6}.sky-night{--sky-top: #0b1e2b;--sky-mid: #17414c;--sky-hor: #24606b;--glow: 1}.stars{position:absolute;inset:0 0 40%;opacity:0;background-image:radial-gradient(1.5px 1.5px at 20px 30px,#fff8ea 50%,transparent 51%),radial-gradient(1px 1px at 90px 70px,#fff8ea 50%,transparent 51%),radial-gradient(2px 2px at 150px 20px,#ffd27a 50%,transparent 51%),radial-gradient(1px 1px at 210px 90px,#fff8ea 50%,transparent 51%),radial-gradient(1.5px 1.5px at 260px 45px,#fff8ea 50%,transparent 51%);background-size:300px 120px;animation:twinkle 3.2s var(--ease-sine) infinite alternate}.sky-dusk .stars{opacity:.35}.sky-night .stars{opacity:1}.cloud{position:absolute;height:18px;border-radius:12px;background:#fff8eab3;box-shadow:14px -8px 0 2px #fff8eab3,34px -4px #fff8eab3;animation:drift 80s linear infinite}.cloud.c1{top:78px;width:70px;left:-90px}.cloud.c2{top:128px;width:50px;left:-60px;animation-duration:120s;animation-delay:-60s;opacity:.8}.sky-dusk .cloud{background:#f2a5a5bf;box-shadow:14px -8px 0 2px #f2a5a5bf,34px -4px #ffd27a8c}.sky-night .cloud{opacity:.18}.sea{position:absolute;left:0;right:0;bottom:0;height:var(--sea);background:linear-gradient(180deg,var(--px-teal-mid),var(--px-teal) 60%,var(--px-deep));overflow:hidden}.wave{position:absolute;left:-40px;right:-40px;height:10px;background:radial-gradient(circle at 12px 0,transparent 9px,rgba(124,192,184,.45) 10px 11px,transparent 12px) 0 0 / 24px 10px repeat-x;animation:waves-roll 6s linear infinite}.wave.w1{top:14px}.wave.w2{top:44px;opacity:.6;animation-duration:9s;animation-direction:reverse}.island{position:absolute;left:50%;bottom:calc(var(--sea) - var(--isw) * .17);width:var(--isw);transform:translate(-50%)}.island-svg{display:block;width:100%;height:auto;overflow:visible}.island .glow,.win-island .glow,.sum-island .glow{opacity:var(--glow, .6)}.sky-night .island-svg>path,.sky-night .island-svg .house,.sky-night .island-svg .pier,.sky-night .island-svg .garden,.sky-night .island-svg .lighthouse>path,.sky-night .island-svg .lighthouse>rect{filter:brightness(.72) saturate(.85)}.lamp-spot{cursor:pointer}.lamp-spot.newest .glow,.lamp-spot.newest .bulb{transform-box:fill-box;transform-origin:center;animation:lantern-light 1.4s .5s var(--ease-out) both}.lamp-spot.today .glow{transform-box:fill-box;transform-origin:center;animation:lantern-pulse .9s calc(.65s + var(--k, 0) * .8s) var(--ease-back) 2 both}.fog{animation:fog-breathe 7s var(--ease-sine) infinite alternate}.beam{transform-origin:300px 26px;animation:beam-sweep 6s var(--ease-sine) infinite alternate}.fireflies{position:absolute;inset:20% 0 30%;pointer-events:none;display:none}.sky-dusk .fireflies,.sky-night .fireflies{display:block}.fireflies i{position:absolute;left:calc(8% + var(--i) * 11.5%);width:3px;height:3px;border-radius:50%;background:var(--amber-hi);box-shadow:0 0 6px 2px #ffd27a99;animation:firefly calc(5s + var(--i) * .7s) var(--ease-sine) calc(var(--i) * -1.3s) infinite alternate}.tide-perch{position:absolute;right:max(6px,calc(50% - var(--isw) * .49));bottom:calc(var(--sea) - 4px);display:flex;align-items:flex-end;gap:2px;z-index:2}.tide-perch:after{content:"";position:absolute;right:22px;bottom:-26px;width:7px;height:30px;background:var(--px-wood-dk);border-radius:2px;z-index:-1}.home-tide{cursor:pointer;transform-origin:50% 100%}.tide-perch .tide-bubble{margin-bottom:52px;opacity:0;transform:translateY(6px) scale(.96);transform-origin:100% 100%;transition:opacity .2s var(--ease-out),transform .2s var(--ease-out);pointer-events:none}.tide-perch .tide-bubble.show{opacity:1;transform:none}.tide.blink svg circle:nth-of-type(2){animation:blink .26s linear}.tide.tilt{animation:tilt .9s var(--ease-sine)}.tide.step{animation:step .7s var(--ease-sine)}.tide.hop{animation:hop .42s var(--ease-back)}.tide.fly-in{animation:fly-in .7s var(--ease-out) both}.area-label{position:absolute;left:50%;bottom:10px;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:4px;color:var(--cream);text-shadow:0 2px 0 rgba(11,30,43,.5);white-space:nowrap;z-index:1}.area-bar{width:150px;height:4px;border-radius:2px;background:#fff8ea40;overflow:hidden}.area-bar i{display:block;height:100%;background:var(--amber)}.sheet-today{position:relative;flex:none;padding:14px var(--gutter) 16px;background:var(--page);z-index:2}.sheet-today:before,.sum-sheet:before,.win-sheet:before{content:"";position:absolute;left:0;right:0;top:-9px;height:10px;background:var(--page);-webkit-mask:conic-gradient(from -45deg at bottom,#0000,#000 1deg 89deg,#0000 90deg) 50% / 14px 100%;mask:conic-gradient(from -45deg at bottom,#0000,#000 1deg 89deg,#0000 90deg) 50% / 14px 100%}.sheet-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:10px}.sheet-head h2{font-weight:800;font-size:18px;line-height:24px}.sheet-head .hand{color:var(--ink-soft);white-space:nowrap}.page-cards{display:flex;gap:10px;margin-bottom:14px}.page-card{position:relative;flex:1 1 0;min-width:0;height:128px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:8px 4px;border-radius:14px;background:var(--bg);border:2px solid rgba(31,58,64,.35);box-shadow:var(--shadow-solid);transition:transform .14s var(--ease-back)}.page-card:active{transform:translateY(3px) rotate(-.5deg)}.page-card .glyph,.page-card .glyph svg{display:block;width:44px;height:44px}.pc-name{font-weight:800;font-size:15px;line-height:1.1}.diff-dots{display:flex;gap:3px}.diff-dots i{width:7px;height:7px;border-radius:50%;border:1.5px solid var(--amber-deep)}.diff-dots i.on{background:var(--amber)}.pc-state{display:inline-flex;align-items:center;gap:3px;font-size:13px;font-weight:800;color:var(--ink-soft);font-variant-numeric:tabular-nums}.pc-state .ico{width:16px;height:16px}.page-card.solved{border-color:var(--tide-deep)}.page-card.solved .pc-state{color:var(--tide-deep)}.page-card.open{border-color:var(--amber-deep);background:var(--page);box-shadow:0 0 0 3px #f2a54159,var(--shadow-solid)}.page-card.open .pc-state{color:var(--amber-text)}.page-card.going{border-color:var(--amber-deep);background:var(--page);box-shadow:var(--shadow-solid)}.page-card.going .pc-state{color:var(--tide-deep)}.seal{display:inline-block;width:12px;height:12px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#f2a541,#b4533f);box-shadow:0 0 0 1.5px #b4533f66}.page-card.gold{border-color:#c99a2e;box-shadow:0 0 0 2px #ffd27a,var(--shadow-solid)}.page-cards.deliver .page-card{animation:card-drop .52s calc(.7s + var(--k) * .12s) var(--ease-back) both}.page-cards.deliver .seal{animation:seal-pulse .4s calc(1.4s + var(--k) * .12s) var(--ease-back)}.sheet-actions{display:flex;flex-direction:column;gap:10px}.sheet-actions .btn{width:100%}.sheet-done{margin-bottom:12px;color:var(--ink-soft)}.sheet-done b{color:var(--ink)}@media(min-width:700px)and (min-height:900px){.diorama{--isw: min(88cqw, 720px);--sea: clamp(120px, 24%, 220px)}.home-tide{width:96px;height:96px}}@media(max-height:780px){.page-card{height:120px}}.screen-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:calc(12px + var(--safe-top)) var(--gutter) 10px;flex:none}.screen-head h1{font-family:var(--f-display);font-weight:600;font-size:24px;line-height:30px}.screen-head .sub{color:var(--ink-soft);font-size:14px}.light-pill{display:inline-flex;align-items:center;gap:4px;height:36px;padding:0 12px 0 8px;border-radius:18px;background:var(--teal);color:var(--cream);font-weight:800;font-variant-numeric:tabular-nums}.light-pill .ico{width:20px;height:20px}.light-pill .ico .duo{fill:var(--amber-hi);opacity:.8}.scroll{flex:1;overflow-y:auto;overflow-x:hidden;scrollbar-width:none;padding:4px var(--gutter) 20px;display:flex;flex-direction:column;gap:14px;-webkit-overflow-scrolling:touch}.scroll>*{width:100%;max-width:560px;margin-left:auto;margin-right:auto}.practice-list{display:flex;flex-direction:column;gap:12px}.practice-card{padding:10px 12px;display:flex;flex-direction:column;gap:8px;box-shadow:var(--shadow-solid);border:1.5px solid var(--page-edge)}.pr-head{display:flex;align-items:center;gap:10px}.pr-head .glyph,.pr-head .glyph svg{display:block;width:44px;height:44px}.pr-head>div{flex:1;min-width:0}.pr-head .pr-meta{align-self:flex-start;text-align:right}.pr-row{display:flex;align-items:center;gap:8px}.pr-row .seg{flex:1;min-width:0}.pr-row .seg-btn{padding:0 2px}.pr-head h3{font-weight:800;font-size:18px;line-height:24px}.pr-tag{font-size:13px;color:var(--ink-soft)}.pr-foot{display:flex;align-items:center;justify-content:space-between;gap:8px}.pr-meta{font-size:13px;font-weight:700;color:var(--ink-soft)}.pr-play{width:52px;height:52px;background:var(--amber);border:2px solid var(--amber-deep);box-shadow:0 3px 0 var(--amber-deep)}.pr-play:active{transform:translateY(2px);box-shadow:0 1px 0 var(--amber-deep)}.note{text-align:center;color:var(--ink-soft)}.cta-row .btn{width:100%}.set-group{padding:14px 16px 6px;box-shadow:var(--shadow-solid);border:1.5px solid var(--page-edge)}.set-group h2{font-weight:800;font-size:18px;margin-bottom:4px}.seg-row{flex-direction:column;align-items:stretch;gap:8px}.lang-seg{flex:1;min-width:0;display:grid;grid-template-columns:1fr 1fr}.lang-seg .seg-btn{font-size:13px}.about{padding:6px 0;font-size:14px}.about.faint{color:var(--ink-soft);font-size:13px;padding-bottom:10px}.licenses{display:flex;flex-direction:column;padding:6px 0;border-top:1px solid var(--ink-faint)}.licenses h3{font-size:15px;font-weight:800;padding:6px 0 2px}.licenses a{display:flex;align-items:center;min-height:44px;color:var(--tide-deep);font-weight:700}.play{--board: min( calc(100vw - 24px) , calc(100dvh - 330px) , 552px);background-color:var(--bg-desk);background-image:radial-gradient(120% 70% at 50% -10%,rgba(255,210,122,.22),transparent 60%),var(--tex-wood),linear-gradient(180deg,#6a4430,#4a2f21);background-size:100% 100%,256px 256px,100% 100%;color:var(--cream)}.play-head{display:flex;align-items:center;gap:8px;height:calc(56px + var(--safe-top));padding:var(--safe-top) 8px 0 4px;flex:none;width:100%;max-width:720px;margin:0 auto}.play-head .icon-btn{color:var(--cream)}.play-head .icon-btn .duo{fill:var(--amber-hi)}.play-head .title{flex:1;min-width:0;display:flex;flex-direction:column}.play-head h1{font-family:var(--f-display);font-weight:600;font-size:22px;line-height:26px}.play-head .sub{font-size:13px;color:#fff8eac7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.timer-pill{display:inline-flex;align-items:center;gap:4px;height:44px;min-width:88px;padding:0 14px 0 10px;border:2px solid var(--ink);border-radius:22px;background:var(--page);color:var(--ink);font-weight:800;font-size:16px;font-variant-numeric:tabular-nums;box-shadow:var(--shadow-solid)}.timer-pill .ico{width:18px;height:18px}.no-timer .timer-digits{display:none}.no-timer .timer-pill{min-width:44px;padding:0 11px}.timer-pill.stamp{animation:stamp .42s var(--ease-back);border-color:var(--amber-deep);background:var(--amber-hi)}.day-progress{display:flex;gap:6px;width:min(100% - 32px,400px);margin:0 auto 2px;flex:none}.day-progress i{flex:1;height:6px;border-radius:3px;background:#fff8ea38}.day-progress i.done{background:var(--amber)}.day-progress i.now{background:#ffd27a80;box-shadow:0 0 0 1.5px var(--amber-hi)}.desk{position:relative;flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:4px 0 8px}.board-block{display:flex;flex-direction:column;align-items:center;gap:8px;width:100%}.page-num{align-self:center;width:calc(var(--board) + 8px);margin-bottom:-4px;text-align:right;font-size:19px;line-height:22px;color:#fff8eadb}.board-page{padding:4px;border-radius:12px;transform:rotate(-.4deg);transition:transform .3s var(--ease-out),box-shadow .3s var(--ease-out)}.board-page.lift{transform:rotate(-.4deg) translateY(-12px);box-shadow:0 22px 40px #0b1e2b73}.board-page .board{display:block;width:var(--board);height:var(--board)}.rule-row{width:calc(var(--board) + 8px);margin-top:2px}.chips{display:flex;flex-wrap:wrap;align-items:center;gap:8px 6px}.play .chip{position:relative;height:32px;border:0;background:#fff8eaeb;font-family:inherit;cursor:pointer}.play .chip{z-index:1}.play .chips{row-gap:12px}.play .chip:before{content:"";position:absolute;inset:-6px -3px}.play .chip.done{background:var(--tide-deep);box-shadow:0 0 0 1.5px #fff8ea99}.play .chip.bad{background:#fbe2da}.counters{flex:none;margin-left:auto;padding:0 2px 0 4px;font-size:13px;font-weight:700;line-height:32px;color:#fff8eae6;font-variant-numeric:tabular-nums;white-space:nowrap}.thumb{position:relative;flex:none;padding-bottom:var(--safe-bottom);background:linear-gradient(180deg,#0b1e2b00,#0b1e2b59)}.toolbar{display:flex;justify-content:space-around;align-items:center;height:clamp(76px,9.5dvh,92px);max-width:520px;margin:0 auto;padding:0 8px 6px}.note-slot{display:grid;place-items:center;width:calc(var(--board) + 8px);min-height:48px}.note-slot>*{grid-area:1 / 1}.status{max-width:100%;padding:8px 14px;border-radius:18px;background:var(--page);color:var(--coral-deep);border:2px solid var(--coral-deep);font-weight:800;font-size:14px;text-align:center;opacity:0;transform:translateY(6px);pointer-events:none;transition:opacity .2s var(--ease-out),transform .2s var(--ease-out);z-index:3}.status.show{opacity:1;transform:none}.tight .page-num,.tight .desk-note{display:none}.tight .note-slot{position:absolute;left:50%;bottom:4px;min-height:0;transform:translate(-50%);pointer-events:none}.tide-dock{position:absolute;right:10px;bottom:calc(70px + var(--safe-bottom));display:flex;align-items:flex-end;gap:4px;z-index:4;opacity:0;transform:translateY(24px);pointer-events:none;transition:opacity .22s var(--ease-out),transform .26s var(--ease-back)}.tide-dock.show{opacity:1;transform:none;pointer-events:auto}.tide-dock .tide-bubble{margin-bottom:40px}.desk-note{max-width:calc(100% - 24px);padding:8px 14px 10px;background:var(--page);color:var(--ink);border-radius:4px;box-shadow:0 6px 14px #0b1e2b59;transform:rotate(1.2deg);text-align:center;font-size:20px;transition:opacity .16s var(--ease-out)}.desk-note.hide{opacity:0}.desk-rules{display:none;margin:2px 0 4px;font-family:var(--f-ui);font-size:14px;font-weight:600;line-height:19px;color:var(--ink-soft)}.roomy .desk-rules{display:block}.bubble-note{display:block;margin-top:4px;font-family:var(--f-ui);font-size:13px;font-weight:700;line-height:1.3;color:var(--ink-soft)}.hitstop .board{filter:brightness(1.08)}.overlay.pause{align-items:center;justify-content:center;background:#17414cb3;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:var(--cream)}.pause-box{display:flex;flex-direction:column;align-items:center;gap:12px;width:min(100% - 32px,340px)}.pause-box .btn{width:100%}.pause-box h2{font-family:var(--f-display);font-weight:600;font-size:24px;margin-bottom:8px;font-variant-numeric:tabular-nums}.pause-tide{width:96px;height:96px}.quick{width:100%;margin-top:4px;padding:0 14px;border-radius:14px;background:#fff8ea1a}.quick .row{border-top-color:#fff8ea33;color:var(--cream)}.overlay.win{justify-content:flex-end;gap:18px;padding:calc(8px + var(--safe-top)) 8px 0;background:#0b1e2b8c;animation:fade-in .3s var(--ease-out) both}.win-island{position:relative;flex:1 1 auto;min-height:150px;max-height:280px;border-radius:22px;overflow:hidden;border:3px solid var(--page);box-shadow:var(--shadow-lift);background:linear-gradient(180deg,#3e5c7a,#e8a0a0 60%,#f2a541);--glow: .8;animation:cut-in .42s var(--ease-out) both}.win-island:after{content:"";position:absolute;left:0;right:0;bottom:0;height:26%;background:linear-gradient(180deg,var(--px-teal-mid),var(--px-deep));z-index:0}.win-island .island-svg,.sum-island .island-svg{position:absolute;left:50%;bottom:-8%;width:min(100%,460px);transform:translate(-50%);z-index:1}.win-tide{position:absolute;right:12px;bottom:14%;z-index:2;animation:hop .52s .9s var(--ease-back) 2}.win-sheet{flex:none;display:flex;flex-direction:column;align-items:center;gap:8px;margin:0 -8px;padding:18px var(--gutter) calc(16px + var(--safe-bottom));border-radius:0;color:var(--ink);animation:sheet-up .26s .12s var(--ease-out) both}.win-sheet.instant{animation:none}.ribbon{position:relative;display:inline-flex;align-items:center;height:32px;padding:0 22px;background:var(--coral-deep);color:var(--cream);font-weight:800;font-size:13px;letter-spacing:.08em;text-transform:uppercase;clip-path:polygon(0 0,100% 0,calc(100% - 10px) 50%,100% 100%,0 100%,10px 50%);margin-top:-6px}.win-sub{font-size:14px;font-weight:700;color:var(--ink-soft)}.big-time{font-family:var(--f-display);font-weight:800;font-size:40px;line-height:44px;font-variant-numeric:tabular-nums;animation:stamp .42s .3s var(--ease-back) both}.seals{display:flex;flex-wrap:wrap;justify-content:center;gap:6px}.seal-chip.light{background:var(--teal);color:var(--cream)}.seal-chip.light .ico .duo{fill:var(--amber-hi);opacity:.8}.streak-line{display:inline-flex;align-items:center;gap:6px;font-weight:800;font-size:15px}.mini-lamp,.mini-lamp svg{display:block;width:26px;height:26px}.streak-line.up .mini-lamp{animation:hop .5s .7s var(--ease-back)}.actions{display:flex;flex-direction:column;gap:10px;width:100%;max-width:440px;margin-top:4px}.actions .btn,.pair .btn{width:100%}.pair{display:flex;gap:10px}.pair .btn{flex:1;padding:0 10px}.summary-screen{background:var(--px-teal)}.sum-island{position:relative;flex:1 1 auto;min-height:190px;overflow:hidden;background:linear-gradient(180deg,#3e5c7a,#e8a0a0 60%,#f2a541);--glow: .9}.sum-island:after{content:"";position:absolute;left:0;right:0;bottom:0;height:26%;background:linear-gradient(180deg,var(--px-teal-mid),var(--px-deep))}.sum-island .island-svg{bottom:-6%;width:min(100%,520px)}.sum-tide{position:absolute;right:max(10px,calc(50% - 200px));bottom:18%;z-index:2;animation:hop .52s .6s var(--ease-back) 3}.sum-sheet{position:relative;flex:none;display:flex;flex-direction:column;gap:10px;padding:16px var(--gutter) calc(16px + var(--safe-bottom));border-radius:0;animation:sheet-up .32s var(--ease-out) both}.sum-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.sum-head h1{font-family:var(--f-display);font-weight:600;font-size:24px;line-height:30px}.sum-head .hand{color:var(--ink-soft);white-space:nowrap}.sum-list{list-style:none;margin:0;padding:0}.sum-row{display:block;width:100%;border:0;border-top:1px solid var(--ink-faint);background:transparent;padding:0;text-align:left}.sum-row:first-child{border-top:0}.sum-row li{display:flex;align-items:center;gap:10px;min-height:48px}.sum-row .glyph,.sum-row .glyph svg{display:block;width:34px;height:34px}.sum-row .name{flex:1;font-weight:800}.sum-row .time{font-weight:800;font-variant-numeric:tabular-nums}.sum-total{font-weight:800;font-size:17px;text-align:center}.sum-sheet .btn{width:100%}@media(min-width:600px){.page-cards{width:100%;max-width:520px;margin-left:auto;margin-right:auto}.sheet-today{display:flex;flex-direction:column;align-items:stretch;padding-left:max(var(--gutter),calc(50% - 280px));padding-right:max(var(--gutter),calc(50% - 280px))}.win-sheet,.sum-sheet{align-items:center}.sum-sheet>*{width:100%;max-width:520px;margin-left:auto;margin-right:auto}.overlay.win{padding-left:max(8px,calc(50% - 300px));padding-right:max(8px,calc(50% - 300px))}.win-sheet{margin:0;border-radius:22px 22px 0 0}}@media(orientation:landscape)and (max-height:560px){.play{--board: min( calc(100dvh - 32px) , calc(100cqw - 420px) , 560px);display:grid;grid-template-columns:auto minmax(300px,380px);grid-template-rows:auto auto auto 1fr auto;grid-template-areas:"board head" "board prog" "board rules" "board note" "board thumb";column-gap:16px;justify-content:center;padding:0 max(8px,env(safe-area-inset-right)) 0 max(8px,env(safe-area-inset-left))}.play-head{grid-area:head;height:60px;padding-top:0}.day-progress{grid-area:prog;width:100%}.desk,.board-block{display:contents}.board-page{grid-area:board;align-self:center}.rule-row{grid-area:rules;width:100%;margin-top:6px}.page-num{display:none}.note-slot{grid-area:note;width:100%;align-self:start;margin-top:8px}.thumb{grid-area:thumb;background:none}.toolbar{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;height:auto;padding-bottom:10px}.overlay.win{flex-direction:row;align-items:stretch;padding:8px}.win-island{flex:1;max-height:none}.win-sheet{width:380px;margin:0;border-radius:22px;overflow-y:auto;justify-content:center}.home{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,44%);grid-template-rows:minmax(0,1fr) auto;grid-template-areas:"dio sheet" "dio tab"}.home .hud{right:max(340px,44%)}.home .diorama{grid-area:dio;min-height:0;--isw: min(52cqw, 420px)}.home .sheet-today{grid-area:sheet;min-height:0;overflow-y:auto;padding:10px 14px}.home .sheet-today:before{display:none}.home .page-card{height:104px}.home .page-cards{margin-bottom:10px}.home .tabbar{grid-area:tab}.summary-screen{flex-direction:row}.sum-sheet{width:400px;overflow-y:auto}}@keyframes sway{0%{transform:rotate(-2deg)}to{transform:rotate(2deg)}}@keyframes glow-grow{0%{transform:scale(0);opacity:0}}@keyframes rise-in{0%{opacity:0;transform:translateY(8px)}}@keyframes fade-in{0%{opacity:0}}@keyframes waves-roll{to{background-position-x:24px}}@keyframes twinkle{to{filter:brightness(.6)}}@keyframes drift{to{transform:translate(calc(100vw + 200px))}}@keyframes firefly{0%{transform:translate(0);opacity:.2}50%{opacity:1}to{transform:translate(14px,-18px);opacity:.4}}@keyframes fog-breathe{to{opacity:.28}}@keyframes beam-sweep{0%{transform:rotate(-8deg)}to{transform:rotate(8deg)}}@keyframes lantern-light{0%{transform:scale(0);opacity:0}30%{transform:scale(.4);opacity:1}45%{transform:scale(.3)}to{transform:scale(1.25);opacity:1}}@keyframes lantern-pulse{50%{transform:scale(1.7)}}@keyframes blink{50%{transform:scaleY(.1)}}@keyframes tilt{40%{transform:rotate(-9deg)}70%{transform:rotate(4deg)}}@keyframes step{50%{transform:translate(-6px) translateY(-3px)}}@keyframes hop{40%{transform:translateY(-14px) scale(1.04,.96)}70%{transform:translateY(0) scale(.97,1.03)}}@keyframes fly-in{0%{transform:translate(160px,-120px) rotate(-12deg);opacity:0}}@keyframes card-drop{0%{opacity:0;transform:translateY(-60px) rotate(calc((var(--k) - 1) * 8deg)) scale(.8)}}@keyframes seal-pulse{50%{transform:scale(1.3)}}@keyframes stamp{0%{transform:scale(1.4)}to{transform:scale(1)}}@keyframes cut-in{0%{opacity:0;transform:translateY(-20px) scale(.96)}}@keyframes sheet-up{0%{transform:translateY(100%)}}.win-island.master,.sum-island.master{background:radial-gradient(120% 90% at 50% 0%,#24606b,#17414c 45%,#0b1e2b);--glow: 1}.win-island.master{max-height:340px;border-color:var(--amber-hi);box-shadow:0 0 0 3px var(--amber),0 0 40px #ffd27a8c}.win-island.master:before,.sum-island.master:before{content:"";position:absolute;inset:0;z-index:3;pointer-events:none;background:radial-gradient(60% 55% at 50% 60%,#ffd27ad9,#ffd27a00 70%);opacity:0;animation:master-bloom 1.6s .3s var(--ease-out) both}.master .lamp-spot.on .glow{transform-box:fill-box;transform-origin:center;animation:master-flash 1.5s .3s linear both}.master .lamp-spot.on .bulb{animation:master-bulb 1.5s .3s linear both}.master .lamp-spot.borrowed .glow{animation:master-borrowed 5.2s .3s linear both}.master .lamp-spot.borrowed .bulb{animation:master-bulb-borrowed 5.2s .3s linear both}.master .beam{animation:beam-sweep 6s var(--ease-sine) infinite alternate,master-beam 1.5s .3s linear both}.master .fireflies{display:block;inset:8% 0 24%;z-index:2}.master .fireflies i{width:4px;height:4px}.master .win-tide,.master .sum-tide{animation:hop .52s .7s var(--ease-back) 4}.win-sheet.master{border-top:4px solid var(--amber)}.win-sheet.master .ribbon{height:36px;padding:0 26px;background:var(--amber);color:var(--ink);font-size:15px;letter-spacing:.06em}.win-sheet.master .win-sub{max-width:320px;text-align:center;color:var(--ink)}.seal-chip.gold{background:var(--amber-hi);color:var(--ink);box-shadow:0 0 0 2px var(--amber-deep) inset}.summary-screen.master{background:#0b1e2b}.summary-screen.master .sum-sheet{border-top:4px solid var(--amber)}.sum-master{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:-2px 0 6px;font-size:14px;font-weight:700;color:var(--ink-soft)}.sum-list .size{margin-left:6px;font-size:13px;font-weight:700;color:var(--ink-soft)}.win-note{font-size:14px;font-weight:700;color:var(--ink-soft)}.reduce-motion .master .lamp-spot .glow,.reduce-motion .master .lamp-spot .bulb,.reduce-motion .master:before{animation:none}@keyframes master-borrowed{0%{opacity:0;transform:scale(.6)}3.5%{opacity:1;transform:scale(1.35)}7%{opacity:.2;transform:scale(1)}10.5%{opacity:1;transform:scale(1.35)}14%{opacity:.2;transform:scale(1)}18%,72%{opacity:1;transform:scale(1.15)}to{opacity:0;transform:scale(.8)}}@keyframes master-bulb{0%,to{fill:#ffd27a}24%,48%{fill:#f2a541}12%,36%{fill:#fff8ea}}@keyframes master-bulb-borrowed{0%,72%{fill:#ffd27a}3.5%,10.5%{fill:#fff8ea}to{fill:#17414c}}@keyframes master-beam{0%{opacity:0}20%,to{opacity:1}}.cam{position:absolute;inset:0;z-index:1;transform-origin:0 0}.win-island:not(.master):before{content:"";position:absolute;inset:0;z-index:2;background:#2b4a6b;opacity:0;pointer-events:none;transition:opacity .45s var(--ease-out)}.win-island.dusk:before{opacity:.35}.win-tide{z-index:3}.lamp-hero{position:absolute;z-index:4;width:0;height:0;pointer-events:none;transition:opacity .5s var(--ease-out)}.lamp-hero.out{opacity:0}.hero-glow{position:absolute;left:-56px;top:-56px;width:112px;height:112px;border-radius:50%;background:radial-gradient(circle,#ffd27af2,#f2a5416b 45%,#f2a54100 70%);animation:hero-glow .6s .25s var(--ease-out) both}.hero-lamp,.hero-lamp svg{position:absolute;display:block;width:30px;height:30px}.hero-lamp{left:-15px;top:-18px;animation:hero-pop .42s .18s var(--ease-back) both}.lamp-hero .spark{position:absolute;left:-2px;top:-2px;width:4px;height:4px;border-radius:50%;background:var(--cream);box-shadow:0 0 6px 2px #ffd27ad9;opacity:0;animation:hero-spark .7s .62s var(--ease-out) both}.hero-reflect{position:absolute;left:-5px;top:26px;width:10px;height:26px;border-radius:50%;background:#ffd27ab3;filter:blur(1.5px);opacity:0;animation:hero-reflect .52s .7s var(--ease-sine) 2 both}.win-sheet.later{animation-delay:1.3s}.win-sheet.later .big-time{animation-delay:1.6s}.win-sheet.later .streak-line.up .mini-lamp{animation-delay:2s}@keyframes hero-glow{0%{opacity:0;transform:scale(0)}}@keyframes hero-pop{0%{opacity:0;transform:scale(.2)}}@keyframes hero-spark{0%{opacity:1;transform:rotate(var(--a)) translateY(-6px)}to{opacity:0;transform:rotate(var(--a)) translateY(-38px)}}@keyframes hero-reflect{0%,to{opacity:.15}50%{opacity:.85}}.streak-line.up .mini-lamp{animation:lamp-pop .52s .7s var(--ease-back)}@keyframes lamp-pop{50%{transform:scale(1.3);filter:drop-shadow(0 0 6px rgba(255,210,122,.9))}}.page-num{transition:opacity .2s var(--ease-out)}.board-block:has(>.board-page.lift)>.page-num{opacity:0}.win-island{container-type:size}.win-island .island-svg{width:min(100%,460px,124cqh)}.chip.bad,.play .chip.bad{background:var(--coral-deep);color:var(--cream)}.chip.bad .dot{border-color:var(--cream)}.known:not(.unfold) .desk-note{display:none}.note-fold{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 16px;border:0;border-radius:4px 4px 14px;background:#fff8eae6;color:var(--ink);font-family:var(--f-hand);font-size:21px;font-weight:600;box-shadow:0 4px 10px #0b1e2b4d;transform:rotate(-1deg);transition:opacity .16s var(--ease-out)}.note-fold{flex-direction:column;padding:6px 16px}.fold-title{display:inline-flex;align-items:center;gap:6px}.fold-howto{display:none;font-size:18px;line-height:1.1;color:var(--ink-soft)}.perch .fold-howto{display:block}.note-fold .ico{width:18px;height:18px}.note-fold.hide,.unfold .note-fold,.tight .note-fold{opacity:0;pointer-events:none}.tight .note-fold{display:none}.roomy .desk-note{margin-top:6px;padding:12px 18px 14px}.roomy .desk-rules{font-size:15px;line-height:21px}.skip-pill{display:inline-flex;align-items:center;height:44px;padding:0 16px;border:2px solid var(--ink);border-radius:22px;background:var(--page);color:var(--ink);font-family:inherit;font-weight:800;font-size:14px;white-space:nowrap;box-shadow:var(--shadow-solid)}.tutorial .tide-dock{bottom:calc(76px + var(--safe-bottom))}.tutorial .tide-dock .tide-bubble{max-width:min(250px,calc(100vw - 110px))}.sky-morning,.sky-afternoon{--glow: .8}.sky-dusk{--glow: .9}.diorama:not(.sky-night) .island-svg>path,.diorama:not(.sky-night) .island-svg .house,.diorama:not(.sky-night) .island-svg .pier,.diorama:not(.sky-night) .island-svg .garden,.diorama:not(.sky-night) .island-svg .lighthouse>path,.diorama:not(.sky-night) .island-svg .lighthouse>rect{filter:brightness(.8) saturate(.9)}.reflect-lamp{opacity:.32;animation:lamp-shimmer 2.6s var(--ease-sine) infinite alternate}@keyframes lamp-shimmer{to{opacity:.12}}.island.wake .lamp-spot.on .glow{transform-box:fill-box;transform-origin:center;animation:lamp-wake .56s calc(.25s + var(--d) * 14ms) var(--ease-out) both}@keyframes lamp-wake{45%{opacity:1;transform:scale(1.7)}}.reduce-motion .island.wake .lamp-spot.on .glow,.reduce-motion .reflect-lamp{animation:none}.lit-n{margin:0 1px;font-family:var(--f-display);font-weight:800;font-size:22px;line-height:1;color:var(--amber-hi)}.tide-perch{--lift: calc(var(--isw) * .15);--side: calc(var(--isw) * .25)}.tide-perch .tide-bubble{position:absolute;right:var(--side);bottom:calc(100% + var(--lift));width:max-content;max-width:min(220px,60vw);margin:0;border-radius:16px;font-size:19px;cursor:pointer}.tide-perch .tide-bubble.show{pointer-events:auto}.tide-perch .tide-bubble:after{content:"";position:absolute;top:calc(100% - 4px);right:calc(-1 * var(--side) + 30px);width:calc(var(--side) - 10px);height:calc(var(--lift) + 10px);pointer-events:none;background:radial-gradient(circle at 14% 18%,var(--page) 4.4px,var(--ink) 5px 6.6px,transparent 7px),radial-gradient(circle at 52% 52%,var(--page) 2.8px,var(--ink) 3.4px 4.8px,transparent 5.2px),radial-gradient(circle at 86% 86%,var(--ink) 2.6px,transparent 3px)}.tutorial .page-num{visibility:hidden}.start-here{position:absolute;top:-11px;left:50%;transform:translate(-50%) rotate(-2deg);padding:2px 10px;border-radius:4px;background:var(--coral-deep);color:var(--cream);font-size:12px;font-weight:800;letter-spacing:.04em;white-space:nowrap;box-shadow:var(--shadow-solid)}.pc-state .seal{margin-right:3px}.perch .tide-dock{opacity:1;transform:none;pointer-events:auto}.perch .tide-dock .tide-bubble{opacity:0;transform:translateY(6px);pointer-events:none;transition:opacity .2s var(--ease-out),transform .2s var(--ease-out)}.perch .tide-dock.show .tide-bubble{opacity:1;transform:none;pointer-events:auto}.perch .dock-tide{cursor:pointer}@media(min-height:880px){.perch .dock-tide{width:84px;height:84px}}@media(max-height:700px)and (orientation:portrait){.overlay.win{padding-top:calc(56px + var(--safe-top))}}.win-say{position:absolute;right:74px;bottom:calc(14% + 40px);z-index:5;max-width:min(220px,60%);font-size:18px;opacity:0;animation:win-say 3.4s 2.5s var(--ease-out) both;pointer-events:none}@keyframes win-say{0%{opacity:0;transform:translateY(8px) scale(.96)}10%,85%{opacity:1;transform:none}to{opacity:0}}.overlay.sunday-cover{background:radial-gradient(120% 80% at 50% 20%,#24606b,#17414c 45%,#0b1e2b);color:var(--cream)}.sunday-cover .ov-box{align-items:center;text-align:center;gap:12px}.sunday-cover .ribbon{background:var(--amber);color:var(--ink)}.sc-num{font-family:var(--f-display);font-weight:800;font-size:30px;line-height:36px}.sc-lamp,.sc-lamp svg{display:block;width:112px;height:112px}.sc-lamp{filter:drop-shadow(0 0 26px rgba(255,210,122,.75));animation:sway 2.4s var(--ease-sine) infinite alternate;transform-origin:50% 0}.sc-say{max-width:280px;color:var(--ink)}.sc-tide{width:72px;height:72px}.sunday-cover .btn{width:100%;max-width:420px}.board{touch-action:none;outline:none;overflow:visible;-webkit-user-select:none;user-select:none}.board *{transform-box:fill-box;transform-origin:center}.board .grid{stroke:var(--ink-faint);stroke-width:1px;vector-effect:non-scaling-stroke}.board .frame{fill:none;stroke:var(--ink);stroke-width:3px;vector-effect:non-scaling-stroke}.board .press{fill:#1f3a4014}.board .press-cross{fill:#1f3a400d}.board .cursor{fill:none;stroke:var(--amber-deep);stroke-width:3px;stroke-dasharray:6 4;vector-effect:non-scaling-stroke}.board .hint-cell{fill:#ffd27a2e;stroke:var(--amber-deep);stroke-width:3px;stroke-dasharray:7 5;vector-effect:non-scaling-stroke;animation:hint-in .22s var(--ease-out) both,march 1.2s linear infinite}.board .hint-cell.focus{fill:#ffd27a66;stroke-width:3.5px}.board .tut-cell{fill:#ffd27a38;stroke:var(--amber-deep);stroke-width:3px;vector-effect:non-scaling-stroke;pointer-events:none;transform-box:fill-box;transform-origin:center;animation:tut-pulse 1.1s var(--ease-sine) infinite alternate}.board .tut-cell.focus{fill:#ffd27a73;stroke-width:4px}@keyframes tut-pulse{0%{opacity:.55;transform:scale(.94)}to{opacity:1;transform:scale(1)}}.reduce-motion .board .tut-cell{animation:none}.board .blink{animation:wobble .16s var(--ease-sine) 2}.win-wave rect{fill:var(--amber-hi);opacity:0;mix-blend-mode:screen;animation:wave-cell .26s var(--ease-out) both}.farois .cell{transition:filter .35s var(--ease-out)}.farois .c0{fill:var(--c0)}.farois .c1{fill:var(--c1)}.farois .c2{fill:var(--c2)}.farois .c3{fill:var(--c3)}.farois .c4{fill:var(--c4)}.farois .c5{fill:var(--c5)}.farois .c6{fill:var(--c6)}.farois .c7{fill:var(--c7)}.farois .c8{fill:var(--c8)}.farois .c9{fill:var(--c9)}.farois .cell.dry{filter:saturate(1.25) brightness(.98)}.farois .wash{opacity:.08;pointer-events:none}.farois .cb-layer{display:none;pointer-events:none}.cb .farois .cb-layer{display:inline}.farois .pat{fill:#1f3a4052}.farois .pat-line{fill:none;stroke:#1f3a4052;stroke-width:3}.farois .region-edge{fill:none;stroke:var(--ink);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.beacon .glow{fill:var(--amber-hi);opacity:.22}.beacon .tower{fill:var(--cream)}.beacon .band{fill:var(--coral)}.beacon .tower-line,.beacon .lamp-room,.beacon .roof{stroke:var(--ink);stroke-width:2px;stroke-linejoin:round;vector-effect:non-scaling-stroke}.beacon .tower-line{fill:none}.beacon .gallery,.beacon .roof{fill:var(--ink)}.beacon .lamp-room{fill:var(--amber)}.beacon .door{fill:var(--px-wood-dk)}.board[data-n="10"] .beacon .tower-line,.board[data-n="10"] .beacon .lamp-room{stroke-width:1.5px}.beacon.enter{transform-origin:50% 100%;animation:beacon-pop .18s var(--ease-back)}.beacon.enter .glow{animation:ignite .52s var(--ease-out)}.beacon.leave,.xmark.leave,.sym.leave{animation:shrink-out .14s var(--ease-in) forwards;pointer-events:none}.beacon.bad .lamp-room{fill:var(--coral)}.beacon.bad .glow{fill:var(--coral);opacity:.3}.beacon.bad{animation:shake .1s var(--ease-sine) 3}.beacon.lit .glow,.won .beacon .glow{opacity:.75;animation:lit-glow .9s var(--ease-out)}.won .beacon .lamp-room{fill:var(--amber-hi)}.xmark{fill:none;stroke:var(--ink-x);stroke-width:2px;stroke-linecap:round;vector-effect:non-scaling-stroke}.xmark.enter{stroke-dasharray:1;animation:pencil .12s var(--ease-out) both}.farois .conflict{stroke:var(--coral-deep);stroke-width:2px;stroke-dasharray:6 5;vector-effect:non-scaling-stroke}.farois .beams line{stroke:var(--amber-hi);stroke-width:12;stroke-linecap:round;opacity:0;animation:beam-fade .4s var(--ease-out)}.trilha .frame-bg{fill:var(--page)}.trilha .sand{opacity:.6}.trilha .visited{fill:#f2a54138}.trilha .uncovered{fill:var(--coral-soft);stroke:var(--coral-deep);stroke-width:1.5px;stroke-dasharray:4 4;vector-effect:non-scaling-stroke}.trilha .rope-shadow,.trilha .rope-edge,.trilha .rope,.trilha .rope-twist,.trilha .rope-light{fill:none;stroke-linecap:round;stroke-linejoin:round}.trilha .rope-shadow{stroke:#0e2a3338;stroke-width:50;transform:translateY(4px)}.trilha .rope-edge{stroke:var(--px-wood-dk);stroke-width:50}.trilha .rope{stroke:var(--rope);stroke-width:44}.trilha .rope-twist{stroke:var(--px-wood-dk);stroke-width:44;stroke-dasharray:3 9;stroke-linecap:butt;opacity:.32}.trilha .rope-light{stroke:var(--amber-hi);stroke-width:9;filter:drop-shadow(0 0 4px rgba(255,210,122,.9))}.trilha .rope-light.grow,.trilha .rope-light.win{stroke-dasharray:1;animation:pencil .3s var(--ease-out) both}.trilha .rope-light.win{stroke-width:14;animation-duration:.7s;animation-delay:.12s}.trilha .fence-shadow{fill:#0e2a3333}.trilha .fence-wood{fill:var(--ink)}.trilha .nail{fill:var(--cream)}.head-lamp .glow{fill:var(--amber-hi);opacity:.4}.head-lamp .hl-handle{fill:none;stroke:var(--ink);stroke-width:3}.head-lamp .hl-cap{fill:var(--ink)}.head-lamp .hl-glass{fill:var(--amber-hi);stroke:var(--ink);stroke-width:2px;vector-effect:non-scaling-stroke}.head-lamp .hl-flame{fill:var(--amber-deep);transform-origin:50% 100%;animation:flicker .9s var(--ease-sine) infinite alternate}.buoy .buoy-body{fill:var(--cream);stroke:var(--ink);stroke-width:2px;vector-effect:non-scaling-stroke}.buoy .buoy-band{fill:none;stroke:var(--coral);stroke-width:7;stroke-dasharray:25 25;stroke-dashoffset:12.5}.buoy text{font-family:var(--f-ui);font-weight:800;font-size:38px;fill:var(--ink)}.buoy text.two{font-size:31px}.buoy .ring{fill:none;stroke:var(--amber);stroke-width:6}.buoy.reached .buoy-body{fill:var(--amber-hi)}.buoy .mooring{fill:none;stroke:var(--ink);stroke-width:4}.buoy .flag-pole{stroke:var(--ink);stroke-width:4;stroke-linecap:round}.buoy .flag{fill:var(--amber);stroke:var(--ink);stroke-width:2px;stroke-linejoin:round;vector-effect:non-scaling-stroke}.buoy.dip{animation:dip .26s var(--ease-back)}.buoy.dip .ring{animation:ring-out .3s var(--ease-out)}.mare .sand-bed{fill:#d6c39a}.mare .tile{fill:var(--page);stroke:var(--page-edge);stroke-width:1.5px;vector-effect:non-scaling-stroke;filter:drop-shadow(0 2px 0 rgba(91,58,40,.22))}.mare .tile.given{fill:var(--px-paper-lo);filter:none}.mare .tile-shine{fill:#ffffffb3}.mare .given-dot{fill:#1f3a40b3}.mare .wet{fill:#3e8a8c80;animation:fade-in .3s var(--ease-out)}.mare .over{fill:var(--coral-soft)}.mare .triple{fill:none;stroke:var(--coral-deep);stroke-width:2.5px;stroke-dasharray:6 4;vector-effect:non-scaling-stroke}.sym .shell-body{fill:var(--coral)}.sym .shell-ridge{stroke:#f7c0b0;stroke-width:4;stroke-linecap:round;fill:none}.sym .shell-line,.sym .shell-hinge,.sym .star-body{stroke:var(--ink);stroke-width:2px;stroke-linejoin:round;vector-effect:non-scaling-stroke}.sym .shell-line{fill:none}.sym .shell-hinge{fill:var(--coral)}.sym .star-body{fill:var(--amber)}.sym .star-core{fill:var(--amber-hi)}.sym .star-dot{fill:var(--amber-deep)}.sym.enter,.sym.swap{animation:sym-in .16s var(--ease-back)}.sym.leave{animation:sym-out .16s var(--ease-in) forwards}.sym.bad{animation:shake .1s var(--ease-sine) 3}.sym.hop{animation:hop-sym .38s var(--ease-back) both}.sign .pebble-shadow{fill:#0e2a3333}.sign .pebble{fill:var(--page);stroke:var(--ink);stroke-width:1px;vector-effect:non-scaling-stroke}.sign path{fill:none;stroke:var(--ink);stroke-width:2px;stroke-linecap:round;vector-effect:non-scaling-stroke}.sign.bad .pebble{fill:#fbe2da;stroke:var(--coral-deep);stroke-width:2px}.sign.bad path{stroke:var(--coral-deep)}.tide-sweep rect{fill:var(--tide);opacity:.2}.tide-sweep.row{animation:sweep-x .3s var(--ease-out) forwards}.tide-sweep.col{animation:sweep-y .3s var(--ease-out) forwards}.margin-counters text{font-family:var(--f-ui);font-weight:800;fill:var(--ink-soft)}.margin-counters .full text{fill:var(--tide-deep)}.margin-counters .over text{fill:var(--coral-deep)}.margin-counters .mc.dim{opacity:.35;transition:opacity .2s var(--ease-out)}.margin-counters .shell .mc-ico{fill:var(--coral);stroke:var(--ink);stroke-width:1px;vector-effect:non-scaling-stroke}.margin-counters .star .mc-ico{fill:var(--amber);stroke:var(--ink);stroke-width:1px;vector-effect:non-scaling-stroke}@keyframes beacon-pop{0%{transform:scale(.6)}to{transform:scale(1)}}@keyframes ignite{0%{opacity:0;transform:scale(0)}45%{opacity:.7;transform:scale(1.4)}to{opacity:.22;transform:scale(1)}}@keyframes lit-glow{0%{opacity:0;transform:scale(.4)}}@keyframes beam-fade{0%{opacity:.35;stroke-dasharray:0 200}40%{opacity:.35}to{opacity:0}}@keyframes shrink-out{to{transform:scale(0);opacity:0}}@keyframes pencil{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(4px)}75%{transform:translate(-4px)}}@keyframes wobble{25%{transform:translate(2px)}75%{transform:translate(-2px)}}@keyframes wave-cell{0%{opacity:0}45%{opacity:.75}to{opacity:0}}@keyframes hint-in{0%{opacity:0;transform:scale(1.2)}}@keyframes march{to{stroke-dashoffset:-24}}@keyframes flicker{to{transform:scale(.88,1.08)}}@keyframes dip{0%{transform:scale(1)}35%{transform:scale(.9)}70%{transform:scale(1.1)}to{transform:scale(1)}}@keyframes ring-out{0%{transform:scale(.8);opacity:1}to{transform:scale(1.25);opacity:.6}}@keyframes sym-in{0%{transform:scale(.3) rotate(-90deg);opacity:0}}@keyframes sym-out{to{transform:scale(0) rotate(90deg);opacity:0}}@keyframes hop-sym{50%{transform:translateY(-14px) scale(1.08)}}@keyframes sweep-x{0%{transform:translate(0)}to{transform:translate(var(--travel))}}@keyframes sweep-y{0%{transform:translateY(0)}to{transform:translateY(var(--travel))}}button.hud-pill{color:inherit;cursor:pointer;min-height:44px;height:44px}.hud-anchor{display:inline-flex;align-items:center;gap:1px;margin-left:4px;padding-left:6px;border-left:1px solid rgba(255,248,234,.3)}.hud-anchor .ico{width:16px;height:16px}.hud-anchor small{font-size:13px}.faint{color:var(--ink-soft);font-size:13px}.link-btn{align-self:center;min-height:44px;min-width:160px;padding:0 16px;border:0;background:transparent;color:var(--ink-soft);font-weight:700;font-size:15px;text-decoration:underline;text-underline-offset:3px}.streak-screen .screen-head h1{flex:1;text-align:center}.streak-hero{display:flex;flex-direction:column;align-items:center;gap:4px;padding-top:4px;text-align:center}.streak-lamp{position:relative;width:112px;height:112px}.big-lamp,.big-lamp svg{display:block;width:112px;height:112px}.streak-lamp:not(.out) .big-lamp{animation:lamp-sway 3.2s var(--ease-sine) infinite alternate;transform-origin:50% 10%}.streak-lamp.out .big-lamp{filter:saturate(.4)}.smoke{position:absolute;left:50%;top:26px;width:10px;height:10px;border-radius:50%;background:#45636a59;animation:smoke 2.4s var(--ease-out) infinite}.streak-num{font-family:var(--f-display);font-weight:800;font-size:72px;line-height:1;color:var(--ink);text-shadow:0 0 18px var(--amber-hi),0 2px 0 var(--amber-hi);font-variant-numeric:tabular-nums}.streak-label{font-weight:800;font-size:18px}.streak-rule{font-size:15px;color:var(--ink-soft);max-width:300px}.streak-lost{display:flex;flex-direction:column;gap:4px;max-width:320px}.streak-lost h2{font-family:var(--f-display);font-weight:600;font-size:22px}.streak-lost .streak-num,.streak-screen .streak-lamp.out+.streak-num{color:var(--ink-soft);text-shadow:none}.week-row{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.wk{display:flex;flex-direction:column;align-items:center;gap:4px}.wk b{font-size:13px;font-weight:800;color:var(--ink-soft)}.week-row.light .wk b{color:#fff8eabf}.wk-dot,.cal-dot{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:50%;border:2px solid var(--ink-faint);background:transparent;color:var(--ink)}.wk-dot .ico,.cal-dot .ico{width:20px;height:20px}.st-all{background:var(--amber);border-color:var(--amber-deep)}.st-some{background:var(--amber-hi);border-color:var(--amber)}.st-anchor{background:var(--tide);border-color:var(--tide-deep);color:var(--cream)}.st-anchor .ico .duo{fill:var(--cream)}.st-missed{border-color:var(--ink-faint);background:#1f3a400f}.st-future{border-style:dotted;opacity:.6}.st-none{border-color:#1f3a401f}.cal-dot .dom{font-size:13px;font-weight:800;color:var(--ink-soft)}.wk-dot.today,.cal-dot.today{outline:2px dashed var(--amber-deep);outline-offset:2px}.wk-dot.pop{animation:dot-pop .52s var(--ease-back) .42s both}.streak-actions{display:flex;flex-direction:column;gap:10px}.streak-actions .btn{width:100%}.anchor-card,.letters,.cal{padding:14px 16px;display:flex;flex-direction:column;gap:8px;border:1.5px solid var(--page-edge);box-shadow:var(--shadow-solid)}.anchor-head{display:flex;align-items:center;gap:8px}.anchor-head h3{flex:1;font-weight:800;font-size:18px}.anchor-ico{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--tide);color:var(--cream)}.anchor-ico .ico{width:22px;height:22px}.anchor-count{font-weight:800;font-variant-numeric:tabular-nums}.anchor-card p{font-size:15px}.anchor-card .hand{font-size:19px;color:var(--ink-soft)}.anchor-card .btn{width:100%}.anchor-note{min-height:18px;font-size:13px!important;color:var(--ink-soft);text-align:center}.milestone-bar{display:flex;flex-direction:column;gap:6px}.mb-head{display:flex;justify-content:space-between;font-weight:800;font-size:15px}.mb-track{height:10px;border-radius:5px;background:var(--ink-faint);overflow:hidden}.mb-track i{display:block;height:100%;border-radius:5px;background:var(--amber)}.letters h3{display:flex;align-items:center;gap:8px;font-weight:800;font-size:17px}.letters h3 .ico,.letter-row .ico{width:20px;height:20px}.letter-row{display:flex;align-items:center;gap:10px;min-height:48px;border:0;border-top:1px solid var(--ink-faint);background:transparent;text-align:left;font-weight:700}.letter-row span:not(.ico){flex:1}.sheet-ov{align-items:center;justify-content:center;padding:calc(16px + var(--safe-top)) var(--gutter) calc(16px + var(--safe-bottom));background:#0b1e2b9e;overflow-y:auto;z-index:30}.ov-box{display:flex;flex-direction:column;align-items:center;gap:12px;width:min(100%,380px);margin:auto 0;text-align:center}.ov-box>.btn{width:100%}.streak-up,.anchor-used,.welcome-back{background:var(--teal);color:var(--cream)}.streak-up .streak-num{color:var(--cream);text-shadow:none;filter:drop-shadow(0 0 12px rgba(255,210,122,.75))}.streak-up .wk-dot{border-color:#fff8ea59}.streak-up .wk-dot.st-all,.streak-up .wk-dot.st-some{border-color:var(--amber-deep)}.streak-up .streak-label,.streak-up .su-sub{color:var(--cream)}.su-lamp{animation:lamp-drop .52s var(--ease-back) both}.odo{display:inline-block;height:1em;overflow:hidden;vertical-align:top}.odo-roll{display:flex;flex-direction:column;transition:transform .5s var(--ease-out)}.odo-roll b{height:1em;line-height:1em;font-weight:800}.rolled .odo-roll{transform:translateY(-1em)}.su-tide,.wb-tide{width:72px;height:72px;animation:hop .7s var(--ease-back) .3s both}.anchor-used h2,.welcome-back h2,.letter-head .ribbon{font-family:var(--f-display)}.anchor-used h2,.welcome-back h2{font-weight:600;font-size:26px}.au-anchor{position:relative;display:grid;place-items:center;width:96px;height:96px;border-radius:50%;background:var(--tide);animation:anchor-drop .3s var(--ease-out) both}.au-anchor>.ico{width:56px;height:56px;color:var(--cream)}.au-anchor>.ico .duo{fill:var(--cream)}.drops b{position:absolute;bottom:6px;width:8px;height:8px;border-radius:50%;background:var(--px-foam);animation:splash .6s var(--ease-out) .26s both}.drops b:nth-child(1){left:18px;--dx: -14px}.drops b:nth-child(2){left:44px;--dx: 0px}.drops b:nth-child(3){left:70px;--dx: 14px}.letter-ov{background:#0b1e2beb}.letter-head{display:flex;flex-direction:column;align-items:center;gap:6px;color:var(--cream)}.letter-head .hand{font-size:21px}.letter-paper{width:100%;padding:20px 20px 16px;text-align:left;font-family:var(--f-hand);font-weight:600;font-size:22px;line-height:1.25;color:var(--ink);background:linear-gradient(180deg,var(--px-paper-hi),var(--px-paper));display:flex;flex-direction:column;gap:10px}.letter-paper p.new{animation:ink-in .5s var(--ease-out) both}.letter-sign{align-self:flex-end;font-style:italic}.letter-perks{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.letter-perks:empty{display:none}.notif-ask{background:linear-gradient(180deg,#3e5c7a,#8c6e9e 45%,#e8a0a0 80%,#f2a541)}.ask-tide{width:112px;height:112px}.ask-card{width:100%;padding:16px;display:flex;flex-direction:column;gap:12px;text-align:left}.ask-line{font-family:var(--f-display);font-weight:600;font-size:21px;line-height:1.25}.notif-mock{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:14px;background:#fff;color:#1f2a2e;box-shadow:0 4px 14px #0e2a332e}.nm-icon{display:grid;place-items:center;flex:none;width:28px;height:28px;border-radius:50%;background:var(--amber)}.nm-icon .ico{width:18px;height:18px}.nm-text{flex:1;min-width:0}.nm-app{font-size:13px;color:#5b6a6e}.nm-title{font-weight:800;font-size:15px}.nm-body{font-size:14px;line-height:1.3}.nm-large,.nm-large svg{display:block;flex:none;width:44px;height:44px;border-radius:50%;background:var(--amber-hi)}.ask-time{display:flex;align-items:center;justify-content:space-between;gap:12px;font-weight:800}.time-select{min-height:44px;min-width:110px;padding:0 12px;border-radius:12px;border:2px solid var(--ink);background:var(--page);color:var(--ink);font:inherit;font-weight:800;font-variant-numeric:tabular-nums}.ask-promise{font-size:15px;color:var(--ink-soft)}.notif-ask .link-btn{color:var(--cream)}.calendar-ov .ov-box{width:min(100%,400px)}.cal{width:100%;text-align:center}.cal-nav{display:flex;align-items:center;justify-content:space-between}.cal-nav h2{font-family:var(--f-display);font-weight:600;font-size:20px}.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px}.cal-head{font-size:13px;color:var(--ink-soft);padding-bottom:2px}.cal-cell{position:relative;display:grid;place-items:center;min-height:44px}.cal-cell .cal-dot{width:32px;height:32px}.cal-cell small{position:absolute;right:2px;bottom:0;font-size:11px;font-weight:800;color:var(--ink-soft)}.cal-dot.mini{width:18px;height:18px;border-width:1.5px}.cal-dot.mini .ico{width:12px;height:12px}.cal-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 12px;font-size:13px}.cal-legend>span{display:inline-flex;align-items:center;gap:4px}.cal .btn{width:100%}.ranking .scroll{padding-bottom:12px}.ranking .scroll>*,.streak-screen .scroll>*{flex:none}.rank-chips{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none}.rank-chip{display:inline-flex;align-items:center;gap:4px;flex:none;min-height:44px;padding:0 12px;border-radius:22px;border:1.5px solid var(--ink-faint);background:var(--page);color:var(--ink);font-weight:700;font-size:13px}.rank-chip.on{background:var(--teal);border-color:var(--teal);color:var(--cream)}.rank-chip .ico,.chip-glyph,.chip-glyph svg{display:block;width:20px;height:20px}.rank-status{display:flex;flex-direction:column;gap:8px;padding:12px 14px;border-radius:14px;background:var(--tide-soft);font-size:15px}.rank-status .btn{align-self:flex-start}.rank-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;min-height:20px}.rank-stale,.rank-offline{display:inline-flex;align-items:center;gap:4px}.rank-stale .ico,.rank-offline .ico{width:18px;height:18px}.rank-offline{font-weight:700;color:var(--ink);font-size:15px}.rank-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.rank-row{display:flex;align-items:center;gap:10px;min-height:52px;padding:0 10px;border-bottom:1px solid var(--ink-faint);font-variant-numeric:tabular-nums}.rr-pos{display:inline-grid;place-items:center;flex:none;min-width:32px;height:32px;padding:0 4px;border-radius:16px;font-weight:800;font-size:14px;color:var(--ink-soft)}.medal .rr-pos{color:var(--ink);border:2px solid var(--ink)}.m1 .rr-pos{background:var(--px-glow)}.m2 .rr-pos{background:#c9d6da}.m3 .rr-pos{background:#d9a06b}.rr-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700}.rr-name small{margin-left:6px;padding:1px 6px;border-radius:8px;background:var(--amber);color:var(--ink);font-size:12px;font-weight:800}.rr-val{font-weight:800}.rank-row.me{background:#f2a5412e;box-shadow:inset 0 0 0 2px var(--amber);border-radius:10px;animation:me-glow 1.2s var(--ease-out) 1}.rank-empty{padding:24px 8px;text-align:center;color:var(--ink-soft)}.rank-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px 12px;flex:none;min-height:52px;padding:8px var(--gutter);background:#f2a5412e;border-top:2px solid var(--amber);font-weight:700;font-variant-numeric:tabular-nums}.rank-foot.empty{display:none}.rank-foot .pct{padding:2px 10px;border-radius:12px;background:var(--teal);color:var(--cream);font-weight:800}.seal-chip.gold{background:var(--px-glow);border:1.5px solid var(--amber-deep)}.sum-rank{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;min-height:0;font-weight:800;text-align:center}.sum-rank:empty{display:none}.nick-row{flex-direction:column;align-items:stretch;gap:8px}.nick-line{display:flex;gap:8px}.nick-input{flex:1;min-width:0;min-height:48px;padding:0 12px;border-radius:12px;border:2px solid var(--ink-faint);background:var(--page);color:var(--ink);font:inherit;font-weight:700}.nick-input:focus{border-color:var(--amber-deep);outline:none}.nick-msg{padding-bottom:10px}.nick-msg.bad{color:var(--coral-deep);font-weight:700}@keyframes lamp-sway{0%{transform:rotate(-2deg)}to{transform:rotate(2deg)}}@keyframes lamp-drop{0%{transform:translateY(-60px);opacity:0}}@keyframes smoke{0%{transform:translate(-50%) scale(.6);opacity:.8}to{transform:translate(-30%,-36px) scale(1.8);opacity:0}}@keyframes dot-pop{0%{transform:scale(.4)}to{transform:none}}@keyframes anchor-drop{0%{transform:translateY(-40px);opacity:0}}@keyframes splash{0%{transform:none;opacity:1}to{transform:translate(var(--dx),-22px);opacity:0}}@keyframes ink-in{0%{opacity:0;transform:translateY(6px)}}@keyframes hop{0%{transform:translateY(20px) scale(.8);opacity:0}}@keyframes me-glow{0%{box-shadow:inset 0 0 0 2px var(--amber),0 0 18px var(--amber-hi)}}@media(max-height:700px){.streak-num{font-size:56px}.streak-lamp,.big-lamp,.big-lamp svg{width:84px;height:84px}.ask-tide{width:72px;height:72px}}.notif-seg .seg-btn{white-space:normal;line-height:1.15;padding:4px 6px}.letter-ov.sealed .ov-box>:not(.bottle-stage){display:none}.bottle-stage{position:relative;display:flex;flex-direction:column;align-items:center;gap:10px;width:100%;min-height:320px;padding:8px 0 4px;border:0;background:none;color:var(--cream);font-family:inherit;cursor:pointer}.bottle-bubble{max-width:min(260px,80vw);text-align:center;animation:rise-in .42s .2s var(--ease-out) both}.bottle,.bottle svg{display:block;width:120px;height:160px}.bottle{filter:drop-shadow(0 0 18px rgba(255,210,122,.45));animation:bottle-in .7s var(--ease-back) both,bottle-bob 2.4s .7s var(--ease-sine) infinite alternate}.bottle-tide{position:absolute;right:4px;bottom:40px;width:64px;height:64px}.bottle-tide svg{width:100%;height:100%}.bottle-hint{font-size:21px;color:var(--amber-hi);animation:rise-in .42s .6s var(--ease-out) both}.bottle .wax-l,.bottle .wax-r{transform-box:fill-box;transition:transform .9s .25s var(--ease-out),opacity .7s .45s var(--ease-out)}.bottle .wax-l{transform-origin:100% 50%}.bottle .wax-r{transform-origin:0 50%}.letter-ov.opening .bottle{animation:bottle-crack 1.2s var(--ease-out) both}.letter-ov.opening .wax-l{transform:translate(-14px,-8px) rotate(-38deg);opacity:0}.letter-ov.opening .wax-r{transform:translate(14px,-8px) rotate(38deg);opacity:0}.letter-ov:not(.sealed) .letter-paper{animation:rise-in .42s var(--ease-out) both}@keyframes bottle-in{0%{opacity:0;transform:translateY(80px) rotate(-14deg)}}@keyframes bottle-bob{to{transform:translateY(-8px) rotate(4deg)}}@keyframes bottle-crack{0%{transform:none}20%{transform:rotate(-6deg) scale(1.04)}40%{transform:rotate(5deg) scale(1.06);filter:drop-shadow(0 0 30px rgba(255,210,122,.9))}to{transform:scale(1.12);opacity:0;filter:drop-shadow(0 0 40px rgba(255,210,122,1))}}.reduce-motion .bottle,.reduce-motion .letter-ov.opening .bottle{animation:none}.anchor-count.bump{animation:lamp-pop .52s var(--ease-back)}.sheet-ov{justify-content:flex-start}@media(orientation:landscape)and (max-height:560px){.ov-box{gap:8px}.ask-tide{width:64px;height:64px}.su-lamp .big-lamp,.su-lamp .big-lamp svg{width:64px;height:80px}.su-tide{display:none}.streak-up .streak-num{font-size:48px;line-height:1}}.bottle-tide{bottom:96px}.bottle-hint{position:relative;z-index:1}.rank-chips{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:visible}.rank-chip{justify-content:center;min-width:0;padding:0 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:430px){.rank-chip .chip-glyph{display:none}}img.px,.px-sky .st,.px-sky .moon,.mare-px,.sea,.isle canvas,.isle-back,.map-stage img,.map-thumb,.lamp-spot .bulb,.lamp-spot .flame,.bottle .wax i{image-rendering:pixelated}.page-card .glyph img,.pr-head .glyph img{display:block;width:48px;height:48px}.sum-row .glyph img{display:block;width:32px;height:32px}.chip-glyph img{display:block;width:24px;height:24px}.hud-lamp img,.mini-lamp img{display:block;width:28px;height:28px}.hud-ico img{display:block;width:24px;height:24px}.big-lamp img{display:block;width:128px;height:128px}.su-lamp .big-lamp img{width:128px;height:128px}.splash-lamp img{position:relative;display:block;width:128px;height:128px}.sc-lamp img{display:block;width:128px;height:128px}.coin img{display:block;width:16px;height:16px}.coin{display:inline-flex}@media(max-height:700px){.big-lamp img{width:96px;height:96px}}.seal{width:16px;height:16px;border-radius:0;background:var(--ic-seal) center / 16px 16px no-repeat;box-shadow:none}.mare-px{position:relative;display:block;width:100%;height:100%;background:var(--mare-img, var(--mare-base)) 0 0 / 100% 100% no-repeat}.mare-px.m-happy,.mare-px.m-talk,.mare-px.m-page,.mare-px.m-cheer{overflow:hidden;background:none}.mare-px.m-happy:before,.mare-px.m-talk:before,.mare-px.m-page:before,.mare-px.m-cheer:before{content:"";position:absolute;left:0;top:0;width:900%;height:100%;background:var(--mare-img) 0 0 / 100% 100% no-repeat;image-rendering:pixelated;animation:mare-run .8s steps(8) infinite;will-change:transform}.mare-px.m-happy{--mare-img: var(--mare-idle)}.mare-px.m-happy:before{animation-duration:.9s}.mare-px.m-talk{--mare-img: var(--mare-talk)}.mare-px.m-page{--mare-img: var(--mare-fly)}.mare-px.m-page:before{animation-duration:667ms}.mare-px.m-cheer{--mare-img: var(--mare-cheer)}.mare-px.m-cheer:before{animation:mare-run .9s steps(8) 3 forwards}.mare-px.m-hint{--mare-img: var(--mare-dica)}.mare-px.m-worried{--mare-img: var(--mare-preocupada)}.mare-px.m-upset{--mare-img: var(--mare-chateada)}.mare-px.m-dramatic{--mare-img: var(--mare-dramatica)}.mare-px.m-wave{--mare-img: var(--mare-feliz)}.mare-px.m-clock{--mare-img: var(--mare-com_relogio)}.mare-px.m-sleep{--mare-img: var(--mare-base)}.mare-px.m-sleep:after{content:"z";position:absolute;right:6%;top:-4%;font-family:var(--f-hand);font-weight:700;font-size:22px;color:var(--cream);text-shadow:0 1px 0 var(--ink);animation:zzz 2.4s var(--ease-sine) infinite}@keyframes mare-run{to{transform:translate(-88.8889%)}}@keyframes zzz{50%{transform:translate(3px,-5px);opacity:.6}}.reduce-motion .mare-px,.reduce-motion .mare-px:before{animation:none!important}.tide>.mare-px{width:100%;height:100%}.sc-tide,.wb-tide{width:64px;height:64px}.ask-tide{width:128px;height:128px}@media(max-height:760px){.ask-tide{width:64px;height:64px}}.pause-tide{width:128px;height:128px}.win-tide,.sum-tide{width:64px;height:64px}img.nm-large{display:block;flex:none;width:44px;height:44px;border-radius:50%}.diorama .island{position:absolute;inset:0;width:auto;transform:none}.isle{position:absolute;left:0;top:0;pointer-events:none}.isle-stage{position:absolute;left:0;top:0;width:384px;height:288px;transform-origin:0 0}.isle-stage>canvas,.isle-back{position:absolute;left:0;top:0;width:384px;height:288px;display:block}.isle-fill{position:absolute;top:0;height:100%;background-repeat:no-repeat;image-rendering:pixelated}.sky-night .isle-base{filter:brightness(.86)}.lamps{position:absolute;inset:0;pointer-events:auto}.lamp-spot{position:absolute;width:12px;height:16px;cursor:pointer}.lamp-spot:before{content:"";position:absolute;inset:-6px -6px -2px}.lamp-spot .bulb,.lamp-spot .flame{position:absolute;inset:0;background:var(--lamp-off) 0 0 / 12px 16px no-repeat}.lamp-spot .flame{display:none;overflow:hidden;background:none}.lamp-spot .flame:before{content:"";position:absolute;left:0;top:0;width:48px;height:16px;background:var(--lamp-flame) 0 0 / 48px 16px no-repeat;image-rendering:pixelated;animation:lamp-flame 667ms steps(4) infinite;will-change:transform}.lamp-spot.on .flame{display:block}.lamp-spot .glow{display:none;position:absolute;left:-14px;top:-15px;width:40px;height:40px;border-radius:50%;background:radial-gradient(circle,#ffd27a9e 0,#f2a5413d 42%,#f2a54100 70%);mix-blend-mode:screen;opacity:var(--glow, .8);pointer-events:none}.lamp-spot.on .glow{display:block}.lamp-spot .reflect-lamp{display:none;position:absolute;left:4px;top:17px;width:4px;height:10px;background:linear-gradient(180deg,#ffd27ad9,#ffd27a00)}.lamp-spot.on .reflect-lamp{display:block}@keyframes lamp-flame{to{transform:translate(-48px)}}.isle .lamp-spot.newest .glow,.isle .lamp-spot.newest .bulb{animation:none}.isle .lamp-spot.lighting .flame{animation:lamp-ignite .52s var(--ease-back) both}.isle .lamp-spot.lighting .glow{animation:lamp-glow-in .9s var(--ease-out) both}@keyframes lamp-ignite{0%{opacity:0;filter:brightness(2.2)}40%{opacity:1;filter:brightness(1.8)}}@keyframes lamp-glow-in{0%{opacity:0;transform:scale(.2)}50%{opacity:1;transform:scale(1.5)}}.landmark{position:absolute;width:0;height:0;pointer-events:none}.landmark.on:before{content:"";position:absolute;left:-36px;top:-36px;width:72px;height:72px;border-radius:50%;background:radial-gradient(circle,#ffe4a0b3,#f2a54140 45%,#f2a54100 70%);mix-blend-mode:screen;animation:landmark-breathe 3.6s var(--ease-sine) infinite alternate}.landmark.newest:before{animation:landmark-in .9s 2.1s var(--ease-out) both,landmark-breathe 3.6s 3s var(--ease-sine) infinite alternate}@keyframes landmark-breathe{to{opacity:.6;transform:scale(.9)}}@keyframes landmark-in{0%{opacity:0;transform:scale(.2)}}.zone-flash{position:absolute;left:0;top:0;width:384px;height:288px;background:#ffd27a8c;mix-blend-mode:screen;-webkit-mask:var(--zone) 0 0 / 384px 288px no-repeat;mask:var(--zone) 0 0 / 384px 288px no-repeat;pointer-events:none;animation:zone-flash 1.4s var(--ease-out) both}@keyframes zone-flash{0%{opacity:0}25%{opacity:1}to{opacity:0}}.reduce-motion .zone-flash{display:none}.isle-borrowed,.master .lamp-spot.borrowed .flame{animation:borrowed-off 5.2s .3s linear both}.reduce-motion .isle-borrowed,.reduce-motion .master .lamp-spot.borrowed .flame{animation:none}.master .isle.borrowed-out .isle-borrowed,.master .isle.borrowed-out .lamp-spot.borrowed .glow,.master .isle.borrowed-out .lamp-spot.borrowed .flame{opacity:0}@keyframes borrowed-off{0%,72%{opacity:1}to{opacity:0}}.diorama .sea{overflow:hidden}.diorama .sea:before,.diorama .sea:after{content:"";position:absolute;top:0;bottom:0;left:0;width:calc(100% + 64px * var(--k, 1));background:var(--sea-0) 0 0 / calc(64px * var(--k, 1)) calc(32px * var(--k, 1)) repeat;animation:sea-slide 24s steps(64) infinite;will-change:transform}.diorama .sea:after{background-image:var(--sea-1);animation:sea-slide 24s steps(64) infinite,sea-frame 1s step-end infinite}@keyframes sea-slide{to{transform:translate(calc(-64px * var(--k, 1)))}}@keyframes sea-frame{0%{opacity:0}50%{opacity:1}}.reduce-motion .diorama .sea:before,.reduce-motion .diorama .sea:after{animation:none}.stars.px-sky{background:none;animation:none}.px-sky .st{position:absolute}.px-sky .st:before,.px-sky .st:after{content:"";position:absolute;inset:0;background:var(--fx-stars) var(--sx, 0) 0 / 256px 256px no-repeat;image-rendering:pixelated;animation:star-tw-a 2.6s step-end infinite;will-change:opacity}.px-sky .st:after{background-position-y:-20px;opacity:0;animation-name:star-tw-b}.px-sky .st:nth-child(odd):before,.px-sky .st:nth-child(odd):after{animation-delay:-1.3s}.px-sky,.isle .lamps,.diorama .tide-perch{will-change:transform}.px-sky .st.s0{width:2px;height:2px;--sx: 0}.px-sky .st.s1{width:6px;height:6px;--sx: -8px}.px-sky .st.s2{width:10px;height:10px;--sx: -20px}.px-sky .st.s3{width:14px;height:14px;--sx: -36px}@keyframes star-tw-a{0%{opacity:1}50%{opacity:0}}@keyframes star-tw-b{0%{opacity:0}50%{opacity:1}}.px-sky .moon{display:none;position:absolute;right:18%;top:22%;width:48px;height:48px;background:var(--fx-stars) 0 -64px / 256px 256px no-repeat}.px-sky.dusk .moon,.px-sky.night .moon{display:block}.fireflies i{border-radius:0;width:6px;height:6px;background:var(--fx-particles) -64px 0 / 128px 32px no-repeat;box-shadow:none;image-rendering:pixelated}.diorama .tide-perch{right:auto;bottom:auto;width:var(--mk, 64px);height:var(--mk, 64px);display:block}.diorama .tide-perch:after{display:none}.diorama .home-tide{width:var(--mk, 64px);height:var(--mk, 64px)}.diorama .tide-perch .tide-bubble{right:40%;bottom:calc(100% + 18px)}.diorama .tide-perch .tide-bubble:after{top:calc(100% - 2px);right:6px;width:30px;height:22px;background:radial-gradient(circle at 30% 20%,var(--page) 3.6px,var(--ink) 4.2px 5.6px,transparent 6px),radial-gradient(circle at 80% 85%,var(--ink) 2.4px,transparent 2.8px)}.diorama .tide-perch.flip .tide-bubble{right:auto;left:40%}.diorama .tide-perch.flip .tide-bubble:after{right:auto;left:6px;transform:scaleX(-1)}.map-btn{position:absolute;left:10px;top:calc(60px + var(--safe-top));z-index:3;display:inline-flex;align-items:center;gap:6px;height:40px;padding:0 14px 0 4px;border-radius:20px;border:1.5px solid rgba(255,248,234,.3);background:#0b1e2b9e;color:var(--cream);font-family:var(--f-ui);font-size:15px;font-weight:800;cursor:pointer}.map-btn:before{content:"";position:absolute;inset:-3px -2px}.map-thumb{width:32px;height:32px;border-radius:50%;border:1.5px solid var(--amber-hi);background:var(--map-art) -171px -262px / 340px 510px no-repeat}.win-island,.sum-island,.win-island.master,.sum-island.master{background:linear-gradient(180deg,#17414c 0% 30%,#0e2a33)}.win-island:after,.sum-island:after{display:none}.win-island .cam,.sum-island .cam{overflow:visible}.win-island.area-done{border-color:var(--amber-hi);box-shadow:0 0 0 3px var(--amber),0 0 28px #ffd27a73}.area-done .ov-box{align-items:center;text-align:center;gap:10px}.ao-card{position:relative;overflow:hidden;border-radius:18px;border:3px solid var(--amber-hi);box-shadow:0 0 0 3px var(--amber),0 0 30px #ffd27a80;line-height:0}.ao-post{display:block;width:384px;height:288px;max-width:none;image-rendering:pixelated}.ao-card .fireflies{display:block;inset:10% 0 30%}.ao-tide{position:absolute;right:8px;bottom:8px;width:64px;height:64px}.ao-res{color:var(--cream);font-size:16px}.ao-res b{color:var(--amber-hi)}.ao-say{max-width:min(320px,86vw);line-height:1.2}.ao-next{font-family:var(--f-display);font-weight:800;font-size:20px;color:var(--cream)}.area-done .btn{width:100%;max-width:420px}.page:after{background-size:128px 128px;opacity:1;image-rendering:pixelated}.play{background-size:100% 100%,128px 128px,100% 100%;image-rendering:pixelated}.farois .wash{mix-blend-mode:multiply}.rope-line{height:12px;background:var(--ui-rope) 0 50% / 32px 12px repeat-x;image-rendering:pixelated}.bottle,.bottle>img{width:128px;height:128px}.bottle{position:relative}.bottle .wax{position:absolute;left:70px;top:-6px;width:32px;height:32px}.bottle .wax i{position:absolute;top:0;width:16px;height:32px;background:var(--ic-seal) 0 0 / 32px 32px no-repeat;transition:transform .9s .25s var(--ease-out),opacity .7s .45s var(--ease-out)}.bottle .wax .wax-l{left:0;transform-origin:100% 50%}.bottle .wax .wax-r{left:16px;background-position-x:-16px;transform-origin:0 50%}.map-screen{background:#0e2a33;color:var(--cream)}.map-head{display:flex;align-items:center;gap:8px;height:calc(56px + var(--safe-top));padding:var(--safe-top) 12px 0 4px;flex:none;position:relative;z-index:2}.map-head h1{flex:1;margin:0;font-family:var(--f-display);font-weight:800;font-size:24px}.map-head .hand{font-size:20px;color:var(--amber-hi)}.map-back{color:var(--cream)}.map-frame{position:relative;flex:1 1 auto;min-height:0;overflow:hidden;transform-origin:0 0}.map-stage{position:absolute;left:0;top:0;width:340px;height:510px;transform-origin:0 0}.map-stage>img{position:absolute;left:0;top:0;width:340px;height:510px}.map-fog{animation:fog-drift 9s var(--ease-sine) infinite alternate}@keyframes fog-drift{to{transform:translate(3px);opacity:.9}}.map-ring{position:absolute;border-radius:50%;border:2px dashed rgba(255,210,122,.9);box-shadow:0 0 18px #ffd27a59,inset 0 0 18px #ffd27a40;animation:ring-pulse 2.4s var(--ease-sine) infinite alternate}@keyframes ring-pulse{to{opacity:.55}}.reduce-motion .map-fog,.reduce-motion .map-ring{animation:none}.map-labels{position:absolute;inset:0}.map-tag{position:absolute;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:2px;min-height:44px;padding:6px 12px;border-radius:14px;border:1.5px solid rgba(255,248,234,.3);background:#0b1e2bc7;color:var(--cream);font-family:var(--f-ui);text-align:center;white-space:nowrap;cursor:pointer}.map-tag b{font-size:14px;font-weight:800}.map-tag small{font-size:12px;font-weight:700;color:#cfe0dc}.map-tag.soon{border-style:dashed;background:#17414cd1}.map-tag.soon b{color:#e3eeec}.map-tag.here{padding:8px 16px;border:2px solid var(--amber-hi);background:var(--page);color:var(--ink);box-shadow:var(--shadow-solid)}.map-tag.here b{font-family:var(--f-display);font-size:17px}.map-tag.here small{color:var(--ink-soft)}.map-prog{display:block;width:140px;height:6px;margin:3px 0 1px;border-radius:3px;background:#1f3a402e;overflow:hidden}.map-prog i{display:block;height:100%;background:var(--amber-deep, #d9782b)}.map-tag.soon{transform:translate(-50%,-50%)}.area-done.sheet-ov{background:#0b1e2bf0}.ao-title{margin:0;font-family:var(--f-display);font-weight:800;font-size:24px;line-height:1.15;color:var(--amber-hi)}.ao-card{width:100%;max-width:560px}.sum-sheet .rope-line{display:block;margin:2px 0 4px;opacity:.9}.lamp-hero .spark{left:-7px;top:-7px;width:14px;height:14px;border-radius:0;background:var(--fx-particles) 0 0 / 128px 32px no-repeat;box-shadow:none;image-rendering:pixelated;animation:hero-spark .7s .62s var(--ease-out) both,glint .42s .62s steps(4) both}@keyframes glint{0%{background-position-x:0}to{background-position-x:-64px}}.lamp-spot.on .reflect-lamp{will-change:opacity}.diorama .cloud{animation-timing-function:steps(600)}.diorama .cloud.c2{animation-timing-function:steps(900)}.fireflies i{animation-timing-function:steps(14)}.lamp-spot.on .reflect-lamp{animation-timing-function:steps(5)}.map-fog{animation-timing-function:steps(3)}.map-ring{animation-timing-function:steps(4)}.arch-entry{flex-direction:row;align-items:center;gap:12px;width:100%;min-height:64px;text-align:left;color:var(--ink);cursor:pointer}.arch-entry:active{transform:translateY(2px)}.arch-entry-ico{display:inline-grid;place-items:center;width:44px;height:44px;flex:none;border-radius:12px;background:var(--teal);color:var(--cream)}.arch-entry-ico .ico{width:26px;height:26px}.arch-entry-ico .ico .duo{fill:var(--amber-hi);opacity:.7}.arch-entry-txt{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.arch-entry-txt b{font-weight:800;font-size:17px}.arch-entry>.ico{width:20px;height:20px;color:var(--ink-soft)}.archive .screen-head{justify-content:flex-start}.arch-title{flex:1;min-width:0}.arch-lamp,.arch-lamp svg,.arch-lamp img{display:block;width:48px;height:48px;flex:none}.archive .scroll>*{flex:none}.arch-cal{text-align:center}.arch-cell{background:none;border:0;padding:0;color:inherit;font:inherit;cursor:pointer;border-radius:10px}.arch-cell:active .cal-dot{transform:scale(.92)}.arch-cell .cal-dot{transition:transform .12s var(--ease-back)}.st-open{border-color:var(--amber-deep);background:var(--page)}.st-free{border-color:var(--amber-deep);border-style:dashed;background:#f2a54129}.st-open .dom,.st-free .dom{color:var(--ink)}.st-sealed{border-color:#b4533f59;background:#1f3a400f}.cal-dot.mini.st-sealed .seal{width:12px;height:12px;background-size:12px 12px}.arch-rules{font-size:13px;text-align:center}.arch-pass-on{display:flex;justify-content:center}.pass-promo{padding:14px 16px;display:flex;flex-direction:column;gap:8px;border:1.5px solid var(--amber-deep);box-shadow:0 0 0 3px #f2a54140,var(--shadow-solid)}.pass-promo .hand{color:var(--amber-text)}.pass-promo .btn{width:100%}.pass-head{display:flex;align-items:center;gap:8px}.pass-head h3{flex:1;font-family:var(--f-display);font-weight:600;font-size:20px;text-align:left}.pass-lamp,.pass-lamp svg{display:block;width:32px;height:32px;flex:none}.pass-card{display:flex;flex-direction:column;gap:10px;padding:10px 0 12px;text-align:left}.set-group .pass-card{border-bottom:1.5px solid var(--page-edge);margin-bottom:4px}.pass-benefits{list-style:none;display:flex;flex-direction:column;gap:6px;margin:0;padding:0}.pass-benefits li{display:flex;align-items:center;gap:10px;font-weight:700;font-size:15px}.pass-benefits .ico{display:inline-grid;place-items:center;width:30px;height:30px;padding:5px;border-radius:50%;background:var(--tide-soft);color:var(--tide-deep)}.pass-plans{display:flex;flex-direction:column;gap:8px}.pass-plans .btn{width:100%;position:relative}.pass-save{margin-left:4px;padding:2px 8px;border-radius:10px;background:var(--teal);color:var(--cream);font-size:12px;font-weight:800;white-space:nowrap}.pass-legal,.pass-app-only{font-size:13px}.pass-ov .pass-hero .big-lamp,.pass-ov .pass-hero .big-lamp svg,.pass-ov .pass-hero .big-lamp img{width:96px;height:96px}.pass-ov .pass-hero .big-lamp{animation:lamp-sway 3.2s var(--ease-sine) infinite alternate;transform-origin:50% 10%}.pass-box{width:100%;padding:6px 16px 4px;border:1.5px solid var(--page-edge)}.arch-day{width:100%;padding:14px 14px 16px;display:flex;flex-direction:column;gap:10px;text-align:left;border:1.5px solid var(--page-edge)}.arch-day .sheet-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.arch-day .sheet-head h2{font-family:var(--f-display);font-weight:600;font-size:22px}.arch-day .page-cards{margin-bottom:0}.arch-day .page-card{height:116px;cursor:pointer}.arch-day.locked .page-card{background:#1f3a400d;border-style:dashed}.arch-day.locked .page-card .glyph{opacity:.55;filter:saturate(.4)}.arch-day-note{font-size:14px;text-align:center}.arch-day .sheet-actions .btn{width:100%}.anchor-pass{display:flex;align-items:center;gap:6px;font-weight:700;color:var(--tide-deep)}.anchor-pass .ico{width:18px;height:18px}@media(prefers-reduced-motion:reduce){.pass-ov .pass-hero .big-lamp{animation:none}}.reduce-motion .pass-ov .pass-hero .big-lamp{animation:none}.access-code{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:4px 0 8px}.access-link{min-height:32px;padding:4px 0;background:none;border:0;font:inherit;font-size:13px;color:var(--ink-soft);text-decoration:underline;text-underline-offset:3px;cursor:pointer}.access-form[hidden]{display:none}.access-form{width:100%}.access-input{text-transform:uppercase;letter-spacing:.08em}.access-msg.bad{color:var(--coral-deep)}.arch-cell.old .cal-dot{background-image:radial-gradient(circle at 35% 30%,#c9955a2e,#c9955a0d)}.arch-cell.old small,.arch-cell.old .dom{font-style:italic}.cal-dot.mini.old-dot{border-style:solid;border-color:var(--rope);background:#c9955a40}.about-link{display:inline-flex;align-items:center;gap:6px;min-height:44px;font-weight:700;font-size:15px;color:var(--tide-deep);text-decoration:underline;text-underline-offset:3px}.about-link .ico{width:20px;height:20px}.player-row{padding-bottom:0}.player-id{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:44px;padding:0;background:none;border:0;font:inherit;color:var(--ink);cursor:pointer;text-align:left}.player-id code{padding:4px 10px;border-radius:8px;background:var(--tide-soft);font-family:ui-monospace,Cascadia Mono,Menlo,monospace;font-size:15px;font-weight:700;letter-spacing:.08em}.erase-box h2{font-family:var(--f-display);font-weight:600;font-size:21px}.erase-box p{font-size:15px}.erase-box .about-link{align-self:flex-start}.play-badge{display:inline-flex;align-self:center;justify-content:center;min-height:48px;margin:4px auto}.play-badge img{display:block;width:auto;height:56px}.set-group .play-badge{display:flex;width:fit-content}.hint-sheet .hs-head{display:flex;align-items:center;gap:10px}.hint-sheet .hs-head h2{color:var(--ink);font-family:var(--f-display);font-weight:600;font-size:21px}.hint-sheet .hs-tide{width:64px;height:64px;flex:none}.hint-sheet .hs-row{width:100%;min-height:56px;justify-content:flex-start;position:relative}.hint-sheet .hs-row .pass-save{margin-left:auto}.noads-offer{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border-radius:12px;border:1.5px dashed var(--page-edge);background:#fff8ea99;text-align:left}.noads-offer>div{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.noads-offer b{font-size:15px}.noads-offer small{font-size:12px;color:var(--ink-soft)}.noads-offer .btn{min-height:44px;padding:0 12px;font-size:14px;flex:none}.tide-dock,.tide-dock.show,.perch .tide-dock,.perch .tide-dock.show .tide-bubble,.tide-dock .tide-bubble{pointer-events:none}.tide-dock.show .bubble-btn,.tide-dock.show .dock-tide,.perch .tide-dock .dock-tide{pointer-events:auto}.map-btn{z-index:6}.diorama .tide-perch{z-index:7;pointer-events:none}.diorama .tide-perch .home-tide{pointer-events:auto}.diorama .tide-perch .tide-bubble{pointer-events:none}.win-say{inset:12px auto auto 12px;max-width:min(240px,60%)}.hud .wordmark{min-width:0;overflow:hidden;text-overflow:ellipsis;font-size:clamp(16px,5.4vw,20px)}.hud .hud-pill,.hud .hud-gear{flex:none}@media(max-width:399px){.hud.tight .wordmark{visibility:hidden}.hud.tight{gap:6px;padding-left:10px}}@media(max-width:339px){.hud .wordmark{visibility:hidden}.hud .hud-pill{padding:0 8px 0 4px}}.map-light{position:absolute;left:0;top:0;width:340px;height:510px;image-rendering:pixelated;pointer-events:none}.welcome-card,.rules-card{display:flex;flex-direction:column;align-items:stretch;gap:12px;width:100%;max-height:calc(100dvh - 32px - var(--safe-top) - var(--safe-bottom));overflow-y:auto;scrollbar-width:none;padding:18px 18px 16px;border-radius:18px;background:var(--page);color:var(--ink);box-shadow:var(--shadow-lift);text-align:left}.welcome-ov .ov-box,.rules-ov .ov-box{width:min(100%,420px)}.welcome-card{align-items:center;text-align:center;gap:10px}.wc-art{display:grid;place-items:center;min-height:132px}.wc-glyphs{display:flex;gap:14px}.wc-g{display:flex;flex-direction:column;align-items:center;gap:4px;font-weight:800;font-size:14px}.wc-g .glyph,.wc-g .glyph svg{width:64px;height:64px}.wc-lantern,.wc-lantern svg{width:120px;height:120px}.wc-tools{display:flex;align-items:flex-end;gap:14px}.wc-tide{width:96px;height:96px}.wc-tool{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 10px;border-radius:14px;background:var(--teal);color:var(--cream);font-weight:800;font-size:13px}.wc-tool .ico{width:28px;height:28px}.welcome-card h2{font-family:var(--f-display);font-weight:600;font-size:24px;line-height:30px}.wc-text{font-size:17px;line-height:24px;color:var(--ink-soft)}.wc-dots{display:flex;gap:8px;margin:4px 0}.wc-dots i{width:9px;height:9px;border-radius:50%;background:var(--ink-faint);transition:background .2s var(--ease-out),transform .2s var(--ease-out)}.wc-dots i.on{background:var(--amber-deep);transform:scale(1.25)}.wc-actions{display:grid;grid-template-columns:1fr 1.6fr;gap:10px;width:100%}.rc-head{display:flex;align-items:center;gap:12px}.rc-head .glyph,.rc-head .glyph svg{width:48px;height:48px}.rc-kicker{display:block;font-size:13px;font-weight:800;letter-spacing:.04em;color:var(--amber-text)}.rc-head h2{font-family:var(--f-display);font-weight:600;font-size:26px;line-height:30px}.rc-goal{padding:10px 12px;border-radius:12px;background:var(--tide-soft);font-weight:800;font-size:16px;line-height:22px}.rc-rules{display:flex;flex-direction:column;gap:10px;margin:0;padding:0;list-style:none}.rc-rule{display:flex;align-items:center;gap:12px}.rc-mini{flex:none;padding:3px;border-radius:10px;background:var(--page-edge)}.rc-mini .board.mini{display:block;width:108px;height:108px;pointer-events:none}.rc-text{display:flex;flex-direction:column;gap:4px;font-size:15px;line-height:21px}.rc-badge{display:inline-flex;align-items:center;gap:4px;align-self:flex-start;padding:1px 9px 1px 6px;border-radius:10px;font-size:12px;font-weight:800;background:var(--tide-deep);color:var(--cream)}.rc-badge .ico{width:14px;height:14px}.rc-rule.no .rc-badge{background:var(--coral-deep)}.rc-howto{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;padding-top:8px;border-top:1.5px dashed var(--page-edge)}.rc-howto b{font-size:14px}.rc-howto .hand{font-size:21px;line-height:24px}.rules-card>.btn{width:100%;margin-top:4px}.desk-note.tappable{cursor:pointer}.tut-banner{display:flex;flex-direction:column;align-items:center;gap:2px;width:min(100% - 24px,560px);min-height:62px;margin:0 auto 8px;padding:8px 16px 10px;border-radius:14px;background:var(--page);color:var(--ink);border:2px solid var(--ink);box-shadow:var(--shadow-solid);text-align:center;flex:none}.tut-banner:empty,.tut-banner .tut-say:empty{visibility:hidden}.tut-count{font-size:12px;font-weight:800;letter-spacing:.04em;color:var(--amber-text)}.tut-say{font-weight:800;font-size:17px;line-height:23px}.tut-banner.pop{animation:tut-pop .26s var(--ease-back)}@keyframes tut-pop{0%{transform:translateY(-6px) scale(.97);opacity:.4}}.board .tut-cell.look{fill:#3e8a8c29;stroke:var(--tide-deep);stroke-dasharray:8 6;animation:none}.board .tut-cell.no{fill:#e9765b47;stroke:var(--coral-deep);stroke-width:3px;animation:none}.board .tut-no-x{fill:none;stroke:var(--coral-deep);stroke-width:7px;stroke-linecap:round;pointer-events:none}.reduce-motion .tut-banner.pop{animation:none}@media(min-width:680px)and (min-height:900px)and (orientation:portrait){.tut-banner{min-height:84px;padding:12px 22px 14px}.tut-count{font-size:16px}.tut-say{font-size:24px;line-height:31px}}.tut-banner.idle{visibility:hidden}.wc-g .glyph>*,.rc-head .glyph>*{width:64px;height:64px}.rc-head .glyph>*{width:48px;height:48px}.wc-g{gap:8px}.wc-art{min-height:112px}.rc-mini .farois .conflict{stroke-width:4px}.rc-mini .beacon.bad{animation:none}.rc-mini .beacon.bad .glow{opacity:.65}.rc-mini .beacon.bad .tower,.rc-mini .beacon.bad .band{fill:var(--coral)}.rc-mini .sign{transform:scale(1.9);transform-box:fill-box;transform-origin:center}.rc-mini .sign path{stroke-width:2px;vector-effect:non-scaling-stroke}.board .mini-tap{fill:#ffd27a59;stroke:var(--amber-deep);stroke-width:3px;vector-effect:non-scaling-stroke;pointer-events:none;transform-box:fill-box;transform-origin:center;animation:mini-tap .52s var(--ease-out) forwards}@keyframes mini-tap{0%{transform:scale(.4);opacity:1}to{transform:scale(1.25);opacity:0}}.board .tut-cell.drag{fill:#ffd27a4d;stroke:var(--amber-deep);stroke-width:3px;stroke-dasharray:10 6;animation:none}.board .tut-drag-dot{fill:var(--amber-deep);pointer-events:none}.rc-rule{padding:4px;border-radius:14px;transition:background .24s var(--ease-out)}.rc-rule.active{background:#ffd27a38}.rc-skip{align-self:center;min-height:44px;padding:0 14px;border:0;background:none;color:var(--ink-soft);font-family:inherit;font-weight:800;font-size:15px;text-decoration:underline;text-underline-offset:3px}.rc-mini .sign{transform:scale(1.5)}@media(min-width:680px)and (min-height:900px)and (orientation:portrait){.welcome-ov .ov-box,.rules-ov .ov-box{width:min(100% - 64px,720px);zoom:1!important}.welcome-card,.rules-card{padding:28px 32px 24px;gap:18px;border-radius:24px}.rc-head .glyph>*{width:72px;height:72px}.rc-kicker{font-size:18px}.rc-head h2,.welcome-card h2{font-size:38px;line-height:44px}.rc-goal{padding:14px 18px;font-size:23px;line-height:31px}.rc-rules{gap:14px}.rc-rule{gap:22px}.rc-mini .board.mini{width:200px;height:200px}.rc-text{font-size:22px;line-height:30px;gap:8px}.rc-badge{font-size:16px;padding:3px 12px 3px 8px;border-radius:14px}.rc-badge .ico{width:18px;height:18px}.rc-howto b{font-size:19px}.rc-howto .hand{font-size:30px;line-height:34px}.rc-skip{font-size:19px}.wc-art{min-height:180px}.wc-g .glyph>*{width:96px;height:96px}.wc-g{font-size:20px}.wc-lantern,.wc-lantern svg{width:180px;height:180px}.wc-tide{width:128px;height:128px}.wc-tool{font-size:18px;padding:12px 16px}.wc-tool .ico{width:40px;height:40px}.wc-text{font-size:24px;line-height:34px}.welcome-card .btn,.rules-card>.btn{min-height:64px;font-size:21px}}.rc-head .glyph{flex:none;display:grid;place-items:center;width:48px;height:48px}.mini-no .tut-cell.no{fill:#e9765b2e}.mini-no .tut-no-x{stroke-width:4px;opacity:.7}@media(min-width:680px)and (min-height:900px)and (orientation:portrait){.rc-head .glyph{width:72px;height:72px}}.wc-lantern>*{width:120px;height:120px}@media(min-width:680px)and (min-height:900px)and (orientation:portrait){.wc-g .glyph{display:grid;place-items:center;width:96px;height:96px}.wc-lantern,.wc-lantern>*{width:180px;height:180px}}@media(min-width:680px)and (min-height:900px)and (orientation:portrait){.play-head{height:calc(76px + var(--safe-top));max-width:none;padding:var(--safe-top) 24px 0 16px;gap:14px}.play-head .icon-btn{width:56px;height:56px}.play-head .icon-btn .ico{width:32px;height:32px}.play-head h1{font-size:30px;line-height:36px}.play-head .sub{font-size:17px}.timer-pill{height:56px;min-width:116px;padding:0 20px 0 14px;border-radius:28px;font-size:22px}.timer-pill .ico{width:24px;height:24px}.day-progress{width:min(100% - 64px,560px);gap:8px}.day-progress i{height:8px}.board-block{gap:12px}.page-num{font-size:26px;line-height:30px}.play .chips{gap:14px 10px}.play .chip{height:42px;padding:0 16px 0 12px;border-radius:21px;font-size:17px;gap:8px}.play .chip .dot{width:10px;height:10px}.play .chip .ico{width:20px;height:20px}.counters{font-size:17px;line-height:42px}.note-slot{min-height:60px}.desk-note{padding:12px 22px 14px;font-size:26px}.desk-rules,.roomy .desk-rules{font-size:20px;line-height:28px}.desk-note .hand{font-size:27px}.note-fold{font-size:18px}.status{font-size:18px;padding:10px 20px}.toolbar{max-width:760px;height:clamp(96px,9dvh,120px)}.tool{min-width:96px;height:84px;gap:4px}.tool-ico{width:60px;height:46px;border-radius:23px}.tool .tool-ico svg,.tool .tool-ico .ico{width:32px;height:32px}.tool-label{font-size:17px}.badge{min-width:26px;height:26px;border-radius:13px;font-size:16px;line-height:26px}.tide-dock{bottom:calc(100px + var(--safe-bottom))}.tide{width:96px;height:96px}.perch .dock-tide,.home-tide,.sc-tide{width:128px;height:128px}.tide-bubble,.tide-bubble .hand,.tide-bubble p{font-size:27px;line-height:1.3}.tide-bubble{max-width:380px;padding:12px 20px;border-radius:22px 22px 6px}.tide-perch .tide-bubble,.win-say{max-width:min(380px,60vw);font-size:27px}.tutorial .tide-dock .tide-bubble{max-width:min(420px,calc(100vw - 180px))}.tide-dock .tide-bubble{margin-bottom:64px}:root:not(.legacy-zoom) :is(.hud,.sheet-today,.screen-head,.screen:not(.play) .scroll,.tabbar,.ov-box,.win-sheet){zoom:1.3}}.fx-layer{position:fixed;inset:0;z-index:70;overflow:hidden;pointer-events:none;contain:strict}.fxp{position:absolute;left:0;top:0;display:block;background-image:var(--fx-particles);background-repeat:no-repeat;image-rendering:pixelated;will-change:transform,opacity;pointer-events:none}.fxp.ink{background:linear-gradient(var(--ink),var(--ink)) var(--px) var(--px) / var(--px) var(--px) no-repeat,var(--ink-soft)}.reduce-fx .fx-layer{display:none}.hero-ring{position:absolute;left:-48px;top:-52px;width:96px;height:96px;border-radius:50%;border:3px solid rgba(255,228,160,.9);box-shadow:0 0 14px #ffd27a8c;opacity:0;transform:scale(.1);animation:hero-ring .68s .45s var(--ease-out) both}@keyframes hero-ring{0%{opacity:.95;transform:scale(.1)}to{opacity:0;transform:scale(1)}}.lamp-hero .spark,.reduce-fx .hero-ring,.fx-lite .hero-ring{display:none}.reduce-fx .hero-glow{animation:fx-soft-in .5s .25s var(--ease-out) both}.reduce-fx .hero-reflect{animation:none;opacity:.45}@keyframes fx-soft-in{0%{opacity:0}}.master .isle.spread .lamp-spot.on .glow{opacity:var(--glow, 1);transform-origin:center;animation:spread-glow .64s calc(.3s + var(--w, 0) * var(--spread, .76s)) var(--ease-back) both}.master .isle.spread .lamp-spot.borrowed .glow{animation:spread-glow .64s calc(.3s + var(--w, 0) * var(--spread, .76s)) var(--ease-back) both,borrowed-off 5.2s .3s linear both}.master .isle.spread .lamp-spot.on .flame{animation:spread-vis 1ms calc(.3s + var(--w, 0) * var(--spread, .76s)) linear both}.master .isle.spread .lamp-spot.borrowed .flame{animation:spread-vis 1ms calc(.3s + var(--w, 0) * var(--spread, .76s)) linear both,borrowed-off 5.2s .3s linear both}.master .isle.spread .landmark.on:before{animation:landmark-in .9s calc(.3s + var(--spread, .76s)) var(--ease-out) both,landmark-breathe 3.6s calc(1.2s + var(--spread, .76s)) var(--ease-sine) infinite alternate}@keyframes spread-glow{0%{transform:scale(0)}55%{transform:scale(1.3)}to{transform:scale(1.1)}}@keyframes spread-vis{0%{visibility:hidden}to{visibility:visible}}.win-island.master:before{animation:master-bloom-soft 1.5s calc(.26s + var(--wave, .76s)) var(--ease-sine) both}@keyframes master-bloom-soft{0%{opacity:0}35%{opacity:.42}to{opacity:0}}@keyframes master-flash{0%{opacity:0;transform:scale(.6)}20%{opacity:1;transform:scale(1.35)}45%{opacity:.75;transform:scale(1.05)}70%{opacity:1;transform:scale(1.35)}to{opacity:1;transform:scale(1.15)}}@keyframes master-bloom{0%{opacity:0}30%{opacity:.4}to{opacity:0}}.reduce-fx .master .lamp-spot.on .glow,.reduce-fx .master .lamp-spot.on .flame{animation:none}.reduce-fx .master .lamp-spot.borrowed .glow,.reduce-fx .master .lamp-spot.borrowed .flame{animation:borrowed-off 5.2s .3s linear both}.reduce-motion .master .lamp-spot.on .glow,.reduce-motion .master .lamp-spot.on .flame{animation:none}.reduce-fx .win-island.master:before,.reduce-fx .sum-island.master:before{animation:none;opacity:0}.reduce-fx .master .win-tide,.reduce-fx .master .sum-tide{animation:none}.zone-flash{background:#ffd27a6b;animation-duration:1.6s}.reduce-fx .zone-flash{display:none}.reduce-fx .win-wave rect{animation:wave-soft .7s var(--ease-sine) both;animation-delay:0ms!important}@keyframes wave-soft{0%,to{opacity:0}50%{opacity:.28}}.sea-glints{position:absolute;left:0;right:0;bottom:0;height:var(--sea);pointer-events:none;display:none;overflow:hidden}.sky-dusk .sea-glints,.sky-night .sea-glints{display:block}.sea-glints .sg{position:absolute;inset:0;opacity:0;will-change:opacity;animation:sea-glint 3.1s steps(3) infinite}.sea-glints .sg.a{background:linear-gradient(#ffe6a8,#ffe6a8) 3% 38% / 6px 2px no-repeat,linear-gradient(#fff8ea,#fff8ea) 96% 30% / 8px 2px no-repeat,linear-gradient(#ffe6a8,#ffe6a8) 14% 90% / 8px 2px no-repeat,linear-gradient(#ffe6a8,#ffe6a8) 84% 92% / 6px 2px no-repeat,linear-gradient(#fff8ea,#fff8ea) 98% 68% / 8px 2px no-repeat}.sea-glints .sg.b{animation-delay:-1.55s;background:linear-gradient(#fff8ea,#fff8ea) 7% 72% / 6px 2px no-repeat,linear-gradient(#ffe6a8,#ffe6a8) 92% 52% / 8px 2px no-repeat,linear-gradient(#fff8ea,#fff8ea) 22% 96% / 8px 2px no-repeat,linear-gradient(#ffe6a8,#ffe6a8) 77% 88% / 6px 2px no-repeat,linear-gradient(#ffe6a8,#ffe6a8) 2% 58% / 8px 2px no-repeat}@keyframes sea-glint{0%,45%,to{opacity:0}62%{opacity:.85}80%{opacity:.4}}.fx-lite .fireflies i:nth-child(n+5),.fx-lite .sea-glints .sg.b{display:none}.reduce-fx .sea-glints,.reduce-fx .diorama .fireflies{display:none}.reduce-fx .chip.bad{animation:none}.reduce-fx .px-sky .st:before,.reduce-fx .px-sky .st:after{animation:none}.win-sheet .seals .seal-chip{animation:seal-pop .34s .46s var(--ease-back) both}.win-sheet .seals .seal-chip:nth-child(2){animation-delay:.55s}.win-sheet .seals .seal-chip:nth-child(n+3){animation-delay:.64s}.win-sheet.later .seals .seal-chip{animation-delay:1.76s}.win-sheet.later .seals .seal-chip:nth-child(2){animation-delay:1.85s}.win-sheet.later .seals .seal-chip:nth-child(n+3){animation-delay:1.94s}.win-sheet.instant .seals .seal-chip{animation:none}@keyframes seal-pop{0%{transform:scale(.4);opacity:0}60%{opacity:1}}.tool .tool-ico svg{transform-origin:50% 50%}
