@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")}@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")}@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")}@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")}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/baloo-2-latin-700-normal-CqTg7A15.woff2)format("woff2"),url(/assets/baloo-2-latin-700-normal-Ld3Zm3l2.woff)format("woff")}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/baloo-2-vietnamese-700-normal-h4tlcePq.woff2)format("woff2"),url(/assets/baloo-2-vietnamese-700-normal-DoF59Mjc.woff)format("woff")}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:800;src:url(/assets/baloo-2-latin-800-normal-BbF3Etk1.woff2)format("woff2"),url(/assets/baloo-2-latin-800-normal-B8BXfZF7.woff)format("woff")}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:800;src:url(/assets/baloo-2-vietnamese-800-normal-ConLnEgt.woff2)format("woff2"),url(/assets/baloo-2-vietnamese-800-normal-GQACmpuv.woff)format("woff")}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-latin-700-normal-Dort48En.woff2)format("woff2"),url(/assets/nunito-latin-700-normal-OcDqTBcA.woff)format("woff")}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-vietnamese-700-normal-Ch8EUCfz.woff2)format("woff2"),url(/assets/nunito-vietnamese-700-normal-C9SQsXvj.woff)format("woff")}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-latin-800-normal-Dz8SOQK_.woff2)format("woff2"),url(/assets/nunito-latin-800-normal-D-J0wlBY.woff)format("woff")}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-vietnamese-800-normal-D_CZYdm9.woff2)format("woff2"),url(/assets/nunito-vietnamese-800-normal-Dz0hZPb5.woff)format("woff")}:root{--bg:#fff8ee;--ink:#3a2e2a;--ink-2:#4a3d38;--muted:#6b5a52;--line:#e8d9c6;--line-2:#f1e6d8;--card:#fff;--good:#1e7f4c;--good-tint:#ddf5e7;--good-line:#3dbe7a;--warn-tint:#fff1c7;--warn-line:#ffc83d;--font-glyph:"Andika", system-ui, sans-serif;--font-title:"Baloo 2", system-ui, sans-serif;--font-ui:"Nunito", system-ui, sans-serif;--r-card:24px;--tap:72px}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);margin:0}body{font-family:var(--font-ui);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;overscroll-behavior:none;touch-action:manipulation;font-weight:700}button,a{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.4}:focus-visible{outline-offset:2px;outline:3px solid #1f64b8}.muted{color:var(--muted)}.small{font-size:13px}.screen{max-width:1100px;min-height:100dvh;padding:max(20px, env(safe-area-inset-top)) 20px max(20px, env(safe-area-inset-bottom));flex-direction:column;gap:16px;margin:0 auto;display:flex}.screen-header{align-items:center;gap:12px;display:flex}.screen-title{font-family:var(--font-title);flex:1;margin:0;font-size:28px;font-weight:800;line-height:1}.round-btn{border:2px solid var(--line);background:var(--card);border-radius:999px;flex:none;justify-content:center;align-items:center;width:52px;height:52px;text-decoration:none;display:inline-flex;position:relative;overflow:hidden}.round-btn.is-holding:after{content:"";opacity:.5;transform-origin:bottom;animation:hold var(--hold-ms,3s) linear forwards;background:#ffc83d;position:absolute;inset:0}@keyframes hold{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.pill{color:var(--ink-2);background:var(--card);border:2px solid var(--line);border-radius:999px;padding:6px 12px;font-size:15px;font-weight:800}.dots{gap:6px;display:flex}.dot{border-radius:999px;width:12px;height:12px}.segmented{background:var(--card);border:2px solid var(--line);border-radius:999px;gap:4px;padding:3px;display:flex}.segmented button{background:0 0;border:0;border-radius:999px;padding:8px 12px;font-size:14px;font-weight:800}.segmented button[aria-pressed=true]{color:#fff;background:#1f64b8}.switch{background:0 0;border:0;align-items:center;gap:8px;padding:0;font-size:14px;font-weight:800;display:flex}.switch__label{flex-direction:column;align-items:flex-end;line-height:1.15;display:flex}.switch__track{background:#8c7b72;border-radius:999px;justify-content:flex-start;width:52px;height:32px;padding:4px;display:flex}.switch[aria-pressed=true] .switch__track{background:#1f64b8;justify-content:flex-end}.switch__knob{background:#fff;border-radius:999px;width:24px;height:24px}.gate{text-align:center;justify-content:center;align-items:center;gap:28px}.gate__btn{font-family:var(--font-title);background:#ffc83d;border:0;border-radius:999px;padding:28px 44px;font-size:30px;font-weight:800}.brand{letter-spacing:.02em;color:#8a4b22;font-size:14px;font-weight:800}.home__header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.home__hello{font-family:var(--font-title);margin:0;font-size:36px;font-weight:800;line-height:1.1}.home__sub{color:var(--muted);margin:0;font-size:17px}.voices{flex-direction:column;gap:10px;display:flex}.voices__label{font-size:16px;font-weight:800}.voices__row{gap:18px;display:flex}.voice{background:0 0;border:0;flex-direction:column;align-items:center;gap:4px;padding:0;display:flex}.voice__ring{border:3px solid #0000;border-radius:999px;width:64px;height:64px;padding:3px;display:flex}.voice.is-on .voice__ring{border-color:var(--ink)}.voice__face{font-family:var(--font-title);border-radius:999px;flex:1;justify-content:center;align-items:center;font-size:26px;font-weight:800;display:flex}.voice__name{font-size:15px;font-weight:800}.tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.tile{border-radius:var(--r-card);text-align:left;border:0;flex-direction:column;justify-content:space-between;align-items:flex-start;min-height:140px;padding:16px;text-decoration:none;display:flex;position:relative}.tile__glyph{font-family:var(--font-glyph);font-size:50px;font-weight:700;line-height:1}.tile__name{font-family:var(--font-title);font-size:24px;font-weight:700;line-height:1}.tile__soon{color:var(--ink-2);background:#fff;border-radius:999px;padding:3px 9px;font-size:12px;font-weight:800;position:absolute;top:12px;right:12px}.home__footer{gap:12px;margin-top:auto;display:flex}.timer{background:var(--card);border:2px solid var(--line-2);border-radius:20px;flex-direction:column;flex:1;justify-content:center;gap:8px;padding:12px 16px;display:flex}.timer__text{font-size:15px;font-weight:800}.timer__track{background:var(--line-2);border-radius:999px;height:10px;display:block}.timer__fill{background:var(--good-line);border-radius:999px;height:10px;display:block}.sticker-btn{background:#ffc83d;border:0;border-radius:20px;align-items:center;gap:8px;min-height:64px;padding:0 18px;font-size:16px;font-weight:800;display:flex}.card{border-radius:var(--r-card);background:var(--card);border:2px solid var(--line-2);flex-direction:column;gap:10px;padding:14px 16px;display:flex}.items-card__head{justify-content:space-between;align-items:baseline;display:flex}.items-card__title{font-family:var(--font-title);font-size:21px;font-weight:700}.items-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;display:grid}.items-grid__cell{height:40px;font-family:var(--font-glyph);border-radius:12px;justify-content:center;align-items:center;font-size:19px;text-decoration:none;display:flex}.menu-section{flex-direction:column;gap:10px;display:flex}.section-label{font-family:var(--font-title);margin:0;font-size:21px;font-weight:800;line-height:1}.menu-row{min-height:var(--tap);border-radius:22px;align-items:center;gap:14px;padding:10px 14px 10px 10px;text-decoration:none;display:flex}.menu-row__icon{width:52px;height:52px;font-family:var(--font-glyph);background:#fff;border-radius:16px;flex:none;justify-content:center;align-items:center;font-size:30px;display:flex}.menu-row__text{flex-direction:column;flex:1;gap:1px;display:flex}.menu-row__title{font-family:var(--font-title);font-size:21px;font-weight:700;line-height:1.1}.menu-row__sub{color:var(--ink-2);font-size:14px}.tip{background:var(--card);border:2px dashed var(--line);color:var(--ink-2);border-radius:16px;margin:auto 0 0;padding:12px 14px;font-size:14px;line-height:1.4}.prompt{border-radius:28px;align-items:center;gap:16px;padding:16px;display:flex}.prompt__text{flex-direction:column;gap:4px;display:flex}.prompt__title{font-family:var(--font-title);font-size:26px;font-weight:700;line-height:1.1}.prompt__sub{color:var(--ink-2);font-size:16px;font-weight:800}.speaker{background:#fff;border:0;border-radius:999px;flex:none;justify-content:center;align-items:center;width:56px;height:56px;display:flex}.speaker--big{width:72px;height:72px}.feedback{border-radius:var(--r-card);background:var(--card);border:2px solid var(--line-2);align-items:center;gap:12px;min-height:76px;margin-top:auto;padding:12px 16px;display:flex}.feedback--good{background:var(--good-tint);border-color:var(--good-line)}.feedback--oops{background:var(--warn-tint);border-color:var(--warn-line)}.feedback__line{font-family:var(--font-title);flex:1;font-size:22px;font-weight:700;line-height:1.15}.primary-btn{background:var(--good-line);color:#12341f;border:0;border-radius:999px;flex:none;min-height:52px;padding:0 20px;font-size:17px;font-weight:800}.secondary-btn{border:2px solid var(--line);background:var(--card);border-radius:999px;min-height:48px;padding:0 18px;font-size:16px;font-weight:800}.link-btn{color:#1f64b8;background:0 0;border:0;padding:4px 0;font-weight:800;text-decoration:underline}.glyph{font-family:var(--font-glyph);font-weight:700;line-height:1}.glyph-pair{white-space:nowrap}.glyph-pair__low{margin-left:.06em;font-size:.72em}.item-photo{object-fit:cover;border-radius:18px}.learn-card{--learn-glyph:clamp(110px, 22vh, 200px);background:var(--card);border:3px solid;border-radius:32px;flex-direction:column;align-items:center;gap:4px;padding:18px 20px 20px;display:flex;position:relative}.learn-card__glyph{font-family:var(--font-glyph);font-size:clamp(110px,22vh,200px);font-weight:700;line-height:1}.learn-card__vi{font-family:var(--font-title);font-size:32px;font-weight:700;line-height:1.1}.learn-card__en{color:var(--muted);font-size:20px;font-weight:800}.learn-card__badge{color:#11706f;background:#ddf2f3;border-radius:999px;margin-top:6px;padding:4px 12px;font-size:15px;font-weight:800}.learn-card__caption{font-family:var(--font-glyph);font-size:40px;font-weight:700;line-height:1}.learn-picture{min-height:var(--tap);border:3px solid var(--line);border-radius:var(--r-card);background:var(--card);align-self:center;align-items:center;gap:16px;padding:10px 28px 10px 12px;display:flex}.learn-picture .picture{width:120px;height:120px}.learn-picture .photo{width:180px;height:180px}.photo{object-fit:cover;background:var(--line-2);-webkit-user-drag:none;border-radius:18px;flex:none;display:block}.learn-picture__word{font-family:var(--font-title);font-size:30px;font-weight:700;line-height:1.1}.picture,.shape-glyph{flex:none;display:block}.picture--match{width:min(100%,116px);height:auto}.photo--match{aspect-ratio:1;border-radius:16px;width:min(100%,140px);height:auto}.learn-card__speaker{position:absolute;top:14px;right:14px}.learn-card__speaker .speaker{background:#ffc83d}.tenframes{flex-direction:column;gap:10px;display:flex}.tenframes__groups{flex-direction:column;align-items:center;gap:10px;display:flex}.tenframe{--cell:72px;grid-template-columns:repeat(var(--cols), minmax(0, var(--cell)));background:#f4eee6;border-radius:20px;justify-content:center;align-self:center;gap:8px;padding:8px;display:grid}.tenframe__cell{aspect-ratio:1;font-family:var(--font-glyph);color:#fff;background:#fff1c7;border:0;border-radius:16px;justify-content:center;align-items:center;padding:0;font-size:30px;display:flex}.tenframe__cell>svg{width:62%;height:auto}.tenframe__cell.is-counted{background:#1f64b8}.count-row{justify-content:space-between;align-items:center;gap:8px;min-height:30px;display:flex}.count-row__text{align-items:center;gap:6px;font-size:17px;font-weight:800;display:flex}.stepper{gap:12px;margin-top:auto;display:flex}.stepper button{border-radius:var(--r-card);height:68px;font-family:var(--font-glyph);background:#e2efff;border:0;flex:1;justify-content:center;align-items:center;gap:10px;font-size:28px;display:flex}.sky{background:#eaf5ff;border-radius:28px;height:clamp(380px,50vh,600px);position:relative;overflow:hidden}.balloon{background:0 0;border:0;flex-direction:column;align-items:center;width:clamp(80px,min(22%,12vh),120px);padding:0;display:flex;position:absolute}.balloon__body{aspect-ratio:.92;background:var(--tint);border:4px solid #0000;border-radius:50% 50% 48% 48%;justify-content:center;align-items:center;width:100%;transition:transform .2s;display:flex}.balloon{--balloon-glyph:40px}@supports (container-type:inline-size){.balloon{--balloon-glyph:46cqw;container-type:inline-size}.sky--big .balloon{--balloon-glyph:52cqw}}.sky--big .balloon{width:clamp(96px,min(30%,17vh),170px)}.sky--wide .balloon{width:clamp(110px,17%,210px)}.balloon__check{width:var(--balloon-glyph);height:var(--balloon-glyph)}.balloon__string{background:#b9aaa1;width:2px;height:22px}.balloon.is-found{opacity:.55}.balloon.is-found .balloon__body{background:var(--good-tint)}.balloon.is-just-found{opacity:1}.balloon.is-just-found .balloon__body{border-color:var(--good);transform:scale(1.08)}.balloon.is-hint .balloon__body{border:4px dashed var(--good-line)}.match-tops,.match-pool{gap:8px;display:grid}.match-top{--match-glyph:68px;border:3px solid var(--line);background:var(--card);border-radius:26px;flex-direction:column;align-items:center;gap:4px;min-height:236px;padding:8px 6px 6px;display:flex}.match-top.is-selected{border-width:4px}.match-top__word{color:var(--ink-2);font-size:16px;font-weight:800}.match-slot{border:2px dashed var(--line);background:#fff;border-radius:18px;flex:1;justify-content:center;align-self:stretch;align-items:center;min-height:110px;padding:4px;display:flex}.match-slot__q{font-family:var(--font-title);font-size:48px;font-weight:800}.match-card{--match-glyph:68px;border:3px solid var(--line);border-radius:var(--r-card);background:var(--card);justify-content:center;align-items:center;min-height:132px;padding:6px;display:flex}.match-card--empty{border:2px dashed var(--line);background:0 0}.objects{--obj-max:60px;--obj-gap:6px;grid-template-columns:repeat(var(--cols), minmax(0, 1fr));gap:var(--obj-gap);width:100%;max-width:calc(var(--cols) * var(--obj-max) + (var(--cols) - 1) * var(--obj-gap));align-content:center;display:grid}.objects--rows{--obj-max:44px;--obj-gap:3px}.objects>svg{width:100%;height:auto;display:block}.options{flex-direction:column;gap:14px;display:flex}.option{--option-glyph:96px;border:3px solid var(--line);background:var(--card);border-radius:28px;justify-content:center;align-items:center;gap:16px;min-height:124px;display:flex}.option.is-right{background:var(--good-tint);border:4px solid var(--good);color:var(--good)}.option.is-dim{opacity:.45}.option.is-hint{border:4px dashed var(--good-line)}.parents .card p{margin:0;font-weight:600;line-height:1.4}.setting{align-items:center;gap:10px;min-height:48px;font-size:16px;display:flex}.setting input[type=checkbox]{width:26px;height:26px}.warn-note{background:var(--warn-tint);border:2px solid var(--warn-line);border-radius:14px;padding:10px 12px}.setting select{font:inherit;border:2px solid var(--line);background:#fff;border-radius:12px;padding:8px 12px}@media (width>=600px){.screen{gap:20px;padding-left:32px;padding-right:32px}.tiles{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.tile{border-radius:32px;min-height:200px;padding:24px}.tile__glyph{font-size:76px}.tile__name{font-size:32px}.home__hello{font-size:48px}.voice__ring{width:72px;height:72px}.options{flex-direction:row}.option{--option-glyph:136px;flex:1;min-height:200px}.items-grid{grid-template-columns:repeat(10,minmax(0,1fr))}.tenframe{--cell:96px;gap:10px}.learn-picture .picture{width:150px;height:150px}.learn-picture .photo{width:240px;height:240px}.learn-picture__word{font-size:36px}.picture--match{width:min(100%,136px)}.photo--match{width:min(100%,132px)}.tenframe__cell{font-size:40px}.match-tops,.match-pool{gap:14px}.match-top{--match-glyph:104px;min-height:280px}.match-top__word{font-size:20px}.match-card{--match-glyph:104px;min-height:160px;padding:10px}.prompt__title{font-size:32px}}@media (width>=600px) and (orientation:landscape){.screen--match{gap:10px}.screen--match .match-card{min-height:148px;padding:6px}.tenframes__groups{flex-direction:row;justify-content:center;align-items:flex-start;gap:16px}.tenframe{--cell:88px;align-self:flex-start}.home__header{align-items:center}.tiles{flex:1}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
