:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f5f8fb;--bg-accent:#eef2f7;--surface:#fff;--surface-2:#f2f5f9;--surface-3:#e8edf3;--elevated:#fff;--border:#dde6ef;--border-strong:#c3d3e3;--text:#1c2733;--text-muted:#5c6773;--text-subtle:#8b95a3;--on-primary:#fff;--primary:#6e97c7;--primary-hover:#5c84b5;--primary-active:#4c72a1;--primary-soft:#6e97c71a;--primary-soft-strong:#6e97c729;--primary-border:#6e97c759;--success:#16a34a;--success-soft:#16a34a1a;--danger:#dc2626;--danger-text:#b91c1c;--danger-soft:#dc262614;--danger-border:#dc26264d;--warning:#d97706;--warning-soft:#d977061a;--grade-again:#dc2626;--grade-hard:#d97706;--grade-good:#6e97c7;--grade-easy:#16a34a;--diff-added:#16a34a;--diff-added-soft:#16a34a1f;--diff-removed:#dc2626;--diff-removed-soft:#dc26261a;--ring:#6e97c780;--scrim:#10182873;--radius-xs:6px;--radius-s:8px;--radius-m:12px;--radius-l:16px;--radius-pill:999px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--shadow-1:0 1px 2px #1018280f, 0 1px 3px #10182814;--shadow-2:0 4px 12px #10182814, 0 2px 6px #1018280d;--shadow-3:0 12px 32px #10182824, 0 4px 12px #10182814;--header-bg:#ffffffb8;--ease:cubic-bezier(.2, 0, 0, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--dur-fast:.13s;--dur:.22s;--dur-slow:.36s;--pane-shift:14px;--sans:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, "Cascadia Mono", "SF Mono", Consolas, monospace;--mistai-border:var(--border);--mistai-surface:var(--surface);--mistai-text:var(--text);--mistai-text-muted:var(--text-muted);--mistai-text-strong:var(--text);font:16px/1.5 var(--sans);color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#111820;--bg-accent:#141c24;--surface:#182029;--surface-2:#1c2530;--surface-3:#26313d;--elevated:#1a2330;--border:#26313d;--border-strong:#374556;--text:#e6edf5;--text-muted:#9aa7b5;--text-subtle:#6d7885;--on-primary:#0d1620;--primary:#8fb3dd;--primary-hover:#a3c2e4;--primary-active:#7ba3cf;--primary-soft:#8fb3dd29;--primary-soft-strong:#8fb3dd3d;--primary-border:#8fb3dd66;--success:#4ade80;--success-soft:#4ade8024;--danger:#f87171;--danger-text:#fca5a5;--danger-soft:#f871711f;--danger-border:#f8717159;--warning:#fbbf24;--warning-soft:#fbbf2424;--grade-again:#f87171;--grade-hard:#fbbf24;--grade-good:#8fb3dd;--grade-easy:#4ade80;--diff-added:#4ade80;--diff-added-soft:#4ade8024;--diff-removed:#f87171;--diff-removed-soft:#f871711f;--ring:#8fb3dd8c;--scrim:#0009;--shadow-1:0 1px 2px #0006, 0 1px 3px #0000004d;--shadow-2:0 4px 14px #00000073, 0 2px 6px #00000059;--shadow-3:0 16px 40px #0000008c, 0 6px 16px #0006;--header-bg:#11161db8}*{box-sizing:border-box}body{margin:0}#app{flex-direction:column;min-height:100dvh;display:flex}h1,h2,h3,h4,p{margin:0}button,textarea,input,select{font:inherit;color:inherit}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}:focus{outline:none}:focus-visible{outline:2px solid var(--ring);outline-offset:2px;border-radius:var(--radius-xs)}.pane-enter{animation:pane-fade-in var(--dur) var(--ease-out) both}.pane-enter--from-right{animation-name:pane-slide-from-right}.pane-enter--from-left{animation-name:pane-slide-from-left}@keyframes pane-fade-in{0%{opacity:0}}@keyframes pane-slide-from-right{0%{opacity:0;transform:translateX(var(--pane-shift))}}@keyframes pane-slide-from-left{0%{opacity:0;transform:translateX(calc(-1 * var(--pane-shift)))}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}*{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:var(--radius-pill);background-clip:content-box;border:3px solid #0000}::-webkit-scrollbar-thumb:hover{background:var(--text-subtle);background-clip:content-box}.app-shell{flex-direction:column;height:100dvh;display:flex}.app-header{z-index:10;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--border);background:var(--header-bg);-webkit-backdrop-filter:blur(10px);display:flex;position:sticky;top:0}.app-header-brand{align-items:center;gap:var(--space-2);letter-spacing:.01em;color:var(--primary);white-space:nowrap;font-size:1.05rem;font-weight:700;display:flex}.app-tabs{align-items:center;gap:var(--space-1);margin-left:auto;display:flex;overflow-x:auto}.app-tab{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-s);color:var(--text-muted);cursor:pointer;white-space:nowrap;transition:background var(--dur) var(--ease), color var(--dur) var(--ease);background:0 0;border:none;display:flex}.app-tab:hover{background:var(--surface-2);color:var(--text)}.app-tab-active{background:var(--primary-soft);color:var(--primary);font-weight:600}.app-header-links{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.language-switcher{border-radius:var(--radius-pill);background:var(--surface-2);border:1px solid var(--border);scroll-behavior:smooth;scrollbar-width:none;flex-shrink:0;align-items:center;gap:2px;max-width:220px;padding:3px;display:flex;overflow-x:auto}.language-switcher::-webkit-scrollbar{display:none}.language-switcher-chip{padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);color:var(--text-muted);white-space:nowrap;cursor:pointer;transition:background-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease);background:0 0;border:none;font-size:.8rem;font-weight:600}.language-switcher-chip:hover:not(.active){background:var(--surface-3);color:var(--text)}.language-switcher-chip:active{transform:scale(.94)}.language-switcher-chip:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.language-switcher-chip.active{background:var(--primary-soft-strong);color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary-border)}@media (width<=640px){.language-switcher{max-width:140px}}.theme-toggle{border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--surface);width:36px;height:36px;color:var(--text-muted);cursor:pointer;transition:color var(--dur) var(--ease), border-color var(--dur) var(--ease);flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.theme-toggle:hover{color:var(--text);border-color:var(--border-strong)}.app-main{flex:1;min-height:0;overflow-y:auto}@media (width<=640px){.app-tab span{display:none}.app-header{padding:var(--space-3);gap:var(--space-2);flex-wrap:wrap}.app-header-brand{order:1}.app-header-brand span{display:none}.app-header-links{order:2;margin-left:auto}.app-tabs{gap:var(--space-2);flex-basis:100%;order:3;margin-left:0}.app-tab{min-width:44px;min-height:44px;padding:var(--space-2);flex-shrink:0;justify-content:center}}.view-container{max-width:720px;padding:var(--space-5);gap:var(--space-4);flex-direction:column;margin:0 auto;display:flex}.card-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-l);box-shadow:var(--shadow-1);padding:var(--space-5);gap:var(--space-3);flex-direction:column;display:flex}.card-panel h2{font-size:1.1rem;font-weight:700}.hint-text{color:var(--text-muted);font-size:.9rem;line-height:1.6}.sync-debug-line{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem}.reading-aid{color:var(--text-muted);font-size:.85rem;line-height:1.5}.status-ok{color:var(--success)}.status-warn{color:var(--warning)}.error-text{color:var(--danger-text);background:var(--danger-soft);border:1px solid var(--danger-border);border-radius:var(--radius-s);padding:var(--space-2) var(--space-3);font-size:.9rem}.button-row{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}button{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-radius:var(--radius-s);border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);display:inline-flex}button:hover:not(:disabled){background:var(--surface-2);border-color:var(--border-strong)}button:disabled{opacity:.5;cursor:not-allowed}.primary-button{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.primary-button:hover:not(:disabled){background:var(--primary-hover);border-color:var(--primary-hover)}.link-button{color:var(--primary);padding:var(--space-1) 0;background:0 0;border:none}.link-button:hover:not(:disabled){background:0 0;text-decoration:underline}.icon-button{padding:var(--space-1);justify-content:center;width:28px;height:28px}.field-grid{gap:var(--space-3);flex-direction:column;display:flex}.field-grid label{gap:var(--space-1);color:var(--text-muted);flex-direction:column;font-size:.85rem;display:flex}.field-grid input,.field-grid textarea{padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-s);background:var(--surface-2);color:var(--text)}.field-grid input:focus,.field-grid textarea:focus,.practice-textarea:focus{border-color:var(--primary-border)}.field-grid select,.llm-edit-fields select,.llm-model-field select,.level-row-select,.task-model-field select{appearance:none;padding:var(--space-2) calc(var(--space-3) + 20px) var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-s);background-color:var(--surface-2);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%235c6773' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-3) center;color:var(--text);cursor:pointer;transition:border-color var(--dur-fast) var(--ease), background-color var(--dur-fast) var(--ease);background-size:12px}:root[data-theme=dark] .field-grid select,:root[data-theme=dark] .llm-edit-fields select,:root[data-theme=dark] .llm-model-field select,:root[data-theme=dark] .level-row-select,:root[data-theme=dark] .task-model-field select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%239aa7b5' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")}.field-grid select:hover:not(:disabled),.llm-edit-fields select:hover:not(:disabled),.llm-model-field select:hover:not(:disabled),.level-row-select:hover:not(:disabled),.task-model-field select:hover:not(:disabled){border-color:var(--border-strong)}.field-grid select:focus,.llm-edit-fields select:focus,.llm-model-field select:focus,.level-row-select:focus,.task-model-field select:focus{border-color:var(--primary-border)}.field-grid select:disabled,.llm-edit-fields select:disabled,.llm-model-field select:disabled,.level-row-select:disabled,.task-model-field select:disabled{opacity:.55;cursor:not-allowed}.model-row{gap:var(--space-2);display:flex}.model-row input{flex:1}.topic-header{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.round-badge{padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);background:var(--primary-soft);color:var(--primary);flex-shrink:0;font-size:.8rem;font-weight:600}.topic-header-badges{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.practice-level-badge{white-space:nowrap}.topic-prompt{color:var(--text);background:var(--surface-2);border-radius:var(--radius-s);padding:var(--space-3) var(--space-4);line-height:1.7}.practice-textarea{width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-s);background:var(--surface-2);color:var(--text);resize:vertical;font-family:inherit}.previous-attempt{border-top:1px dashed var(--border);padding-top:var(--space-3)}.topic-pick-list{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.topic-pick-list button{align-items:center;gap:var(--space-2);font-size:.85rem;display:inline-flex}.topic-resume-badge{padding:0 var(--space-2);border-radius:var(--radius-pill);background:var(--primary-soft);color:var(--primary);font-size:.75rem;font-weight:600}.feedback-panel{gap:var(--space-3);border-top:1px solid var(--border);padding-top:var(--space-3);flex-direction:column;display:flex}.feedback-field h3,.feedback-field h4{color:var(--text-subtle);text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--space-1);font-size:.8rem;font-weight:700}.feedback-original{color:var(--text-muted);line-height:1.6}.feedback-diff,.feedback-reasons,.feedback-retry-prompt{color:var(--text);line-height:1.7}.practice-translation-row{margin-top:var(--space-1)}.practice-translation-toggle{font-size:.78rem}.practice-translation{margin-top:var(--space-1);color:var(--text-muted);font-size:.9rem}.diff-added{background:var(--diff-added-soft);color:var(--diff-added);border-radius:3px;padding:0 2px}.diff-removed{background:var(--diff-removed-soft);color:var(--diff-removed);border-radius:3px;padding:0 2px;text-decoration:line-through}.retry-block{gap:var(--space-3);padding:var(--space-4);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-m);flex-direction:column;display:flex}.mistake-card-picker{gap:var(--space-2);border-top:1px solid var(--border);padding-top:var(--space-3);flex-direction:column;display:flex}.mistake-card-item{align-items:flex-start;gap:var(--space-2);font-size:.9rem;display:flex}.mistake-card-reading,.mistake-card-meaning{color:var(--text-muted)}.card-merge-panel{gap:var(--space-3);border-top:1px solid var(--border);padding-top:var(--space-3);flex-direction:column;display:flex}.card-merge-group{align-items:flex-start;gap:var(--space-2);padding:var(--space-3);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-m);font-size:.9rem;display:flex}.card-merge-group-body{gap:var(--space-1);flex-direction:column;flex:1;display:flex}.card-merge-section-label{color:var(--text-muted);margin:0;font-size:.8rem}.card-merge-originals{padding-left:var(--space-4);margin:0}.card-merge-preview{padding:var(--space-2);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-s)}.card-merge-reason{color:var(--text-muted);margin:0;font-size:.85rem}.review-card{align-items:center;gap:var(--space-4);text-align:center;padding:var(--space-4) 0;flex-direction:column;display:flex}.review-progress{color:var(--text-subtle);font-size:.85rem}.review-prompt{font-size:1.4rem;font-weight:600}.review-recall-instruction{color:var(--text-muted);font-size:.85rem}.review-prompt-hint{color:var(--text-muted);font-size:.95rem}.review-hint-label{color:var(--text-subtle);font-weight:600}.review-cloze-word-count{color:var(--text-subtle);font-size:.78rem}.review-answer-form{align-items:center;gap:var(--space-2);width:100%;max-width:360px;display:flex}.review-answer-input{padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-s);background:var(--surface-2);color:var(--text);flex:1}.review-answer-input:focus{border-color:var(--primary-border)}.review-answer-compare{align-items:center;gap:var(--space-1);flex-direction:column;display:flex}.review-answer-compare-label{color:var(--text-subtle);text-transform:uppercase;letter-spacing:.04em;font-size:.8rem;font-weight:700}.review-answer{gap:var(--space-2);flex-direction:column;display:flex}.review-answer-front{font-size:1.1rem;font-weight:700}.review-answer-reading{color:var(--text-muted);font-weight:400}.review-answer-in-sentence,.review-rewrite{color:var(--text-muted);font-size:.9rem}.review-answer-meaning{color:var(--text)}.review-answer-example,.review-answer-context{color:var(--text-muted);font-size:.9rem}.review-result{padding:var(--space-2) var(--space-4);border-radius:var(--radius-s);color:var(--on-primary);margin:0;font-weight:600;display:inline-block}.review-result-correct{background:var(--grade-easy)}.review-result-near{background:var(--grade-hard)}.review-result-wrong{background:var(--grade-again)}.review-next-row{gap:var(--space-2);display:flex}.card-list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.card-list-item{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-s);background:var(--surface-2);display:flex}.card-list-reading,.card-list-meaning{color:var(--text-muted);font-size:.9rem}.card-front-ruby rt{color:var(--text-muted);font-weight:400}.card-list-meta{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.due-badge{padding:2px var(--space-2);border-radius:var(--radius-pill);background:var(--surface-3);color:var(--text-subtle);font-size:.75rem}.due-badge-ready{background:var(--primary-soft);color:var(--primary)}.source-badge{padding:2px var(--space-2);border-radius:var(--radius-pill);background:var(--warning-soft);color:var(--warning);font-size:.75rem}.cloze-missing-badge{padding:2px var(--space-2);border-radius:var(--radius-pill);background:var(--surface-3);color:var(--text-subtle);font-size:.75rem}.card-list-entry{gap:var(--space-2);flex-direction:column;display:flex}.card-list-clickable{cursor:pointer}.card-list-detail{gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-s);border:1px solid var(--border);background:var(--surface);flex-direction:column;display:flex}.card-detail-row{color:var(--text);font-size:.9rem;line-height:1.5}.card-detail-label{color:var(--text-muted);margin-right:var(--space-2);font-weight:600}.example-translation-toggle{margin-left:var(--space-2);font-size:.78rem}.example-translation{margin:var(--space-1) 0 0;color:var(--text-muted);font-size:.9rem}.card-detail-source{color:var(--text-muted);font-size:.85rem}.card-detail-stats{gap:var(--space-3);color:var(--text-subtle);flex-wrap:wrap;font-size:.75rem;display:flex}.language-select{position:relative}.language-select-trigger{background:var(--surface-2);justify-content:space-between;width:100%}.language-select-trigger.open{border-color:var(--primary-border)}.language-select-menu{z-index:20;top:calc(100% + var(--space-1));max-height:280px;padding:var(--space-2);background:var(--elevated);border:1px solid var(--border);border-radius:var(--radius-m);box-shadow:var(--shadow-3);flex-direction:column;gap:2px;display:flex;position:absolute;left:0;right:0;overflow-y:auto}.language-select-search{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-1);border:1px solid var(--border);border-radius:var(--radius-s);background:var(--surface-2);color:var(--text-subtle);display:flex}.language-select-search input{color:var(--text);background:0 0;border:none;flex:1}.language-select-search input:focus{outline:none}.language-select-option{text-align:left;border-radius:var(--radius-s);background:0 0;border:none;justify-content:flex-start}.language-select-option.current{background:var(--primary-soft);color:var(--primary);font-weight:600}.language-select-empty{padding:var(--space-2) var(--space-3);color:var(--text-subtle);font-size:.85rem}.language-chip-list{gap:var(--space-2);flex-wrap:wrap;display:flex}.language-chip{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2) var(--space-1) var(--space-3);border-radius:var(--radius-pill);background:var(--primary-soft);color:var(--primary);font-size:.85rem;font-weight:600;display:inline-flex}.language-chip button{width:20px;height:20px;color:var(--primary);background:0 0;border:none;justify-content:center;padding:2px}.language-chip button:hover:not(:disabled){background:var(--primary-soft-strong)}.language-badge{padding:2px var(--space-2);border-radius:var(--radius-pill);background:var(--surface-3);color:var(--text-muted);font-size:.75rem}.llm-flat-section{margin-bottom:var(--space-4)}.llm-row-list{gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(180px,1fr));display:grid}.llm-row{border:1px solid var(--border);border-radius:var(--radius-s);background:var(--surface);box-shadow:var(--shadow-1);transition:background var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);flex-direction:column;align-items:flex-start;gap:2px;padding:10px 52px 10px 10px;display:flex;position:relative}.llm-row:hover{box-shadow:var(--shadow-2);transform:translateY(-1px)}.llm-flat-section-providers .llm-row{background:var(--primary-soft)}.llm-flat-section-models .llm-row{background:var(--surface-3)}.llm-flat-section-models .llm-row.llm-row-active{border-color:var(--primary-border);background:var(--primary-soft)}.llm-row-main{width:100%;min-width:0;color:inherit;text-align:left;cursor:pointer;background:0 0;border:none;flex-direction:column;align-items:flex-start;gap:2px;padding:0;display:flex}.llm-row-label{white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:.82rem;font-weight:600;overflow:hidden}.llm-row-model{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:.72rem;overflow:hidden}.llm-row-provider{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:.68rem;font-style:italic;overflow:hidden}.llm-row-badge{background:var(--primary-soft-strong);color:var(--primary);border-radius:var(--radius-pill);white-space:nowrap;padding:2px 6px;font-size:.62rem;font-weight:600}.llm-row-icons{gap:2px;display:flex;position:absolute;top:6px;right:6px}.llm-icon-button{width:20px;height:20px;color:var(--text-muted);cursor:pointer;transition:color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex}.llm-icon-button:hover{color:var(--text);background:var(--surface-2)}.llm-row-remove:hover{color:var(--danger-text);background:var(--danger-soft)}.llm-row.llm-row-editing{align-items:stretch;gap:var(--space-2);background:var(--surface-2);box-shadow:none;cursor:default;flex-direction:column;grid-column:1/-1;padding:10px;display:flex;transform:none}.llm-edit-fields{gap:var(--space-2);flex-direction:column;display:flex}.llm-edit-fields input{padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-s);background:var(--surface-2);color:var(--text)}.llm-edit-fields input:focus{border-color:var(--primary-border)}.llm-model-field{align-items:center;gap:var(--space-2);display:flex}.llm-model-field select,.llm-model-field input{flex:auto;min-width:0}.llm-add-actions{gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.llm-form-btn{border-radius:var(--radius-s);background:var(--surface-2);border:1px solid var(--border);color:var(--text-muted);cursor:pointer;transition:color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease);justify-content:center;align-items:center;gap:6px;padding:8px 12px;font-size:.78rem;display:flex}.llm-form-btn:hover:not(:disabled){color:var(--text)}.llm-form-btn-primary{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.llm-form-btn-primary:hover:not(:disabled){background:var(--primary-hover);border-color:var(--primary-hover);color:var(--on-primary)}.llm-form-btn:disabled{opacity:.4;cursor:not-allowed}.llm-add-tile{border:1px dashed var(--border-strong);border-radius:var(--radius-s);min-height:64px;color:var(--text-muted);cursor:pointer;transition:border-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);background:0 0;flex-direction:column;justify-content:center;align-items:center;gap:6px;font-size:.72rem;display:flex}.llm-add-tile:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}.llm-add-tile:disabled{opacity:.4;cursor:not-allowed;border-color:var(--border-strong);color:var(--text-muted)}.llm-form-warning{margin-top:calc(-1 * var(--space-1));font-style:italic}.connection-mode-toggle{border-radius:var(--radius-pill);background:var(--surface-2);border:1px solid var(--border);align-self:flex-start;gap:2px;padding:2px;display:inline-flex}.connection-mode-button{border-radius:var(--radius-pill);padding:var(--space-1) var(--space-3);color:var(--text-muted);background:0 0;border:none;font-size:.85rem;font-weight:600}.connection-mode-button:hover:not(:disabled){background:var(--surface-3);color:var(--text);border-color:#0000}.connection-mode-button-active{background:var(--primary);color:var(--on-primary)}.connection-mode-button-active:hover:not(:disabled){background:var(--primary-hover);color:var(--on-primary)}.network-panel{gap:var(--space-3);flex-direction:column;display:flex}.network-status{gap:var(--space-2);padding:var(--space-3);background:var(--surface-2);border-radius:var(--radius-m);border:1px solid #0000;flex-direction:column;display:flex}.network-status-error{border-color:var(--danger-border)}.network-status-steps{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.network-status-step{padding:var(--space-1) var(--space-3) var(--space-1) var(--space-5);border-radius:var(--radius-pill);border:1px solid var(--border);color:var(--text-subtle);background:0 0;font-size:.8rem;font-weight:600;position:relative}.network-status-step:before{content:"";left:var(--space-3);border-radius:var(--radius-pill);background:var(--text-subtle);width:6px;height:6px;position:absolute;top:50%;transform:translateY(-50%)}.network-status-step.done{border-color:var(--primary-border);background:var(--primary-soft);color:var(--primary)}.network-status-step.done:before{background:var(--primary)}.network-status-step.current{border-color:var(--primary);background:var(--primary);color:var(--on-primary);font-weight:700}.network-status-step.current:before{background:var(--on-primary);animation:network-status-pulse 1.4s var(--ease) infinite}@keyframes network-status-pulse{0%,to{opacity:1}50%{opacity:.35}}.network-status-timestamp{font-size:.75rem}.history-topic-toggle{padding:0;font-size:1.05rem;font-weight:700}.history-detail{gap:var(--space-4);border-top:1px solid var(--border);padding-top:var(--space-3);flex-direction:column;display:flex}.history-round{gap:var(--space-2);padding:var(--space-3);background:var(--surface-2);border-radius:var(--radius-m);flex-direction:column;display:flex}.history-round h3{color:var(--primary);font-size:.9rem}.history-round-header{justify-content:space-between;align-items:baseline;gap:var(--space-3);display:flex}.history-round-date,.history-last-practiced{flex-shrink:0;font-size:.75rem}.history-retry-qa{border-top:1px dashed var(--border);padding-top:var(--space-2)}.spelling-drill{gap:var(--space-3);flex-direction:column;display:flex}.spelling-hint{color:var(--text-muted);font-size:.85rem}.spelling-word-row{gap:var(--space-2);padding:var(--space-3) 0;border-top:1px solid var(--border);flex-direction:column;display:flex}.spelling-word-row:first-of-type{border-top:none;padding-top:0}.spelling-word-info{align-items:baseline;gap:var(--space-2);flex-wrap:wrap;display:flex}.spelling-target{font-size:1.05rem;font-weight:700}.spelling-attempted{color:var(--text-muted);font-size:.85rem;text-decoration:line-through}.spelling-progress{color:var(--text-subtle);margin-left:auto;font-size:.8rem}.spelling-input{width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-s);background:var(--surface-2);color:var(--text)}.spelling-input:focus{border-color:var(--primary-border)}.spelling-textarea{font:inherit;resize:vertical}.spelling-done{align-items:center;gap:var(--space-2);font-weight:600;display:flex}.spelling-diff{line-height:1.6}.kbd{min-width:1.6em;font-family:var(--mono);color:var(--text-muted);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-xs);box-shadow:0 1px 0 var(--border-strong);justify-content:center;align-items:center;padding:.15em .5em;font-size:.75em;line-height:1.4;display:inline-flex}.kbd-help-overlay{background:var(--scrim);padding:var(--space-5);z-index:60;animation:tc-kbd-overlay-in var(--dur) var(--ease-out);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.kbd-help-card{gap:var(--space-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-l);width:100%;max-width:480px;max-height:min(85vh,640px);box-shadow:var(--shadow-3);padding:var(--space-5);animation:tc-kbd-card-in var(--dur) var(--ease-out);flex-direction:column;display:flex;overflow-y:auto}@keyframes tc-kbd-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes tc-kbd-card-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.kbd-help-header{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.kbd-help-header h2{font-size:1.1rem;font-weight:700}.kbd-help-close{border-radius:var(--radius-pill);width:32px;height:32px;color:var(--text-subtle);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.kbd-help-close:hover{background:var(--surface-2);color:var(--text)}.kbd-help-list{gap:var(--space-3);flex-direction:column;display:flex}.kbd-help-row{justify-content:space-between;align-items:center;gap:var(--space-4);display:flex}.kbd-help-keys{align-items:center;gap:var(--space-1);flex-shrink:0;display:inline-flex}.kbd-help-sep{color:var(--text-subtle);font-size:.85em}.settings-tts-heading{align-items:center;gap:var(--space-2);display:flex}.kbd-help-desc{color:var(--text-muted);text-align:right;font-size:.9rem}.speak-button{width:22px;height:22px;margin-left:var(--space-1);color:var(--text-muted);border-radius:var(--radius-pill);cursor:pointer;vertical-align:middle;transition:color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.speak-button:hover:not(:disabled){color:var(--primary);background:var(--primary-soft)}.speak-button[aria-pressed=true]{color:var(--primary)}.speak-button:disabled{opacity:.6;cursor:not-allowed}.speak-button-spin{animation:speak-button-spin var(--dur-slow) linear infinite}@keyframes speak-button-spin{to{transform:rotate(360deg)}}.speak-error{color:var(--text-muted);font-size:.8rem}.settings-subheading{font-size:.95rem;font-weight:700}.toggle-row,.field-grid label.toggle-row{align-items:center;gap:var(--space-2);color:var(--text);cursor:pointer;flex-direction:row;font-size:.95rem;font-weight:600;display:flex}.level-panel{gap:var(--space-2);flex-direction:column;display:flex}.level-row{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-s);background:var(--surface-2);flex-wrap:wrap;display:flex}.level-row-language{flex-shrink:0;min-width:7em;font-weight:600}.level-row-estimate{align-items:baseline;gap:var(--space-2);color:var(--text-muted);flex:1;font-size:.85rem;display:flex}.level-row-band{color:var(--primary);font-size:.9rem;font-weight:700}.level-row-select{padding:var(--space-1) calc(var(--space-2) + 18px) var(--space-1) var(--space-2);background-color:var(--surface);background-position:right var(--space-2) center;flex-shrink:0}.settings-tab-bar{border-radius:var(--radius-pill);background:var(--surface-2);border:1px solid var(--border);flex-wrap:nowrap;align-self:flex-start;gap:2px;max-width:100%;padding:2px;display:flex;overflow-x:auto}.settings-tab{border-radius:var(--radius-pill);padding:var(--space-2) var(--space-4);color:var(--text-muted);white-space:nowrap;background:0 0;border:none;flex-shrink:0;font-size:.85rem;font-weight:600}.settings-tab:hover:not(:disabled){background:var(--surface-3);color:var(--text)}.settings-tab.active{background:var(--primary);color:var(--on-primary)}.settings-tab.active:hover:not(:disabled){background:var(--primary-hover);color:var(--on-primary)}.settings-tab-panel{gap:var(--space-4);flex-direction:column;display:flex}.sync-status{align-items:center;gap:var(--space-2);color:var(--text-muted);font-size:.9rem;display:flex}.sync-spin{animation:1s linear infinite sync-spin}@keyframes sync-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.sync-qr-card{padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-m);background:#fff;align-self:flex-start}.sync-url-row{align-items:center;gap:var(--space-2);display:flex}.sync-url-row input{min-width:0;padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-s);background:var(--surface-2);color:var(--text);font-family:var(--mono);flex:1;font-size:.85rem}.sync-summary-list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.sync-summary-row{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-s);background:var(--surface-2);display:flex}.sync-summary-store{font-weight:600}.sync-summary-counts{color:var(--text-muted);font-size:.85rem}.task-model-item{align-items:start;gap:var(--space-3);padding-bottom:var(--space-3);margin-bottom:var(--space-3);border-bottom:1px solid var(--border);grid-template-columns:90px minmax(0,1fr);display:grid}.task-model-item:last-of-type{border-bottom:none;margin-bottom:0;padding-bottom:0}.task-model-item>span{color:var(--text-muted);min-width:0;padding-top:var(--space-2);font-size:.8rem;font-weight:600}.task-model-item>span[data-tip]{cursor:help;text-underline-offset:2px;width:fit-content;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;position:relative}.task-model-item>span[data-tip]:hover:after{content:attr(data-tip);z-index:10;width:max-content;max-width:240px;padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-s);background:var(--surface-3);color:var(--text);box-shadow:var(--shadow-2);font-size:.75rem;line-height:1.5;position:absolute;top:calc(100% + 4px);left:0}.task-model-fields{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.task-model-field{align-items:center;gap:var(--space-1);min-width:0;display:flex}.task-model-field select{flex:auto;width:100%;min-width:0}.task-model-field .task-badge-network{background:var(--primary-soft-strong);color:var(--primary);border-radius:var(--radius-pill);white-space:nowrap;flex-shrink:0;padding:2px 6px;font-size:.62rem;font-weight:600}option.option-network{color:var(--primary)}.llm-row.llm-row-network{border:1px dashed var(--primary);background:var(--primary-soft)}.llm-row-badges{flex-wrap:wrap;gap:4px;display:flex}.network-share-models{gap:var(--space-1);flex-direction:column;display:flex}.network-share-models>label{color:var(--text-muted);margin-bottom:0;font-size:.8rem;font-weight:700}.network-share-list{gap:var(--space-2);margin-top:var(--space-1);grid-template-columns:repeat(auto-fill,minmax(200px,1fr));display:grid}.network-share-item{column-gap:var(--space-3);min-width:0;padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-s);background:var(--surface);cursor:pointer;transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);grid-template-columns:auto minmax(0,1fr);align-items:center;row-gap:1px;display:grid}.network-share-item:hover{background:var(--surface-2)}.network-share-item:has(input:checked){background:var(--primary-soft);border-color:var(--primary-border)}.network-share-item input[type=checkbox]{grid-row:1/3;margin:0}.network-share-item-label{min-width:0;color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;font-weight:600;overflow:hidden}.network-share-item-model{min-width:0;color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;overflow:hidden}.mistai-status-panel{border:1px solid var(--mistai-border,#d6dee8);background:var(--mistai-surface,#fff);border-radius:8px;flex-direction:column;gap:14px;padding:14px;display:flex}.mistai-status-line{color:var(--mistai-text,#1f2937);align-items:center;gap:8px;font-size:13px;display:flex}.mistai-status-dot{background:#94a3b8;border-radius:999px;flex:none;width:9px;height:9px}.mistai-status-dot.connecting,.mistai-status-dot.joining,.mistai-status-dot.searching{background:#b45309;animation:1.2s ease-in-out infinite mistai-status-pulse}.mistai-status-dot.connected{background:#16a34a}.mistai-status-dot.error{background:#dc2626}@keyframes mistai-status-pulse{0%,to{opacity:1}50%{opacity:.4}}.mistai-status-detail{color:var(--mistai-text-muted,#64748b);margin:4px 0 0;font-size:12px}.mistai-status-detail.error{color:#b91c1c}.mistai-status-details{margin-top:4px}.mistai-status-details>summary{cursor:pointer;color:var(--mistai-text-muted,#64748b);-webkit-user-select:none;user-select:none;font-size:12px}.mistai-status-details[open]>summary{margin-bottom:6px}.mistai-status-details h4{color:var(--mistai-text-strong,#0f172a);margin:10px 0 6px;font-size:13px}.mistai-hint{color:var(--mistai-text-muted,#64748b);margin:4px 0 0;font-size:12px}.mistai-peer-list,.mistai-log-list{flex-direction:column;gap:4px;margin:4px 0 0;padding:0;list-style:none;display:flex}.mistai-peer-list li,.mistai-log-list li{color:var(--mistai-text-muted,#64748b);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.mistai-log-more{border:1px solid var(--mistai-border,#d6dee8);background:var(--mistai-surface,#fff);color:var(--mistai-text-muted,#64748b);cursor:pointer;border-radius:999px;align-self:flex-start;margin-top:6px;padding:2px 8px;font-size:11px}.mistai-log-badge{color:var(--mistai-text-strong,#0f172a);background:#e2e8f0;border-radius:999px;align-items:center;margin-right:6px;padding:1px 7px;font-size:11px;font-weight:700;display:inline-flex}.mistai-log-badge.started{color:#1d4ed8;background:#dbeafe}.mistai-log-badge.streaming{color:#b45309;background:#fef3c7}.mistai-log-badge.done{color:#15803d;background:#dcfce7}.mistai-log-badge.error{color:#b91c1c;background:#fee2e2}.mistai-consumer-indicator{align-items:center;display:flex;position:relative}.mistai-consumer-indicator-toggle{border:1px solid var(--mistai-border,#d6dee8);background:var(--mistai-surface,#fff);color:var(--mistai-text,#1f2937);cursor:pointer;border-radius:999px;flex-shrink:0;align-items:center;gap:6px;padding:6px 10px;font-size:12px;display:flex}.mistai-consumer-indicator-label{white-space:nowrap}.mistai-consumer-indicator-detail{z-index:10;border:1px solid var(--mistai-border,#d6dee8);background:var(--mistai-surface,#fff);border-radius:8px;min-width:200px;padding:10px 12px;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 12px 30px #0f172a2e}.mistai-consumer-indicator-detail p{color:var(--mistai-text-muted,#64748b);margin:0;font-size:12px}.mistai-consumer-indicator-detail p.error{color:#b91c1c}.mistai-status-timestamp{color:var(--mistai-text-muted,#64748b);font-variant-numeric:tabular-nums;font-size:11px}.mistai-step-indicator{flex-wrap:wrap;gap:6px;margin:0 0 8px;padding:0;list-style:none;display:flex}.mistai-step-indicator li{border:1px solid var(--mistai-border,#d6dee8);background:var(--mistai-surface,#fff);color:var(--mistai-text-muted,#64748b);border-radius:999px;padding:2px 8px;font-size:11px}.mistai-step-indicator li.done{color:#16a34a;border-color:#16a34a}.mistai-step-indicator li.current{color:#b45309;border-color:#b45309;font-weight:700}.mistai-settings{flex-direction:column;gap:12px;display:flex}.mistai-settings-tabs{border-bottom:1px solid var(--mistai-border,#d6dee8);gap:4px;margin-bottom:4px;display:flex}.mistai-settings-tab{color:var(--mistai-text-muted,#64748b);cursor:pointer;transition:color var(--mistai-dur-fast,.15s) var(--mistai-ease,ease), border-color var(--mistai-dur-fast,.15s) var(--mistai-ease,ease);background:0 0;border:none;border-bottom:2px solid #0000;padding:8px 14px;font-size:.82rem;font-weight:600}.mistai-settings-tab:hover{color:var(--mistai-text,#1f2937)}.mistai-settings-tab.active{color:var(--mistai-primary,#0f766e);border-bottom-color:var(--mistai-primary,#0f766e)}.mistai-settings-tab-panel{flex-direction:column;gap:4px;display:flex}.mistai-server-list-header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.mistai-server-list-header label{color:var(--mistai-text-muted,#64748b);margin-bottom:0;font-size:12px;font-weight:700}.mistai-flat-section{margin-bottom:16px}.mistai-model-row-list{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;margin-bottom:8px;display:grid}.mistai-model-row{border-radius:var(--mistai-radius-s,8px);border:1px solid var(--mistai-border,#d6dee8);background:var(--mistai-surface,#fff);box-shadow:var(--mistai-shadow-1,0 1px 2px #0f172a0f);transition:background var(--mistai-dur-fast,.15s) var(--mistai-ease,ease), box-shadow var(--mistai-dur-fast,.15s) var(--mistai-ease,ease), transform var(--mistai-dur-fast,.15s) var(--mistai-ease,ease), border-color var(--mistai-dur-fast,.15s) var(--mistai-ease,ease);flex-direction:column;align-items:flex-start;gap:6px;padding:10px 26px 10px 10px;display:flex;position:relative}.mistai-model-row:hover{background:var(--mistai-surface-2,#f1f5f9);box-shadow:var(--mistai-shadow-2,0 4px 10px #0f172a14);transform:translateY(-1px)}.mistai-flat-section-connection .mistai-model-row{background:var(--mistai-primary-soft,#ecfdf9)}.mistai-flat-section-models .mistai-model-row{background:var(--mistai-surface-3,#e7ecf2)}.mistai-model-row-main{text-align:left;cursor:pointer;width:100%;min-width:0;color:inherit;font:inherit;background:0 0;border:none;flex-direction:column;align-items:flex-start;gap:2px;padding:0;display:flex}.mistai-model-row-label{white-space:nowrap;text-overflow:ellipsis;max-width:100%;color:var(--mistai-text,#1f2937);font-size:.82rem;font-weight:600;overflow:hidden}.mistai-model-row-model{max-width:100%;color:var(--mistai-text-muted,#64748b);white-space:nowrap;text-overflow:ellipsis;font-size:.72rem;overflow:hidden}.mistai-model-row-provider{max-width:100%;color:var(--mistai-text-muted,#64748b);white-space:nowrap;text-overflow:ellipsis;font-size:.68rem;font-style:italic;overflow:hidden}.mistai-model-row-badges{flex-wrap:wrap;gap:4px;display:flex}.mistai-task-badge{background:var(--mistai-primary-soft,#ecfdf9);color:var(--mistai-primary,#0f766e);border-radius:var(--mistai-radius-pill,999px);white-space:nowrap;padding:2px 6px;font-size:.62rem;font-weight:600}.mistai-model-row-remove{flex-shrink:0;position:absolute;top:6px;right:6px}.mistai-model-row.mistai-model-row-editing{background:var(--mistai-surface-2,#f1f5f9);border:1px solid var(--mistai-border,#d6dee8);box-shadow:none;flex-direction:column;grid-column:1/-1;align-items:stretch;gap:8px;padding:10px;transform:none}.mistai-model-row-edit-fields{flex-direction:column;gap:8px;display:flex}.mistai-model-row-edit-fields input,.mistai-model-row-edit-fields select{width:100%}.mistai-chip-remove{width:16px;height:16px;color:var(--mistai-text-muted,#64748b);cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;line-height:1;display:flex}.mistai-chip-remove:hover{color:var(--mistai-danger,#dc2626);background:var(--mistai-danger-soft,#fee2e2)}.mistai-connection-form-model-field{align-items:center;gap:8px;display:flex}.mistai-connection-form-model-field select,.mistai-connection-form-model-field input{flex:auto;min-width:0}.mistai-model-row-add-actions{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.mistai-grid-add-tile{border:1px dashed var(--mistai-border-strong,#94a3b8);border-radius:var(--mistai-radius-s,8px);min-height:64px;color:var(--mistai-text-muted,#64748b);cursor:pointer;transition:all var(--mistai-dur-fast,.15s) var(--mistai-ease,ease);background:0 0;flex-direction:column;justify-content:center;align-items:center;gap:6px;font-size:.72rem;display:flex}.mistai-grid-add-tile:hover{border-color:var(--mistai-primary,#0f766e);color:var(--mistai-primary,#0f766e);background:var(--mistai-primary-soft,#ecfdf9)}.mistai-grid-add-tile:disabled{opacity:.4;cursor:not-allowed}.mistai-connection-form-btn{background:var(--mistai-border,#d6dee8);border:1px solid var(--mistai-border,#d6dee8);color:var(--mistai-text-muted,#64748b);cursor:pointer;transition:all var(--mistai-dur-fast,.15s) var(--mistai-ease,ease);white-space:nowrap;border-radius:8px;flex:auto;justify-content:center;align-items:center;gap:6px;padding:8px 12px;font-size:.78rem;display:flex}.mistai-connection-form-btn:hover{color:var(--mistai-text,#1f2937);background:var(--mistai-surface-2,#f1f5f9)}.mistai-connection-form-btn:disabled{opacity:.4;cursor:not-allowed}.mistai-connection-form-btn-primary{background:var(--mistai-primary,#0f766e);border-color:var(--mistai-primary,#0f766e);color:var(--mistai-on-primary,#fff)}.mistai-connection-form-btn-primary:hover{background:var(--mistai-primary-hover,#0d5f58);color:var(--mistai-on-primary,#fff)}.mistai-connection-form-warning{margin-top:-6px;font-style:italic}.mistai-flat-section .mistai-model-row.mistai-model-row-network{border:1px dashed var(--mistai-primary,#0f766e);background:var(--mistai-primary-soft,#ecfdf9)}.mistai-room-id-row{flex-direction:column;gap:4px;margin-bottom:16px;display:flex}.mistai-room-id-row span{color:var(--mistai-text-muted,#64748b);font-size:12px;font-weight:700}.mistai-role-group{flex-direction:column;gap:12px;display:flex}.mistai-role-card{border:1px solid var(--mistai-border,#d6dee8);background:var(--mistai-surface,#fff);border-radius:8px;flex-direction:column;gap:6px;padding:12px;display:flex}.mistai-role-head{cursor:pointer;flex-direction:row;align-items:center;gap:8px;display:flex}.mistai-role-head input[type=checkbox]{flex:none;width:16px;height:16px;margin:0}.mistai-role-title{color:var(--mistai-text-strong,#0f172a);align-items:center;gap:6px;font-size:14px;font-weight:700;display:inline-flex}.mistai-role-desc{color:var(--mistai-text-muted,#64748b);margin:0;font-size:12px;line-height:1.4}.mistai-role-body{border-top:1px solid var(--mistai-border,#d6dee8);flex-direction:column;gap:10px;margin-top:4px;padding-top:10px;display:flex}.mistai-share-section{flex-direction:column;gap:4px;display:flex}.mistai-share-section>label{color:var(--mistai-text-muted,#64748b);margin-bottom:0;font-size:12px;font-weight:700}.mistai-share-list{flex-direction:column;gap:6px;margin-top:4px;display:flex}.mistai-share-item{border:1px solid var(--mistai-border,#d6dee8);border-radius:var(--mistai-radius-s,8px);background:var(--mistai-surface,#fff);cursor:pointer;min-width:0;transition:background var(--mistai-dur-fast,.15s) var(--mistai-ease,ease), border-color var(--mistai-dur-fast,.15s) var(--mistai-ease,ease);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:1px 10px;padding:8px 10px;display:grid}.mistai-share-item:hover{background:var(--mistai-surface-2,#f1f5f9)}.mistai-share-item:has(input:checked){background:var(--mistai-primary-soft,#ecfdf9);border-color:var(--mistai-primary,#0f766e)}.mistai-share-item input[type=checkbox]{grid-row:1/3;margin:0}.mistai-share-item-label{min-width:0;color:var(--mistai-text,#1f2937);white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;font-weight:600;overflow:hidden}.mistai-share-item-model{min-width:0;color:var(--mistai-text-muted,#64748b);white-space:nowrap;text-overflow:ellipsis;font-size:.72rem;font-weight:400;overflow:hidden}.mistai-task-model-item{border-bottom:1px solid var(--mistai-border,#d6dee8);grid-template-columns:60px minmax(0,1fr);align-items:start;gap:8px;margin-bottom:12px;padding-bottom:12px;display:grid}.mistai-task-model-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.mistai-task-model-item>span{color:var(--mistai-text-muted,#64748b);min-width:0;padding-top:8px;font-size:.7rem}.mistai-task-model-item>span[data-tip]{cursor:help;text-underline-offset:2px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;position:relative}.mistai-task-model-item>span[data-tip]:hover:after{content:attr(data-tip);z-index:10;border:1px solid var(--mistai-border,#d6dee8);border-radius:var(--mistai-radius-s,8px);background:var(--mistai-surface-3,#e7ecf2);width:max-content;max-width:240px;color:var(--mistai-text,#1f2937);box-shadow:var(--mistai-shadow-2,0 4px 10px #0f172a14);padding:6px 8px;font-size:.7rem;line-height:1.5;position:absolute;top:calc(100% + 4px);left:0}.mistai-task-model-fields{flex-direction:column;gap:6px;min-width:0;display:flex}.mistai-task-model-field{min-width:0;display:block}.mistai-task-model-field select{width:100%;min-width:0}.mistai-task-badge-network{flex-shrink:0}option.mistai-option-network{color:var(--mistai-primary,#0f766e)}.mistai-error-text{color:var(--mistai-danger,#dc2626);margin:0 0 8px;font-size:.72rem;line-height:1.4}.grammar-explain{margin-top:var(--space-2)}.grammar-explain-toggle{padding:var(--space-1) 0;font-size:.85rem}.grammar-explain-panel{margin-top:var(--space-2);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-s);background:var(--surface-2);gap:var(--space-2);flex-direction:column;display:flex}.grammar-explain-error{align-items:flex-start;gap:var(--space-2);flex-direction:column;display:flex}.grammar-points{gap:var(--space-3);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.grammar-point{gap:var(--space-1);padding-bottom:var(--space-2);border-bottom:1px dashed var(--border);flex-direction:column;display:flex}.grammar-point:last-child{border-bottom:none;padding-bottom:0}.grammar-point-pattern{color:var(--text);font-weight:700}.grammar-point-explanation{color:var(--text-muted);font-size:.9rem;line-height:1.6}.grammar-point-example{font-family:var(--mono);color:var(--primary);background:var(--primary-soft);border-radius:var(--radius-xs);padding:var(--space-2) var(--space-3);font-size:.85rem}.grammar-point-example-label{font-family:var(--sans);color:var(--text-subtle);text-transform:uppercase;letter-spacing:.04em;margin-right:var(--space-1);font-size:.75rem;font-weight:700}.reading-level-badge{white-space:nowrap}.reading-passage-list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.reading-passage-item{align-items:center;gap:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-m);padding:var(--space-1);transition:border-color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease);display:flex}.reading-passage-item:hover{border-color:var(--border-strong)}.reading-passage-item-active{border-color:var(--primary-border);background:var(--primary-soft)}.reading-passage-open{align-items:flex-start;gap:var(--space-1);padding:var(--space-2) var(--space-3);text-align:left;background:0 0;border:none;flex-direction:column;flex:1;min-width:0;display:flex}.reading-passage-open:hover{background:0 0}.reading-passage-title{color:var(--text);font-weight:600}.reading-passage-date{font-size:.8rem}.reading-passage-chips{gap:var(--space-1);flex-wrap:wrap;display:flex}.reading-review-words h3,.reading-pane h3{font-size:.95rem;font-weight:700}.reading-review-words{gap:var(--space-2);flex-direction:column;display:flex}.reading-sentences{gap:var(--space-3);flex-direction:column;display:flex}.reading-sentence{border-bottom:1px solid var(--border);padding-bottom:var(--space-2)}.reading-sentence:last-child{border-bottom:none;padding-bottom:0}.reading-sentence-active{background:var(--primary-soft);border-radius:var(--radius-m);box-shadow:inset 0 0 0 1px var(--primary-border)}.reading-sentence-row{align-items:center;gap:var(--space-2);display:flex}.reading-sentence-toggle{padding:var(--space-1) 0;text-align:left;color:var(--text);background:0 0;border:none;flex:1;font-size:1.05rem;line-height:1.6}.reading-sentence-toggle:hover{color:var(--primary);background:0 0}.reading-sentence-translation{margin-top:var(--space-1);color:var(--text-muted);font-size:.9rem}.reading-sentence .reading-aid{margin:0}.talk-level-badge{white-space:nowrap}.talk-session-list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.talk-session-item{align-items:center;gap:var(--space-2);display:flex}.talk-session-open{text-align:left;background:var(--surface-2);flex-direction:column;flex:1;align-items:flex-start;gap:2px}.talk-session-title{font-weight:600}.talk-session-meta{align-items:center;gap:var(--space-2);color:var(--text-muted);font-size:.8rem;display:flex}.talk-ended-badge{padding:2px var(--space-2);border-radius:var(--radius-pill);background:var(--surface-3);color:var(--text-subtle);flex-shrink:0;font-size:.7rem;font-weight:600}.talk-session-delete{color:var(--text-subtle);flex-shrink:0}.talk-session-delete:hover:not(:disabled){color:var(--danger-text);border-color:var(--danger-border);background:var(--danger-soft)}.talk-scenario{color:var(--text-muted);background:var(--surface-2);border-radius:var(--radius-s);padding:var(--space-3) var(--space-4);line-height:1.6}.talk-log{gap:var(--space-3);flex-direction:column;display:flex}.talk-bubble{gap:var(--space-1);max-width:82%;padding:var(--space-2) var(--space-3);border-radius:var(--radius-m);flex-direction:column;line-height:1.6;display:flex}.talk-bubble-assistant{background:var(--surface-2);color:var(--text);border-bottom-left-radius:var(--radius-xs);align-self:flex-start}.talk-bubble-learner{background:var(--primary-soft);color:var(--text);border-bottom-right-radius:var(--radius-xs);align-self:flex-end}.talk-bubble-text{white-space:pre-wrap}.talk-bubble-actions{justify-content:flex-end;display:flex}.talk-bubble-assistant .talk-bubble-actions{justify-content:flex-start}.talk-bubble-translation-row{margin-top:var(--space-1)}.talk-bubble-translation-toggle{font-size:.78rem}.talk-bubble-translation{margin-top:var(--space-1);color:var(--text-muted);font-size:.9rem}.talk-correction{border-top:1px dashed var(--border-strong);padding-top:var(--space-1);margin-top:var(--space-1)}.talk-correction-toggle{font-size:.78rem}.talk-correction-body{gap:var(--space-1);padding-top:var(--space-1);flex-direction:column;display:flex}.talk-correction-reasons{color:var(--text-muted);font-size:.85rem;line-height:1.5}.talk-correction-auto-added{color:var(--text-subtle);margin-top:var(--space-1);font-size:.78rem;line-height:1.5}.talk-typing-practice{margin-top:var(--space-1)}.talk-typing-practice-toggle{font-size:.78rem}.talk-sentence-cards{margin-top:var(--space-1)}.talk-sentence-cards-save{font-size:.78rem}.talk-sentence-cards-status,.talk-sentence-cards-error{margin:0;font-size:.78rem}.talk-typing-indicator{color:var(--text-subtle);align-self:flex-start;font-size:.85rem;font-style:italic}.talk-composer{gap:var(--space-2);border-top:1px solid var(--border);padding-top:var(--space-3);flex-direction:column;display:flex}.talk-edit-form{gap:var(--space-2);flex-direction:column;display:flex}.talk-edit-toggle{align-items:center;gap:var(--space-1);font-size:.78rem;display:inline-flex}.talk-extract{border-top:1px solid var(--border);padding-top:var(--space-3);gap:var(--space-2);flex-direction:column;display:flex}.ob-overlay{background:var(--scrim);padding:var(--space-5);z-index:50;animation:tc-ob-overlay-in var(--dur) var(--ease-out);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.ob-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-l);width:100%;max-width:600px;max-height:min(90vh,720px);box-shadow:var(--shadow-3);animation:tc-ob-card-in var(--dur) var(--ease-out);flex-direction:column;display:flex;position:relative;overflow:hidden}@keyframes tc-ob-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes tc-ob-card-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.ob-close{top:var(--space-3);right:var(--space-3);cursor:pointer;color:var(--text-subtle);padding:var(--space-2);border-radius:var(--radius-pill);transition:background var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);background:0 0;border:none;line-height:0;position:absolute}.ob-close:hover{color:var(--text);background:var(--surface-2)}.ob-body{padding:var(--space-6) var(--space-6) var(--space-4);gap:var(--space-4);flex-direction:column;display:flex;overflow-y:auto}.ob-hero{color:var(--primary);padding:var(--space-4) 0 0;justify-content:center;display:flex}.ob-hero>svg{box-sizing:content-box;padding:var(--space-4);background:var(--primary-soft);border-radius:var(--radius-pill)}.ob-step-head{align-items:center;gap:var(--space-3);color:var(--primary);display:flex}.ob-step-head>svg{box-sizing:content-box;padding:var(--space-2);background:var(--primary-soft);border-radius:var(--radius-pill);flex:none}.ob-step-head .ob-title{margin:0}.ob-title{text-align:center;color:var(--text);margin:0;font-size:1.3rem}.ob-step-head .ob-title{text-align:left;font-size:1.1rem}.ob-text{color:var(--text-muted);margin:0;line-height:1.7}.ob-text-subtle{color:var(--text-subtle);font-size:.9rem}.ob-mode-toggle{gap:var(--space-2);flex-wrap:wrap;display:flex}.ob-mode-option{font:inherit;cursor:pointer;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--surface-2);color:var(--text-muted);transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);font-weight:600;display:inline-flex}.ob-mode-option:hover{background:var(--surface-3);color:var(--text)}.ob-mode-option.is-active{background:var(--primary-soft);border-color:var(--primary);color:var(--primary)}.ob-field{gap:var(--space-1);flex-direction:column;display:flex}.ob-label{color:var(--text);font-size:.85rem;font-weight:600}.ob-input{font:inherit;color:var(--text);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-s);padding:var(--space-2) var(--space-3);width:100%;min-width:0;transition:border-color var(--dur-fast) var(--ease)}.ob-input:focus{outline:2px solid var(--ring);outline-offset:0;border-color:#0000}.ob-model-row{gap:var(--space-2);align-items:center;display:flex}.ob-model-row .ob-input{flex:auto}.ob-icon-btn{font:inherit;cursor:pointer;border:1px solid var(--border);background:var(--surface-2);color:var(--text);border-radius:var(--radius-s);padding:var(--space-2) var(--space-3);transition:background var(--dur-fast) var(--ease);flex:none}.ob-icon-btn:hover:not(:disabled){background:var(--surface-3)}.ob-icon-btn:disabled{opacity:.5;cursor:default}.ob-test-row{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.ob-test-ok{align-items:center;gap:var(--space-1);color:var(--success);white-space:nowrap;font-size:.9rem;display:inline-flex}.ob-error{color:var(--danger-text);margin:0;font-size:.85rem}.spinner{border-radius:var(--radius-pill);border:2px solid var(--border-strong);border-top-color:var(--primary);width:14px;height:14px;animation:.7s linear infinite tc-ob-spin;display:inline-block}@keyframes tc-ob-spin{to{transform:rotate(360deg)}}.ob-btn{font:inherit;cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-5);border-radius:var(--radius-pill);border:1px solid var(--border);color:var(--text);transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);white-space:nowrap;background:0 0;flex:none;align-self:flex-start;font-weight:600;display:inline-flex}.ob-btn:hover:not(:disabled){background:var(--surface-2);border-color:var(--border-strong)}.ob-btn:disabled{opacity:.5;cursor:default}.ob-btn-accent{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.ob-btn-accent:hover:not(:disabled){background:var(--primary-hover);border-color:var(--primary-hover)}.ob-feature-list{gap:var(--space-3);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.ob-feature-list li{align-items:flex-start;gap:var(--space-3);color:var(--text);line-height:1.6;display:flex}.ob-feature-list li>svg{color:var(--primary);background:var(--primary-soft);box-sizing:content-box;border-radius:var(--radius-pill);flex:none;padding:6px}.ob-footer{justify-content:space-between;align-items:center;gap:var(--space-3) var(--space-4);padding:var(--space-4) var(--space-6) var(--space-5);border-top:1px solid var(--border);flex-wrap:wrap;display:flex}.ob-dots{gap:var(--space-2);display:flex}.ob-dot{border-radius:var(--radius-pill);background:var(--border-strong);width:8px;height:8px;transition:background var(--dur-fast) var(--ease), width var(--dur) var(--ease)}.ob-dot.is-active{background:var(--primary);width:22px}.ob-footer-actions{justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap;display:flex}@media (width<=480px){.ob-body{padding:var(--space-4) var(--space-4) var(--space-3)}.ob-footer{padding:var(--space-3) var(--space-4) var(--space-4);justify-content:center}.ob-dots{order:1;justify-content:center;width:100%}.ob-footer-actions{order:2;justify-content:center;width:100%}}
