@font-face{font-family:Andika;src:url(/fonts/andika.woff2) format("woff2");font-weight:400 700;font-display:swap}@font-face{font-family:Marmelad;src:url(/fonts/marmelad.woff2) format("woff2");font-weight:400;font-display:swap}:root{--paper: #fff6e8;--paper-deep: #f6e7d0;--ink: #3a2e26;--ink-soft: #8a7a6c;--hero: #2e8c8c;--hero-soft: #2e8c8c22;--ui: "Marmelad", system-ui, sans-serif;--reading: "Andika", Georgia, serif;--r-pill: 999px;--r-card: 20px;--r-chip: 12px}.hero-agunya{--hero: #d8402a;--hero-soft: #d8402a22}.hero-ulya{--hero: #4890c0;--hero-soft: #4890c022}.hero-mem{--hero: #e09a10;--hero-soft: #e09a1022}.hero-tomik{--hero: #2e8c8c;--hero-soft: #2e8c8c22}.reading,.big-letter,.hero-letter,.tower-block,.tower-brick,.duet-letter,.duet-result,.syllable-btn,.letter-btn{font-family:var(--reading)}:root{--primary: #FF6B6B;--primary-light: rgba(255, 107, 107, .15);--secondary: #4ECDC4;--secondary-light: rgba(78, 205, 196, .15);--success: #4CAF50;--error: #F44336;--warning: #FF9800;--bg-primary: #FFF9F0;--bg-secondary: #F5F5F5;--bg-card: #FFFFFF;--text-primary: #333333;--text-secondary: #666666;--text-light: #999999;--border: #E0E0E0;--shadow: rgba(0, 0, 0, .1);font-family:Nunito,Segoe UI,system-ui,-apple-system,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:var(--text-primary);background-color:var(--bg-primary);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;min-height:100dvh}#root{width:100%;min-height:100vh;min-height:100dvh}h1,h2,h3,h4{margin:0;font-weight:700}h1{font-size:2em}h2{font-size:1.5em}h3{font-size:1.2em}button{border-radius:12px;border:none;padding:12px 24px;font-size:1em;font-weight:600;font-family:inherit;background-color:var(--primary);color:#fff;cursor:pointer;transition:all .2s ease}button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px var(--shadow)}button:active:not(:disabled){transform:translateY(0)}input{font-family:inherit;font-size:1em;padding:12px 16px;border:2px solid var(--border);border-radius:10px;background:#fff;color:var(--text-primary);transition:border-color .2s}input:focus{outline:none;border-color:var(--primary)}.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:20px}.spinner{width:50px;height:50px;border:4px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin 1s linear infinite}.container{max-width:500px;margin:0 auto;padding:20px}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes confetti{0%{transform:translateY(0) rotate(0);opacity:1}to{transform:translateY(100vh) rotate(720deg);opacity:0}}body.tg-webapp{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}.child-select{padding:24px;text-align:center}.child-select h1{font-size:32px;margin-bottom:8px}.subtitle{color:var(--tg-theme-hint-color);margin-bottom:24px}.children-list{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.child-card{display:flex;align-items:center;gap:12px;background:#f5f5f5;padding:16px;border-radius:16px;text-align:left;color:#333!important}.child-avatar{font-size:32px}.child-name{flex:1;font-weight:600;font-size:18px}.child-age{color:var(--tg-theme-hint-color)}.add-child-btn{width:100%;background:var(--primary);color:#fff;font-weight:600}.child-avatar{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:#ffe08a;color:#6b5a2a;font-size:24px;font-weight:700}.child-select{background:var(--paper);color:var(--ink);font-family:var(--ui);min-height:100vh;padding:40px 20px}.child-select h1{font-size:34px;font-weight:400;color:var(--ink)}.child-select .subtitle{color:var(--ink-soft);font-size:17px}.child-card{background:#fff;border:none;border-radius:var(--r-card);box-shadow:0 3px 12px #3a2e261a;padding:14px 18px;gap:14px}.child-name{font-family:var(--reading);font-size:20px;color:var(--ink)}.child-age{color:var(--ink-soft);font-size:15px}.add-child-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#2e8c8c;color:#fff;border:none;border-radius:var(--r-pill);font-family:var(--ui);font-size:18px;padding:15px 28px;box-shadow:0 4px #00000029}.add-child-btn:active{transform:translateY(3px);box-shadow:0 1px #00000029}.create-child{padding:16px}.create-child h2{text-align:center;margin-bottom:24px}.form-group{margin-bottom:20px}.form-group label{display:block;font-weight:600;margin-bottom:8px}.form-group input{width:100%;padding:12px 16px;font-size:16px;border:2px solid #eee;border-radius:12px;outline:none}.form-group input:focus{border-color:var(--primary)}.age-buttons,.gender-buttons{display:flex;gap:8px}.age-buttons button,.gender-buttons button{flex:1;background:#f5f5f5;padding:12px}.age-buttons button.active,.gender-buttons button.active{background:var(--primary);color:#fff}.submit-btn{width:100%;background:var(--success);color:#fff;font-weight:600;padding:16px;margin-top:16px}.form-error{margin:0 0 12px;padding:10px 14px;border-radius:12px;background:#ffe8e8;color:#c0392b;font-size:15px;text-align:center}.letter-map{display:flex;flex-direction:column;gap:24px}.letter-block{background:#f9f9f9;border-radius:16px;padding:16px}.block-title{font-size:14px;color:var(--tg-theme-hint-color);margin-bottom:12px}.letters-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.letter-btn{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;aspect-ratio:1;background:#fff;border:2px solid #eee;border-radius:12px;font-size:24px;font-weight:600;color:#333!important}.letter-btn .letter{line-height:1}.letter-btn .stars{font-size:8px;margin-top:2px}.letter-btn .lock{position:absolute;font-size:12px;opacity:.5}.letter-btn.completed{background:#d4edda;border-color:var(--success)}.letter-btn.current{background:#fff3cd;border-color:var(--warning);animation:pulse 2s infinite}.letter-btn.locked{background:#f5f5f5;color:#ccc}.letter-map{background:var(--paper);color:var(--ink);font-family:var(--ui);padding:16px 16px 32px;min-height:100vh}.block-title{font-size:16px;font-weight:400;color:var(--ink-soft);margin:22px 0 10px}.letters-grid{gap:10px}.letter-btn{position:relative;background:#fff;border:none;border-radius:var(--r-card);color:var(--ink);font-family:var(--reading);font-size:30px;aspect-ratio:1;box-shadow:0 3px 10px #3a2e261a;transition:transform .12s}.letter-btn:active:not(:disabled){transform:scale(.95)}.letter-btn.completed{background:var(--paper-deep)}.letter-btn.current{background:var(--hero, #2e8c8c);color:#fff;box-shadow:0 4px #00000029}.letter-btn.locked{background:transparent;box-shadow:none;color:#c9bda9}.letter-btn .stars{position:absolute;bottom:5px;left:0;right:0;display:flex;justify-content:center;gap:1px;color:#d9a441}.letter-btn .lock{position:absolute;bottom:7px;left:50%;transform:translate(-50%)}.letter-btn{font-size:34px;border-radius:var(--r-card)}.letter-btn.current{box-shadow:0 5px #00000038;transform:translateY(-2px)}.letter-btn.current:active{transform:translateY(1px);box-shadow:0 2px #00000038}.letter-btn.completed{box-shadow:0 3px #3a2e261f}.letters-grid{gap:12px}.letter-block{margin-bottom:6px}.map-header{display:flex;align-items:center;gap:10px;padding:4px 2px 10px}.map-avatar{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:#e0b24a;color:#fff;font-family:var(--reading);font-size:20px}.map-stars{display:flex;align-items:center;gap:5px;color:#d9a441;font-size:18px}.map-scene{position:relative;height:100vh;overflow-y:auto;background:var(--paper);overscroll-behavior-y:contain}.map-hud{position:fixed;top:12px;left:12px;z-index:2;display:flex;align-items:center;gap:10px}.map-road{display:flex;flex-direction:column}.map-segment{position:relative;width:100%}.map-art{display:block;width:100%;height:100%;object-fit:cover}.map-segment.placeholder{display:flex;align-items:center;justify-content:center;background:repeating-linear-gradient(-45deg,var(--paper),var(--paper) 14px,var(--paper-deep) 14px,var(--paper-deep) 28px)}.map-todo{color:var(--ink-soft);font-size:15px}.map-stone{position:absolute;transform:translate(-50%,-50%);width:24%;aspect-ratio:1.4 / 1;border:none;border-radius:50%;background:transparent;padding:0}.map-stone:not(:disabled){cursor:pointer}.map-stone.current{box-shadow:0 0 0 4px #ffffff8c;animation:stone-calls 2.2s ease-in-out infinite}@keyframes stone-calls{0%,to{box-shadow:0 0 0 4px #ffffff80}50%{box-shadow:0 0 0 12px #fff0}}.map-stone:active:not(:disabled){transform:translate(-50%,-50%) scale(.94)}@media(prefers-reduced-motion:reduce){.map-stone.current{animation:none}}.lesson{padding:16px;min-height:100vh;display:flex;flex-direction:column}.lesson-header{display:flex;align-items:center;gap:12px;margin-bottom:24px}.letter-badge{background:var(--primary);color:#fff;width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:600}.progress-bar{flex:1;height:8px;background:#eee;border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:var(--success);transition:width .3s}.progress-text{font-size:14px;color:var(--tg-theme-hint-color)}.exercise{flex:1;display:flex;flex-direction:column;align-items:center;text-align:center}.instruction{font-size:20px;margin-bottom:32px}.options-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;width:100%;max-width:300px}.option{aspect-ratio:1;font-size:48px;font-weight:600;background:#f5f5f5;border-radius:16px;transition:all .2s}.option.correct{background:#d4edda;border:3px solid var(--success)}.option.wrong{background:#f8d7da;border:3px solid var(--danger)}.syllable-card,.word-card{display:flex;flex-direction:column;align-items:center;gap:16px}.big-text{font-size:72px;font-weight:700;color:var(--primary)}.syllables{font-size:24px;color:var(--tg-theme-hint-color)}.read-btn{background:var(--success);color:#fff;font-size:18px;padding:16px 48px}.feedback{font-size:24px;padding:16px;border-radius:12px}.feedback.correct{background:#d4edda;color:var(--success)}.feedback.wrong{background:#f8d7da;color:var(--danger)}.syllable-build{display:flex;flex-direction:column;align-items:center;gap:24px}.build-area{display:flex;gap:8px;font-size:48px;font-weight:600}.selected-letter{background:var(--secondary);color:#fff;width:64px;height:64px;display:flex;align-items:center;justify-content:center;border-radius:12px}.placeholder{width:64px;height:64px;border:3px dashed #ccc;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#ccc}.letter-buttons{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.letter-buttons .letter-btn{width:56px;height:56px;font-size:28px;background:#f5f5f5}.letter-buttons .letter-btn:disabled{opacity:.3}.reset-btn{background:transparent;color:var(--tg-theme-link-color)}.lesson.finished{justify-content:center;align-items:center}.finish-card{display:flex;flex-direction:column;align-items:center;gap:20px;padding:40px;background:#fff;border-radius:24px;box-shadow:0 4px 20px #0000001a;text-align:center}.finish-letter{width:80px;height:80px;background:var(--primary);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:40px;font-weight:700}.finish-stars{font-size:36px}.finish-stats{display:flex;flex-direction:column;gap:5px;color:var(--text-secondary)}.finish-stats .percent{font-size:24px;font-weight:700;color:var(--primary)}.finish-message{font-size:24px;font-weight:700}.finish-buttons{display:flex;gap:15px;margin-top:10px}.repeat-btn{padding:14px 24px;font-size:16px;background:var(--bg-secondary);border:2px solid var(--border);border-radius:12px;cursor:pointer}.continue-btn{padding:14px 24px;font-size:16px;background:var(--primary);color:#fff;border:none;border-radius:12px;cursor:pointer}.gate-card .finish-message{line-height:1.5}.gate-btn{display:block;text-decoration:none;text-align:center}.part-title{text-align:center;font-size:15px;color:#888;padding:4px 0 10px}.part-dots{display:flex;justify-content:center;gap:5px;padding-bottom:10px}.part-dot{width:6px;height:6px;border-radius:50%;background:#ddd}.part-dot.done{background:#a8e6a3}.part-dot.current{background:#ffd166;transform:scale(1.4)}.exit-btn{border:none;background:none;font-size:20px;color:#999;padding:4px 8px}.lesson{min-height:100vh;background:var(--paper);color:var(--ink);font-family:var(--ui)}.lesson-header{display:flex;align-items:center;gap:8px;padding:14px 14px 8px}.letter-badge{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:12px;background:var(--hero);color:#fff;font-family:var(--reading);font-size:22px;flex:none}.part-title{text-align:center;font-size:15px;color:var(--ink-soft);padding:2px 0 12px}.exit-btn{border:none;background:none;color:var(--ink-soft);font-size:19px;padding:4px 6px;flex:none}.part-dots{display:flex;justify-content:center;gap:5px;padding-bottom:12px}.part-dot{width:5px;height:5px;border-radius:50%;background:var(--paper-deep)}.part-dot.done{background:var(--hero);opacity:.5}.part-dot.current{background:var(--hero);transform:scale(1.5)}.lesson.finished{display:flex;align-items:center;justify-content:center;padding:24px}.finish-card{width:100%;max-width:340px;text-align:center;background:#fff;border-radius:26px;padding:30px 24px;box-shadow:0 10px 30px #3a2e261f}.finish-letter{font-family:var(--reading);font-size:76px;line-height:1;color:var(--hero)}.finish-stars{font-size:30px;letter-spacing:3px;margin:6px 0}.finish-stats{color:var(--ink-soft);font-size:17px}.finish-message{margin:12px 0 22px;font-size:19px;line-height:1.45}.finish-buttons{display:flex;flex-direction:column;gap:10px}.continue-btn,.repeat-btn{padding:15px 20px;border:none;border-radius:999px;font-family:var(--ui);font-size:19px;text-decoration:none}.continue-btn{background:var(--hero);color:#fff;box-shadow:0 4px #00000029}.repeat-btn{background:var(--paper-deep);color:var(--ink)}.continue-btn:active{transform:translateY(3px);box-shadow:0 1px #00000029}.lesson-hero{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:calc(100vh - 130px);padding:0 20px 20px;box-sizing:border-box}.hero-stage{position:relative;display:flex;align-items:flex-end;justify-content:center;min-height:232px;width:100%}.hero-stage:after{content:"";position:absolute;bottom:6px;width:210px;height:18px;border-radius:50%;background:radial-gradient(ellipse,rgba(58,46,38,.22) 0%,transparent 72%)}.hero-stage:before{content:"";position:absolute;bottom:4px;width:190px;height:190px;border-radius:50%;background:radial-gradient(circle,var(--hero-soft) 0%,transparent 68%)}.hero-guide{position:relative;width:104px;height:104px;object-fit:contain;transform:translate(14px);z-index:1}.hero-owner{position:relative;width:206px;height:206px;object-fit:contain;transform-origin:bottom center;animation:hero-rises .7s cubic-bezier(.22,1.2,.36,1) both}@keyframes hero-rises{0%{transform:translateY(28px) scale(.7);opacity:0}to{transform:none;opacity:1}}.hero-name{margin:6px 0 2px;font-size:30px;color:var(--hero)}.hero-line{margin:0;font-size:19px;color:var(--ink-soft);text-align:center;max-width:22ch}.hero-letter{margin:10px 0 18px;font-size:116px;line-height:1;color:var(--hero);animation:letter-appears .5s .42s ease-out both}@keyframes letter-appears{0%{opacity:0;transform:scale(.86)}to{opacity:1;transform:none}}.hero-next{margin-top:10px;padding:16px 42px;border:none;border-radius:999px;background:var(--hero);color:#fff;font-family:var(--ui);font-size:20px;box-shadow:0 4px #00000029;transition:transform .12s,box-shadow .12s}.hero-next:active{transform:translateY(3px);box-shadow:0 1px #00000029}@media(prefers-reduced-motion:reduce){.hero-owner,.hero-letter{animation:none}}.lesson-ladder{display:flex;align-items:center;gap:4px;flex:1;padding:0 10px}.ladder-step{flex:1;height:10px;border-radius:999px;background:var(--paper-deep);display:flex;align-items:center;justify-content:center;font-size:0;transition:background .25s}.ladder-step.done{background:var(--hero)}.ladder-step.current{background:var(--hero);animation:ladder-breathes 1.8s ease-in-out infinite}@keyframes ladder-breathes{0%,to{opacity:1}50%{opacity:.45}}@media(prefers-reduced-motion:reduce){.ladder-step.current{animation:none}}.letter-intro{display:flex;flex-direction:column;align-items:center;gap:20px}.big-letter{display:flex;gap:20px;font-size:80px;font-weight:700;color:var(--primary);cursor:pointer;animation:pulse 2s infinite}.big-letter .lower{color:var(--primary-light)}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.letter-images{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;width:100%}.image-item{display:flex;flex-direction:column;align-items:center;gap:5px}.image-placeholder{width:60px;height:60px;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);border-radius:10px;font-size:30px}.image-word{font-size:12px;text-transform:capitalize}.play-btn,.continue-btn{padding:12px 24px;border-radius:20px;font-size:16px;cursor:pointer;border:none}.play-btn{background:var(--secondary);color:#fff}.continue-btn{background:var(--hero);color:#fff}.letter-trace{display:flex;flex-direction:column;align-items:center;gap:20px}.trace-svg{width:220px;height:220px;background:var(--bg-secondary);border-radius:20px;border:3px solid var(--border);cursor:crosshair;touch-action:none;-webkit-user-select:none;user-select:none}.trace-svg.drawing{border-color:var(--primary);background:var(--primary-light)}.pulse-dot{animation:pulse-scale 1s infinite}@keyframes pulse-scale{0%,to{r:8;opacity:1}50%{r:12;opacity:.7}}.trace-progress{width:220px;height:10px;background:var(--bg-secondary);border-radius:5px;overflow:hidden}.trace-fill{height:100%;background:var(--success);transition:width .1s}.letter-sound-hold{display:flex;flex-direction:column;align-items:center;gap:20px;padding:20px}.sound-text{font-size:48px;font-weight:700;color:var(--primary);animation:breathe 1.5s infinite}@keyframes breathe{0%,to{opacity:1}50%{opacity:.6}}.hold-progress{width:100%;height:20px;background:var(--bg-secondary);border-radius:10px;overflow:hidden}.hold-fill{height:100%;background:linear-gradient(90deg,var(--primary),var(--success));transition:width .1s}.hold-btn{padding:20px 40px;font-size:18px;border:none;border-radius:30px;background:var(--primary);color:#fff;cursor:pointer;transition:all .2s}.hold-btn.holding{transform:scale(1.1);background:var(--success)}.letter-table{display:flex;flex-direction:column;align-items:center;gap:15px}.letter-table table{border-collapse:collapse}.letter-table td{width:50px;height:50px;text-align:center;font-size:24px;font-weight:700;border:2px solid var(--border);cursor:pointer;transition:all .2s}.letter-table td:hover{background:var(--primary-light)}.letter-table td.clicked{background:var(--success);color:#fff}.letter-find-picture .items-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:20px}.letter-find-picture .item{display:flex;flex-direction:column;align-items:center;padding:10px;border:3px solid transparent;border-radius:15px;cursor:pointer;transition:all .2s}.letter-find-picture .item.selected{border-color:var(--primary);background:var(--primary-light)}.letter-find-picture .item.correct{border-color:var(--success);background:#4caf5033}.letter-find-picture .item.wrong{border-color:var(--error);opacity:.5}.check-btn{padding:12px 30px;font-size:16px;background:var(--primary);color:#fff;border:none;border-radius:20px;cursor:pointer}.letter-find-among-pictures,.letter-find-among-letters{display:flex;flex-direction:column;align-items:center;gap:15px}.find-counter{font-size:18px;font-weight:700;color:var(--primary)}.items-grid.mixed,.letters-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.items-grid.mixed .item,.letters-grid .letter-btn{width:50px;height:50px;display:flex;align-items:center;justify-content:center;font-size:24px;border:2px solid var(--border);border-radius:10px;background:#fff;cursor:pointer;transition:all .2s}.items-grid.mixed .item.found,.letters-grid .letter-btn.found{background:var(--success);color:#fff;border-color:var(--success)}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.shake{animation:shake .3s}.feedback{font-size:18px;padding:10px 20px;border-radius:10px}.hint{font-size:14px;color:var(--text-secondary)}.word-image{width:100%;height:100%;object-fit:contain}.word-image.fallback{display:flex;align-items:center;justify-content:center;font-size:40px}.big-letter{font-size:96px;color:var(--hero);font-weight:400}.big-letter .lower{color:var(--hero);opacity:.55}.image-item{gap:8px}.image-placeholder{width:84px;height:84px;border-radius:20px;background:#fff;box-shadow:0 3px 10px #3a2e261f;padding:8px;box-sizing:border-box}.image-word{font-family:var(--reading);font-size:15px;color:var(--ink-soft)}.letter-images{gap:14px}.items-grid{gap:12px}.item{background:#fff;border-radius:20px;padding:12px 8px;box-shadow:0 3px 10px #3a2e261a;transition:transform .12s}.item-image{width:76px;height:76px;margin:0 auto}.item-word{font-family:var(--reading);color:var(--ink-soft)}.item:active{transform:scale(.96)}.item.selected{outline:3px solid var(--hero)}.item.correct{outline:3px solid #4caf50}.letters-grid .letter-btn,.letter-table .letter-btn{background:#fff;border-radius:18px;color:var(--ink);box-shadow:0 3px 10px #3a2e261a}.play-btn,.hold-btn,.continue-btn,.check-btn{font-family:var(--ui);border-radius:999px}.play-btn{background:#fff;color:var(--hero);border:2px solid var(--hero);padding:12px 26px;font-size:18px}.hold-btn{background:var(--hero);color:#fff}.hold-fill{background:var(--hero)}.letter-images{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px;justify-items:center;max-width:300px;margin:0 auto}.image-placeholder{width:96px;height:96px}.image-word{font-size:16px}.big-letter .lower{opacity:.72}.syllable-star{display:flex;flex-direction:column;align-items:center;gap:20px}.star-container{position:relative;width:200px;height:200px;display:flex;align-items:center;justify-content:center}.star-center{width:60px;height:60px;display:flex;align-items:center;justify-content:center;font-size:36px;font-weight:700;background:var(--primary);color:#fff;border-radius:50%;z-index:2}.star-ray{position:absolute;display:flex;flex-direction:column;align-items:center;cursor:pointer;transition:all .3s}.star-ray:hover{transform:scale(1.1)}.ray-line{width:2px;height:40px;background:var(--border);position:absolute;transform-origin:center bottom}.ray-letter{width:40px;height:40px;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;background:#fff;border:2px solid var(--border);border-radius:50%;z-index:1}.star-ray.clicked .ray-letter{background:var(--success);color:#fff;border-color:var(--success)}.syllable-fusion{display:flex;flex-direction:column;align-items:center;gap:30px;padding:20px}.fusion-letters{display:flex;align-items:center;gap:20px;font-size:48px;font-weight:700}.fusion-consonant{color:var(--primary)}.fusion-vowel{color:var(--secondary)}.fusion-plus{color:var(--text-secondary);font-size:36px}.start-btn{padding:15px 30px;font-size:18px;background:var(--primary);color:#fff;border:none;border-radius:25px;cursor:pointer}.fusion-animation{display:flex;align-items:center;justify-content:center;width:100%;height:100px;position:relative}.letter-left,.letter-right{font-size:48px;font-weight:700}.letter-left{color:var(--primary)}.letter-right{color:var(--secondary)}.flying-object{font-size:32px;animation:fly 2s ease-in-out forwards}@keyframes fly{0%{transform:translate(-50px)}to{transform:translate(50px)}}.fusion-result{animation:appear .5s ease-out}@keyframes appear{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}.syllable-big{font-size:72px;font-weight:700;color:var(--primary)}.syllable-table{display:flex;flex-direction:column;align-items:center;gap:15px}.syllable-table table{border-collapse:collapse}.syllable-table th,.syllable-table td{width:50px;height:50px;text-align:center;border:1px solid var(--border)}.syllable-table th{background:var(--bg-secondary);font-weight:700;color:var(--primary)}.syllable-table td{font-size:18px;cursor:pointer;transition:all .2s}.syllable-table td:hover{background:var(--primary-light)}.syllable-table td.clicked{background:var(--success);color:#fff}.syllable-build{display:flex;flex-direction:column;align-items:center;gap:20px}.build-area{display:flex;gap:10px}.slot{width:60px;height:70px;display:flex;align-items:center;justify-content:center;font-size:36px;font-weight:700;border:3px dashed var(--border);border-radius:10px;background:var(--bg-secondary)}.slot.filled{border-style:solid;border-color:var(--primary);background:var(--primary-light)}.slot.filled.correct{border-color:#4caf50;background:#e8f5e9}.letter-buttons{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.letter-btn{width:50px;height:50px;font-size:24px;font-weight:700;border:2px solid var(--border);border-radius:10px;background:#fff;cursor:pointer;transition:all .2s;outline:none;-webkit-tap-highlight-color:transparent}.letter-btn:focus{outline:none}.letter-btn:hover:not(:disabled){background:var(--primary-light);border-color:var(--primary)}.letter-btn.used{opacity:.3;cursor:not-allowed}.syllable-read{display:flex;flex-direction:column;align-items:center;gap:20px}.syllable-card{padding:30px 50px;background:#fff;border-radius:20px;box-shadow:0 4px 12px #0000001a}.big-text{font-size:64px;font-weight:700;color:var(--primary)}.read-btn{padding:12px 30px;font-size:18px;background:var(--success);color:#fff;border:none;border-radius:25px;cursor:pointer}.syllable-find{display:flex;flex-direction:column;align-items:center;gap:30px;padding:20px}.find-target{display:flex;flex-direction:column;align-items:center;gap:10px}.find-label{font-size:18px;color:var(--text-secondary)}.find-syllable{font-size:64px;font-weight:700;color:var(--primary);padding:20px 40px;background:var(--primary-light);border-radius:20px}.find-options{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;max-width:320px}.find-option{padding:20px;font-size:28px;font-weight:700;color:#333;background:#fff;border:3px solid var(--border);border-radius:15px;cursor:pointer;transition:all .2s}.find-option:hover:not(:disabled){border-color:var(--primary);transform:scale(1.05)}.find-option.selected{border-color:var(--primary);background:var(--primary-light)}.find-option.correct{border-color:#4caf50!important;background:#e8f5e9!important;animation:pulse-green .5s}.find-option.wrong{border-color:#f44336!important;background:#ffebee!important;animation:shake .5s}@keyframes pulse-green{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-10px)}75%{transform:translate(10px)}}.vowel-duet{text-align:center;padding:16px}.duet-scene{font-size:64px;margin-bottom:12px}.duet-path{display:flex;align-items:center;justify-content:center;gap:8px}.duet-letter{width:84px;height:84px;border:none;border-radius:20px;font-size:44px;font-weight:700;color:#333;background:#eee;transition:transform .15s,background .15s}.duet-letter.active{background:#ffe08a;transform:scale(1.06)}.duet-letter.done{background:#a8e6a3}.duet-track{width:72px;height:8px;border-radius:4px;background:#eee;transition:background .25s}.duet-track.lit{background:#ffd166}.duet-result{margin-top:16px;font-size:40px;font-weight:700;color:#2d8a3e;min-height:48px}.duet-letter{background:#fff;color:var(--ink);box-shadow:0 3px 10px #3a2e261f}.duet-letter.active{background:var(--hero);color:#fff}.duet-letter.done{background:var(--hero);color:#fff;opacity:.55}.duet-track.lit{background:var(--hero)}.duet-result{color:var(--hero);font-family:var(--reading)}.word-match{display:flex;flex-direction:column;gap:20px}.match-columns{display:flex;justify-content:space-between;gap:30px}.words-column,.images-column{display:flex;flex-direction:column;gap:10px}.match-item{padding:15px 20px;background:#fff;border:2px solid var(--border);border-radius:10px;cursor:pointer;transition:all .2s}.match-item.word{font-size:18px}.match-item.image{font-size:30px;display:flex;align-items:center;justify-content:center}.match-item.selected{border-color:var(--primary);background:var(--primary-light)}.match-item.connected{border-color:var(--success)}.word-math{display:flex;flex-direction:column;align-items:center;gap:20px}.equation{font-size:24px;font-weight:700;color:var(--primary)}.answer-area{display:flex;align-items:center;gap:10px}.equals{font-size:24px;font-weight:700}.word-math input{width:150px;padding:15px;font-size:24px;text-align:center;border:2px solid var(--border);border-radius:10px}.word-read{display:flex;flex-direction:column;align-items:center;gap:20px}.word-card{display:flex;flex-direction:column;align-items:center;padding:30px 50px;background:#fff;border-radius:20px;box-shadow:0 4px 12px #0000001a}.word-card .syllables{font-size:18px;color:var(--text-secondary);margin-top:10px}.word-tower{text-align:center;padding:16px}.tower-stack{display:flex;flex-direction:column-reverse;align-items:center;gap:6px;min-height:140px;justify-content:flex-end;margin-bottom:20px}.tower-stack.shake{animation:tower-drop .4s}@keyframes tower-drop{0%{transform:translate(0)}25%{transform:translate(-8px) rotate(-2deg)}75%{transform:translate(8px) rotate(2deg)}to{transform:translate(0)}}.tower-block{position:relative;min-width:96px;padding:14px 20px;border-radius:14px;background:#7cc4f0;color:#fff;font-size:30px;font-weight:700}.tower-block.stressed{background:#f0a35e}.tower-peak{position:absolute;top:-18px;left:50%;transform:translate(-50%);font-size:16px;color:#f0a35e}.tower-slot{width:96px;height:12px;border-radius:6px;background:#e3e3e3}.tower-blocks{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.tower-brick{min-width:84px;padding:14px 18px;border:none;border-radius:14px;background:#ffe08a;color:#333;font-size:28px;font-weight:700}.tower-word{font-size:34px;font-weight:700;color:#2d8a3e}.tower-salute{margin-top:8px;font-size:22px}.tower-stack.milestone .tower-block{box-shadow:0 0 18px #ffd166e6}.tower-brick.used{opacity:.35}.tower-block{background:var(--hero)}.tower-block.stressed{background:var(--hero);box-shadow:inset 0 0 0 3px #ffffffbf}.tower-peak{color:var(--hero)}.tower-brick{background:#fff;color:var(--ink);box-shadow:0 3px 10px #3a2e261f}.tower-word{color:var(--hero);font-family:var(--reading)}.sentence-picture,.sentence-preposition,.sentence-ending{display:flex;flex-direction:column;align-items:center;gap:20px}.sentence{font-size:20px;text-align:center;line-height:1.6}.blank{display:inline-block;min-width:80px;padding:5px 15px;background:var(--bg-secondary);border-radius:5px;font-weight:700}.blank.correct{background:#4caf504d}.blank.wrong{background:#f443364d}.options-row{display:flex;gap:15px;flex-wrap:wrap;justify-content:center}.option-card{display:flex;flex-direction:column;align-items:center;padding:15px;background:#fff;border:2px solid var(--border);border-radius:15px;cursor:pointer;transition:all .2s}.option-card:hover{border-color:var(--primary)}.option-card.correct{border-color:var(--success);background:#4caf5033}.option-card.wrong{border-color:var(--error);opacity:.5}.option-btn{padding:12px 25px;font-size:16px;background:#fff;border:2px solid var(--border);border-radius:10px;cursor:pointer;transition:all .2s}.option-btn:hover:not(:disabled){border-color:var(--primary);background:var(--primary-light)}.option-btn.correct{border-color:var(--success);background:#4caf5033}.option-btn.wrong{border-color:var(--error);background:#f4433633}.sentence-order{display:flex;flex-direction:column;gap:15px}.sentences-list{display:flex;flex-direction:column;gap:10px}.sentence-item{display:flex;align-items:center;gap:10px;padding:10px;background:#fff;border:1px solid var(--border);border-radius:10px}.sentence-item .number{width:30px;height:30px;display:flex;align-items:center;justify-content:center;background:var(--primary);color:#fff;border-radius:50%;font-weight:700}.sentence-item .text{flex:1;font-size:14px}.sentence-item .arrows{display:flex;flex-direction:column;gap:2px}.sentence-item .arrows button{padding:2px 8px;font-size:12px;border:1px solid var(--border);border-radius:5px;background:#fff;cursor:pointer}.sentence-build{display:flex;flex-direction:column;align-items:center;gap:20px}.sentence-build .build-area{padding:20px 30px;min-height:60px;min-width:200px;background:var(--bg-secondary);border-radius:10px;font-size:18px;text-align:center}.word-buttons{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.word-btn{padding:10px 20px;font-size:16px;background:#fff;border:2px solid var(--border);border-radius:10px;cursor:pointer}.word-btn.used{opacity:.3;cursor:not-allowed}.word-template{font-size:36px;font-weight:700}.ending{color:var(--primary)}.ending.correct{color:var(--success)}.ending.wrong{color:var(--error)}.sentence-adjective{display:flex;flex-direction:column;align-items:center;gap:20px}.phrase-card{display:flex;gap:15px;font-size:28px;font-weight:700}.adjective{color:var(--secondary)}.noun{color:var(--primary)}.sentence-who-does,.sentence-verb-place{display:flex;flex-direction:column;align-items:center;gap:20px}.subject,.verb{font-size:28px;font-weight:700;color:var(--primary)}.options-column{display:flex;flex-direction:column;gap:10px;width:100%;max-width:250px}.options-column .option-btn{width:100%}.story-read{display:flex;flex-direction:column;align-items:center;gap:20px}.story-title{font-size:24px;color:var(--primary)}.story-image{font-size:60px}.story-text{font-size:18px;line-height:2;text-align:center}.story-text .word{cursor:pointer;padding:2px 4px;border-radius:4px;transition:all .2s}.story-text .word.highlight{background:var(--primary);color:#fff}.mode-buttons{display:flex;gap:15px}.mode-btn{padding:15px 25px;font-size:16px;background:var(--primary);color:#fff;border:none;border-radius:20px;cursor:pointer}.mode-btn:last-child{background:var(--secondary)}.finish-btn{padding:12px 30px;font-size:16px;background:var(--success);color:#fff;border:none;border-radius:20px;cursor:pointer}.story-questions{display:flex;flex-direction:column;align-items:center;gap:20px}.story-ref{font-size:14px;color:var(--text-secondary)}.question{font-size:20px;font-weight:700;text-align:center}.puzzle-wordsearch{display:flex;flex-direction:column;align-items:center;gap:15px}.words-to-find{font-size:16px}.words-to-find .found{text-decoration:line-through;color:var(--success)}.grid{display:flex;flex-direction:column;gap:2px}.grid-row{display:flex;gap:2px}.grid-cell{width:40px;height:40px;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;background:#fff;border:1px solid var(--border);cursor:pointer}.grid-cell.selected{background:var(--primary);color:#fff}.puzzle-lines .match-columns{display:flex;justify-content:space-between;gap:50px}.puzzle-lines .words-column,.puzzle-lines .images-column{display:flex;flex-direction:column;gap:15px}.puzzle-lines .item{padding:15px 25px;background:#fff;border:2px solid var(--border);border-radius:10px;cursor:pointer;font-size:18px}.puzzle-lines .item.selected{border-color:var(--primary);background:var(--primary-light)}.puzzle-lines .item.image{font-size:30px}.puzzle-cipher{display:flex;flex-direction:column;align-items:center;gap:20px}.cipher-code{display:flex;gap:10px;font-size:40px}.puzzle-cipher input{padding:15px;font-size:24px;text-align:center;width:200px;border:2px solid var(--border);border-radius:10px}.puzzle-coloring{display:flex;flex-direction:column;align-items:center;gap:20px}.puzzle-coloring .text{font-size:18px;text-align:center}.coloring-elements{display:flex;flex-wrap:wrap;gap:15px;justify-content:center}.color-item{display:flex;flex-direction:column;align-items:center;padding:15px;background:#fff;border:2px solid var(--border);border-radius:10px;cursor:pointer}.color-item.colored{border-color:var(--success);background:#4caf5033}.element-name{font-weight:700}.element-color{font-size:14px;color:var(--text-secondary)}.puzzle-syllable{display:flex;flex-direction:column;align-items:center;gap:20px}.puzzle-syllable .build-area{font-size:36px;font-weight:700;color:var(--primary)}.syllable-buttons{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.syllable-btn{padding:15px 25px;font-size:20px;font-weight:700;background:#fff;color:#333;border:2px solid var(--border);border-radius:10px;cursor:pointer}.syllable-btn.used{opacity:.3}.puzzle-anagram{display:flex;flex-direction:column;align-items:center;gap:20px}.hint-text{font-size:14px;color:var(--text-secondary)}.puzzle-anagram .build-area{font-size:36px;font-weight:700;color:var(--primary);letter-spacing:5px}.puzzle-numbers{display:flex;flex-direction:column;align-items:center;gap:15px}.numbers-row{display:flex;gap:10px}.number-badge{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--primary);color:#fff;border-radius:50%;font-size:18px;font-weight:700}.alphabet-hint{display:flex;flex-wrap:wrap;gap:5px;font-size:12px;max-width:300px;justify-content:center}.alphabet-letter{display:flex;flex-direction:column;align-items:center}.alphabet-letter small{font-size:8px;color:var(--text-secondary)}.puzzle-numbers input{padding:15px;font-size:24px;text-align:center;width:200px;border:2px solid var(--border);border-radius:10px}.puzzle-tongue-twister{display:flex;flex-direction:column;align-items:center;gap:20px}.twister-text{font-size:24px;text-align:center;line-height:1.6;transition:all .3s}.twister-text.speed-slow{animation:none}.twister-text.speed-normal{animation:pulse 1s infinite}.twister-text.speed-fast{animation:pulse .3s infinite}.speed-indicator{font-size:30px}.speed-btn,.check-btn{padding:12px 30px;font-size:16px;background:var(--primary);color:#fff;border:none;border-radius:20px;cursor:pointer}.reset-btn{padding:8px 16px;font-size:14px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:15px;cursor:pointer}.feedback{padding:10px 20px;border-radius:10px;font-size:18px}.feedback.correct{background:#4caf5033;color:var(--success)}.feedback.wrong{background:#f4433633;color:var(--error)}.learning{padding:16px}.learning-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.child-info{display:flex;align-items:center;gap:12px}.child-name{font-weight:600;font-size:18px}.stars{background:#fff3cd;padding:4px 12px;border-radius:20px;font-weight:600}*{box-sizing:border-box;margin:0;padding:0}:root{--tg-theme-bg-color: #ffffff;--tg-theme-text-color: #000000;--tg-theme-hint-color: #999999;--tg-theme-link-color: #2481cc;--tg-theme-button-color: #2481cc;--tg-theme-button-text-color: #ffffff;--primary: #FF6B6B;--secondary: #4ECDC4;--success: #2ECC71;--warning: #F1C40F;--danger: #E74C3C;--bg: var(--tg-theme-bg-color);--text: var(--tg-theme-text-color)}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text);min-height:100vh}.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:16px}.spinner{width:48px;height:48px;border:4px solid #eee;border-top-color:var(--primary);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.container{padding:24px;text-align:center}h1,h2,h3{font-weight:600}button{font-family:inherit;font-size:16px;cursor:pointer;border:none;border-radius:12px;padding:12px 24px;transition:transform .1s,opacity .2s}button:active{transform:scale(.98)}button:disabled{opacity:.5;cursor:not-allowed}.back-btn{background:transparent;color:var(--tg-theme-link-color);padding:8px 16px;margin-bottom:16px}.conflict-screen h1{font-size:24px;margin-bottom:16px}.conflict-text{margin-bottom:24px;line-height:1.5}.conflict-actions{display:flex;flex-direction:column;gap:12px}.conflict-actions button{background:var(--tg-theme-button-color, #d2691e);color:var(--tg-theme-button-text-color, #fff)}.conflict-actions button.secondary{background:#f0f0f0;color:#333}
