:root{--primary: #5c66fa;--success: #2eb366;--danger: #f2525c;--warning: #ff9e1a;--gold: #ffc72e;--flame: #ff7a24;--card: #fff;--bg-top: #e3e5fe;--bg-bottom: #f2f2f7;--text: #111827;--muted: #6b7280;--radius: 20px;--font: system-ui, sans-serif;--card-border: 1px solid transparent;--card-shadow: 0 4px 14px rgba(0, 0, 0, .08);--button-border: none;--sidebar: 240px;--tabbar: 64px}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font);color:var(--text);background:var(--bg-bottom);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}button,input{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}:focus-visible{outline:3px solid color-mix(in srgb,var(--primary) 60%,transparent);outline-offset:2px}h1,h2,h3{margin:0;line-height:1.2}h1{font-size:clamp(1.6rem,4vw,2.2rem)}h3{font-size:1.1rem;margin:18px 0 8px}p{line-height:1.45}kbd{font-family:inherit;font-size:.75em;padding:1px 6px;border-radius:6px;border:1px solid color-mix(in srgb,var(--muted) 50%,transparent);background:color-mix(in srgb,var(--card) 80%,transparent)}.muted{color:var(--muted)}.small{font-size:.85rem}.tiny{font-size:.62rem;font-weight:700}.grow{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.row{display:flex;align-items:center;gap:10px}.row.between{justify-content:space-between}.row.end{justify-content:flex-end}.row.center{justify-content:center}.row.wrap{flex-wrap:wrap}.clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.big-emoji{font-size:2.2rem;line-height:1}.huge-emoji{font-size:4.5rem;line-height:1}.accent-text{color:var(--primary);font-weight:700}.success-text{color:var(--success)}.flag{border-radius:3px;box-shadow:0 0 0 1px #0000001f;flex-shrink:0;display:inline-block;vertical-align:middle}.flag-emoji{box-shadow:none;line-height:1}.app{min-height:100%}.background{position:fixed;inset:0;z-index:-1;background:linear-gradient(to bottom,var(--bg-top),var(--bg-bottom) 50%)}.deco{position:absolute;left:0;right:0;bottom:0;pointer-events:none}.deco-waves{height:130px;width:100%}.deco-blocks{height:72px;opacity:.35;background:linear-gradient(#4f9e33 0 18px,transparent 18px),repeating-linear-gradient(90deg,#7a5233 0 18px,#8a5c38 18px 36px,#6f4a2e 36px 54px);background-size:100% 100%,100% 100%}.deco-blocks:before{content:"";position:absolute;inset:0 0 auto;height:18px;background:repeating-linear-gradient(90deg,#4c9a30 0 18px,#58a83a 18px 36px,#469028 36px 54px)}.content{padding:16px 16px calc(var(--tabbar) + 24px + env(safe-area-inset-bottom))}.page{max-width:880px;margin:0 auto;display:flex;flex-direction:column;gap:16px}.page-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:8px;min-height:48px}.section-title{font-size:1.35rem;margin-top:8px}.sidebar{display:none}.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:10;display:flex;height:calc(var(--tabbar) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:color-mix(in srgb,var(--card) 88%,transparent);backdrop-filter:blur(16px);border-top:1px solid color-mix(in srgb,var(--muted) 20%,transparent)}.tab{flex:1;border:0;background:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:.75rem;color:var(--muted)}.tab-icon{font-size:1.4rem;filter:grayscale(1);opacity:.7}.tab.active{color:var(--primary);font-weight:700}.tab.active .tab-icon{filter:none;opacity:1}.only-desktop{display:none}@media(min-width:900px){.sidebar{display:flex;flex-direction:column;gap:6px;position:fixed;top:0;bottom:0;left:0;width:var(--sidebar);padding:20px 14px;background:color-mix(in srgb,var(--card) 75%,transparent);backdrop-filter:blur(16px);border-right:1px solid color-mix(in srgb,var(--muted) 15%,transparent)}.brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:1.3rem;padding:0 8px 18px}.brand img{border-radius:10px}.nav-item{display:flex;align-items:center;gap:12px;padding:12px 14px;border:0;background:none;text-align:left;border-radius:calc(var(--radius) * .6);font-weight:600;color:var(--text)}.nav-item:hover{background:color-mix(in srgb,var(--primary) 10%,transparent)}.nav-item.active{background:color-mix(in srgb,var(--primary) 16%,transparent);color:var(--primary)}.nav-icon{font-size:1.3rem}.sidebar-spacer{flex:1}.content{margin-left:var(--sidebar);padding:24px 32px 48px}.tabbar,.only-mobile{display:none!important}.only-desktop{display:inline-block}}.card{background:var(--card);border-radius:var(--radius);border:var(--card-border);box-shadow:var(--card-shadow);padding:16px}button.card{text-align:left;color:var(--text)}.game-button{--button: var(--primary);position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:15px 18px;border:var(--button-border);border-radius:calc(var(--radius) * .9);background:var(--button);color:#fff;font-weight:800;font-size:1.05rem;box-shadow:0 5px color-mix(in srgb,var(--button) 70%,#000);margin-bottom:5px;transition:transform .08s,box-shadow .08s,filter .15s}.game-button:hover:not(:disabled){filter:brightness(1.06)}.game-button:active:not(:disabled){transform:translateY(5px);box-shadow:0 0 0 transparent}.game-button:disabled{--button: #9ca3af;opacity:.7}.game-button.compact{width:auto;padding:10px 16px;font-size:.95rem}.game-button.neutral{--button: color-mix(in srgb, var(--muted) 35%, var(--card));color:var(--text)}.button{padding:10px 16px;border-radius:calc(var(--radius) * .6);border:0;background:var(--primary);color:#fff;font-weight:700}.button.secondary{background:color-mix(in srgb,var(--primary) 14%,transparent);color:var(--primary)}.button.danger{background:var(--danger)}.button.small{padding:6px 12px;font-size:.9rem}.icon-button{border:0;background:color-mix(in srgb,var(--muted) 12%,transparent);width:40px;height:40px;border-radius:50%;font-size:1.1rem;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.icon-button.subtle{background:none;opacity:.55}.icon-button.subtle:hover{opacity:1}.link{border:0;background:none;color:var(--primary);font-weight:700;padding:6px 0}.link.back{font-size:1.05rem}.pill{font-size:.75rem;font-weight:700;padding:4px 8px;border-radius:999px;background:color-mix(in srgb,var(--muted) 20%,transparent)}.chip{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:999px;font-weight:600;border:2px solid color-mix(in srgb,var(--muted) 25%,transparent);background:var(--card)}.chip.selected{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 12%,var(--card));color:var(--primary)}.segmented{display:flex;background:color-mix(in srgb,var(--muted) 14%,transparent);border-radius:12px;padding:4px;gap:4px}.segmented button{flex:1;border:0;background:none;padding:9px 4px;border-radius:9px;font-weight:600}.segmented button.selected{background:var(--card);box-shadow:0 1px 4px #0000001f;color:var(--primary)}.progress{--bar: var(--primary);flex:1;width:100%;border-radius:999px;background:color-mix(in srgb,var(--bar) 18%,transparent);overflow:hidden}.progress-fill{height:100%;border-radius:999px;background:linear-gradient(to bottom,color-mix(in srgb,var(--bar) 80%,#fff),var(--bar));transition:width .5s cubic-bezier(.3,1.3,.5,1)}.ring{position:relative;flex-shrink:0}.ring-label{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:.8rem}.dots{display:inline-flex;gap:3px}.dot{width:7px;height:7px;border-radius:50%;background:color-mix(in srgb,var(--muted) 30%,transparent)}.dot.on{background:var(--success)}.dot.gold{background:var(--gold)}.profile-header{display:flex;align-items:center;gap:16px}.avatar{font-size:2.6rem;width:72px;height:72px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:50%;background:color-mix(in srgb,var(--primary) 15%,transparent)}.profile-stats{display:flex;flex-direction:column;align-items:center;gap:6px}.streak b{color:var(--flame)}.mascot{display:flex;align-items:flex-end;gap:12px}.mascot-emoji{font-size:3.2rem;line-height:1;animation:bob 1.8s ease-in-out infinite}@keyframes bob{0%,to{transform:rotate(5deg)}50%{transform:translateY(-5px) rotate(-5deg)}}.bubble{position:relative;background:var(--card);padding:12px 16px;border-radius:calc(var(--radius) * .9);font-weight:600;box-shadow:var(--card-shadow);border:var(--card-border);max-width:560px}.bubble:before{content:"";position:absolute;left:-8px;bottom:10px;border:8px solid transparent;border-right-color:var(--card);border-left:0}.daily{display:flex;flex-direction:column;gap:12px}.daily h3{margin:0}.daily p{margin:2px 0 0}.grid{display:grid;gap:14px}.grid-subjects{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.subject{--subject: var(--primary);display:flex;flex-direction:column;gap:6px;text-align:left;padding:16px;border-radius:var(--radius);background:color-mix(in srgb,var(--subject) 18%,var(--card));border:2px solid color-mix(in srgb,var(--subject) 50%,transparent);transition:transform .15s}.subject:hover{transform:translateY(-2px)}.subject.locked{filter:saturate(.3);background:color-mix(in srgb,var(--subject) 6%,var(--card));border-color:color-mix(in srgb,var(--subject) 15%,transparent)}.notice{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.scroller{display:flex;gap:14px;overflow-x:auto;padding:4px 4px 12px;margin:0 -4px;scroll-snap-type:x mandatory}.set-card{display:flex;flex-direction:column;gap:8px;min-width:190px;max-width:190px;scroll-snap-align:start}.list{padding:0;overflow:hidden}.list-row{display:flex;align-items:center;gap:14px;width:100%;padding:12px 16px;border:0;background:none;text-align:left;border-bottom:1px solid color-mix(in srgb,var(--muted) 15%,transparent);cursor:pointer}.list-row:last-child{border-bottom:0}.list-row:hover{background:color-mix(in srgb,var(--primary) 6%,transparent)}.add-row{color:var(--primary);font-weight:700}.chevron{font-size:1.6rem;color:var(--muted)}.thumb{border-radius:10px;object-fit:cover;flex-shrink:0}.flag-thumb{display:inline-flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--primary) 12%,transparent)}.thumb-button{border:0;padding:0;background:none}.detail-header{display:flex;flex-direction:column;gap:16px}.detail-title{font-size:1.4rem}.menu-wrap{position:relative}.menu{position:absolute;right:0;top:46px;z-index:5;display:flex;flex-direction:column;padding:6px;min-width:230px}.menu button{border:0;background:none;text-align:left;padding:10px 12px;border-radius:8px}.menu button:hover{background:color-mix(in srgb,var(--primary) 10%,transparent)}.menu .danger{color:var(--danger)}.empty{text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px;padding:40px 16px;max-width:460px;margin:0 auto}.sheet-backdrop{position:fixed;inset:0;z-index:50;background:#0006;display:flex;align-items:flex-end;justify-content:center;animation:fade .2s}.sheet{background:var(--bg-bottom);width:100%;max-height:92vh;display:flex;flex-direction:column;border-radius:calc(var(--radius) + 4px) calc(var(--radius) + 4px) 0 0;animation:up .25s cubic-bezier(.2,.9,.3,1);outline:none}.sheet.confirm{padding:24px;gap:8px;text-align:center;align-items:center;max-width:420px}.sheet.confirm .row{align-self:stretch}.sheet-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid color-mix(in srgb,var(--muted) 15%,transparent)}.sheet-header h2{font-size:1.2rem}.sheet-body{padding:16px 20px 24px;overflow-y:auto;display:flex;flex-direction:column;gap:12px}.sheet-footer{display:flex;gap:10px;justify-content:flex-end;align-items:center;padding:12px 20px calc(12px + env(safe-area-inset-bottom));border-top:1px solid color-mix(in srgb,var(--muted) 15%,transparent)}.sheet-footer .game-button:not(.compact){margin-bottom:5px}@media(min-width:700px){.sheet-backdrop{align-items:center;padding:24px}.sheet{max-width:560px;border-radius:calc(var(--radius) + 4px)}.sheet.wide{max-width:820px}}@keyframes fade{0%{opacity:0}}@keyframes up{0%{transform:translateY(40px);opacity:0}}.field{display:flex;flex-direction:column;gap:6px;font-weight:600}.field input,.pair-field input,.answer-input{padding:12px 14px;border-radius:12px;border:2px solid color-mix(in srgb,var(--muted) 25%,transparent);background:var(--card);outline:none}.field input:focus,.pair-field input:focus{border-color:var(--primary)}.form-grid{display:grid;gap:14px}.lang-picker{display:flex;flex-wrap:wrap;gap:8px;font-weight:500}.dropzone{border:3px dashed color-mix(in srgb,var(--primary) 35%,transparent);border-radius:var(--radius);padding:18px;text-align:center;display:flex;flex-direction:column;gap:10px;align-items:center;background:color-mix(in srgb,var(--primary) 4%,transparent)}.dropzone.dragging{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 12%,transparent)}.dropzone p{margin:0}.preview{max-height:240px;max-width:100%;border-radius:12px}.ocr-progress{display:flex;align-items:center;gap:12px}.spinner{width:24px;height:24px;border-radius:50%;border:3px solid color-mix(in srgb,var(--primary) 25%,transparent);border-top-color:var(--primary);animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.message{font-weight:600;margin:0}.pairs{display:flex;flex-direction:column;gap:10px}.pair{display:grid;grid-template-columns:1fr auto;gap:8px;padding:10px}.pair .icon-button{grid-row:1;grid-column:2}.pair-field{display:flex;align-items:center;gap:8px;grid-column:1}.pair-field input{flex:1;min-width:0;padding:9px 12px}.pair-field:first-child input{font-weight:700}@media(min-width:700px){.pair{grid-template-columns:1fr 1fr 1fr auto;align-items:center}.pair-field{grid-column:auto}.pair .icon-button{grid-column:4}}.grid-modes{grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}.mode-card{--mode: var(--primary);display:flex;flex-direction:column;gap:6px;border:3px solid transparent;transition:transform .15s}.mode-card.selected{border-color:var(--mode);transform:scale(1.03)}.mode-card.locked{opacity:.5}.mode-emoji{font-size:1.8rem;width:50px;height:50px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:color-mix(in srgb,var(--mode) 18%,transparent)}.check{color:var(--primary);font-size:1.3rem;font-weight:900}.avatar-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(52px,1fr));gap:6px}.avatar-choice{font-size:2rem;border:0;background:none;border-radius:50%;aspect-ratio:1}.avatar-choice.selected{background:color-mix(in srgb,var(--primary) 25%,transparent)}.full-photo{width:100%;border-radius:12px}.theme-list{display:flex;flex-direction:column;gap:14px}.theme-card{display:flex;flex-direction:column;gap:12px;text-align:left;padding:16px;color:#1f2937;background:linear-gradient(to bottom,var(--ttop),var(--tcard));border-radius:var(--tradius);border:2px solid rgba(0,0,0,.1)}.theme-card.selected{border:3px solid var(--tp)}.theme-card.locked{filter:grayscale(1);opacity:.7;cursor:not-allowed}.theme-mascot{font-size:2.6rem;width:64px;height:64px;display:flex;align-items:center;justify-content:center;background:#ffffff80;border-radius:var(--tradius)}.theme-name{font-size:1.2rem}.theme-tagline{color:#4b5563}.theme-card .check{color:var(--tp)}.theme-chip{font-size:.8rem;font-weight:600;padding:5px 10px;border-radius:999px;background:color-mix(in srgb,var(--tp) 18%,transparent)}.theme-button{text-align:center;color:#fff;font-weight:800;padding:12px;border-radius:var(--tradius);background:var(--tp)}.theme-button.pixel{border:3px solid rgba(0,0,0,.6)}.theme-lock{font-weight:700;color:#4b5563}.grid-stats{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.stat{text-align:center;display:flex;flex-direction:column;gap:2px;padding:12px}.stat-emoji{font-size:1.5rem}.stat-value{font-size:1.3rem;font-weight:900;font-variant-numeric:tabular-nums}.stat-label{font-size:.8rem;color:var(--muted)}.grid-badges{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.badge{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:14px 10px}.badge-emoji{position:relative;font-size:2.6rem;width:72px;height:72px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:color-mix(in srgb,var(--gold) 25%,transparent)}.badge.locked .badge-emoji{filter:grayscale(1);opacity:.45;background:color-mix(in srgb,var(--muted) 12%,transparent)}.lock{position:absolute;right:-2px;bottom:-2px;font-size:.9rem;filter:none}.quiz-overlay{position:fixed;inset:0;z-index:40;overflow-y:auto}.quiz,.result,.quiz-empty{max-width:720px;margin:0 auto;min-height:100%;padding:16px 16px calc(16px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:18px}.quiz-empty{justify-content:center;align-items:center;text-align:center}.quiz-top{display:flex;align-items:center;gap:12px}.timer{font-weight:800;font-variant-numeric:tabular-nums}.timer.urgent{color:var(--danger);animation:pulse 1s infinite}.combo{font-weight:900;color:var(--flame);animation:pop .3s;white-space:nowrap}.score{font-weight:800;white-space:nowrap;font-variant-numeric:tabular-nums}@keyframes pop{50%{transform:scale(1.4)}}@keyframes pulse{50%{opacity:.5}}.question{margin-top:auto;text-align:center;padding:32px 20px;display:flex;flex-direction:column;align-items:center;gap:14px;animation:slide-in .3s ease-out}.question.shake{animation:shake .4s}@keyframes slide-in{0%{transform:translate(30px);opacity:0}}@keyframes shake{20%,60%{transform:translate(-10px)}40%,80%{transform:translate(10px)}}.instruction{text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;font-weight:800;color:var(--muted)}.prompt{font-size:clamp(1.8rem,6vw,2.6rem);font-weight:800;overflow-wrap:anywhere}.options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:auto}@media(max-width:420px){.options{grid-template-columns:1fr}}.option{position:relative;min-height:72px;padding:14px 12px;border-radius:calc(var(--radius) * .9);background:var(--card);border:3px solid color-mix(in srgb,var(--muted) 20%,transparent);font-weight:700;font-size:1.1rem;display:flex;align-items:center;justify-content:center;text-align:center;transition:transform .15s,opacity .2s}.option:hover:not(:disabled){border-color:color-mix(in srgb,var(--primary) 50%,transparent)}.option kbd{position:absolute;left:8px;top:8px}.option.selected{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 12%,var(--card))}.option.correct{border-color:var(--success);background:color-mix(in srgb,var(--success) 18%,var(--card));color:var(--success);transform:scale(1.03)}.option.wrong{border-color:var(--danger);background:color-mix(in srgb,var(--danger) 18%,var(--card));color:var(--danger)}.option.dimmed{opacity:.45}.option:disabled{cursor:default}.typing{display:flex;flex-direction:column;gap:10px;align-items:center;margin-top:auto}.answer-input{width:100%;font-size:1.5rem;font-weight:700;text-align:center;padding:16px;border-width:3px;border-color:color-mix(in srgb,var(--primary) 40%,transparent)}.answer-input:focus{border-color:var(--primary)}.answer-input.correct{border-color:var(--success)}.answer-input.almost{border-color:var(--warning)}.answer-input.wrong{border-color:var(--danger)}.accent-bar{display:flex;gap:6px;flex-wrap:wrap;justify-content:center}.accent{min-width:40px;height:40px;border-radius:10px;border:var(--card-border);background:var(--card);font-weight:700;font-size:1.1rem;box-shadow:var(--card-shadow)}.quiz-bottom{min-height:60px}.feedback{--fb: var(--success);padding:16px;border-radius:var(--radius);background:color-mix(in srgb,var(--fb) 14%,transparent);display:flex;flex-direction:column;gap:12px;animation:up .25s}.feedback.almost{--fb: var(--warning)}.feedback.wrong{--fb: var(--danger)}.feedback .game-button{--button: var(--fb)}.feedback-title{color:var(--fb);font-size:1.2rem}.xp-pill{font-weight:900;color:color-mix(in srgb,var(--gold) 70%,#000);background:color-mix(in srgb,var(--gold) 25%,transparent);padding:6px 12px;border-radius:999px;white-space:nowrap}.result{align-items:stretch;text-align:center;padding-top:32px}.stars{display:flex;justify-content:center;gap:14px;align-items:flex-end}.star{font-size:54px;color:color-mix(in srgb,var(--muted) 25%,transparent);transform:scale(.7);transition:transform .4s cubic-bezier(.3,1.8,.5,1),color .3s}.star.middle{font-size:72px;transform:scale(.7) translateY(-12px)}.star.on{color:var(--gold);transform:scale(1);text-shadow:0 0 18px color-mix(in srgb,var(--gold) 60%,transparent)}.star.middle.on{transform:scale(1) translateY(-12px)}.result .mascot{text-align:left}.banner{--banner: var(--primary);display:flex;align-items:center;gap:14px;text-align:left;padding:14px 16px;border-radius:var(--radius);background:color-mix(in srgb,var(--banner) 15%,var(--card));border:2px solid color-mix(in srgb,var(--banner) 40%,transparent)}.mistakes{text-align:left;display:flex;flex-direction:column;gap:8px}.mistakes h3{margin:0 0 4px}.result-buttons{display:flex;flex-direction:column;gap:10px;padding-bottom:16px}.confetti{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:60}.toast{position:fixed;top:16px;left:50%;transform:translate(-50%);z-index:70;width:min(92vw,460px);display:flex;gap:12px;align-items:center;padding:14px 16px;border-radius:18px;background:color-mix(in srgb,var(--card) 92%,transparent);backdrop-filter:blur(12px);box-shadow:0 10px 30px #0000002e;animation:drop .3s cubic-bezier(.2,.9,.3,1.2)}.toast-emoji{font-size:2rem}@keyframes drop{0%{transform:translate(-50%,-30px);opacity:0}}[data-theme=blocks] .bubble:before{display:none}[data-theme=blocks] .game-button{box-shadow:0 5px #00000073}[data-theme=blocks] .avatar,[data-theme=blocks] .badge-emoji,[data-theme=blocks] .mode-emoji{border-radius:4px}[data-theme=blocks] .progress,[data-theme=blocks] .progress-fill{border-radius:2px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.grammar-overview{display:flex;flex-direction:column;gap:14px}.grammar-overview h3{margin:0}.grid-topics{grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}.topic-card{--topic: var(--primary);display:flex;flex-direction:column;gap:6px;border-top:5px solid var(--topic);transition:transform .15s}.topic-card:hover{transform:translateY(-2px)}.topic-emoji{font-size:1.8rem;width:50px;height:50px;display:flex;align-items:center;justify-content:center;border-radius:14px;background:color-mix(in srgb,var(--topic) 16%,transparent)}.memory-list{margin:0;padding-left:20px;display:grid;gap:4px}.context{margin:4px 0}.tip{padding:12px 14px;border-radius:12px;background:color-mix(in srgb,var(--gold) 20%,transparent)}.rules{display:grid;gap:8px}.rule{display:flex;flex-direction:column;gap:2px;padding:10px 14px;border-radius:12px;background:var(--card);border-left:4px solid var(--primary)}.example{font-style:italic;color:var(--muted)}.prompt.small{font-size:1.2rem;color:var(--muted)}.gap-prompt{line-height:1.5}.gap{display:inline-block;min-width:3.2em;margin:0 .15em;padding:0 .3em;border-bottom:4px solid color-mix(in srgb,var(--primary) 60%,transparent);color:var(--primary);text-align:center;transition:color .2s}.gap.filled.correct,.gap.filled.almost{color:var(--success);border-color:var(--success)}.gap.filled.wrong{color:var(--danger);border-color:var(--danger)}.word-order{display:flex;flex-direction:column;gap:14px;margin-top:auto;align-items:stretch}.sentence-line{min-height:64px;display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:10px;border-radius:var(--radius);border:3px dashed color-mix(in srgb,var(--primary) 40%,transparent);background:color-mix(in srgb,var(--card) 70%,transparent)}.sentence-line.correct,.sentence-line.almost{border-style:solid;border-color:var(--success)}.sentence-line.wrong{border-style:solid;border-color:var(--danger)}.word-pool{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.word-tile{padding:10px 16px;border-radius:12px;border:2px solid color-mix(in srgb,var(--muted) 30%,transparent);background:var(--card);font-weight:700;font-size:1.1rem;box-shadow:0 3px color-mix(in srgb,var(--muted) 35%,transparent);transition:transform .1s,opacity .15s}.word-tile:active:not(:disabled){transform:translateY(2px);box-shadow:none}.word-tile.placed{border-color:var(--primary);color:var(--primary)}.word-tile.used{opacity:.25}.solution{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:1.1rem}.hint{font-weight:600}.explanation{color:var(--muted)}.avatar-button{border:0;cursor:pointer;position:relative}.avatar-button:after{content:"⇄";position:absolute;right:-2px;bottom:-2px;font-size:.8rem;width:22px;height:22px;border-radius:50%;background:var(--card);box-shadow:var(--card-shadow);display:flex;align-items:center;justify-content:center}.profile-list{display:flex;flex-direction:column;gap:10px}.profile-row{display:flex;align-items:center;gap:8px;padding:10px 12px;border:3px solid transparent}.profile-row.active{border-color:var(--primary)}.profile-choice{flex:1;display:flex;align-items:center;gap:14px;border:0;background:none;text-align:left;padding:0}.small-avatar{width:54px;height:54px;font-size:2rem}.new-profile,.import-choice{display:flex;flex-direction:column;gap:12px}.checkbox{display:flex;gap:10px;align-items:center;font-weight:600}.checkbox input{width:20px;height:20px;accent-color:var(--primary)}
