:root{--bg-top:#fff7e0;--bg-bottom:#d7f5ff;--text:#3a2e5c;--card-bg:#fff;--shadow:#3a2e5c2e;--primary:#ff8c42;--primary-dark:#f2650f;--success:#38d99b;--success-dark:#1fae7d;--picture-bg:#ece7ff;--picture-outline:drop-shadow(0 0 1.5px #3a2e5c8c) drop-shadow(0 3px 4px #3a2e5c33);color:var(--text);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:"Baloo 2",system-ui,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{background:linear-gradient(180deg, var(--bg-top) 0%, var(--bg-bottom) 100%);min-height:100svh;margin:0}#root{flex-direction:column;align-items:center;min-height:100svh;display:flex}button{cursor:pointer;font-family:inherit}.app-shell{flex-direction:column;align-items:center;width:100%;max-width:720px;padding:24px 16px 48px;display:flex}.screen{flex-direction:column;align-items:center;gap:20px;width:100%;display:flex}.screen-header{grid-template-columns:1fr minmax(0,max-content) 1fr;align-items:center;gap:12px;width:100%;display:grid}.screen-header>.back-button{grid-column:1;justify-self:start}.screen-header>h2{text-align:center;text-wrap:balance;overflow-wrap:anywhere;grid-column:2;min-width:0}.screen-header>:not(.back-button):not(h2){grid-column:3;justify-self:end}.screen-header h2{margin:0;font-size:28px;line-height:1.15}.back-button{white-space:nowrap;background:var(--card-bg);min-height:48px;color:var(--text);box-shadow:0 4px 0 var(--shadow);border:none;border-radius:999px;padding:10px 16px;font-size:16px;font-weight:700}.back-button:active{box-shadow:0 2px 0 var(--shadow);transform:translateY(2px)}.auto-speak-toggle{background:var(--card-bg);color:var(--text);box-shadow:0 4px 0 var(--shadow);border:none;border-radius:999px;margin-left:auto;padding:10px 14px;font-size:15px;font-weight:700}.auto-speak-toggle.is-off{opacity:.6}.auto-speak-toggle:active{box-shadow:0 2px 0 var(--shadow);transform:translateY(2px)}.app-shell:has(.home-screen){height:100dvh;padding-top:clamp(8px,2dvh,24px);padding-bottom:clamp(8px,2dvh,24px);overflow:hidden}.app-shell:has(.home-screen) .kid-header{flex-shrink:0;margin-bottom:0}.home-screen{text-align:center;flex:1;justify-content:space-evenly;gap:clamp(10px,2.5dvh,28px);min-height:0}.home-screen .logo-mascot{width:clamp(64px,15dvh,150px)}.home-screen .logo-wordmark{font-size:clamp(36px,7.5dvh,64px)}.home-continue-group{flex-direction:column;align-items:center;gap:8px;width:100%;max-width:440px;display:flex}.big-button.home-continue{background:linear-gradient(#ff9f4a 0%,#f76707 100%);min-width:min(260px,100%);min-height:64px;padding:12px clamp(32px,6vmin,52px);font-size:clamp(22px,3.4dvh,28px);box-shadow:0 5px #d9560a}.home-continue-caption{white-space:nowrap;text-overflow:ellipsis;max-width:100%;margin:0;font-size:18px;font-weight:700;overflow:hidden}.home-tiles{grid-template-columns:repeat(2,1fr);gap:clamp(10px,2dvh,16px);width:100%;max-width:440px;display:grid}.home-tile{background:var(--card-bg);min-height:clamp(76px,14dvh,124px);color:var(--text);box-shadow:0 5px 0 var(--shadow);font:inherit;border:none;border-radius:24px;flex-direction:column;justify-content:center;align-items:center;gap:2px;transition:transform 80ms;display:flex;position:relative}.home-tile:active:not(:disabled){box-shadow:0 2px 0 var(--shadow);transform:translateY(3px)}.home-tile-emoji{font-size:clamp(30px,5.5dvh,48px);line-height:1.1}.home-tile-label{font-size:20px;font-weight:800}.home-tile.is-locked{opacity:.55}.home-tile-badge{color:#fff;background:#d9480f;border-radius:999px;min-width:30px;height:30px;padding:0 8px;font-size:17px;font-weight:800;line-height:30px;position:absolute;top:8px;right:10px}.home-progress{background:color-mix(in srgb, var(--card-bg) 70%, transparent);min-height:56px;box-shadow:0 3px 0 color-mix(in srgb, var(--shadow) 70%, transparent);color:inherit;font:inherit;cursor:pointer;border:none;border-radius:20px;flex-wrap:wrap;justify-content:center;align-items:center;gap:4px 16px;margin:0;padding:8px 18px;font-size:16px;font-weight:700;transition:transform .12s,box-shadow .12s;display:flex}.home-progress:active{box-shadow:0 1px 0 color-mix(in srgb, var(--shadow) 70%, transparent);transform:translateY(2px)}.home-progress-week{color:#a8430a}@media (width>=700px){.home-continue-group,.home-tiles{max-width:560px}}@media (width>=700px) and (aspect-ratio>=1){.home-tiles{grid-template-columns:repeat(4,1fr);max-width:680px}}@media (prefers-reduced-motion:reduce){.home-tile{transition:none}}.mascot{filter:drop-shadow(0 8px 10px var(--shadow));font-size:88px;line-height:1}.app-title{color:var(--primary-dark);text-shadow:0 3px #fff;margin:8px 0 0;font-size:52px;font-weight:800}.app-subtitle{margin:4px 0 8px;font-size:20px;font-weight:500}[lang=ug]{font-family:Noto Naskh Arabic,Geeza Pro,"Baloo 2",sans-serif}.big-button{background:linear-gradient(180deg, #ffb35c 0%, var(--primary) 100%);color:#fff;box-shadow:0 6px 0 var(--primary-dark);border:none;border-radius:999px;padding:18px 40px;font-size:22px;font-weight:800;transition:transform 80ms}.big-button:active{box-shadow:0 2px 0 var(--primary-dark);transform:translateY(4px)}.big-button.is-done{background:linear-gradient(180deg, #5fe3b3 0%, var(--success) 100%);box-shadow:0 6px 0 var(--success-dark)}.big-button.is-done:active{box-shadow:0 2px 0 var(--success-dark)}.progress{flex-direction:column;align-items:center;gap:6px;width:100%;max-width:420px;display:flex}.progress-track{width:100%;height:18px;box-shadow:inset 0 2px 4px var(--shadow);background:#ffffffb3;border-radius:999px;overflow:hidden}.progress-fill{background:linear-gradient(90deg, #ffd93d, var(--primary));border-radius:999px;height:100%;transition:width .3s}.progress-label{font-size:15px;font-weight:700}.letter-grid{grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:14px;width:100%;display:grid}.letter-tile{aspect-ratio:1;background:var(--tile-color,var(--primary));color:#fff;border:none;border-radius:20px;justify-content:center;align-items:center;transition:transform 80ms;display:flex;position:relative;box-shadow:0 5px #0000002e}.letter-tile:active{transform:translateY(3px);box-shadow:0 2px #0000002e}.letter-tile.is-learned{outline-offset:2px;outline:3px solid #ffd93d}.tile-letter{font-size:28px;font-weight:800}.tile-star{font-size:20px;position:absolute;top:-8px;right:-6px}.letter-card{background:var(--card-bg);border-top:12px solid var(--tile-color,var(--primary));width:100%;max-width:360px;box-shadow:0 10px 0 var(--shadow);border-radius:28px;flex-direction:column;align-items:center;gap:8px;padding:32px 24px;display:flex}.letter-card-big{color:var(--tile-color,var(--primary));font-size:96px;font-weight:800;line-height:1}.letter-card-emoji{margin-top:8px;font-size:56px}.letter-card-photo{object-fit:contain;width:96px;height:96px;margin-top:8px}.letter-card-word{align-items:center;gap:10px;font-size:30px;font-weight:700;display:flex}.audio-button{background:var(--primary);color:#fff;width:40px;height:40px;box-shadow:0 3px 0 var(--primary-dark);border:none;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;font-size:18px;display:inline-flex}.audio-button:active{box-shadow:0 1px 0 var(--primary-dark);transform:translateY(2px)}.modal-overlay{z-index:50;background:#00000073;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-card{background:var(--card-bg);width:100%;max-width:420px;box-shadow:0 10px 0 var(--shadow);text-align:center;border-radius:24px;padding:28px 24px}.modal-card h2{margin:0 0 8px}.modal-hint{opacity:.7;margin:0 0 16px;font-size:14px}.modal-card textarea{border:2px solid var(--border,#e5cfa8);background:var(--card-bg);width:100%;color:var(--text);resize:vertical;box-sizing:border-box;border-radius:14px;padding:12px 14px;font-family:inherit;font-size:15px}.modal-actions{flex-direction:column;align-items:center;gap:10px;margin-top:14px;display:flex}.modal-emoji{margin-bottom:8px;font-size:48px}.grown-up-question{justify-content:center;align-items:center;gap:12px;font-size:28px;font-weight:800;display:flex}.grown-up-question input{width:4.5ch;min-height:56px;font:inherit;text-align:center;border:2px solid var(--border,#e5cfa8);background:var(--card-bg);color:var(--text);border-radius:14px}.grown-up-gate .big-button:disabled{opacity:.5}.feedback-list{flex-direction:column;gap:14px;width:100%;display:flex}.feedback-card{background:var(--card-bg);box-shadow:0 4px 0 var(--shadow);text-align:left;border-radius:18px;padding:16px 18px}.feedback-card.is-resolved{opacity:.6}.feedback-card-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.feedback-badge{text-transform:uppercase;letter-spacing:.4px;background:var(--primary);color:#fff;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:800}.feedback-card.is-resolved .feedback-badge{background:var(--success)}.feedback-date{opacity:.6;font-size:12px}.feedback-message{white-space:pre-wrap;margin:0 0 8px;font-size:15px}.feedback-meta{opacity:.6;margin:0 0 12px;font-size:12px}.feedback-actions{gap:10px;display:flex}.nav-button.is-danger{color:#d9422f}.letter-card-gloss{opacity:.7;font-size:18px;font-style:italic}.letter-card-pending{opacity:.6;margin-top:16px;font-size:18px}.letter-nav{gap:16px;display:flex}.nav-button{background:var(--card-bg);box-shadow:0 4px 0 var(--shadow);border:none;border-radius:999px;padding:12px 22px;font-size:16px;font-weight:700}.nav-button:active:not(:disabled){box-shadow:0 2px 0 var(--shadow);transform:translateY(2px)}.nav-button:disabled{opacity:.4;cursor:not-allowed}.big-button.is-secondary{background:linear-gradient(#8fd8ff 0%,#4dabf7 100%);padding:14px 32px;font-size:19px;box-shadow:0 6px #2f8bd6}.big-button.is-secondary:active{box-shadow:0 2px #2f8bd6}.game-progress{opacity:.75;text-align:center;margin:0;font-size:15px;font-weight:700}.letter-tile.is-correct{outline:4px solid var(--success);outline-offset:2px}.letter-tile.is-wrong{outline-offset:2px;outline:4px solid #ff5c5c;animation:.4s shake}.letter-tile.is-disabled{opacity:.55}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}.game-card-list{flex-direction:column;gap:14px;width:100%;display:flex}.game-card{text-align:left;background:var(--card-bg);width:100%;box-shadow:0 5px 0 var(--shadow);border:none;border-radius:20px;align-items:center;gap:16px;padding:16px 20px;transition:transform 80ms;display:flex}.game-card:active{box-shadow:0 2px 0 var(--shadow);transform:translateY(3px)}.game-card-emoji{flex-shrink:0;font-size:40px}.game-card-text{flex-direction:column;gap:2px;display:flex}.game-card-title{font-size:19px;font-weight:800}.game-card-description{opacity:.7;font-size:14px}.game-card-best{color:var(--primary-dark);margin-top:2px;font-size:13px;font-weight:700}.find-target{justify-content:center;align-items:center;gap:8px;font-size:22px;font-weight:700;display:flex}.quiz-prompt{text-align:center;background:var(--card-bg);width:100%;max-width:380px;box-shadow:0 6px 0 var(--shadow);border-radius:24px;flex-direction:column;align-items:center;gap:8px;padding:24px 20px;display:flex}.quiz-emoji{font-size:56px}.quiz-reveal{font-size:17px;font-weight:700}.quiz-reveal.is-correct{color:var(--success-dark)}.quiz-reveal.is-wrong{color:#d9422f}.missing-word{letter-spacing:2px;margin:4px 0 0;font-size:34px;font-weight:800}.race-track{--racer-size:40px;background:var(--card-bg);width:100%;max-width:380px;box-shadow:0 5px 0 var(--shadow);border-radius:20px;flex-direction:column;gap:4px;padding:8px 12px 8px 36px;display:flex;position:relative}.race-finish{font-size:24px;position:absolute;top:50%;left:8px;transform:translateY(-50%)}.race-lane{height:var(--racer-size);border-bottom:2px dashed var(--shadow);position:relative}.race-lane:last-child{border-bottom:none}.race-racer{top:0;right:calc(var(--progress) * (100% - var(--racer-size)));font-size:32px;line-height:var(--racer-size);transition:right .4s ease-out;position:absolute}.missing-gloss{opacity:.65;margin:0;font-size:16px;font-style:italic}.choice-grid{grid-template-columns:repeat(4,1fr);gap:12px;width:100%;max-width:380px;display:grid}.choice-button{background:var(--card-bg);box-shadow:0 5px 0 var(--shadow);border:none;border-radius:16px;padding:16px 0;font-size:22px;font-weight:800;transition:transform 80ms}.choice-button:active:not(:disabled){box-shadow:0 2px 0 var(--shadow);transform:translateY(3px)}.choice-button:disabled{cursor:not-allowed}.choice-button.is-correct{background:var(--success);color:#fff;box-shadow:0 5px 0 var(--success-dark)}.choice-button.is-wrong{color:#fff;background:#ff6b6b;box-shadow:0 5px #d9422f}.choice-grid.is-words{grid-template-columns:repeat(2,1fr)}.choice-button.is-word{padding:14px 8px;font-size:17px}.picture-word{justify-content:center;align-items:center;gap:12px;display:flex}.missing-gloss.is-hidden{visibility:hidden}.choice-button.is-picture{aspect-ratio:1;justify-content:center;align-items:center;padding:12px;font-size:64px;display:flex}.picture-image{object-fit:contain;border-radius:10px;width:100%;height:100%}.memory-grid{grid-template-columns:repeat(4,1fr);gap:12px;width:100%;display:grid}.memory-card{aspect-ratio:1;background:var(--tile-color,var(--primary));border:none;border-radius:16px;justify-content:center;align-items:center;transition:transform 80ms;display:flex;box-shadow:0 5px #0000002e}.memory-card:active{transform:translateY(2px)}.memory-card-inner{color:#fff;font-size:26px;font-weight:800}.memory-card.is-flipped{background:var(--card-bg)}.memory-card.is-flipped .memory-card-inner{color:var(--text)}.memory-card.is-matched{outline-offset:2px;opacity:.85;outline:3px solid #ffd93d}.game-result{text-align:center;flex-direction:column;align-items:center;gap:8px;width:100%;padding-top:24px;display:flex}.game-result-emoji{font-size:72px}.game-result-score{margin:0;font-size:19px;font-weight:700}.game-result-best{opacity:.7;margin:0;font-size:15px}.game-result-actions{flex-direction:column;align-items:center;gap:12px;margin-top:12px;display:flex}.loading-text{opacity:.7;font-size:18px;font-weight:700}.auth-screen,.setup-notice{text-align:center;padding-top:24px}.setup-notice p{max-width:460px;line-height:1.5}.setup-notice a{color:var(--primary-dark)}.app-shell:has(.auth-screen){justify-content:center;min-height:100dvh;padding-top:clamp(12px,3dvh,32px);padding-bottom:clamp(12px,3dvh,32px)}.auth-screen{gap:calc(clamp(10px, 2.2dvh, 22px) * var(--fit,1))}.auth-screen.screen{padding-top:0}.auth-screen .logo.is-medium .logo-mascot{width:calc(clamp(60px, 11dvh, 110px) * var(--fit,1))}.auth-screen .logo.is-medium .logo-wordmark{font-size:calc(clamp(32px, 6dvh, 48px) * var(--fit,1))}@media (height<=760px){.auth-screen .logo{flex-direction:row;gap:10px}.auth-screen .logo.is-medium .logo-mascot{width:calc(clamp(48px, 9dvh, 72px) * var(--fit,1))}}@media (height<=620px){.auth-screen,.auth-card{gap:8px}.auth-form input{min-height:48px;padding-block:10px}.auth-form .big-button{min-height:54px}}.auth-card{background:var(--card-bg);width:100%;max-width:380px;box-shadow:0 6px 0 var(--shadow);border-radius:24px;flex-direction:column;gap:10px;padding:clamp(14px,2.6dvh,24px) clamp(16px,4vw,24px) 6px;display:flex}.auth-title{margin:0;font-size:22px}.auth-form{flex-direction:column;gap:10px;width:100%;display:flex}.auth-form .big-button{width:100%;min-height:60px;padding-top:12px;padding-bottom:12px}.auth-switch,.auth-admin{cursor:pointer;background:0 0;border:none;min-height:48px;font-size:16px;font-weight:700}.auth-switch{color:#a8430a;text-underline-offset:3px;text-decoration:underline}.auth-admin{color:color-mix(in srgb, var(--text) 70%, transparent);padding:0 12px;position:fixed;top:8px;right:8px}.auth-demo-group{flex-direction:column;align-items:center;gap:6px;width:100%;max-width:380px;display:flex}.auth-demo{color:#1d5592;cursor:pointer;background:#fff;border:2px solid #bcd8fb;border-radius:999px;width:100%;min-height:56px;font-size:18px;font-weight:800;transition:transform .12s,box-shadow .12s;box-shadow:0 4px #bcd8fb}.auth-demo:active{transform:translateY(3px);box-shadow:0 1px #bcd8fb}.auth-screen .demo-hint{opacity:.75;max-width:none;font-size:15px}.auth-form input{border:2px solid var(--border,#e5cfa8);background:var(--card-bg);min-height:52px;color:var(--text);border-radius:14px;padding:12px 16px;font-family:inherit;font-size:17px}.auth-form input:focus{outline:2px solid var(--primary)}.auth-error{color:#c0392b;margin:0;font-size:15px;font-weight:700}.link-button{color:var(--primary-dark);background:0 0;border:none;margin-top:4px;padding:8px;font-size:15px;font-weight:700;text-decoration:underline}.kid-grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:16px;width:100%;display:grid}.kid-card{background:var(--card-bg);box-shadow:0 5px 0 var(--shadow);border:none;border-radius:20px;flex-direction:column;align-items:center;gap:8px;padding:20px 12px;transition:transform 80ms;display:flex}.kid-card:active{box-shadow:0 2px 0 var(--shadow);transform:translateY(3px)}.kid-card-avatar{font-size:40px}.kid-card-name{font-size:15px;font-weight:700}.kid-card-add{opacity:.7;border:2px dashed var(--shadow);box-shadow:none;background:0 0}.avatar-picker{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.avatar-choice{background:var(--card-bg);border:2px solid #0000;border-radius:12px;padding:6px 8px;font-size:26px}.avatar-choice.is-selected{border-color:var(--primary);background:#fff3e6}.kid-header{background:var(--card-bg);width:100%;box-shadow:0 3px 0 var(--shadow);border-radius:999px;justify-content:space-between;align-items:center;margin-bottom:16px;padding:10px 16px;font-size:14px;font-weight:700;display:flex}.kid-header-actions{gap:14px;display:flex}.kid-header-link{color:var(--primary-dark);background:0 0;border:none;padding:4px;font-size:14px;font-weight:700}.letter-video{width:100%;max-width:360px;box-shadow:0 6px 0 var(--shadow);background:#000;border-radius:20px}.demo-hint{opacity:.6;max-width:280px;margin:0;font-size:13px}.category-prompt{text-align:center;font-size:19px;font-weight:700}.category-prompt-name{color:var(--primary-dark);font-size:24px;font-weight:800}.word-grid{grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:12px;width:100%;display:grid}.word-tile{background:var(--card-bg);box-shadow:0 5px 0 var(--shadow);border:none;border-radius:18px;flex-direction:column;align-items:center;gap:4px;padding:14px 6px;transition:transform 80ms;display:flex}.word-tile:active:not(:disabled){box-shadow:0 2px 0 var(--shadow);transform:translateY(3px)}.word-tile-emoji{font-size:28px}.word-tile-word{font-size:13px;font-weight:700}.word-tile.is-correct{outline:4px solid var(--success);outline-offset:2px;opacity:.75}.word-tile.is-wrong{outline-offset:2px;outline:4px solid #ff5c5c;animation:.4s shake}.letter-card-slider{align-items:center;gap:8px;width:100%;display:flex}.letter-card-slide{flex-direction:column;flex:1;align-items:center;min-width:0;display:flex}.slider-arrow{background:var(--card-bg);width:44px;height:44px;box-shadow:0 4px 0 var(--shadow);border:none;border-radius:50%;flex-shrink:0;font-size:18px;transition:transform 80ms}.slider-arrow:active{box-shadow:0 2px 0 var(--shadow);transform:translateY(2px)}.slider-dots{flex-wrap:wrap;justify-content:center;gap:6px;max-width:260px;margin-top:12px;display:flex}.slider-dot{background:var(--shadow);opacity:.4;border-radius:50%;width:8px;height:8px}.slider-dot.is-active{opacity:1;background:var(--tile-color,var(--primary))}img[src^="/images/words/"]{filter:var(--picture-outline)}.quiz-emoji-img,.unit-word-image,.lesson-picture,.letter-card-photo{background:var(--picture-bg);border-radius:20px}.quiz-emoji-img,.unit-word-image:not(.is-text),.lesson-picture:not(.is-text){padding:8%}.choice-button.is-picture:not(.is-correct):not(.is-wrong){background:var(--picture-bg)}.quiz-emoji-img{object-fit:contain;width:110px;height:110px;display:block}.word-tile-emoji-img{object-fit:contain;width:52px;height:52px}.memory-card-picture-img{object-fit:contain;width:min(17vw,120px);height:min(17vw,120px);display:block}.unit-level{width:100%;margin-bottom:18px}.unit-level-title{margin:4px 0 10px;font-size:18px}.unit-number{background:var(--primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:24px;font-weight:800;display:flex}.unit-title-arabic{font-size:18px}.unit-draft{color:#8a5a00;background:#fff1c2;border-radius:999px;margin-top:4px;padding:1px 8px;font-size:12px;font-weight:700;display:inline-block}.unit-empty{opacity:.7}.unit-hero{text-align:center;margin-bottom:8px}.unit-hero-arabic{font-size:34px;font-weight:700}.unit-hero-english{opacity:.8;font-size:18px}.unit-section-title{width:100%;margin:18px 0 10px;font-size:20px}.unit-word-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;width:100%;display:grid}.unit-word-card{background:var(--card-bg);box-shadow:0 5px 0 var(--shadow);text-align:center;border-radius:18px;flex-direction:column;align-items:center;gap:2px;padding:10px;display:flex}.unit-word-image{aspect-ratio:1;object-fit:contain;width:100%}.unit-word-image.is-text{color:var(--primary);justify-content:center;align-items:center;font-size:30px;font-weight:800;display:flex}.unit-word-latin{align-items:center;gap:6px;font-size:20px;font-weight:800;display:flex}.unit-word-arabic{font-size:20px}.unit-word-english{opacity:.75;font-size:14px}.unit-sentence-list{flex-direction:column;gap:10px;width:100%;margin:0;padding:0;list-style:none;display:flex}.unit-sentence{background:var(--card-bg);box-shadow:0 4px 0 var(--shadow);border-radius:16px;padding:12px 14px}.unit-sentence-latin{align-items:center;gap:6px;font-size:19px;font-weight:700;display:flex}.unit-sentence-arabic{text-align:right;font-size:20px}.unit-sentence-english{opacity:.75;font-size:14px}.unit-pattern-list{width:100%;margin:0 0 24px;padding-left:20px;line-height:1.6}.lessons-progress{align-items:center;gap:10px;width:100%;max-width:420px;margin-bottom:8px;display:flex}.lessons-progress .lesson-progress{flex:1;margin-bottom:0}.lessons-progress .lesson-progress-fill{transition:width 1.2s cubic-bezier(.22,1,.36,1)}.lessons-progress-label{white-space:nowrap;font-weight:800}.unit-card.is-done .unit-number{background:var(--success)}.unit-card.is-current{outline:3px solid var(--primary);animation:1.6s ease-in-out infinite lesson-bounce}.unit-card.is-current .unit-number{animation:1.6s ease-in-out infinite lesson-glow}.unit-card.is-locked{opacity:.5;filter:grayscale(.8);cursor:not-allowed;box-shadow:0 3px 0 var(--shadow)}.unit-card.is-locked:active{transform:none}.unit-card.is-unlocking{animation:.9s .5s both lesson-unlock,1.6s ease-in-out 1.4s infinite lesson-bounce}.unit-start{background:var(--primary);color:#fff;border-radius:999px;flex-shrink:0;margin-left:auto;padding:6px 12px;font-size:15px;font-weight:800}@keyframes lesson-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes lesson-glow{0%,to{box-shadow:0 0 #ff8c4299}50%{box-shadow:0 0 0 10px #ff8c4200}}@keyframes lesson-unlock{0%{filter:grayscale();opacity:.5;transform:scale(.9)}40%{transform:scale(1.08)rotate(-1.5deg)}70%{transform:scale(.98)rotate(1deg)}to{filter:none;opacity:1;transform:scale(1)}}.lesson-progress{width:100%;max-width:420px;height:14px;box-shadow:inset 0 2px 0 var(--shadow);background:#fffc;border-radius:999px;margin-bottom:14px}.lesson-progress-star{font-size:22px;line-height:1;animation:.5s lesson-hop;position:absolute;top:50%;right:-12px;transform:translateY(-50%)}@keyframes lesson-hop{0%{transform:translateY(-50%)scale(1)}40%{transform:translateY(-110%)scale(1.3)}to{transform:translateY(-50%)scale(1)}}.lesson-progress-fill{background:repeating-linear-gradient(-45deg, #ffffff47 0 8px, transparent 8px 16px) 0 0 / 22.6px 100%, var(--success);border-radius:999px;min-width:14px;height:100%;transition:width .5s cubic-bezier(.34,1.56,.64,1);animation:.8s linear infinite lesson-stripes;position:relative}@keyframes lesson-stripes{to{background-position:22.6px 0,0 0}}.lesson-stage{flex-direction:column;align-items:center;gap:16px;width:100%;max-width:420px;display:flex}.lesson-card{background:var(--card-bg);width:100%;box-shadow:0 6px 0 var(--shadow);text-align:center;border-radius:24px;flex-direction:column;align-items:center;gap:4px;padding:16px;display:flex}.lesson-picture{aspect-ratio:1;object-fit:contain;width:min(70vw,280px)}.lesson-picture.is-small{width:min(45vw,170px)}.lesson-picture.is-text{color:var(--primary);justify-content:center;align-items:center;font-size:96px;font-weight:800;display:flex}.lesson-word,.lesson-sentence{justify-content:center;align-items:center;gap:10px;font-weight:800;display:flex}.lesson-word{font-size:40px}.lesson-sentence{font-size:28px;line-height:1.2}.lesson-arabic{font-size:30px}.lesson-english{opacity:.6;font-size:16px}.playable{background:color-mix(in srgb, var(--primary) 14%, white);box-shadow:0 .12em 0 color-mix(in srgb, var(--primary) 40%, white);color:inherit;font:inherit;line-height:inherit;cursor:pointer;border:none;border-radius:.45em;justify-content:center;align-items:center;margin:0;padding:.06em .4em .1em;transition:transform .12s,box-shadow .12s,background-color .15s;display:inline-flex}.playable:hover{background:color-mix(in srgb, var(--primary) 22%, white)}.playable:active{box-shadow:0 .04em 0 color-mix(in srgb, var(--primary) 40%, white);transform:translateY(.08em)}.playable.is-playing{background:color-mix(in srgb, var(--primary) 32%, white);animation:.9s ease-in-out infinite playable-pulse}@keyframes playable-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}.playable.is-quiet{background:#e2efff;min-width:48px;min-height:48px;box-shadow:0 .12em #a8c8f0}.playable.is-quiet.lesson-english{opacity:1;color:#2f4f78}.playable.is-quiet:hover{background:#d3e6ff}.playable.is-quiet:active{box-shadow:0 .04em #a8c8f0}.playable.is-quiet.is-playing{background:#bcd8fb}.playable.is-picture{width:100%;height:100%;box-shadow:none;background:0 0;padding:0}.playable.is-picture.is-playing{filter:drop-shadow(0 0 12px color-mix(in srgb, var(--primary) 70%, transparent))}.lesson-word-row{align-items:center;gap:clamp(6px,1.6vmin,18px);width:100%;display:flex;container-type:inline-size}.lesson-word-row>.english-line{flex:1 1 0;justify-content:flex-end;min-width:min-content}.lesson-word-row>.lesson-word{flex:0 auto;min-width:0}.lesson-word-row.is-stacked{flex-wrap:wrap;justify-content:center;row-gap:0}.lesson-word-row.is-stacked>.english-line{flex:1 0 100%;order:1;justify-content:center}.lesson-word-row.is-stacked .lesson-word-side{flex:0 auto}.is-lesson .lesson-word-row.is-stacked .lesson-english{text-align:center}.lesson-word-row .playable{min-height:56px}.lesson-word-side{flex:1 0 0;justify-content:flex-start;display:flex}.is-lesson .lesson-word-row .lesson-english{text-align:right;overflow-wrap:normal;padding-inline:.5em;font-size:clamp(16px,3.2vmin,30px)}.is-lesson .lesson-word-row>.lesson-word{font-size:calc(min(clamp(40px, 7.5vmin, 76px), 16cqi) * var(--fit,1));white-space:normal;padding-inline:.35em;line-height:1.1}.is-lesson .lesson-word-row .lesson-arabic{font-size:calc(min(clamp(34px, 6vmin, 62px), 13cqi) * var(--fit,1));padding-inline:.3em;line-height:1.5}.playable.lesson-plate{min-width:min(60%,320px);max-width:100%;box-shadow:0 5px 0 color-mix(in srgb, var(--primary) 40%, white);border-radius:22px;flex-direction:column;gap:.15em;padding:.25em .9em .35em;font-size:1rem;line-height:1.25}.playable.lesson-plate:active{box-shadow:0 2px 0 color-mix(in srgb, var(--primary) 40%, white);transform:translateY(3px)}.lesson-plate>.lesson-arabic{border-top:2px solid color-mix(in srgb, var(--primary) 25%, white);width:100%;padding-top:.1em}.lesson-plate.is-sentence{cursor:pointer;text-align:center}.lesson-plate.is-sentence>span{display:block}.lesson-token{box-shadow:0 .08em 0 color-mix(in srgb, var(--primary) 35%, white);background:#fff;border-radius:.3em;margin-block:.08em;padding:0 .2em .04em}.lesson-token:hover{background:color-mix(in srgb, var(--primary) 8%, white)}.lesson-token.is-playing{background:color-mix(in srgb, var(--primary) 45%, white)}.lesson-plate.is-sentence.is-playing .lesson-token{animation:none}.lesson-hint{opacity:.5;font-size:14px}@media (prefers-reduced-motion:reduce){.playable{transition:none}.playable.is-playing{animation:none}}.lesson-sound{background:var(--primary);width:56px;height:56px;box-shadow:0 4px 0 var(--primary-dark);border:none;border-radius:50%;flex-shrink:0;font-size:26px}.lesson-sound:active{box-shadow:0 1px 0 var(--primary-dark);transform:translateY(3px)}.lesson-prompt{margin:0;font-size:22px;font-weight:700}.lesson-choices{grid-template-columns:repeat(3,1fr);gap:12px;width:100%;display:grid}.lesson-choice.is-wrong{animation:.4s shake}.lesson-star{animation:.6s lesson-pop}@keyframes lesson-pop{0%{transform:scale(.2)rotate(-30deg)}70%{transform:scale(1.2)rotate(8deg)}to{transform:scale(1)rotate(0)}}.lesson-wordlist-link{color:inherit;opacity:.55;background:0 0;border:none;margin-top:28px;font-size:14px;text-decoration:underline}@media (prefers-reduced-motion:reduce){.lesson-progress-fill,.lesson-progress-star,.unit-card.is-current,.unit-card.is-current .unit-number,.unit-card.is-unlocking,.lesson-star{animation:none}}.app-shell:has(.screen.is-lesson){max-width:1000px}.is-lesson{--lesson-width:clamp(320px, 88vmin, 760px)}.is-lesson .lesson-progress,.is-lesson .lesson-stage{max-width:var(--lesson-width)}.is-lesson .lesson-progress{height:clamp(14px,2.2vmin,22px)}.is-lesson .lesson-picture{width:clamp(180px,34vmin,420px)}.is-lesson .lesson-picture.is-small{width:clamp(130px,26vmin,280px)}.is-lesson .lesson-word{font-size:clamp(36px,7vmin,72px)}.is-lesson .lesson-sentence{font-size:calc(clamp(24px, 4.6vmin, 48px) * var(--fit,1))}.is-lesson .lesson-arabic{font-size:calc(clamp(28px, 5.4vmin, 56px) * var(--fit,1))}.is-lesson .lesson-english{font-size:clamp(16px,2.4vmin,24px)}.is-lesson .lesson-prompt{font-size:clamp(22px,3.6vmin,36px)}.is-lesson .lesson-sound{width:clamp(52px,9vmin,88px);height:clamp(52px,9vmin,88px);font-size:clamp(24px,4.4vmin,42px)}.is-lesson .lesson-card{border-radius:clamp(24px,3.5vmin,36px);padding:clamp(16px,3vmin,32px)}.is-lesson .lesson-choices{gap:clamp(12px,2.4vmin,24px)}.is-lesson .lesson-progress-star{font-size:clamp(22px,3.6vmin,34px)}.app-shell:has(.screen.is-lesson){height:100dvh;padding-top:clamp(8px,2vmin,24px);padding-bottom:clamp(8px,2vmin,24px);overflow:hidden}.app-shell:has(.screen.is-lesson) .kid-header{flex-shrink:0;margin-bottom:clamp(6px,1.5vmin,16px)}.screen.is-lesson{flex:1;gap:clamp(8px,1.8vmin,20px);min-height:0}.is-lesson .screen-header,.is-lesson .lesson-progress,.is-lesson .lesson-footer{flex-shrink:0}.is-lesson .screen-header h2{margin:0;font-size:clamp(20px,3.4vmin,28px)}.is-lesson .lesson-stage{flex:1;justify-content:center;gap:clamp(8px,2vmin,16px);min-height:0}.is-lesson .lesson-stage>*,.is-lesson .lesson-card>*{flex-shrink:0}.is-lesson .lesson-stage>.lesson-card{flex:0 auto;min-height:0}.is-lesson .lesson-stage>.lesson-picture-box,.is-lesson .lesson-card>.lesson-picture-box{flex:0 1 var(--picture-size);min-height:48px}.is-lesson .lesson-stage>.lesson-card:has(>.lesson-picture-box){gap:clamp(8px,1.6dvh,18px)}.is-lesson .lesson-card>.lesson-picture-box{flex-basis:min(540px,70vw)}.is-lesson .lesson-card:not(:has(>.lesson-picture-box)) .lesson-plate .lesson-sentence{font-size:calc(clamp(34px, 8vmin, 72px) * var(--fit,1))}.is-lesson .lesson-card:not(:has(>.lesson-picture-box)) .lesson-plate .lesson-arabic{font-size:calc(clamp(36px, 8.6vmin, 76px) * var(--fit,1))}.lesson-picture-box{--picture-size:clamp(180px, 34vmin, 420px);justify-content:center;align-items:center;width:100%;display:flex;container-type:size}.lesson-picture-box.is-small{--picture-size:clamp(130px, 26vmin, 280px)}.is-lesson .lesson-picture,.is-lesson .lesson-picture.is-small{width:min(100cqw,100cqh);height:min(100cqw,100cqh)}.is-lesson .lesson-picture:not(.is-text){padding:calc(min(100cqw,100cqh)/12.5)}.is-lesson .lesson-picture.is-text{font-size:min(clamp(64px,14vmin,150px),50cqh)}.is-lesson .lesson-choice{aspect-ratio:1;justify-self:center;width:min(100%,26dvh);padding:0}.lesson-footer{justify-content:center;gap:20px;display:flex}.is-lesson .lesson-wordlist-link{margin-top:0}@media (height<=420px){.is-lesson .lesson-stage{justify-content:flex-start;overflow-y:auto}}.lesson-explain{text-align:left;align-items:stretch;gap:clamp(10px,2vmin,18px)}.lesson-explain-text{margin:0;font-size:clamp(17px,2.6vmin,24px);line-height:1.4}.lesson-explain-row{background:#f4f1ff;border-radius:16px;grid-template-columns:auto 1fr auto 1fr;align-items:center;gap:10px;padding:12px;font-size:clamp(18px,3vmin,28px);font-weight:700;display:grid}.lesson-explain-row.is-uyghur{background:#fff1dc}.lesson-explain-lang{text-transform:uppercase;letter-spacing:.04em;opacity:.6;font-size:13px;font-weight:800}.lesson-explain-from,.lesson-explain-to{flex-direction:column;display:flex}.lesson-explain-from{opacity:.75}.lesson-explain-arrow{color:var(--primary)}.lesson-explain-to{animation:.5s .6s both lesson-arrive}.lesson-explain-arabic{font-size:.9em;font-weight:500}.lesson-mark{color:var(--primary-dark);-webkit-text-decoration:underline wavy var(--primary);text-decoration:underline wavy var(--primary);text-underline-offset:4px;background:0 0;font-weight:800;animation:.6s 1s both lesson-pop;display:inline-block}@keyframes lesson-arrive{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:none}}.lesson-yesno{grid-template-columns:1fr 1fr;gap:clamp(12px,2.4vmin,24px);width:100%;display:grid}.lesson-yesno-button{flex-direction:column;align-items:center;gap:4px;font-size:clamp(22px,3.6vmin,34px);display:flex}.lesson-yesno-button span{font-size:clamp(40px,7vmin,64px)}.lesson-yesno-button.is-wrong{animation:.4s shake}.lesson-yesno-question{flex-direction:column;align-items:center;gap:2px;display:flex}.lesson-yesno-question .lesson-arabic{font-size:clamp(26px,5vmin,40px);line-height:1.3}.lesson-yesno-question.is-reply{color:var(--success-dark);text-align:center}.lesson-yesno-question.is-reply .lesson-word,.lesson-yesno-question.is-reply .lesson-arabic{font-size:clamp(22px,4.2vmin,34px)}.lesson-yesno-phrase{display:inline-block}@media (aspect-ratio>=5/4){.lesson-yesno-question{flex-flow:wrap;justify-content:center;align-items:baseline;column-gap:.8em}}@media (width<=480px){.lesson-explain-row{grid-template-columns:1fr auto 1fr;gap:4px 8px;padding:10px;font-size:17px}.lesson-explain-lang{grid-column:1/-1}.lesson-explain-text{font-size:16px}}.is-lesson .lesson-card.lesson-explain{overflow-y:auto}@media (prefers-reduced-motion:reduce){.lesson-explain-to,.lesson-mark,.lesson-yesno-button.is-wrong{animation:none}}.unit-admin-note{color:#8a5a00;background:#fff1c2;border-radius:999px;margin:0;padding:6px 12px;font-size:14px;font-weight:700}.unit-card-row{align-items:stretch;gap:8px;display:flex}.unit-card-row .unit-card{flex:1;min-width:0}.unit-edit-button{color:#8a5a00;box-shadow:0 4px 0 var(--shadow);background:#fff1c2;border:none;border-radius:16px;flex-shrink:0;padding:0 14px;font-weight:800}.app-shell:has(.screen.editor){max-width:920px}.editor{align-items:stretch;padding-bottom:90px}.editor-section{background:var(--card-bg);box-shadow:0 4px 0 var(--shadow);border-radius:18px;flex-direction:column;gap:10px;padding:14px 16px;display:flex}.editor-section h3{margin:0;font-size:19px}.editor-section h3 small{opacity:.6;font-size:14px;font-weight:500}.editor input,.editor select,.editor textarea{font:inherit;color:inherit;background:#fff;border:1px solid #d9d2ef;border-radius:10px;width:100%;min-width:0;padding:8px 10px;font-size:16px}.editor input.is-latin{font-weight:700}.editor-field{border:none;flex-direction:column;gap:4px;margin:0;padding:0;display:flex}.editor-field>span{opacity:.7;font-size:13px;font-weight:700}.editor-checks{flex-wrap:wrap;gap:6px 16px;display:flex}.editor-checks input{width:auto}.editor-row{border-top:1px solid #efeaf9;align-items:flex-start;gap:10px;padding:10px 0;display:flex}.editor-row-main{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.editor-inline{align-items:center;gap:8px;display:flex}.editor-thumb{background:var(--picture-bg);opacity:.9;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;display:flex}.editor-thumb img{object-fit:contain;width:48px;height:48px}.editor-arabic{font-size:18px}.editor-arabic.is-pending{opacity:.4}.editor-arabic.is-problem{color:#c0392b}.editor-warning{font-size:13px;font-weight:700}.editor-row-actions{flex-shrink:0;gap:4px;display:flex}.editor-row-actions button{background:#fff;border:1px solid #d9d2ef;border-radius:8px;width:32px;height:32px;font-weight:800}.editor-row-actions button.is-danger{color:#c0392b}.editor-add{color:inherit;background:0 0;border:1px dashed #b9addf;border-radius:10px;align-self:flex-start;padding:8px 14px;font-weight:700}.editor-report{white-space:pre-wrap;background:#f4f1ff;border-radius:12px;margin:0;padding:12px;font-size:13px}.editor-error{color:#c0392b;font-weight:700}.editor-savebar{z-index:5;box-shadow:0 -4px 12px var(--shadow);background:#fffffff5;justify-content:flex-end;align-items:center;gap:12px;padding:12px 16px;display:flex;position:fixed;bottom:0;left:0;right:0}.editor-status{margin-right:auto;font-weight:700}.editor-status.is-ok{color:var(--success-dark)}.editor-status.is-error{color:#c0392b}.editor-save{padding:12px 32px;font-size:18px}.editor-save:disabled{opacity:.45;box-shadow:none}@media (width<=600px){.editor-inline{flex-direction:column;align-items:stretch}.editor-row-actions{flex-direction:column}}.editor .editor-arabic-input{text-align:right;background:#fbfaff;font-size:20px}.editor-voice{flex-wrap:wrap;align-items:center;gap:6px;font-size:14px;display:flex}.editor-voice.is-muted{opacity:.6}.editor-voice button{font:inherit;color:inherit;background:#fff;border:1px solid #d9d2ef;border-radius:8px;padding:4px 10px;font-weight:700}.editor-voice button.is-recording{color:#fff;background:#e5484d;border-color:#e5484d;animation:1.2s ease-in-out infinite lesson-glow}.editor-voice button.is-keep{border-color:var(--success);background:var(--success);color:#fff}.editor-voice-source{background:#efeaf9;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:800}.editor-voice-source.is-recorded{color:var(--success-dark);background:#d6f5e8}.editor-voice-source.is-borrowed{color:#8a5a00;background:#fff1c2}.logo{flex-direction:column;align-items:center;gap:2px;display:flex}.logo-mascot{width:clamp(96px,26vmin,150px);height:auto;filter:drop-shadow(0 8px 10px var(--shadow));animation:2.6s ease-in-out infinite logo-hop}.logo-wordmark{letter-spacing:-.03em;color:#1f2a24;margin:0;font-family:Nunito,"Baloo 2",system-ui,sans-serif;font-size:clamp(44px,11vmin,64px);font-weight:900;line-height:1}.logo.is-medium .logo-mascot{width:clamp(80px,20vmin,110px)}.logo.is-medium .logo-wordmark{font-size:clamp(36px,8vmin,48px)}@keyframes logo-hop{0%,70%,to{transform:translateY(0)rotate(0)}78%{transform:translateY(-8px)rotate(-4deg)}86%{transform:translateY(0)rotate(2deg)}}@media (prefers-reduced-motion:reduce){.logo-mascot{animation:none}}.editor-notes{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.editor-note{background:#fff8db;border-left:4px solid #f5b82e;border-radius:10px;align-items:flex-start;gap:6px;width:100%;padding:6px;display:flex}.editor-note.is-resolved{border-left-color:var(--success);opacity:.7;background:#f1f7f3}.editor-note.is-resolved textarea{text-decoration:line-through}.editor .editor-note textarea{resize:vertical;flex:1;padding:6px 8px;font-size:15px}.editor-note-meta{opacity:.6;white-space:nowrap;padding-top:8px;font-size:12px}.editor-note button{font:inherit;color:inherit;white-space:nowrap;background:#fff;border:1px solid #d9d2ef;border-radius:8px;padding:4px 8px;font-size:13px;font-weight:700}.editor-note button.is-danger{color:#c0392b}.editor-note-add{font:inherit;color:#8a5a00;opacity:.75;background:0 0;border:none;padding:2px 0;font-size:13px;font-weight:700}.editor-hint{opacity:.75;margin:0;font-size:13px}.unit-notes-badge{color:#b4441b;background:#ffe2d6;border-radius:999px;margin:4px 0 0 6px;padding:1px 8px;font-size:12px;font-weight:800;display:inline-block}.editor-player{max-width:260px;height:32px}.editor-level{background:#efeaf9;border-radius:999px;width:120px;height:10px;overflow:hidden}.editor-level span{background:var(--success);height:100%;transition:width 60ms linear;display:block}.screen.read-aloud{gap:clamp(8px,1.8vmin,20px)}.read-aloud .game-progress{margin:0}.read-card{background:var(--card-bg);width:100%;max-width:420px;box-shadow:0 6px 0 var(--shadow);border-radius:24px;flex-direction:column;align-items:center;gap:6px;padding:clamp(12px,2.4vmin,20px);transition:box-shadow .2s,transform .2s;display:flex}.read-card.is-correct{box-shadow:0 6px 0 var(--success-dark), 0 0 0 4px var(--success);transform:scale(1.03)}.read-picture{aspect-ratio:1;object-fit:contain;background:var(--picture-bg);border-radius:20px;width:min(50vw,200px,22dvh);padding:6%}.read-word{font-size:clamp(36px,7vmin,60px);font-weight:800}.read-arabic{font-size:clamp(30px,5.6vmin,50px)}.read-message{text-align:center;min-height:1.4em;margin:0;font-size:clamp(18px,3vmin,26px);font-weight:700}.read-message.is-correct{color:var(--success-dark)}.read-message.is-speaking-me{color:var(--primary-dark)}.read-loading{background:var(--card-bg);border-radius:999px;width:min(320px,80%);height:12px;overflow:hidden}.read-loading div{background:var(--primary);height:100%;transition:width .3s}.read-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;display:flex}.read-mic{--level:0;background:var(--primary);width:clamp(76px,12dvh,96px);height:clamp(76px,12dvh,96px);box-shadow:0 6px 0 var(--primary-dark), 0 0 0 calc(var(--level) * 40px) color-mix(in srgb, var(--primary) 30%, transparent);border:none;border-radius:50%;font-size:clamp(34px,5.5dvh,44px);transition:transform 80ms}.read-mic:active:not(:disabled){transform:translateY(4px)}.read-mic.is-listening{box-shadow:0 6px 0 #d9422f, 0 0 0 calc(8px + var(--level) * 40px) #ff6b6b4d;background:#ff6b6b;animation:1s ease-in-out infinite read-pulse}.read-mic:disabled{cursor:default}@keyframes read-pulse{50%{transform:scale(1.06)}}@media (prefers-reduced-motion:reduce){.read-mic.is-listening{animation:none}.read-card{transition:none}}.practice-button{flex-direction:column;align-items:center;gap:2px;display:flex}.practice-due{opacity:.85;font-size:15px;font-weight:700}.practice-words{gap:clamp(8px,1.6vmin,16px);width:100%;display:grid}.choice-button.practice-word{justify-content:space-between;align-items:center;gap:12px;padding:clamp(10px,1.8vmin,18px) clamp(16px,3vmin,28px);font-size:clamp(22px,3.6vmin,34px);display:flex}.practice-word-arabic{font-weight:700}.is-lesson .lesson-stage>.lesson-card.lesson-letter{flex:auto}.lesson-letter{gap:clamp(8px,1.6dvh,16px)}.lesson-letter .lesson-prompt{margin:0}.lesson-letter-pair{--pair-size:min(clamp(52px, 11dvh, 112px), 15vw);justify-content:center;align-items:center;gap:clamp(8px,2vmin,20px);display:flex}.lesson-letter-latin,.lesson-letter-arabic{background:color-mix(in srgb, var(--letter-color) 30%, white);color:var(--text);font-size:var(--pair-size);border-radius:.3em;padding:.04em .28em .1em;font-weight:800;line-height:1.1;transition:transform .15s}.lesson-letter-arabic{font-family:Noto Naskh Arabic,Geeza Pro,"Baloo 2",sans-serif;font-weight:700}.lesson-letter-equals{font-size:calc(var(--pair-size) * .6);opacity:.45;font-weight:800}.playable.lesson-letter-pair{box-shadow:none;font-size:var(--pair-size);background:0 0;padding:0 0 .1em}.lesson-letter-pair .lesson-letter-latin,.lesson-letter-pair .lesson-letter-arabic{box-shadow:0 .06em 0 color-mix(in srgb, var(--letter-color) 60%, white)}.is-lesson .lesson-card>.lesson-letter-words{flex:1 1 0;min-height:0;max-height:340px}.is-lesson .lesson-stage>.lesson-card.lesson-letter{justify-content:center}.lesson-letter-words{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(8px,1.6vmin,16px);width:100%;max-width:720px;display:grid}.lesson-letter-word{background:var(--picture-bg);min-width:0;min-height:64px;color:var(--text);font:inherit;border:3px solid #0000;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:clamp(6px,1.2vmin,12px) 4px;font-size:clamp(18px,2.8vmin,26px);font-weight:800;line-height:1.15;transition:transform .15s,border-color .15s;display:flex;overflow:hidden}.lesson-letter-word.is-playing{border-color:var(--letter-color)}.lesson-letter-word img{object-fit:contain;flex:1 1 0;width:100%;min-height:32px;max-height:220px}.lesson-letter-word-arabic{font-family:Noto Naskh Arabic,Geeza Pro,"Baloo 2",sans-serif;font-size:.95em;font-weight:700}.lesson-letter-mark{background:color-mix(in srgb, var(--letter-color) 45%, white);color:inherit;border-radius:.2em;padding:0 .06em}.lesson-letter-word-arabic .lesson-letter-mark{padding:0}@media (prefers-reduced-motion:reduce){.lesson-letter-word.is-playing{transform:none}}.is-lesson .choice-button.lesson-letter-choice{font-size:clamp(36px,7dvh,64px)}.english-line{justify-content:center;align-items:center;gap:8px;display:flex}.english-speaker{border:2px solid color-mix(in srgb, var(--text) 18%, transparent);background:var(--card-bg);opacity:1;border-radius:50%;flex-shrink:0;width:48px;height:48px;margin:-8px 0;font-size:20px;line-height:1}.english-speaker:active{transform:translateY(2px)}.is-lesson{--next-size:clamp(64px, 9vmin, 88px);--next-gap:clamp(12px, 2vmin, 24px)}.is-lesson .lesson-card:has(>.lesson-next){max-width:calc(100vw - 2 * (var(--next-size) + var(--next-gap)) - 48px);position:relative}.lesson-next{top:50%;left:calc(100% + var(--next-gap));width:var(--next-size);height:var(--next-size);color:#fff;font:inherit;cursor:pointer;background:linear-gradient(#ff9f4a 0%,#f76707 100%);border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:clamp(28px,4.4vmin,40px);font-weight:800;transition:transform .12s,box-shadow .12s;display:flex;position:absolute;transform:translateY(-50%);box-shadow:0 5px #d9560a}.lesson-next:active{transform:translateY(calc(4px - 50%));box-shadow:0 1px #d9560a}@media (width<=699px){.is-lesson .lesson-card:has(>.lesson-next){align-self:flex-start;width:calc(100% - 22px);max-width:none;padding-right:30px}.lesson-next{left:100%;transform:translate(-50%,-50%)}.lesson-next:active{transform:translate(-50%,calc(4px - 50%))}}.board-screen{max-width:560px}.board-me-card{background:var(--card-bg);width:100%;box-shadow:0 6px 0 var(--shadow);border-radius:22px;align-items:center;gap:14px;padding:14px 18px;font-size:18px;font-weight:700;display:flex}.board-me-card p{margin:0}.board-me-avatar{font-size:44px;line-height:1}.board-note{text-align:center;opacity:.8;margin:0;font-size:16px;font-weight:700}.board-list{flex-direction:column;gap:8px;width:100%;margin:0;padding:0;list-style:none;display:flex}.board-row{background:color-mix(in srgb, var(--card-bg) 80%, transparent);border-radius:18px;grid-template-columns:36px 36px minmax(0,1fr) minmax(48px,22%) auto;align-items:center;gap:10px;min-height:56px;padding:6px 14px;font-size:17px;font-weight:700;display:grid}.board-row.is-me{background:#fff1e3;box-shadow:inset 0 0 0 3px #ffb877}.board-place{text-align:center;font-size:22px}.board-avatar{text-align:center;font-size:28px}.board-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.board-me{color:#a8430a}.board-bar{background:color-mix(in srgb, var(--text) 8%, transparent);border-radius:999px;height:10px;overflow:hidden}.board-bar>span{border-radius:inherit;background:linear-gradient(90deg,#ffb35c,#f76707);height:100%;display:block}.board-minutes{text-align:right;white-space:nowrap}@media (width<=420px){.board-row{grid-template-columns:30px 30px minmax(0,1fr) auto;gap:8px;padding-inline:10px}.board-bar{display:none}}.settings-screen{gap:16px;width:100%;max-width:640px;margin:0 auto}.settings-section{background:var(--card-bg);box-shadow:0 4px 0 var(--shadow);border-radius:20px;flex-direction:column;align-items:flex-start;gap:8px;width:100%;padding:16px 20px;display:flex}.settings-section h3{margin:0;font-size:20px}.settings-text{margin:0;font-size:16px;line-height:1.45}.settings-kids{width:100%;margin:0;padding:0;list-style:none}.settings-kid+.settings-kid{border-top:1px solid #eee2cc}.settings-kid-row{justify-content:space-between;align-items:center;gap:12px;min-height:52px;display:flex}.settings-kid-name{font-size:18px;font-weight:700}.settings-link{color:#2f4f78;font:inherit;cursor:pointer;background:0 0;border:none;min-height:48px;padding:8px 4px;font-size:16px;font-weight:700;text-decoration:underline}.settings-link.is-danger{color:#b42318}.settings-confirm{flex-direction:column;gap:10px;width:100%;padding:4px 0 12px;display:flex}.settings-confirm p{margin:0;font-size:16px}.settings-actions{align-items:center;gap:16px;display:flex}.settings-input{background:var(--card-bg);min-height:52px;color:var(--text);border:2px solid #e5cfa8;border-radius:14px;max-width:320px;padding:12px 16px;font-family:inherit;font-size:17px}.danger-button{color:#fff;min-height:48px;font:inherit;cursor:pointer;background:#b42318;border:none;border-radius:14px;padding:8px 20px;font-size:16px;font-weight:800}.danger-button:disabled{opacity:.6}.auth-consent{text-align:left;align-items:flex-start;gap:10px;font-size:15px;line-height:1.35;display:flex}.auth-consent input{width:22px;height:22px;min-height:0;accent-color:var(--primary-dark);flex:none;margin:1px 0 0}.auth-consent a{color:#2f4f78;font-weight:700}.auth-privacy{color:var(--text);font-size:14px}.auth-footer{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 20px;display:flex}.language-select{color:var(--text);align-items:center;gap:6px;font-size:15px;display:inline-flex}.language-select select{background:var(--card-bg);min-height:48px;color:var(--text);font:inherit;cursor:pointer;border:2px solid #e6d9b8;border-radius:12px;padding:0 12px}.lesson-build-line{flex-wrap:wrap;justify-content:center;gap:clamp(6px,1.2vmin,12px);min-height:clamp(52px,8vmin,80px);font-size:clamp(26px,5vmin,44px);font-weight:800;display:flex}.lesson-build-slot{border:3px dashed color-mix(in srgb, var(--primary) 45%, white);border-radius:14px;justify-content:center;align-items:center;min-width:clamp(56px,9vmin,96px);min-height:clamp(48px,7.5vmin,76px);padding:0 .3em;display:flex}.lesson-build-slot.is-filled{background:color-mix(in srgb, var(--primary) 14%, white);border:3px solid #0000;animation:.25s lesson-arrive}.lesson-build-line.is-done .lesson-build-slot{background:color-mix(in srgb, var(--success) 30%, white)}.lesson-build-arabic{font-size:clamp(26px,5vmin,44px)}.lesson-build-cards.is-done{display:none}.lesson-build-cards{flex-wrap:wrap;justify-content:center;gap:clamp(12px,2vmin,20px);width:100%;display:flex}.lesson-build-card{min-width:clamp(96px,16vmin,150px);width:var(--card-width,auto);min-height:clamp(72px,11vmin,110px);font-size:calc(clamp(24px, 4.4vmin, 40px) * var(--card-scale,1));white-space:nowrap;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:8px 16px;line-height:1.1;display:flex}.lesson-build-card-arabic{opacity:.7;font-size:.75em;font-weight:700}.lesson-build-card.is-used{visibility:hidden}.lesson-build-card.is-wrong{animation:.4s shake}@media (prefers-reduced-motion:reduce){.lesson-build-slot.is-filled,.lesson-build-card.is-wrong{animation:none}}.unit-card.needs-plan{opacity:.6;filter:grayscale(.6)}.ask-grown-up{min-height:calc(100dvh - 180px)}.ask-grown-up-body{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:clamp(8px,2dvh,16px);padding:0 16px;display:flex}.ask-grown-up-body h2{margin:0;font-size:clamp(24px,5vmin,34px)}.ask-grown-up-body p{margin:0 0 8px;font-size:clamp(18px,3.6vmin,24px)}.ask-grown-up-picture{width:clamp(120px,26dvh,200px);position:relative}.ask-grown-up-picture img{width:100%;display:block}.ask-grown-up-lock{font-size:clamp(36px,8dvh,56px);position:absolute;bottom:0;right:-6%}.payment-link{min-height:calc(100svh - 72px)}.payment-link-body{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:clamp(8px,2dvh,16px);padding:0 16px;display:flex}.payment-link-body h2{margin:0;font-size:clamp(24px,5vmin,34px)}.payment-link-body p{margin:0 0 8px;font-size:clamp(18px,3.6vmin,24px)}.payment-link-picture{width:clamp(100px,22dvh,160px)}.payment-link-body a.big-button{text-decoration:none}.plan-status{font-weight:700}.plan-price{margin:4px 0;font-size:26px;font-weight:800}.big-button.plan-subscribe{align-self:stretch}.plan-small{color:#6a5f86;font-size:15px}.plan-links{flex-wrap:wrap;gap:4px 16px;margin:0;font-size:15px;display:flex}.plan-links a{color:#2f4f78;align-items:center;min-height:32px;display:inline-flex}
