:root{font-family:Hiragino Maru Gothic ProN,Yu Gothic,system-ui,sans-serif;color:#30463c;background:#f5f5ee;font-synthesis:none;font-weight:600;--accent:#497e64;--accent-dark:#2d5b48;--accent-light:#e4eee3;--ink:#30463c;--muted:#76857b;--page:#f5f5ee;--border:#dce5da}*{box-sizing:border-box}body{margin:0;min-width:320px;background:var(--page)}button,input{font:inherit}button{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible{outline:3px solid var(--accent);outline-offset:4px}[hidden]{display:none!important}svg{display:block}button{color:inherit}.timer-app{width:min(1220px,100%);margin:auto;padding:max(22px,env(safe-area-inset-top)) max(28px,env(safe-area-inset-right)) max(26px,env(safe-area-inset-bottom)) max(28px,env(safe-area-inset-left));display:grid;grid-template-columns:minmax(0,1fr) 285px;grid-template-areas:"head head" "modes modes" "timer settings" "stage settings" "progress settings" "controls settings";gap:14px 26px;align-content:start;min-height:100dvh;--page:#f5f5ee;transition:color .2s;color:var(--ink)}.timer-app[data-mode=ocean]{--accent:#3c7e9a;--accent-dark:#23546e;--accent-light:#e3f1f3;--ink:#294557;--muted:#748a98;--border:#d7e4e9;--page:#f0f5f5}.timer-app[data-mode=moon]{--accent:#7b679b;--accent-dark:#4d3e6c;--accent-light:#ede7f4;--ink:#453956;--muted:#897f96;--border:#e3deeb;--page:#f5f2f7}.topbar{grid-area:head;display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:4px}.brand{display:flex;align-items:center;gap:11px}.brand-symbol{width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:#e1edbd;color:#4e6748;border-radius:14px;font-size:32px;font-family:Georgia,serif;font-style:italic;letter-spacing:-4px;padding-right:5px;transform:rotate(-5deg)}.brand-symbol span{color:#8773aa}.brand h1{font-size:27px;letter-spacing:-.7px;font-weight:850;margin:0;color:#3b4650}.brand h1>span{font-size:13px;margin-left:5px;color:#879084;font-weight:700;letter-spacing:0}.toggles{display:flex;gap:8px}.icon-toggle{display:flex;align-items:center;gap:7px;min-height:43px;border:1px solid var(--border);border-radius:13px;background:#ffffffb8;padding:9px 12px;font-size:12px;color:var(--muted)}.icon-toggle svg{width:20px;height:20px}.icon-toggle[aria-pressed=true]{background:var(--accent-light);color:var(--accent-dark);border-color:var(--accent)}.mode-switcher{grid-area:modes;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:3px 0 2px}.mode-card{position:relative;display:flex;align-items:center;gap:12px;min-height:86px;padding:15px 18px;background:#ffffffa6;border:1.5px solid #e1e5de;border-radius:19px;text-align:left;transition:background .2s,border-color .2s,box-shadow .2s}.mode-card[aria-pressed=true]{background:#fff;border-color:var(--accent);box-shadow:0 3px 0 var(--accent-light)}.mode-icon{display:flex;align-items:center;justify-content:center;width:43px;height:43px;border-radius:12px;background:#eaf0e6;color:#55795f;flex-shrink:0}.mode-card[data-mode-id=ocean] .mode-icon{background:#e4f1f5;color:#4f89a2}.mode-card[data-mode-id=moon] .mode-icon{background:#efe9f4;color:#85729f}.mode-icon svg{width:29px;height:29px}.mode-copy{display:flex;flex-direction:column;gap:5px}.mode-copy strong{font-size:17px;letter-spacing:.04em}.mode-copy>span{font-size:11px;color:#8d968d;white-space:nowrap}.mode-timer{margin-left:auto;color:#9aa29b;font-size:13px;font-variant-numeric:tabular-nums;letter-spacing:-.3px}.mode-card[data-status=running] .mode-timer{color:var(--accent-dark);font-weight:850}.mode-dot{position:absolute;right:12px;top:12px;width:6px;height:6px;border-radius:50%;background:transparent}.mode-card[data-status=running] .mode-dot{background:#72a784;box-shadow:0 0 0 3px #72a78420}.mode-card[data-status=paused] .mode-dot{background:#d5a760}.mode-card[data-status=finished] .mode-dot{background:#ab83c3}.timer-hero{grid-area:timer;text-align:center;position:relative;padding:8px 0 4px}.timer-eyebrow{display:flex;align-items:center;justify-content:center;gap:12px;font-size:12px;color:var(--muted);letter-spacing:.08em}.status-chip{padding:5px 11px;border-radius:50px;line-height:1.1;font-size:11px;letter-spacing:.02em;background:var(--accent-light);color:var(--accent-dark)}.timer-display{display:block;font-size:clamp(88px,10.8vw,140px);font-weight:800;font-variant-numeric:tabular-nums;line-height:1.1;letter-spacing:-.065em;color:var(--accent-dark);padding-right:.065em}.overtime{margin:0;font-size:12px;color:var(--muted)}.journey-stage{grid-area:stage;position:relative;min-height:350px;aspect-ratio:2.14;isolation:isolate;overflow:hidden;border-radius:24px;border:1px solid #d9e4d9;background:#d0e8db}.scenery,.landscape{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.scenery{z-index:0}.actor{position:absolute;z-index:4;width:clamp(118px,15vw,165px);height:clamp(118px,15vw,165px);transform:translate(-50%,-93%);pointer-events:none}.actor-motion{position:absolute;inset:0;animation:hike-step .8s ease-in-out infinite}.sprite-viewport{position:absolute;inset:0;display:block;overflow:hidden;contain:paint;isolation:isolate}.sprite-frame{position:absolute;inset:0;display:block;background-repeat:no-repeat;background-position:0 0;background-size:200% 200%;animation:four-frames .8s steps(1,end) infinite}[data-mode=ocean] .actor{transform:translate(-50%,-50%)}[data-mode=ocean] .actor-motion{animation:diver-float 2.8s ease-in-out infinite}[data-mode=ocean] .sprite-frame{animation-duration:1.8s}[data-mode=moon] .actor{width:clamp(100px,13vw,145px);height:clamp(145px,18vw,195px);transform:translate(-50%,-50%)}[data-mode=moon] .actor-motion{animation:rocket-drift .85s ease-in-out infinite alternate;transform:rotate(28deg)}[data-mode=moon] .sprite-viewport{overflow:visible;contain:none}[data-mode=moon] .sprite-frame{background-size:contain;background-position:center;animation:none}.rocket-flame{display:none;position:absolute;left:40%;top:88%;width:20%;height:40%;z-index:-1;background:linear-gradient(#fffbc9,#ffd378 40%,#ef9170 72%,#ef917000);border-radius:35% 35% 50% 50%;filter:drop-shadow(0 0 10px #ffca8d90);transform-origin:top;animation:flame .14s ease-in-out infinite alternate}[data-mode=moon][data-status=running] .rocket-flame{display:block}.destination-label{position:absolute;top:25%;right:12.5%;z-index:2;color:#566f5f;background:#ffffffe0;border:1px solid #ffffff70;border-radius:8px;padding:5px 11px;font-size:11px;font-weight:800}.journey-caption{position:absolute;z-index:5;left:20px;top:18px;display:flex;align-items:center;gap:8px;padding:9px 13px;border-radius:11px;background:#ffffffd9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.journey-caption h2{font-size:12px;font-weight:750;margin:0}.caption-dot{width:5px;height:5px;border-radius:50%;background:var(--accent)}.journey-measure{position:absolute;bottom:17px;left:20px;z-index:3;padding:9px 13px;background:#ffffffe0;border-radius:12px;display:flex;flex-direction:column;gap:2px}.journey-measure>span{font-size:10px;letter-spacing:.1em;color:var(--muted)}.journey-measure strong{font-size:22px;font-variant-numeric:tabular-nums;letter-spacing:-.5px}.journey-measure small{font-size:11px;letter-spacing:0}.ocean-shade,.floating-particles{display:none}.arrival-sparkles{display:none;position:absolute;right:20%;top:15%;width:180px;color:#f4d181;z-index:6;font-size:27px;word-spacing:13px;pointer-events:none}.arrival-sparkles span{font-size:17px;color:#fff4c0}[data-arrived=true] .arrival-sparkles{display:block;animation:arrival 1.6s ease-in-out infinite alternate}[data-mode=ocean] .journey-stage{border-color:#9fc4d3}[data-mode=ocean] .ocean-shade{display:block;position:absolute;inset:0;background:#061a3d;opacity:calc(var(--journey-progress,0)*.32);z-index:1;pointer-events:none}[data-mode=ocean] .destination-label{top:auto;bottom:5%;right:17%;color:#bfe6e4;background:#193f54e0;border-color:#78c5c330}[data-mode=ocean] .journey-caption,[data-mode=moon] .journey-caption{background:#f6ffffde}[data-mode=ocean] .journey-measure{background:#0b3349b8;color:#e5faf2}[data-mode=ocean] .journey-measure>span{color:#a6d6d3}[data-mode=ocean] .floating-particles{display:block;position:absolute;inset:0;z-index:2;pointer-events:none}.floating-particles i{position:absolute;width:calc(3px + var(--n)*1px);height:calc(3px + var(--n)*1px);border:1px solid #d9ffef65;border-radius:50%;left:calc(12% + var(--n)*11%);bottom:-10px;animation:bubble 7s linear infinite;animation-delay:calc(var(--n)*-.8s)}[data-mode=moon] .journey-stage{border-color:#4e436e}[data-mode=moon] .destination-label{top:7%;right:6%;color:#f5e5bd;background:#514872b0;border-color:#e5d4b422}[data-mode=moon] .journey-measure{background:#211e40a8;color:#f0e9f7}[data-mode=moon] .journey-measure>span{color:#c6bed7}.cloud{animation:cloud-drift 15s ease-in-out infinite alternate}.cloud-two{animation-delay:-7s}.sea-fish{animation:fish-drift 6s ease-in-out infinite alternate}.jelly{animation:jelly-float 5s ease-in-out infinite alternate}.space-stars{animation:twinkle 3s ease-in-out infinite alternate}.deep-glow{animation:twinkle 2.7s ease-in-out infinite alternate}.progress-wrap{grid-area:progress}.progress-track{height:6px;background:#dce4d9;border-radius:8px;overflow:hidden}#progress-fill{height:100%;width:0;background:var(--accent);border-radius:inherit}.progress-copy{display:flex;justify-content:space-between;gap:10px;margin-top:8px;font-size:11px;color:var(--muted)}.settings{grid-area:settings;background:#ffffffa6;align-self:start;margin-top:10px;padding:24px 21px 21px;border:1px solid var(--border);border-radius:23px;box-shadow:0 7px 30px #334a3504}.settings-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.settings-heading h2{font-size:15px;margin:0;font-weight:800}.settings-heading>span{font-size:10px;color:var(--accent);padding:4px 8px;background:var(--accent-light);border-radius:6px}.custom-time{display:flex;justify-content:center;align-items:center;gap:10px;margin-top:24px}.time-field{display:flex;flex-direction:column;align-items:center;gap:8px;width:92px;cursor:text}.time-field>span:first-child{font-size:11px;color:var(--muted)}.time-field input{width:92px;min-width:0;text-align:center;font-size:38px;font-variant-numeric:tabular-nums;font-weight:700;padding:10px 3px;border:1px solid var(--border);border-radius:14px;color:var(--accent-dark);background:#fff;line-height:1.2;outline-offset:2px}.time-colon{color:#bcc9bb;font-size:30px;margin-top:2px}.adjusters{display:grid;width:100%;grid-template-columns:1fr 1fr;gap:6px}.adjusters button{border:0;border-radius:8px;min-height:37px;background:var(--accent-light);color:var(--accent-dark);font-size:20px;touch-action:none;user-select:none;-webkit-user-select:none}.adjusters button:active{background:var(--accent);color:#fff}.setting-hint{font-size:10px;line-height:1.9;color:var(--muted);text-align:center;margin:13px 0 21px}.presets{display:flex;gap:5px}.presets button{flex:1;border:1px solid var(--border);border-radius:8px;min-height:42px;background:#fff;font-size:14px;font-weight:800;color:var(--accent-dark)}.presets button span{margin-left:2px;font-size:9px;font-weight:600}.presets button.selected{background:var(--accent);border-color:var(--accent);color:#fff}.settings-note{display:flex;align-items:center;gap:12px;margin-top:24px;padding-top:18px;border-top:1px solid var(--border);color:var(--muted)}.settings-note>span{font-size:23px;color:var(--accent)}.settings-note p{margin:0;font-size:10px;line-height:1.9}.setting-error{color:#b35a42;font-size:12px;margin:0;line-height:1.6}.setting-error:not(:empty){margin-top:14px}.time-summary{text-align:center;padding:24px 0 7px}.time-summary>span{display:block;font-size:12px;color:var(--muted)}.time-summary strong{display:block;font-size:42px;color:var(--accent-dark);margin-top:9px;font-variant-numeric:tabular-nums}.time-summary p{font-size:11px;color:var(--muted);line-height:1.8}.controls{grid-area:controls;display:flex;gap:12px;margin-top:5px}.button{min-height:57px;display:flex;align-items:center;justify-content:center;gap:10px;border-radius:14px;font-size:15px;font-weight:800;flex:1;border:0}.button svg{width:19px;height:19px}.button.primary{background:var(--accent);color:#fff;box-shadow:0 6px 18px #304d3d12}.button.primary:active{background:var(--accent-dark)}.button.secondary{background:#fff;border:1px solid var(--border);color:var(--muted);flex:.6}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[data-status=idle] .sprite-frame,[data-status=idle] .actor-motion,[data-status=paused] .sprite-frame,[data-status=paused] .actor-motion,[data-status=finished] .sprite-frame,[data-status=finished] .actor-motion,[data-status=paused] .floating-particles i,[data-status=paused] .sea-fish,[data-status=paused] .jelly{animation-play-state:paused}@keyframes four-frames{0%,24.99%{background-position:0 0}25%,49.99%{background-position:100% 0}50%,74.99%{background-position:0 100%}75%,to{background-position:100% 100%}}@keyframes hike-step{0%,50%,to{transform:translateY(0) rotate(0)}25%,75%{transform:translateY(-4px) rotate(-1deg)}}@keyframes diver-float{0%,to{transform:translateY(-3px) rotate(-3deg)}50%{transform:translateY(4px) rotate(3deg)}}@keyframes rocket-drift{0%{transform:rotate(27deg) translateY(-1px)}to{transform:rotate(29deg) translateY(2px)}}@keyframes flame{0%{transform:scaleY(.65);opacity:.7}to{transform:scaleY(1);opacity:1}}@keyframes bubble{to{bottom:105%;transform:translate(14px);opacity:0}}@keyframes cloud-drift{to{transform:translate(18px)}}@keyframes fish-drift{to{translate:20px 0}}@keyframes jelly-float{to{translate:0 -9px}}@keyframes twinkle{to{opacity:.48}}@keyframes arrival{to{opacity:.6;translate:0 -4px}}@media(min-width:1500px){.timer-app{padding-top:40px}.journey-stage{min-height:420px}}@media(max-width:1000px){.timer-app{grid-template-columns:minmax(0,1fr) 250px;gap:12px 20px;padding-inline:22px}.mode-card{padding:13px;gap:9px}.mode-copy>span{font-size:10px}.mode-timer{font-size:11px}.settings{padding:21px 16px}.time-field,.time-field input{width:83px}.journey-stage{min-height:330px}.actor{width:138px;height:138px}}@media(max-width:850px){.timer-app{grid-template-columns:1fr;grid-template-areas:"head" "modes" "timer" "stage" "progress" "settings" "controls";gap:12px;padding-top:16px}.journey-stage{min-height:355px;aspect-ratio:1.9}.actor{width:145px;height:145px}.mode-card{min-height:79px}.mode-copy>span{display:none}.settings{margin-top:1px;padding:18px 20px}.settings-heading{margin-bottom:12px}#time-editor{display:grid;grid-template-columns:1fr auto;align-items:center;gap:5px 24px}.custom-time{margin:0;grid-column:2;grid-row:1 / 3}.time-field,.time-field input{width:78px}.time-field input{font-size:30px;padding-block:8px}.time-field{gap:4px}.adjusters button{min-height:32px}.presets{grid-column:1;grid-row:1}.setting-hint{grid-column:1;grid-row:2;margin:0;text-align:left;font-size:11px}.setting-hint br{display:none}.settings-note{margin-top:14px;padding-top:12px}.settings-note p br{display:none}.time-summary{padding:2px 0;display:flex;align-items:center;gap:18px}.time-summary strong{margin:0;font-size:30px}.time-summary p{margin:0 0 0 auto}.controls{margin-top:0}.timer-display{font-size:112px}.timer-hero{padding:0}.topbar{margin-bottom:0}}@media(max-width:600px){.timer-app{padding-inline:max(14px,env(safe-area-inset-left));gap:10px}.brand h1{font-size:22px}.brand h1>span{display:block;font-size:10px;margin:3px 0 0;letter-spacing:.02em}.brand-symbol{width:38px;height:38px;font-size:28px;border-radius:12px}.toggles{gap:6px}.icon-toggle{padding:7px 9px;min-height:39px}.icon-toggle span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.mode-switcher{gap:7px}.mode-card{padding:10px 8px;display:grid;grid-template-columns:30px 1fr;gap:5px;min-height:80px;border-radius:14px}.mode-icon{width:30px;height:30px;border-radius:9px}.mode-icon svg{width:23px;height:23px}.mode-copy strong{font-size:12px;letter-spacing:0}.mode-timer{grid-column:1 / -1;margin:0;text-align:center;font-size:12px}.mode-dot{right:7px;top:7px;width:4px;height:4px}.timer-display{font-size:90px}.timer-eyebrow{font-size:11px}.journey-stage{min-height:325px;border-radius:19px;aspect-ratio:1.25}.actor{width:120px;height:120px}[data-mode=moon] .actor{width:98px;height:139px}.journey-caption{left:12px;top:12px;padding:8px 11px}.journey-caption h2{font-size:11px}.journey-measure{bottom:12px;left:12px;padding:7px 10px}.journey-measure strong{font-size:19px}.destination-label{right:9%;padding:4px 7px;font-size:10px;top:26%}[data-mode=moon] .destination-label{top:8%;right:2%}.settings{padding:16px}.settings-heading{margin-bottom:16px}#time-editor{display:flex;flex-direction:column;gap:12px}.custom-time{gap:14px}.time-field,.time-field input{width:98px}.time-field input{font-size:35px}.adjusters button{min-height:36px}.presets{width:100%}.setting-hint{font-size:10px;text-align:center}.setting-hint br{display:inline}.settings-note{display:none}.controls{position:sticky;bottom:max(12px,env(safe-area-inset-bottom));z-index:10;background:#f5f5eed9;border-radius:14px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:4px}.button{min-height:53px}.time-summary{flex-wrap:wrap;justify-content:center}.time-summary p{width:100%;margin:0}}@media(orientation:landscape)and (min-width:700px)and (max-height:850px){.timer-app{grid-template-columns:minmax(0,1fr) 245px;grid-template-areas:"head head" "modes modes" "timer settings" "stage settings" "progress settings" "controls settings";padding-top:13px;gap:10px 20px}.brand h1{font-size:24px}.mode-card{min-height:71px;padding-block:11px}.mode-copy>span{display:block}.timer-display{font-size:100px}.journey-stage{min-height:295px}.actor{width:110px;height:110px}[data-mode=moon] .actor{width:99px;height:136px}.settings{padding:19px 16px}#time-editor{display:block}.custom-time{margin-top:23px;gap:10px}.time-field,.time-field input{width:80px}.time-field input{font-size:34px}.setting-hint{text-align:center;margin:12px 0 22px}.setting-hint br{display:inline}.settings-note{margin-top:22px}.time-summary{display:block;padding:20px 0}.time-summary strong{font-size:42px;margin-top:10px}.time-summary p{margin-top:15px}.button{min-height:51px}}.timer-app>*{min-width:0}.journey-stage{width:100%;min-width:0}.mode-card,.mode-copy{min-width:0}.journey-measure{left:auto;right:20px}@media(max-width:600px){.journey-measure{left:auto;right:12px}}@media(orientation:landscape)and (min-width:700px)and (max-height:850px){.timer-app{padding-bottom:13px;gap:9px 20px}.journey-stage{height:clamp(230px,39vh,300px);min-height:0;aspect-ratio:auto}.timer-display{font-size:90px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.sprite-frame{animation:none!important}.actor{transition:none}[data-mode=mountain] .actor{height:auto;aspect-ratio:var(--frame-ratio,1);transform:translate(-50%,calc(0% - var(--foot-anchor,85%)))}.actor[data-pose=water] .actor-motion{animation:drink-sway 1.4s ease-in-out infinite}.actor[data-pose=effort] .actor-motion{animation-duration:1.1s}.actor[data-pose=arrived] .actor-motion{animation:none}.story-art{position:absolute;inset:0;z-index:2;background-repeat:no-repeat;pointer-events:none;overflow:hidden;contain:paint}.journey-caption{max-width:calc(100% - 40px);align-items:flex-start}.caption-dot{margin-top:5px;flex-shrink:0}.caption-copy{display:flex;flex-direction:column;gap:4px}.journey-message{margin:0;font-size:10px;font-weight:500;line-height:1.5;color:#5e7668;max-width:33em}[data-mode=ocean] .journey-message{color:#3c667e}[data-mode=ocean][data-story=false] .journey-caption{top:auto;bottom:18px}[data-mode=moon] .journey-message{color:#76648a}.timer-app[data-story=true] .journey-measure,.timer-app[data-arrived=true] .arrival-sparkles{display:none}.timer-app[data-celebrate=true] .arrival-sparkles{display:block}.water-caustics,.deep-swimmers,.actor-bubbles,.celebration,.story-atmosphere>i{display:none}[data-mode=ocean] .water-caustics{display:block;position:absolute;inset:-10%;z-index:3;pointer-events:none;mix-blend-mode:screen;opacity:.25;background:repeating-radial-gradient(ellipse at 30% 20%,transparent 0 24px,#b8fff238 26px 27px,transparent 29px 62px),repeating-radial-gradient(ellipse at 80% 60%,transparent 0 32px,#d8fff326 34px 36px,transparent 38px 80px);background-size:150% 170%,160% 200%;animation:water-shimmer 9s ease-in-out infinite alternate}[data-mode=ocean] .floating-particles{z-index:5;overflow:hidden}.floating-particles i{left:var(--x);bottom:-40px;width:var(--size);height:var(--size);border:1.5px solid #d5fff9aa;background:radial-gradient(circle at 28% 25%,#f6ffffbb 0 8%,transparent 15% 65%,#bbffef15 78%);box-shadow:inset -1px -1px 3px #99e4ee22;border-radius:50%;animation:underwater-bubble var(--speed) linear infinite;animation-delay:var(--delay);will-change:transform;opacity:.7}[data-mode=ocean] .actor-bubbles{display:block;position:absolute;left:70%;top:23%;width:12px;height:12px;z-index:6}.actor-bubbles i{position:absolute;width:calc(5px + var(--n)*1px);height:calc(5px + var(--n)*1px);border:1px solid #e8fffae6;background:#b8eaf024;border-radius:50%;animation:breathing-bubble 2.8s ease-out infinite;animation-delay:var(--delay)}[data-mode=ocean] .deep-swimmers{display:block;position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:3}.swimmer{position:absolute;left:-250px;width:160px;height:auto;animation:swim-across 21s linear infinite;animation-delay:-7s;opacity:.9;filter:drop-shadow(0 2px 5px #061c4430)}.swimmer-angler{top:38%;width:145px}.swimmer-eel{top:70%;width:235px;animation-duration:29s;animation-delay:-19s;opacity:.7}.swimmer-lanterns{top:17%;width:155px;animation-duration:17s;animation-delay:-11s;opacity:.7}.lure-light{filter:drop-shadow(0 0 7px #ccffa5)}.eel-body{animation:eel-undulate 2s ease-in-out infinite alternate;transform-origin:center}.timer-app[data-arrived=true] .deep-swimmers,.timer-app[data-environment=surface] .water-caustics,.timer-app[data-environment=surface] .floating-particles,.timer-app[data-environment=surface] .deep-swimmers{display:none}.timer-app[data-status=paused] .floating-particles i,.timer-app[data-status=paused] .sea-fish,.timer-app[data-status=paused] .jelly{animation-play-state:running}.timer-app[data-celebrate=true] .celebration{display:block;position:absolute;inset:0;z-index:7;overflow:hidden;pointer-events:none}.celebration b{position:absolute;left:var(--x);top:-24px;width:9px;height:15px;background:linear-gradient(135deg,#ffe7f2,#f292b0);border-radius:85% 8% 80%;opacity:.9;animation:petal-fall var(--speed) linear infinite;animation-delay:var(--delay)}.celebration b:nth-child(3n){width:7px;height:12px;background:#ffd8e7}.celebration b:nth-child(5n){background:#fff3c2}[data-mode=ocean] .celebration b{width:10px;height:10px;border-radius:50%;background:#e0fff266;box-shadow:0 0 8px #bbffe0;animation-name:celebration-bubble;top:auto;bottom:-20px}[data-mode=moon] .celebration b{width:12px;height:12px;background:#ffe8a9;clip-path:polygon(50% 0,61% 36%,100% 50%,63% 63%,50% 100%,37% 63%,0 50%,37% 36%);border-radius:0}.story-atmosphere{position:absolute;inset:0;z-index:4;pointer-events:none;overflow:hidden}[data-scene=stargazing] .shooting-star,[data-scene=earth-view] .shooting-star{display:block;position:absolute;left:35%;top:14%;width:80px;height:2px;background:linear-gradient(90deg,transparent,#fff9d2);transform:rotate(-22deg);animation:shooting-star 6s ease-out infinite}[data-scene=camp] .camp-light,[data-scene=stargazing] .camp-light{display:block;position:absolute;left:55%;top:56%;width:15%;height:22%;background:radial-gradient(ellipse,#ffce7418,transparent 70%);animation:camp-glow 3s ease-in-out infinite alternate}[data-scene=sunrise] .sunrise-rays{display:block;position:absolute;inset:0;background:radial-gradient(ellipse at 65% 18%,#fff9c326,transparent 65%);animation:camp-glow 5s ease-in-out infinite alternate}@keyframes drink-sway{0%,to{transform:rotate(-1deg)}50%{transform:rotate(1deg)}}@keyframes underwater-bubble{0%{transform:translateZ(0);opacity:.12}12%{opacity:.75}80%{opacity:.5}to{transform:translate3d(var(--drift),calc(0px - var(--stage-height,400px) - 60px),0);opacity:0}}@keyframes breathing-bubble{0%{transform:translate(0);opacity:0}10%{opacity:.9}to{transform:translate(calc(12px + var(--n)*4px),-110px);opacity:0}}@keyframes water-shimmer{to{background-position:25px 22px,-35px -20px;opacity:.13}}@keyframes swim-across{0%{transform:translate(-20px)}25%{transform:translate(calc(var(--stage-width,700px)*.25 + 95px),-7px)}50%{transform:translate(calc(var(--stage-width,700px)*.5 + 210px),5px)}75%{transform:translate(calc(var(--stage-width,700px)*.75 + 325px),-4px)}to{transform:translate(calc(var(--stage-width,700px) + 440px))}}@keyframes eel-undulate{to{transform:scaleY(.85) rotate(-2deg)}}@keyframes petal-fall{0%{transform:translateY(-20px) rotate(var(--spin));opacity:0}8%{opacity:.95}to{transform:translate(var(--drift),calc(var(--stage-height,400px) + 60px)) rotate(calc(var(--spin) + 440deg));opacity:.2}}@keyframes celebration-bubble{0%{transform:translate(0);opacity:0}12%{opacity:.8}to{transform:translate(var(--drift),calc(0px - var(--stage-height,400px) - 40px));opacity:0}}@keyframes shooting-star{0%,65%,to{opacity:0;translate:-90px 0}68%{opacity:1}85%{opacity:0;translate:240px -90px}}@keyframes camp-glow{to{opacity:.4}}@media(min-width:601px)and (max-width:850px){.mode-card{display:grid;grid-template-columns:36px minmax(0,1fr);gap:3px 8px}.mode-icon{grid-row:1 / 3;width:36px;height:36px}.mode-copy strong{font-size:14px;white-space:nowrap}.mode-timer{grid-column:2;margin:0;font-size:11px}}@media(max-width:600px){.journey-caption{max-width:calc(100% - 24px)}.journey-message{font-size:9px;max-width:28em}.swimmer-angler{width:112px}.swimmer-eel{width:165px}.swimmer-lanterns{width:118px}}@media(prefers-reduced-motion:reduce){.water-caustics{opacity:.12}.floating-particles i,.actor-bubbles i,.celebration b,.shooting-star{display:none}.swimmer{animation:none;left:12%;top:65%;opacity:.5}.swimmer-eel,.swimmer-lanterns{display:none}}.flight-foreground{display:none;position:absolute;inset:0;z-index:5;pointer-events:none;overflow:hidden}.flight-foreground svg{width:100%;height:100%}[data-mode=moon][data-flight-phase=clouds][data-arrived=false] .flight-foreground{display:block}.rf-cloud-bank-left{transform:translate(calc(0px - var(--cloud-parting,0px)))}.rf-cloud-bank-right{transform:translate(var(--cloud-parting,0px))}[data-mode=moon][data-arrived=false] .actor-motion{animation:rf-rocket-vibration .35s ease-in-out infinite alternate;transform:rotate(var(--rocket-angle,0deg))}[data-mode=moon][data-arrived=false][data-status=idle] .actor-motion,[data-mode=moon][data-arrived=false][data-status=paused] .actor-motion{animation-play-state:paused}[data-mode=moon][data-arrived=false] .scenery .landscape{animation:rf-scene-enter .6s ease-out}[data-mode=moon] .rocket-flame{top:94%;height:58%;width:24%;left:38%;background:linear-gradient(#fffef4,#ffe783 28%,#ffad5d 60%,#f36c5900);filter:drop-shadow(0 0 13px #ffcb89)}[data-mode=moon][data-flight-phase=launch] .rocket-flame{height:78%}[data-mode=moon][data-arrived=false] .destination-label{display:none}.rf-clouds-far{animation:rf-cloud-pass 14s linear infinite}.rf-clouds-near{animation:rf-cloud-pass 7s linear infinite}.rf-launch-smoke{transform-origin:500px 450px;animation:rf-smoke 2.4s ease-out infinite}.rf-stars{animation:rf-star-glimmer 3s ease-in-out infinite alternate}.rf-ufo{animation:rf-ufo-pass 9s linear infinite;animation-delay:-3s;filter:drop-shadow(0 0 8px #80ece7aa)}.rf-planet{animation:rf-earth-glow 4s ease-in-out infinite alternate}[data-mode=ocean] .actor[data-pose=dive] .actor-bubbles{left:68%;top:64%}[data-mode=ocean] .actor[data-pose=dive] .sprite-frame{transform:translateY(var(--dive-frame-offset,0%))}[data-mode=ocean] .actor[data-pose=dive] .actor-bubbles i{animation-name:rf-diver-bubbles}[data-status=idle] .rf-clouds-far,[data-status=idle] .rf-clouds-near,[data-status=idle] .rf-launch-smoke,[data-status=idle] .rf-ufo,[data-status=paused] .rf-clouds-far,[data-status=paused] .rf-clouds-near,[data-status=paused] .rf-launch-smoke,[data-status=paused] .rf-ufo,[data-status=paused] .rf-stars,[data-status=paused] .rf-planet{animation-play-state:paused}@keyframes rf-rocket-vibration{0%{transform:rotate(var(--rocket-angle,0deg)) translate(-1px)}to{transform:rotate(var(--rocket-angle,0deg)) translate(1px,2px)}}@keyframes rf-scene-enter{0%{opacity:.25}to{opacity:1}}@keyframes rf-cloud-pass{0%{translate:0 -110px}to{translate:0 180px}}@keyframes rf-smoke{0%{transform:scale(.8);opacity:.7}to{transform:scale(1.25);opacity:.15}}@keyframes rf-star-glimmer{to{opacity:.5}}@keyframes rf-earth-glow{to{opacity:.87}}@keyframes rf-ufo-pass{0%{transform:translate(-200px,10px) rotate(-6deg)}45%{transform:translate(440px,-30px) rotate(4deg)}to{transform:translate(1180px,15px) rotate(-3deg)}}@keyframes rf-diver-bubbles{0%{transform:translate(0);opacity:0}10%{opacity:.9}to{transform:translate(calc(-12px - var(--n)*4px),-100px);opacity:0}}@media(prefers-reduced-motion:reduce){.rf-ufo{animation:none;transform:translate(290px)}.rf-launch-smoke{animation:none;opacity:.45}.rf-clouds-far,.rf-clouds-near,.rf-stars,.rf-planet{animation:none}[data-mode=moon][data-arrived=false] .actor-motion{animation:none!important;transform:rotate(var(--rocket-angle,0deg))}}
