:root{--bg:#f4f1e9;--surface:#fbf9f4;--surface-2:#efe9dc;--ink:#20281f;--ink-soft:#4c5647;--ink-faint:#7a8272;--line:#ddd6c6;--forest:#1f5c47;--forest-deep:#123b2e;--amber:#d98a2b;--sky:#2f6d82;--good:#2f7d52;--warn:#b7791f;--crit:#a8443f;--radius:16px;--shadow:0 1px 0 #123b2e0a, 0 8px 26px -14px #123b2e4d;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}:root:not([data-theme=light]){--bg:#151a15;--surface:#1d241c;--surface-2:#232b21;--ink:#eae7db;--ink-soft:#b7bfae;--ink-faint:#828b79;--line:#333c30;--forest:#6bbf9c;--forest-deep:#0e2c22;--amber:#e6a24d;--sky:#6fb3c9;--good:#63c088;--warn:#e0b054;--crit:#e08a84;--shadow:0 1px 0 #0003, 0 12px 34px -16px #0009}}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;cursor:default;margin:0;font-family:Instrument Sans,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5}input,textarea,[contenteditable]{cursor:text}button,a[href],summary,label,select,[role=button],[role=radio],[role=tab],[role=checkbox]{cursor:pointer}button:disabled{cursor:not-allowed}button,[role=button],[role=radio],summary{-webkit-user-select:none;user-select:none}h1,h2,h3{text-wrap:balance;margin:0;font-family:Fraunces,Georgia,serif;line-height:1.1}.mono{font-family:IBM Plex Mono,ui-monospace,monospace}.app{max-width:860px;margin:0 auto;padding-block:20px;padding-inline:18px}.topbar{top:env(safe-area-inset-top,0px);z-index:10;background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:10px 18px;display:flex;position:sticky}.brand{letter-spacing:-.01em;font-family:Fraunces,serif;font-size:1.1rem;font-weight:900}.brand span{color:var(--forest)}.resources{gap:8px;display:flex}.res{background:var(--surface);border:1px solid var(--line);border-radius:999px;align-items:center;gap:6px;padding:5px 12px;font-size:.9rem;font-weight:600;display:flex}.res .k{color:var(--amber)}.res .m{color:var(--sky)}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:22px}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--forest);font-family:IBM Plex Mono,monospace;font-size:.72rem}.muted{color:var(--ink-faint)}.modal{width:min(420px,100% - 32px);max-height:calc(100dvh - 32px);color:var(--ink);overflow:auto}.modal::backdrop{background:#123b2e80}.modal-actions{flex-wrap:wrap;gap:10px;margin-top:16px;display:flex}.modal-actions>button{flex:150px}.trainer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.setup-start{width:100%}.setup-summary{overflow-wrap:anywhere;line-height:1.6}.setup-options{margin-top:16px}summary{cursor:pointer;align-content:center;min-height:44px;display:list-item}.next-action{background:var(--surface);border-left:4px solid var(--amber);border-radius:14px;align-items:center;gap:12px;margin-bottom:10px;padding:12px 14px;display:flex}.next-action>div{flex:1;min-width:0}.next-action h1{overflow-wrap:anywhere;margin:5px 0;font:700 1.05rem Instrument Sans,sans-serif}.next-action small{color:var(--ink-soft)}.next-action__buttons{flex:none;gap:8px;display:flex}.next-action__reward{color:var(--good);margin:2px 0 4px;font-weight:600}.report-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}button.btn{min-width:44px;min-height:44px}main:focus{outline:none}@media (width<=520px){.modal-actions{flex-direction:column}.modal-actions>button{white-space:normal;overflow-wrap:anywhere;width:100%;padding-inline:12px;flex:none!important}.trainer-grid{grid-template-columns:minmax(0,1fr)}.trainer-card{grid-template-columns:44px minmax(0,1fr);gap:6px 12px!important;display:grid!important}.trainer-card>:first-child{flex-direction:column;grid-row:1/4;gap:6px}.trainer-card .chip{padding:2px 4px;font-size:.65rem}.trainer-card>.muted{font-size:.95rem!important}.trainer-card>.mono{font-size:.8rem!important}.report-metrics{grid-template-columns:minmax(0,1fr)}.next-action{grid-template-columns:minmax(0,1fr);gap:8px;display:grid}.next-action__buttons button{padding:10px 14px}.next-action__buttons .btn.amber{flex:1}.topbar{gap:8px;padding-inline:12px}}.center{text-align:center}button.btn{font:inherit;cursor:pointer;background:var(--forest);color:#fbf9f4;border:none;border-radius:12px;padding:13px 22px;font-weight:600;transition:transform 80ms,filter .15s}button.btn:hover{filter:brightness(1.06)}button.btn:active{transform:translateY(1px)}button.btn.ghost{color:var(--forest);border:1px solid var(--line);background:0 0}button.btn.amber{background:var(--amber);color:#2b1c06}button.btn:disabled{opacity:.5;cursor:not-allowed}:focus-visible{outline:3px solid var(--sky);outline-offset:2px;border-radius:8px}.progress{background:var(--surface-2);border-radius:999px;height:8px;overflow:hidden}.progress>i{background:var(--forest);height:100%;transition:width .3s;display:block}.chip{border:1px solid var(--line);background:var(--surface-2);color:var(--ink-soft);border-radius:999px;padding:3px 10px;font-size:.75rem}@keyframes pop{0%{opacity:0;transform:scale(.8)}60%{transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}.pop{animation:.3s both pop}.shake{animation:.3s both shake}@media (prefers-reduced-motion:reduce){.pop,.shake{animation:none}}@media (width<=760px){.hero-grid,.cards3{grid-template-columns:1fr!important}.cards4{grid-template-columns:1fr 1fr!important}}.logo{color:var(--ink);align-items:center;gap:.38em;line-height:1;display:inline-flex}.logo-word{letter-spacing:-.01em;font-family:Fraunces,serif;font-weight:900;display:inline-flex}.logo-um{color:var(--forest);display:inline-flex}.logo-ch{display:inline-block}.logo-mark{flex:none;overflow:visible}.logo-wheel{transform-box:view-box;transform-origin:32px 27px}.logo-cabin{transform-box:fill-box;transform-origin:50%}.logo-spin .logo-wheel{animation:28s linear infinite logo-turn}.logo-intro .logo-wheel{animation:1.3s cubic-bezier(.2,.75,.25,1) both logo-spinup}.logo-intro.logo-spin .logo-wheel{animation:1.3s cubic-bezier(.2,.75,.25,1) both logo-spinup,28s linear 1.3s infinite logo-turn}.logo-intro .logo-legs{stroke-dasharray:1;animation:.6s ease-out both logo-draw}.logo-intro .logo-cabin{animation:.45s cubic-bezier(.3,1.7,.5,1) both logo-pop;animation-delay:calc(.35s + var(--i) * 70ms)}.logo.logo-intro .logo-ch{animation:.5s cubic-bezier(.3,1.4,.5,1) both logo-rise;animation-delay:calc(.25s + var(--i) * 55ms)}.logo:hover .logo-cabin,button:hover>.logo .logo-cabin{animation:.5s ease-in-out infinite alternate logo-bob;animation-delay:calc(var(--i) * -90ms)}@keyframes logo-turn{to{transform:rotate(360deg)}}@keyframes logo-spinup{0%{opacity:0;transform:rotate(-300deg)scale(.4)}60%{opacity:1}to{transform:rotate(0)scale(1)}}@keyframes logo-draw{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}@keyframes logo-pop{0%{transform:scale(0)}to{transform:scale(1)}}@keyframes logo-rise{0%{opacity:0;transform:translateY(.45em)}to{opacity:1;transform:none}}@keyframes logo-bob{0%{transform:translateY(-.8px)scale(1.08)}to{transform:translateY(.8px)scale(.94)}}@media (prefers-reduced-motion:reduce){.logo-wheel,.logo-legs,.logo-cabin,.logo-ch{animation:none!important}}.park-view{width:100%;height:min(72vh,620px);min-height:320px}.resident-story{border-bottom:1px solid var(--line);min-width:0;padding:20px 0}.story-training-note{border-left:3px solid var(--forest);background:var(--surface);border-radius:12px;align-items:center;gap:12px;margin-bottom:14px;padding:12px;display:flex}.story-training-note img{object-fit:contain;flex:none}.story-training-note small{margin-top:4px;display:block}.resident-story:last-of-type{border-bottom:0}.resident-story__header{align-items:center;gap:14px;display:flex}.resident-story h3{margin:16px 0 8px}.resident-story p{line-height:1.5}.story-terms{margin-bottom:0;font-size:.85rem}.resident-story button{white-space:normal;max-width:100%;min-height:44px}.story-portrait{object-fit:contain;transform-origin:bottom;flex:none;animation:.8s ease-in-out 2 story-wave}.story-stages{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:16px 0;padding:0;list-style:none;display:grid}.story-stages li{background:var(--surface-2);border:1px solid var(--line);border-radius:10px;padding:8px;font-size:.8rem}.story-stages li span{overflow-wrap:anywhere;display:block}.story-stages li[aria-current]{border-color:var(--amber)}.story-stages .is-done{border-color:var(--forest);color:var(--forest)}.story-reward{border:1px solid var(--good);background:var(--surface-2);border-radius:12px;align-items:center;gap:12px;padding:12px;animation:.4s ease-out both story-arrive;display:flex;position:relative}.story-reward p{margin:4px 0 0}.story-reward__icon{transform-origin:bottom;flex:none;font-size:2rem;animation:.8s ease-out story-hop;display:inline-block}.story-sparkles{pointer-events:none;color:var(--amber);opacity:0;animation:1.4s ease-out story-sparkle;position:absolute;top:0;right:10px}.story-spotlight{border:1px solid var(--line);background:var(--surface);border-radius:14px;align-items:center;gap:12px;margin-bottom:14px;padding:12px;display:flex}.story-spotlight>div{flex:1;min-width:0}.story-spotlight>div>div{margin-top:4px;font-size:.85rem}.discovery-art{flex:none;place-items:center;width:64px;height:64px;display:grid;position:relative}.discovery-art img{object-fit:contain;width:58px;height:58px;animation:1s ease-out story-hop}.discovery-art__symbol{font-size:2.5rem;animation:1s ease-out story-hop}.discovery-art__halo{border:2px solid var(--amber);opacity:0;border-radius:50%;animation:1.4s ease-out story-halo;position:absolute;inset:2px}.discovery-art__stars{color:var(--amber);pointer-events:none;opacity:0;animation:1.4s ease-out story-sparkle;position:absolute;top:0}.discovery-art--territory{background:var(--surface-2);border-radius:50%}@keyframes story-wave{0%,to{transform:rotate(0)}30%{transform:rotate(-5deg)}65%{transform:rotate(5deg)}}@keyframes story-arrive{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes story-hop{0%,to{transform:none}25%{transform:scale(.94,1.06)translateY(-5px)}55%{transform:scale(1.05,.95)}75%{transform:translateY(-2px)}}@keyframes story-sparkle{0%{opacity:0;transform:translateY(10px)}25%{opacity:1}to{opacity:0;transform:translateY(-16px)}}@keyframes story-halo{0%{opacity:.7;transform:scale(.6)}to{opacity:0;transform:scale(1.4)}}@media (width<=480px){.story-spotlight{flex-wrap:wrap}.story-spotlight button{width:100%}.story-reward{align-items:flex-start}}@media (prefers-reduced-motion:reduce){.story-portrait,.story-reward,.story-reward__icon,.story-sparkles,.discovery-art img,.discovery-art__symbol,.discovery-art__halo,.discovery-art__stars{animation:none!important;transform:none!important}.story-sparkles,.discovery-art__stars,.discovery-art__halo{display:none}}.report-skill-row{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;display:grid}@media (width<=600px){.report-skill-row{grid-template-columns:minmax(0,1fr) auto}.report-skill-row>:last-child{grid-column:1/-1;justify-self:start}}.park-view--hub{height:calc(100dvh - 250px);min-height:340px;max-height:820px}.park-goal{border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--amber);flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:10px;padding:10px 14px;display:flex}.park-progress{font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:6px;font-size:.82rem;font-weight:600;display:flex}.park-progress span{background:var(--surface-2);border-radius:999px;padding:4px 10px}.park-dock{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px;display:grid}.park-dock__btn{color:var(--ink);cursor:pointer;touch-action:manipulation;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:8px 4px;font:600 .78rem Instrument Sans,system-ui,sans-serif;display:flex;position:relative}.park-dock__btn:hover{border-color:var(--forest)}.park-dock__btn.is-active{background:var(--forest);color:#fbf9f4;border-color:var(--forest)}.park-dock__icon{font-size:1.35rem;line-height:1}@media (width<=520px){.park-view--hub{height:clamp(250px,100svh - 410px,460px);min-height:250px}.park-dock{padding-bottom:env(safe-area-inset-bottom)}}.task-answer{flex-wrap:wrap;justify-content:center;align-items:stretch;gap:10px;scroll-margin-block:16px;display:flex}.task-answer input{min-width:0;max-width:100%;min-height:48px}.task-answer button{min-height:48px}.placement-nudge{gap:6px;display:flex}.placement-nudge button{min-width:44px;min-height:44px;padding:8px 12px}main{padding-bottom:env(safe-area-inset-bottom)}@media (height<=500px){.task-answer{background:var(--surface);z-index:2;padding-block:8px;position:sticky;bottom:0}}.save-status{max-width:1040px;color:var(--ink-soft);flex-wrap:wrap;align-items:center;gap:8px 14px;margin:0 auto;padding:8px 18px;font-size:.78rem;display:flex}.save-status details{flex-basis:100%}.save-status summary{cursor:pointer;padding-block:6px}.save-status .btn{min-height:44px;padding:8px 12px;font-size:.8rem}.park-arrival{border-color:var(--amber);flex-wrap:wrap;align-items:flex-start;gap:12px;display:flex}.park-arrival>div{flex:1;min-width:160px}.park-arrival--compact{align-items:center;padding:12px}.park-arrival--compact>div{min-width:160px}.park-arrival--compact .btn{min-height:44px;padding:8px 12px;font-size:.8rem}.save-failure{border:1px solid var(--amber);background:var(--surface);border-radius:12px;flex-wrap:wrap;align-items:center;gap:12px;width:calc(100% - 36px);max-width:580px;margin:12px auto;padding:12px;font-size:.85rem;display:flex}.save-failure>span{flex:1;min-width:160px}.save-failure .btn{min-height:44px;padding:8px 12px}.park-view{scroll-margin-top:64px}.app--placing{padding-bottom:210px}.place-bar{z-index:20;background:var(--surface);border-top:1px solid var(--line);padding:10px 16px calc(10px + env(safe-area-inset-bottom));position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 24px -12px #123b2e59}.place-bar__inner{flex-direction:column;gap:8px;max-width:560px;margin:0 auto;display:flex}.place-bar__status{color:var(--ink-soft);font-size:.84rem}.place-bar__status.is-blocked{color:var(--crit);font-weight:600}.place-bar__tools{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.place-bar__tools .btn{white-space:nowrap;min-width:44px;min-height:44px;padding:8px 6px}.place-bar__cancel{margin-left:auto;font-size:.84rem}.place-bar__confirm{width:100%;min-height:52px;font-size:1.05rem}.park-sheet{z-index:20;overscroll-behavior:contain;background:var(--bg);border:1px solid var(--line);max-width:860px;max-height:72dvh;padding:0 14px calc(14px + env(safe-area-inset-bottom));border-radius:18px 18px 0 0;outline:none;margin:0 auto;position:fixed;bottom:0;left:0;right:0;overflow-y:auto;box-shadow:0 -10px 30px -14px #123b2e73}.park-sheet__head{z-index:1;background:var(--bg);justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex;position:sticky;top:0}.park-sheet__head .btn{min-width:44px;min-height:44px;padding:6px 10px}@supports selector(:has(a)){#root:has(.app--hub){flex-direction:column;height:100dvh;display:flex;overflow:hidden}#root:has(.app--hub)>*{flex:none}#root:has(.app--hub) main{flex-direction:column;flex:1;min-height:0;display:flex;overflow-y:auto}.app--hub{flex-direction:column;flex:1;width:100%;min-height:0;padding-block:10px;display:flex}.app--hub.app--placing{padding-bottom:186px}.app--hub>*{flex:none}.app--hub>.park-card{flex-direction:column;flex:1;min-height:220px;display:flex}.app--hub .park-view--hub{flex:1;height:auto;min-height:0;max-height:none;overflow:hidden}.app--hub .park-dock{margin-top:8px}}.task-prompt--scene{align-items:center;gap:14px;display:flex}.task-prompt--scene img{object-fit:cover;border-radius:16px;flex:none;width:96px;height:96px}.task-prompt--scene>div{min-width:0}.res--cta{font:inherit;color:var(--ink);border-color:var(--amber);touch-action:manipulation;font-size:.9rem;font-weight:600;animation:2.4s ease-in-out 3 res-call}.res--cta:hover{background:var(--surface-2)}.res__action{border-left:1px solid var(--line);color:var(--forest);margin-left:2px;padding-left:8px}@keyframes res-call{0%,to{box-shadow:0 0 #0000}50%{box-shadow:0 0 0 5px color-mix(in srgb, var(--amber) 28%, transparent)}}@media (width<=520px){.res__action span{display:none}}@media (prefers-reduced-motion:reduce){.res--cta{animation:none}}.cookie-banner{z-index:1000;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);max-width:760px;box-shadow:var(--shadow);flex-wrap:wrap;align-items:center;gap:8px 12px;margin-inline:auto;padding:10px 14px;display:flex;position:fixed;bottom:12px;left:12px;right:12px}.cookie-banner p{color:var(--ink-soft);flex:320px;margin:0;font-size:.8rem;line-height:1.35}.cookie-banner__actions{flex-wrap:wrap;gap:8px;display:flex}@media (height>=501px){body:not(.past-landing){padding-bottom:var(--cookie-banner-h,0px)}}body.past-landing .cookie-banner{width:calc(100% - 24px);box-shadow:none;margin:12px auto;position:static}body:has(.place-bar) .cookie-banner{display:none}@media (height<=500px){.cookie-banner{box-shadow:none;margin:12px;position:static}}.park-card .next-action{z-index:2;background:color-mix(in srgb, var(--surface) 93%, transparent);max-width:560px;box-shadow:var(--shadow);gap:10px;margin:0;padding:8px 12px;position:absolute;top:10px;left:10px;right:64px}.park-card .next-action .eyebrow{display:none}.park-card .next-action h1{margin:0 0 2px;font-size:.95rem}.park-card .next-action small{font-size:.76rem;line-height:1.25;display:block}.park-card .next-action .btn{min-height:44px;padding:8px 12px;font-size:.84rem}.park-card .park-goal{background:color-mix(in srgb, var(--surface) 88%, transparent);max-width:calc(100% - 20px);box-shadow:var(--shadow);border:0;border-radius:999px;gap:8px;margin:0;padding:4px;position:absolute;bottom:10px;left:10px}.park-card .park-goal small{padding-left:8px;font-size:.76rem}@supports selector(:has(a)){.app--hub{max-width:min(1500px,100%)}}@media (width<=520px){.park-card .next-action{gap:6px;padding:8px 10px}.park-card .next-action small{display:none}.park-card .next-action .btn{white-space:nowrap;padding:6px 10px;font-size:.8rem}}@media (width<=420px){.topbar{gap:6px;padding-inline:10px}.topbar .logo-word{display:none}.topbar:has(.topbar-summary) .brand{display:none}.topbar>div{min-width:0;gap:6px!important}.topbar .btn{min-width:0;padding-inline:8px!important;font-size:.72rem!important}.topbar .res{padding-inline:8px}}.topbar-summary{white-space:nowrap;padding:6px 10px;font-size:.78rem}@media (width<=720px){.topbar-summary span{display:none}}.park-card .next-action>div:first-child{overflow:hidden}.park-card .next-action h1,.park-card .next-action small{white-space:nowrap;text-overflow:ellipsis;overflow-wrap:normal;overflow:hidden}.park-panel__close{float:right;min-width:44px;min-height:44px;margin-left:8px;padding:6px 10px}.resident-story--compact{border:0;padding:0}.resident-story--compact .story-portrait{width:48px;height:48px}.resident-story--compact h3{margin:8px 0 4px;font-size:1rem}.resident-story--compact p{margin:4px 0;font-size:.86rem;line-height:1.35}.resident-story--compact .btn{padding:8px 14px;font-size:.86rem}.resident-story--compact .story-reward{margin-top:8px;padding:8px}.next-action>.next-action__buttons{flex:none}.park-card .next-action>div:first-child{min-width:0}.park-card .next-action{width:min(620px,100% - 74px);max-width:none;right:auto}.park-card .next-action .btn.ghost{background:var(--surface)}button.btn.topbar-summary{min-height:44px;padding:4px 10px;line-height:1.2}.park-progress em{font-style:normal;font-weight:500}@media (width<=900px){.park-progress em{display:none}}.grade-picker{border:0;min-width:0;margin:14px 0;padding:0}.grade-picker legend{margin-bottom:8px;padding:0}.grade-picker>div{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.grade-picker .btn{white-space:nowrap;padding:8px 2px;font-size:.9rem}.welcome{max-width:680px;padding-block:12px}.welcome .card{padding:clamp(14px,4vw,32px)}.welcome__head{align-items:center;gap:12px;display:flex}.welcome__head img{object-fit:contain;flex:none;width:72px;height:72px}.welcome__head h1{margin-top:6px;font-size:clamp(1.3rem,5.6vw,1.8rem)}.welcome p{margin:10px 0;font-size:.95rem;line-height:1.4}.welcome__start{width:100%;min-height:52px;font-size:1.05rem}.welcome__more{grid-template-columns:1fr 1fr;gap:6px;margin-top:8px;display:grid}.welcome__more .btn{padding:6px 8px;font-size:.8rem;line-height:1.2}.diag-intro{max-width:680px;padding-block:12px}.diag-intro img{aspect-ratio:16/7;object-fit:cover;width:100%;display:block}.diag-intro__body{padding:clamp(14px,4vw,28px)}.diag-intro h1{margin:8px 0;font-size:clamp(1.3rem,5.6vw,1.9rem)}.diag-intro p{max-width:44ch;margin:0 auto 10px;font-size:.95rem;line-height:1.4}.diag-intro__actions{grid-template-columns:1fr;gap:6px;display:grid}.diag-intro__actions .btn.amber{min-height:52px;font-size:1.05rem}.diag-intro__actions .btn.ghost{padding:6px 8px;font-size:.85rem}@media (width<=520px){.diag-intro img{aspect-ratio:16/4}}.res--cta{min-height:44px}.brand{min-width:40px;min-height:44px}@media (width<=480px){.topbar .btn{min-width:40px}.topbar .res--cta{padding-inline:6px}}.sound-volume{writing-mode:vertical-lr;width:44px;height:96px;accent-color:var(--forest);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);cursor:pointer;direction:rtl;border-radius:12px;flex:none;margin:0}.app.resume-wrap{padding-block:8px 0}@supports selector(:has(a)){#root:has(.app--hub) .resume-wrap{flex:none}}.resume-strip{background:var(--surface);border:1px solid var(--amber);border-radius:14px;align-items:center;gap:10px;padding:8px 12px;display:flex}.resume-strip>div{flex:1;min-width:0}.resume-strip h2{font:700 .95rem Instrument Sans,sans-serif}.resume-strip p{color:var(--ink-faint);white-space:nowrap;text-overflow:ellipsis;margin:2px 0 0;font-size:.78rem;overflow:hidden}.resume-strip .btn{flex:none;padding:8px 12px;font-size:.84rem}@media (width<=480px){.resume-strip p{display:none}}.unlock-steps{margin:10px 0;padding-left:22px;font-size:.95rem;line-height:1.4}.unlock-steps li{margin-bottom:6px}.who-plays{gap:8px;margin-top:12px;display:grid}.who-plays .btn{justify-content:space-between;align-items:center;gap:10px;min-height:56px;display:flex}.who-plays small{color:var(--ink-soft);font-weight:500}.child-form{margin-top:10px}.child-form label{gap:4px;font-weight:600;display:grid}.child-form input{font:inherit;border:1px solid var(--line);background:var(--surface-2);min-height:48px;color:var(--ink);border-radius:12px;width:100%;padding:8px 12px;font-size:1rem}.family-list{gap:8px;margin:0 0 10px;padding:0;list-style:none;display:grid}.family-list>li{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px;padding:8px 0;display:flex}.family-list>li>div{flex:1;min-width:130px}.family-list small{color:var(--ink-faint);display:block}.daily{background:color-mix(in srgb, var(--line) 70%, transparent);pointer-events:none;height:3px;position:absolute;bottom:-1px;left:0;right:0}.daily i{background:var(--amber);border-radius:0 3px 3px 0;height:100%;transition:width .5s cubic-bezier(.2,.8,.2,1);display:block}.daily.is-full i{background:var(--good)}.daily__label{white-space:nowrap;color:var(--ink-soft);background:var(--surface);border:1px solid var(--line);font-variant-numeric:tabular-nums;border-top:none;border-radius:0 0 8px 8px;padding:3px 8px 4px;font:600 .68rem/1 Instrument Sans,system-ui,sans-serif;position:absolute;top:3px;left:50%;transform:translate(-50%)}.daily.is-full .daily__label{color:var(--good)}@media (prefers-reduced-motion:reduce){.daily i{transition:none}}.avatar{cursor:pointer;color:#fbf9f4;background:var(--forest);border:2px solid var(--surface);width:40px;min-width:40px;height:40px;box-shadow:0 0 0 1px var(--line);border-radius:50%;flex:none;place-items:center;font:700 1rem Fraunces,serif;display:grid}.avatar:hover,.avatar.is-on{box-shadow:0 0 0 2px var(--amber)}.avatar span{font-size:1.1rem}.setup-advice{border:1px solid var(--line);background:var(--surface-2);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin:14px 0 4px;padding:10px 12px;animation:.35s ease-out both story-arrive;display:flex}.setup-advice span{flex:220px;font-weight:600}.setup-advice small{color:var(--ink-soft);margin-top:2px;font-weight:500;display:block}.setup-advice--up{border-color:color-mix(in srgb, var(--good) 45%, transparent)}.setup-advice--down{border-color:color-mix(in srgb, var(--amber) 45%, transparent)}.setup-advice .btn{min-height:44px}.arena-seats{flex-wrap:wrap;align-items:center;gap:6px;margin:-4px 0 14px;font-size:1.2rem;display:flex}.arena-seat{background:var(--surface-2);border:1px solid var(--line);width:32px;height:32px;color:var(--ink-faint);border-radius:50%;place-items:center;font-size:1rem;display:grid}.arena-seat.is-on{background:color-mix(in srgb, var(--amber) 22%, var(--surface));border-color:var(--amber);animation:.35s ease-out both pop}.arena-seats small{color:var(--ink-soft);flex-basis:100%;font-size:.78rem}.sub-history{border-collapse:collapse;width:100%;margin-top:8px;font-size:.86rem}.sub-history th,.sub-history td{text-align:left;border-top:1px solid var(--line);vertical-align:top;padding:6px 8px 6px 0}.sub-history th{color:var(--ink-faint);border-top:none;font-weight:600}@supports selector(:has(a)){#root:has(.daily) main{padding-top:16px}}.plans__grid{grid-template-columns:1fr 1.25fr;gap:14px;display:grid}.plans__card{background:var(--surface);border:1px solid var(--line);border-radius:16px;min-width:0;padding:18px}.plans__card--full{border-color:var(--forest)}.plans__card h3{margin:0 0 4px;font-family:Fraunces,serif;font-size:1.15rem}.plans__price{margin-bottom:8px;font-size:1.1rem;font-weight:700}.plans__price small{color:var(--ink-soft);font-weight:400}.plans__card ul{color:var(--ink-soft);margin:0;padding-left:18px;font-size:.9rem}.plans__choose{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.plans__choose .btn{flex:140px;min-height:44px;padding:10px 12px}.plans__form{background:var(--surface);border:1px solid var(--line);border-radius:16px;gap:10px;margin-top:14px;padding:16px;display:grid}.plans__form p{color:var(--ink-soft);margin:0;font-size:.92rem}.plans__form input[type=email]{font:inherit;border:1px solid var(--line);background:var(--surface);min-height:44px;color:var(--ink);box-sizing:border-box;border-radius:10px;width:100%;padding:10px 12px;font-size:16px}.plans__form label{color:var(--ink-soft);align-items:flex-start;gap:10px;font-size:.85rem;display:flex}.plans__form input[type=checkbox]{flex:none;width:20px;height:20px;margin:1px 0 0}.plans__error{color:#b3261e}.plans__done{color:var(--forest);margin:14px 0 0;font-weight:600}.plans__terms{color:var(--ink-faint);margin:12px 0 0;font-size:.8rem}@media (width<=640px){.plans__grid{grid-template-columns:1fr}}.ld{max-width:1040px;margin:0 auto;padding-inline:18px}.ld-head{justify-content:space-between;align-items:center;padding-block:18px;display:flex}.ld-h1{letter-spacing:-.02em;margin:14px 0 0;font-family:Fraunces,serif;font-size:clamp(2.1rem,5vw,3.4rem);font-weight:900;line-height:1.05}.ld-h1 em{color:var(--forest)}.ld-h2{text-align:center;margin:0 0 8px;font-family:Fraunces,serif;font-size:clamp(1.5rem,3vw,2rem);line-height:1.12}.ld-h2--left{text-align:left;margin-top:10px}.ld-sub{text-align:center;color:var(--ink-soft);max-width:56ch;margin:0 auto 22px}.ld-lead{color:var(--ink-soft);max-width:46ch;margin-top:16px;font-size:clamp(1rem,2vw,1.18rem)}.ld-actions{flex-wrap:wrap;gap:12px;margin-top:26px;display:flex}.ld-cta{padding:15px 26px;font-size:1.05rem}.ld-note{margin:12px 0 0;font-size:.84rem}.ld-link{color:var(--sky);cursor:pointer;font:inherit;text-underline-offset:3px;background:0 0;border:none;min-height:44px;padding:12px 4px;font-size:.88rem;text-decoration:underline}.ld-section{padding-block:clamp(34px,6vw,64px)}.ld-hero{grid-template-columns:1.05fr 1fr;align-items:center;gap:32px;padding-block:clamp(16px,4vw,44px);display:grid}.ld-hero__art{position:relative}.ld-hero__img{width:100%;height:auto;box-shadow:var(--shadow);border:1px solid var(--line);border-radius:22px;animation:.8s ease-out both ld-rise;display:block}.ld-float{filter:drop-shadow(0 8px 12px #123b2e40);height:auto;animation:3.6s ease-in-out infinite ld-bob;position:absolute}.ld-float--a{width:26%;bottom:-8%;left:-6%}.ld-float--b{width:19%;animation-duration:4.2s;animation-delay:-1.6s;top:-9%;right:-3%}.ld-demo{position:absolute;bottom:-7%;right:6%}.ld-demo__card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);font-variant-numeric:lining-nums;color:var(--ink);border-radius:16px;align-items:center;gap:10px;padding:12px 16px;font:800 clamp(1.1rem,2.4vw,1.5rem) Fraunces,serif;animation:.35s ease-out both ld-pop;display:flex}.ld-demo__a{text-align:center;background:var(--surface-2);min-width:2.2ch;color:var(--ink-faint);border-radius:10px;padding:2px 8px;transition:background .25s,color .25s}.ld-demo__a.is-on{background:var(--good);color:#fff}.ld-demo__reward{color:#2b1c06;background:var(--amber);border-radius:999px;padding:4px 10px;font:800 1rem Fraunces,serif;animation:1.6s ease-out both ld-reward;position:absolute;top:-18px;right:-6px}.ld-stats{grid-template-columns:repeat(4,1fr);gap:12px;margin-top:clamp(30px,5vw,50px);display:grid}.ld-stats>div{background:var(--surface);border:1px solid var(--line);text-align:center;border-radius:16px;padding:16px}.ld-stats b{color:var(--forest);font-variant-numeric:lining-nums;font:900 clamp(1.7rem,4vw,2.3rem) Fraunces,serif;display:block}.ld-stats>div>span{color:var(--ink-soft);font-size:.84rem}.ld-steps{grid-template-columns:repeat(3,1fr);gap:16px;margin:0;padding:0;list-style:none;display:grid;position:relative}.ld-step{background:var(--surface);border:1px solid var(--line);text-align:center;border-radius:20px;padding:18px 18px 20px;position:relative}.ld-step h3{margin:10px 0 6px;font-family:Fraunces,serif;font-size:1.15rem}.ld-step p{color:var(--ink-soft);margin:0;font-size:.92rem}.ld-step__n{background:var(--amber);color:#2b1c06;border-radius:50%;place-items:center;width:30px;height:30px;font:800 .95rem Fraunces,serif;display:grid;position:absolute;top:12px;left:14px}.ld-step__pic{place-items:center;height:140px;display:grid}.ld-step__pic img{width:auto;max-height:140px;animation:4s ease-in-out infinite ld-bob}.ld-step__pic img.ld-step__wide{object-fit:cover;border-radius:14px;width:100%;max-height:140px;animation:none}.ld-step__pic--task span{font-variant-numeric:lining-nums;background:var(--bg);border:1px solid var(--line);border-radius:14px;padding:14px 18px;font:800 1.6rem Fraunces,serif}.ld-step__pic--task b{color:var(--good)}.ld-people{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:18px;display:grid}.ld-person{background:var(--surface);border:1px solid var(--line);text-align:center;border-radius:20px;flex-direction:column;align-items:center;gap:8px;margin:0;padding:18px;transition:transform .25s,box-shadow .25s;display:flex}.ld-person:hover{box-shadow:var(--shadow);transform:translateY(-4px)}.ld-person img{width:110px;height:auto}.ld-person:hover img{animation:.9s ease-in-out story-wave}.ld-person q{color:var(--ink-soft);margin-top:6px;font-size:.9rem;font-style:italic;display:block}.ld-creatures{flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;margin-top:20px;display:flex}.ld-creatures p{text-align:center;flex-basis:100%;margin:4px 0 0;font-size:.86rem}.ld-creature{flex-direction:column;align-items:center;gap:2px;display:flex}.ld-creature img{object-fit:contain;width:64px;height:64px;animation:3.4s ease-in-out infinite ld-bob}.ld-creature:nth-child(2) img{animation-delay:-1s}.ld-creature:nth-child(3) img{animation-delay:-2s}.ld-creature small{color:var(--ink-faint)}.ld-tabs{flex-wrap:wrap;justify-content:center;gap:6px;margin:14px 0 18px;display:flex}.ld-tabs button{border:1px solid var(--line);background:var(--surface);min-height:44px;color:var(--ink);cursor:pointer;border-radius:999px;padding:8px 16px;font:600 .95rem Instrument Sans,system-ui,sans-serif}.ld-tabs button.is-on{background:var(--forest);border-color:var(--forest);color:#fbf9f4}.ld-skills{flex-wrap:wrap;justify-content:center;gap:8px;max-width:720px;margin:0 auto;padding:0;list-style:none;display:flex}.ld-skills li{background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--amber);border-radius:12px;padding:10px 14px;font-weight:600;animation:.35s ease-out both ld-pop}.ld-trainers{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:22px;display:flex}.ld-trainer{color:var(--ink-soft);background:var(--surface-2);border-radius:999px;padding:6px 12px;font-size:.86rem}.ld-parent{grid-template-columns:1fr 1.05fr;align-items:center;gap:32px;display:grid}.ld-report{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:20px;padding:20px}.ld-bar{margin-top:14px}.ld-bar__top{justify-content:space-between;gap:10px;font-size:.92rem;font-weight:600;display:flex}.ld-bar__top small{color:var(--ink-faint);font-weight:500}.ld-bar__track{background:var(--surface-2);border-radius:999px;height:10px;margin-top:6px;overflow:hidden}.ld-bar__track i{border-radius:inherit;background:linear-gradient(90deg, var(--forest), var(--good));width:0;height:100%;transition:width 1.1s cubic-bezier(.2,.8,.2,1) .2s;display:block}.ld-report.is-in .ld-bar__track i{width:var(--v)}.ld-report__next{background:var(--surface-2);border-radius:12px;margin:16px 0 0;padding:10px 12px;font-size:.9rem;font-weight:600}.ld-checks{flex-direction:column;gap:10px;margin:16px 0 22px;padding:0;list-style:none;display:flex}.ld-checks li{color:var(--ink-soft);padding-left:26px;position:relative}.ld-checks li:before{content:"✓";color:var(--good);font-weight:700;position:absolute;left:0}.ld-faq{max-width:760px;margin:0 auto}.ld-faq details{background:var(--surface);border:1px solid var(--line);border-radius:14px;margin-top:10px;padding:0 16px}.ld-faq summary{cursor:pointer;min-height:44px;padding:14px 0;font-weight:700;list-style-position:outside}.ld-faq details p{color:var(--ink-soft);margin:0 0 14px}.ld-final{background:var(--forest-deep);color:#f4f1e9;border-radius:24px;grid-template-columns:auto 1fr auto;align-items:center;gap:20px;margin-block:20px 34px;padding:22px 26px;display:grid}.ld-final h2{color:#fbf9f4;margin:0 0 4px;font-family:Fraunces,serif;font-size:clamp(1.3rem,3vw,1.7rem)}.ld-final p{color:#d9e3dc;margin:0}.ld-final__pic{width:96px;height:auto;animation:3.8s ease-in-out infinite ld-bob}.ld-foot{border-top:1px solid var(--line);text-align:center;color:var(--ink-faint);padding-block:24px;font-size:.85rem}.ld-foot nav{flex-wrap:wrap;justify-content:center;gap:18px;margin-top:10px;display:flex}.ld-foot a,.ld-foot button{color:var(--ink-soft);text-underline-offset:3px;font:inherit;cursor:pointer;background:0 0;border:none;padding:10px 0;text-decoration:underline;display:inline-block}[data-reveal]{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(18px)}[data-reveal].is-in{opacity:1;transform:none}.ld-steps .ld-step:nth-child(2){transition-delay:.12s}.ld-steps .ld-step:nth-child(3){transition-delay:.24s}@keyframes ld-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes ld-rise{0%{opacity:0;transform:translateY(14px)scale(.98)}to{opacity:1;transform:none}}@keyframes ld-pop{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:none}}@keyframes ld-reward{0%{opacity:0;transform:translateY(8px)scale(.8)}20%{opacity:1;transform:translateY(0)scale(1.08)}75%{opacity:1;transform:translateY(-10px)}to{opacity:0;transform:translateY(-22px)}}@media (width<=760px){.ld-hero,.ld-parent{grid-template-columns:1fr}.ld-hero__art{margin:8px 6px 30px}.ld-stats{grid-template-columns:repeat(2,1fr)}.ld-steps,.ld-people{grid-template-columns:1fr}.ld-final{text-align:center;grid-template-columns:1fr;justify-items:center}.ld-actions .ld-cta{flex:100%}}@media (prefers-reduced-motion:reduce){.ld *,.ld :before{transition:none!important;animation:none!important}[data-reveal]{opacity:1;transform:none}.ld-bar__track i{width:var(--v)}}
