@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/fredoka-hebrew-wght-normal-DdnsCkLr.woff2)format("woff2-variations");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/fredoka-latin-ext-wght-normal-CYrqKuxd.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/fredoka-latin-wght-normal-DM6njrJ3.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-cyrillic-ext-wght-normal-D4X5GqEv.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-cyrillic-wght-normal-CY6AOgYE.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-vietnamese-wght-normal-U01xdrZh.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-latin-ext-wght-normal-CXYtwYOx.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-latin-wght-normal-BzFMHfZw.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--ink:#2b2a33;--ink-soft:#6b6476;--paper:#fffaf1;--paper-2:#f4ebda;--line:#ecdfc6;--gold:#ffc83d;--gold-dark:#d99a00;--leaf:#3fae6a;--berry:#f0645c;--sky:#4aa8ff;--accent:#ef6f4c;--accent-dark:#c4502f;--accent-strong:#c9472a;--accent-strong-dark:#9c3720;--accent-text:#b03d22;--accent-soft:#ffe4d8;--radius:22px;--radius-sm:14px;--edge:4px;--shadow:0 12px 30px #4632142e;--display:"Fredoka Variable", "Nunito Variable", system-ui, sans-serif;--body:"Nunito Variable", system-ui, -apple-system, "Segoe UI", sans-serif;--spring:cubic-bezier(.34, 1.56, .64, 1);font-family:var(--body);color:var(--ink)}body[data-edition=work]{--ink:#1d2733;--ink-soft:#5d6b78;--paper:#fff;--paper-2:#f1f4f7;--line:#e2e7ec;--accent:#178a8f;--accent-dark:#0f6468;--accent-strong:#147478;--accent-strong-dark:#0d5558;--accent-text:#0f6468;--accent-soft:#dcf1ef;--radius:16px;--radius-sm:10px;--edge:2px;--shadow:0 10px 28px #14233229;--display:"Nunito Variable", system-ui, sans-serif;--spring:cubic-bezier(.2, .8, .2, 1)}*{box-sizing:border-box}html,body{overscroll-behavior:none;-webkit-tap-highlight-color:transparent;background:#9fd6f7;height:100%;margin:0;overflow:hidden}#hud,.board-overlay,.screen-view,.report-overlay,#scope{--focus:#ffd23f}:focus-visible{outline:3px solid var(--focus,var(--accent-strong));outline-offset:2px}#world{touch-action:none;outline:none;width:100%;height:100%;display:block;position:fixed;inset:0}#labels{pointer-events:none;position:fixed;inset:0}#labels>*{will-change:transform}[hidden]{display:none!important}button{font:inherit;color:inherit;cursor:pointer}svg.icon{flex:none}button svg.icon{pointer-events:none}kbd{background:var(--paper-2);min-width:1.7em;height:1.7em;box-shadow:0 2px 0 var(--line);font:700 .75em/1 var(--display);color:var(--ink);border-radius:6px;place-items:center;padding:0 .4em;display:inline-grid}.muted{color:var(--ink-soft)}.chunky,.primary{border-radius:var(--radius-sm);background:var(--accent-strong);color:#fff;height:48px;font:600 17px/1 var(--display);box-shadow:0 var(--edge) 0 var(--accent-strong-dark), 0 8px 18px #0000001f;border:0;justify-content:center;align-items:center;gap:8px;padding:0 22px;text-decoration:none;transition:transform .12s,box-shadow .12s,filter .15s;display:inline-flex}.chunky:hover,.primary:hover{filter:brightness(1.05);transform:translateY(-1px)}.chunky:active,.primary:active{transform:translateY(var(--edge));box-shadow:0 0 0 var(--accent-dark)}.bubble{background:var(--paper);width:48px;height:48px;color:var(--ink);box-shadow:0 var(--edge) 0 var(--line), var(--shadow);transition:transform .2s var(--spring), background .2s, color .2s;border:0;border-radius:50%;place-items:center;padding:0;display:grid;position:relative}.bubble:hover{transform:translateY(-2px)scale(1.05)}.bubble:active{transform:translateY(2px)scale(.96)}.bubble[aria-expanded=true],.bubble[aria-pressed=true]{background:var(--accent-strong);color:#fff;box-shadow:0 var(--edge) 0 var(--accent-strong-dark), var(--shadow)}.bubble.big{width:58px;height:58px}.bubble .text{background:var(--ink);color:#fff;font:600 13px/1.2 var(--display);white-space:nowrap;opacity:0;transition:opacity .15s, transform .2s var(--spring);pointer-events:none;border-radius:10px;padding:5px 10px;position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%,-4px)scale(.9)}.bubble:hover .text,.bubble:focus-visible .text{opacity:1;transform:translate(-50%)scale(1)}.touch .bubble .text{display:none}.panel{border-radius:var(--radius);background:var(--paper);color:var(--ink);box-shadow:0 0 0 2px var(--line), var(--shadow);animation:panel-in .32s var(--spring);padding:16px;font-size:15px}.panel h2{font:600 18px/1.2 var(--display);color:var(--accent);margin:4px 0 10px}.panel h2~h2,.panel div>h2{margin-top:18px}.host-trip{gap:8px;display:flex}.host-trip select{border-radius:var(--radius-sm);background:var(--paper-2);min-width:0;color:var(--ink);font:600 14px var(--display);box-shadow:0 3px 0 var(--line);border:0;flex:1;padding:0 10px}.place-grid button,.choice-grid button,#people-list button,#lessons-list button,.host-grid button,.panel-actions button:not(.done),#phrase-menu button,.generated button,.tabs button{border-radius:var(--radius-sm);background:var(--paper-2);min-height:38px;color:var(--ink);font:600 14px/1.15 var(--display);box-shadow:0 3px 0 var(--line);transition:transform .15s var(--spring), background .15s;border:0;justify-content:center;align-items:center;gap:6px;padding:0 12px;display:inline-flex}.place-grid button:hover,.choice-grid button:hover,#people-list button:hover,#lessons-list button:hover,.host-grid button:hover,.panel-actions button:hover,#phrase-menu button:hover,.generated button:hover,.tabs button:hover{transform:translateY(-2px)}.place-grid button:active,.choice-grid button:active,#people-list button:active,#lessons-list button:active,.host-grid button:active,#phrase-menu button:active,.generated button:active{box-shadow:0 1px 0 var(--line);transform:translateY(2px)}.choice-grid button[aria-checked=true],.host-grid button[aria-pressed=true],.tabs button[aria-selected=true]{background:var(--accent-strong);color:#fff;box-shadow:0 3px 0 var(--accent-strong-dark)}.choice-grid.pictures{grid-template-columns:repeat(3,1fr)}.choice-grid.pictures button{aspect-ratio:1;padding:4px}.choice-grid.pictures button[aria-checked=true]{background:var(--accent-soft);box-shadow:0 3px 0 var(--accent-strong), inset 0 0 0 3px var(--accent-strong)}.choice-grid.pictures img{object-fit:contain;width:100%;height:100%;animation:.25s fade}.screen{z-index:10;place-items:center;padding:16px;display:grid;position:fixed;inset:0}#loading{background:linear-gradient(#9fd6f7 0%,#d8f0ff 55%,#fff1d2 100%)}.arriving #loading,.arriving #join{visibility:hidden}#loading .loader,#loading-text{animation:.4s .9s both fade}.loading-box{justify-items:center;gap:18px;display:grid}#loading-text{font:600 20px var(--display);color:#2f4a63;margin:0}.loader{align-items:flex-end;gap:10px;height:34px;display:flex}.loader span{background:var(--berry);border-radius:50%;width:14px;height:14px;animation:1.1s ease-in-out infinite hop}.intro{justify-items:center;gap:10px;display:grid}.intro .logo{filter:drop-shadow(0 14px 22px #1e466e38);width:112px;height:112px;animation:intro-pop .9s var(--spring) both, intro-float 4s ease-in-out 1s infinite}.intro-word{color:#1b1f3b;letter-spacing:-.02em;margin:0;font:600 clamp(44px,9vw,72px)/1 Fredoka Variable,Nunito Variable,system-ui,sans-serif;display:flex}.intro-word span{animation:intro-drop .7s var(--spring) calc(.35s + var(--i) * 60ms) both, intro-wave 4s ease-in-out calc(2s + var(--i) * 70ms) infinite;display:inline-block}.intro-word .gap{width:.28em}@keyframes intro-pop{0%{opacity:0;transform:scale(.2)rotate(-25deg)}to{opacity:1;transform:none}}@keyframes intro-float{50%{transform:translateY(-8px)rotate(-3deg)}}@keyframes intro-drop{0%{opacity:0;transform:translateY(-60px)scale(.6)}to{opacity:1;transform:none}}@keyframes intro-wave{0%,12%,to{transform:none}6%{transform:translateY(-10px)}}@media (prefers-reduced-motion:reduce){.intro .logo,.intro-word span{animation:none}}.loader span:nth-of-type(2){background:var(--gold);animation-delay:.15s}.loader span:nth-of-type(3){background:var(--leaf);animation-delay:.3s}.card{background:var(--paper);width:min(400px,100%);max-height:calc(100vh - 32px);color:var(--ink);box-shadow:0 0 0 3px var(--line), 0 30px 70px #1e283c4d;animation:rise .5s var(--spring);border-radius:28px;gap:10px;padding:28px;display:grid;overflow-y:auto}.brand{align-items:center;gap:12px;display:flex}.brand.small{font:600 15px var(--display);color:var(--accent-text);gap:8px}.logo{flex:none;width:40px;height:40px}.brand.small .logo{width:28px;height:28px}.join-space{font:600 26px/1.15 var(--display);margin:0}.card .muted{color:var(--ink-soft);margin:0 0 6px;line-height:1.45}.card label,.card .label{font:600 14px var(--display);color:var(--ink-soft);margin-top:6px}.card input{border-radius:var(--radius-sm);background:var(--paper-2);height:48px;box-shadow:inset 0 2px 0 var(--line);color:var(--ink);font:600 18px var(--display);border:0;padding:0 14px}.card input:focus{outline:3px solid var(--accent-soft);background:#fff}.card .primary{margin-top:10px}.generated{align-items:center;gap:8px;display:flex}.generated output{font:600 22px var(--display);color:var(--ink);flex:1}.generated button svg{transition:transform .4s var(--spring)}.generated button:active svg{transform:rotate(180deg)}.link-button{color:var(--accent-text);font:600 15px var(--display);background:0 0;border:0;justify-self:start;align-items:center;gap:6px;padding:4px 0;display:inline-flex}.link-button:hover svg{animation:.5s wiggle}.switch-edition{color:var(--ink-soft);justify-self:center;margin-top:2px;font-size:13px}.button-link{margin-top:6px}#problem .card p{margin:4px 0 8px;font-size:17px;line-height:1.45}.species-grid{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.species{border-radius:var(--radius-sm);background:var(--paper-2);box-shadow:0 3px 0 var(--line);color:var(--ink);transition:transform .2s var(--spring), background .2s;border:0;justify-items:center;gap:2px;padding:8px 0 6px;display:grid}.species img,.species span{width:54px;height:54px}.species span{font:600 24px var(--display);place-items:center;display:grid}.species small{font:600 12px var(--display);color:var(--ink-soft)}.species:hover{transform:translateY(-3px)rotate(-2deg)}.species:hover img{animation:hop .6s var(--spring)}.species[aria-checked=true]{background:var(--accent-soft);box-shadow:0 0 0 3px var(--accent), 0 3px 0 3px var(--accent-dark);transform:translateY(-2px)}.species[aria-checked=true] img{animation:hop .6s var(--spring)}.topbar{pointer-events:none;z-index:3;justify-content:space-between;align-items:flex-start;gap:8px;display:flex;position:fixed;top:14px;left:16px;right:16px}.topbar>*{pointer-events:auto}.status-group{align-items:center;gap:10px;display:flex}.actions{gap:10px;display:flex}.coin{background:var(--paper);height:48px;box-shadow:0 var(--edge) 0 var(--line), var(--shadow);color:var(--ink);transition:transform .2s var(--spring);border:0;border-radius:26px;align-items:center;gap:8px;padding:0 16px 0 5px;display:flex}.coin:hover{transform:translateY(-2px)}.coin-face{background:radial-gradient(circle at 35% 30%, #ffe28a, var(--gold) 60%, var(--gold-dark));color:#fff;border-radius:50%;place-items:center;width:38px;height:38px;display:grid;box-shadow:inset 0 -3px #0000001f,0 0 0 3px #fff3c4}.coin-count{font:700 20px/1 var(--display)}.coin-count small{color:var(--ink-soft);margin-left:2px;font-size:14px}.coin.pop{animation:pop .6s var(--spring)}.coin.pop .coin-face{animation:.8s ease-out spin-coin}.coin[aria-expanded=true]{box-shadow:0 0 0 3px var(--gold), 0 var(--edge) 0 var(--gold-dark), var(--shadow)}.status{height:32px;font:600 13px var(--display);color:var(--ink-soft);background:#fffaf1d9;border-radius:16px;align-items:center;gap:7px;padding:0 12px;display:flex}.dot{background:#f5a524;border-radius:50%;flex:none;width:9px;height:9px}.dot.online{background:var(--leaf);animation:2.4s infinite ping;box-shadow:0 0 #3fae6a99}.dot.offline{background:var(--berry)}.bubble.host{color:var(--gold-dark)}.bubble.host[aria-expanded=true]{background:var(--gold);color:var(--ink);box-shadow:0 var(--edge) 0 var(--gold-dark), var(--shadow)}#voice-toggle[aria-pressed=true]{background:var(--leaf);color:#fff;box-shadow:0 var(--edge) 0 #2c8050, var(--shadow)}#voice-toggle.muted{background:var(--berry);box-shadow:0 var(--edge) 0 #c0443d, var(--shadow)}#leave-panel{z-index:6;transform-origin:0 0;width:280px;max-width:calc(100vw - 32px);position:fixed;top:76px;left:16px}#leave-panel p{margin:0 0 14px}.leave-choices{gap:8px;display:flex}.leave-choices>*{min-height:44px;font:700 15px var(--display);transition:transform .15s var(--spring), background .15s;border:0;border-radius:14px;flex:1;justify-content:center;align-items:center;gap:6px;text-decoration:none;display:inline-flex}#leave-stay{background:var(--paper-2);color:var(--ink)}.leave-go{background:var(--accent-strong);color:#fff;box-shadow:0 3px 0 var(--accent-strong-dark)}.leave-choices>:hover{transform:translateY(-1px)}#candy-hunt{z-index:4;transform-origin:0 0;width:236px;max-width:calc(100vw - 32px);padding:12px 12px 10px;font-size:14px;position:fixed;top:76px;left:16px}#candy-hunt h2{color:var(--gold);align-items:center;gap:6px;margin:0 0 8px;font-size:15px;display:flex}#candy-board{gap:4px;margin:0;padding:0;list-style:none;display:grid}#candy-board li{animation:rise .3s var(--spring) both;border-radius:10px;align-items:center;gap:8px;padding:4px 8px 4px 4px;display:flex}#candy-board li.me{background:color-mix(in srgb, var(--accent) 30%, transparent)}#candy-board .place{width:24px;height:24px;font:700 12px var(--display);background:#ffffff1c;border-radius:50%;flex:none;place-items:center;display:grid}#candy-board li:first-child .place{background:var(--gold);color:#2b2a33}#candy-board .who{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}#candy-board b{font:800 15px var(--display);color:#ffb35c}#candy-badges{width:100%;color:var(--ink);font:600 13px var(--display);cursor:pointer;background:#ffffff12;border:0;border-radius:10px;align-items:center;gap:6px;margin-top:8px;padding:6px 8px;display:flex}#candy-badges span{text-align:left;flex:1}#candy-badges[aria-expanded=true] svg:last-child{transform:rotate(180deg)}#candy-badge-list{gap:4px;max-height:40vh;margin:6px 0 0;padding:0;list-style:none;display:grid;overflow-y:auto}#candy-badge-list li{color:var(--ink-soft);border-radius:10px;align-items:flex-start;gap:8px;padding:6px;font-size:12px;line-height:1.35;display:flex}#candy-badge-list li b{color:var(--ink);font-size:13px;display:block}#candy-badge-list li svg{flex:none;margin-top:2px}#candy-badge-list li.got{background:color-mix(in srgb, var(--gold) 16%, transparent)}#candy-badge-list li.got svg{color:var(--gold)}@media (max-width:640px){#candy-hunt{width:184px;padding:8px 8px 6px;font-size:13px;top:112px}#candy-hunt h2{margin-bottom:4px;font-size:13px}#candy-board li{padding:2px 6px 2px 2px}#candy-board li:nth-child(n+4):not(.me){display:none}#candy-board .place{width:20px;height:20px}#candy-badges{margin-top:4px;padding:4px 6px;font-size:12px}}#badge-toast{z-index:30;color:#fff;box-shadow:0 0 0 1px #ffffff1a, 0 0 30px color-mix(in srgb, var(--gold) 40%, transparent), var(--shadow);pointer-events:none;background:#111924db;border-radius:20px;align-items:center;gap:12px;padding:12px 18px 12px 12px;display:flex;position:fixed;top:74px;left:50%;transform:translate(-50%)}#badge-toast.show{animation:badge-in 4.2s var(--spring) both}#badge-toast .badge-medal{background:radial-gradient(circle at 35% 30%, #fff3b0, var(--gold) 55%, var(--gold-dark));color:#6b4500;width:48px;height:48px;box-shadow:0 3px 0 var(--gold-dark);animation:badge-spin .9s .15s var(--spring) both;border-radius:50%;place-items:center;display:grid}#badge-toast small{color:var(--gold);font:700 11px var(--display);letter-spacing:.08em;text-transform:uppercase;display:block}#badge-toast strong{font:800 17px var(--display);display:block}#badge-toast span:last-child{color:#c9d2dc;font-size:13px;display:block}@keyframes badge-in{0%{opacity:0;transform:translate(-50%,-16px)scale(.7)}10%,88%{opacity:1;transform:translate(-50%)scale(1)}to{opacity:0;transform:translate(-50%,-10px)scale(.96)}}@keyframes badge-spin{0%{transform:rotateY(-540deg)scale(.4)}}.calm #badge-toast.show,.calm #badge-toast .badge-medal{animation:none}#host-panel{z-index:5;transform-origin:100% 0;width:320px;max-width:calc(100vw - 32px);max-height:calc(100vh - 170px);position:fixed;top:76px;right:16px;overflow-y:auto}.place-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.place-grid .place{display:grid;position:relative}.place-grid .place>button:first-child{padding-right:34px}.place-grid .link,#lessons-list .link{width:30px;min-height:30px;box-shadow:none;color:var(--ink-soft);background:0 0;border-radius:50%;padding:0}.place-grid .link{position:absolute;top:50%;right:4px;transform:translateY(-50%)}.place-grid .link:hover,#lessons-list .link:hover{color:var(--accent);background:var(--paper-2)}.place-grid .link:hover,.place-grid .link:active{transform:translateY(-50%)}.wide-quiet{border-radius:var(--radius-sm);width:100%;min-height:38px;color:var(--ink-soft);font:600 14px var(--display);background:0 0;border:1px dashed #ffffff40;justify-content:center;align-items:center;gap:6px;margin-top:8px;display:flex}.wide-quiet:hover{color:var(--ink);border-color:var(--accent)}#people-list,#lessons-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}#people-list li,#lessons-list li{align-items:center;gap:8px;min-height:40px;display:flex}#people-list .who,#lessons-list .who{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:700;overflow:hidden}#lessons-list .who small{text-overflow:ellipsis;color:var(--ink-soft);font-size:12px;font-weight:600;display:block;overflow:hidden}#lessons-list li>button{flex:none}#lessons-list li>button:not(.link){min-width:64px}#people-list .who svg{vertical-align:-2px;color:var(--ink-soft)}#people-list .dot{background:var(--color);width:12px;height:12px;animation:none}#people-list button{min-height:32px;padding:0 10px;font-size:13px}#app-map .muted{margin:4px 0;font-size:14px}#lessons-list .mark{background:var(--paper-2);width:28px;height:28px;font:700 13px var(--display);border-radius:50%;flex:none;place-items:center;display:grid}#lessons-list .done .mark{background:var(--gold);color:var(--ink)}#lessons-list .done .who{color:var(--ink-soft);text-decoration:line-through;-webkit-text-decoration-color:var(--line);text-decoration-color:var(--line)}.host-grid{gap:8px;display:grid}.host-grid button{justify-content:flex-start;min-height:42px}#host-panel .muted{margin:12px 0 0;font-size:13px}.options-pane{min-height:0;padding:2px 4px 2px 2px;overflow-y:auto}.options-pane h2{color:var(--ink-soft);margin:12px 0 8px;font-size:14px}.field{font:600 14px var(--display);color:var(--ink-soft);gap:6px;display:grid}#avatar-name{border-radius:var(--radius-sm);background:var(--paper-2);height:40px;color:var(--ink);font:600 17px var(--display);border:0;padding:0 12px}#avatar-name:focus{outline:3px solid var(--accent-soft)}#app-me .generated output{color:#fff;font-size:18px}.tabs{gap:6px;padding:2px 2px 6px;display:flex;overflow-x:auto}.tabs button{border-radius:17px;flex:none;min-height:34px}.choice-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.panel-actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:4px;display:grid}.panel-actions .done{height:42px;font-size:16px}.swatches{flex-wrap:wrap;gap:7px;padding:6px 4px;display:flex}.swatch{width:32px;height:32px;box-shadow:inset 0 -3px 0 #00000026, 0 0 0 2px #fff, 0 0 0 3px var(--line);transition:transform .2s var(--spring);border:0;border-radius:50%}.swatch:hover{transform:scale(1.12)}.swatch[aria-checked=true]{box-shadow:inset 0 -3px 0 #00000026, 0 0 0 3px #fff, 0 0 0 6px var(--accent);transform:scale(1.12)}input[type=range]{appearance:none;background:0 0;width:100%;height:28px}input[type=range]::-webkit-slider-runnable-track{background:var(--paper-2);height:10px;box-shadow:inset 0 2px 0 var(--line);border-radius:5px}input[type=range]::-moz-range-track{background:var(--paper-2);border-radius:5px;height:10px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--accent);width:26px;height:26px;box-shadow:0 0 0 4px #fff, 0 3px 0 4px var(--line);border-radius:50%;margin-top:-8px}input[type=range]::-moz-range-thumb{background:var(--accent);border:4px solid #fff;border-radius:50%;width:22px;height:22px}.sign{z-index:4;transform-origin:top;animation:drop-in .6s var(--spring), swing 3s ease-in-out .6s infinite;pointer-events:none;justify-items:center;display:grid;position:fixed;top:0;left:50%}.sign:before{content:"";border:3px solid #8a6a45;border-bottom:0;border-radius:4px 4px 0 0;width:120px;height:64px;margin-bottom:-6px}.sign-board{color:#fff7e8;font:700 18px var(--display);box-shadow:0 4px 0 #8a5a35, var(--shadow);text-shadow:0 1px #00000040;background:repeating-linear-gradient(0deg,#c98b55 0 9px,#bf7f49 9px 10px);border-radius:12px;align-items:center;gap:8px;padding:12px 22px;display:flex}.guide{z-index:3;background:var(--paper);max-width:min(420px,100vw - 260px);color:var(--ink);font:600 14px var(--display);white-space:nowrap;box-shadow:inset 0 0 0 1px #ffffff1a, var(--shadow);-webkit-backdrop-filter:blur(12px);cursor:pointer;animation:panel-in .35s var(--spring);border:0;border-radius:22px;align-items:center;gap:8px;padding:6px 16px 6px 6px;display:flex;position:fixed;top:16px;left:50%;transform:translate(-50%)}.guide:hover{box-shadow:inset 0 0 0 1px #ffffff40, 0 0 18px #ffb62766, var(--shadow)}.guide span:last-child{text-overflow:ellipsis;overflow:hidden}.seek-pill{z-index:3;background:var(--paper);max-width:calc(100vw - 32px);color:var(--ink);font:600 14px var(--display);box-shadow:inset 0 0 0 1px #ffffff1a, var(--shadow);-webkit-backdrop-filter:blur(12px);animation:panel-in .35s var(--spring);border-radius:22px;align-items:center;gap:8px;padding:6px 16px 6px 6px;display:flex;position:fixed;top:62px;left:50%;transform:translate(-50%)}.seek-icon{background:var(--accent);color:#fff;border-radius:50%;flex:none;place-items:center;width:30px;height:30px;display:grid}.seek-pill[data-role=hide] .seek-icon{background:#2fb36b}.seek-pill[data-phase=results] .seek-icon{background:var(--gold);color:#2b2a33}.seek-eyes{z-index:2;color:#fff;text-align:center;pointer-events:none;background:radial-gradient(circle at 50% 45%,#18202e,#080c14);place-items:center;padding:24px;animation:.4s fade;display:grid;position:fixed;inset:0}.seek-eyes strong{font:700 min(28vw, 160px)/1 var(--display);animation:1s ease-in-out infinite pulse-count;display:block}.seek-eyes p{color:#c7d1dc;max-width:360px;font:600 18px/1.35 var(--display);margin:12px auto 0}@keyframes pulse-count{50%{transform:scale(1.06)}}.guide-arrow{background:var(--gold);color:#2b2a33;border-radius:50%;flex:none;place-items:center;width:30px;height:30px;transition:transform .15s linear;display:grid}.photo-mode .guide,.building .guide,.drawing .guide{display:none!important}@media (max-width:640px){.guide{max-width:calc(100vw - 32px);top:64px}.guide~#room-tag{top:112px}}.flying #hud,.flying #labels{opacity:0;pointer-events:none;transition:opacity .4s}#flight-fade{z-index:30;opacity:0;pointer-events:none;background:linear-gradient(#bfe3ff,#fff);position:fixed;inset:0}#flight-fade.on{opacity:1}.flying #flight-fade{transition:opacity .9s}.flying #miniature{transition:opacity .8s}#miniature{z-index:29;opacity:0;pointer-events:none;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);position:fixed;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 34% 66%,#000);mask-image:linear-gradient(#000,#0000 34% 66%,#000)}.miniature #miniature{opacity:1}#world{transition:filter .8s}.miniature #world{filter:saturate(1.4)contrast(1.06)}.travel-list{gap:8px;margin:10px 0 0;padding:0;list-style:none;display:grid}.travel-list li{font:600 15px var(--display);background:#ffffff14;border-radius:14px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.travel-list button{background:var(--accent-strong);color:#fff;font:700 14px var(--display);border:0;border-radius:12px;padding:7px 16px}.travel-list li>span{gap:2px;display:grid}.travel-list small{color:var(--ink-soft);font:600 13px var(--body)}.report-overlay{z-index:9;background:#080c1499;place-items:center;padding:16px;animation:.2s fade;display:grid;position:fixed;inset:0}.report-card{gap:10px;width:min(420px,100%);max-height:calc(100vh - 32px);display:grid;overflow-y:auto}.report-card .muted{color:var(--ink-soft);margin:0}.report-reasons{border:0;gap:6px;margin:0;padding:0;display:grid}.report-reasons legend{font:600 14px var(--display);margin-bottom:6px}.report-reason{font:600 15px var(--display);cursor:pointer;background:#ffffff14;border-radius:12px;align-items:center;gap:10px;padding:10px 12px;display:flex}.report-reason:has(input:checked){box-shadow:inset 0 0 0 2px var(--accent)}.report-details{font:600 14px var(--display);gap:6px;display:grid}.report-details textarea{width:100%;color:inherit;font:15px var(--body);resize:vertical;background:#ffffff1a;border:0;border-radius:10px;padding:10px}.report-error{color:#ffb4a8;min-height:1.2em;margin:0;font-weight:600}.report-actions{justify-content:flex-end;gap:8px;display:flex}.report-actions button{color:inherit;font:700 15px var(--display);background:#ffffff1f;border:0;border-radius:14px;padding:10px 16px}.report-actions .primary{background:var(--accent-strong);color:#fff;box-shadow:0 3px 0 var(--accent-strong-dark)}.share-banner{z-index:3;background:var(--paper);max-width:min(440px,100vw - 32px);color:var(--ink);font:600 14px var(--display);box-shadow:inset 0 0 0 1px #ffffff1a, var(--shadow);-webkit-backdrop-filter:blur(12px);animation:panel-in .35s var(--spring);border-radius:22px;align-items:center;gap:8px;padding:6px 6px 6px 14px;display:flex;position:fixed;top:84px;right:16px}.share-banner>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.share-banner button{background:var(--accent-strong);color:#fff;font:700 13px var(--display);border:0;border-radius:16px;flex:none;padding:7px 14px}.share-banner button.stop{color:inherit;background:#ffffff24}.share-banner button:hover{filter:brightness(1.1)}.photo-mode .share-banner,.building .share-banner,.drawing .share-banner{display:none!important}.screen-view{z-index:9;background:#080c14f0;grid-template-rows:auto minmax(0,1fr);gap:10px;padding:14px;animation:.2s fade;display:grid;position:fixed;inset:0}.screen-view-bar{color:#fff;min-width:0;font:700 16px var(--display);justify-content:space-between;align-items:center;gap:12px;display:flex}.screen-view-bar>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.screen-view-bar button{color:#fff;font:700 14px var(--display);background:#ffffff24;border:0;border-radius:16px;align-items:center;gap:6px;padding:8px 14px;display:inline-flex}.screen-view-bar button:hover{background:#ffffff3d}#screen-view-video{object-fit:contain;background:#000;border-radius:10px;width:100%;height:100%}#room-tag{z-index:3;background:var(--paper);color:var(--ink-soft);font:500 14px var(--display);white-space:nowrap;-webkit-backdrop-filter:blur(12px);animation:panel-in .35s var(--spring);border-radius:18px;align-items:center;gap:6px;padding:7px 14px;display:flex;position:fixed;top:74px;left:50%;transform:translate(-50%)}#room-tag b{color:var(--ink);font-weight:600}#room-tag svg{color:var(--accent)}.touch #room-tag{top:auto;bottom:200px}#prompt{background:var(--paper);height:46px;color:var(--ink);font:600 16px var(--display);box-shadow:0 var(--edge) 0 var(--line), var(--shadow);border:0;border-radius:23px;align-items:center;gap:10px;padding:0 18px 0 8px;animation:1.8s ease-in-out infinite bob;display:flex;position:fixed;bottom:104px;left:50%;transform:translate(-50%)}#prompt kbd{background:var(--accent-strong);color:#fff;min-width:32px;height:32px;box-shadow:0 3px 0 var(--accent-strong-dark);border-radius:10px;font-size:15px}#prompt:active{transform:translate(-50%)translateY(3px)}.touch #prompt kbd{display:none}.touch #prompt{padding-left:18px}.lesson{z-index:8;background:#1e283259;place-items:center;padding:16px;animation:.25s fade;display:grid;position:fixed;inset:0}.lesson-card{border-radius:var(--radius);background:linear-gradient(90deg, transparent 22px, #f0645c40 22px 24px, transparent 24px), repeating-linear-gradient(180deg, var(--paper) 0 27px, #efe5d1 27px 28px);width:min(460px,100%);max-height:calc(100vh - 48px);color:var(--ink);box-shadow:0 0 0 3px var(--line), 0 30px 70px #141e2859;animation:page-in .45s var(--spring);gap:10px;padding:34px 28px 24px;display:grid;position:relative;overflow-y:auto}body[data-edition=work] .lesson-card{background:var(--paper)}.ribbon{background:var(--accent-strong);color:#fff;font:700 12px var(--display);letter-spacing:.08em;text-transform:uppercase;box-shadow:0 3px 0 var(--accent-strong-dark);border-radius:0 0 10px 10px;justify-self:start;margin:-34px 0 0 -6px;padding:8px 14px 10px}.lesson-card h2{font:600 28px/1.15 var(--display);margin:4px 0 0}.lesson-picture{object-fit:contain;border-radius:var(--radius-sm);width:100%;max-height:260px;box-shadow:0 0 0 2px var(--line);background:#fff;display:block}.lesson-link{border-radius:var(--radius-sm);max-width:100%;color:var(--accent-text);font:600 16px var(--display);box-shadow:0 0 0 2px var(--line), 0 3px 0 2px var(--line);transition:transform .15s var(--spring);background:#fff;justify-self:start;align-items:center;gap:8px;padding:9px 14px;text-decoration:none;display:inline-flex}.lesson-link:hover{transform:translateY(-2px)}.lesson-link span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}#lesson-text p{margin:0 0 8px;font-size:17px;line-height:1.6}.question{font:600 18px/1.35 var(--display);margin:6px 0 0}.options{gap:10px;display:grid}.options button{border-radius:var(--radius-sm);min-height:50px;color:var(--ink);font:600 17px var(--display);text-align:left;box-shadow:0 0 0 2px var(--line), 0 4px 0 2px var(--line);transition:transform .15s var(--spring);background:#fff;border:0;padding:10px 16px}.options button:hover:not(:disabled){transform:translateY(-2px)}.options button:disabled{cursor:default}.options button.right{color:#1d6b3d;box-shadow:0 0 0 3px var(--leaf), 0 4px 0 3px #2c8050;animation:pop .5s var(--spring);background:#e3f8ea}.options button.task-done{text-align:center}.options button.wrong{color:#a33a35;opacity:.85;background:#fde9e8;box-shadow:0 0 0 2px #f3b6b2,0 4px 0 2px #f3b6b2}.shake{animation:.45s shake}#lesson-feedback{min-height:1.4em;font:600 16px/1.45 var(--display);margin:0}#lesson-feedback svg{vertical-align:-3px;color:var(--gold-dark)}.lesson-card .close{justify-self:end;height:44px}.quiz{z-index:4;border-radius:var(--radius);color:#fff;width:min(580px,100vw - 32px);box-shadow:0 0 0 4px #fff2, 0 var(--edge) 0 4px #121a2e, var(--shadow);--left:0;background:#1f2a44;gap:10px;padding:16px 18px 18px;display:grid;position:fixed;top:78px;left:50%;transform:translate(-50%)}.quiz.flip{animation:board-in .45s var(--spring)}.quiz header .timer{margin-left:auto}.quiz-collapse{color:#fff;background:#ffffff1a;border:0;border-radius:50%;place-items:center;width:34px;height:34px;margin-left:8px;display:grid}.quiz-collapse:hover{background:#fff3}.quiz-mini{z-index:4;color:#fff;max-width:calc(100vw - 24px);font:600 14px var(--display);white-space:nowrap;box-shadow:0 0 0 3px #fff2, var(--shadow);background:#1f2a44;border-radius:22px;align-items:center;gap:8px;padding:5px 5px 5px 6px;display:flex;position:fixed;top:62px;left:50%;transform:translate(-50%)}.quiz-mini.flip{animation:pop .4s var(--spring)}.quiz-mini.hurry{box-shadow:0 0 0 3px var(--berry), var(--shadow)}.quiz-mini[data-result=tick]{box-shadow:0 0 0 3px #7ef0a8, var(--shadow)}.quiz-mini[data-result=close]{box-shadow:0 0 0 3px #ff9b97, var(--shadow)}.quiz-mini-pad{background:var(--pad);border-radius:9px;flex:none;place-items:center;width:30px;height:30px;font-weight:800;display:grid}#quiz-mini-text{text-overflow:ellipsis;min-width:0;padding-left:4px;overflow:hidden}.quiz-mini button{color:#fff;font:600 13px var(--display);background:#ffffff1f;border:0;border-radius:16px;flex:none;align-items:center;gap:4px;padding:6px 12px;display:inline-flex}.quiz-mini button:hover{background:#fff3}.quiz-mini button.stop{background:#f0645c33;padding:6px 9px}.quiz-mini button.stop:hover{background:var(--berry)}.quiz-stop{color:#ffb3ae;font:600 13px var(--display);background:0 0;border:0;border-radius:14px;justify-content:center;justify-self:center;align-items:center;gap:6px;padding:6px 14px;display:inline-flex}.quiz-stop:hover{color:#fff;background:#f0645c33}.quiz header{font:600 13px var(--display);letter-spacing:.08em;text-transform:uppercase;color:var(--gold);justify-content:space-between;align-items:center;display:flex}.timer{place-items:center;width:46px;height:46px;display:grid;position:relative}.timer svg{position:absolute;inset:0;transform:rotate(-90deg)}.timer circle{fill:none;stroke-width:5px}.timer .track{stroke:#fff2}.timer .fill{stroke:var(--gold);stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:calc(100 - var(--left) * 100);transition:stroke-dashoffset 1s linear,stroke .3s}.timer b{font:700 17px var(--display);letter-spacing:0;color:#fff}.quiz:not([data-phase=question]) .timer{display:none}.quiz.hurry .fill{stroke:var(--berry)}.quiz.hurry .timer{animation:1s infinite throb}#quiz-question{font:600 20px/1.3 var(--display);margin:0}#quiz-options{grid-template-columns:1fr 1fr;gap:8px;margin:0;padding:0;list-style:none;display:grid}#quiz-options li{border-radius:var(--radius-sm);background:var(--pad);min-height:48px;box-shadow:0 4px 0 color-mix(in srgb, var(--pad) 60%, #000);font:600 16px/1.2 var(--display);transition:opacity .3s, transform .3s var(--spring);align-items:center;gap:10px;padding:6px 12px;display:flex}#quiz-options b{width:30px;height:30px;color:var(--pad);font:700 16px var(--display);background:#fff;border-radius:9px;flex:none;place-items:center;display:grid}#quiz-options li.here{box-shadow:0 0 0 3px #fff, 0 4px 0 3px color-mix(in srgb, var(--pad) 60%, #000);transform:translateY(-2px)}#quiz-options li.right{box-shadow:0 0 0 3px #fff, 0 0 26px var(--pad);animation:pop .6s var(--spring);transform:scale(1.04)}#quiz-options li.dim{opacity:.3;transform:scale(.97)}#quiz-status{font:600 15px var(--display);color:#dfe7f5;align-items:center;gap:6px;margin:0;display:flex}#quiz-status[data-result=tick]{color:#7ef0a8;font-size:18px}#quiz-status[data-result=close]{color:#ff9b97}#quiz-board{counter-reset:place;gap:6px;margin:0;padding:0;list-style:none;display:grid}#quiz-board li{font:600 17px var(--display);counter-increment:place;animation:rise .5s var(--spring) backwards;background:#ffffff14;border-radius:12px;align-items:center;gap:10px;padding:8px 12px;display:flex}#quiz-board li:before{content:counter(place);background:#fff2;border-radius:50%;place-items:center;width:28px;height:28px;font-size:14px;display:grid}#quiz-board li:first-child:before{background:var(--gold);color:var(--ink)}#quiz-board li:nth-child(2):before{color:var(--ink);background:#d8dee8}#quiz-board li:nth-child(3):before{color:var(--ink);background:#e3a06b}#quiz-board li:nth-child(2){animation-delay:.1s}#quiz-board li:nth-child(3){animation-delay:.2s}#quiz-board li:nth-child(4){animation-delay:.3s}#quiz-board li:nth-child(5){animation-delay:.4s}#quiz-board li b{color:var(--gold);margin-left:auto}#quiz-board li.me{background:#ffc83d33}#quiz-join{background:var(--gold);height:42px;color:var(--ink);box-shadow:0 var(--edge) 0 var(--gold-dark);justify-self:start}#chat{z-index:2;gap:8px;width:min(370px,100vw - 32px);display:grid;position:fixed;bottom:16px;left:16px}#chat-log{align-content:end;justify-items:start;gap:6px;max-height:40vh;margin:0;padding:0;list-style:none;display:grid;overflow:hidden}#chat-log li{background:var(--paper);max-width:100%;color:var(--ink);box-shadow:0 2px 0 var(--line), 0 6px 14px #0000001a;overflow-wrap:anywhere;animation:bubble-in .35s var(--spring), fade-late 12s forwards;transform-origin:0 100%;border-radius:16px 16px 16px 4px;padding:7px 12px;font-size:14px;line-height:1.35}#chat:focus-within #chat-log li{opacity:1;animation:none}#chat-log .who{font:700 14px var(--display);margin-right:6px}#chat-log .system{color:var(--ink-soft);box-shadow:none;background:#fffaf1bf;font-style:italic}#chat-input{background:var(--paper);width:100%;height:46px;color:var(--ink);font:600 16px var(--display);box-shadow:0 var(--edge) 0 var(--line), var(--shadow);border:0;border-radius:23px;padding:0 18px}#chat-input::placeholder{color:var(--ink-soft);font-weight:500}#chat-input:focus{outline:3px solid var(--accent-soft)}#phrase-chat{justify-items:start;gap:8px;display:grid}#phrase-menu{transform-origin:0 100%;grid-template-columns:1fr 1fr;gap:8px;width:min(360px,100vw - 32px);display:grid}#phrase-menu[hidden]{display:none}#phrase-menu button{border-radius:16px 16px 16px 4px;min-height:40px}.say{background:var(--paper);height:48px;color:var(--ink);font:600 16px var(--display);box-shadow:0 var(--edge) 0 var(--line), var(--shadow);transition:transform .2s var(--spring);border:0;border-radius:24px 24px 24px 6px;align-items:center;gap:8px;padding:0 20px;display:inline-flex}.say:hover{transform:translateY(-2px)}.say[aria-expanded=true]{background:var(--accent-strong);color:#fff;box-shadow:0 var(--edge) 0 var(--accent-strong-dark), var(--shadow)}#emotes{z-index:3;position:fixed;bottom:18px;left:50%;transform:translate(-50%)}#emote-wheel{width:0;height:0;position:absolute;bottom:50%;left:50%}#emote-wheel button{--angle:calc(-150deg + var(--i) * 30deg);transform:rotate(var(--angle)) translate(0, 0) rotate(calc(-1 * var(--angle))) scale(.3);opacity:0;pointer-events:none;transition:transform .35s var(--spring), opacity .2s;transition-delay:calc(var(--i) * 30ms);position:absolute;top:-24px;left:-24px}#emotes.open #emote-wheel button{transform:rotate(var(--angle)) translate(92px, 0) rotate(calc(-1 * var(--angle))) scale(1);opacity:1;pointer-events:auto}#emote-wheel kbd{min-width:18px;height:18px;font-size:10px;position:absolute;bottom:-4px;right:-4px}.touch #emote-wheel kbd{display:none}#emote-toggle svg{transition:transform .35s var(--spring)}#emotes.open #emote-toggle svg{transform:rotate(-20deg)scale(1.1)}.tag{justify-items:center;gap:6px;padding-bottom:4px;display:grid}.tag .name{color:#2b2a33;font:600 13px var(--display);white-space:nowrap;box-shadow:inset 0 -3px 0 var(--color), 0 3px 8px #00000026;background:#fffaf1eb;border-radius:10px;align-items:center;gap:4px;padding:3px 10px 2px;display:flex}.tag .mic{display:inline-flex}.tag .name.speaking{box-shadow:inset 0 -3px 0 var(--color), 0 0 0 3px var(--leaf), 0 0 16px #3fae6ab3}.tag .speech{color:#2b2a33;max-width:230px;font:600 15px/1.3 var(--display);text-align:center;overflow-wrap:anywhere;animation:bubble-in .35s var(--spring);transform-origin:bottom;background:#fff;border-radius:16px;padding:8px 12px;position:relative;box-shadow:0 6px 16px #0003}.tag .speech:after{content:"";background:#fff;border-radius:3px;width:14px;height:14px;position:absolute;bottom:-7px;left:50%;transform:translate(-50%)rotate(45deg)}#joystick{touch-action:none;background:#fffaf173;border-radius:50%;width:128px;height:128px;position:fixed;bottom:84px;left:24px;box-shadow:inset 0 0 0 3px #ffffffb3,inset 0 0 0 22px #fffaf140}#joystick-knob{background:var(--paper);width:58px;height:58px;box-shadow:0 0 0 5px var(--accent), 0 6px 0 5px var(--accent-dark), var(--shadow);border-radius:50%;margin:-29px 0 0 -29px;position:absolute;top:50%;left:50%}#jump{background:var(--gold);width:78px;height:78px;color:var(--ink);box-shadow:0 6px 0 var(--gold-dark), var(--shadow);touch-action:none;border:0;border-radius:50%;place-items:center;transition:transform .1s;display:grid;position:fixed;bottom:100px;right:24px}#jump:active{box-shadow:0 1px 0 var(--gold-dark);transform:translateY(5px)}.touch #chat{width:auto;right:16px}.touch #chat-log{width:min(300px,100vw - 100px);max-height:30vh;position:fixed;top:76px;left:16px}.touch #emotes{bottom:196px;left:auto;right:32px;transform:none}@media (max-width:520px){body:not(.touch) #emotes{left:auto;right:16px;transform:none}body:not(.touch) #emote-wheel button{--angle:calc(-180deg + var(--i) * 26deg)}}.touch #emote-wheel button{--angle:calc(-180deg + var(--i) * 26deg)}.touch .quiz{top:auto;bottom:230px}@media (max-width:640px){.actions{gap:6px}.bubble{width:42px;height:42px}.coin{height:42px}.coin-face{width:32px;height:32px}.status{display:none}}#sparkles{z-index:30;pointer-events:none;position:fixed;inset:0;overflow:hidden}.spark{color:var(--gold);filter:drop-shadow(0 1px 1px #0003);animation:.9s ease-out forwards spark;position:fixed}.confetti{border-radius:2px;width:10px;height:14px;animation:3s ease-in forwards confetti;position:fixed;top:-20px}@keyframes hop{0%,to{transform:translateY(0)}40%{transform:translateY(-18px)}}@keyframes rise{0%{opacity:0;transform:translateY(24px)scale(.96)}}@keyframes fade{0%{opacity:0}}@keyframes panel-in{0%{opacity:0;transform:translateY(-10px)scale(.94)}}@keyframes page-in{0%{opacity:0;transform:translateY(30px)rotate(-3deg)scale(.9)}}@keyframes board-in{0%{opacity:.4;transform:translate(-50%)rotateX(70deg)}}@keyframes bubble-in{0%{opacity:0;transform:scale(.6)}}@keyframes fade-late{0%,80%{opacity:1}to{opacity:0}}@keyframes pop{0%{transform:scale(1)}40%{transform:scale(1.18)}to{transform:scale(1)}}@keyframes spin-coin{0%{transform:rotateY(0)}to{transform:rotateY(720deg)}}@keyframes ping{0%{box-shadow:0 0 #3fae6a99}70%,to{box-shadow:0 0 0 8px #3fae6a00}}@keyframes bob{0%,to{transform:translate(-50%)translateY(0)}50%{transform:translate(-50%)translateY(-5px)}}@keyframes wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-14deg)}75%{transform:rotate(14deg)}}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-8px)}40%{transform:translate(7px)}60%{transform:translate(-5px)}80%{transform:translate(3px)}}@keyframes throb{0%,to{transform:scale(1)}50%{transform:scale(1.12)}}@keyframes drop-in{0%{transform:translate(-50%)translateY(-120%)}to{transform:translate(-50%)}}@keyframes swing{0%,to{transform:translate(-50%)rotate(-2.5deg)}50%{transform:translate(-50%)rotate(2.5deg)}}@keyframes spark{0%{opacity:1;transform:translate(-50%,-50%)scale(.4)}to{transform:translate(calc(-50% + var(--dx)), calc(-50% + var(--dy))) rotate(var(--spin)) scale(1);opacity:0}}@keyframes confetti{to{transform:translate(var(--drift), 110vh) rotate(var(--spin))}}body[data-edition=work] .sign{animation:drop-in .4s var(--spring)}body[data-edition=work] #prompt{animation:none}body[data-edition=work] .species:hover{transform:translateY(-2px)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.no-voice .voice-only,.no-voice #voice-toggle,.no-webcam .webcam-only,.no-webcam #webcam-toggle{display:none}.tag .cam{object-fit:cover;width:78px;height:78px;box-shadow:0 0 0 3px var(--color), 0 8px 18px #00000059;animation:bubble-in .35s var(--spring);background:#111924;border-radius:50%}.tag .cam.mirror{transform:scaleX(-1)}.photo-mode .tag .cam{display:block}#hud{--paper:#111924b8;--paper-2:#ffffff1a;--line:#0000004d;--ink:#f4f6f8;--ink-soft:#a3afbc;--shadow:0 10px 30px #00000047}#hud .bubble,#hud .coin,#hud .panel,#hud .say,#hud .status,#chat-input,#chat-log li,#prompt{-webkit-backdrop-filter:blur(12px)saturate(1.4)}#hud .panel{box-shadow:0 0 0 1px #ffffff14, var(--shadow)}#hud .bubble{box-shadow:inset 0 0 0 1px #ffffff1a, 0 var(--edge) 0 var(--line), var(--shadow)}#hud .bubble:hover{box-shadow:inset 0 0 0 1px #ffffff40, 0 0 18px color-mix(in srgb, var(--accent) 45%, transparent), var(--shadow)}#hud .bubble .text{color:#fff;background:#0d141e}#hud .status{background:var(--paper)}#hud .coin{box-shadow:inset 0 0 0 1px #ffffff1a, 0 var(--edge) 0 var(--line), var(--shadow)}#hud .species[aria-checked=true]{background:color-mix(in srgb, var(--accent) 35%, transparent)}#hud .bubble.host[aria-expanded=true],#lessons-list .done .mark,#app-map .wide,#quiz-join,#jump{color:#2b2a33}#chat-log .system{color:var(--ink-soft);background:#11192480}#hud kbd{box-shadow:0 2px #00000059}.lesson-card{--paper:#fffaf1;--paper-2:#f4ebda;--line:#ecdfc6;--ink:#2b2a33;--ink-soft:#6b6476}body[data-edition=work] .lesson-card{--paper:#fff;--paper-2:#f1f4f7;--line:#e2e7ec;--ink:#1d2733;--ink-soft:#5d6b78}.tag .name{color:#fff;box-shadow:inset 0 -3px 0 var(--color), 0 3px 10px #0003;background:#111924a8}.phone{--wall:linear-gradient(160deg, #ff9f6b 0%, #f0588d 45%, #6a46e0 100%);z-index:6;background:var(--wall);color:#fff;transform-origin:100% 0;width:344px;max-width:calc(100vw - 32px);height:min(680px,100vh - 92px);animation:phone-in .45s var(--spring);border:9px solid #0b1018;border-radius:46px;flex-direction:column;display:flex;position:fixed;top:74px;right:16px;overflow:hidden;box-shadow:0 0 0 2px #2c3546,0 34px 70px #00000073}body[data-edition=work] .phone{--wall:linear-gradient(160deg, #2fb3a8 0%, #178a8f 40%, #1d2a44 100%)}.phone-status{font:600 13px var(--display);flex:none;justify-content:space-between;align-items:center;padding:8px 20px 4px;display:flex}.phone-status #phone-space{text-overflow:ellipsis;white-space:nowrap;text-align:right;max-width:110px;overflow:hidden}.notch{background:#0b1018;border-radius:14px;width:92px;height:26px}.phone-bar{flex:none;align-items:center;gap:4px;padding:4px 12px 8px;display:flex}.phone-bar h2{font:600 22px var(--display);margin:0}#phone-back{color:#fff;background:#ffffff29;border:0;border-radius:50%;place-items:center;width:36px;height:36px;display:grid}#phone-back:hover{background:#ffffff4d}.phone-screen{flex-direction:column;flex:1;min-height:0;padding:6px 14px 14px;display:flex;position:relative;overflow-y:auto}.phone-screen h3{font:600 15px var(--display);color:#ffffffd9;margin:16px 0 8px}.phone-screen p{line-height:1.5}.phone-screen .muted{color:#ffffffbf}.phone-home{grid-template-columns:repeat(3,1fr);gap:18px 10px;padding:22px 4px;display:grid}.app-icon{color:#fff;font:600 12px var(--display);text-shadow:0 1px 3px #00000059;animation:pop-in .45s var(--spring) backwards;background:0 0;border:0;justify-items:center;gap:6px;padding:0;display:grid}.app-icon:nth-child(2){animation-delay:30ms}.app-icon:nth-child(3){animation-delay:60ms}.app-icon:nth-child(4){animation-delay:90ms}.app-icon:nth-child(5){animation-delay:.12s}.app-icon:nth-child(6){animation-delay:.15s}.app-icon:nth-child(7){animation-delay:.18s}.app-icon:nth-child(8){animation-delay:.21s}.app-icon:nth-child(9){animation-delay:.24s}.app-icon .tile{background:linear-gradient(145deg, var(--from), var(--to));width:64px;height:64px;transition:transform .2s var(--spring);border-radius:18px;place-items:center;display:grid;box-shadow:inset 0 1px #ffffff59,0 8px 18px #00000040}.app-icon:hover .tile{transform:translateY(-3px)scale(1.06)}.app-icon:active .tile{transform:scale(.92)}.app{-webkit-backdrop-filter:blur(14px);animation:app-in .35s var(--spring);background:#0c121cb8;border-radius:26px 26px 0 0;flex:1;margin:0 -14px -14px;padding:4px 14px 18px}#app-me{grid-template-rows:auto auto minmax(0,1fr) auto;gap:8px;display:grid}.home-indicator{background:#ffffffd9;border:0;border-radius:3px;flex:none;align-self:center;width:120px;height:5px;margin:8px 0 7px;padding:0}.map-frame{aspect-ratio:1;background:#3f9ad8;border-radius:18px;margin-top:8px;position:relative;overflow:hidden;box-shadow:0 0 0 1px #ffffff26}.map-frame img{object-fit:cover;width:100%;height:100%;display:block}#map-markers{position:absolute;inset:0}.marker{pointer-events:auto;justify-items:center;display:grid;position:absolute;transform:translate(-50%,-50%)}.marker small{font:600 10px var(--display);white-space:nowrap;background:#0c121cb3;border-radius:6px;margin-top:2px;padding:1px 5px}.marker.person:before{content:"";background:var(--color);border-radius:50%;width:12px;height:12px;box-shadow:0 0 0 2px #fff}.marker.place small{color:#2b2a33;background:#ffffffe0}.marker.me{filter:drop-shadow(0 0 4px #00000080);width:0;height:0;rotate:var(--facing);border-bottom:16px solid #fff;border-left:8px solid #0000;border-right:8px solid #0000}.marker.me:after{content:"";opacity:.6;border:2px solid #fff;border-radius:50%;width:32px;height:32px;animation:1.8s infinite ping-ring;position:absolute;top:-6px;left:-16px}.photos-grid{grid-template-columns:repeat(3,1fr);gap:6px;margin:8px 0 12px;display:grid}.photos-grid button{aspect-ratio:1;background:#ffffff1a;border:0;border-radius:10px;padding:0;overflow:hidden}.photos-grid img{object-fit:cover;width:100%;height:100%;transition:transform .3s;display:block}.photos-grid button:hover img{transform:scale(1.06)}.app .wide{border-radius:var(--radius-sm);background:var(--accent-strong);color:#fff;width:100%;min-height:42px;font:600 15px var(--display);box-shadow:0 3px 0 var(--accent-strong-dark);border:0;justify-content:center;align-items:center;gap:8px;margin-top:8px;display:flex}#app-map .wide{background:var(--gold);color:#2b2a33;box-shadow:0 3px 0 var(--gold-dark)}.invite-card{text-align:center;background:#ffffff1a;border-radius:18px;margin:10px 0;padding:18px}.invite-code{letter-spacing:.06em;color:var(--gold);margin:6px 0 0;font:700 34px/1.1 ui-monospace,SF Mono,monospace}.toggle{font:600 15px var(--display);border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;gap:12px;padding:12px 2px;display:flex}.toggle input{appearance:none;cursor:pointer;background:#fff3;border-radius:14px;flex:none;order:2;width:46px;height:28px;margin:0;transition:background .2s}.toggle input:before{content:"";width:22px;height:22px;transition:transform .25s var(--spring);background:#fff;border-radius:50%;margin:3px;display:block;box-shadow:0 2px 4px #0000004d}.toggle input:checked{background:var(--leaf)}.toggle input:checked:before{transform:translate(18px)}#app-settings .field{color:#fffc;margin-top:14px}#app-settings small{text-transform:none;letter-spacing:0;margin-top:6px;font-weight:500;display:block}#app-settings p{margin:4px 0}.theme-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.theme-grid button{color:#fff;font:600 14px var(--display);transition:transform .2s var(--spring), box-shadow .2s, background .2s;background:#ffffff14;border:0;border-radius:16px;grid-template-columns:1fr;gap:6px;padding:7px 7px 9px;display:grid}.theme-grid button:hover:not(:disabled){background:#ffffff24;transform:translateY(-2px)}.theme-grid button[aria-checked=true]{box-shadow:inset 0 0 0 2px var(--gold);background:#ffffff29}.theme-grid button[aria-checked=true] .theme-swatch{animation:2.4s ease-in-out infinite bob-plain}.theme-swatch{background:radial-gradient(circle at 36% 50%, var(--crown-a) 0 12px, transparent 13px), radial-gradient(circle at 62% 42%, var(--crown-b) 0 10px, transparent 11px), radial-gradient(ellipse 72% 42% at 50% 74%, var(--grass) 0 97%, transparent 100%), var(--water);border-radius:11px;width:100%;height:58px;display:block;box-shadow:inset 0 -6px 12px #0000001f}.time-grid{grid-template-columns:repeat(3,1fr)}.time-grid button{flex-direction:column;gap:4px;min-height:62px}.theme-grid button:disabled,.time-grid button:disabled{opacity:.5;cursor:default;transform:none}#scenery-note{margin-top:12px}#app-build .tabs{margin:6px -2px 4px}.build-items{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:6px;display:grid}.build-item{color:#fff;font:600 12px/1.15 var(--display);transition:transform .2s var(--spring), background .2s;animation:pop-in .35s var(--spring) backwards;background:#ffffff14;border:0;border-radius:14px;justify-items:center;gap:2px;padding:6px 4px 8px;display:grid}.build-item:nth-child(2){animation-delay:30ms}.build-item:nth-child(3){animation-delay:60ms}.build-item:nth-child(4){animation-delay:90ms}.build-item:nth-child(5){animation-delay:.12s}.build-item:nth-child(6){animation-delay:.15s}.build-item:nth-child(n+7){animation-delay:.18s}.build-item img{object-fit:contain;filter:drop-shadow(0 4px 4px #0000004d);width:64px;height:64px}.build-item:hover:not(:disabled){background:#ffffff29;transform:translateY(-3px)rotate(-2deg)}.build-item:active:not(:disabled){transform:scale(.94)}.build-item:disabled{opacity:.45;cursor:default}#build-host{margin-top:6px}.build-ai{background:linear-gradient(150deg,#a07bff38,#ff9f6b29);border-radius:16px;margin:14px 0 4px;padding:12px}.build-ai h3{align-items:center;gap:6px;margin:0 0 4px;display:flex}.build-ai p{margin:0 0 10px;font-size:13px}.build-ai input{color:#fff;width:100%;min-height:40px;font:500 14px var(--display);background:#00000040;border:1px solid #fff3;border-radius:12px;padding:0 12px}.build-bar{z-index:5;max-width:calc(100vw - 24px);animation:rise .35s var(--spring);justify-items:center;gap:8px;display:grid;position:fixed;bottom:16px;left:50%;transform:translate(-50%)}#build-hint{color:#fff;font:600 14px var(--display);text-align:center;background:#0c121cb8;border-radius:16px;margin:0;padding:6px 14px}.build-tools{background:var(--paper);box-shadow:inset 0 0 0 1px #ffffff1a, var(--shadow);-webkit-backdrop-filter:blur(12px);border-radius:22px;gap:4px;padding:6px;display:flex}.build-tools button{min-width:58px;color:var(--ink);font:600 12px var(--display);transition:background .15s, transform .15s var(--spring);background:0 0;border:0;border-radius:16px;justify-items:center;gap:2px;padding:6px 8px;display:grid}.build-tools button:hover{background:#ffffff1a;transform:translateY(-2px)}.build-tools button:active{transform:scale(.92)}.build-tools button[aria-expanded=true]{background:#ffffff29}.build-tools button.place{color:#fff;background:#1f7a46;min-width:72px;box-shadow:0 3px #145a32}#build-delete{color:#ff8a8a}.build-tools .done{background:var(--accent-strong);color:#fff;box-shadow:0 3px 0 var(--accent-strong-dark)}.build-tools .done:hover{background:var(--accent-strong);filter:brightness(1.08)}.build-colors{background:var(--paper);box-shadow:var(--shadow);animation:pop-in .3s var(--spring);border-radius:18px;grid-template-columns:repeat(7,32px);gap:6px;padding:8px;display:grid}.build-colors button{background:var(--swatch);width:32px;height:32px;transition:transform .15s var(--spring);border:3px solid #0000;border-radius:50%;padding:0;box-shadow:inset 0 -3px #0003}.build-colors button:hover{transform:scale(1.12)}.build-colors button[aria-checked=true]{border-color:#fff;transform:scale(1.12)}.building #emotes,.building #prompt{display:none!important}.touch.building #joystick,.touch.building #jump{bottom:150px}@media (max-width:640px){.build-tools button{min-width:46px;padding:6px 4px;font-size:11px}}.board-overlay{z-index:9;-webkit-backdrop-filter:blur(6px);background:#080c14c7;align-content:center;place-items:center;gap:14px;padding:16px;animation:.2s fade;display:grid;position:fixed;inset:0}.board-frame{animation:rise .35s var(--spring);background:#2f3a4a;border-radius:18px;padding:10px;box-shadow:0 24px 60px #00000080}#board-canvas{touch-action:none;cursor:crosshair;border-radius:8px;display:block}.board-overlay:has(.locked) #board-canvas{cursor:default}#board-note{color:#fff;font:600 14px var(--display);background:#0c121cb8;border-radius:16px;margin:0;padding:6px 14px}.board-tools{background:var(--paper);max-width:100%;box-shadow:inset 0 0 0 1px #ffffff1a, var(--shadow);border-radius:22px;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;padding:8px 10px;display:flex}.board-tools.locked .board-pens,.board-tools.locked .board-sizes{display:none}.board-pens,.board-sizes{gap:6px;display:flex}.board-pens .pen{background:var(--pen);width:32px;height:32px;transition:transform .15s var(--spring);border:3px solid #0000;border-radius:50%;padding:0;box-shadow:inset 0 -3px #00000040,0 0 0 1px #ffffff4d}.board-pens .pen:hover{transform:scale(1.1)}.board-pens .pen[aria-pressed=true]{border-color:#fff;transform:scale(1.15)}.board-pens .eraser{background:#f4f1ea;position:relative}.board-pens .eraser:before{content:"";background:linear-gradient(90deg,#ff9fb4 0 55%,#3b82f6 55%);border-radius:3px;position:absolute;inset:7px 5px;transform:rotate(-30deg)}.board-sizes .size{background:0 0;border:0;border-radius:50%;place-items:center;width:34px;height:34px;padding:0;display:grid}.board-sizes .size:before{content:"";width:var(--dot);height:var(--dot);background:var(--ink);border-radius:50%}.board-sizes .size[aria-pressed=true]{background:#ffffff29}.board-tools>button{min-height:38px;color:var(--ink);font:600 14px var(--display);background:#ffffff14;border:0;border-radius:19px;align-items:center;gap:6px;padding:0 14px;display:flex}.board-tools>button:hover{background:#ffffff29}.board-tools>.done{background:var(--accent-strong);color:#fff;box-shadow:0 3px 0 var(--accent-strong-dark)}.board-switch{color:var(--ink);font:600 14px var(--display);align-items:center;gap:8px;display:flex}.board-switch input{appearance:none;cursor:pointer;background:#fff3;border-radius:12px;width:40px;height:24px;margin:0;transition:background .2s}.board-switch input:before{content:"";width:18px;height:18px;transition:transform .25s var(--spring);background:#fff;border-radius:50%;margin:3px;display:block}.board-switch input:checked{background:var(--leaf)}.board-switch input:checked:before{transform:translate(16px)}.drawing #hud>:not(#board):not(#sparkles){visibility:hidden}.hunt-list{gap:6px;margin:8px 0;padding:0;list-style:none;display:grid}.hunt-list li{font:600 15px var(--display);animation:pop-in .3s var(--spring) backwards;background:#ffffff14;border-radius:14px;align-items:center;gap:10px;padding:10px 12px;display:flex}.hunt-list li:nth-child(2){animation-delay:40ms}.hunt-list li:nth-child(3){animation-delay:80ms}.hunt-list li:nth-child(n+4){animation-delay:.12s}.hunt-list .mark{background:#ffffff1f;border-radius:50%;flex:none;place-items:center;width:30px;height:30px;display:grid}.hunt-list .done{background:color-mix(in srgb, var(--gold) 22%, transparent)}.hunt-list .done .mark{background:var(--gold);color:#2b2a33;animation:pop .5s var(--spring)}.hunt-list .done span:last-child{opacity:.8;text-decoration:line-through;text-decoration-thickness:2px}.hunt-picker{flex-wrap:wrap;gap:6px;display:flex}.hunt-picker button{color:#fff;min-height:32px;font:600 13px var(--display);transition:background .15s, transform .15s var(--spring);background:#ffffff14;border:0;border-radius:16px;padding:0 12px}.hunt-picker button:hover:not(:disabled){background:#ffffff29;transform:translateY(-1px)}.hunt-picker button[aria-pressed=true]{background:var(--accent-strong);box-shadow:0 2px 0 var(--accent-strong-dark)}.hunt-picker button:disabled{opacity:.4}.hunt-scores{font:600 14px var(--display);margin:6px 0 0;padding-left:20px;line-height:1.8}#hunt-count{font-size:13px}.scope{z-index:9;pointer-events:none;place-items:center;animation:.3s fade;display:grid;position:fixed;inset:0}.scope.telescope{background:radial-gradient(circle,#0000 0 min(38vw,38vh),#05070c calc(min(38vw,38vh) + 2px))}.scope.telescope:before{content:"";border-radius:50%;width:min(76vw,76vh);height:min(76vw,76vh);position:absolute;box-shadow:inset 0 0 50px 14px #000000bf,0 0 0 3px #2b2f36}.scope.microscope{pointer-events:auto;background:#05070cf0}#scope-cells{width:min(70vw,70vh);height:min(70vw,70vh);animation:rise .4s var(--spring);border-radius:50%;box-shadow:0 0 0 12px #2b2f36,0 0 0 16px #3b414a,0 20px 60px #0009}#scope-hint{color:#fff;max-width:min(560px,100vw - 32px);font:600 15px/1.4 var(--display);text-align:center;background:#0c121ccc;border-radius:18px;margin:0;padding:8px 16px;position:absolute;bottom:28px;left:50%;transform:translate(-50%)}#scope-close{pointer-events:auto;position:absolute;top:18px;right:18px}.photo-mode .topbar,.photo-mode #chat,.photo-mode #prompt,.photo-mode #room-tag,.photo-mode .quiz,.photo-mode .sign,.photo-mode #host-panel,.photo-mode #phone,.photo-mode #build-bar,.photo-mode #labels .name{display:none!important}.viewfinder{pointer-events:none;position:fixed;inset:24px}.viewfinder span{filter:drop-shadow(0 0 3px #00000059);border:4px solid #ffffffe6;width:46px;height:46px;position:absolute}.viewfinder span:first-child{border-bottom:0;border-right:0;border-radius:14px 0 0;top:0;left:0}.viewfinder span:nth-child(2){border-bottom:0;border-left:0;border-radius:0 14px 0 0;top:0;right:0}.viewfinder span:nth-child(3){border-top:0;border-right:0;border-radius:0 0 0 14px;bottom:0;left:0}.viewfinder span:nth-child(4){border-top:0;border-left:0;border-radius:0 0 14px;bottom:0;right:0}#photo-hint{color:#fff;font:600 15px var(--display);background:#0c121cb3;border-radius:18px;margin:0;padding:8px 16px;position:fixed;top:34px;left:50%;transform:translate(-50%)}.photo-controls{z-index:7;align-items:center;gap:28px;display:flex;position:fixed;bottom:34px;left:50%;transform:translate(-50%)}#photo-shutter{background:0 0;border:5px solid #fff;border-radius:50%;place-items:center;width:78px;height:78px;padding:0;display:grid;box-shadow:0 6px 20px #00000059}#photo-shutter span{background:#fff;border-radius:50%;width:58px;height:58px;transition:transform .12s}#photo-shutter:active span{transform:scale(.82)}#photo-last{z-index:7;border:3px solid #fff;border-radius:14px;width:64px;height:64px;padding:0;position:fixed;bottom:48px;left:48px;overflow:hidden;box-shadow:0 6px 16px #00000059}#photo-last img{object-fit:cover;width:100%;height:100%}#photo-last.pop{animation:pop .6s var(--spring)}#photo-flash{z-index:8;opacity:0;pointer-events:none;background:#fff;position:fixed;inset:0}#photo-flash.flash{animation:.5s ease-out flash}.photo-mode #emotes{bottom:110px;left:auto;right:100px;transform:none}.photo-viewer{z-index:12;background:#080c14e6;place-items:center;padding:24px 24px 100px;animation:.25s fade;display:grid;position:fixed;inset:0}.photo-viewer img{max-width:calc(100vw - 48px);max-height:calc(100dvh - 140px);animation:rise .4s var(--spring);border-radius:14px;box-shadow:0 20px 50px #00000080}.viewer-actions{gap:14px;display:flex;position:fixed;bottom:28px;left:50%;transform:translate(-50%)}.hide-names #labels .name{display:none}.calm *,.calm :before,.calm :after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}@keyframes phone-in{0%{opacity:0;transform:translateY(30px)scale(.92)rotate(2deg)}}@keyframes app-in{0%{opacity:0;transform:translateY(24px)}}@keyframes pop-in{0%{opacity:0;transform:scale(.4)}}@keyframes flash{0%{opacity:.95}to{opacity:0}}@keyframes ping-ring{0%{opacity:.8;transform:scale(.5)}to{opacity:0;transform:scale(1.4)}}@media (max-width:640px){.phone{width:auto;max-width:none;height:auto;inset:64px 8px 8px}#photo-last{bottom:130px}}.landing{--teal:#178a8f;--teal-dark:#0f6468;--sky-top:#63bdfa;--sky-low:#c9ecff;--grass:#a6dc7f;--meadow:#57b86b;--sand:#f7e5b7;--lagoon:#6fd8cf;--night:#1f2a44;--sea:#1c6fb8;z-index:20;background:var(--sand);color:var(--ink);scroll-behavior:smooth;position:fixed;inset:0;overflow:hidden auto}.landing h1,.landing h2,.landing h3{font-family:var(--display);letter-spacing:-.01em;font-weight:600}.landing a{color:inherit}.landing .inner{width:min(1120px,100% - 32px);margin:0 auto}.landing .lead{color:var(--ink-soft);font-size:19px;line-height:1.55}.landing .lead.center{text-align:center;max-width:640px;margin:0 auto 32px}.landing .fine{color:#2f4a63;font-size:15px}.landing svg.icon{flex:none}.band{background:var(--band);padding:72px 0;position:relative}.band:before{content:"";background:var(--band);pointer-events:none;height:40px;position:absolute;top:-38px;left:0;right:0;-webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 40' preserveAspectRatio='none'><path d='M0 20 C 120 4 240 4 360 20 S 600 36 720 20 S 960 4 1080 20 S 1320 36 1440 20 L1440 40 L0 40 Z'/></svg>") 0 0/1440px 100% repeat-x;mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 40' preserveAspectRatio='none'><path d='M0 20 C 120 4 240 4 360 20 S 600 36 720 20 S 960 4 1080 20 S 1320 36 1440 20 L1440 40 L0 40 Z'/></svg>") 0 0/1440px 100% repeat-x}.band.lagoon:before,.band.sea:before{animation:14s linear infinite roll}.band.grass{--band:var(--grass)}.band.sand{--band:var(--sand)}.band.night{--band:var(--night);color:#fff}.band.lagoon{--band:var(--lagoon)}.band.meadow{--band:var(--meadow)}.band.sky{--band:#bfe6ff}.band.sea{--band:var(--sea);color:#fff}.band-title{text-align:center;margin:0 0 32px;font-size:clamp(30px,4vw,44px)}.site-nav{z-index:5;-webkit-backdrop-filter:blur(12px)saturate(1.4);background:#ffffffb8;align-items:center;gap:28px;padding:12px max(16px,50vw - 560px);display:flex;position:sticky;top:0;box-shadow:0 1px #0000000f}.site-brand{font:600 22px var(--display);align-items:center;gap:10px;text-decoration:none;display:inline-flex}.site-brand .logo{width:40px;height:40px;transition:rotate .5s var(--spring), scale .5s var(--spring);animation:4s ease-in-out infinite isle-float}.site-brand:hover .logo{rotate:-8deg;scale:1.12}@keyframes isle-float{50%{transform:translateY(-3px)}}.site-brand [data-brand],.brand.small span,#problem-brand{text-transform:lowercase}.site-nav nav{gap:6px;margin-right:auto;display:flex}.site-nav nav a{color:var(--ink-soft);font:600 15px var(--display);border-radius:12px;padding:8px 12px;text-decoration:none;transition:background .2s,color .2s}.site-nav nav a:hover{color:var(--ink);background:#fffc}.text-link{color:var(--ink-soft);font:600 15px var(--display);text-decoration:none}.nav-actions{align-items:center;gap:18px;display:flex}.btn{border-radius:var(--radius-sm);height:46px;color:var(--ink);font:600 16px/1 var(--display);white-space:nowrap;transition:transform .15s var(--spring), box-shadow .15s;background:#fff;border:0;justify-content:center;align-items:center;gap:8px;padding:0 20px;text-decoration:none;display:inline-flex;box-shadow:0 4px #d9cdb5,0 10px 20px #00000014}.landing .btn{margin:0}.btn:hover{transform:translateY(-3px)rotate(-1deg)}.btn:active{transform:translateY(4px);box-shadow:0 0 #d9cdb5}.btn.primary{background:var(--accent-strong);color:#fff;box-shadow:0 4px 0 var(--accent-strong-dark), 0 12px 24px #ef6f4c4d}.btn.primary.work{background:var(--teal);box-shadow:0 4px 0 var(--teal-dark), 0 12px 24px #178a8f4d}.landing .btn.big{height:56px;padding:0 26px;font-size:18px}.hero{background:linear-gradient(180deg, var(--sky-top) 0%, var(--sky-low) 62%, #fff3d4 100%);padding:56px 0 96px;position:relative;overflow:hidden}.hero-sky{pointer-events:none;position:absolute;inset:0}.sun{width:148px;height:148px;position:absolute;top:8px;right:calc(9% - 26px);overflow:visible}.sun-rays{transform-box:view-box;transform-origin:50%;animation:40s linear infinite turn}.cloud{opacity:.9;background:#fff;border-radius:40px;width:180px;height:56px;animation:60s linear infinite drift;position:absolute}.cloud:before,.cloud:after{content:"";background:#fff;border-radius:50%;position:absolute}.cloud:before{width:80px;height:80px;top:-38px;left:26px}.cloud:after{width:104px;height:104px;top:-58px;left:70px}.cloud.c1{animation-delay:-8s;top:120px;left:0;transform:scale(.8)}.cloud.c2{opacity:.75;animation-duration:90s;animation-delay:-38s;top:60px;left:0;transform:scale(.55)}.cloud.c3{animation-duration:75s;animation-delay:-52s;top:260px;left:0;transform:scale(.7)}.hero-inner{grid-template-columns:1fr 1.15fr;align-items:center;gap:32px;display:grid;position:relative}.kicker{font:600 14px var(--display);color:var(--teal-dark);background:#ffffffb3;border-radius:20px;align-items:center;gap:8px;margin:0 0 14px;padding:6px 12px;display:inline-flex}.hero h1{color:#17324a;margin:0;font-size:clamp(38px,5vw,64px);line-height:1.02}.hero .lead{color:#2f4a63}.scribble{color:var(--accent);display:inline-block;position:relative}.scribble svg{width:100%;height:18px;position:absolute;bottom:-10px;left:0;overflow:visible}.scribble path{fill:none;stroke:var(--gold);stroke-width:6px;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:100px;animation:1.2s ease-out .6s forwards draw}.cta-row{flex-wrap:wrap;gap:14px;margin:28px 0 16px;display:flex}.hero-stage{aspect-ratio:4/3;margin:0;position:relative}.hero-stage canvas{cursor:pointer;opacity:0;width:100%;height:100%;transition:opacity .8s;display:block;position:absolute;inset:0}.hero-stage.live canvas{opacity:1}.hero-fallback{object-fit:contain;width:100%;height:100%;transition:opacity .6s .4s;position:absolute;inset:0}.hero-stage.live .hero-fallback{opacity:0}.hero-hint{font:600 14px var(--display);box-shadow:var(--shadow);opacity:0;background:#fff;border-radius:18px 18px 18px 4px;align-items:center;gap:6px;padding:8px 14px;transition:opacity .5s 1.5s;animation:2.4s ease-in-out infinite bob-plain;display:inline-flex;position:absolute;bottom:8%;right:12%}.hero-stage.live .hero-hint{opacity:1}.signposts{justify-content:center;gap:0;height:120px;margin:0 auto 36px;display:flex;position:relative}.post{background:linear-gradient(90deg,#8a5a35,#a87447 50%,#8a5a35);border-radius:4px;width:16px;margin-left:-8px;position:absolute;top:0;bottom:-30px;left:50%}.signpost{z-index:1;color:#fff8ec;height:58px;font:600 20px var(--display);text-shadow:0 1px #00000040;filter:drop-shadow(0 6px #8a5a35)drop-shadow(0 12px 18px #3c280a40);transition:transform .35s var(--spring), background .3s;background:repeating-linear-gradient(0deg,#d49a62 0 11px,#c98d55 11px 12px);border:0;align-items:center;gap:10px;padding:0 34px;display:inline-flex;position:relative}.signpost.left{clip-path:polygon(22px 0,100% 0,100% 100%,22px 100%,0 50%);transform-origin:100%;align-self:flex-start;margin-right:-8px;padding-left:46px;transform:rotate(-4deg)}.signpost.right{clip-path:polygon(0 0,calc(100% - 22px) 0,100% 50%,calc(100% - 22px) 100%,0 100%);transform-origin:0;align-self:flex-end;margin-left:-8px;padding-right:46px;transform:rotate(3deg)}.signpost:hover{transform:rotate(0)scale(1.04)}.signpost[aria-selected=true].left{background:repeating-linear-gradient(0deg, var(--accent) 0 11px, #e46641 11px 12px);transform:rotate(-1deg)scale(1.06)}.signpost[aria-selected=true].right{background:repeating-linear-gradient(0deg, var(--teal) 0 11px, #138085 11px 12px);transform:rotate(1deg)scale(1.06)}.path-panel{animation:slide-in .5s var(--spring);background:#fffaf1;border-radius:28px;grid-template-columns:1fr 1fr;align-items:center;gap:40px;padding:36px;display:grid;box-shadow:0 8px #3c641e40,0 24px 50px #1e3c1433}.path-panel.work{background:#f6fbfb}.path-copy{gap:14px;display:grid}.path-copy h3{margin:0;font-size:28px;line-height:1.15}.path-copy p{color:var(--ink-soft);margin:0;font-size:17px;line-height:1.55}.path-copy .btn{justify-self:start;margin-top:6px}.polaroid{transition:transform .4s var(--spring);background:#fff;border-radius:6px;margin:0;padding:12px 12px 14px;box-shadow:0 18px 40px #0003}.polaroid img{border-radius:3px;width:100%;height:auto;display:block}.polaroid figcaption{text-align:center;font:500 18px var(--display);color:var(--ink-soft);margin-top:10px}.polaroid.tilt-left{transform:rotate(2.5deg)}.polaroid.tilt-right{transform:rotate(-2.5deg)}.polaroid:hover{transform:rotate(0)scale(1.03)}.ticks{gap:10px;margin:0;padding:0;list-style:none;display:grid}.ticks li{align-items:flex-start;gap:10px;line-height:1.45;display:flex}.ticks svg.icon{color:#1f9d55;margin-top:1px}.trail{padding-top:30px;position:relative}.trail-line{width:100%;height:140px;position:absolute;top:0;left:0;overflow:visible}.trail-line path{fill:none;stroke:#c99a52;stroke-width:5px;stroke-linecap:round;stroke-dasharray:2 4}.trail .stops{grid-template-columns:repeat(3,1fr);gap:24px;margin:0;padding:0;list-style:none;display:grid;position:relative}.stops li{text-align:center;background:#fffaf1;border-radius:24px;justify-items:center;gap:8px;padding:26px 22px 24px;display:grid;box-shadow:0 6px #e6cf9c,0 18px 30px #785a1e26}.stops li:nth-child(2){margin-top:40px}.stops strong{font:600 21px var(--display)}.stops span:not(.pin){color:var(--ink-soft);line-height:1.5}.pin{background:var(--accent-strong);color:#fff;width:52px;height:52px;font:700 22px var(--display);border-radius:50% 50% 50% 0;place-items:center;margin-top:-54px;display:grid;transform:rotate(-45deg);box-shadow:0 6px 12px #0003}.pin b{transform:rotate(45deg)}.stops li:nth-child(2) .pin{background:var(--teal)}.stops li:nth-child(3) .pin{background:var(--gold);color:var(--ink)}.trail .stops .pin{line-height:1}.reveal .stops li{opacity:0;transform:translateY(20px)scale(.9)}.reveal.seen .stops li{opacity:1;transition:opacity .5s, transform .6s var(--spring);transform:none}.reveal.seen .stops li:nth-child(2){transition-delay:.35s}.reveal.seen .stops li:nth-child(3){transition-delay:.7s}.reveal.seen .trail-line path{animation:1.6s linear infinite march}.feature{grid-template-columns:1fr 1.2fr;align-items:center;gap:48px;display:grid}.feature.flip{grid-template-columns:1fr 1fr}.feature-text{gap:14px;display:grid}.feature-text h2{margin:0;font-size:clamp(30px,3.6vw,40px);line-height:1.1}.feature-text p{color:var(--ink-soft);margin:0;font-size:17px;line-height:1.6}.night .feature-text p{color:#c9d4e8}.shot{background:#cfe7fa;border-radius:22px;margin:0;overflow:hidden;box-shadow:0 30px 60px #0000004d}.shot img{width:100%;height:auto;display:block}.stage-shot{box-shadow:0 0 0 6px #ffffff18,0 0 60px #ffc83d40,0 30px 60px #0006}.band.night{background-image:radial-gradient(#fff5 1px,#0000 1.5px),radial-gradient(#fff3 1px,#0000 1.5px);background-position:0 0,40px 60px;background-size:90px 90px,140px 140px}.pads{gap:10px;margin-top:8px;display:flex}.pads span{width:64px;height:52px;font:700 22px var(--display);color:#fff;border-radius:14px;place-items:center;animation:4s infinite light-up;display:grid;box-shadow:0 5px #0000004d}.pads span:first-child{background:#e5484d}.pads span:nth-child(2){background:#3b82f6;animation-delay:.5s}.pads span:nth-child(3){background:#f5a524;animation-delay:1s}.pads span:nth-child(4){background:#2fb36b;animation-delay:1.5s}.badge{background:color-mix(in srgb, var(--teal) 14%, white);width:52px;height:52px;color:var(--teal);border-radius:16px;place-items:center;display:grid;box-shadow:0 4px #00000014}.badge.school{background:var(--accent-soft);color:var(--accent)}.badge.gold{background:var(--gold);color:var(--ink)}.mock-pair{min-height:390px;position:relative}.mock-lesson,.mock-progress{background:#fffdf8;border-radius:20px;padding:22px;position:absolute;box-shadow:0 24px 50px #0a464638}.mock-lesson{gap:8px;width:64%;animation:7s ease-in-out infinite float;display:grid;top:0;left:0;rotate:-2deg}.mock-lesson h3{margin:0;font-size:22px}.mock-lesson p{color:var(--ink-soft);margin:0;font-size:15px;line-height:1.45}.mock-eyebrow{letter-spacing:.08em;text-transform:uppercase;font-weight:800;color:var(--accent)!important;font-size:12px!important}.mock-question{font-weight:700;color:var(--ink)!important;margin-top:4px!important}.mock-option{font:600 15px var(--display);background:#fff;border-radius:12px;padding:9px 14px;display:block;box-shadow:0 0 0 2px #ece3d2,0 3px 0 2px #ece3d2}.mock-option.right{box-shadow:0 0 0 2px var(--leaf), 0 3px 0 2px #2c8050;background:#e3f8ea}.mock-progress{gap:4px;width:58%;animation:7s ease-in-out 1.5s infinite float;display:grid;bottom:0;right:0;rotate:2deg}.mock-title{font:600 17px var(--display);margin:0 0 6px}.mock-row{border-top:1px solid #f0ebe2;justify-content:space-between;align-items:center;padding:7px 0;font-weight:700;display:flex}.mock-row b{color:#1f9d55;gap:6px;display:flex}.lagoon .feature-text p{color:#1e4d4a}.band.meadow{color:#fff}.safety-head{text-align:center;justify-items:center;gap:10px;margin-bottom:34px;display:grid}.safety-head .band-title{margin:0}.safety-head p{color:#eaffea;margin:0;font-size:18px}.safety-list{grid-template-columns:repeat(3,1fr);gap:18px;margin:0;padding:0;list-style:none;display:grid}.safety-list li{color:var(--ink);transition:transform .3s var(--spring);background:#fffaf1;border-radius:22px;grid-template-columns:auto 1fr;gap:4px 14px;padding:20px;display:grid;box-shadow:0 6px #3d8f50}.safety-list li:hover{transform:translateY(-4px)rotate(-1deg)}.safety-list strong{font:600 18px var(--display)}.safety-list span:not(.leaf){color:var(--ink-soft);line-height:1.5}.leaf{color:#2c8050;background:#dff3d6;border-radius:50% 0;grid-row:span 2;place-items:center;width:44px;height:44px;display:grid}.safety-list li:hover .leaf{animation:.5s wiggle}.plans{grid-template-columns:repeat(2,minmax(0,380px));justify-content:center;gap:22px;display:grid}.plan{background:#fff;border-radius:26px;align-content:start;gap:14px;padding:34px 30px 30px;display:grid;position:relative;box-shadow:0 8px #9fcdea,0 24px 40px #1e5a8c2e}.plan.quiet{background:#eef8ff;box-shadow:0 8px #c7e3f5}.plan h3{margin:0;font-size:20px}.plan .price{font:600 42px var(--display);margin:0}.plan .btn{justify-self:start}.ribbon-tag{background:var(--accent-strong);color:#fff;font:600 14px var(--display);box-shadow:0 3px 0 var(--accent-strong-dark);border-radius:12px;padding:6px 14px;position:absolute;top:-14px;left:26px}.ribbon-tag.later{background:#7fb4d8;box-shadow:0 3px #5d93b8}.faq .inner{max-width:780px}.faq details{background:#fffaf1;border-radius:20px;margin-bottom:12px;overflow:hidden;box-shadow:0 5px #e6cf9c}.faq summary{cursor:pointer;font:600 19px var(--display);justify-content:space-between;align-items:center;gap:12px;padding:20px 24px;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary svg{background:var(--accent-soft);width:26px;height:26px;color:var(--accent);transition:transform .35s var(--spring);border-radius:50%;flex:none;padding:4px}.faq details[open] summary svg{transform:rotate(45deg)}.faq details p{color:var(--ink-soft);animation:rise .35s var(--spring);margin:0;padding:0 24px 22px;font-size:17px;line-height:1.6}.site-foot{padding:48px 0 56px}.foot-inner{color:#d9ecff;flex-wrap:wrap;align-items:center;gap:16px 28px;display:flex}.site-foot .site-brand{color:#fff}.site-foot nav{gap:20px;margin-left:auto;display:flex}.site-foot nav a{color:#fff;font:600 16px var(--display);text-decoration:none}.site-foot nav{flex-wrap:wrap}.foot-legal{color:#bcd8f2;flex-basis:100%;margin:0;font-size:13px}.foot-legal a{color:#fff}.feature-card .crew-figure{background:linear-gradient(#9fd6f7,#d9f2ee);place-items:end center;padding:12px 10px 0;display:grid}.feature-card .crew-figure img{object-fit:contain;width:100%;height:auto}.landing .reveal>.inner{opacity:0;transition:opacity .8s ease, transform .8s var(--spring);transform:translateY(36px)}.landing .reveal.seen>.inner{opacity:1;transform:none}@keyframes roll{to{-webkit-mask-position:1440px 0;mask-position:1440px 0}}@keyframes turn{to{transform:rotate(360deg)}}@keyframes drift{0%{translate:-240px}to{translate:calc(100vw + 40px)}}@keyframes draw{to{stroke-dashoffset:0}}@keyframes bob-plain{0%,to{translate:0}50%{translate:0 -6px}}@keyframes slide-in{0%{opacity:0;transform:translate(30px)rotate(1deg)}}@keyframes march{to{stroke-dashoffset:-12px}}@keyframes light-up{0%,to{filter:none;transform:none}8%{filter:brightness(1.25)drop-shadow(0 0 14px #ffffffb3);transform:translateY(-6px)scale(1.08)}16%{filter:none;transform:none}}@keyframes float{0%,to{translate:0}50%{translate:0 -10px}}.band.peach{--band:#ffe1cc}.feature-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;display:grid}.feature-card{transition:transform .35s var(--spring), rotate .35s var(--spring), box-shadow .35s;background:#fffaf1;border-radius:26px;grid-template-rows:auto 1fr;display:grid;overflow:hidden;rotate:-.6deg;box-shadow:0 16px 40px #96461429}.feature-card:nth-child(2n){rotate:.6deg}.feature-card:hover{transform:translateY(-6px);box-shadow:0 24px 50px #96461438}.feature-card figure{aspect-ratio:16/9;background:#cfe7fa;margin:0;overflow:hidden}.feature-card figure img{object-fit:cover;width:100%;height:100%;transition:transform .7s;display:block}.feature-card:hover figure img{transform:scale(1.05)}.card-copy{align-content:start;gap:8px;padding:34px 26px 24px;display:grid;position:relative}.card-icon{background:var(--tone);color:#fff;width:52px;height:52px;box-shadow:0 5px 0 color-mix(in srgb, var(--tone) 65%, #000), 0 12px 22px #00000026;border-radius:16px;place-items:center;display:grid;position:absolute;top:-26px;left:24px}.feature-card:hover .card-icon{animation:.5s wiggle}.card-copy h3{margin:0;font-size:24px}.card-copy p{color:var(--ink-soft);margin:0;font-size:16px;line-height:1.55}.edition-tag{color:#1f7a45;font:700 12px var(--display);letter-spacing:.03em;text-transform:uppercase;background:#e3f5e8;border-radius:999px;justify-self:start;margin-top:4px;padding:3px 10px}.edition-tag.work{color:var(--teal-dark);background:#dcf0f1}.feature-card.more{background:linear-gradient(155deg,#fff3cf,#ffe4ef);grid-template-rows:1fr}.feature-card.more .card-copy{align-content:center;padding-top:30px;position:static}.feature-card.more .card-icon{margin-bottom:6px;position:static}.chips{flex-wrap:wrap;gap:9px;margin:6px 0 0;padding:0;list-style:none;display:flex}.chips li{font:600 15px var(--display);transition:transform .2s var(--spring);background:#fff;border-radius:999px;align-items:center;gap:7px;padding:8px 13px;display:inline-flex;box-shadow:0 3px #9646141a}.chips li:hover{transform:translateY(-2px)rotate(-2deg)}.chips svg.icon{color:#f08a24}.reveal .feature-card{opacity:0;transform:translateY(40px)}.reveal.seen .feature-card{opacity:1;transition:opacity .6s ease, transform .7s var(--spring), rotate .35s var(--spring), box-shadow .35s;transform:none}.reveal.seen .feature-card:nth-child(2){transition-delay:.1s}.reveal.seen .feature-card:nth-child(3){transition-delay:.2s}.reveal.seen .feature-card:nth-child(4){transition-delay:.3s}.reveal.seen .feature-card:nth-child(5){transition-delay:.4s}.reveal.seen .feature-card:nth-child(6){transition-delay:.5s}.reveal.seen .feature-card:hover{transition-delay:0s}.band.worlds{--band:#c9ecd6;transition:background-color .8s}.band.worlds:before{transition:background-color .8s}.band.worlds[data-theme=autumn]{--band:#ffdcb6}.band.worlds[data-theme=snowy]{--band:#d6e4f6}.band.worlds[data-theme=candy]{--band:#ffd8ec}.band.worlds[data-theme=halloween]{--band:#ffd9b8}.theme-shots{aspect-ratio:1200/539;position:relative}.theme-shots img{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity .7s,transform 1.4s;position:absolute;inset:0;transform:scale(1.05)}.theme-shots img.on{opacity:1;transform:none}.theme-chips{flex-wrap:wrap;gap:10px;margin-top:6px;display:flex}.theme-chips button{min-height:42px;color:var(--ink);font:600 15px var(--display);cursor:pointer;transition:transform .2s var(--spring), background .2s, color .2s;background:#fff;border:0;border-radius:999px;align-items:center;gap:8px;padding:0 16px;display:inline-flex;box-shadow:0 4px #00000014}.theme-chips button:before{content:"";background:var(--chip);border-radius:50%;width:14px;height:14px;box-shadow:0 0 0 2px #fffc}.theme-chips button:hover{transform:translateY(-2px)}.theme-chips button[aria-checked=true]{background:var(--ink);color:#fff;transform:translateY(-2px)}@media (max-width:900px){.site-nav nav{display:none}.nav-actions{margin-left:auto}.hero-inner,.feature,.feature.flip,.path-panel,.trail .stops,.safety-list,.plans,.feature-cards{grid-template-columns:1fr}.stops li:nth-child(2){margin-top:0}.trail-line{display:none}.stops li{margin-top:30px}.mock-pair{min-height:430px}.mock-lesson{width:82%}.mock-progress{width:76%}.path-panel{padding:24px}.signpost{padding:0 22px;font-size:17px}.signpost.left{padding-left:34px}.signpost.right{padding-right:34px}}@media (max-width:520px){.nav-actions .text-link{display:none}.site-nav .btn{height:40px;padding:0 12px;font-size:14px}.band{padding:56px 0}.signposts{flex-direction:column;align-items:center;gap:10px;height:132px}.signpost.left,.signpost.right{align-self:center;margin:0}}.ghost-scare{z-index:60;pointer-events:none;place-items:center;display:grid;position:fixed;inset:0;overflow:hidden}.ghost-scare .ghost-body{filter:drop-shadow(0 20px 40px #140a3273);width:min(46vmin,360px);animation:3.2s cubic-bezier(.3,.7,.3,1) both ghost-swoop;position:relative}.ghost-scare svg{width:100%;display:block}.ghost-boo{color:#ff7b1c;font:800 clamp(40px, 10vmin, 96px)/1 var(--display);letter-spacing:.02em;-webkit-text-stroke:3px #2b1a3d;paint-order:stroke fill;animation:3.2s both ghost-boo;position:absolute;top:-14%;left:50%;transform:translate(-50%)}@keyframes ghost-swoop{0%{opacity:0;transform:translate(60vw,40vh)scale(.2)rotate(25deg)}18%{opacity:1;transform:translate(0)scale(1.35)rotate(-6deg)}24%{transform:translate(0)scale(1.2)rotate(4deg)}30%,46%{transform:translate(0)scale(1.25)rotate(-2deg)}62%{opacity:1;transform:translate(-6vw,-4vh)scale(.7)rotate(-8deg)}to{opacity:0;transform:translate(-60vw,-60vh)scale(.25)rotate(-20deg)}}@keyframes ghost-boo{0%,14%{opacity:0;transform:translate(-50%)scale(.4)}20%,48%{opacity:1;transform:translate(-50%)scale(1.1)}58%,to{opacity:0;transform:translate(-50%)scale(.9)}}#world.jolt{animation:.45s ease-out jolt}@keyframes jolt{15%{transform:translate(-7px,4px)rotate(-.4deg)}35%{transform:translate(6px,-4px)rotate(.3deg)}55%{transform:translate(-3px,2px)}75%{transform:translate(2px,-1px)}}.ghost-scare.gentle .ghost-body{width:min(30vmin,220px);animation:3.2s both ghost-peek}.ghost-scare.gentle .ghost-boo{animation:none}@keyframes ghost-peek{0%,to{opacity:0;transform:translateY(20px)}20%,70%{opacity:1;transform:none}}.promo-card{z-index:30;right:calc(16px + env(safe-area-inset-right,0px));bottom:calc(88px + env(safe-area-inset-bottom,0px));color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:min(340px,100vw - 32px);animation:panel-in .35s var(--spring);background:#0e1622eb;border-radius:18px;grid-template-columns:44px 1fr;gap:6px 12px;padding:14px 16px;display:grid;position:fixed;box-shadow:0 16px 40px #00000059}.promo-card img{border-radius:12px;width:44px;height:44px}.promo-card p{margin:0;font-size:14px;line-height:1.45}.promo-card strong{font:700 16px var(--display);display:block}.promo-actions{grid-column:1/-1;justify-content:flex-end;gap:8px;display:flex}.promo-go{color:#fff;font:700 14px var(--display);background:#ef6f4c;border-radius:12px;padding:8px 14px;text-decoration:none}.promo-close{color:#fff;font:600 14px var(--display);cursor:pointer;background:#ffffff1a;border:0;border-radius:12px;padding:8px 12px}.promo-card.leaving{opacity:0;transition:opacity .3s,transform .3s;transform:translateY(10px)}#invite-own{text-decoration:none}
