@font-face{font-family:"Noto Serif Devanagari Variable";font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/noto-serif-devanagari-devanagari-wght-normal-Ck0C6go5.woff2) format("woff2-variations");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:"Noto Serif Devanagari Variable";font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/noto-serif-devanagari-latin-ext-wght-normal-tigZJXFW.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:"Noto Serif Devanagari Variable";font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/noto-serif-devanagari-latin-wght-normal-B3HgCHZx.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}@font-face{font-family:"Noto Serif Bengali Variable";font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/noto-serif-bengali-bengali-wght-normal-BcjY7wpo.woff2) format("woff2-variations");unicode-range:U+0951-0952,U+0964-0965,U+0980-09FE,U+1CD0,U+1CD2,U+1CD5-1CD6,U+1CD8,U+1CE1,U+1CEA,U+1CED,U+1CF2,U+1CF5-1CF7,U+200C-200D,U+20B9,U+25CC,U+A8F1}@font-face{font-family:"Noto Serif Bengali Variable";font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/noto-serif-bengali-latin-ext-wght-normal-B-gDo6cG.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:"Noto Serif Bengali Variable";font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/noto-serif-bengali-latin-wght-normal-B_lKCcE1.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}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-vietnamese-wght-normal-CnvboYUG.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-wght-normal-Ca2vKHc0.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-wght-normal-ukD16Tqj.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}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.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{--bg: #f4ead5;--bg-deep: #ead9b8;--surface: #fbf5e8;--surface-2: #f1e5ca;--ink: #241a14;--ink-soft: #66544a;--accent: #b9530d;--accent-strong: #933f07;--on-accent: #fff8ec;--second: #3a3f94;--second-soft: #d9dbf1;--line: #d8c39a;--good: #2f6b3a;--good-soft: #dcebd3;--bad: #a3242f;--bad-soft: #f5d9d5;--shadow: 0 1px 2px rgb(60 30 10 / 8%), 0 8px 24px rgb(60 30 10 / 10%);--radius: 16px;--font-ui: "Inter Variable", system-ui, sans-serif;--font-head: "Fraunces Variable", Georgia, serif;color-scheme:light}:root[data-script=bn]{--bg: #f1ecd9;--bg-deep: #e2dabd;--surface: #faf7ec;--surface-2: #ece6cf;--ink: #1b2219;--ink-soft: #57604f;--accent: #1d6a45;--accent-strong: #134d31;--on-accent: #f7f4e6;--second: #b8282f;--second-soft: #f2d5d0;--line: #cfc7a5;--good: #2d6e8c;--good-soft: #d6e8ef}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg: #14121f;--bg-deep: #0d0c16;--surface: #1e1b2e;--surface-2: #29253d;--ink: #f3e8d6;--ink-soft: #b3a792;--accent: #f08a3c;--accent-strong: #ffa25c;--on-accent: #1e1206;--second: #a3a9ff;--second-soft: #2c2c55;--line: #34304a;--good: #79c487;--good-soft: #1f3526;--bad: #f07c86;--bad-soft: #3d1d24;--shadow: 0 1px 2px rgb(0 0 0 / 30%), 0 8px 24px rgb(0 0 0 / 35%);color-scheme:dark}:root[data-script=bn]:not([data-theme=light]){--bg: #0f1915;--bg-deep: #09110d;--surface: #16241e;--surface-2: #1f3029;--ink: #eef0e2;--ink-soft: #a5ad98;--accent: #4fbf86;--accent-strong: #70d7a1;--on-accent: #07140d;--second: #f2737b;--second-soft: #4a2229;--line: #2a3b33;--good: #7cc4e2;--good-soft: #193440}}:root[data-theme=dark]{--bg: #14121f;--bg-deep: #0d0c16;--surface: #1e1b2e;--surface-2: #29253d;--ink: #f3e8d6;--ink-soft: #b3a792;--accent: #f08a3c;--accent-strong: #ffa25c;--on-accent: #1e1206;--second: #a3a9ff;--second-soft: #2c2c55;--line: #34304a;--good: #79c487;--good-soft: #1f3526;--bad: #f07c86;--bad-soft: #3d1d24;--shadow: 0 1px 2px rgb(0 0 0 / 30%), 0 8px 24px rgb(0 0 0 / 35%);color-scheme:dark}:root[data-theme=dark][data-script=bn]{--bg: #0f1915;--bg-deep: #09110d;--surface: #16241e;--surface-2: #1f3029;--ink: #eef0e2;--ink-soft: #a5ad98;--accent: #4fbf86;--accent-strong: #70d7a1;--on-accent: #07140d;--second: #f2737b;--second-soft: #4a2229;--line: #2a3b33;--good: #7cc4e2;--good-soft: #193440}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;min-height:100vh;background:radial-gradient(1200px 600px at 50% -200px,color-mix(in srgb,var(--second) 14%,transparent),transparent 70%),linear-gradient(var(--bg),var(--bg-deep));background-attachment:fixed;color:var(--ink);font:16px/1.55 var(--font-ui)}h1,h2,h3{font-family:var(--font-head);font-weight:600;line-height:1.15;margin:0 0 .5em;letter-spacing:-.01em}h1{font-size:clamp(1.6rem,4vw,2.2rem)}h2{font-size:1.35rem}p{margin:0 0 .8em}a{color:var(--accent)}[lang=hi]{--font-nat: "Noto Serif Devanagari Variable", "Noto Sans Devanagari Variable", "Nirmala UI", serif;--font-nat-sans: "Noto Sans Devanagari Variable", "Nirmala UI", sans-serif}[lang=bn]{--font-nat: "Noto Serif Bengali Variable", "Noto Sans Bengali Variable", "Nirmala UI", serif;--font-nat-sans: "Noto Sans Bengali Variable", "Nirmala UI", sans-serif}.nat{font-family:var(--font-nat);font-weight:500}.muted{color:var(--ink-soft)}.icon{width:22px;height:22px;flex:none}button{font:inherit;color:inherit}.top{display:flex;align-items:center;justify-content:space-between;max-width:880px;margin:0 auto;padding:14px 16px}.top{gap:10px}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);line-height:1.1}.brand-mark{display:grid;place-items:center;width:40px;height:40px;flex:none;border-radius:50%;background:var(--accent);color:var(--on-accent);box-shadow:inset 0 0 0 3px color-mix(in srgb,var(--second) 70%,transparent)}.brand-mark:before{content:"अ";font:600 1.35rem/1 "Noto Serif Devanagari Variable",serif;transform:translateY(-1px)}[data-script=bn] .brand-mark:before{content:"অ";font-family:"Noto Serif Bengali Variable",serif}.brand-lat{font-family:var(--font-head);font-weight:600;font-size:1.05rem;white-space:nowrap}.script-switch{display:inline-flex;padding:3px;border-radius:999px;border:1px solid var(--line);background:var(--surface)}.script-btn{display:inline-flex;align-items:baseline;gap:6px;min-height:36px;padding:4px 14px;border:0;border-radius:999px;background:none;cursor:pointer;transition:background .15s,color .15s}.script-btn.is-on{background:var(--accent);color:var(--on-accent)}.script-btn:disabled{cursor:default;opacity:.55}.script-btn-native{font-size:1.05rem;line-height:1.4}.script-btn-name{font-size:.8rem;font-weight:600}.top-actions{display:flex;gap:6px}.icon-btn{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:50%;border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;transition:background .15s,border-color .15s}.icon-btn:hover{border-color:var(--second)}.main{max-width:880px;margin:0 auto;padding:8px 16px 48px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:10px 20px;border-radius:999px;border:1px solid var(--line);background:var(--surface);font-weight:600;cursor:pointer;transition:transform .08s,background .15s,border-color .15s}.btn:hover{border-color:var(--second)}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.btn-primary:hover{background:var(--accent-strong);border-color:var(--accent-strong)}.btn-big{min-height:54px;padding:12px 28px;font-size:1.05rem}.link-btn{border:0;background:none;padding:0;color:var(--accent);text-decoration:underline;text-underline-offset:3px;cursor:pointer}:focus-visible{outline:3px solid var(--second);outline-offset:2px}.hero{position:relative;padding:28px 24px 26px;margin:8px 0 28px;border-radius:22px;background:var(--surface);box-shadow:var(--shadow);border:1px solid var(--line);overflow:hidden}.hero:before{content:"";position:absolute;inset:8px;border:1px solid color-mix(in srgb,var(--second) 55%,transparent);border-radius:16px;pointer-events:none}.hero-kicker{color:var(--second);font-size:1.05rem;margin-bottom:4px}.hero-text{max-width:34em;color:var(--ink-soft)}.hero-stats{display:flex;flex-wrap:wrap;gap:10px 26px;margin:16px 0 20px}.stat{display:flex;flex-direction:column}.stat strong{font-family:var(--font-head);font-size:1.9rem;color:var(--accent);line-height:1}.stat span{font-size:.85rem;color:var(--ink-soft)}.block{margin-bottom:30px}.path{list-style:none;margin:0;padding:0;display:grid;gap:10px}.lesson{width:100%;display:flex;align-items:center;gap:14px;padding:12px 16px;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);text-align:left;cursor:pointer;transition:border-color .15s,transform .08s}.lesson:hover:not(:disabled){border-color:var(--second)}.lesson.is-next{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),var(--shadow)}.lesson.is-locked{opacity:.55;cursor:default}.lesson-num{flex:none;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--surface-2);color:var(--ink-soft);font-weight:700}.lesson.is-done .lesson-num{background:var(--second);color:var(--surface)}.lesson.is-next .lesson-num{background:var(--accent);color:var(--on-accent)}.lesson-num .icon{width:18px;height:18px}.lesson-text{display:flex;flex-direction:column;min-width:0}.lesson-title{font-weight:600}.lesson-letters{font-size:1.2rem;color:var(--accent);letter-spacing:.08em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}.tile{position:relative;display:flex;flex-direction:column;gap:4px;padding:16px 18px;min-height:104px;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);text-align:left;cursor:pointer;transition:border-color .15s}.tile:hover{border-color:var(--second)}.tile.is-off{opacity:.6}.tile-title{font-family:var(--font-head);font-weight:600;font-size:1.1rem}.tile-text{font-size:.9rem;color:var(--ink-soft)}.tile-badge{position:absolute;top:12px;right:12px;min-width:26px;padding:2px 8px;border-radius:999px;background:var(--accent);color:var(--on-accent);font-size:.8rem;font-weight:700;text-align:center}.foot{display:flex;flex-wrap:wrap;gap:8px 22px;align-items:center;padding-top:16px;border-top:1px solid var(--line);font-size:.9rem}.intro-head{display:flex;align-items:center;gap:12px;margin:8px 0 12px}.intro-head h1{margin:0;font-size:clamp(1.25rem,3.5vw,1.7rem)}.lead{color:var(--ink-soft)}.lead-nat{color:var(--accent);font-size:1.3rem;letter-spacing:.1em}.dots{display:flex;gap:6px;margin:10px 0 14px}.dot{width:10px;height:10px;border-radius:50%;background:var(--line)}.dot.is-done{background:var(--second)}.dot.is-on{background:var(--accent);transform:scale(1.25)}.intro-card{position:relative;padding:26px 24px;border-radius:22px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow)}.intro-card:before{content:"";position:absolute;inset:8px;border:1px solid color-mix(in srgb,var(--second) 45%,transparent);border-radius:16px;pointer-events:none}.intro-glyph-row{display:flex;align-items:center;gap:18px}.intro-glyph{font-size:clamp(6rem,22vw,9rem);line-height:1.4;color:var(--accent)}.intro-latin{font-size:1.35rem;margin-top:6px}.intro-latin strong{font-family:var(--font-head);font-size:1.8rem}.intro-name{color:var(--ink-soft);font-size:1rem}.intro-sound{font-weight:600}.intro-shape{color:var(--ink-soft)}.intro-warn{padding:8px 12px;border-radius:10px;background:var(--surface-2);border-left:3px solid var(--second)}.warn-nat{font-size:1.3rem;color:var(--accent)}.intro-example .nat{font-size:1.2rem}.intro-actions{display:flex;justify-content:space-between;gap:10px;margin:18px 0 10px}.intro-actions .btn-primary{margin-left:auto}.sound-btn{display:inline-grid;place-items:center;width:46px;height:46px;border-radius:50%;border:1px solid var(--second);background:var(--surface-2);color:var(--accent);cursor:pointer;vertical-align:middle}.sound-btn.is-small{width:32px;height:32px;margin-left:6px}.sound-btn.is-small .icon{width:17px;height:17px}.round-head{display:flex;align-items:center;gap:12px;margin:4px 0 10px}.round-title{font-weight:600;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.round-count{color:var(--ink-soft);font-variant-numeric:tabular-nums}.round-bar{height:6px;border-radius:99px;background:var(--surface-2);overflow:hidden;margin-bottom:18px}.round-bar-fill{height:100%;width:0;background:linear-gradient(90deg,var(--second),var(--accent));transition:width .25s}.round-hint{text-align:center;color:var(--ink-soft);margin-bottom:6px}.stage{display:grid;place-items:center;min-height:190px;padding:18px;margin-bottom:18px;border-radius:22px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow)}.stage.is-sign{background:repeating-linear-gradient(135deg,var(--surface-2) 0 14px,var(--surface) 14px 28px)}.glyph{font-size:clamp(6.5rem,26vw,10rem);line-height:1.4;color:var(--accent)}.word{font-size:clamp(2.6rem,10vw,4.4rem);line-height:1.55;text-align:center;overflow-wrap:anywhere}.word.is-long{font-size:clamp(2rem,7.5vw,3.4rem)}.word.is-xlong{font-size:clamp(1.6rem,6vw,2.7rem)}.answer-area{max-width:560px;margin:0 auto 16px}.choices{display:grid;grid-template-columns:1fr 1fr;gap:10px}.choice{position:relative;min-height:58px;padding:12px 14px 12px 40px;border-radius:14px;border:1px solid var(--line);background:var(--surface);font-size:1.15rem;font-weight:600;cursor:pointer;text-align:left;overflow-wrap:anywhere}.choice:hover:not(:disabled){border-color:var(--second)}.choice-key{position:absolute;left:12px;top:50%;transform:translateY(-50%);font-size:.75rem;color:var(--ink-soft);border:1px solid var(--line);border-radius:5px;padding:0 5px}.choice.is-right{background:var(--good-soft);border-color:var(--good)}.choice.is-wrong{background:var(--bad-soft);border-color:var(--bad)}.choice:disabled{cursor:default}.answer-form{display:flex;gap:10px}.answer-input{flex:1;min-width:0;min-height:52px;padding:10px 16px;border-radius:14px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font:600 1.2rem var(--font-ui)}.answer-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 25%,transparent)}.feedback{padding:18px;border-radius:18px;background:var(--bad-soft);border:1px solid color-mix(in srgb,var(--bad) 45%,transparent);text-align:center}.feedback-title{font-weight:700;color:var(--bad)}.feedback-typed{font-weight:400;color:var(--ink-soft)}.feedback-answer strong{font-size:1.25rem}.feedback-meaning{color:var(--ink-soft)}.breakdown{display:flex;flex-wrap:wrap;justify-content:center;gap:4px;margin:8px 0 14px}.bd-cell{display:flex;flex-direction:column;align-items:center;min-width:38px;padding:4px 6px;border-radius:10px;background:var(--surface);border:1px solid var(--line)}.bd-cell.is-wrong{border-color:var(--bad);background:color-mix(in srgb,var(--bad) 18%,var(--surface))}.bd-nat{font-size:1.6rem;line-height:1.3}.bd-lat{font-size:.85rem;font-weight:600;color:var(--ink-soft)}.bd-cell.is-wrong .bd-lat{color:var(--bad)}.bd-gap{width:12px}.strip{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:4px 8px;max-width:640px;margin:0 auto;padding:10px 14px;border-radius:14px;background:var(--good-soft);font-size:.95rem}.strip.is-typo{background:color-mix(in srgb,var(--second) 22%,var(--surface))}.strip.is-empty{visibility:hidden}.strip-mark{font-weight:800;color:var(--good)}.strip.is-typo .strip-mark{color:var(--second)}.strip-nat{font-size:1.2rem}.strip-nat mark{background:none;color:var(--bad);text-decoration:underline 2px;text-underline-offset:4px}.strip-eq,.strip-typed,.strip-meaning{color:var(--ink-soft)}.confirm{max-width:560px;margin:0 auto 16px;padding:14px 16px;border-radius:14px;background:var(--surface);border:1px solid var(--second)}.confirm-actions{display:flex;gap:10px;flex-wrap:wrap}.summary,.empty{max-width:600px;margin:20px auto;padding:28px 24px;border-radius:22px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);text-align:center}.summary-score{font-size:1.15rem}.summary-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:16px}.shaky{margin:14px 0}.shaky-title{color:var(--ink-soft);font-size:.9rem}.shaky-list{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.shaky-item{display:flex;flex-direction:column;align-items:center;padding:6px 12px;border-radius:12px;background:var(--surface-2)}.shaky-item .nat{font-size:1.7rem;color:var(--accent)}.sign{display:inline-flex;align-items:center;gap:14px;max-width:100%;font-family:var(--font-nat-sans);box-shadow:0 3px #0000002e,0 10px 24px #0000002e}.sign .sign-nat{font-family:var(--font-nat-sans);font-weight:600;overflow-wrap:anywhere}.sign-lines{display:flex;flex-direction:column;min-width:0}.sign-latin{position:relative;display:inline-block;font-family:var(--font-ui);font-weight:600}.sign-latin.is-covered .sign-latin-text{visibility:hidden}.tape{display:none}.sign-latin.is-covered .tape{display:block;position:absolute;inset:-3px -8px;background:repeating-linear-gradient(90deg,#e9dcb3 0 6px,#dfd0a2 6px 9px);transform:rotate(-1.5deg);border-radius:2px;box-shadow:0 1px 2px #00000040}.sign-direction{padding:16px 20px;background:#17683a;color:#fff;border:3px solid #fff;border-radius:10px;outline:2px solid #17683a}.sign-direction .icon{width:46px;height:46px}.sign-direction .sign-nat{font-size:clamp(1.7rem,7vw,2.8rem)}.sign-direction .sign-latin{font-size:clamp(1rem,3.6vw,1.4rem)}.sign-km{font-family:var(--font-ui);font-weight:700;font-size:1.6rem}.sign-street{padding:14px 18px 14px 22px;background:#16335f;color:#fff;border-radius:6px;border:2px solid #c9d3e3}.sign-street .sign-nat{font-size:clamp(1.4rem,6vw,2.3rem)}.sign-street .sign-latin{font-size:clamp(.9rem,3.2vw,1.2rem);opacity:.9}.sign-shop{padding:18px 34px;border-radius:6px}.sign-shop .sign-nat{font-size:clamp(2rem,8vw,3.6rem)}.shop-red{background:#7a1626;color:#ffe9a8}.shop-green{background:#15703d;color:#fff}.shop-yellow{background:#ffd23a;color:#1b1b1b}.shop-blue{background:#0d5fa8;color:#fff}.shop-white{background:#fff;color:#c2121f;border:3px solid #c2121f}.sign-menu{min-width:min(100%,420px);padding:22px 26px;background:#23302a;color:#f3f0e6;border:10px solid #7a5532;border-radius:6px}.sign-menu .sign-nat{font-family:var(--font-nat);font-size:clamp(1.7rem,7vw,2.6rem)}.sign-dots{flex:1;min-width:20px;border-bottom:3px dotted rgb(243 240 230 / 45%)}.sign-price{font:700 1.4rem var(--font-ui);color:#ffd98a;white-space:nowrap}.tempo-head{display:flex;align-items:center;justify-content:space-between;margin:8px 0 16px}.tempo-timer{position:relative;display:grid;place-items:center;width:74px;height:74px}.tempo-ring{--left: 1;position:absolute;inset:0;border-radius:50%;background:conic-gradient(var(--accent) calc(var(--left) * 360deg),var(--surface-2) 0);-webkit-mask:radial-gradient(circle,transparent 58%,#000 60%);mask:radial-gradient(circle,transparent 58%,#000 60%)}.tempo-clock{font:700 1.5rem var(--font-head);font-variant-numeric:tabular-nums}.tempo-points{display:flex;flex-direction:column;align-items:flex-end;color:var(--ink-soft)}.tempo-score{font:700 2.3rem var(--font-head);color:var(--accent);line-height:1}.tempo-solution{min-height:1.6em;text-align:center;color:var(--bad)}.tempo-big{font:700 4.5rem var(--font-head);color:var(--accent);margin:0;line-height:1.1}.abc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(76px,1fr));gap:8px}.abc-tile{display:flex;flex-direction:column;align-items:center;padding:10px 4px 8px;border-radius:14px;border:1px solid var(--line);background:var(--surface);cursor:pointer}.abc-tile:hover,.abc-tile.is-seen{border-color:var(--second)}.abc-tile.is-learned{background:color-mix(in srgb,var(--second) 22%,var(--surface));border-color:var(--second)}.abc-nat{font-size:2.2rem;line-height:1.5;color:var(--accent)}.abc-lat{font-size:.85rem;font-weight:600;color:var(--ink-soft)}.abc-detail{position:fixed;inset:0;z-index:10;display:grid;place-items:center;padding:16px;background:#140a0573}.abc-detail[hidden]{display:none}.abc-card{position:relative;width:min(100%,520px);max-height:calc(100vh - 32px);overflow:auto;padding:24px;border-radius:22px;background:var(--surface);box-shadow:var(--shadow)}.abc-close{position:absolute;top:12px;right:12px}.abc-examples{padding-left:1.1em}.abc-examples .nat{font-size:1.15rem}.sync{max-width:600px}.sync-code{font:700 clamp(1.5rem,6vw,2.2rem) var(--font-ui);letter-spacing:.08em;color:var(--accent);padding:12px 16px;border-radius:14px;background:var(--surface);border:1px dashed var(--second);text-align:center;-webkit-user-select:all;user-select:all}.sync-status{color:var(--ink-soft)}.sync-or{margin-top:18px;color:var(--ink-soft)}.sync-error{color:var(--bad);margin-top:8px}.privacy{max-width:720px;padding-top:28px}.privacy section{margin:26px 0}.privacy-back{display:inline-block;margin-bottom:18px;font-weight:600;text-decoration:none}.credits summary{cursor:pointer;font-weight:600;color:var(--accent)}.credits ul{padding-left:1.1em;font-size:.92rem}.credits .nat{font-size:1.05rem}.hero-native{font-size:1.25rem}.block-text{color:var(--ink-soft);font-size:.95rem}.lesson-intro{padding:12px 16px;border-radius:12px;background:color-mix(in srgb,var(--second) 9%,var(--surface));border-left:3px solid var(--second)}.intro-bridge{margin-top:10px;padding-top:10px;border-top:1px dashed var(--line);color:var(--ink-soft);font-size:.95rem}.bridge-nat{font-size:1.6rem;line-height:1.2;color:var(--second);vertical-align:middle}.abc-groups{display:grid;gap:22px}.abc-group h2{font-size:1.1rem}.abc-lesson{font-size:.9rem;margin:10px 0 0}.abc-card .intro-card{box-shadow:none;border:0;padding:0;background:none}.abc-card .intro-card:before{display:none}.sign-milestone{flex-direction:column;gap:2px;min-width:190px;padding:0 26px 16px;background:#fbfbf6;color:#151515;border-radius:90px 90px 6px 6px;overflow:hidden}.milestone-cap{align-self:stretch;margin:0 -26px 8px;padding:16px 0 8px;text-align:center;font:800 1.1rem var(--font-ui);letter-spacing:.06em}.cap-yellow{background:#f2c21b;color:#151515}.cap-green{background:#1f7a3c;color:#fff}.sign-milestone .sign-nat{font-size:clamp(1.9rem,7.5vw,3rem);line-height:1.5;text-align:center}.sign-milestone .sign-latin{font-size:clamp(1rem,3.6vw,1.4rem)}.milestone-km{margin-top:4px;font:800 1.5rem var(--font-ui)}@media(max-width:520px){.hero{padding:22px 18px}.stage{min-height:150px;padding:14px 10px}.choices{gap:8px}.choice{font-size:1.02rem;min-height:54px}.answer-form .btn{padding:10px 14px}.sign{gap:10px}.sign-milestone,.sign-shop{padding:14px 18px}.sign-direction .icon{width:32px;height:32px}.intro-card{padding:20px 18px}.brand-lat,.script-btn-name{display:none}.script-btn{padding:4px 12px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
