@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:300 800;font-stretch:100%;font-display:swap;src:url(/fonts/bricolage-grotesque-latinext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:300 800;font-stretch:100%;font-display:swap;src:url(/fonts/bricolage-grotesque-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Caveat;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/caveat-latinext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Caveat;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/caveat-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--paper: #f4f1ea;--paper-dark: #e3ddcd;--stamp: #d1462f;--sun: #f4b942;--ink: #2b3a42;--bg: #f4f1ea;--surface: #fbf9f4;--surface-2: #efeadd;--surface-3: #e3ddcd;--hairline: rgba(43, 58, 66, .12);--flag-edge: rgba(43, 58, 66, .22);--hairline-strong: rgba(43, 58, 66, .2);--text: #2b3a42;--text-2: #4b5e68;--text-3: #6b7d87;--sage: #c7756a;--accent: #d1462f;--accent-btn: #d1462f;--accent-ink: #fbf9f4;--lip-accent: #a5331d;--lip-soft: #ddd6c6;--on-scrim: #fbf9f4;--accent-dim: rgba(209, 70, 47, .12);--accent-soft: #f0c7bd;--accent-tint: #dd7a67;--amber: #cf9520;--c-chunk: #d1462f;--c-word: #3f7d97;--c-grammar: #9a6a3f;--c-function: #b8770e;--c-colloc: #a07d10;--ok: #4e8a4f;--warn: #b8770e;--yellow: #b8920e;--bad: #b3321f;--rooted: #4e8a4f;--shadow: 0 2px 4px rgba(43, 58, 66, .05), 0 8px 24px rgba(43, 58, 66, .06);--shadow-stamp: 0 8px 20px rgba(209, 70, 47, .28);--font-display: "Bricolage Grotesque", ui-sans-serif, system-ui, sans-serif;--font-body: "Bricolage Grotesque", ui-sans-serif, system-ui, sans-serif;--font-hand: "Caveat", ui-rounded, cursive;--font: var(--font-body);--tracking: -.01em;--scrim: rgba(31, 27, 20, .42);--scrim-strong: rgba(31, 27, 20, .5);--graph-bg: #23303a;--map-glow: #efeadd;--bg-glow-a: #efe6d3;--bg-glow-b: #f0ded8;--bad-text: #a83227;--space-0-5: 2px;--space-1: 4px;--space-1-5: 6px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--radius-action: 18px;--radius-pill: 999px;--text-cap: 12px;--text-body: 14px;--text-body-lg: 15px;--text-title: 18px;--text-title-lg: 20px;--text-display: 24px;--text-sm: 13px;--text-xs: 11px;--dur-instant: 0ms;--dur-fast: .12s;--dur-base: .16s;--dur-slow: .24s;--ease-standard: cubic-bezier(.2, 0, 0, 1)}:root[data-theme=dark]{--bg: #202b32;--surface: #2b3a42;--surface-2: #33454e;--surface-3: #3d515b;--hairline: rgba(244, 241, 234, .09);--hairline-strong: rgba(244, 241, 234, .16);--flag-edge: rgba(244, 241, 234, .22);--text: #f2ede2;--text-2: #c3d0d6;--text-3: #94a6ad;--sage: #e0897a;--accent: #e35d45;--accent-btn: #d1462f;--accent-ink: #f4f1ea;--lip-accent: #8f2c19;--lip-soft: #1a232a;--on-scrim: #f4f1ea;--accent-dim: rgba(227, 93, 69, .16);--accent-soft: #6b3529;--accent-tint: #ec8873;--amber: #f4b942;--c-chunk: #e35d45;--c-word: #7bb3ca;--c-grammar: #c9a06a;--c-function: #f4b942;--c-colloc: #d9c06a;--ok: #6db56b;--warn: #e6ab4d;--yellow: #e0c05a;--bad: #e0715f;--rooted: #6db56b;--scrim: rgba(12, 16, 19, .55);--scrim-strong: rgba(12, 16, 19, .66);--graph-bg: #1a242b;--map-glow: #2b3a42;--bg-glow-a: #24313a;--bg-glow-b: #2a2f39;--bad-text: #edaa9e}*{box-sizing:border-box}html,body,#root{min-height:100%}html{background:var(--bg);background-image:radial-gradient(1200px 700px at 20% -10%,var(--bg-glow-a),transparent 60%),radial-gradient(1000px 600px at 90% 110%,var(--bg-glow-b),transparent 55%);background-attachment:fixed,fixed;background-repeat:no-repeat;color-scheme:light}html[data-theme=dark]{color-scheme:dark}body{margin:0;background:transparent;color:var(--text);font-family:var(--font-body);font-size:var(--text-body);letter-spacing:var(--tracking);-webkit-font-smoothing:antialiased}html,body,.card,.topbar,.note-input,.chip,.ghost-btn{transition:background-color var(--dur-slow) var(--ease-standard),border-color var(--dur-slow) var(--ease-standard),color var(--dur-slow) var(--ease-standard)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-sm)}@media(prefers-reduced-motion:reduce){html,body,.card,.topbar,.note-input,.chip,.ghost-btn{transition:none}}.u-metric-num{font-variant-numeric:tabular-nums}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}button{font-family:var(--font-body);font-size:var(--text-body);letter-spacing:var(--tracking);color:inherit;border:none;background:none;cursor:pointer;padding:0}input{font-family:var(--font-body);color:var(--text)}a{color:inherit}.shell{min-height:100%;display:flex;flex-direction:column;align-items:center;padding:var(--space-6) var(--space-5) var(--space-10)}.topbar{position:sticky;top:0;z-index:20;width:100%;max-width:960px;display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-3) 0;margin-bottom:var(--space-8)}.topbar:before{content:"";position:absolute;top:calc(var(--space-6) * -1);bottom:0;left:50%;width:100vw;transform:translate(-50%);background:transparent;border-bottom:1px solid transparent;transition:background var(--dur-base) var(--ease-standard),border-color var(--dur-base) var(--ease-standard),box-shadow var(--dur-base) var(--ease-standard);z-index:-1}.topbar.is-stuck:before{background:color-mix(in srgb,var(--bg) 80%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom-color:var(--hairline);box-shadow:0 4px 16px #2b3a420f}@media(max-width:640px){.shell{padding-left:var(--space-4);padding-right:var(--space-4)}.topbar{flex-wrap:wrap;row-gap:var(--space-3);margin-bottom:var(--space-6)}.topnav{order:3;width:100%;justify-content:center}.home-hero{font-size:24px}.cloze-card{padding:var(--space-5)}.cloze-line,.cloze-blank{font-size:var(--text-title-lg)}}.brand{display:inline-flex;align-items:center;gap:var(--space-2);font-family:var(--font-display);font-size:var(--text-title-lg);font-weight:800;letter-spacing:-.02em;color:var(--text);text-decoration:none}.brand-mark{width:26px;height:26px;flex-shrink:0;display:block}.brand-mark svg{width:100%;height:100%;display:block}.topbar-actions{display:flex;gap:var(--space-3);align-items:center}.ghost-btn{color:var(--text-2);font-size:var(--text-sm);white-space:nowrap;padding:var(--space-1-5) var(--space-3);border-radius:var(--radius-pill);border:1px solid var(--hairline);transition:background var(--dur-fast) var(--ease-standard)}.ghost-btn:hover{background:var(--surface-2)}.main-col{width:100%;max-width:960px;flex:1}.center-col{width:100%;max-width:620px;margin:0 auto}.card{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow)}.primary-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);background:var(--accent-btn);color:var(--accent-ink);font-weight:700;font-size:var(--text-body-lg);letter-spacing:-.01em;padding:var(--space-3) var(--space-6);border-radius:var(--radius-lg);box-shadow:0 5px 0 var(--lip-accent);transition:transform 90ms var(--ease-standard),filter var(--dur-fast) var(--ease-standard),box-shadow 90ms var(--ease-standard)}.primary-btn:active{transform:translateY(4px);box-shadow:0 1px 0 var(--lip-accent)}.primary-btn:hover{filter:brightness(1.04);transform:translateY(-1px)}.primary-btn:active{transform:translateY(1px);box-shadow:0 3px 10px #d1462f3d}.primary-btn:disabled{opacity:.5;cursor:default;box-shadow:none;transform:none;filter:none}.ghost-btn{color:var(--text-3);background:transparent;border:1px solid var(--hairline-strong);font-weight:600;font-size:var(--text-body);padding:var(--space-3) var(--space-5);border-radius:var(--radius-pill);transition:color var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard)}.ghost-btn:hover{color:var(--text-2);border-color:var(--text-3)}.ghost-btn:disabled{opacity:.5;cursor:default}.ghost-btn--sm{padding:var(--space-2) var(--space-4);font-size:var(--text-sm);font-weight:560}.checkbox{position:relative;display:inline-flex;flex-shrink:0}.checkbox input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.checkbox input:disabled{cursor:default}.checkbox-box{width:18px;height:18px;display:grid;place-items:center;border:1.5px solid var(--hairline-strong);border-radius:6px;background:var(--surface-2);color:var(--accent-ink);transition:background var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard)}.checkbox-box svg{opacity:0;transform:scale(.5);transition:opacity var(--dur-fast) var(--ease-standard),transform var(--dur-fast) var(--ease-spring, var(--ease-standard))}.checkbox:hover .checkbox-box{border-color:var(--text-3)}.checkbox.is-checked .checkbox-box{background:var(--accent-btn);border-color:var(--accent-btn)}.checkbox.is-checked .checkbox-box svg{opacity:1;transform:scale(1)}.checkbox.is-disabled{opacity:.5}.checkbox input:focus-visible+.checkbox-box{outline:2px solid var(--accent);outline-offset:2px}@media(prefers-reduced-motion:reduce){.checkbox-box svg{transition:opacity var(--dur-fast) var(--ease-standard);transform:none}}.cta-btn{font-size:var(--text-title);padding:var(--space-4) var(--space-8);gap:var(--space-3)}@media(prefers-reduced-motion:reduce){.primary-btn:hover,.primary-btn:active{transform:none}}.field{display:flex;flex-direction:column;gap:var(--space-1-5);margin-bottom:var(--space-4)}.field label{font-size:var(--text-cap);font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3)}.field input{background:var(--surface-2);border:1px solid var(--hairline);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);font-size:var(--text-body-lg);outline:none;transition:border-color var(--dur-fast) var(--ease-standard)}.field input:focus{border-color:var(--accent)}.form-error{color:var(--bad-text);font-size:var(--text-sm);margin:var(--space-2) 0 0}.auth-wrap{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%}.auth-card{width:100%;max-width:380px;text-align:center}.auth-logo{display:flex;justify-content:center;margin-bottom:var(--space-3)}.auth-brand{font-family:var(--font-display);font-size:38px;font-weight:800;letter-spacing:-.03em;text-align:center;margin:0 0 var(--space-1)}.auth-sub{text-align:center;color:var(--text-2);margin:0 0 var(--space-8);font-size:var(--text-body-lg);text-wrap:balance}.auth-sub .hand{font-size:1.5em;line-height:.8}.auth-card form{text-align:left}.auth-switch{text-align:center;color:var(--text-2);font-size:var(--text-sm);margin-top:var(--space-4)}.auth-switch button{color:var(--accent);font-weight:600}.home{width:100%;max-width:620px;margin:0 auto;display:flex;flex-direction:column;gap:var(--space-6)}.home-hero{display:flex;flex-direction:column}.home-hero .display-xl{margin:var(--space-1) 0 var(--space-4)}.center-col>.home-hero{margin-bottom:var(--space-6)}.home-sub{color:var(--text-2);margin:0;max-width:54ch;font-size:var(--text-body-lg);line-height:1.55}.practice-card{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius-xl);box-shadow:var(--shadow);padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-6)}.stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4)}.stat{display:flex;flex-direction:column;gap:var(--space-1-5)}.stat-num{font-family:var(--font-display);font-size:34px;font-weight:800;line-height:1;letter-spacing:-.02em}.stat:first-child .stat-num{color:var(--accent)}.stat-label{color:var(--text-2);font-size:var(--text-sm);line-height:1.3}.note-day{position:sticky;top:0;z-index:1;margin:var(--space-6) 0 var(--space-3);padding:var(--space-2) 0;background:var(--bg);font-family:var(--font-display);font-size:var(--text-sm);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}.note-cells>.note-day:first-child{margin-top:var(--space-2)}.note-field{display:flex;flex-direction:column;gap:var(--space-1-5);margin-bottom:var(--space-3)}.note-field-label{font-size:var(--text-sm);color:var(--text-3)}.note-field .note-input{width:100%;box-sizing:border-box}.note-search{display:block;width:100%;box-sizing:border-box;margin-top:var(--space-5)}.note-more{width:100%;margin-top:var(--space-5)}.words-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin:var(--space-4) 0 var(--space-2);color:var(--text-3);font-size:var(--text-sm)}.words-toggle{display:inline-flex;align-items:center;gap:var(--space-2);cursor:pointer}.words-sweep{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap;background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-4);color:var(--text-2);font-size:var(--text-sm)}.words-list{display:flex;flex-direction:column}.word-row{display:flex;align-items:baseline;gap:var(--space-4);padding:var(--space-3) 0;border-bottom:1px solid var(--hairline)}.word-row.is-retired{opacity:.5}.word-main{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.word-lemma{font-family:var(--font-display);font-size:var(--text-body-lg);font-weight:700}.word-meaning{color:var(--text-3);font-size:var(--text-sm);text-align:left}.word-meaning.is-editable{border-bottom:1px dashed transparent}.word-meaning.is-editable:hover{color:var(--text-2);border-bottom-color:var(--hairline-strong)}.word-edit{width:100%;font-family:var(--font-body);font-size:var(--text-sm);color:var(--text);background:var(--surface-2);border:1px solid var(--accent);border-radius:var(--radius-sm);padding:2px var(--space-2);outline:none}.word-state{font-size:var(--text-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);white-space:nowrap}.word-state.is-due{color:var(--accent)}.word-state.is-learned{color:var(--ok)}.word-warn{font-size:var(--text-xs);font-weight:700;color:var(--warn);white-space:nowrap}.word-action{white-space:nowrap}.session-learned{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--accent);background:var(--accent-dim);border-radius:var(--radius-pill);padding:var(--space-2) var(--space-4);margin:0 0 var(--space-4);font-size:var(--text-sm)}.session-words{list-style:none;margin:0 0 var(--space-5);padding:0;width:100%;text-align:left}.session-words li{display:flex;justify-content:space-between;gap:var(--space-4);padding:var(--space-2) 0;border-bottom:1px solid var(--hairline);font-size:var(--text-sm)}.session-words li.is-missed .session-word{color:var(--text-3)}.session-word{font-weight:700}.session-when{color:var(--text-3);white-space:nowrap}.today-line{margin:var(--space-4) 0 0;padding-top:var(--space-4);border-top:1px solid var(--hairline);color:var(--text-2);font-size:var(--text-body)}.practice-start{width:100%}.anki-status{display:flex;align-items:center;gap:var(--space-3);background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:var(--space-4) var(--space-5)}.anki-status-text{flex:1;min-width:0}.anki-status-title{font-weight:700;font-size:var(--text-body);margin:0}.anki-status-sub{color:var(--text-3);font-size:var(--text-sm);margin:2px 0 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.anki-dot{width:9px;height:9px;border-radius:var(--radius-pill);background:var(--ok);flex-shrink:0}.anki-dot.is-off{background:var(--text-3)}.anki-synced{display:flex;align-items:center;gap:var(--space-2);color:var(--text-2);font-size:var(--text-sm);margin:0 0 var(--space-3)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:var(--space-5);background:var(--scrim);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal{width:100%;max-width:520px;max-height:86vh;overflow-y:auto;padding:0}.modal-head{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-5) var(--space-6);background:var(--surface);border-bottom:1px solid var(--hairline)}.modal-title{font-family:var(--font-display);font-size:var(--text-title);font-weight:800;margin:0}.modal-close{width:32px;height:32px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-pill);color:var(--text-2);transition:background var(--dur-fast) var(--ease-standard)}.modal-close:hover{background:var(--surface-2)}.modal-body{padding:var(--space-5) var(--space-6) var(--space-6)}.session-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-5);color:var(--text-2);font-size:var(--text-sm)}.cloze-card{padding:var(--space-8)}.cloze-en{color:var(--text-2);font-size:var(--text-body-lg);margin:0 0 var(--space-5)}.cloze-line{font-family:var(--font-display);font-size:var(--text-display);font-weight:560;line-height:1.45;margin:0 0 var(--space-6);overflow-wrap:anywhere}.cloze-blank{display:inline-block;min-width:90px;border:none;border-bottom:2px solid var(--accent);background:transparent;font-family:var(--font-display);font-size:var(--text-display);font-weight:560;color:var(--text);text-align:center;outline:none;padding:0 var(--space-1)}.answer-row{display:flex;gap:var(--space-3);align-items:center}.answer-row .quiet-link{margin-left:auto}.quiet-link{font-size:var(--text-body);color:var(--text-3);padding:var(--space-2) var(--space-1);border-radius:var(--radius-sm);transition:color var(--dur-fast) var(--ease-standard)}.quiet-link:hover{color:var(--text-2);text-decoration:underline;text-underline-offset:3px}.skip-menu{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-1);margin-left:auto;text-align:right}.skip-menu .quiet-link{margin-left:0}.verdict-banner{display:flex;align-items:center;gap:var(--space-3);border-radius:var(--radius-md);padding:var(--space-4) var(--space-5);margin-bottom:var(--space-5);font-weight:700;border:1px solid transparent;animation:verdict-pop var(--dur-base) var(--ease-standard)}.verdict-banner .verdict-ico{width:26px;height:26px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-pill);font-size:15px;font-weight:800;color:var(--surface)}.verdict-correct{background:#4e8a4f21;color:var(--ok);border-color:#4e8a4f47}.verdict-correct .verdict-ico{background:var(--ok)}.verdict-close{background:#b8770e21;color:var(--warn);border-color:#b8770e47}.verdict-close .verdict-ico{background:var(--warn)}.verdict-incorrect{background:#b3321f1a;color:var(--bad-text);border-color:#b3321f42}.verdict-incorrect .verdict-ico{background:var(--bad)}@keyframes verdict-pop{0%{opacity:0;transform:translateY(6px) scale(.98)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.verdict-banner{animation:none}}.result-answer{font-family:var(--font-display);font-size:var(--text-display);font-weight:600;margin:0 0 var(--space-2)}.result-full{margin:0 0 var(--space-1);font-size:var(--text-body-lg)}.result-en{color:var(--text-2);margin:0 0 var(--space-5)}.result-you{display:flex;flex-direction:column;gap:2px;margin:0 0 var(--space-4);font-size:var(--text-body-lg);color:var(--bad-text);text-decoration:line-through;text-decoration-color:var(--hairline-strong)}.result-label{display:block;font-family:var(--font-display);font-size:var(--text-sm);font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:var(--text-3);text-decoration:none}.result-correction{display:flex;flex-direction:column;gap:2px;margin:0 0 var(--space-4);font-size:var(--text-body-lg);color:var(--ok)}.produce-cue{font-family:var(--font-display);font-size:var(--text-sm);font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:var(--text-3);margin:0 0 var(--space-2)}.profile-row{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--hairline)}.profile-label{color:var(--text-3);font-size:var(--text-body)}.profile-value{color:var(--text);font-weight:600;overflow-wrap:anywhere}.profile-block{padding-top:var(--space-5)}.profile-h{font-family:var(--font-display);font-size:var(--text-title);font-weight:700;margin:0 0 var(--space-2)}.profile-note{color:var(--text-2);font-size:var(--text-body);margin:0 0 var(--space-4)}.profile-actions{display:flex;justify-content:flex-end;margin-top:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--hairline)}.lang-list{display:flex;flex-direction:column;gap:var(--space-2)}.lang-option{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);width:100%;text-align:left;padding:var(--space-3) var(--space-4);background:var(--surface-2);border:1.5px solid var(--hairline);border-radius:var(--radius-md);transition:border-color var(--dur-fast) var(--ease-standard),background var(--dur-fast) var(--ease-standard)}.lang-option:hover:not(:disabled){border-color:var(--hairline-strong)}.lang-option.is-active{border-color:var(--accent);background:var(--accent-dim)}.lang-option:disabled{opacity:.6;cursor:default}.lang-option-name{font-family:var(--font-display);font-size:var(--text-title);font-weight:650}.lang-option-tag{font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--accent)}.form-cue{display:inline-flex;align-items:baseline;gap:var(--space-2);flex-wrap:wrap;background:var(--accent-dim);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);margin:0 0 var(--space-5)}.form-cue-lemma{font-family:var(--font-display);font-weight:640;color:var(--text)}.form-cue-cell,.form-cue-label{font-size:var(--text-body);color:var(--text-2)}.inflect-lemma{display:flex;align-items:baseline;gap:var(--space-3);flex-wrap:wrap;margin:0 0 var(--space-5)}.inflect-lemma .note-lemma{font-size:var(--text-display);font-weight:620}.inflect-cue{font-family:var(--font-body);font-size:var(--text-body-lg);color:var(--text-2);margin:0 0 var(--space-5)}.inflect-cue strong{color:var(--text);font-weight:640}.inflect-line{text-align:left}.produce-en{font-family:var(--font-display);font-size:var(--text-title-lg);font-weight:600;line-height:1.35;margin:0 0 var(--space-4)}.produce-input{width:100%;box-sizing:border-box;font-family:var(--font-body);font-size:var(--text-title);line-height:1.5;color:var(--text);background:var(--surface-2);border:1.5px solid var(--hairline-strong);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);resize:none;min-height:3.2em;margin:0 0 var(--space-4);transition:border-color var(--dur-fast) var(--ease-standard)}.produce-input:focus{outline:none;border-color:var(--accent)}.produce-input::placeholder{color:var(--text-3)}.listen-diff{color:var(--warn);font-size:var(--text-body);margin:0 0 var(--space-2)}.speak-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-3);color:var(--text-3);border-radius:var(--radius-pill);padding:var(--space-1);vertical-align:middle;transition:color var(--dur-fast) var(--ease-standard),background var(--dur-fast) var(--ease-standard)}.speak-btn:hover{color:var(--accent);background:var(--accent-dim)}.speak-btn.is-playing{color:var(--accent)}.speak-btn.is-big{font-family:var(--font-display);font-size:var(--text-title);font-weight:700;color:var(--accent-ink);background:var(--accent-btn);padding:var(--space-4) var(--space-6);min-height:3.4rem}.speak-btn.is-big:hover{color:var(--accent-ink);background:var(--accent-tint)}.listen-stage{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-5) 0 var(--space-6)}.listen-hint{color:var(--text-3);font-size:var(--text-sm);margin:0;text-align:center}.result-answer-line .speak-btn{margin-left:var(--space-2)}.speak-line{font-family:var(--font-display);font-size:var(--text-title-lg);font-weight:600;line-height:1.35;margin:var(--space-3) 0 var(--space-2)}.speak-model{display:flex;align-items:center;gap:var(--space-1);margin-bottom:var(--space-2)}.speak-model-label{font-size:var(--text-sm);color:var(--text-3)}.speak-stage{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding-top:var(--space-5)}.speak-btn-record{display:inline-flex;align-items:center;justify-content:center;width:5rem;height:5rem;border-radius:var(--radius-pill);color:var(--accent-ink);background:var(--accent-btn);touch-action:none;transition:background var(--dur-fast) var(--ease-standard)}.speak-btn-record:disabled{opacity:.5}.speak-btn-record.is-recording{background:var(--bad)}.speak-hint{color:var(--text-3);font-size:var(--text-sm);margin:0;text-align:center}.speak-missed{display:flex;flex-direction:column;margin:0 0 var(--space-3);color:var(--warn)}.dict-head-word{display:flex;align-items:center;gap:var(--space-2);min-width:0}.anki-evidence{color:var(--text-3);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin:0 0 var(--space-3)}.new-word-intro{display:flex;align-items:baseline;gap:var(--space-3);flex-wrap:wrap;background:var(--accent-dim);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-5)}.new-word-label{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--accent)}.attribution{color:var(--text-3);font-size:var(--text-xs);margin-top:var(--space-6)}.attribution a{color:var(--text-3)}.topnav{display:flex;gap:var(--space-1)}.topnav-link{color:var(--text-2);font-size:var(--text-body);font-weight:600;padding:var(--space-1-5) var(--space-4);border-radius:var(--radius-pill);transition:background var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard)}.topnav-link:hover{background:var(--surface-2)}.topnav-link.is-active{background:var(--accent-dim);color:var(--accent)}.note-form{display:flex;gap:var(--space-3);margin:var(--space-6) 0 var(--space-2)}.note-input{flex:1;background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);font-size:var(--text-body-lg);outline:none;transition:border-color var(--dur-fast) var(--ease-standard)}.note-input:focus{border-color:var(--accent)}.note-cells{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-4)}.note-cell{padding:var(--space-4) var(--space-5)}.note-cell-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-2)}.note-kind{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);border:1px solid var(--hairline);border-radius:var(--radius-pill);padding:var(--space-0-5) var(--space-2)}.note-kind-vocab{color:var(--c-word)}.note-kind-grammar{color:var(--c-grammar)}.note-kind-source{color:var(--c-function)}.note-confirmed{color:var(--ok);font-size:var(--text-xs);font-weight:600}.note-raw{margin:0;font-size:var(--text-body-lg)}.note-extract{display:flex;align-items:baseline;gap:var(--space-3);margin-top:var(--space-3);flex-wrap:wrap}.note-lemma{font-family:var(--font-display);font-size:var(--text-title);font-weight:620}.note-gloss{color:var(--text-2);font-size:var(--text-body)}.note-senses{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center;margin-top:var(--space-3)}.note-senses-label{color:var(--text-3);font-size:var(--text-sm);width:100%}.note-sense-chip{font-family:var(--font-body);font-size:var(--text-sm);font-weight:500}.note-actions{display:flex;gap:var(--space-2);margin-top:var(--space-3)}.note-empty{color:var(--text-3);margin-top:var(--space-6)}.listen-row{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-5)}.listen-play{font-size:var(--text-body);padding:var(--space-2) var(--space-4)}.voice-label{color:var(--text-3);font-size:var(--text-xs)}.home-anki{margin-top:var(--space-6);max-width:460px}@media(min-width:900px){.home-side .anki-card{margin-top:0}}.anki-title{font-family:var(--font-display);font-size:var(--text-title);font-weight:600;margin:0 0 var(--space-2)}.anki-sub{color:var(--text-2);margin:0 0 var(--space-4)}.deck-picker{margin-top:var(--space-5);border-top:1px solid var(--hairline);padding-top:var(--space-4)}.deck-picker-label{font-size:var(--text-cap);font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);margin:0 0 var(--space-3)}.deck-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-1)}.deck-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-1-5) 0}.deck-label{display:flex;align-items:center;gap:var(--space-3);min-width:0;cursor:pointer}.deck-name{font-size:var(--text-body);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.deck-name.is-off{color:var(--text-3)}.deck-count{color:var(--text-3);font-size:var(--text-xs);flex-shrink:0}.deck-note{color:var(--text-3);font-size:var(--text-xs);margin:var(--space-2) 0 0}.sync-info{margin-top:var(--space-5);border-top:1px solid var(--hairline);padding-top:var(--space-4)}.sync-row{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-2);flex-wrap:wrap}.sync-label{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);min-width:72px}.sync-row .chip{font-family:var(--font-body);font-size:var(--text-sm);font-weight:500}.arrange-line{min-height:56px;display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center;padding:var(--space-3);border:1px dashed var(--hairline-strong);border-radius:var(--radius-md);margin-bottom:var(--space-4)}.arrange-hint{color:var(--text-3);font-size:var(--text-sm)}.arrange-pool{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-6)}.chip{background:var(--surface-2);border:1px solid var(--hairline);border-radius:var(--radius-pill);padding:var(--space-2) var(--space-4);font-family:var(--font-display);font-size:var(--text-body-lg);font-weight:560;transition:background var(--dur-fast) var(--ease-standard)}.chip:hover{background:var(--surface-3)}.chip-chosen{background:var(--accent-dim);border-color:var(--accent-soft)}.session-end{text-align:center;padding:var(--space-10) var(--space-6)}.session-end h2{font-family:var(--font-display);font-size:26px;margin:0 0 var(--space-2)}.session-end p{color:var(--text-2);margin:0 0 var(--space-6)}.footnote{width:100%;max-width:62ch;margin:var(--space-12) auto 0;padding-top:var(--space-5);border-top:1px solid var(--hairline);color:var(--text-3);font-size:var(--text-xs);line-height:1.6;text-align:center;text-wrap:pretty}.screen-hold[hidden]{display:none}.nav-dot{display:inline-block;width:6px;height:6px;margin-left:var(--space-1-5);border-radius:var(--radius-pill);background:var(--accent);vertical-align:middle}.skeleton{background:linear-gradient(90deg,var(--surface-2) 25%,var(--surface-3) 37%,var(--surface-2) 63%);background-size:400% 100%;border-radius:var(--radius-md);animation:skeleton-sweep 1.4s var(--ease-standard) infinite}@keyframes skeleton-sweep{0%{background-position:100% 50%}to{background-position:0 50%}}.skeleton-line{height:14px;margin-bottom:var(--space-3)}.skeleton-line.is-lead{height:26px;width:70%;margin-bottom:var(--space-5)}.skeleton-line.is-short{width:40%}@media(prefers-reduced-motion:reduce){.skeleton{animation:none}}.anki-card{min-height:232px}.session-head-actions{display:flex;align-items:center;gap:var(--space-3)}.link-btn{color:var(--text-3);font-size:var(--text-sm);text-decoration:underline;text-underline-offset:3px}.link-btn:hover{color:var(--text-2)}.note-cell-actions{display:flex;gap:var(--space-2);margin-left:auto}.note-remove{color:var(--text-3);font-size:var(--text-xs);padding:var(--space-0-5) var(--space-2);border-radius:var(--radius-pill);border:1px solid transparent;transition:color var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard)}.note-remove:hover{color:var(--bad-text);border-color:var(--hairline)}.hand{font-family:var(--font-hand);font-weight:600;letter-spacing:0;color:var(--stamp)}.eyebrow{display:inline-block;font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--text-3);margin-bottom:var(--space-2)}.display-xl{font-family:var(--font-display);font-weight:800;font-size:clamp(34px,5vw,52px);line-height:1;letter-spacing:-.03em;margin:0}.display-xl .accent{color:var(--stamp)}.progress{width:100%;height:8px;background:var(--surface-3);border-radius:var(--radius-pill);overflow:hidden}.progress-fill{height:100%;width:100%;transform:scaleX(0);transform-origin:left center;background:var(--accent);border-radius:var(--radius-pill);transition:transform var(--dur-slow) var(--ease-standard)}@media(prefers-reduced-motion:reduce){.progress-fill{transition:none}}.session-progress{display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-6)}.session-progress .progress{flex:1}.session-progress .count{font-family:var(--font-display);font-weight:700;font-size:var(--text-sm);color:var(--text-2);font-variant-numeric:tabular-nums;white-space:nowrap}.q-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-4)}.q-kind{font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--accent)}.q-why{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3)}.cloze-slot{display:inline-block;width:2.6em;height:.08em;margin:0 .18em;vertical-align:baseline;border-bottom:3px solid var(--accent)}.session-end-badge{width:56px;height:56px;margin:0 auto var(--space-4);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-pill);background:var(--ok);color:var(--surface);font-size:28px;font-weight:800;box-shadow:var(--shadow)}.mcq-grid{display:grid;grid-template-columns:1fr;gap:var(--space-3);margin-bottom:var(--space-5)}@media(min-width:520px){.mcq-grid{grid-template-columns:1fr 1fr}}.mcq-option{display:flex;align-items:center;gap:var(--space-3);text-align:left;background:var(--surface);border:1.5px solid var(--hairline);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-5);font-family:var(--font-display);font-size:var(--text-body-lg);font-weight:600;color:var(--text);box-shadow:var(--shadow);transition:transform var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard),background var(--dur-fast) var(--ease-standard)}.mcq-option:hover:not(:disabled){transform:translateY(-2px);border-color:var(--accent-tint)}.mcq-option:active:not(:disabled){transform:translateY(0)}.mcq-option:disabled{cursor:default}.mcq-key{width:24px;height:24px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);background:var(--surface-3);color:var(--text-2);font-size:var(--text-xs);font-weight:800}.mcq-option.is-correct{border-color:var(--ok);background:#4e8a4f1f;color:var(--ok)}.mcq-option.is-correct .mcq-key{background:var(--ok);color:var(--surface)}.mcq-option.is-wrong{border-color:var(--bad);background:#b3321f17;color:var(--bad-text)}.mcq-option.is-wrong .mcq-key{background:var(--bad);color:var(--surface)}.mcq-option.is-selected{border-color:var(--accent)}@media(prefers-reduced-motion:reduce){.mcq-option:hover:not(:disabled),.mcq-option:active:not(:disabled){transform:none}}.session-end-mascot{display:flex;justify-content:center;margin:calc(var(--space-4) * -1) 0 var(--space-2)}.home-hero.has-mascot{flex-direction:row;align-items:center;gap:var(--space-6)}.home-hero-text{flex:1;min-width:0}.home-mascot{flex:0 0 auto;display:flex;align-items:flex-end}@media(max-width:640px){.home-hero.has-mascot{flex-direction:column;align-items:stretch}.home-mascot{display:none}}.practice-card{border-bottom:3px solid var(--hairline)}.dict-input{margin-bottom:var(--space-5)}.dict-results{display:flex;flex-direction:column;gap:var(--space-1)}.dict-group{font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);margin:var(--space-4) 0 var(--space-2)}.dict-hit{text-align:left;width:100%;font-family:var(--font-display);font-size:var(--text-title);font-weight:600;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);transition:background var(--dur-fast) var(--ease-standard)}.dict-hit:hover:not(:disabled){background:var(--surface-2)}.dict-entry{padding:var(--space-6)}.dict-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-4)}.dict-lemma{font-family:var(--font-display);font-size:var(--text-display);font-weight:800;letter-spacing:-.02em;margin:0}.dict-part{margin-top:var(--space-5)}.dict-pos{font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--accent);margin:0 0 var(--space-2)}.dict-senses{margin:0;padding-left:var(--space-5);color:var(--text)}.dict-senses li{margin-bottom:var(--space-1);line-height:1.5}.dict-forms{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:var(--space-2);margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--hairline)}.dict-form{display:flex;flex-direction:column;gap:2px}.dict-form-label{font-size:var(--text-xs);color:var(--text-3)}.dict-form-value{font-family:var(--font-display);font-weight:650;color:var(--text)}.dict-actions{margin-top:var(--space-6)}.dict-added{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--ok);font-weight:700}.prompt-bar{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap;background:var(--surface-2);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-4)}.prompt-text{margin:0;flex:1;min-width:200px;font-size:var(--text-body-lg);color:var(--text)}.prompt-text.is-empty{color:var(--text-3)}.writing-input{min-height:12em;line-height:1.7}.paper{padding:var(--space-6);background:var(--surface)}.paper-prompt{font-size:var(--text-body);color:var(--text-3);margin:0 0 var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--hairline)}.paper-text{margin:0;font-size:var(--text-title);line-height:2.15;white-space:pre-wrap;overflow-wrap:anywhere}.mark{position:relative;display:inline}.mark-wrong{text-decoration:line-through;text-decoration-color:var(--accent);text-decoration-thickness:2px;color:var(--text-3)}.mark-fix{position:absolute;left:0;bottom:100%;margin-bottom:-2px;white-space:nowrap;font-family:var(--font-hand);font-size:1.15em;line-height:1;color:var(--accent);pointer-events:none}.mark-style .mark-wrong{text-decoration:underline wavy var(--warn);text-decoration-thickness:1.5px;color:var(--text)}.mark-style .mark-fix{color:var(--warn)}.mark-note{position:absolute;left:0;top:100%;z-index:5;display:none;white-space:normal;width:max-content;max-width:260px;background:var(--ink, #2b3a42);color:var(--surface);font-family:var(--font-body);font-size:var(--text-body);line-height:1.4;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);box-shadow:var(--shadow)}.mark:hover .mark-note,.mark:focus .mark-note,.mark:focus-within .mark-note{display:block}.teacher-note{display:flex;flex-direction:column;gap:var(--space-1-5);border-radius:var(--radius-md);padding:var(--space-4) var(--space-5);margin-top:var(--space-4)}.teacher-note p{margin:0}.teacher-note-label{font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.07em}.teacher-note.is-praise{background:#4e8a4f1f}.teacher-note.is-praise .teacher-note-label{color:var(--ok)}.teacher-note.is-focus{background:var(--accent-dim)}.teacher-note.is-focus .teacher-note-label{color:var(--accent)}.mark-tally{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-5)}.tally-chip{background:var(--surface-2);border-radius:var(--radius-pill);padding:var(--space-1) var(--space-3);font-size:var(--text-body);color:var(--text-2)}.tally-chip b{color:var(--text)}.clean-copy{margin-top:var(--space-5);margin-bottom:var(--space-6)}.clean-copy summary{cursor:pointer;color:var(--text-2);font-size:var(--text-body)}.clean-copy p{margin:var(--space-3) 0 0;padding:var(--space-4);background:var(--surface-2);border-radius:var(--radius-md);font-size:var(--text-title);line-height:1.6}.passage{padding:var(--space-6)}.passage-text{margin:0;font-size:var(--text-title);line-height:1.85}.q-list{display:flex;flex-direction:column;gap:var(--space-4);margin-top:var(--space-5)}.q-item{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius-lg);padding:var(--space-5)}.q-item.is-correct{border-color:var(--ok)}.q-item.is-close{border-color:var(--warn)}.q-item.is-incorrect{border-color:var(--bad)}.q-text{margin:0 0 var(--space-3);font-family:var(--font-display);font-size:var(--text-title);font-weight:640;line-height:1.4}.q-form{display:flex;gap:var(--space-3);align-items:center;flex-wrap:wrap}.q-form .note-input{flex:1;min-width:200px;margin:0}.q-mark{display:flex;flex-direction:column;gap:var(--space-2)}.q-yours{margin:0;color:var(--text-2)}.q-verdict{margin:0;display:inline-flex;align-items:center;gap:var(--space-2);font-weight:700}.q-item.is-correct .q-verdict{color:var(--ok)}.q-item.is-close .q-verdict{color:var(--warn)}.q-item.is-incorrect .q-verdict{color:var(--bad)}.q-why{margin:0;color:var(--text-2)}.q-expected{margin:0;color:var(--text)}.dict-drawer{position:fixed;top:0;right:0;bottom:0;z-index:40;width:min(420px,100vw);display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-5);overflow-y:auto;background:var(--surface);border-left:1px solid var(--hairline);box-shadow:-18px 0 40px #2b3a4224}.dict-drawer-head{display:flex;align-items:center;justify-content:space-between}.dict-drawer-title{font-family:var(--font-display);font-size:var(--text-title-lg);font-weight:800;letter-spacing:-.02em;margin:0}.dict-drawer .dict-entry{padding:var(--space-4);box-shadow:none}.dict-empty{color:var(--text-3);font-size:var(--text-body);margin:var(--space-4) 0 0}@media(max-width:520px){.dict-drawer{width:100vw}}.mode-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-3)}.mode-card{display:flex;flex-direction:column;gap:var(--space-1);text-align:left;background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:0 3px 0 var(--lip-soft);transition:transform 90ms var(--ease-standard),box-shadow 90ms var(--ease-standard)}.mode-card:hover{border-color:var(--hairline-strong)}.mode-card:active{transform:translateY(3px);box-shadow:0 0 0 var(--lip-soft)}.mode-name{font-family:var(--font-display);font-size:var(--text-title);font-weight:700}.mode-sub{color:var(--text-2);font-size:var(--text-body)}.dict-drawer .dict-input{min-height:0;padding:var(--space-3) var(--space-4);font-size:var(--text-body-lg)}.center-col>.answer-row{margin-top:var(--space-6)}.dict-drawer .dict-input{flex:0 0 auto;min-height:0}.dict-hit{display:flex;flex-direction:column;gap:1px;padding:var(--space-2) var(--space-3)}.dict-hit-word{font-family:var(--font-display);font-size:var(--text-body-lg);font-weight:650}.dict-hit-gloss{font-size:var(--text-body);color:var(--text-3);line-height:1.35}.note-form.is-block{display:block}.note-form.is-block .primary-btn{margin-top:var(--space-3)}.note-items{margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--hairline);display:flex;flex-direction:column;gap:var(--space-1)}.note-item{display:flex;gap:var(--space-3);align-items:flex-start;text-align:left;padding:var(--space-2) var(--space-2);border-radius:var(--radius-sm);transition:background var(--dur-fast) var(--ease-standard)}.note-item:hover{background:var(--surface-2)}.note-item .note-kind{flex:0 0 74px}.note-item-body{display:flex;flex-direction:column}.note-item-text{color:var(--text);font-weight:500}.note-item.is-dropped{opacity:.45}.note-item.is-dropped .note-item-text{text-decoration:line-through}.note-kind-rule{color:var(--warn)}.note-kind-sentence{color:var(--ok)}.note-item-wrap{display:flex;flex-direction:column}.note-item.is-flagged .note-item-text{text-decoration:underline wavy var(--bad);text-underline-offset:3px}.note-checking{padding:0 var(--space-2) var(--space-2) calc(74px + var(--space-3) + var(--space-2));font-size:var(--text-xs);color:var(--text);opacity:.55}.note-review{display:flex;flex-direction:column;gap:var(--space-1);margin:0 var(--space-2) var(--space-2) calc(74px + var(--space-3) + var(--space-2));padding:var(--space-2) var(--space-3);background:var(--surface-2);border-radius:var(--radius-sm)}.note-review-line{margin:0;line-height:2.4;font-size:var(--text-body-lg)}.note-review-line .paper-text{margin:0;line-height:2.4}.note-swap{display:flex;flex-direction:column;gap:2px}.note-swap-from{margin:0;text-decoration:line-through;text-decoration-color:var(--bad);opacity:.6}.note-swap-to{margin:0;color:var(--bad-text)}.note-review-why{margin:0;font-size:var(--text-sm);color:var(--text);opacity:.75}.note-review-done{margin:0;font-size:var(--text-sm);color:var(--ok)}.note-accept{align-self:flex-start;margin-top:var(--space-1)}.eyebrow-row{display:inline-flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2)}.eyebrow-row .eyebrow{margin-bottom:0}.streak-mark{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--text-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);background:var(--accent-dim);border-radius:var(--radius-pill);padding:var(--space-1) var(--space-3)}.streak-days{letter-spacing:0}.back-chevron{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;margin-left:-8px;color:var(--text-3);border-radius:var(--radius-sm);transition:color var(--dur-fast) var(--ease-standard),background var(--dur-fast) var(--ease-standard)}.back-chevron:hover{color:var(--text);background:var(--surface-2)}.session-progress .back-chevron{margin-right:var(--space-1)}.note-raw-row{display:flex;align-items:flex-start;gap:var(--space-3)}.note-raw-row .note-raw{flex:1;margin:0;white-space:pre-wrap}.note-trash{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;margin:-4px -4px 0 0;color:var(--text-3);border-radius:var(--radius-sm);transition:color var(--dur-fast) var(--ease-standard),background var(--dur-fast) var(--ease-standard)}.note-trash:hover{color:var(--bad);background:var(--surface-2)}.net-error{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-4);background:var(--surface-2);border:1px solid var(--bad);border-radius:var(--radius-md);color:var(--text-2);font-size:var(--text-sm)}.net-error span{flex:1}
