:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#faf7f2;--surface:#fff;--ink:#201a17;--muted:#7a6f68;--accent:#d3342d;--accent-ink:#fff;--border:#e7ddd3;--green:#1f9d55;--green-bg:#e7f8ee;--red:#d3342d;--red-bg:#fdeceb;--shadow:0 8px 24px #201a1714;font-family:Segoe UI,Helvetica Neue,Arial,sans-serif}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#16130f;--surface:#221d18;--ink:#f3ede5;--muted:#a89c90;--accent:#ff6b5f;--accent-ink:#1a0f0d;--border:#362e26;--green:#3ecb82;--green-bg:#12321f;--red:#ff6b5f;--red-bg:#3a1815;--shadow:0 8px 24px #00000073}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--ink);-webkit-tap-highlight-color:transparent;margin:0}button{font-family:inherit}.app-shell{flex-direction:column;min-height:100dvh;display:flex}.topbar{padding:calc(14px + env(safe-area-inset-top)) 16px 14px;border-bottom:1px solid var(--border);background:var(--surface);z-index:5;align-items:center;gap:12px;display:flex;position:sticky;top:0}.back-btn{color:var(--muted);white-space:nowrap;font-size:.95rem;font-weight:600;text-decoration:none}.back-btn:hover{color:var(--ink)}.mode-title{flex:1;margin:0;font-size:1.05rem;font-weight:700}.settings-menu{margin-left:auto;position:relative}.settings-toggle{border:1px solid var(--border);background:var(--bg);width:40px;height:40px;color:var(--ink);cursor:pointer;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s,border-color .15s;display:flex}.settings-toggle.active,.settings-toggle:hover{border-color:var(--ink)}.settings-dropdown{z-index:10;background:var(--surface);border:1px solid var(--border);width:min(340px,90vw);box-shadow:var(--shadow);text-align:left;border-radius:14px;padding:14px;animation:.14s menu-in;position:absolute;top:calc(100% + 8px);right:0}@keyframes menu-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.settings-section+.settings-section{border-top:1px solid var(--border);margin-top:12px;padding-top:12px}.settings-section-label{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;margin:0 0 8px;font-size:.75rem;font-weight:700}.settings-accordion-toggle{width:100%;color:var(--ink);cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;padding:2px;font-size:.92rem;font-weight:700;display:flex}.settings-accordion-right{color:var(--muted);align-items:center;gap:8px;display:flex}.settings-accordion-badge{color:var(--muted);background:var(--bg);border:1px solid var(--border);border-radius:999px;padding:2px 9px;font-size:.75rem;font-weight:600}.settings-chevron{flex-shrink:0;transition:transform .15s}.settings-accordion-toggle.open .settings-chevron{transform:rotate(180deg)}.settings-accordion-body{margin-top:10px}.settings-reset-btn{border:none;border-top:1px solid var(--border);width:100%;color:var(--red);cursor:pointer;background:0 0;margin-top:14px;padding-top:12px;font-size:.85rem;font-weight:700}.category-list{flex-direction:column;gap:2px;max-height:280px;display:flex;overflow-y:auto}.category-row{width:100%;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;padding:8px;font-size:.9rem;display:flex}.category-row-all{font-weight:700}.category-list-divider{background:var(--border);height:1px;margin:4px 2px 6px}.category-check{border:2px solid var(--border);border-radius:5px;flex-shrink:0;width:18px;height:18px;transition:background .12s,border-color .12s;position:relative}.category-row.active .category-check{background:var(--accent);border-color:var(--accent)}.category-row.active .category-check:after{content:"";border:2px solid #fff;border-width:0 2px 2px 0;width:5px;height:9px;position:absolute;top:1px;left:5px;transform:rotate(45deg)}.difficulty-picker{gap:8px;display:flex}.difficulty-btn{border:1px solid var(--border);background:var(--bg);color:var(--ink);cursor:pointer;border-radius:10px;flex:1;padding:8px 10px;font-size:.85rem;font-weight:600}.difficulty-btn.active{background:var(--ink);border-color:var(--ink);color:var(--bg)}.stage{text-align:center;flex-direction:column;flex:1;justify-content:flex-start;align-items:center;gap:20px;padding:28px 16px 40px;display:flex;position:relative}.advance-overlay{z-index:5;cursor:pointer;background:0 0;border:none;padding:0;position:absolute;inset:0}.advance-hint{color:var(--muted);max-width:min(420px,100%);font-size:.9rem}.stage-center{min-height:100vh;color:var(--muted);flex:1;justify-content:center;align-items:center;font-size:1.1rem;display:flex}.difficulty-gate{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:20px;padding:28px 20px 60px;display:flex}.difficulty-gate-hint{color:var(--muted);margin:0;font-size:1.15rem;font-weight:700}.difficulty-gate-options{flex-direction:column;gap:14px;width:min(380px,100%);display:flex}.difficulty-gate-option{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);color:var(--ink);cursor:pointer;border-radius:16px;flex-direction:column;gap:4px;padding:20px 22px;transition:transform .12s,border-color .15s;display:flex}.difficulty-gate-option:active{transform:scale(.97)}.difficulty-gate-option-title{font-size:1.15rem;font-weight:700}.difficulty-gate-option-hint{color:var(--muted);font-size:.88rem}.word-display{word-break:break-word;padding:0 8px;font-size:clamp(2.4rem,10vw,5rem);font-weight:800;line-height:1.1}.letter-display{margin:10px 0 clamp(24px,6vw,48px);font-size:clamp(6rem,30vw,14rem);font-weight:800;line-height:1}.stats-bar{flex-wrap:wrap;justify-content:center;gap:8px;padding:10px 16px 0;display:flex}.stat{background:var(--surface);border:1px solid var(--border);color:var(--muted);border-radius:999px;align-items:center;gap:5px;padding:5px 12px;font-size:.85rem;display:inline-flex}.stat b{color:var(--ink);font-weight:700}.stat-streak b{color:var(--accent)}.stat-correct b{color:var(--green)}.stat-wrong b{color:var(--red)}.screen-flash{pointer-events:none;z-index:50;animation:flash-fade var(--flash-duration,1.3s) ease-in-out forwards;position:fixed;inset:0}.screen-flash-correct{background:radial-gradient(#0000 45%,#1f9d5573 100%)}.screen-flash-wrong{background:radial-gradient(#0000 45%,#d3342d73 100%)}.screen-flash-invalid{background:radial-gradient(#0000 45%,#e6911473 100%)}@keyframes flash-fade{0%{opacity:0}18%{opacity:1}65%{opacity:.9}to{opacity:0}}.feedback-banner{border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:3px;width:min(420px,100%);min-height:52px;padding:10px 20px;font-weight:700;display:flex}.feedback-banner.idle{min-height:20px}.feedback-banner.correct{background:var(--green-bg);color:var(--green)}.feedback-banner.wrong{background:var(--red-bg);color:var(--red)}.feedback-icon{font-size:1.5rem;line-height:1}.feedback-reading{font-size:1.05rem}.feedback-translation{opacity:.9;font-size:.95rem;font-weight:600}.answer-slots{flex-wrap:wrap;justify-content:center;gap:8px;width:min(600px,100%);display:flex}.word-group{gap:8px;display:flex}.word-group+.word-group{margin-left:14px}.slot{border:2px solid var(--border);background:var(--surface);min-width:44px;height:52px;color:var(--ink);cursor:default;border-radius:10px;justify-content:center;align-items:center;padding:0 6px;font-size:1.2rem;font-weight:700;display:flex}.slot.filled{border-color:var(--ink);background:var(--surface);cursor:pointer}.slot.filled:active{transform:scale(.95)}.answer-slots.correct .slot.filled{border-color:var(--green);background:var(--green-bg);color:var(--green)}.answer-slots.wrong .slot.filled{border-color:var(--red);background:var(--red-bg);color:var(--red);animation:.55s ease-in-out shake}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-7px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(3px)}}.card-grid{flex-wrap:wrap;justify-content:center;gap:10px;width:min(600px,100%);display:flex}.card-grid.invalid-shake{animation:.5s ease-in-out shake}.letter-card{text-align:center;border:1px solid var(--border);background:var(--surface);min-width:56px;height:56px;box-shadow:var(--shadow);color:var(--ink);cursor:pointer;border-radius:12px;flex:none;justify-content:center;align-items:center;padding:0 10px;font-size:1.15rem;font-weight:700;line-height:1;transition:transform .1s,opacity .15s,border-color .15s;display:flex}.letter-card:active:not(:disabled){transform:scale(.93)}.letter-card.used{visibility:hidden}.letter-card:disabled:not(.used){opacity:.5;cursor:default}.options-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;width:min(560px,100%);display:grid}.option-btn{border:2px solid var(--border);background:var(--surface);box-shadow:var(--shadow);color:var(--ink);cursor:pointer;border-radius:14px;padding:18px 10px;font-size:1.4rem;font-weight:700;transition:transform .1s}.option-btn:active:not(:disabled){transform:scale(.95)}.option-btn:disabled{cursor:default}.option-btn.correct{border-color:var(--green);background:var(--green-bg);color:var(--green)}.option-btn.wrong{border-color:var(--red);background:var(--red-bg);color:var(--red);animation:.55s ease-in-out shake}.text-input-row{flex-wrap:wrap;justify-content:center;gap:10px;width:min(480px,100%);display:flex}.big-input{border:2px solid var(--border);background:var(--surface);min-width:200px;color:var(--ink);border-radius:12px;outline:none;flex:1;padding:14px 16px;font-size:1.3rem}.big-input:focus{border-color:var(--ink)}.text-input-row.correct .big-input{border-color:var(--green);color:var(--green)}.text-input-row.wrong .big-input{border-color:var(--red);color:var(--red);animation:.55s ease-in-out shake}.check-btn{background:var(--accent);color:var(--accent-ink);cursor:pointer;border:none;border-radius:12px;padding:14px 22px;font-size:1.05rem;font-weight:700}.check-btn:disabled{opacity:.5;cursor:default}.match-board{grid-template-columns:1fr 1fr;gap:10px 14px;width:min(560px,100%);display:grid}.match-column{flex-direction:column;gap:10px;display:flex}.match-tile{border:2px solid var(--border);background:var(--surface);box-shadow:var(--shadow);color:var(--ink);text-align:center;cursor:pointer;border-radius:12px;padding:12px 10px;font-weight:700;transition:transform .1s,border-color .15s,background .15s,color .15s}.match-tile-ka{font-size:1.1rem}.match-tile-ru{font-size:.9rem}.match-tile:active:not(:disabled){transform:scale(.96)}.match-tile.selected{border-color:var(--accent);background:var(--accent);color:var(--accent-ink)}.match-tile.wrong{border-color:var(--red);background:var(--red-bg);color:var(--red);animation:.5s ease-in-out shake}.match-tile.matched{visibility:hidden}.home{justify-content:flex-start;align-items:center;gap:36px;padding:48px 20px;position:relative}.home-settings{top:calc(14px + env(safe-area-inset-top));right:calc(14px + env(safe-area-inset-right));z-index:6;position:fixed}.build-hash{right:calc(56px + env(safe-area-inset-right));bottom:calc(6px + env(safe-area-inset-bottom) * .35);z-index:4;color:var(--muted);opacity:.4;font-family:monospace;font-size:.7rem;text-decoration:none;transition:opacity .15s;position:fixed}@media (hover:hover){.build-hash:hover{opacity:.9}}.home-hero{text-align:center}.home-title{color:var(--accent);margin:0;font-size:2.6rem;font-weight:800}.home-subtitle{color:var(--muted);margin:6px 0 0;font-size:1.1rem}.home-stats{color:var(--muted);margin:10px 0 0;font-size:.85rem}.home-modes{grid-template-columns:1fr;gap:16px;width:min(440px,100%);display:grid}.mode-card{background:var(--surface);box-shadow:var(--shadow);border:1px solid var(--border);color:var(--ink);border-radius:18px;flex-direction:column;gap:4px;padding:20px 22px;text-decoration:none;transition:transform .12s;display:flex}.mode-card:active{transform:scale(.97)}.mode-card-emoji{font-size:1.8rem}.mode-card-title{font-size:1.15rem;font-weight:700}.mode-card-desc{color:var(--muted);font-size:.9rem}@media (width>=720px){.home-modes{grid-template-columns:repeat(2,1fr)}.home-modes .mode-card:last-child:nth-child(odd){grid-column:1/-1}}@media (hover:hover){.category-row:hover{background:var(--bg)}.difficulty-btn:hover:not(.active){border-color:var(--ink)}.settings-accordion-toggle:hover{color:var(--accent)}.settings-reset-btn:hover{opacity:.75}.difficulty-gate-option:hover,.letter-card:hover:not(:disabled),.option-btn:hover:not(:disabled),.match-tile:hover:not(:disabled){border-color:var(--ink);transform:translateY(-2px)}.check-btn:hover:not(:disabled){opacity:.9}.mode-card:hover{transform:translateY(-3px);box-shadow:0 14px 30px #201a171f}}@media (width>=860px){.topbar,.stats-bar{padding-left:32px;padding-right:32px}.stage{gap:28px;padding-top:48px}.card-grid{width:min(680px,100%)}.options-grid{width:min(640px,100%)}.home{padding-top:72px}.home-title{font-size:3.4rem}.home-subtitle{font-size:1.25rem}.home-modes{gap:22px;width:min(820px,100%)}.mode-card{padding:26px 24px}.mode-card-emoji{font-size:2.2rem}.mode-card-title{font-size:1.3rem}.mode-card-desc{font-size:.95rem}}
