:root{--blue:#254fe5;--ink:#17253d;--muted:#596981;--line:#d9e1ee;--bg:#f1f4f9}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.5 -apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif}button,input,textarea,select{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer;border:0;color:inherit}button:disabled{cursor:default;opacity:.45}button:focus-visible,a:focus-visible{outline:3px solid #6484ff;outline-offset:3px}#app{max-width:1080px;margin:auto;padding:24px 32px 110px}header,.row{display:flex;align-items:center;justify-content:space-between;gap:12px}header{padding-bottom:22px;border-bottom:1px solid var(--line)}.brand{font-size:34px;font-weight:900;letter-spacing:-2px;text-decoration:none;color:inherit}.brand span{color:var(--blue)}.eyebrow{font-size:12px;font-weight:750;letter-spacing:.12em;color:var(--muted)}.intro{margin:32px 0 24px}h1{font-size:46px;line-height:1.1;letter-spacing:-2px;margin:12px 0}h1 em{font-style:normal;color:var(--blue)}.card{background:white;border:1px solid var(--line);border-radius:24px;padding:28px;box-shadow:0 12px 35px #243a6809}.pill{display:inline-block;padding:6px 12px;background:#e9efff;border-radius:30px;color:var(--blue);font-size:14px;font-weight:700}h2{font-size:29px;line-height:1.3;margin:16px 0 24px}label{display:block;font-size:14px;margin-bottom:8px}textarea{width:100%;min-height:110px;border:1px solid #b6c3db;border-radius:14px;padding:16px;resize:vertical;background:#fafbff;color:var(--ink)}.primary{background:var(--blue);color:white;border-radius:14px;padding:16px 24px;font-weight:700;width:100%;margin-top:16px;min-height:54px}@media(max-width:600px){#app{padding:16px 18px 100px}h1{font-size:34px}.intro{margin-top:22px}.card{padding:20px;border-radius:20px}h2{font-size:26px}}
main{padding-bottom:20px}.intro{display:flex;align-items:end;justify-content:space-between;gap:20px}.intro h1{font-size:38px;max-width:590px}.intro p,.muted{color:var(--muted)}.intro p{font-size:14px;min-width:180px;margin-bottom:4px}.header-note{font-size:12px;letter-spacing:.1em;font-weight:700;color:var(--muted)}.daily{background:white;padding:8px 14px;border:1px solid var(--line);border-radius:30px;font-size:14px}.workspace{display:grid;grid-template-columns:minmax(0,660px) 280px;gap:28px}.settings{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:18px}.settings label{font-size:12px;color:var(--muted);margin:0}.settings select{margin-top:5px;display:block;max-width:100%;width:100%;padding:11px 30px 11px 12px;border:1px solid var(--line);background:white;color:var(--ink);border-radius:12px;min-height:46px;font-size:14px}.meta{color:var(--muted);font-size:14px}.meter{height:5px;border-radius:10px;background:#e8edf5;overflow:hidden;margin:18px 0 26px}.meter i{display:block;height:100%;background:var(--blue);border-radius:10px;transition:width .2s}.trainer h2{min-height:66px}.mode-row{margin-top:28px;margin-bottom:12px}.mode-row label{margin:0}.segmented{padding:3px;background:#edf1f8;border-radius:10px;display:flex;gap:3px}.segmented button{background:transparent;border-radius:8px;font-size:14px;padding:8px 10px;min-height:38px}.segmented button[aria-pressed=true]{background:white;box-shadow:0 2px 4px #17253d12;color:var(--blue)}.answer-zone{min-height:100px;border:1px solid #b6c3db;border-radius:14px;padding:14px;display:flex;flex-wrap:wrap;align-content:start;gap:7px;background:#fafbff}.placeholder{font-size:14px;color:#687992;margin-top:15px}.word{padding:10px 14px;border:1px solid #cad5e8;border-bottom:3px solid #cad5e8;background:white;border-radius:10px;min-height:46px}.word-bank{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0;min-height:50px}.word.selected{background:#eaf0ff;color:#2048ca;border-color:#c4d2fa}.word-bank .word:disabled{opacity:.2}.primary{display:flex;justify-content:space-between;align-items:center}.secondary-actions{margin-top:12px}.text-button{background:none;color:#4c6090;min-height:44px;padding:8px 4px;font-size:14px;font-weight:600}.full{width:100%}.blue-card{margin-top:76px;padding:26px;background:#254fe5;border-radius:22px;color:white}.blue-card .eyebrow{color:#ccd7ff}.blue-card b{font-size:74px;font-weight:600;line-height:1.2;display:block;margin:24px 0}.blue-card b span{display:block;font-size:20px;font-weight:500;letter-spacing:-.4px}.blue-card p{color:#e2e8ff;font-size:14px}.blue-card .row{border-top:1px solid #ffffff40;padding-top:18px;margin-top:24px;font-size:14px}.review-card{display:flex;width:100%;align-items:center;gap:14px;text-align:left;background:white;padding:20px 16px;border:1px solid var(--line);border-radius:18px;margin-top:18px}.review-card>span:first-child{color:var(--blue);font-size:28px}.review-card p{margin:3px 0 0;color:var(--muted);font-size:13px}.aside-note{font-size:13px;color:var(--muted);padding:0 14px}.nav{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);display:flex;gap:8px;padding:7px;background:#17253d;border-radius:18px;box-shadow:0 8px 30px #17253d30;z-index:10}.nav button{min-width:135px;display:flex;align-items:center;justify-content:center;gap:9px;color:#c5d1e5;background:transparent;padding:12px 16px;border-radius:12px;font-size:14px}.nav button.active{color:white;background:#344563}.nav span{font-size:22px}.feedback{margin-top:18px;padding:18px;border-radius:14px;outline:none}.feedback.correct{background:#e6f5ef;color:#16583d}.feedback.compare{background:#fff2d8;color:#77501e}.feedback p{margin:8px 0}.feedback small{font-size:14px;display:block}.feedback .rule{font-size:14px;padding-top:12px;border-top:1px solid #00000015}.hint{font-size:14px;padding:16px;background:#e9efff;border-radius:12px;margin-top:15px}.finished{text-align:center}.finished .primary{justify-content:center}.big-mark{display:inline-grid;place-items:center;background:#e6f5ef;color:#16583d;border-radius:50%;width:75px;height:75px;font-size:38px;margin:20px}.section-title{margin:34px 0}.section-title h1{font-size:38px}.section-title p{color:var(--muted)}.blue{color:var(--blue)}.topic-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.topic h2{font-size:23px;margin:20px 0 4px}.topic p{font-size:14px}.topic .primary{font-size:14px;padding:13px 16px;min-height:46px}details{margin-top:18px}summary{font-size:14px;cursor:pointer;color:#4c6090;min-height:40px;padding-top:8px}.photos{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:10px}.photos img{width:100%;height:170px;object-fit:cover;border-radius:8px}.photos a{font-size:12px;color:#4c6090;text-decoration:none}.verb-list{margin-top:24px}.verbs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.verbs button{display:block;text-align:left;padding:12px;background:#f1f4f9;border-radius:10px}.verbs strong{font-size:14px}.verbs span{display:block;font-size:13px;color:var(--muted)}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:20px}.stats b{font-size:42px;color:var(--blue);display:block}.stats span{font-size:14px;color:var(--muted)}.week{display:flex;justify-content:space-between;gap:10px}.week>div{text-align:center;flex:1}.week span{font-size:14px;color:var(--muted)}.week b{display:grid;place-items:center;min-height:52px;background:#f1f4f9;border-radius:14px;margin-top:8px}.week b.done{background:#254fe5;color:white}.progress-topics{margin-top:20px}.topic-progress .meter{margin:10px 0 24px}.footnote{color:var(--muted);font-size:14px;max-width:740px;margin:24px 0}.trainer:focus,.trainer h2:focus{outline:none}@media(min-width:1000px){.trainer{min-height:490px}}@media(max-width:800px){.workspace{grid-template-columns:1fr}.workspace aside{display:none}.intro p{display:none}.topic-grid{grid-template-columns:1fr 1fr}.verbs{grid-template-columns:1fr 1fr}}@media(max-width:600px){header{padding-bottom:16px}.brand{font-size:30px}.header-note{display:none}.intro{margin:22px 0}.intro h1{font-size:31px;max-width:330px}.intro .eyebrow{font-size:11px}.settings{gap:8px}.settings select{font-size:13px;padding-left:8px}.trainer .eyebrow{margin-top:22px}.trainer h2{margin-bottom:18px;min-height:60px}.mode-row{margin-top:16px}.mode-row label{font-size:13px}.segmented button{font-size:13px}.word{padding:10px 12px}.nav{bottom:0;width:100%;border-radius:18px 18px 0 0;padding:7px 12px calc(7px + env(safe-area-inset-bottom));gap:4px}.nav button{min-width:0;flex:1;padding:8px 4px;flex-direction:column;gap:0;font-size:12px}.nav span{line-height:1.2}.topic-grid{grid-template-columns:1fr}.section-title h1{font-size:32px}.stats{gap:8px}.stats .card{padding:13px}.stats b{font-size:30px}.stats span{font-size:12px}.week{gap:5px}.week b{min-height:42px}.week span{font-size:12px}.verbs{grid-template-columns:1fr}.primary{min-height:52px}.feedback{padding:14px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
.flash-layout{display:grid;grid-template-columns:minmax(0,640px) 300px;gap:28px}.flash-count{margin:18px 0 12px}.flash-face{display:flex;flex-direction:column;justify-content:space-between;align-items:center;width:100%;min-height:340px;text-align:center;padding:30px;background:white;border:1px solid #cbd6eb;border-bottom:5px solid #cbd6eb;border-radius:24px;box-shadow:0 12px 35px #243a6809}.flash-main{font-size:36px;line-height:1.3;font-weight:700;letter-spacing:-.7px;margin:30px 0;overflow-wrap:anywhere}.flash-turn{font-size:14px;color:var(--muted);margin-top:24px}.flash-back{background:#254fe5;border-color:#1539b4;color:white}.flash-back .eyebrow,.flash-back .flash-turn{color:#dce5ff}.flash-pron{font-size:24px;line-height:1.7;letter-spacing:.02em;color:#fff3b9}.flash-back .flash-main{margin-bottom:10px}.flash-translation{font-size:16px;color:#e2e9ff;margin-top:16px}.flash-ratings{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}.flash-ratings button{padding:16px 10px;min-height:54px;border-radius:14px;background:#e1e8f6;font-weight:650}.flash-ratings #flash-known{background:#176348;color:white}.flash-tip{text-align:center;color:var(--muted);font-size:14px}.flash-guide{align-self:start;margin-top:0}.flash-guide h2{margin-bottom:6px}.flash-guide h3{font-size:17px;margin-top:26px}.flash-guide p{font-size:14px;color:var(--muted)}.flash-revealed>.text-button{display:block;margin:12px auto 0}.nav button{min-width:118px}@media(max-width:800px){.flash-layout{grid-template-columns:1fr}.flash-guide{margin-top:8px}.flash-guide h2{font-size:24px}}@media(max-width:600px){.nav button{min-width:0}.flash-face{padding:24px 18px;min-height:300px}.flash-main{font-size:30px}.flash-pron{font-size:22px}.flash-ratings{gap:8px}.flash-ratings button{font-size:14px}}
body{background:radial-gradient(circle at 8% 12%,#dbe5ff 0,transparent 25%),radial-gradient(circle at 91% 7%,#d9f5ec 0,transparent 22%),var(--bg)}main{animation:page-in .36s cubic-bezier(.22,.8,.3,1)}@keyframes page-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.flash-scene{perspective:1400px}.flash-face{border:0;padding:0;background:transparent;box-shadow:none;min-height:350px;display:block;transform:none}.flash-card-inner{display:block;position:relative;width:100%;height:350px;transform-style:preserve-3d;transition:transform .68s cubic-bezier(.2,.72,.2,1)}.flash-face.is-back .flash-card-inner{transform:rotateY(180deg)}.flash-side{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:30px;background:rgba(255,255,255,.94);border:1px solid #cbd6eb;border-bottom:5px solid #cbd6eb;border-radius:26px;box-shadow:0 18px 45px #1b376a14;backface-visibility:hidden;-webkit-backface-visibility:hidden}.flash-side.flash-back{transform:rotateY(180deg);background:linear-gradient(145deg,#315bea,#183ec9);border-color:#1539b4;color:white}.voice-practice{min-height:110px;text-align:center;padding:16px}.mic-button{background:#17253d;color:white;border-radius:50px;padding:14px 22px;font-weight:700;min-height:52px}.mic-button span{display:inline-grid;place-items:center;width:24px;height:24px;background:#ffdedb;color:#e24c43;border-radius:50%;margin-right:8px}.mic-button.listening{background:#e24c43;animation:mic-pulse 1.2s infinite}.mic-button.listening span{background:white;color:#e24c43}@keyframes mic-pulse{50%{box-shadow:0 0 0 10px #e24c4320}}.voice-result,.voice-error{font-size:14px}.voice-result{color:var(--muted)}.voice-error{color:#a13731}.listen-actions{display:flex;justify-content:center;gap:18px}.audio-settings{margin:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 0}.audio-settings summary{font-weight:700;color:var(--ink)}.audio-settings label{font-size:13px;margin-top:12px}.audio-settings select,.audio-settings input{display:block;width:100%;margin-top:6px}.audio-settings select{padding:10px;border:1px solid var(--line);border-radius:10px;background:white;max-width:100%}.lesson-shell{max-width:760px;margin:20px auto}.lesson-head{text-align:center;margin:18px 0 28px}.lesson-head h1{font-size:40px;margin:20px 0 8px}.lesson-head p{color:var(--muted)}.lesson-steps{display:flex;gap:8px;justify-content:center;margin-top:22px}.lesson-steps i{width:42px;height:5px;background:#d6dfef;border-radius:5px}.lesson-steps i.on{background:var(--blue)}.lesson-card{animation:lesson-rise .42s cubic-bezier(.22,.8,.3,1)}@keyframes lesson-rise{from{opacity:0;transform:translateY(18px) scale(.985)}to{opacity:1;transform:none}}.formula{font-size:24px;font-weight:700;background:#eaf0ff;color:#2148cb;padding:24px;border-radius:16px;margin:20px 0;white-space:pre-line}.lesson-examples{display:grid;gap:10px;margin:22px 0}.lesson-examples button{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;text-align:left;gap:14px;padding:16px;border:1px solid var(--line);background:#f8faff;border-radius:14px}.lesson-examples span{color:var(--muted)}.lesson-examples small{color:var(--blue)}.lesson-options{display:grid;gap:10px;margin:22px 0}.lesson-options button{padding:16px;text-align:left;border:1px solid var(--line);background:white;border-radius:14px}.lesson-options button.right{background:#e6f5ef;border-color:#75c1a4}.lesson-options button.wrong{background:#fff0ed;border-color:#e8a29b}.topic-actions{margin-top:16px}.topic-actions .text-button{width:100%}@media(max-width:600px){.flash-card-inner{height:310px}.flash-side{padding:24px 18px}.lesson-head h1{font-size:32px}.formula{font-size:19px}.lesson-examples button{grid-template-columns:1fr;gap:4px}.lesson-examples small{margin-top:4px}}@media(prefers-reduced-motion:reduce){.flash-card-inner{transition:none}.mic-button{animation:none}}
.flash-scene,.flash-face,.flash-card-inner{width:100%;height:350px;min-height:350px}.flash-face{-webkit-appearance:none;appearance:none;overflow:visible}.flash-card-inner{-webkit-transform-style:preserve-3d;transform-style:preserve-3d;will-change:transform}.flash-front{transform:rotateY(0deg) translateZ(1px)}.flash-side.flash-back{transform:rotateY(180deg) translateZ(1px)}.voice-unavailable{padding:14px;background:#edf1f8;color:var(--muted);border-radius:14px;font-size:14px}.voice-unavailable strong{color:var(--ink)}@media(max-width:600px){#app{padding-top:10px}header{min-height:58px}.flash-title{margin:14px 0 16px}.flash-title h1{font-size:27px;line-height:1.05;margin:7px 0}.flash-title p{display:none}.flash-title .eyebrow{font-size:10px}.flash-layout .settings{margin-bottom:10px}.flash-count{margin:10px 0}.flash-scene,.flash-face,.flash-card-inner{height:290px;min-height:290px}.flash-side{padding:20px 16px;border-radius:21px}.flash-main{font-size:28px;margin:20px 0}.flash-pron{font-size:20px}.flash-turn{font-size:13px;margin-top:14px}.voice-practice{padding:12px 4px}.flash-ratings{position:relative}.nav{box-shadow:0 -8px 22px #17253d24}}@media(max-width:350px){.daily{font-size:12px;padding:7px 10px}.flash-title .eyebrow{display:none}.flash-title h1{font-size:24px}.settings select{min-height:42px}.flash-scene,.flash-face,.flash-card-inner{height:260px;min-height:260px}.flash-main{font-size:25px}.nav button{font-size:10px}.nav span{font-size:19px}}
@media(max-width:350px){.practice-intro{display:none}.workspace{margin-top:8px}.workspace .settings{margin-top:8px}.trainer{padding:16px}.trainer .meter{margin:12px 0 16px}.trainer .eyebrow{margin-top:14px}.trainer h2{font-size:23px;min-height:0;margin:10px 0 12px}.trainer .mode-row{margin-top:10px}}
/* Reliable single-layer card for mobile Safari. */
.flash-scene{display:block;width:100%;height:auto;min-height:0;perspective:none}.flash-face,.flash-face.is-back,.flash-face.is-front{position:relative;display:flex;width:100%;min-width:100%;max-width:100%;height:290px;min-height:290px;margin:0;padding:22px 18px;flex-direction:column;align-items:center;justify-content:space-between;overflow:hidden;background:rgba(255,255,255,.96);color:var(--ink);border:1px solid #cbd6eb;border-bottom:5px solid #cbd6eb;border-radius:22px;box-shadow:0 15px 38px #1b376a14;transform:none;-webkit-transform:none;-webkit-transform-style:flat;transform-style:flat;animation:card-flip-safe .42s cubic-bezier(.22,.75,.25,1)}.flash-face.is-back{background:linear-gradient(145deg,#315bea,#183ec9);color:#fff;border-color:#1539b4}.flash-face.is-back .eyebrow,.flash-face.is-back .flash-turn{color:#dce5ff}.flash-face.is-back .flash-main{margin:10px 0 0}.flash-face>*{display:block;width:100%;max-width:100%;position:static;white-space:normal;overflow-wrap:break-word;word-break:normal}.flash-face .flash-main{font-size:30px;line-height:1.2}.flash-face .flash-pron{font-size:22px;line-height:1.35;color:#fff3b9}.flash-face .flash-translation{font-size:16px;color:#e2e9ff}.flash-face .flash-turn{font-size:13px}@keyframes card-flip-safe{0%{opacity:.65;transform:scaleX(.86) scale(.98)}55%{opacity:.9;transform:scaleX(.97) scale(.99)}100%{opacity:1;transform:none}}@media(max-width:350px){.flash-face,.flash-face.is-back,.flash-face.is-front{height:260px;min-height:260px}.flash-face .flash-main{font-size:27px}}@media(prefers-reduced-motion:reduce){.flash-face,.flash-face.is-back,.flash-face.is-front{animation:none}}

.sentence-pron{margin:8px 0 2px;color:#53698e;font-size:16px;line-height:1.45;overflow-wrap:normal;word-break:normal}.feedback .sentence-pron{margin:3px 0 10px;color:inherit;opacity:.82;font-size:14px}.lesson-pron{display:block;margin-top:5px;color:#53698e;font-size:14px;font-style:normal;font-weight:500;line-height:1.4}
.header-actions{display:flex;align-items:center;gap:10px}.sound-toggle{display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--ink);box-shadow:0 4px 14px #243a6810;transition:transform .18s,background .18s,color .18s}.sound-toggle:active{transform:scale(.94)}.sound-toggle[aria-pressed="false"]{background:#e9edf5;color:#69768b}.sound-toggle svg{width:23px;height:23px;overflow:visible}.sound-toggle path{fill:currentColor}.sound-toggle .sound-waves,.sound-toggle .sound-slash{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}@media(max-width:600px){.header-actions{gap:7px}.sound-toggle{width:42px;height:42px}.daily{white-space:nowrap}}
.flash-shelves{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:5px;margin-bottom:14px;background:#e7ecf5;border-radius:16px}.flash-shelves button{display:flex;align-items:center;justify-content:space-between;min-height:48px;padding:10px 14px;border-radius:12px;background:transparent;color:#5d6c83;font-weight:750}.flash-shelves button.active{background:#fff;color:var(--ink);box-shadow:0 4px 14px #21395d12}.flash-shelves b{display:grid;place-items:center;min-width:30px;height:28px;padding:0 8px;border-radius:20px;background:#d8e0ee;color:#43546d;font-size:13px}.flash-shelves button.active b{background:#e8eeff;color:var(--blue)}.flash-quick-actions{display:flex;justify-content:center;margin:14px 0 4px}.quick-known,.quick-restore{min-height:48px;padding:12px 22px;border-radius:999px;font-weight:800}.quick-known{background:#e5f5ed;color:#176348}.quick-restore{background:#edf1f7;color:#475a76}.flash-ratings #flash-mastered{background:#176348;color:#fff}.flash-ratings #flash-restore{background:#fff0df;color:#76501d}.flash-ratings #flash-next{background:var(--blue);color:#fff}@media(max-width:600px){.flash-shelves{margin-bottom:10px}.flash-shelves button{min-height:46px;padding:8px 11px}.flash-quick-actions{margin-top:10px}.quick-known,.quick-restore{width:100%}}

/* Core 2000: fast, server-backed vocabulary triage. */
.vocab-title{margin-bottom:18px}.vocab-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:18px}.vocab-stats button{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:64px;padding:12px 16px;border:1px solid var(--line);border-radius:16px;background:#fff;color:var(--muted);text-align:left}.vocab-stats button.active{background:#17253d;color:#fff;border-color:#17253d;box-shadow:0 10px 24px #17253d20}.vocab-stats b{font-size:25px;letter-spacing:-.5px}.vocab-stats span{font-size:13px}.vocab-layout{display:grid;grid-template-columns:minmax(0,640px) 300px;gap:28px}.vocab-settings{align-items:end}.vocab-save-state{display:flex;align-items:center;gap:8px;min-height:46px;padding:0 12px;color:#567066;font-size:13px}.save-dot{width:8px;height:8px;border-radius:50%;background:#27a66d;box-shadow:0 0 0 5px #27a66d16}.vocab-session-head{display:flex;align-items:center;justify-content:space-between;margin:12px 0}.vocab-scene .vocab-face{height:340px;min-height:340px}.vocab-face .flash-main{font-size:46px}.vocab-face.is-back .flash-main{font-size:30px;margin:14px 0}.vocab-word{font-size:18px;font-weight:750;color:#dfe7ff}.vocab-rank{font-size:12px;letter-spacing:.12em;color:#90a0ba}.vocab-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.vocab-actions.quick{grid-template-columns:1fr 1fr 1.25fr}.vocab-actions button{min-height:54px;padding:12px;border-radius:14px;background:#e8edf5;color:#43546d;font-size:14px;font-weight:800}.vocab-actions [data-vocab-mark="known"]{background:#176348;color:#fff}.vocab-actions [data-vocab-mark="learning"]{background:#fff0df;color:#76501d}.vocab-actions [data-vocab-flip]{background:#e9efff;color:#254fe5}.vocab-guide{align-self:start}.vocab-guide h2{margin-bottom:12px}.vocab-guide ol{padding-left:20px;color:#53637a}.vocab-guide li{margin:14px 0;line-height:1.45}.backup-link{display:block;margin-top:22px;padding:13px 15px;border-radius:12px;background:#e9efff;color:#254fe5;text-align:center;text-decoration:none;font-weight:750}.vocabulary-empty{text-align:center;min-height:340px;display:flex;flex-direction:column;align-items:center;justify-content:center}.vocabulary-empty p{color:var(--muted);max-width:460px}.loader{width:42px;height:42px;border:4px solid #d8e1f2;border-top-color:var(--blue);border-radius:50%;animation:load-spin .8s linear infinite}@keyframes load-spin{to{transform:rotate(360deg)}}.vocab-error{padding:10px 14px;background:#fff0ed;border-radius:12px}.login-shell{min-height:100dvh;display:grid;place-items:center;padding:24px}.login-card{width:min(100%,470px)}.login-card .brand{display:inline-block;margin-bottom:38px}.login-card h1{font-size:36px}.login-card input{display:block;width:100%;min-height:52px;margin-top:7px;padding:12px 14px;border:1px solid #b6c3db;border-radius:12px;background:#fafbff;font-size:18px}
@media(max-width:800px){.vocab-layout{grid-template-columns:1fr}.vocab-guide{display:none}}
@media(max-width:600px){.vocab-title{margin:14px 0 12px}.vocab-title h1{font-size:29px;margin:7px 0}.vocab-title p{display:none}.vocab-title .eyebrow{font-size:10px}.vocab-stats{gap:6px;margin-bottom:10px}.vocab-stats button{min-height:54px;padding:8px 10px;flex-direction:column;align-items:flex-start;justify-content:center;gap:0}.vocab-stats b{font-size:21px}.vocab-stats span{font-size:11px}.vocab-settings{margin-bottom:8px}.vocab-save-state{padding:0 5px;font-size:11px}.vocab-session-head{margin:8px 0}.vocab-scene .vocab-face{height:286px;min-height:286px}.vocab-face .flash-main{font-size:39px}.vocab-face.is-back .flash-main{font-size:27px}.vocab-actions{gap:7px;margin-top:9px}.vocab-actions button{min-height:52px;padding:8px 6px;font-size:13px}.nav{overflow:visible}.nav button{font-size:10px}.nav button span{font-size:19px}.login-shell{padding:15px}.login-card{padding:24px 20px}.login-card h1{font-size:30px}}
