@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=DM+Serif+Display:ital@0;1&display=swap";:root{color:#1d1d1b;font-synthesis:none;--paper:#f4f1e8;--ink:#1d1d1b;--muted:#77766f;--line:#d8d4c9;--lime:#dfff68;--coral:#ff5a4e;--violet:#9270ff;--blue:#70b8ff;background:#e8e5dd;font-family:DM Sans,system-ui,-apple-system,sans-serif}*{box-sizing:border-box}html{background:#e8e5dd}body{min-width:320px;min-height:100dvh;margin:0}button,input,select{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible{outline-offset:2px;outline:3px solid #9270ff}.center{background:var(--paper);place-items:center;min-height:100dvh;display:grid}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.app-shell{background:var(--paper);width:min(100%,500px);min-height:100dvh;margin:0 auto;position:relative;box-shadow:0 0 80px #2221}main{min-height:100dvh}.page{padding:max(24px,env(safe-area-inset-top)) 22px calc(120px + env(safe-area-inset-bottom))}.topbar{justify-content:space-between;align-items:center;margin:5px 0 28px;display:flex}.topbar p,.page-title p{color:var(--muted);margin:0 0 4px;font-size:.86rem}.topbar h1{margin:0;font:2rem/1.05 DM Serif Display,serif}.avatar,.large-avatar{background:var(--ink);color:var(--lime);border:0;border-radius:50%;place-items:center;font-weight:600;display:grid}.avatar{width:48px;height:48px}.avatar-image,.avatar-fallback{object-fit:cover;background:var(--ink);width:48px;height:48px;color:var(--lime);border-radius:50%;place-items:center;font-weight:600;display:grid}.avatar-image.large,.avatar-fallback.large{width:64px;height:64px}.avatar .avatar-image,.avatar .avatar-fallback{width:100%;height:100%}.goal-card{background:var(--ink);color:#fff;border-radius:28px;margin-bottom:14px;padding:22px}.goal-head,.goal-head span,.goal-bottom,.streak-title,.streak-title>div{justify-content:space-between;align-items:center;display:flex}.goal-head span{justify-content:flex-start;gap:8px}.goal-head strong{font:1.35rem DM Serif Display,serif}.progress{background:#ffffff24;border-radius:99px;height:9px;margin:21px 0 10px;overflow:hidden}.progress i{border-radius:inherit;background:var(--lime);height:100%;transition:width .5s;display:block}.goal-bottom{color:#c9c9c4;font-size:.78rem}.goal-bottom p{margin:0}.streak-card{border:1px solid var(--line);background:#fff9;border-radius:28px;padding:20px}.streak-title>div{color:var(--coral);justify-content:flex-start;gap:8px}.streak-title>div span{color:var(--ink)}.streak-title strong{font:2.1rem/1 DM Serif Display,serif}.streak-title small{color:var(--muted);font:.68rem DM Sans;display:block}.week-row{grid-template-columns:repeat(7,1fr);gap:7px;margin-top:20px;display:grid}.week-row div{text-align:center}.week-row i{aspect-ratio:1;color:var(--ink);background:#e4e1d8;border-radius:50%;place-items:center;font-size:.8rem;font-style:normal;display:grid}.week-row .done i{background:var(--coral);color:#fff}.week-row span{color:var(--muted);margin-top:7px;font-size:.7rem;display:block}.section-head{justify-content:space-between;align-items:baseline;margin:30px 2px 13px;display:flex}.section-head h2{margin:0;font:1.35rem DM Serif Display,serif}.section-head span{color:var(--muted);font-size:.78rem}.lesson-card{background:var(--lime);color:#1d1d1b;text-align:left;cursor:pointer;border:0;border-radius:24px;grid-template-columns:68px 1fr auto;align-items:center;gap:14px;width:100%;padding:15px;display:grid}.lesson-art{background:var(--ink);width:68px;height:68px;color:var(--lime);border-radius:18px;place-items:center;display:grid}.lesson-card span{text-transform:uppercase;letter-spacing:.08em;font-size:.7rem}.lesson-card h3{margin:2px 0;font-size:1.05rem}.lesson-card p{color:#4b4d36;margin:0;font-size:.74rem}.metric-grid{grid-template-columns:1fr 1fr;gap:12px;margin-top:14px;display:grid}.metric-grid article{border:1px solid var(--line);border-radius:22px;padding:18px}.metric-grid strong{font:1.7rem DM Serif Display,serif;display:block}.metric-grid span{color:var(--muted);font-size:.75rem}.bottom-nav{z-index:10;bottom:max(8px,env(safe-area-inset-bottom));background:#252522;border:1px solid #ffffff12;border-radius:36px;grid-template-columns:repeat(5,minmax(0,1fr));align-items:center;gap:2px;width:min(100% - 16px,484px);min-height:72px;padding:7px;display:grid;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 18px 50px #0004,0 3px 12px #0002}.bottom-nav button{color:#f4f1e8;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:29px;place-items:center;width:100%;min-width:0;height:58px;padding:0;transition:background-color .3s,color .3s,transform .25s;display:grid;position:relative;overflow:hidden}.bottom-nav button:active{transform:scale(.92)}.bottom-nav button.active{color:#1d1d1b;background:var(--lime)}.nav-icon{place-items:center;width:24px;height:24px;transition:transform .4s cubic-bezier(.34,1.56,.64,1);display:grid}.nav-label{opacity:0;white-space:nowrap;text-align:center;font-size:.6rem;font-weight:600;line-height:1;transition:opacity .22s,transform .38s cubic-bezier(.34,1.56,.64,1);position:absolute;bottom:7px;left:3px;right:3px;overflow:hidden;transform:translateY(8px)}.bottom-nav button.active .nav-icon{transform:translateY(-8px)}.bottom-nav button.active .nav-label{opacity:1;transform:translateY(0)}.page-title{margin:7px 0 28px}.page-title h1{letter-spacing:-.03em;margin:0;font:2.65rem/.96 DM Serif Display,serif}.page-title em,.auth-copy em{color:var(--violet);font-weight:400}.mode-list{gap:12px;display:grid}.mode-card{border:1px solid var(--line);text-align:left;background:#fff9;border-radius:24px;grid-template-columns:60px 1fr auto;align-items:center;gap:14px;width:100%;min-height:88px;padding:13px;display:grid}.mode-icon{background:var(--tone);color:#1d1d1b;border-radius:18px;place-items:center;width:60px;height:60px;display:grid}.mode-card.lime{--tone:var(--lime)}.mode-card.coral{--tone:#ffb8af}.mode-card.violet{--tone:#d8ccff}.mode-card.blue{--tone:#c6e5ff}.mode-card strong,.mode-card small{display:block}.mode-card strong{font-size:1rem}.mode-card small{color:var(--muted);margin-top:4px}.quiet-note{color:var(--muted);align-items:flex-start;gap:12px;padding:20px 8px;display:flex}.quiet-note p{margin:0;font-size:.8rem;line-height:1.5}.learning-explainer{grid-template-columns:1fr 1fr;gap:9px;margin:-8px 0 18px;display:grid}.learning-explainer>div{border:1px solid var(--line);border-radius:18px;padding:14px 16px}.learning-explainer strong,.learning-explainer span{display:block}.learning-explainer strong{font:1.7rem DM Serif Display,serif}.learning-explainer span{color:var(--muted);font-size:.68rem}.learning-explainer p{color:var(--muted);grid-column:1/-1;margin:2px 3px 0;font-size:.74rem;line-height:1.5}.search{border:1px solid var(--line);background:#fff;border-radius:18px;align-items:center;gap:10px;min-height:52px;padding:0 15px;display:flex}.search input{color:inherit;background:0 0;border:0;outline:0;width:100%;font-size:1rem}.search button{background:0 0;border:0;place-items:center;width:38px;height:38px;display:grid}.empty-state{text-align:center;min-height:350px;color:var(--muted);place-content:center;justify-items:center;padding:30px;display:grid}.empty-state svg{width:42px;height:42px;color:var(--ink)}.empty-state h2{color:var(--ink);margin:16px 0 4px;font:1.4rem DM Serif Display}.empty-state p{max-width:290px;font-size:.85rem;line-height:1.5}.hero-stat{background:var(--violet);border-radius:30px;padding:26px}.hero-stat span,.hero-stat small{display:block}.hero-stat strong{font:5.5rem/.95 DM Serif Display;display:block}.hero-stat small{margin-top:6px}.profile-card{border-bottom:1px solid var(--line);align-items:center;gap:16px;margin-bottom:12px;padding-bottom:24px;display:flex}.large-avatar{width:64px;height:64px;font-size:1.4rem}.profile-card strong,.profile-card span{display:block}.profile-card span{color:var(--muted);margin-top:4px;font-size:.78rem}.settings-row{border:0;border-bottom:1px solid var(--line);text-align:left;background:0 0;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;width:100%;min-height:58px;display:grid}.settings-row.danger{color:#b62b22}.word-list{gap:10px;margin-top:18px;display:grid}.word-list article{border:1px solid var(--line);background:color-mix(in srgb,var(--paper) 72%,white);border-radius:20px;justify-content:space-between;align-items:center;gap:20px;padding:16px 18px;display:flex}.word-list strong,.word-list span{display:block}.word-list span{color:var(--muted);margin-top:3px;font-size:.72rem}.word-list p{text-align:right;margin:0;font-weight:500}.source-note{color:var(--muted);margin:18px 6px 0;font-size:.68rem;line-height:1.4}.source-note.centered{text-align:center}.empty-state.compact{min-height:260px}.subpage{min-height:100dvh;padding-bottom:40px}.subpage-header,.session-header{text-align:center;grid-template-columns:48px 1fr 48px;align-items:center;display:grid}.subpage-header>span{font-size:.84rem;font-weight:600}.subpage-header i,.session-header i{width:48px}.round-button{border:1px solid var(--line);background:color-mix(in srgb,var(--paper) 78%,white);border-radius:50%;place-items:center;width:44px;height:44px;display:grid}.round-button svg{width:19px}.settings-intro{margin:44px 0 30px}.settings-intro p{color:var(--muted);margin:0 0 7px;font-size:.8rem}.settings-intro h1{letter-spacing:-.03em;margin:0;font:2.7rem/.95 DM Serif Display,serif}.settings-intro em{color:var(--violet);font-weight:400}.theme-options{gap:11px;display:grid}.theme-options button{border:1px solid var(--line);background:color-mix(in srgb,var(--paper) 72%,white);text-align:left;border-radius:23px;grid-template-columns:54px 1fr 24px;align-items:center;gap:14px;min-height:78px;padding:11px 16px 11px 11px;transition:border-color .2s,transform .2s,background .2s;display:grid}.theme-options button:active{transform:scale(.98)}.theme-options button.selected{border-color:var(--ink);background:var(--lime);color:#1d1d1b}.theme-icon{background:var(--ink);width:54px;height:54px;color:var(--paper);border-radius:17px;place-items:center;display:grid}.theme-options strong,.theme-options small{display:block}.theme-options small{color:var(--muted);margin-top:4px}.theme-options button.selected small{color:#4b4d36}.settings-hint{color:var(--muted);margin:20px 8px;font-size:.76rem;line-height:1.5}.settings-page{padding-bottom:max(44px,env(safe-area-inset-bottom))}.settings-message{z-index:3;top:max(8px,env(safe-area-inset-top));border:1px solid;border-radius:17px;align-items:center;gap:10px;min-height:54px;margin:-8px 0 22px;padding:12px 14px;font-size:.8rem;display:flex;position:sticky;box-shadow:0 8px 24px #0002}.settings-message svg{flex:0 0 20px}.settings-message.success{color:#22320d;background:#dff5aa;border-color:#a5ca58}.settings-message.error{color:#75231c;background:#ffd0ca;border-color:#ed8d82}.settings-section{border-top:1px solid var(--line);padding:26px 0}.settings-heading{align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.settings-heading>svg{width:21px;margin-top:2px}.settings-heading h2{margin:0;font:1.25rem DM Serif Display,serif}.settings-heading p{color:var(--muted);margin:3px 0 0;font-size:.75rem;line-height:1.4}.language-options{gap:9px;display:grid}.language-options button{border:1px solid var(--line);background:color-mix(in srgb,var(--paper) 72%,white);text-align:left;border-radius:19px;grid-template-columns:1fr 22px;align-items:center;min-height:62px;padding:10px 15px;display:grid}.language-options strong,.language-options small{display:block}.language-options small{color:var(--muted);margin-top:3px;font-size:.7rem}.language-options button.selected{background:var(--lime);color:#1d1d1b;border-color:#a9c64d}.language-options button.selected small{color:#4b4d36}.avatar-upload{align-items:center;gap:18px;display:flex}.upload-button{border:1px solid var(--line);background:color-mix(in srgb,var(--paper) 72%,white);cursor:pointer;border-radius:99px;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:0 17px;font-size:.78rem;font-weight:600;display:flex}.upload-button input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.crop-overlay{z-index:50;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0009;align-items:end;padding:18px;display:grid;position:fixed;inset:0}.crop-dialog{background:var(--paper);border-radius:30px;width:min(100%,460px);max-height:calc(100dvh - 36px);margin:auto;padding:22px;overflow:auto;box-shadow:0 28px 90px #0008}.crop-dialog header{justify-content:space-between;align-items:flex-start;display:flex}.crop-dialog header p{color:var(--muted);margin:0;font-size:.72rem}.crop-dialog h2{margin:2px 0 0;font:1.55rem DM Serif Display,serif}.crop-dialog header button{border:1px solid var(--line);background:0 0;border-radius:50%;place-items:center;width:42px;height:42px;display:grid}.crop-preview{aspect-ratio:1;width:min(100%,300px);box-shadow:0 0 0 5px var(--lime),0 12px 35px #0003;background:#ddd;border-radius:50%;margin:20px auto;position:relative;overflow:hidden}.crop-preview>div{transform-origin:50%;background-repeat:no-repeat;background-size:cover;position:absolute;inset:0}.crop-dialog>label,.crop-position label{color:var(--muted);margin-top:13px;font-size:.7rem;display:block}.crop-dialog input[type=range]{width:100%;accent-color:var(--violet)}.crop-position{grid-template-columns:1fr 1fr;gap:14px;display:grid}.crop-dialog .primary{margin-top:20px}.learning-settings h3{margin:22px 2px 10px;font-size:.78rem}.direction-selects{grid-template-columns:1fr 28px 1fr;align-items:end;gap:7px;display:grid}.direction-selects>span{text-align:center;padding-bottom:15px}.direction-selects label{color:var(--muted);font-size:.7rem}.direction-selects select{border:1px solid var(--line);background:color-mix(in srgb,var(--paper) 72%,white);width:100%;min-height:52px;color:var(--ink);border-radius:16px;margin-top:6px;padding:0 10px;font-size:.82rem;display:block}.scope-options{gap:8px;display:grid}.scope-options button{border:1px solid var(--line);background:color-mix(in srgb,var(--paper) 72%,white);text-align:left;border-radius:18px;min-height:62px;padding:11px 42px 11px 14px;display:block;position:relative}.scope-options strong,.scope-options small{display:block}.scope-options small{color:var(--muted);margin-top:3px;font-size:.68rem}.scope-options button>svg{width:20px;position:absolute;top:20px;right:14px}.scope-options button.selected{background:var(--lime);color:#1d1d1b}.scope-options button.selected small{color:#4b4d36}.count-options{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.count-options button{border:1px solid var(--line);background:0 0;border-radius:16px;min-height:48px;font-weight:600}.count-options button.selected{background:var(--lime);color:#1d1d1b;border-color:#a9c64d}.learning-rule{color:var(--muted);margin:14px 3px 0;font-size:.7rem;line-height:1.5}.theme-options.compact{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.theme-options.compact button{text-align:center;grid-template-columns:1fr;justify-items:center;gap:4px;min-height:96px;padding:10px 5px}.theme-options.compact button>svg{opacity:0;position:absolute}.theme-options.compact .theme-icon{border-radius:14px;width:42px;height:42px}.theme-options.compact small{font-size:.64rem}.settings-form{gap:12px;display:grid}.settings-form label{color:var(--muted);font-size:.72rem}.settings-form input{border:1px solid var(--line);background:color-mix(in srgb,var(--paper) 72%,white);width:100%;min-height:52px;color:var(--ink);border-radius:16px;margin-top:6px;padding:0 14px;font-size:16px;display:block}.settings-form .primary{margin-top:2px}.danger-zone{color:#b62b22}.danger-zone .settings-heading p,.danger-zone label{color:#9f5a54}.delete-button{color:#fff;background:#b62b22;border:0;border-radius:99px;min-height:52px;font-weight:600}.delete-button:disabled{opacity:.4}.friends-page{padding-bottom:max(44px,env(safe-area-inset-bottom))}.friend-add{grid-template-columns:1fr auto;gap:8px;display:grid}.friend-add label{border:1px solid var(--line);background:color-mix(in srgb,var(--paper) 72%,white);border-radius:18px;align-items:center;gap:9px;min-height:54px;padding:0 13px;display:flex}.friend-add label svg{width:19px;color:var(--muted)}.friend-add input{width:100%;min-width:0;color:inherit;background:0 0;border:0;outline:0;font-size:16px}.friend-add>button{background:var(--ink);color:var(--paper);border:0;border-radius:18px;padding:0 16px;font-weight:600}.friend-message{color:var(--muted);margin:10px 3px;font-size:.76rem}.social-section{margin-top:30px}.social-section>h2{margin:0 0 11px;font:1.25rem DM Serif Display,serif}.friend-row{border-bottom:1px solid var(--line);grid-template-columns:48px 1fr auto;align-items:center;gap:11px;min-height:64px;display:grid}.friend-row>strong{font-size:.86rem}.friend-row>span{color:var(--muted);font-size:.7rem}.friend-row>button,.milestone-row>button{background:var(--lime);color:#1d1d1b;border:0;border-radius:99px;min-height:36px;padding:0 13px;font-size:.7rem;font-weight:600}.friend-row>button.subtle{color:var(--muted);border:1px solid var(--line);background:0 0}.social-empty{text-align:center;min-height:160px;color:var(--muted);place-content:center;justify-items:center;display:grid}.social-empty p{max-width:230px;font-size:.78rem;line-height:1.45}.milestone-row{border-bottom:1px solid var(--line);grid-template-columns:42px 1fr auto;align-items:center;gap:10px;padding:14px 0;display:grid}.milestone-row>svg{background:var(--violet);color:#1d1d1b;border-radius:13px;width:36px;height:36px;padding:8px}.milestone-row strong,.milestone-row p,.milestone-row small{margin:0;display:block}.milestone-row p{margin-top:2px;font-size:.76rem}.milestone-row small{color:var(--muted);margin-top:3px;font-size:.65rem}.milestone-popup{z-index:30;right:16px;bottom:calc(96px + env(safe-area-inset-bottom));color:#f4f1e8;background:#252522;border:1px solid #ffffff18;border-radius:28px;width:min(100% - 32px,460px);margin:auto;padding:23px;animation:.5s cubic-bezier(.34,1.56,.64,1) both popup-in;position:fixed;left:16px;box-shadow:0 24px 80px #0008}.popup-close{width:40px;height:40px;color:inherit;background:0 0;border:0;place-items:center;display:grid;position:absolute;top:12px;right:12px}.popup-icon{background:var(--lime);color:#1d1d1b;border-radius:18px;place-items:center;width:58px;height:58px;display:grid}.milestone-popup>p{color:#c9c9c4;margin:18px 0 5px;font-size:.76rem}.milestone-popup h2{margin:0;font:1.6rem DM Serif Display,serif}.milestone-popup .primary{background:var(--lime);color:#1d1d1b}.milestone-popup .text-button{color:#c9c9c4}@keyframes popup-in{0%{opacity:0;transform:translateY(30px)scale(.96)}}.practice-page{width:min(100%,500px);min-height:100dvh;padding:max(22px,env(safe-area-inset-top)) 22px max(28px,env(safe-area-inset-bottom));background:var(--paper)}.session-header div strong,.session-header div span{display:block}.session-header div strong{font-size:.88rem}.session-header div span{color:var(--muted);margin-top:2px;font-size:.7rem}.session-progress{background:var(--line);border-radius:99px;height:4px;margin:18px 2px 30px;overflow:hidden}.session-progress i{background:var(--lime);border-radius:inherit;height:100%;transition:width .35s;display:block}.flashcard{border:1px solid var(--line);background:linear-gradient(145deg,color-mix(in srgb,var(--lime) 86%,white),var(--lime));color:#1d1d1b;text-align:center;cursor:pointer;border-radius:34px;flex-direction:column;justify-content:center;align-items:center;min-height:420px;padding:28px;display:flex;position:relative;box-shadow:0 20px 55px #2221}.flashcard>span{text-transform:uppercase;letter-spacing:.1em;font-size:.66rem;position:absolute;top:28px;left:28px}.flashcard h1{color:#1d1d1b;margin:0;font:3.9rem/.95 DM Serif Display}.flashcard h2{color:#1d1d1b;margin:12px 0 0;font:2rem DM Serif Display;animation:.35s both rise}.flashcard small{color:#4b4d36;margin-top:28px}.card-line{background:#1d1d1b;width:34px;height:1px;margin-top:28px;animation:.3s both rise}@keyframes rise{0%{opacity:0;transform:translateY(9px)}}.recall-actions{grid-template-columns:1fr 1fr;gap:11px;margin-top:15px;display:grid}.recall-actions button{border:1px solid var(--line);background:0 0;border-radius:20px;justify-content:center;align-items:center;gap:7px;min-height:58px;font-weight:600;display:flex}.recall-actions button:last-child{background:var(--ink);color:var(--paper)}.recall-actions button:disabled{opacity:.35}.question-block{text-align:center}.question-block>p{color:var(--muted);margin:55px 0 10px}.question-block>h1{margin:0 0 38px;font:3.5rem/.95 DM Serif Display}.answer-grid{gap:10px;display:grid}.answer-grid button{border:1px solid var(--line);background:color-mix(in srgb,var(--paper) 74%,white);text-align:left;border-radius:19px;justify-content:space-between;align-items:center;min-height:59px;padding:0 18px;transition:transform .18s,background .18s;display:flex}.answer-grid button:not(:disabled):active{transform:scale(.98)}.answer-grid button.correct,.answer-feedback.correct{color:#22320d;background:#dff5aa;border-color:#a5ca58}.answer-grid button.wrong,.answer-feedback.wrong{color:#75231c;background:#ffd0ca;border-color:#ed8d82}.question-block .primary,.complete-page .primary{justify-content:center;align-items:center;gap:8px;display:flex}.input-question label{text-align:left;margin-top:24px;display:block}.input-question label span{color:var(--muted);margin:0 4px 8px;font-size:.75rem;display:block}.input-question input{border:1px solid var(--line);background:color-mix(in srgb,var(--paper) 72%,white);width:100%;min-height:62px;color:inherit;border-radius:19px;padding:0 17px;font-size:16px}.answer-feedback{text-align:left;border:1px solid;border-radius:17px;align-items:center;gap:9px;min-height:54px;margin-top:12px;padding:0 15px;display:flex}.listen-button{background:var(--violet);color:#1d1d1b;border:0;border-radius:30px;align-content:center;place-items:center;gap:12px;width:100%;min-height:190px;display:grid}.listen-button svg{width:52px;height:52px}.listen-button span{font-weight:600}.practice-error{color:#b62b22;text-align:center;margin:12px 3px 0;font-size:.75rem}.complete-page{text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.completion-mark{background:var(--lime);color:#1d1d1b;border-radius:30px;place-items:center;width:94px;height:94px;display:grid;transform:rotate(-5deg)}.completion-mark svg{width:44px;height:44px}.complete-page>p{color:var(--muted);margin:28px 0 8px}.complete-page h1{margin:0;font:3.8rem DM Serif Display}.complete-page>span{color:var(--muted);margin:4px 0 22px}.auth-page{max-width:500px;min-height:100dvh;padding:max(22px,env(safe-area-inset-top)) 22px max(24px,env(safe-area-inset-bottom));background:var(--lime);flex-direction:column;margin:auto;display:flex}.brand{align-items:center;gap:10px;font-weight:600;display:flex}.brand-mark{background:var(--ink);width:34px;height:34px;color:var(--lime);border-radius:10px;place-items:center;font-family:DM Serif Display;display:grid}.auth-copy{margin:auto 0 30px}.eyebrow{text-transform:uppercase;letter-spacing:.1em;font-size:.7rem}.auth-copy h1{letter-spacing:-.04em;margin:8px 0 15px;font:3.6rem/.87 DM Serif Display}.auth-copy em{color:var(--ink)}.auth-copy>p:last-child{max-width:330px;line-height:1.45}.auth-card{background:var(--paper);border-radius:28px;padding:22px}.auth-card h2{margin:0 0 18px;font:1.5rem DM Serif Display}.auth-card label{margin-top:11px;font-size:.72rem;display:block}.auth-card input{border:0;border-bottom:1px solid var(--line);background:0 0;border-radius:0;width:100%;min-height:48px;font-size:16px;display:block}.primary{background:var(--ink);color:#fff;border:0;border-radius:99px;width:100%;min-height:52px;margin-top:20px}.primary:disabled{opacity:.65}.text-button{background:0 0;border:0;width:100%;padding:15px 0 2px;font-size:.78rem}.form-error{color:#b62b22;font-size:.78rem}@media (width>=800px){body{padding:24px}.app-shell,.auth-page{border-radius:42px;min-height:calc(100dvh - 48px);overflow:hidden}.bottom-nav{bottom:36px}}:root[data-theme=dark]{color:#f0eee8;--paper:#171715;--ink:#f0eee8;--muted:#aaa89e;--line:#393832;background:#10100f}:root[data-theme=dark] body{background:#10100f}:root[data-theme=dark] .app-shell,:root[data-theme=dark] .center,:root[data-theme=dark] .practice-page{background:var(--paper)}:root[data-theme=dark] .goal-card{color:#fff;background:#2a2a25}:root[data-theme=dark] .streak-card,:root[data-theme=dark] .mode-card,:root[data-theme=dark] .search,:root[data-theme=dark] .word-list article,:root[data-theme=dark] .theme-options button,:root[data-theme=dark] .language-options button,:root[data-theme=dark] .settings-form input,:root[data-theme=dark] .answer-grid button,:root[data-theme=dark] .input-question input,:root[data-theme=dark] .round-button{background:#22221f}:root[data-theme=dark] .lesson-art,:root[data-theme=dark] .avatar,:root[data-theme=dark] .large-avatar,:root[data-theme=dark] .brand-mark,:root[data-theme=dark] .primary{background:#050505}:root[data-theme=dark] .auth-page{color:#1d1d1b}:root[data-theme=dark] .auth-card{color:#f0eee8}:root[data-theme=dark] .week-row i{background:#373730}:root[data-theme=dark] .theme-options button.selected,:root[data-theme=dark] .language-options button.selected{background:var(--lime);color:#1d1d1b}:root[data-theme=dark] .answer-grid button.correct,:root[data-theme=dark] .answer-feedback.correct,:root[data-theme=dark] .settings-message.success{color:#22320d;background:#dff5aa}:root[data-theme=dark] .answer-grid button.wrong,:root[data-theme=dark] .answer-feedback.wrong,:root[data-theme=dark] .settings-message.error{color:#75231c;background:#ffd0ca}:root[data-theme=dark] .direction-selects select,:root[data-theme=dark] .scope-options button{background:#22221f}:root[data-theme=dark] .scope-options button.selected,:root[data-theme=dark] .count-options button.selected{background:var(--lime);color:#1d1d1b}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
