:root{--color-bg:#fafafa;--color-surface:#fff;--color-surface-soft:#f2f2f2;--color-border:#e0e0e0;--color-text:#1a1a1a;--color-text-muted:#6e6e6e;--color-accent:#bc002d;--color-accent-hover:#96001f;--color-accent-soft:#bc002d1a;--color-success:#3f7d58;--color-danger:#a13c1c;--color-danger-soft:#a13c1c1a;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--shadow-sm:0 1px 2px #00000014;--shadow-md:0 4px 16px #0000001f;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Hiragino Sans", "Noto Sans JP", sans-serif}:root[data-theme=dark-default]{--color-bg:#121212;--color-surface:#1c1c1c;--color-surface-soft:#262626;--color-border:#383838;--color-text:#f2f2f2;--color-text-muted:#a3a3a3;--color-accent:#ef4459;--color-accent-hover:#ff6478;--color-accent-soft:#ef44592e;--color-success:#6fbf8b;--color-danger:#f2a154;--color-danger-soft:#f2a1542e;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 16px #0006}:root[data-theme=light-vermillion]{--color-bg:#faf7f2;--color-surface:#fff;--color-surface-soft:#f3ede2;--color-border:#e6dfd0;--color-text:#2a251e;--color-text-muted:#7a7060;--color-accent:#c1440e;--color-accent-hover:#a3390b;--color-accent-soft:#c1440e1a;--color-success:#3f7d58;--color-danger:#b3261e;--color-danger-soft:#b3261e1a;--shadow-sm:0 1px 2px #1e180e0f;--shadow-md:0 4px 16px #1e180e1a}:root[data-theme=dark-vermillion]{--color-bg:#1b1815;--color-surface:#25211c;--color-surface-soft:#2c2721;--color-border:#3a332a;--color-text:#ece5d8;--color-text-muted:#a89b86;--color-accent:#e2703f;--color-accent-hover:#ef8659;--color-accent-soft:#e2703f29;--color-success:#6fbf8b;--color-danger:#e2726a;--color-danger-soft:#e2726a29;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 16px #0006}:root[data-theme=light-sakura]{--color-bg:#fdf5f7;--color-surface:#fff;--color-surface-soft:#f7e8ee;--color-border:#f0d7e0;--color-text:#2a2025;--color-text-muted:#8a7580;--color-accent:#d1477a;--color-accent-hover:#b23764;--color-accent-soft:#d1477a1f}:root[data-theme=dark-sakura]{--color-bg:#1f1518;--color-surface:#2a1e22;--color-surface-soft:#33242a;--color-border:#45303a;--color-text:#f0e3e8;--color-text-muted:#b399a3;--color-accent:#e8749f;--color-accent-hover:#ee8fb0;--color-accent-soft:#e8749f29;--color-success:#6fbf8b;--color-danger:#e2726a;--color-danger-soft:#e2726a29;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 16px #0006}:root[data-theme=light-ai]{--color-bg:#f5f7fb;--color-surface:#fff;--color-surface-soft:#e9edf7;--color-border:#d9e0f0;--color-text:#1e2430;--color-text-muted:#6b7690;--color-accent:#3d5a9e;--color-accent-hover:#2f477e;--color-accent-soft:#3d5a9e1a}:root[data-theme=dark-ai]{--color-bg:#141824;--color-surface:#1c2230;--color-surface-soft:#232a3b;--color-border:#303a52;--color-text:#e4e8f2;--color-text-muted:#9aa3bd;--color-accent:#7896e0;--color-accent-hover:#93ade8;--color-accent-soft:#7896e02e;--color-success:#6fbf8b;--color-danger:#e2726a;--color-danger-soft:#e2726a29;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 16px #0006}:root[data-theme=light-custom]{--color-bg:#fafafa;--color-surface:#fff;--color-surface-soft:#f2f2f2;--color-border:#e0e0e0;--color-text:#1a1a1a;--color-text-muted:#6e6e6e;--color-success:#3f7d58;--color-danger:#b3261e;--color-danger-soft:#b3261e1a;--shadow-sm:0 1px 2px #00000014;--shadow-md:0 4px 16px #0000001f}:root[data-theme=dark-custom]{--color-bg:#121212;--color-surface:#1c1c1c;--color-surface-soft:#262626;--color-border:#383838;--color-text:#f2f2f2;--color-text-muted:#a3a3a3;--color-success:#6fbf8b;--color-danger:#e2726a;--color-danger-soft:#e2726a29;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 16px #0006}*,:before,:after{box-sizing:border-box}body{min-height:100dvh;color:var(--color-text);background:var(--color-bg);line-height:1.6;font-family:var(--font-sans);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-size:1rem}h1,h2,h3{margin:0 0 .75rem;font-weight:600;line-height:1.25}h1{font-size:1.75rem}h2{font-size:1.25rem}p{margin:0 0 .75rem}a{color:var(--color-accent);text-decoration:none}a:hover{text-decoration:underline}button,.btn-primary{font:inherit;cursor:pointer;color:var(--color-accent);background:var(--color-surface);border:1px solid var(--color-accent);border-radius:var(--radius-sm);padding:.5rem 1rem;font-weight:500;transition:background-color .15s,border-color .15s,color .15s,transform .1s}button:hover{background:var(--color-accent-soft);border-color:var(--color-accent-hover);color:var(--color-accent-hover)}button:active{transform:translateY(1px)}button:disabled{cursor:not-allowed;opacity:.5}button:disabled:hover{background:var(--color-surface);border-color:var(--color-accent);color:var(--color-accent)}.btn-primary{background:var(--color-accent);border-color:var(--color-accent);color:#fff;text-align:center;font-weight:600;display:inline-block}.btn-primary:hover{background:var(--color-accent-hover);border-color:var(--color-accent-hover);color:#fff;text-decoration:none}.btn-primary:disabled:hover{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.btn-ghost{background:0 0}.btn-ghost:hover{background:var(--color-accent-soft)}.btn-sm{padding:.3rem .65rem;font-size:.85rem}input:not([type=checkbox]):not([type=radio]),textarea,select{font:inherit;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:.5rem .75rem}input[type=checkbox],input[type=radio]{accent-color:var(--color-accent);cursor:pointer;width:1rem;height:1rem}input:focus-visible,textarea:focus-visible,select:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.page{width:100%;max-width:56.25rem;margin:0 auto;padding:2rem 1.5rem 4rem}.page--narrow{max-width:30rem}.text-muted{color:var(--color-text-muted)}.error-text{color:var(--color-danger)}.empty-state{text-align:center;color:var(--color-text-muted);padding:3rem 0;font-size:1.05rem}.modal-close{width:1.75rem;height:1.75rem;color:var(--color-text-muted);background:0 0;border:none;flex-shrink:0;padding:0;font-size:1.3rem;line-height:1}.modal-close:hover{background:var(--color-surface-soft);color:var(--color-text)}.modal-backdrop{z-index:50;background:#00000073;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.icon-btn{width:2rem;height:2rem;color:var(--color-text-muted);background:0 0;border-color:#0000;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.icon-btn:hover{background:var(--color-surface-soft);color:var(--color-text);border-color:#0000}.icon-btn svg{width:1.1rem;height:1.1rem}.icon-btn--danger:hover{background:var(--color-danger-soft);color:var(--color-danger)}.status-badge{border-radius:var(--radius-sm);white-space:nowrap;padding:.2rem .6rem;font-size:.8rem;font-weight:600;display:inline-block}#app{flex-direction:column;min-height:100dvh;display:flex}.auth-page{flex:1;justify-content:center;align-items:center;padding:2rem 1rem;display:flex}.auth-card{text-align:center;width:100%;max-width:23.75rem;padding:2.5rem 2rem}.auth-card__action{margin-top:.5rem}.user-menu[data-v-cc0193b0]{position:relative}.user-menu__trigger[data-v-cc0193b0]{background:0 0;border-color:#0000;align-items:center;gap:.5rem;padding:.3rem .5rem;display:flex}.user-menu__trigger[data-v-cc0193b0]:hover{background:var(--color-surface-soft)}.user-menu__avatar[data-v-cc0193b0]{background:var(--color-accent-soft);width:1.75rem;height:1.75rem;color:var(--color-accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.8rem;font-weight:700;display:flex}.account__name[data-v-cc0193b0]{color:var(--color-text-muted);font-size:.9rem}.user-menu__panel[data-v-cc0193b0]{min-width:14rem;box-shadow:var(--shadow-md);z-index:30;flex-direction:column;gap:.5rem;padding:.85rem;display:flex;position:absolute;top:calc(100% + .5rem);right:0}.user-menu__label[data-v-cc0193b0]{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.03em;font-size:.75rem;font-weight:600}.user-menu__theme-row[data-v-cc0193b0]{align-items:center;gap:.5rem;display:flex}.theme-mode-toggle[data-v-cc0193b0]{padding:.3rem .5rem;font-size:1.1rem;line-height:1}.theme-swatch[data-v-cc0193b0]{cursor:pointer;border:2px solid #0000;border-radius:50%;width:1.5rem;height:1.5rem;padding:0}.theme-swatch--active[data-v-cc0193b0]{border-color:var(--color-text)}.theme-swatch--custom[data-v-cc0193b0]{background:var(--color-surface-soft);border:2px dashed var(--color-border);color:var(--color-text-muted);justify-content:center;align-items:center;font-size:1rem;line-height:1;display:flex}.theme-swatch--custom.theme-swatch--active[data-v-cc0193b0]{border-style:solid;border-color:var(--color-text);color:var(--color-text)}.custom-theme-panel[data-v-cc0193b0]{background:var(--color-surface-soft);border-radius:var(--radius-sm);flex-direction:column;gap:.5rem;padding:.6rem;display:flex}.custom-theme-panel__row[data-v-cc0193b0]{cursor:pointer;justify-content:space-between;align-items:center;gap:.5rem;font-size:.85rem;display:flex}.custom-theme-panel__row input[type=color][data-v-cc0193b0]{border-radius:var(--radius-sm);cursor:pointer;width:2.25rem;height:1.5rem;padding:0}.user-menu__divider[data-v-cc0193b0]{background:var(--color-border);height:1px;margin:.1rem 0}.zoom-slider[data-v-cc0193b0]{width:100%;accent-color:var(--color-accent);cursor:pointer}.user-menu__item[data-v-cc0193b0]{text-align:left;border-radius:var(--radius-sm);width:100%;color:var(--color-text);font:inherit;background:0 0;border-color:#0000;padding:.4rem .5rem;display:block}.user-menu__item[data-v-cc0193b0]:hover{background:var(--color-surface-soft);text-decoration:none}.user-menu__item--button[data-v-cc0193b0]{cursor:pointer}@media (width<=640px){.account__name[data-v-cc0193b0]{display:none}.user-menu__panel[data-v-cc0193b0]{min-width:0;position:fixed;left:.75rem;right:.75rem}}.app-header[data-v-41541662]{z-index:20;background:var(--color-surface);border-bottom:1px solid var(--color-border);position:sticky;top:0}.app-header__bar[data-v-41541662]{justify-content:space-between;align-items:center;gap:2rem;max-width:62.5rem;margin:0 auto;padding:.75rem 1.5rem;display:flex}.brand[data-v-41541662]{color:var(--color-text);letter-spacing:.02em;font-size:1.25rem;font-weight:700}.brand[data-v-41541662]:hover{color:var(--color-accent);text-decoration:none}.nav[data-v-41541662]{flex:1;gap:.25rem;display:flex}.nav-link[data-v-41541662]{border-radius:var(--radius-sm);color:var(--color-text-muted);padding:.4rem .75rem;font-weight:500}.nav-link[data-v-41541662]:hover{color:var(--color-text);background:var(--color-surface-soft);text-decoration:none}.nav-link.router-link-exact-active[data-v-41541662]{color:var(--color-accent);background:var(--color-accent-soft)}@media (width<=640px){.app-header__bar[data-v-41541662]{flex-wrap:wrap;gap:.5rem 1rem;padding:.6rem 1rem}.nav[data-v-41541662]{flex:100%;order:3;gap:.1rem;overflow-x:auto}.nav-link[data-v-41541662]{white-space:nowrap;padding:.4rem .5rem}}.story-card[data-v-db0e2e31]{list-style:none}.story-card__link[data-v-db0e2e31]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);height:100%;box-shadow:var(--shadow-sm);color:var(--color-text);cursor:pointer;flex-direction:column;gap:.35rem;padding:1rem 1.25rem;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex}.story-card__header[data-v-db0e2e31]{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.story-card__arrow[data-v-db0e2e31]{color:var(--color-text-muted);font-size:1.2rem;line-height:1;transition:color .15s,transform .15s}.story-card__link[data-v-db0e2e31]:hover,.story-card__link[data-v-db0e2e31]:focus-visible{border-color:var(--color-accent);box-shadow:var(--shadow-md);text-decoration:none;transform:translateY(-2px)}.story-card__link:hover .story-card__arrow[data-v-db0e2e31],.story-card__link:focus-visible .story-card__arrow[data-v-db0e2e31]{color:var(--color-accent);transform:translate(3px)}.story-card__title[data-v-db0e2e31]{font-weight:600}.story-card__status[data-v-db0e2e31]{align-self:flex-start;margin-top:auto;padding:.1rem .45rem;font-size:.7rem}.status-badge--new[data-v-db0e2e31]{background:var(--color-surface-soft);color:var(--color-text-muted)}.status-badge--in-progress[data-v-db0e2e31]{background:var(--color-accent-soft);color:var(--color-accent)}.status-badge--completed[data-v-db0e2e31]{background:var(--color-surface-soft);color:var(--color-success)}.story-card__excerpt[data-v-db0e2e31]{color:var(--color-text-muted);text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.85rem;display:-webkit-box;overflow:hidden}.story-upload-form[data-v-983f34d8]{flex-direction:column;gap:1rem;display:flex}.field[data-v-983f34d8]{flex-direction:column;gap:.35rem;display:flex}.field label[data-v-983f34d8]{color:var(--color-text-muted);font-size:.85rem;font-weight:600}.story-upload-form textarea[data-v-983f34d8]{resize:vertical;font-family:inherit;line-height:1.6}.story-upload-form button[data-v-983f34d8]{align-self:flex-start}.checkbox-field[data-v-983f34d8]{color:var(--color-text-muted);cursor:pointer;align-items:center;gap:.4rem;font-size:.85rem;display:flex}.newbie-banner[data-v-6d4d4085]{background:var(--color-accent-soft);color:var(--color-accent);border-radius:var(--radius-md);margin-bottom:1rem;padding:.75rem 1rem;font-weight:500;display:block}.newbie-banner[data-v-6d4d4085]:hover{text-decoration:underline}.status-filter[data-v-6d4d4085]{flex-wrap:wrap;gap:.4rem;margin-bottom:1rem;display:flex}.story-grid[data-v-6d4d4085]{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem;margin:0 0 2rem;padding:0;list-style:none;display:grid}.upload-section[data-v-6d4d4085]{padding:1.5rem}.furigana-hint[data-v-6d4d4085]{margin-top:.75rem;font-size:.85rem}.occurrence-highlight[data-v-eb879fc2]{cursor:pointer;border-bottom:1px solid #d4a017;border-radius:2px}.lemma-autocomplete[data-v-406dd100]{flex-direction:column;gap:.5rem;min-width:220px;display:flex}.lemma-autocomplete form[data-v-406dd100]{flex-direction:column;gap:.5rem;display:flex}.word[data-v-406dd100]{margin:0;font-size:1.05rem;font-weight:600}.furigana-editor[data-v-a2efbd4a]{flex-direction:column;gap:.5rem;display:flex}.word[data-v-a2efbd4a]{margin:0;font-weight:600}.selection-popover[data-v-dbf8f447]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);z-index:10;box-shadow:var(--shadow-md);align-items:center;gap:.4rem;padding:.6rem;display:flex;position:fixed;transform:translate(-50%)}@media (width<=640px){.selection-popover[data-v-dbf8f447]{border-radius:var(--radius-lg) var(--radius-lg) 0 0;width:100%;max-height:70vh;padding:1rem;padding-bottom:calc(1rem + 1.25rem + env(safe-area-inset-bottom));flex-wrap:wrap;inset:auto 0 0;overflow-y:auto;transform:none}}.selection-form-panel[data-v-dbf8f447]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);width:100%;max-width:24rem;max-height:85vh;padding:.85rem;overflow-y:auto}.example-sentence-list[data-v-9169d466]{flex-direction:column;gap:.5rem;display:flex}.sentences[data-v-9169d466]{flex-direction:column;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.sentences li[data-v-9169d466]{justify-content:space-between;align-items:baseline;gap:.75rem;font-size:.9rem;display:flex}.add-form[data-v-9169d466]{flex-direction:column;gap:.4rem;display:flex}.add-form textarea[data-v-9169d466]{resize:vertical;font-family:inherit}.add-form__actions[data-v-9169d466]{gap:.5rem;display:flex}.lemma-detail-panel[data-v-bf394db3]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);width:100%;max-width:26rem;max-height:85vh;padding:.85rem;overflow-y:auto}.lemma-detail-panel__header[data-v-bf394db3]{justify-content:space-between;align-items:flex-start;gap:.5rem;display:flex}.lemma-detail-panel__word[data-v-bf394db3]{font-size:1.05rem}.meaning[data-v-bf394db3]{margin:.35rem 0 0}.meta[data-v-bf394db3]{background:var(--color-surface-soft);border-radius:var(--radius-sm);margin-top:.6rem;padding:.5rem .6rem}.stage[data-v-bf394db3]{color:var(--color-text-muted);margin:0;font-size:.8rem}.furigana-visibility[data-v-bf394db3]{cursor:pointer;align-items:center;gap:.4rem;margin-top:.35rem;font-size:.8rem;display:flex}.example-sentences[data-v-bf394db3]{border-top:1px solid var(--color-border);margin-top:.6rem;padding-top:.6rem}.example-sentences__label[data-v-bf394db3]{margin:0 0 .35rem;font-size:.8rem}.actions[data-v-bf394db3]{border-top:1px solid var(--color-border);flex-wrap:wrap;justify-content:space-between;gap:.4rem;margin-top:.6rem;padding-top:.6rem;display:flex}.text-renderer[data-v-85f5eabe]{white-space:pre-wrap;line-height:2.4}.detected-highlight[data-v-85f5eabe]{cursor:pointer;border-bottom:1px dashed var(--color-text-muted);border-radius:2px}.furigana-only rt[data-v-85f5eabe]{cursor:pointer}rt.furigana-override[data-v-85f5eabe]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.furigana-panel[data-v-85f5eabe]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);flex-direction:column;gap:.5rem;width:100%;max-width:26rem;max-height:85vh;padding:.85rem;display:flex;overflow-y:auto}.furigana-panel__header[data-v-85f5eabe]{justify-content:space-between;align-items:flex-start;gap:.5rem;display:flex}.furigana-panel__word[data-v-85f5eabe]{font-size:1.05rem}.furigana-panel__hint[data-v-85f5eabe]{margin:0;font-size:.8rem}.furigana-panel__override-form[data-v-85f5eabe]{gap:.4rem;display:flex}.furigana-panel__override-form input[data-v-85f5eabe]{flex:1;min-width:0}.furigana-panel__actions[data-v-85f5eabe]{border-top:1px solid var(--color-border);flex-wrap:wrap;justify-content:space-between;gap:.4rem;padding-top:.5rem;display:flex}.confirm-dialog-backdrop[data-v-dd7b3c76]{z-index:50;background:#00000073;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.confirm-dialog[data-v-dd7b3c76]{width:100%;max-width:23.75rem;max-height:85vh;padding:1.5rem;overflow-y:auto}.confirm-dialog__header[data-v-dd7b3c76]{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.confirm-dialog__header h2[data-v-dd7b3c76]{margin-bottom:0}.confirm-dialog__hint[data-v-dd7b3c76]{margin-bottom:.5rem;font-size:.85rem}.confirm-dialog__actions[data-v-dd7b3c76]{justify-content:space-between;gap:.5rem;margin-top:1rem;display:flex}.story-reader__header[data-v-8de3c878]{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:1rem;display:flex}.story-reader__header h1[data-v-8de3c878]{margin-bottom:0}.story-reader__header-actions[data-v-8de3c878]{flex-wrap:wrap;align-items:center;gap:.75rem 1rem;display:flex}.furigana-toggle[data-v-8de3c878]{white-space:nowrap;color:var(--color-text-muted);cursor:pointer;flex-shrink:0;align-items:center;gap:.4rem;font-size:.9rem;display:flex}.status-select[data-v-8de3c878]{padding:.3rem .6rem;font-size:.85rem}.story-reader__body[data-v-8de3c878]{padding:2rem;font-size:1.15rem}.edit-form[data-v-8de3c878]{flex-direction:column;gap:1rem;margin-bottom:1rem;padding:1.5rem;display:flex}.edit-form .field[data-v-8de3c878]{flex-direction:column;gap:.35rem;display:flex}.edit-form .field label[data-v-8de3c878]{color:var(--color-text-muted);font-size:.85rem;font-weight:600}.edit-form textarea[data-v-8de3c878]{resize:vertical;font-family:inherit;line-height:1.6}.edit-form__actions[data-v-8de3c878]{gap:.75rem;display:flex}.review-card[data-v-e03f1ff9]{text-align:center;margin-bottom:1.5rem;padding:2.5rem 1.5rem}.lemma[data-v-e03f1ff9]{font-size:2rem;font-weight:600}.meaning[data-v-e03f1ff9]{margin-top:.5rem}.example[data-v-e03f1ff9]{color:var(--color-text-muted);margin-top:1rem;margin-bottom:0;font-style:italic}.hint-button[data-v-e03f1ff9]{margin-top:1rem}.rating-buttons[data-v-ef69e1fc]{justify-content:center;gap:.5rem;display:flex}.rating-btn[data-v-ef69e1fc]{color:#fff;border:none;flex:1;max-width:120px;font-weight:600}.rating-btn--again[data-v-ef69e1fc]{background:#c0392b}.rating-btn--again[data-v-ef69e1fc]:hover{background:#a53125}.rating-btn--hard[data-v-ef69e1fc]{background:#d9822b}.rating-btn--hard[data-v-ef69e1fc]:hover{background:#bf6f1f}.rating-btn--good[data-v-ef69e1fc]{background:var(--color-success)}.rating-btn--good[data-v-ef69e1fc]:hover{background:#326a49}.rating-btn--easy[data-v-ef69e1fc]{background:#2f6f9e}.rating-btn--easy[data-v-ef69e1fc]:hover{background:#285f89}.review-progress-bar[data-v-a3a2bc48]{align-items:center;gap:.75rem;margin-bottom:1.5rem;display:flex}.review-progress-bar__track[data-v-a3a2bc48]{background:var(--color-surface-soft);border-radius:999px;flex:1;height:6px;overflow:hidden}.review-progress-bar__fill[data-v-a3a2bc48]{background:var(--color-accent);border-radius:999px;height:100%;transition:width .3s}.review-progress-bar__label[data-v-a3a2bc48]{color:var(--color-text-muted);white-space:nowrap;font-size:.85rem}.review-header[data-v-6799df51]{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.furigana-toggle[data-v-6799df51]{color:var(--color-text-muted);cursor:pointer;align-items:center;gap:.4rem;font-size:.9rem;display:flex}.review-action[data-v-6799df51]{justify-content:center;display:flex}.category-tag-input[data-v-19c8dd0a]{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.tag[data-v-19c8dd0a]{background:var(--color-accent-soft);color:var(--color-accent);border-radius:999px;align-items:center;gap:.3rem;padding:.15rem .65rem;font-size:.8rem;font-weight:500;display:inline-flex}.tag button[data-v-19c8dd0a]{color:inherit;cursor:pointer;background:0 0;border:none;padding:0;font-size:.9rem;line-height:1}.category-tag-input input[data-v-19c8dd0a]{width:12rem;padding:.3rem .6rem;font-size:.85rem}.suggestions[data-v-19c8dd0a]{gap:.25rem;margin:0;padding:0;list-style:none;display:flex}.search-field[data-v-68cc9549]{width:100%;max-width:24rem;margin-bottom:1rem}.lemma-list[data-v-68cc9549]{flex-direction:column;gap:.6rem;margin:0;padding:0;list-style:none;display:flex}.lemma-row[data-v-68cc9549]{flex-wrap:wrap;align-items:center;gap:1.25rem;padding:.85rem 1.1rem;display:flex}.lemma-info[data-v-68cc9549]{flex-direction:column;gap:.3rem;min-width:12rem;display:flex}.lemma-info__word[data-v-68cc9549]{font-size:1.05rem}.lemma-info__meaning[data-v-68cc9549]{color:var(--color-text-muted);font-size:.9rem}.lemma-info__categories[data-v-68cc9549]{flex-wrap:wrap;gap:.3rem;display:flex}.tag[data-v-68cc9549]{background:var(--color-accent-soft);color:var(--color-accent);border-radius:999px;align-items:center;padding:.15rem .65rem;font-size:.8rem;font-weight:500;display:inline-flex}.hidden-hint[data-v-68cc9549]{color:var(--color-text-muted);font-size:.8rem;font-style:italic}.lemma-row__actions[data-v-68cc9549]{gap:.5rem;margin-left:auto;display:flex}.lemma-row__sentences[data-v-68cc9549]{border-top:1px solid var(--color-border);flex:100%;padding-top:.6rem}.lemma-edit-form[data-v-68cc9549]{flex-direction:column;gap:.85rem;width:100%;display:flex}.lemma-edit-form__fields[data-v-68cc9549]{flex-wrap:wrap;gap:1rem;display:flex}.lemma-edit-form .field[data-v-68cc9549]{flex-direction:column;gap:.35rem;display:flex}.lemma-edit-form .field label[data-v-68cc9549],.lemma-edit-form .field__label[data-v-68cc9549]{color:var(--color-text-muted);font-size:.8rem;font-weight:600}.lemma-edit-form .field input[data-v-68cc9549]{width:12rem}.highlight-toggle[data-v-68cc9549]{cursor:pointer;align-items:center;gap:.4rem;font-size:.85rem;display:flex}.lemma-edit-form__actions[data-v-68cc9549]{gap:.5rem;display:flex}.intro[data-v-34aac02d]{margin-bottom:1.25rem}.add-form[data-v-34aac02d]{flex-wrap:wrap;align-items:flex-end;gap:1rem;margin-bottom:1.5rem;padding:1.1rem;display:flex}.field[data-v-34aac02d]{flex-direction:column;gap:.35rem;display:flex}.field label[data-v-34aac02d]{color:var(--color-text-muted);font-size:.85rem;font-weight:600}.search-field[data-v-34aac02d]{width:100%;max-width:24rem;margin-bottom:1rem}.entry-list[data-v-34aac02d]{flex-direction:column;gap:.6rem;margin:0;padding:0;list-style:none;display:flex}.entry-row[data-v-34aac02d]{flex-wrap:wrap;align-items:center;gap:1.25rem;padding:.85rem 1.1rem;display:flex}.entry-row__word[data-v-34aac02d]{font-size:1.05rem}.entry-row__actions[data-v-34aac02d]{gap:.5rem;margin-left:auto;display:flex}.entry-edit-form[data-v-34aac02d]{flex-wrap:wrap;align-items:center;gap:.6rem;width:100%;display:flex}.entry-edit-form__word[data-v-34aac02d]{font-size:1.05rem}.entry-edit-form input[data-v-34aac02d]{width:10rem}.intro[data-v-af0caf2a]{margin-top:-.5rem;margin-bottom:1.25rem}.guide-section[data-v-af0caf2a]{margin-bottom:1rem;padding:1.25rem 1.5rem}.guide-section h2[data-v-af0caf2a]{margin-top:0}.guide-section p[data-v-af0caf2a]{margin-bottom:0;line-height:1.7}.add-form[data-v-2a45ec57]{flex-wrap:wrap;align-items:flex-end;gap:1rem;margin-bottom:1.5rem;padding:1.1rem;display:flex}.field[data-v-2a45ec57]{flex-direction:column;gap:.35rem;display:flex}.field label[data-v-2a45ec57]{color:var(--color-text-muted);font-size:.85rem;font-weight:600}.table-scroll[data-v-2a45ec57]{overflow-x:auto}.user-table[data-v-2a45ec57]{border-collapse:collapse;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);width:100%;box-shadow:var(--shadow-sm);overflow:hidden}.user-table th[data-v-2a45ec57],.user-table td[data-v-2a45ec57]{text-align:left;white-space:nowrap;padding:.7rem 1rem}.user-table th[data-v-2a45ec57]{color:var(--color-text-muted);border-bottom:1px solid var(--color-border);font-size:.8rem;font-weight:600}.user-table tbody tr:not(:last-child) td[data-v-2a45ec57]{border-bottom:1px solid var(--color-border)}.user-table__actions-col[data-v-2a45ec57]{text-align:right}.user-table__actions[data-v-2a45ec57]{justify-content:space-between;align-items:center;gap:.4rem;display:flex}.user-table__icon-actions[data-v-2a45ec57]{align-items:center;gap:.4rem;margin-left:auto;display:flex}.role-badge[data-v-2a45ec57]{border-radius:var(--radius-sm);white-space:nowrap;background:var(--color-accent-soft);color:var(--color-accent);padding:.2rem .6rem;font-size:.8rem;font-weight:600}.status-badge--pending[data-v-2a45ec57]{background:var(--color-surface-soft);color:var(--color-text-muted)}.status-badge--active[data-v-2a45ec57]{background:var(--color-surface-soft);color:var(--color-success)}.status-badge--locked[data-v-2a45ec57]{background:var(--color-danger-soft);color:var(--color-danger)}.self-hint[data-v-2a45ec57]{white-space:nowrap;font-size:.85rem;font-style:italic}
