@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(./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(./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(./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(./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(./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{--header-h:49px;--control-h:34px;--control-h-sm:28px;--radius:8px;--main-pad:clamp(16px, 4vw, 64px);--bg:#fff;--fg:#4b4b4b;--muted:#777;--panel:#f7f7f7;--line:#e5e5e5;--accent:#58cc02;--blue:#1cb0f6;--outline:color-mix(in srgb, var(--fg) 55%, var(--bg));--accent-fg:#fff;--current:#fff1b8;--follow:#c26400;--error:#ff4b4b;--good-bg:#d7ffb8;--bad-bg:#ffdfe0;--gold:#ffc800;--flame:#ff9600;--pop-fg:#fff;--blob:30px 24px 28px 26px / 24px 30px 26px 28px;--btn:#4b4b4b;--btn-fg:#fff;--sticker:#4b4b4b;--s0:#ddf4ff;--s1:#ffdfe0;--s2:#ffe9c2;--s3:#fff3b8;--s4:#d7ffb8;--s5:#c9f2e0;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%}html[data-text=large]{font-size:118%}body{background:var(--bg);color:var(--fg);margin:0;font:1rem/1.5 Nunito Variable,Nunito,ui-rounded,-apple-system,BlinkMacSystemFont,system-ui,sans-serif}h1{margin:0 0 4px;font-size:1.6rem;font-weight:800}h2{margin:24px 0 8px;font-size:1.1rem;font-weight:800}.muted{color:var(--muted)}.small{font-size:.88rem}.center{text-align:center}button,a.button{--edge:var(--btn);box-sizing:border-box;border:2px solid var(--edge);border-radius:var(--blob);min-height:44px;font:inherit;letter-spacing:.01em;cursor:pointer;background:var(--btn);color:var(--btn-fg);border-bottom-width:2px;justify-content:center;align-items:center;gap:8px;padding:0 20px;font-weight:800;line-height:1.2;transition:transform 80ms,filter .12s;display:inline-flex}button:hover:not(:disabled),a.button:hover{filter:brightness(1.07)}button:active:not(:disabled),a.button:active{transform:scale(.96)}button:disabled{opacity:.45;cursor:default}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid color-mix(in srgb, var(--accent) 55%, transparent);outline-offset:2px}button.secondary,a.button.secondary{--edge:var(--outline);background:var(--bg);color:var(--fg)}button.secondary:hover:not(:disabled),a.button.secondary:hover{background:var(--panel);filter:none}button.danger{--edge:#b3261e;background:var(--error);color:#fff}button.quiet{text-transform:none;color:var(--fg);background:0 0;border-color:#0000;border-bottom-width:2px;font-weight:600}button.quiet:hover:not(:disabled){background:var(--panel);filter:none}button.quiet:active:not(:disabled){transform:none}button.quiet[aria-pressed=true]{background:color-mix(in srgb, var(--accent) 18%, transparent);color:var(--accent)}button.small,a.button.small{border-bottom-width:2px;min-height:40px;padding:0 12px;font-size:.88rem}button.block,a.button.block{text-transform:none;width:100%;min-height:54px;font-size:1.05rem}input,select{font:inherit;border:2px solid var(--line);background:var(--bg);min-height:44px;color:var(--fg);border-radius:12px;padding:0 12px}input[type=range]{min-height:0;padding:0}.app{border-inline:1px solid var(--line);max-width:560px;min-height:100dvh;margin:0 auto;padding:0 16px 104px}.topbar{z-index:30;padding:calc(12px + env(safe-area-inset-top)) 0 12px;background:var(--bg);justify-content:center;align-items:center;gap:10px;display:flex;position:sticky;top:0}.pill{white-space:nowrap;background:var(--panel);border:2px solid var(--line);border-radius:999px;align-items:center;gap:6px;min-height:44px;padding:0 14px;font-weight:800;display:inline-flex}button.pill{background:var(--panel);min-height:44px;color:var(--fg);--edge:var(--outline);border-bottom-width:2px}.nav{z-index:40;width:min(560px,100%);padding:8px 16px calc(8px + env(safe-area-inset-bottom));background:var(--bg);border-top:2px solid var(--line);justify-content:center;gap:8px;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.nav button{min-height:56px;color:var(--muted);background:0 0;border:2px solid #0000;border-radius:14px;flex-direction:column;flex:1;gap:0;padding:4px 8px;font-size:.8rem;font-weight:800}.nav button .ico{font-size:1.5rem;line-height:1;display:inline-flex}.nav button[aria-current=page]{background:color-mix(in srgb, var(--blue) 25%, transparent);border-color:var(--blue);color:var(--fg)}.nav button:active:not(:disabled){border-bottom-width:2px;transform:none}.page{padding:8px 0 16px}.card{background:var(--bg);border:2px solid var(--line);border-bottom-width:2px;border-radius:18px;margin:12px 0;padding:16px}.panel{background:var(--panel);border:2px solid var(--line);border-radius:14px;margin:12px 0;padding:14px}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.row.between{justify-content:space-between}.row.center{justify-content:center}.seg{justify-content:center;gap:6px;margin:4px 0 12px;display:flex}.notice{border-left:4px solid var(--follow);background:var(--panel);border-radius:0 12px 12px 0;margin:8px 0;padding:8px 12px;font-size:.92rem}.scrim{z-index:100;background:#00000080;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal{background:var(--bg);border:2px solid var(--line);border-radius:20px;gap:14px;width:min(420px,100%);padding:20px;display:grid}.modal h2{margin:0}.modal label{color:var(--muted);gap:4px;font-size:.9rem;font-weight:600;display:grid}.goal{align-items:center;gap:16px;display:flex}.ring{flex:none;width:64px;height:64px;position:relative}.ring svg{transform:rotate(-90deg)}.ring span{place-items:center;font-size:.85rem;font-weight:800;display:grid;position:absolute;inset:0}.levels{justify-content:center;gap:10px;padding:10px 6px 12px;display:flex}.node-wrap{justify-items:center;gap:4px;display:grid}.node{border-width:2px;border-radius:50%;width:58px;height:58px;padding:0;font-size:1.3rem;line-height:1.1}.node.sel{box-shadow:0 0 0 4px color-mix(in srgb, var(--accent) 30%, transparent);animation:1.4s ease-in-out infinite bob}.node.locked{--edge:var(--outline);background:var(--panel);color:var(--muted)}.stars{letter-spacing:1px;color:var(--accent);font-size:.85rem}.stars .off{color:var(--line)}@keyframes bob{50%{transform:translateY(-5px)}}.start-card .toggle{justify-content:center;align-items:center;gap:8px;margin-top:12px;font-weight:600;display:flex}.toggle input{width:22px;height:22px;min-height:0;accent-color:var(--accent)}.lesson{flex-direction:column;max-width:560px;min-height:100dvh;margin:0 auto;padding:0 16px 200px;display:flex}.lesson-top{padding:calc(16px + env(safe-area-inset-top)) 0 16px;align-items:center;gap:12px;display:flex}.lesson-top .close{flex:none;width:44px;min-height:44px;padding:0;font-size:1.2rem}.bar{background:var(--line);border-radius:999px;flex:1;height:16px;overflow:hidden}.bar>div{background:var(--accent);border-radius:999px;min-width:16px;height:100%;transition:width .3s;position:relative}.bar>div:after{content:"";background:#ffffff59;border-radius:4px;height:4px;position:absolute;top:4px;left:8px;right:8px}.combo{color:var(--flame);text-align:right;min-width:56px;font-weight:800}.lesson-body{flex:1;align-content:start;gap:18px;padding-top:8px;display:grid}.prompt{text-align:center;margin:8px 0 0;font-size:1.4rem;font-weight:800}.speaker{justify-content:center;align-items:center;gap:12px;display:flex}.speaker .big{--edge:var(--blue);background:var(--blue);width:112px;height:112px;color:var(--pop-fg);border-radius:28px;padding:0;font-size:2.6rem}.speaker .turtle{border-radius:16px;width:52px;height:52px;padding:0;font-size:1.5rem}.choices{grid-template-columns:1fr 1fr;gap:12px;display:grid}.choice{flex-direction:column;gap:0;min-height:72px;font-size:1.5rem;position:relative}.choice .key{opacity:.75;font-size:.8rem;font-weight:800;position:absolute;top:6px;left:10px}.choice.picked{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 16%, var(--bg));color:var(--accent);--edge:var(--accent)}.choice.right{background:var(--good-bg);--edge:#58a700;color:#1e3a05}.choice.wrong{background:var(--bad-bg);--edge:#ea2b2b;color:#5a1215}.type-box{text-align:center;border-radius:16px;width:100%;min-height:64px;font-size:1.6rem}.lesson-footer{z-index:50;background:var(--bg);border-top:2px solid var(--line);padding:16px 16px calc(16px + env(safe-area-inset-bottom));transition:background-color .2s;position:fixed;bottom:0;left:0;right:0}.lesson-footer .inner{gap:12px;max-width:560px;margin:0 auto;display:grid}.lesson-footer.ok{background:var(--good-bg);color:#1e3a05;border-color:#58a700}.lesson-footer.bad{background:var(--bad-bg);color:#5a1215;border-color:#ea2b2b}.fb strong{font-size:1.25rem;display:block}.fb .ans{font-size:1.1rem;font-weight:800}.fb .sub{opacity:.8;font-size:.9rem}.fb-actions{gap:10px;display:flex}.fb-actions button{text-transform:none;flex:1;min-height:54px}.pop-in{animation:.25s ease-out pop}@keyframes pop{0%{opacity:0;transform:translateY(12px)}}.answer{gap:12px;display:grid}.answer .seg{margin:0}.answer-display{border:2px solid var(--line);background:var(--panel);border-radius:16px;place-items:center;min-height:72px;font-size:2.4rem;font-weight:800;display:grid}.keypad{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.keypad .key{min-height:58px;padding:0;font-size:1.5rem}.answer-row{border:2px solid var(--line);background:var(--panel);border-radius:16px;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;min-height:72px;padding:10px;display:flex}.bank{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.chip{min-height:48px;padding:0 16px;font-size:1.1rem}.chip.used{opacity:.25}.chip{position:relative}.chip .k{display:none}.answer-display.spell{letter-spacing:.06em;overflow-wrap:anywhere;text-align:center;padding:8px 12px;font-size:1.8rem}.letters{gap:6px;display:grid}.letter-row{justify-content:center;gap:5px;display:flex}.letter{text-transform:none;flex:1;min-width:0;min-height:48px;padding:0;font-size:1.25rem}.letter.wide{flex:1.6}.kbd-hint{text-align:center;opacity:.65;margin:4px 0 0;font-size:.85rem;display:none}@media (hover:hover) and (pointer:fine){.kbd-hint{display:block}.chip .k{opacity:.6;font-size:.7rem;font-weight:800;display:inline;position:absolute;top:2px;left:8px}}.match-grid{grid-template-columns:1fr 1fr;gap:12px 14px;display:grid}.match-grid .col{align-content:start;gap:12px;display:grid}.match-grid button{background:var(--bg);min-height:64px;color:var(--fg);--edge:var(--outline);font-size:1.1rem}.match-grid button.num{font-size:1.6rem}.match-grid button.sel{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 16%, var(--bg));--edge:var(--accent);color:var(--accent)}.match-grid button.wrong{color:#5a1215;background:var(--bad-bg);--edge:#ea2b2b;animation:.3s shake}.match-grid button.done{visibility:hidden}@keyframes shake{25%{transform:translate(-5px)}75%{transform:translate(5px)}}.flashcard{background:var(--panel);border:2px solid var(--line);text-align:center;border-radius:20px;align-content:center;gap:16px;min-height:280px;padding:24px 16px;display:grid}.flashcard .front{justify-items:center;display:grid}.flashcard .back{border-top:2px solid var(--line);justify-items:center;gap:6px;padding-top:16px;display:grid}.flashcard .digits{margin:0}.flashcard .play{--edge:var(--blue);background:var(--blue);width:96px;height:96px;color:var(--pop-fg);border-radius:24px;padding:0;font-size:2.2rem}.results{text-align:center;padding-top:24px;position:relative;overflow:hidden}.results .trophy{justify-content:center;align-items:flex-end;gap:8px;animation:.5s ease-out pop;display:flex}.results .xp-big{color:var(--fg);font-size:3rem;font-weight:800}.result-tiles{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;margin:18px 0;display:grid}.result-tiles .tile{border:2px solid var(--line);background:var(--panel);border-radius:14px;padding:10px}.result-tiles .tile b{font-size:1.5rem;display:block}.confetti{opacity:.9;border-radius:2px;width:10px;height:16px;animation:2.4s linear forwards fall;position:absolute;top:-20px}@keyframes fall{to{transform:translateY(110vh)rotate(540deg)}}.digits{margin:8px 0 4px;font-size:3rem;font-weight:800;line-height:1.1}.big-word{font-size:1.5rem;font-weight:800}.parts{flex-wrap:wrap;align-items:center;gap:6px;margin:8px 0;display:flex}.part{color:#2b2b2b;border-radius:8px;padding:4px 10px;font-size:1.3rem;font-weight:800}.part.p0{background:var(--s0)}.part.p1{background:var(--s3)}.part.p2{background:var(--s5)}.part.p3{background:var(--s2)}.gap{width:14px}.notes{margin:8px 0 0;padding-left:20px}.time-hero{flex-wrap:wrap;align-items:center;gap:20px;margin:16px 0 0;display:flex}.time-hero .digits{margin:0}.stat-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.stat-grid .panel{text-align:center;margin:0}.stat-grid b{font-size:1.8rem;display:block}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:2px solid var(--line);padding:6px 8px}th{color:var(--muted);font-size:.88rem;font-weight:600}.meter{background:var(--line);border-radius:5px;min-width:80px;height:10px;overflow:hidden}.meter>div{background:var(--accent);height:100%}.tiles{grid-template-columns:1fr 1fr;gap:10px;margin-top:12px;display:grid}.tile-btn{text-align:left;justify-content:flex-start;align-items:center;min-height:76px;padding:8px 12px;font-size:1.05rem;line-height:1.15}.tile-btn .ico{font-size:1.6rem}.tile-btn small{opacity:.9;letter-spacing:0;margin-top:2px;font-size:.75rem;font-weight:500;display:block}.tile-btn:nth-child(odd):last-child{grid-column:1/-1}.tile-btn:nth-child(2n){--edge:var(--blue);background:var(--blue);color:var(--pop-fg)}.tile-btn.weak{--edge:#b3261e;color:#fff;background:#d92d2d}.next{border-color:var(--accent)}.toast{z-index:35;background:var(--blue);color:var(--pop-fg);border:2px solid var(--line);text-align:center;border-radius:14px;margin:0 0 8px;padding:10px 14px;font-weight:700;animation:.25s ease-out pop;position:sticky;top:64px}.q-in{gap:18px;animation:.22s ease-out pop;display:grid}.prompt-card{text-align:center;border:2px solid var(--line);background:var(--panel);overflow-wrap:anywhere;border-radius:20px;padding:28px 12px;font-size:2.2rem;font-weight:800}.compare{gap:8px;margin-top:10px;display:flex}.compare button{flex:1}.examples{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.examples.one{grid-template-columns:1fr}.example{flex-direction:column;gap:0;min-height:64px;font-weight:600}.example b{font-size:1.3rem}.example span{opacity:.8;overflow-wrap:anywhere;font-size:.85rem;font-weight:500}.example.wide{text-align:left;align-items:flex-start;padding:8px 14px}.screen{animation:.2s ease-out fade}@keyframes fade{0%{opacity:0}}.week{grid-template-columns:repeat(7,1fr);align-items:end;gap:8px;display:grid}.week .day{justify-items:center;gap:2px;display:grid}.week .col-bar{background:var(--panel);border:2px solid var(--line);border-radius:10px;align-items:flex-end;width:100%;max-width:36px;height:90px;display:flex;overflow:hidden}.week .col-bar>div{background:var(--accent);border-radius:6px 6px 0 0;width:100%;min-height:0}.week .col-bar>div.hit{background:var(--blue)}.badges{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.badge{text-align:center;border:2px solid var(--line);background:var(--panel);border-radius:16px;justify-items:center;gap:2px;padding:12px 8px;display:grid}.badge .ico{font-size:2rem}.badge.locked{opacity:.55}.modal{max-height:92dvh;overflow-y:auto}.modal .check{color:var(--fg);align-items:center;gap:10px;font-size:1rem;font-weight:600;display:flex}.modal .check input{width:24px;height:24px;min-height:0;accent-color:var(--accent)}.button-like{border:2px solid var(--line);cursor:pointer;min-height:40px;color:var(--fg);background:var(--bg);border-bottom-width:2px;border-radius:14px;justify-content:center;align-items:center;padding:0 12px;font-size:.88rem;font-weight:800;display:inline-flex}:root{--nav-h:76px}.study-page{padding-bottom:190px}.study-card{text-align:center;justify-items:center;gap:6px;padding:4px 0;display:grid}.study-card .digits{margin:0}.digits-btn{color:var(--fg);border:0;border-bottom:3px dashed var(--line);letter-spacing:0;background:0 0;border-radius:12px;min-height:0;padding:0 12px;font-size:3.4rem;font-weight:800;line-height:1.15}.digits-btn:active:not(:disabled){border-bottom-width:2px;transform:none}.study-card .parts{justify-content:center}.study-card.dense .part{padding:2px 7px;font-size:.95rem}.study-card.dense .parts{gap:4px;margin:2px 0}.study-card.dense .big-word{font-size:1.15rem}.study-card.dense .pron{font-size:.8rem}.digits-btn.long{font-size:2.4rem}.study-card .time-hero{flex-wrap:nowrap;justify-content:center;gap:14px;margin:0}.study-card .time-hero .digits{font-size:2.6rem}.study-card .big-word{overflow-wrap:anywhere;font-size:1.6rem}.pron{color:var(--fg)}.formal{border-top:2px solid var(--line);width:100%;padding-top:8px}.tips{text-align:left;background:var(--panel);border:2px solid var(--line);border-radius:14px;align-items:center;gap:6px;width:100%;margin-top:2px;padding:6px 12px;display:flex}.tips .notes{flex:1;margin:0;padding-left:18px;font-size:.9rem;line-height:1.35}.tips .notes.clamp li{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.tips button{flex:none;min-height:40px}.study-dock{z-index:39;width:min(560px,100%);left:50%;bottom:calc(var(--nav-h) + env(safe-area-inset-bottom));background:var(--bg);border-top:2px solid var(--line);gap:8px;padding:8px 12px 10px;display:grid;position:fixed;transform:translate(-50%)}.strip{scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:8px;padding:2px 2px 4px;display:flex;overflow-x:auto}.strip::-webkit-scrollbar{display:none}.chip-btn{border-bottom-width:2px;flex:none;min-height:44px;padding:0 14px;font-size:.95rem}.chip-btn[aria-pressed=true]{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 16%, var(--bg));color:var(--accent);--edge:var(--accent)}.chip-btn.pick{cursor:pointer;border:2px solid var(--line);background:var(--bg);color:var(--fg);white-space:nowrap;border-bottom-width:2px;border-radius:14px;justify-content:center;align-items:center;gap:6px;font-weight:800;display:inline-flex;position:relative}.chip-btn.pick input{opacity:0;cursor:pointer;border:0;width:100%;height:100%;min-height:0;padding:0;position:absolute;inset:0}.controls{grid-template-columns:56px 56px 1fr 1.5fr;gap:8px;display:grid}.controls button{text-transform:none;min-height:60px;padding:0;font-size:1.1rem}.controls .prev,.controls .slow{font-size:1.3rem}.controls .play{--edge:var(--blue);background:var(--blue);color:var(--pop-fg);font-size:1.6rem}.controls .next{font-size:1.2rem}.sheet-scrim{align-items:end;padding:0}.sheet{background:var(--bg);border:2px solid var(--line);width:min(560px,100%);padding:16px 16px calc(16px + env(safe-area-inset-bottom));border-bottom:0;border-radius:22px 22px 0 0;gap:12px;animation:.2s ease-out rise;display:grid}@keyframes rise{0%{opacity:0;transform:translateY(40px)}}a.button{--edge:color-mix(in srgb, var(--accent) 65%, #000);text-decoration:none}a.button.secondary{--edge:var(--outline)}.support{text-align:center}@media (height<=520px){.speaker .big{width:72px;height:72px;font-size:1.8rem}.keypad .key{min-height:44px}.answer-display{min-height:52px;font-size:1.8rem}.lesson{padding-bottom:170px}:root{--nav-h:64px}.nav button{min-height:44px}.study-card .digits,.digits-btn{font-size:2.2rem}.controls button{min-height:48px}.nav button .ico{font-size:1.2rem}}@media (width<=400px){.topbar{gap:5px}.pill,button.pill{gap:3px;padding:0 8px;font-size:.88rem}}@media (width<=360px){.goal-pill{display:none}}@media (width<=480px){.digits{font-size:2.4rem}.app{border-inline:0}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.icon{vertical-align:-.2em;flex:none;width:1.15em;height:1.15em;line-height:0;display:inline-block}.icon svg{display:block}.pill .icon{vertical-align:-.25em}.tile-btn .ico,.badge .ico,.nav .ico{display:inline-flex}.hero{background:color-mix(in srgb, var(--blue) 12%, var(--bg));border-color:color-mix(in srgb, var(--blue) 40%, var(--line));padding:8px 16px}.goose-says{align-items:center;gap:4px;display:flex}.goose-says svg{flex:none}.bubble{border:2px solid var(--line);background:var(--bg);border-bottom-width:2px;border-radius:18px;flex:1;padding:10px 14px;font-weight:800;position:relative}.bubble:before{content:"";background:var(--bg);border-left:2px solid var(--line);border-bottom:2px solid var(--line);width:14px;height:14px;position:absolute;top:50%;left:-9px;transform:translateY(-50%)rotate(45deg)}.goose-bob{transform-origin:50% 100%;animation:2.4s ease-in-out infinite waddle}@keyframes waddle{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)translateY(-3px)}}.speaker .big .icon,.flashcard .play .icon{width:1.5em;height:1.5em}.landing{max-width:560px;min-height:100dvh;padding:calc(24px + env(safe-area-inset-top)) 20px calc(20px + env(safe-area-inset-bottom));text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:20px;margin:0 auto;display:flex}.land-top{justify-items:center;gap:6px;width:100%;display:grid}.tagline{max-width:27ch;margin:6px 0 0;font-size:1.2rem;font-weight:800}.land-stats{color:var(--muted);margin:0;font-size:.95rem;font-weight:800}.land-pills{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.land-pill{min-height:46px;padding:0 18px}.land-play{background:var(--accent);width:min(320px,100%);min-height:76px;color:var(--accent-fg);border:3px solid var(--btn);font-size:1.8rem}.land-note{max-width:34ch;margin:4px 0 0;font-size:.85rem;font-weight:600}button.link{min-height:0;color:var(--fg);font:inherit;text-transform:none;letter-spacing:0;background:0 0;border:0;border-radius:4px;padding:0;font-weight:800;text-decoration:underline;display:inline}button.link:active:not(:disabled){transform:none}.credits li{margin-bottom:6px}.topbar .logo{padding:0 8px}@media (width<=420px){.goal-pill{display:none}}.logo-img{width:min(100%,420px);height:auto;margin:0 auto;animation:.5s ease-out pop;display:block}html[data-mode=dark] .logo-img{filter:drop-shadow(0 0 2px #ffffffb3)drop-shadow(0 0 6px #ffffff40)}.node{--edge:var(--btn)}.node.locked{--edge:var(--line)}
