@font-face{font-family:Andika;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/andika-cyrillic-ext-400-normal-VNDy5CZS.woff2) format("woff2"),url(/assets/andika-cyrillic-ext-400-normal-BJwze9_g.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Andika;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/andika-cyrillic-400-normal-DYbdP60f.woff2) format("woff2"),url(/assets/andika-cyrillic-400-normal-CIdpN1kB.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Andika;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/andika-vietnamese-400-normal-afg23LQ3.woff2) format("woff2"),url(/assets/andika-vietnamese-400-normal-Bw99zChb.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Andika;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/andika-latin-ext-400-normal-D580Nkki.woff2) format("woff2"),url(/assets/andika-latin-ext-400-normal-NXfvB_tZ.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Andika;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/andika-latin-400-normal-BTFTIZb-.woff2) format("woff2"),url(/assets/andika-latin-400-normal-BK42By1L.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Andika;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/andika-cyrillic-ext-700-normal-DvCsrHON.woff2) format("woff2"),url(/assets/andika-cyrillic-ext-700-normal-BdIUMeTx.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Andika;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/andika-cyrillic-700-normal-D404ywHU.woff2) format("woff2"),url(/assets/andika-cyrillic-700-normal-Bzg0mZT8.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Andika;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/andika-vietnamese-700-normal-CS3rZngu.woff2) format("woff2"),url(/assets/andika-vietnamese-700-normal-CZOGxJjV.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Andika;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/andika-latin-ext-700-normal-Ch3SGZaH.woff2) format("woff2"),url(/assets/andika-latin-ext-700-normal-DBt0PRsd.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Andika;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/andika-latin-700-normal-Dk95f5lc.woff2) format("woff2"),url(/assets/andika-latin-700-normal-CAUSQC6x.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-vietnamese-soft-normal-DSA2Kggd.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-ext-soft-normal-DKHvU-YN.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-soft-normal-C-lS_vzd.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--paper: #fbf6ec;--paper-2: #f3ead8;--card: #fffdf8;--ink: #23323a;--ink-soft: #5a6a70;--teal: #1f6f68;--teal-2: #4fa39a;--sun: #f2b33d;--rose: #c0577a;--line: #e4d8c0;--radius: 22px;--shadow: 0 2px 0 rgba(35, 50, 58, .06), 0 10px 26px rgba(35, 50, 58, .08);color-scheme:light}*{box-sizing:border-box}html,body{margin:0;background:var(--paper);color:var(--ink);font:18px/1.5 Andika,system-ui,sans-serif;-webkit-tap-highlight-color:transparent}body{background-image:radial-gradient(circle at 15% 10%,#fff8e6 0,transparent 40%),radial-gradient(circle at 85% 0,#e8f3ef 0,transparent 35%);min-height:100vh}h1,h2,h3,.logo,.brand{font-family:Fraunces Variable,Georgia,serif;font-weight:650;line-height:1.15;margin:.2em 0 .4em}h1{font-size:clamp(1.7rem,4vw,2.4rem)}a{color:var(--teal)}[hidden]{display:none!important}.small{font-size:.86rem}.muted{color:var(--ink-soft)}.center{text-align:center;justify-content:center}.row{display:flex;gap:12px;align-items:center}.row.wrap{flex-wrap:wrap}.page{max-width:1080px;margin:0 auto;padding:max(12px,env(safe-area-inset-top)) 18px 48px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:10px 20px;border-radius:999px;border:2px solid var(--ink);background:var(--card);color:var(--ink);font:700 1rem/1.2 Andika,sans-serif;text-decoration:none;cursor:pointer;box-shadow:0 3px 0 var(--ink);transition:transform .08s,box-shadow .08s}.btn:active{transform:translateY(2px);box-shadow:0 1px 0 var(--ink)}.btn.primary{background:var(--teal);color:#fff}.btn.ghost{border-color:var(--line);box-shadow:none;background:transparent}.btn.small{min-height:38px;padding:6px 14px;font-size:.9rem}.btn.big{min-height:60px;padding:12px 28px;font-size:1.2rem}.btn:disabled{opacity:.5;cursor:default}.link-btn{background:none;border:0;color:var(--teal);text-decoration:underline;font:inherit;cursor:pointer;padding:4px}.field{display:grid;gap:4px;margin:10px 0}.field>span,.field-label{font-weight:700;font-size:.95rem;margin:12px 0 4px}input[type=text],input[type=email],input[type=date],select{font:inherit;padding:12px 14px;border-radius:14px;border:2px solid var(--line);background:#fff;color:var(--ink);min-height:50px;width:100%}input:focus-visible,select:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid var(--sun);outline-offset:2px}.form-msg{color:#b23a3a;min-height:1.2em;margin:6px 0}.check{display:flex;gap:10px;align-items:center;margin:10px 0}.card{background:var(--card);border:2px solid var(--line);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow);margin:14px 0}details.card summary{cursor:pointer;font-weight:700}.quick-signin{display:grid;gap:12px;margin:14px 0}.provider-btn{width:100%;background:#fff}.provider-btn.apple{background:#000;color:#fff;border-color:#000}.email-code-form{display:grid;gap:8px}.code-input{letter-spacing:.3em;font-size:1.3rem;text-align:center}.code-links{justify-content:space-between}.mascot img{width:100%;height:auto;display:block;-webkit-user-select:none;user-select:none}.mascot-fallback{font-size:4rem}.mascot.hopping{animation:hop .9s ease-out}@keyframes hop{0%{transform:translateY(30px) scale(.9);opacity:0}50%{transform:translateY(-18px);opacity:1}to{transform:none}}.front-head{text-align:center;padding:18px 0 4px}.logo{font-size:clamp(2.6rem,8vw,4rem);color:var(--teal);margin:0;letter-spacing:-.02em}.tagline{margin:0;font-size:1.15rem;color:var(--ink-soft)}.front-layout{display:grid;grid-template-columns:1.3fr 1fr;gap:28px;align-items:start;margin-top:18px}.front-intro{position:relative}.front-mascot{width:190px;float:right;margin:-20px 0 0 10px}.front-lede{font-family:Fraunces Variable,serif;font-size:1.6rem;font-weight:600;margin:8px 0}.front-worlds{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:10px;clear:both}.front-worlds li{display:flex;gap:14px;align-items:center;background:var(--card);border-radius:18px;padding:10px 14px;border-left:8px solid var(--c);box-shadow:var(--shadow)}.front-worlds small{color:var(--ink-soft)}.world-pic{font-size:2.2rem;line-height:1;display:inline-flex}.world-pic .emoji-pic{width:2.6rem;height:2.6rem}.signin-card{position:sticky;top:16px}.front-foot{margin-top:30px;text-align:center}.legal-links{display:flex;gap:18px;justify-content:center}@media(max-width:820px){.front-layout{grid-template-columns:1fr}.front-mascot{width:140px}.signin-card{position:static;order:-1}}.topbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 0 10px}.brand{font-size:1.5rem;color:var(--teal);margin:0}.who{display:inline-flex;align-items:center;gap:8px;font-weight:700}.home-hero,.map-hero{display:flex;align-items:center;justify-content:center;gap:12px;text-align:center;flex-wrap:wrap}.home-mascot,.map-mascot{width:150px;cursor:pointer}.small-mascot{width:110px;margin:0 auto}.thinkers{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:18px;margin-top:18px}.thinker{width:100%;border:3px solid var(--c, var(--line));background:var(--card);border-radius:28px;padding:18px 10px;display:grid;justify-items:center;gap:6px;cursor:pointer;font:inherit;color:var(--ink);box-shadow:0 5px 0 var(--c, var(--line))}.thinker:active{transform:translateY(3px);box-shadow:0 2px 0 var(--c, var(--line))}.thinker.add{border-style:dashed;--c: #b9ab8d}.thinker-initial{width:72px;height:72px;border-radius:50%;background:var(--c, var(--teal-2));color:#fff;display:grid;place-items:center;font:700 2.2rem Fraunces Variable,serif}.thinker-initial.tiny{width:32px;height:32px;font-size:1rem}.thinker-name{font-weight:700;font-size:1.25rem}.thinker-stars{color:#b07d10;font-weight:700}.new-thinker{max-width:560px;margin:10px auto;text-align:center}.new-thinker .field{text-align:left}.name-input{font-size:1.3rem!important;text-align:center}.band-pick{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.band{border:3px solid var(--line);background:#fff;border-radius:18px;padding:14px 6px;display:grid;gap:2px;cursor:pointer;font:inherit;color:var(--ink)}.band strong{font-size:1.5rem;font-family:Fraunces Variable,serif}.band[aria-checked=true]{border-color:var(--teal);background:#e6f3f0}.swatches{display:flex;gap:12px;justify-content:center;margin-bottom:18px}.swatch{width:46px;height:46px;border-radius:50%;border:4px solid #fff;background:var(--c);box-shadow:0 0 0 2px var(--line);cursor:pointer}.swatch[aria-checked=true]{box-shadow:0 0 0 4px var(--ink)}.new-thinker .row{justify-content:center}.worlds{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:18px;margin-top:10px}.world{display:grid;justify-items:center;gap:4px;padding:22px 12px 18px;border-radius:30px;background:var(--card);border:3px solid var(--c);box-shadow:0 6px 0 var(--c);text-decoration:none;color:var(--ink);text-align:center}.world:active{transform:translateY(3px);box-shadow:0 3px 0 var(--c)}.world .world-pic{font-size:4rem}.world .world-pic .emoji-pic,.world-pic.big .emoji-pic{width:96px;height:96px}.world-title{font:650 1.3rem Fraunces Variable,serif}.world-count{color:var(--ink-soft);font-size:.9rem}.world-head{text-align:center}.world-head h1{color:var(--c)}.activities{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}.activity{display:grid;justify-items:center;gap:6px;padding:18px 12px;background:var(--card);border-radius:24px;border:2px solid var(--line);box-shadow:var(--shadow);text-decoration:none;color:var(--ink);text-align:center;height:100%}.activity-pic{font-size:3rem}.activity-pic .emoji-pic{width:76px;height:76px}.activity-title{font-weight:700;font-size:1.1rem}.activity.locked{filter:saturate(.4);opacity:.85}.lock{font-size:.85rem;color:var(--ink-soft)}.star-row{display:inline-flex;gap:2px}.star-row img{width:24px;height:24px;filter:grayscale(1) opacity(.3)}.star-row img.lit{filter:none}.star-row.big-stars img{width:64px;height:64px}.play-title{text-align:center;font-size:1.4rem;margin:0;color:var(--c)}.dots{display:flex;gap:8px;justify-content:center;list-style:none;padding:0;margin:8px 0}.dots li{width:12px;height:12px;border-radius:50%;background:var(--line)}.dots li.done{background:var(--c)}.dots li.now{background:var(--sun);transform:scale(1.3)}.stage{display:flex;align-items:flex-end;gap:10px;max-width:760px;margin:0 auto}.stage-mascot{width:120px;flex:none}.bubble-wrap{flex:1;display:flex;align-items:center;gap:8px;background:#fff;border:2px solid var(--ink);border-radius:24px 24px 24px 6px;padding:12px 14px 12px 18px;margin-bottom:40px;box-shadow:0 3px 0 var(--ink);min-height:70px}.bubble{margin:0;flex:1;font-size:1.2rem;line-height:1.4}.icon-btn{min-width:48px;padding:6px;font-size:1.3rem}.board{max-width:900px;margin:8px auto 0;text-align:center}.scene{font-size:5rem;line-height:1;margin:6px 0 12px}.scene .emoji-pic{width:128px;height:128px}.cards{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;margin:10px 0}.card-btn{flex:1 1 150px;max-width:210px;min-height:150px;display:grid;justify-items:center;align-content:center;gap:6px;padding:14px 10px;background:var(--card);border:3px solid var(--line);border-radius:24px;box-shadow:0 5px 0 var(--line);cursor:pointer;font:inherit;color:var(--ink);transition:transform .1s}.card-btn:active{transform:translateY(3px)}.card-pic{font-size:3.4rem;line-height:1}.card-pic .emoji-pic{width:84px;height:84px}.card-label{font-weight:700;font-size:1.05rem}.card-btn.reason{min-height:130px}.card-btn.reason .card-pic .emoji-pic{width:60px;height:60px}.card-btn.chosen,.card-btn.right{border-color:var(--teal);background:#e6f3f0;box-shadow:0 5px 0 var(--teal)}.card-btn:disabled:not(.chosen):not(.right){opacity:.4;cursor:default}.card-btn.glow{animation:glow 1.2s ease-in-out infinite;border-color:var(--sun)}@keyframes glow{50%{box-shadow:0 0 0 8px #f2b33d73}}.step-title{font-size:1.3rem;margin-top:18px}.other{display:flex;gap:12px;align-items:center;text-align:left;background:#f3eefb;border-radius:20px;padding:12px 16px;margin:14px auto;max-width:640px}.other p{margin:0}.other-pic{font-size:2rem}.other-pic .emoji-pic{width:48px;height:48px}.next-row{margin:18px 0}.next-btn{animation:nudge 1.6s ease-in-out infinite 1s}@keyframes nudge{50%{transform:translate(6px)}}.steps{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin:10px 0}.step{width:92px;height:92px;display:grid;place-items:center;font-size:3rem;background:var(--card);border-radius:20px;border:2px solid var(--line)}.step .emoji-pic{width:70px;height:70px}.step.slot{border:3px dashed var(--c)}.step.slot.filled{border-style:solid;background:#e6f3f0}.clues{text-align:left;max-width:560px;margin:10px auto;font-size:1.1rem}.clues li{margin:6px 0}.lab{display:flex;justify-content:center;align-items:center;gap:24px}.robot{font-size:4.5rem}.robot .emoji-pic{width:110px;height:110px}.robot.talking{animation:talk .4s ease-in-out infinite alternate}@keyframes talk{to{transform:rotate(-4deg) scale(1.04)}}.bins{display:grid;grid-template-columns:1fr 1fr;gap:14px;max-width:640px;margin:12px auto}.bin{background:var(--paper-2);border-radius:20px;padding:10px;min-height:110px}.bin-pic .emoji-pic{width:36px;height:36px}.bin-label{font-weight:700;display:block}.bin-items{display:flex;flex-wrap:wrap;gap:4px;justify-content:center;font-size:1.8rem}.bin-items .emoji-pic{width:42px;height:42px}.card-btn.bin-btn,.card-btn.judge{min-height:110px}.story-page{max-width:680px;margin:0 auto;background:var(--card);border-radius:28px;padding:18px 24px;border:2px solid var(--line);box-shadow:var(--shadow)}.story-pic .emoji-pic{width:160px;height:160px}.story-text{font-size:1.35rem;line-height:1.55}.end{display:grid;justify-items:center;gap:10px;padding:10px 0 30px}.end-mascot{width:170px}.emoji-pic{width:1.2em;height:1.2em;vertical-align:middle;object-fit:contain}@media(max-width:560px){.stage-mascot{width:84px}.bubble{font-size:1.05rem}.card-btn{flex-basis:40%;min-height:120px}.card-pic .emoji-pic,.step{width:64px;height:64px}.step .emoji-pic{width:48px;height:48px}}.tabs{display:flex;gap:6px;flex-wrap:wrap;border-bottom:2px solid var(--line);margin-bottom:12px}.tab{padding:10px 16px;text-decoration:none;color:var(--ink);border-radius:14px 14px 0 0;font-weight:700}.tab.on{background:var(--card);border:2px solid var(--line);border-bottom-color:var(--card);margin-bottom:-2px}.thinker-row{display:flex;flex-wrap:wrap;align-items:end;gap:12px}.thinker-row .field{flex:1 1 180px;margin:0}.world-bars{list-style:none;padding:0;display:grid;gap:6px}.world-bars li{display:grid;grid-template-columns:160px 1fr 30px;gap:8px;align-items:center}.world-bars .bar{height:12px;border-radius:6px;background:linear-gradient(90deg,var(--c) var(--n),var(--paper-2) var(--n))}.results{width:100%;border-collapse:collapse;font-size:.92rem}.results th,.results td{text-align:left;padding:8px 6px;border-bottom:1px solid var(--line);vertical-align:middle}.results select,.results input{min-height:38px;padding:4px 8px;width:auto}.approach li{margin:6px 0}.stat-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px}.stat{background:var(--card);border:2px solid var(--line);border-radius:16px;padding:12px;display:grid}.stat strong{font-size:1.6rem;font-family:Fraunces Variable,serif}.badge{color:var(--rose);font-weight:700}.admin .panel{overflow-x:auto}dialog.gate{border:0;border-radius:var(--radius);padding:24px;max-width:420px;width:calc(100% - 32px);text-align:center;box-shadow:0 20px 60px #00000040}dialog.gate::backdrop{background:#23323a80}.gate-form{display:grid;gap:10px;margin:12px 0}.gate-hold{position:relative;overflow:hidden;margin:12px 0}.gate-hold.holding:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#1f6f6840;transform-origin:left;animation:fill 2s linear forwards}@keyframes fill{0%{transform:scaleX(0)}}.confetti-layer{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:50;overflow:hidden}.confetti{position:absolute;width:10px;height:14px;border-radius:3px}.confetti.star-bit{width:auto;height:auto;font-size:22px}.burst-star{position:absolute;width:30px;height:30px}.loading{display:flex;gap:10px;justify-content:center;padding:30px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}[tabindex="-1"]:focus{outline:none}
