:root{color:#35504b;font-synthesis:none;touch-action:none;-webkit-tap-highlight-color:transparent;background:#bcebdc;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#game,#renderCanvas{width:100%;height:100%;margin:0;overflow:hidden}body{overscroll-behavior:none}button{font:inherit}[hidden]{display:none!important}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.is-welcome #worldUi{visibility:hidden;pointer-events:none}#worldUi svg{width:100%;height:100%;display:block}.world-guide{z-index:5;pointer-events:none;background:#fff8e6;border:1px solid #a9b49a;border-radius:50%;width:38px;height:38px;padding:4px;position:fixed;top:8px;left:16px}.guide-arrow{width:26px;height:26px;transform:rotate(var(--direction));position:absolute;top:6px;left:40px}.trail-signs{z-index:5;gap:6px;display:flex;position:fixed}.trail-signs button{cursor:pointer;background:#f1d6a5;border:2px solid #8e6348;border-radius:7px;width:48px;height:44px;padding:4px;display:flex}.trail-signs button svg:last-child{width:12px;transform:rotate(90deg)}.trail-signs button:focus-visible{outline-offset:3px;outline:3px solid #356f60}.carrying{z-index:4;pointer-events:none;background:#fff8e6dd;border-radius:14px;gap:3px;padding:5px;display:flex;position:fixed}.carrying.is-full{outline:2px solid #416f54}.carrying .thought-slot{width:22px;height:24px}.carried-mint{width:26px;height:28px}.pip-invitation{pointer-events:none;background:#fff8e6;border:2px solid #a9b49a;border-radius:20px;width:110px;height:44px;padding:6px;display:flex;position:fixed}.pip-invitation:not(#crossingRequest) svg:nth-child(2){width:24px;transform:rotate(90deg)}.thought-bubble{z-index:5;color:#527260;touch-action:manipulation;background:#fff8e6;border:2px solid #a9b49a;border-radius:50% 50% 38% 38%/55% 55% 35% 35%;justify-items:center;gap:2px;width:116px;height:104px;padding:6px 8px 12px;display:grid;position:fixed;box-shadow:0 5px 18px #35504b24}.thought-bubble.is-large{height:132px}.thought-bubble:focus-visible{outline-offset:5px;outline:3px solid #356f60}.thought-bubble svg{width:100%;height:100%;display:block}.thought-meal{width:48px;height:45px;display:block;position:relative}.thought-ingredients{grid-template-columns:repeat(3,27px);align-content:center;gap:4px;display:grid}.thought-slot{border:1px dashed #89977d;border-radius:50%;width:27px;height:27px;padding:2px;position:relative}.thought-prerequisites{gap:6px;display:none}.thought-prerequisites>span{border:1px dashed #89977d;border-radius:50%;width:32px;height:32px}[data-state=blocked] .thought-ingredients{display:none}[data-state=blocked] .thought-prerequisites{display:flex}.thought-slot path{fill:none;stroke:#7d8b73;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round}.thought-slot.is-filled{background:#e3ecd3;border:1px solid #90a47d}.thought-slot.is-filled .ingredient-cap{fill:#e18a69;stroke:#b06c52}.thought-slot.is-filled .berry-body{fill:#b74969;stroke:#87344e}.thought-slot.is-filled .ingredient-stem{fill:#fff8e8}.thought-slot.is-filled .ingredient-spots{stroke:#fff8e8;stroke-width:3px}.thought-slot.is-filled .herb-leaf{fill:#a7dcc4;stroke:#558769}.thought-slot.is-filled .herb-stem{stroke:#69aa78;stroke-width:2px}.thought-slot.is-filled .herb-bud{fill:#a58bd4;stroke:#7d68a0}.thought-slot>span{display:none}.thought-slot.is-filled>span{color:#fff;background:#416f54;border-radius:50%;place-items:center;width:12px;height:12px;font-size:10px;font-weight:800;display:grid;position:absolute;bottom:-2px;right:-3px}.thought-tail{background:#fff8e6;border:1px solid #a9b49a;border-radius:50%;width:11px;height:11px;position:absolute;bottom:-16px;left:50%}.thought-tail:after{content:"";background:#fff8e6;border-radius:50%;width:6px;height:6px;position:absolute;top:14px;left:8px}.thought-bubble[data-state=ready]{cursor:pointer;border:3px solid #4a8160;animation:1.8s ease-in-out infinite thought-ready;box-shadow:0 0 0 5px #f8fff2,0 0 0 8px #6b9b76}@keyframes thought-ready{50%{box-shadow:0 0 0 7px #f8fff2,0 0 0 10px #6b9b76}}.thought-tap{pointer-events:none;filter:drop-shadow(0 2px 2px #35504b30);width:34px;height:34px;display:none;position:absolute;top:25px;right:-8px}.thought-bubble[data-state=ready] .thought-tap{animation:1.8s ease-in-out infinite thought-tap;display:block}@keyframes thought-tap{0%,65%,to{transform:translate(5px,7px)rotate(-12deg)}25%,40%{transform:translate(0)rotate(-12deg)scale(.92)}}#game{isolation:isolate;background:linear-gradient(#bcebdc,#eaf7d8);position:relative}#renderCanvas{touch-action:none;outline:none;display:block}.main-menu-cover{z-index:9;opacity:0;pointer-events:none;background:linear-gradient(145deg,#bcebdc 0%,#dcefcf 58%,#f5ecc8 100%);transition:opacity .25s;position:fixed;inset:0}.is-main-menu .main-menu-cover{opacity:1;pointer-events:auto}.hud{z-index:4;width:100%;padding:max(22px, env(safe-area-inset-top)) max(24px, env(safe-area-inset-right)) 0 max(24px, env(safe-area-inset-left));pointer-events:none;justify-content:flex-end;align-items:flex-start;display:flex;position:fixed;top:0;left:0}.icon-button{color:#42645d;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:pointer;pointer-events:auto;background:#ffffff85;border:2px solid #ffffffa6;border-radius:50%;place-items:center;width:42px;height:42px;padding:0;font:700 18px ui-rounded,system-ui,sans-serif;display:grid;box-shadow:0 5px 18px #3765571f}.chapter-note{color:#5d6c5e}.welcome{z-index:10;top:calc(var(--visual-offset-top,0px) + var(--visual-height,100vh) / 2);left:calc(var(--visual-offset-left,0px) + var(--visual-width,100vw) / 2);width:min(500px, calc(var(--visual-width,100vw) - 36px));max-height:calc(var(--visual-height,100vh) - 40px);text-align:center;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);top:calc(var(--visual-offset-top,0px) + var(--visual-height,100vh) / 2 + 30px);background:#ffffffc7;border:2px solid #ffffffbf;border-radius:28px;padding:24px 28px 22px;transition:opacity .35s,transform .35s;position:fixed;overflow-y:auto;transform:translate(-50%,-50%);box-shadow:0 24px 80px #34655638}.welcome.is-hidden{opacity:0;pointer-events:none;transform:translate(-50%,-46%)scale(.96)}.welcome__mascot{color:#263d3a;letter-spacing:3px;background:#f49a76;border:5px solid #fff;border-radius:50%;place-items:center;width:70px;height:70px;margin:-60px auto 13px;font-weight:700;display:grid;box-shadow:0 9px 22px #62503c2e}.welcome h2{color:#304d48;margin:0;font:700 34px/1.1 ui-rounded,system-ui,sans-serif}#setupSurface>p,.settings-description{color:#61746f;max-width:310px;margin:10px auto 14px;font-size:14px;line-height:1.5}.welcome .settings-button{color:#61746f;width:44px;height:44px;box-shadow:none;background:#ffffff8f;border:1px solid #476d6424;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;top:14px;right:14px}.welcome .settings-button:hover{color:#35504b;background:#fff}.welcome .settings-button:focus-visible{outline-offset:2px;outline:3px solid #476d64}.welcome .settings-button svg,.settings-surface__icon svg{fill:currentColor;width:22px;height:22px;display:block}.settings-surface__icon{color:#476d64;background:#d9eee0;border:5px solid #fff;border-radius:50%;place-items:center;width:70px;height:70px;margin:0 auto 13px;display:grid;box-shadow:0 9px 22px #62503c2e}.settings-surface__icon svg{width:28px;height:28px}#settings-title:focus{outline:none}.personal-settings{gap:9px;margin:18px 0 14px;display:grid}.personal-settings label{color:#526b65;background:#ffffff80;border:1px solid #476d6424;border-radius:14px;align-items:center;gap:10px;min-height:58px;padding:12px 14px;display:flex}.personal-settings input{accent-color:#476d64;flex:none;width:18px;height:18px;margin:0}.personal-settings .personal-setting{align-items:flex-start;gap:10px}.personal-settings .personal-setting>span{text-align:left;letter-spacing:0;gap:4px;line-height:1.3;display:grid}.personal-setting input{margin-top:2px}.personal-setting strong{font-size:13px}.personal-setting small{color:#61746f;font-size:12px;font-weight:500}.app-settings{border-top:1px solid #476d6424;gap:8px;margin:0 0 10px;padding-top:12px;display:grid}.app-settings #updateSettings{gap:8px;display:grid}.app-settings button{color:#526b65;background:#fff;min-height:44px;box-shadow:0 5px 14px #3765571f}.app-settings button:disabled{opacity:.62;cursor:default}.pwa-status{color:#61746f;margin:0;font-size:12px;line-height:1.4}.settings-surface>.secondary-links{color:#71827e;flex-wrap:wrap;justify-content:center;gap:4px 7px;margin:0 0 10px;font-size:12px;display:flex}.secondary-links a{color:#526b65;text-underline-offset:2px}.secondary-links a:hover{color:#304d48}.secondary-links a:focus-visible{outline-offset:2px;border-radius:3px;outline:3px solid #476d64}.control-hints{color:#71827e;justify-content:center;gap:18px;margin-bottom:20px;font-size:11px;font-weight:700;display:flex}kbd{color:#47625c;background:#fff;border:1px solid #d5dfd9;border-bottom-width:3px;border-radius:7px;padding:5px 7px;font:700 10px system-ui,sans-serif;display:inline-block}.welcome button{color:#fff;cursor:pointer;background:#ef8d68;border:0;border-radius:14px;width:100%;padding:13px 18px;font-weight:700;box-shadow:0 8px 18px #dd76523d}.welcome button span{float:right}#playButton{text-align:left}#playLabel{float:none}#quitButton,#newGameButton{color:#526b65;background:#fff;margin-top:9px;box-shadow:0 5px 14px #3765571f}#settingsBackButton{color:#526b65;box-shadow:none;background:#e9f2ec}#setupSurface.is-resume .control-hints,.is-welcome .touch-controls{display:none}.install-dialog{top:calc(var(--visual-offset-top,0px) + var(--visual-height,100vh) / 2);width:min(440px,100% - 32px);max-height:calc(var(--visual-height,100vh) - 24px);color:#35504b;background:#f9fff8f5;border:2px solid #ffffffbf;border-radius:24px;margin:0 auto;padding:0;position:fixed;overflow:auto;transform:translateY(-50%);box-shadow:0 24px 80px #3465564d}.install-dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#27443d6b}.install-dialog form{text-align:center;padding:24px}.install-dialog__mark{color:#263d3a;letter-spacing:3px;background:#f49a76;border-radius:50%;place-items:center;width:58px;height:58px;margin:0 auto 12px;font-weight:700;display:grid}.install-dialog h2{margin:0;font:700 25px/1.15 ui-rounded,system-ui,sans-serif}.install-dialog p{color:#61746f;margin:12px auto 18px;line-height:1.5}.install-dialog__actions{gap:8px;display:grid}.install-dialog button{color:#fff;cursor:pointer;background:#ef8d68;border:0;border-radius:14px;min-height:44px;padding:10px 16px;font-weight:700}.install-dialog #installDialogClose,.install-dialog #cancelNewGame{color:#526b65;background:#e9f2ec}.updating{z-index:20;color:#35504b;background:#f9fff8;place-items:center;font:700 24px/1.2 ui-rounded,system-ui,sans-serif;display:grid;position:fixed;inset:0}.updating[hidden]{display:none}.touch-controls{z-index:6;pointer-events:none;display:none;position:fixed;inset:0}.touch-zone{bottom:max(28px, env(safe-area-inset-bottom));color:#ffffffb3;letter-spacing:.14em;background:#4b716514;border:2px solid #ffffff57;border-radius:50%;place-items:end center;width:104px;height:104px;padding-bottom:10px;font-size:9px;font-weight:800;display:grid;position:fixed;box-shadow:inset 0 0 28px #ffffff1f}.touch-zone--move{left:max(24px, env(safe-area-inset-left))}.touch-zone--look{right:max(116px, calc(env(safe-area-inset-right) + 92px))}.move-drag{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#4b716524;border:2px solid #ffffff94;border-radius:50%;place-items:center;width:128px;height:128px;display:none;position:fixed;transform:translate(-50%,-50%);box-shadow:inset 0 0 32px #ffffff38}.move-drag.is-active{display:grid}.move-drag__knob{background:#ffffffc2;border:2px solid #ffffffe0;border-radius:50%;width:48px;height:48px;transform:translate(0);box-shadow:0 5px 14px #31584e3d}.camera-drag{color:#ffffffe6;background:#4b716524;border:2px solid #ffffff94;border-radius:50%;place-items:center;width:128px;height:128px;display:none;position:fixed;transform:translate(-50%,-50%);box-shadow:inset 0 0 32px #ffffff2e}.camera-drag.is-active{display:grid}.camera-drag__knob{background:#ffffffb3;border:2px solid #ffffffe0;border-radius:50%;place-items:center;width:48px;height:48px;font-size:18px;font-weight:700;display:grid;transform:translate(0);box-shadow:0 5px 14px #31584e3d}.jump-button{right:max(24px, env(safe-area-inset-right));bottom:max(34px, env(safe-area-inset-bottom));color:#fffffff2;pointer-events:auto;touch-action:none;background:#4b716552;border:2px solid #ffffffc7;border-radius:50%;place-items:center;width:76px;height:76px;font-size:30px;font-weight:800;display:grid;position:fixed;box-shadow:0 6px 18px #31584e38,inset 0 0 24px #ffffff2e}.jump-button:active{background:#4b716575;transform:scale(.94)}.recenter-button{right:max(38px, calc(env(safe-area-inset-right) + 14px));bottom:max(122px, calc(env(safe-area-inset-bottom) + 98px));color:#fffffff2;pointer-events:auto;touch-action:none;background:#4b716547;border:2px solid #ffffffb3;border-radius:50%;place-items:center;width:44px;height:44px;font-size:21px;font-weight:800;display:grid;position:fixed;box-shadow:0 5px 14px #31584e2e}.recenter-button:active{background:#4b716570;transform:scale(.94)}@media (pointer:coarse),(width<=700px){.hud{justify-content:flex-end}.touch-controls{display:block}.control-hints{display:none}.welcome{padding:25px 24px 22px}.welcome__mascot,.settings-surface__icon{margin-top:0}}@media (height<=540px) and (orientation:landscape){.hud{padding:max(8px, env(safe-area-inset-top)) max(12px, calc(env(safe-area-inset-right) + 8px)) 0 max(12px, calc(env(safe-area-inset-left) + 8px))}.icon-button{width:36px;height:36px}.welcome{top:calc(var(--visual-offset-top,0px) + var(--visual-height,100vh) / 2);width:min(660px, calc(var(--visual-width,100vw) - 24px));max-height:calc(var(--visual-height,100vh) - 16px);border-radius:20px;padding:12px 18px}#setupSurface>#welcomeDescription{display:none}#setupSurface{grid-template-columns:minmax(0,1fr);gap:5px;display:grid}#setupSurface>.welcome__mascot{display:none}#setupSurface>h2{grid-column:1/-1;align-items:center;min-height:44px;padding-inline:52px;display:grid}#setupSurface>#playButton,#setupSurface>#quitButton{grid-column:1/-1}.welcome .settings-button{width:44px;height:44px;top:8px;right:8px}.settings-surface__icon{width:34px;height:34px;margin:0 auto 2px}.settings-surface__icon svg{width:20px;height:20px}.welcome h2{font-size:22px}#setupSurface>p,.settings-description{max-width:430px;margin:3px auto 5px}#playButton{min-height:44px;padding-block:8px}.personal-settings{gap:5px;margin:4px 0 5px}.personal-settings label{min-height:48px;padding:6px 10px}.app-settings{gap:4px;margin:0 0 8px;padding-top:8px}.app-settings #updateSettings.has-restart{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-surface>.secondary-links{margin-bottom:3px}.install-dialog{width:min(620px,100% - 24px)}.install-dialog form{padding:14px 18px}.install-dialog__mark{display:none}.install-dialog h2{font-size:21px}.install-dialog p{margin:8px auto 10px}.install-dialog__actions{grid-template-columns:repeat(2,minmax(0,1fr))}.control-hints{display:none}.touch-zone{bottom:max(14px, calc(env(safe-area-inset-bottom) + 8px));width:88px;height:88px}.touch-zone--move{left:max(18px, calc(env(safe-area-inset-left) + 10px))}.touch-zone--look{right:max(98px, calc(env(safe-area-inset-right) + 90px))}.jump-button{right:max(18px, calc(env(safe-area-inset-right) + 10px));bottom:max(18px, calc(env(safe-area-inset-bottom) + 10px));width:62px;height:62px}.recenter-button{right:max(29px, calc(env(safe-area-inset-right) + 21px));bottom:max(90px, calc(env(safe-area-inset-bottom) + 82px));width:40px;height:40px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
