:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:#f3f4f7;--surface:#fff;--surface-2:#f1f2f6;--surface-3:#e6e8ee;--border:#10142217;--border-strong:#1014222e;--text:#151821;--muted:#626977;--faint:#979dab;--accent:#5566f6;--accent-strong:#4453e6;--accent-soft:#5566f621;--on-accent:#fff;--ai:#8250f0;--ai-soft:#8250f01f;--danger:#e03e45;--danger-soft:#e03e451f;--ok:#2c9a62;--new:#5566f633;--learning-1:#f096005c;--learning-2:#f0960042;--learning-3:#f0960029;--learning-4:#f0960014;--amber:#e08a00;--selected:#5566f65c;--radius:16px;--radius-sm:10px;--shadow:0 18px 50px #0c101e2e, 0 2px 8px #0c101e14;-webkit-font-smoothing:antialiased;font-family:-apple-system,BlinkMacSystemFont,Inter,Segoe UI,system-ui,sans-serif;font-size:16px;line-height:1.5}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#0d0e12;--surface:#15171c;--surface-2:#1c1f26;--surface-3:#262a33;--border:#ffffff12;--border-strong:#ffffff26;--text:#eceef3;--muted:#9aa0ac;--faint:#686e7a;--accent:#7d8bff;--accent-strong:#97a2ff;--accent-soft:#7d8bff29;--on-accent:#0d0e12;--ai:#a98bff;--ai-soft:#a98bff26;--danger:#ff6369;--danger-soft:#ff636924;--ok:#4cc38a;--new:#7d8bff42;--amber:#f5a524;--selected:#7d8bff6b;--shadow:0 18px 50px #0000008c, 0 2px 8px #0000004d}}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0}a{color:var(--accent);text-decoration:none}h1,h2,h3,p{margin:0}h1{letter-spacing:-.01em;font-size:22px}h2{font-size:15px;font-weight:650}h3{text-transform:uppercase;letter-spacing:.07em;color:var(--muted);font-size:12px;font-weight:650}code,kbd{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}code{background:var(--surface-3);border-radius:5px;padding:1px 5px}kbd{text-align:center;border:1px solid var(--border-strong);background:var(--surface-2);min-width:22px;color:var(--text);border-bottom-width:2px;border-radius:6px;padding:1px 6px;display:inline-block}.muted{color:var(--muted)}.small{font-size:13px}.error{color:var(--danger)}button,input,select{font:inherit;color:inherit}button{cursor:pointer;border:1px solid var(--border);background:var(--surface-2);color:var(--text);border-radius:var(--radius-sm);justify-content:center;align-items:center;gap:6px;padding:7px 12px;transition:background-color .15s,border-color .15s,color .15s,opacity .15s,transform .1s;display:inline-flex}button:hover:not(:disabled){background:var(--surface-3)}button:active:not(:disabled){transform:scale(.97)}button:disabled{opacity:.45;cursor:default}button:focus-visible,input:focus-visible,select:focus-visible,[role=button]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button.primary{background:var(--accent);color:var(--on-accent);border-color:#0000;font-weight:600}button.primary:hover:not(:disabled){background:var(--accent-strong)}button.danger{background:var(--danger);color:#fff;border-color:#0000}button.danger:hover:not(:disabled){background:var(--danger);filter:brightness(1.08)}button.ghost,a.ghost{color:var(--muted);background:0 0;border-color:#0000}button.ghost:hover:not(:disabled){background:var(--surface-2);color:var(--text)}button.ai{background:var(--ai-soft);color:var(--ai);border-color:#0000;font-weight:600}button.ai:hover:not(:disabled){background:var(--ai);color:#fff}.icon-button{flex-shrink:0;width:38px;height:38px;padding:0}.icon-button.small{width:32px;height:32px}a.icon-button{border-radius:var(--radius-sm);color:var(--muted);justify-content:center;align-items:center;display:inline-flex}a.icon-button:hover{background:var(--surface-2);color:var(--text)}button svg{flex-shrink:0}input,select{border:1px solid var(--border);background:var(--surface-2);border-radius:var(--radius-sm);min-width:0;padding:8px 10px}select{cursor:pointer}input:hover,select:hover{border-color:var(--border-strong)}input[type=range]{accent-color:var(--accent);background:0 0;border:none;padding:0}progress{accent-color:var(--accent)}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px 18px}.topbar{justify-content:space-between;align-items:center;gap:12px;padding:14px 0;display:flex}.toggle{cursor:pointer;color:var(--muted);-webkit-user-select:none;user-select:none;white-space:nowrap;align-items:center;gap:8px;font-size:13px;display:inline-flex}.toggle input{appearance:none;background:var(--surface-3);border:1px solid var(--border-strong);cursor:pointer;border-radius:999px;width:32px;height:18px;margin:0;padding:0;transition:background-color .15s;position:relative}.toggle input:after{content:"";background:var(--muted);border-radius:50%;width:12px;height:12px;transition:transform .15s,background-color .15s;position:absolute;top:2px;left:2px}.toggle input:checked{background:var(--accent);border-color:#0000}.toggle input:checked:after{background:#fff;transform:translate(14px)}.badge{background:var(--surface-3);color:var(--muted);white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:1px 8px;font-size:12px;font-weight:550;display:inline-flex}.badge.ai{background:var(--ai-soft);color:var(--ai)}.done{color:var(--ok);align-items:center;gap:5px;font-size:13px;display:inline-flex}.meter{background:var(--surface-3);border-radius:999px;height:6px;overflow:hidden}.meter>span{border-radius:inherit;background:var(--accent);height:100%;transition:width .4s;display:block}.meter.ai>span{background:var(--ai)}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.loading{animation:1.2s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.45}}.skeleton{background:var(--surface-3);border-radius:6px;height:12px;animation:1.2s ease-in-out infinite pulse;display:block}.login{place-items:center;min-height:100dvh;padding:16px;display:grid}.login-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:min(360px,100%);box-shadow:var(--shadow);gap:12px;padding:28px;display:grid}.login-card label{color:var(--muted);gap:4px;font-size:14px;display:grid}.login-card input{color:var(--text)}.library{gap:14px;max-width:860px;margin:0 auto;padding:0 16px 48px;display:grid}.upload{gap:10px;display:grid}.fields{grid-template-columns:2fr 2fr 1fr;gap:8px;display:grid}.progress-line{gap:4px;display:grid}.progress-line progress{width:100%}.videos{margin:8px 0 0;padding:0;list-style:none}.video{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}.video:first-child{border-top:none}.video-main{min-width:0;display:grid}.video-title{overflow-wrap:anywhere;font-weight:600}.video-error .video-title{color:var(--muted)}.confirm{align-items:center;gap:6px;display:inline-flex}.player-page{max-width:1500px;margin:0 auto;padding:0 20px 32px}.player-topbar{align-items:center;gap:10px;padding:12px 0;display:flex}.title-block{flex:1;min-width:0;display:grid}.title-block h1{text-overflow:ellipsis;white-space:nowrap;font-size:17px;font-weight:650;overflow:hidden}.title-block span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.usage-menu{position:relative}.usage-chip{background:var(--ai-soft);color:var(--ai);font-variant-numeric:tabular-nums;border-color:#0000;border-radius:999px;padding:6px 12px;font-size:13px;font-weight:600}.usage-chip:hover:not(:disabled){background:var(--ai-soft);filter:brightness(1.2)}.usage-chip.exhausted{background:var(--danger-soft);color:var(--danger)}.usage-popover{z-index:35;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);width:min(400px,100vw - 20px);box-shadow:var(--shadow);gap:14px;max-height:calc(100dvh - 80px);padding:14px 16px;animation:.14s ease-out pop;display:grid;position:absolute;top:calc(100% + 8px);right:0;overflow-y:auto}.usage-totals{grid-template-columns:auto 1fr;align-items:end;gap:18px;display:grid}.usage-totals>div{gap:2px;display:grid}.usage-totals strong{letter-spacing:-.02em;font-size:26px;line-height:1.1}.bars{grid-template-columns:repeat(7,1fr);align-items:end;gap:5px;height:58px;display:grid}.bars span{grid-template-rows:1fr auto;place-items:end center;gap:2px;height:100%;display:grid}.bars i{background:var(--ai);opacity:.75;border-radius:4px 4px 2px 2px;width:100%;max-width:22px;display:block}.bars span:last-child i{opacity:1}.bars small{color:var(--faint);font-size:10px}.usage-limits{gap:5px;display:grid}.usage-tasks{gap:4px;margin:0;padding:0;font-size:13px;list-style:none;display:grid}.usage-tasks li{grid-template-columns:1fr auto auto;gap:10px;display:grid}.limit-form{border-top:1px solid var(--border);gap:8px;padding-top:12px;display:grid}.limit-fields{grid-template-columns:1fr 1fr;gap:8px;display:grid}.limit-fields label{color:var(--muted);gap:3px;font-size:12px;display:grid}.limit-fields input{color:var(--text);font-variant-numeric:tabular-nums}.presets{flex-wrap:wrap;gap:6px;display:flex}.limit-actions{justify-content:flex-end;gap:6px;display:flex}.player-layout{grid-template-columns:minmax(0,1fr) clamp(300px,34vw,430px);align-items:start;gap:18px;display:grid}.stage{gap:12px;min-width:0;display:grid}.video-box{border-radius:var(--radius);background:#000;position:relative;overflow:hidden}.video-box video{cursor:pointer;width:100%;max-height:74vh;display:block}.video-box:fullscreen{border-radius:0;place-items:center;display:grid}.video-box:fullscreen video{max-height:100vh}.video-box:fullscreen .line.primary{font-size:clamp(24px,3vw,40px)}.overlay{pointer-events:none;justify-items:center;gap:6px;padding:0 6%;display:grid;position:absolute;bottom:20px;left:0;right:0}.line{text-align:center;white-space:pre-line;pointer-events:auto;color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);text-shadow:0 1px 2px #00000080;background:#08090cb8;border-radius:10px;padding:4px 12px}.line.primary{font-size:clamp(16px,2.2vw,27px);font-weight:500}.line.secondary{color:#dcdde3;font-size:clamp(13px,1.6vw,19px)}.line .word-new{background:#7d8bff80}.line .word-learning-1{background:#f5a5248c}.line .word-learning-2{background:#f5a5246b}.line .word-learning-3{background:#f5a5244d}.line .word-learning-4{background:#f5a5242e}.controls-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);gap:6px;padding:10px 14px 12px;display:grid}.seek-row{color:var(--muted);font-variant-numeric:tabular-nums;align-items:center;gap:10px;font-size:12px;display:flex}.seek-row input{cursor:pointer;flex:1;height:20px}.buttons-row{flex-wrap:wrap;align-items:center;gap:8px 16px;display:flex}.control-group{align-items:center;gap:4px;display:flex}.control-group.grow{flex:1;justify-content:flex-end}.control-label{color:var(--muted);align-items:center;gap:5px;margin-right:4px;font-size:13px;display:inline-flex}.fullscreen-mobile{display:none}.play-button{background:var(--accent);width:46px;height:46px;color:var(--on-accent);border-color:#0000;border-radius:50%;padding:0}.play-button:hover:not(:disabled){background:var(--accent-strong)}.chip-toggle{border-radius:999px;padding:5px 11px;font-size:13px;font-weight:600}.chip-toggle.on{background:var(--accent-soft);color:var(--accent);border-color:#0000}.chip-toggle.on:hover:not(:disabled){background:var(--accent-soft);filter:brightness(1.2)}.rate-select{border-radius:999px;padding:6px 8px;font-size:13px;font-weight:600}.volume-slider{width:84px}.explain-cta{border-radius:999px;padding:8px 16px}.tips{color:var(--muted);flex-wrap:wrap;gap:4px 18px;padding:0 4px;font-size:13px;display:flex}.tips span{align-items:center;gap:6px;display:inline-flex}.side-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;height:calc(100dvh - 88px);display:flex;position:sticky;top:12px;overflow:hidden}.tabs{border-bottom:1px solid var(--border);gap:4px;padding:8px;display:flex}.tabs button{color:var(--muted);border-radius:var(--radius-sm);background:0 0;border:none;flex:1;padding:9px;font-weight:600}.tabs button:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.tabs button.active{background:var(--surface-3);color:var(--text)}.tabs button svg{color:var(--ai)}.transcript-toolbar{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 12px;padding:10px 14px;display:flex}.transcript-toolbar .toggles{gap:16px;margin-left:auto;display:flex}.cue-list{overscroll-behavior:contain;flex:1;min-height:0;margin:0;padding:6px;list-style:none;overflow-y:auto}.cue-row{cursor:pointer;border-radius:12px;grid-template-columns:42px minmax(0,1fr) 40px;align-items:start;gap:6px;padding:8px 6px 8px 8px;transition:background-color .15s;display:grid}.cue-row:hover{background:var(--surface-2)}.cue-row.active{background:var(--accent-soft)}.cue-row.explained{box-shadow:inset 3px 0 0 var(--ai)}.cue-time{color:var(--faint);font-variant-numeric:tabular-nums;padding-top:4px;font-size:12px}.cue-row.active .cue-time{color:var(--accent);font-weight:600}.cue-text{white-space:pre-line;line-height:1.6}.cue-translation{color:var(--muted);white-space:pre-line;margin-top:3px;font-size:14px;display:block}.cue-action{width:38px;height:38px;color:var(--ai);opacity:0;background:0 0;border-color:#0000;border-radius:10px;padding:0}.cue-row:hover .cue-action,.cue-row.active .cue-action,.cue-row.explained .cue-action,.cue-action:focus-visible{opacity:1}.cue-action:hover:not(:disabled){background:var(--ai-soft)}@media (hover:none){.cue-action{opacity:.8}}.empty-state{text-align:center;color:var(--muted);justify-items:center;gap:10px;padding:40px 24px;display:grid}.empty-state svg{color:var(--ai)}.empty-state strong{color:var(--text)}.translate-box{gap:6px;min-width:0;display:grid}.translate-box .meter{width:220px;max-width:100%}.translate-status{color:var(--muted);align-items:center;gap:6px;font-size:13px;display:inline-flex}.word{cursor:pointer;border-radius:5px;padding:0 2px;transition:background-color .15s,box-shadow .15s}.word:hover{box-shadow:0 0 0 1.5px var(--accent)}.word-new{background:var(--new)}.word-learning-1{background:var(--learning-1)}.word-learning-2{background:var(--learning-2)}.word-learning-3{background:var(--learning-3)}.word-learning-4{background:var(--learning-4)}.word-selected{box-shadow:0 0 0 2px var(--accent)}.word-sibling{box-shadow:inset 0 -2px 0 var(--accent);background:0 0}.phrase{text-underline-offset:5px;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none;text-decoration:underline;text-decoration-thickness:2px}.phrase-1{text-decoration-color:#f09600f2}.phrase-2{text-decoration-color:#f09600b3}.phrase-3{text-decoration-color:#f0960073}.phrase-4{text-decoration-color:#f0960040}.span-selected,.word.span-selected{background:var(--selected);border-radius:0}.word-card{z-index:40;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;gap:10px;max-height:min(600px,100dvh - 16px);padding:14px 16px;animation:.14s ease-out pop;display:flex;position:fixed}.word-card-body{overscroll-behavior:contain;flex:0 auto;align-content:start;gap:12px;min-height:0;margin:0 -16px;padding:0 16px;display:grid;overflow-y:auto}@keyframes pop{0%{opacity:0;transform:translateY(4px)scale(.98)}}.word-card-head{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.word-card-head strong{letter-spacing:-.01em;padding-top:2px;font-size:22px;line-height:1.25}.word-forms{color:var(--muted);flex-wrap:wrap;gap:2px 10px;font-size:13px;display:flex}.word-forms b{color:var(--text);font-weight:600}.sibling-note{background:var(--accent-soft);border-radius:var(--radius-sm);padding:8px 10px;font-size:13px}.sound-row{gap:6px;display:flex}.sound-group{flex:1 1 0;min-width:0;display:flex}.sound{flex:1 1 0;justify-content:center;gap:7px;min-width:0;padding:7px 10px;font-size:13px}.sound-group .sound{border-top-right-radius:0;border-bottom-right-radius:0}.sound-settings{color:var(--muted);border-left:none;border-top-left-radius:0;border-bottom-left-radius:0;padding:0 9px}.sound-settings.active{background:var(--surface-3);color:var(--text)}.sound .badge{background:var(--surface-3);padding:0 6px;font-size:11px}.sound-group{position:relative}.sound-menu{z-index:50;background:var(--surface);border:1px solid var(--border-strong);min-width:max(100%,230px);max-width:260px;box-shadow:var(--shadow);border-radius:12px;gap:1px;padding:5px;display:grid;position:absolute;top:calc(100% + 5px);left:0}.sound-menu button{text-align:left;background:0 0;border:none;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:7px 9px;font-size:13px;display:flex}.sound-menu button>:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sound-menu button.active{background:var(--accent-soft);color:var(--accent)}.sound-menu button.active .badge{background:var(--surface)}.sound-menu .muted{align-items:center;gap:6px;padding:6px 9px;display:inline-flex}.speed-row{align-items:center;gap:8px;display:flex}.speed-label{color:var(--faint);font-size:12px}.segmented{background:var(--surface-2);border-radius:999px;gap:2px;padding:2px;display:inline-flex}.segmented button{color:var(--muted);background:0 0;border:none;border-radius:999px;padding:4px 10px;font-size:12px}.segmented button.active{background:var(--surface);color:var(--text);box-shadow:0 1px 2px #0c101e1f}.met-before{gap:6px;display:grid}.met-before ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.met-before li{grid-template-columns:auto minmax(0,1fr);align-items:baseline;gap:4px 8px;font-size:13px;display:grid}.met-before q{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.met-before .muted.small{grid-column:2}.met-before button{font-variant-numeric:tabular-nums;padding:1px 6px;font-size:12px}.section-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.section-label{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:5px;font-size:12px;font-weight:650;display:inline-flex}.ai-label{color:var(--ai)}.source-tabs{background:var(--surface-2);border-radius:999px;gap:2px;padding:2px;display:inline-flex}.source-tabs button{color:var(--muted);background:0 0;border:none;border-radius:999px;padding:3px 9px;font-size:12px}.source-tabs button.active{background:var(--surface-3);color:var(--text)}.source-name{color:var(--faint);font-size:12px}.dictionary{gap:6px;display:grid}.transcription{color:var(--muted);font-family:Charis SIL,Doulos SIL,Gentium Plus,Lucida Sans Unicode,system-ui,sans-serif;font-size:14px}.dict-group{gap:2px;display:grid}.pos{color:var(--accent);font-size:12px;font-style:italic}.senses{gap:3px;margin:0;padding-left:22px;font-size:15px;line-height:1.45;display:grid}.senses li::marker{color:var(--faint);font-size:12px}.example{color:var(--muted);font-size:13px;font-style:italic;display:block}.idioms{gap:3px;margin:0;padding:0;font-size:13px;list-style:none;display:grid}.idioms b{font-weight:600}.link-button{color:var(--accent);justify-self:start;padding:2px 0;font-size:13px}.link-button:hover:not(:disabled){color:var(--accent);background:0 0;text-decoration:underline}.ask-ai{gap:4px;display:grid}.ask-ai button{justify-content:flex-start;width:100%}.ask-ai kbd{opacity:.6;background:0 0;border-color:currentColor;margin-left:auto}.meaning{background:var(--ai-soft);border-radius:12px;gap:5px;padding:10px 12px;display:grid}.meaning-label{color:var(--ai);align-items:center;gap:5px;font-size:12px;font-weight:600;display:flex}.meaning-main{font-size:17px;font-weight:650}.meaning .skeleton:last-child{width:60%}.status-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.card-actions{gap:4px;margin-left:auto;display:inline-flex}.status.ignored.icon-button{color:var(--muted);border-radius:999px}.card-actions button{color:var(--faint)}.card-actions button:hover:not(:disabled){color:var(--text)}.status{border-radius:999px;padding:6px 11px;font-size:13px}.status.active{background:var(--accent);color:var(--on-accent);border-color:#0000}.status.known.active{background:var(--ok);color:#fff}.status.ignored.active{background:var(--surface-3);color:var(--text);border-color:var(--border-strong)}.levels{border:1px solid var(--border);background:var(--surface-2);border-radius:999px;align-items:center;gap:2px;padding:2px 2px 2px 11px;font-size:13px;display:inline-flex}.levels.active{border-color:var(--amber)}.levels button{background:0 0;border:none;border-radius:50%;width:30px;height:30px;padding:0;font-size:13px;font-weight:650}.levels button.active{background:var(--amber);color:#1a1200}.picking{background:var(--accent-soft);color:var(--accent);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;gap:6px;padding:6px 6px 6px 10px;font-size:13px;font-weight:600;display:flex}.hint{color:var(--faint);font-size:12px}.breakdown{flex:1;align-content:start;gap:14px;min-height:0;padding:12px 16px 24px;display:grid;overflow-y:auto}.breakdown-nav{align-items:center;gap:4px;display:flex}.breakdown-nav .time{color:var(--muted);font-variant-numeric:tabular-nums;margin-right:auto;font-size:13px}.breakdown-line{white-space:pre-line;font-size:19px;font-weight:500;line-height:1.5}.breakdown-line mark{background:var(--ai-soft);color:inherit;box-shadow:inset 0 -2px 0 var(--ai);border-radius:4px;padding:0 2px}.translation-block{border-left:3px solid var(--ai);gap:4px;padding:2px 0 2px 12px;display:grid}.breakdown-translation{white-space:pre-line;font-size:17px;font-weight:600}.notes{gap:8px;margin:0;padding:0;list-style:none;display:grid}.note{background:var(--surface-2);border-radius:12px;gap:5px;padding:10px 12px;display:grid}.note-head{flex-wrap:wrap;align-items:center;gap:6px 8px;display:flex}.note-head strong{font-size:15px}.note-head .learn{border-radius:999px;margin-left:auto;padding:4px 10px;font-size:12px}.note-head .in-vocab{color:var(--muted);margin-left:auto;font-size:12px}.note p{font-size:14px;line-height:1.55}.side-card>.chat-home,.side-card>.chat-view{flex:1;min-height:0}.chat-home{flex-direction:column;display:flex;overflow-y:auto}.chat-home-head{border-bottom:1px solid var(--border);padding:12px 14px}.chat-home-head button{width:100%}.chat-list{gap:2px;margin:0;padding:6px;list-style:none;display:grid}.chat-list li{border-radius:12px;grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.chat-list li:hover{background:var(--surface-2)}.chat-item{text-align:left;background:0 0;border-color:#0000;border-radius:12px;grid-template-columns:minmax(0,1fr);justify-content:start;justify-items:start;gap:1px;min-width:0;padding:9px 12px;display:grid}.chat-item:hover:not(:disabled){background:0 0}.chat-item-title,.chat-item-meta{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.chat-item-title{font-weight:600;line-height:1.4}.chat-item-meta{color:var(--muted);font-size:12px}.chat-delete{opacity:0;margin-right:6px}.chat-list li:hover .chat-delete,.chat-delete:focus-visible{opacity:1}@media (hover:none){.chat-delete{opacity:.55}}.chat-confirm{grid-column:1/-1;align-items:center;gap:6px;padding:7px 8px 7px 12px;font-size:13px;display:flex}.chat-confirm span{margin-right:auto}.chat-confirm button{padding:5px 10px;font-size:13px}.chat-error{padding:0 14px}.chat-view{flex-direction:column;min-height:0;display:flex}.chat-head{border-bottom:1px solid var(--border);align-items:center;gap:4px;padding:8px 10px;display:flex}.chat-title{text-overflow:ellipsis;white-space:nowrap;text-align:left;background:0 0;border-color:#0000;flex:1;justify-content:flex-start;min-width:0;padding:6px 8px;font-weight:650;display:block;overflow:hidden}.chat-title-input{flex:1;font-weight:650}.chat-messages{overscroll-behavior:contain;flex-direction:column;flex:1;gap:16px;min-height:0;padding:12px 14px 18px;display:flex;overflow:hidden auto}.chat-anchor{background:var(--surface-2);color:var(--muted);border-radius:12px;grid-template-columns:auto 1fr auto;align-items:start;gap:8px;padding:10px 12px;display:grid}.chat-anchor>svg{color:var(--ai);margin-top:3px}.chat-anchor-text{color:var(--text);white-space:pre-line;-webkit-line-clamp:4;-webkit-box-orient:vertical;font-weight:600;display:-webkit-box;overflow:hidden}.chat-hints{flex-wrap:wrap;gap:6px;display:flex}.chat-hints .chip-toggle{text-align:left;font-weight:500}.turn{flex-direction:column;gap:10px;min-width:0;display:flex}.user-message{flex-direction:row-reverse;align-self:flex-end;align-items:flex-start;gap:2px;max-width:88%;display:flex}.user-message p{background:var(--accent);color:var(--on-accent);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:16px 16px 4px;padding:8px 13px}.user-message .edit-button{opacity:0}.user-message:hover .edit-button,.edit-button:focus-visible{opacity:1}@media (hover:none){.user-message .edit-button{opacity:.7}}.user-edit{gap:6px;display:grid}.user-edit textarea{resize:vertical;color:var(--text);font:inherit;border-radius:12px}.assistant-message{grid-template-columns:minmax(0,1fr);gap:8px;min-width:0;display:grid}.assistant-part{grid-template-columns:minmax(0,1fr);gap:6px;min-width:0;display:grid}.reasoning{color:var(--muted);background:var(--surface-2);border-radius:10px;padding:6px 10px;font-size:13px}.reasoning summary{cursor:pointer;align-items:center;gap:5px;display:inline-flex}.reasoning p{white-space:pre-wrap;max-height:240px;margin-top:6px;overflow-y:auto}.tool-chip{max-width:100%;color:var(--muted);background:var(--ai-soft);border-radius:999px;justify-self:start;align-items:center;gap:6px;padding:4px 10px;font-size:13px;display:inline-flex}.tool-chip svg{color:var(--ai);flex-shrink:0}.tool-chip span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tool-chip.running{color:var(--text)}.markdown{overflow-wrap:anywhere;line-height:1.6}.markdown>*+*{margin-top:.6em}.markdown p,.markdown ul,.markdown ol{margin:0}.markdown ul,.markdown ol{padding-left:22px}.markdown li+li{margin-top:3px}.markdown h1,.markdown h2,.markdown h3{text-transform:none;letter-spacing:0;color:var(--text);margin:.8em 0 .3em;font-size:16px}.markdown code{font-size:13px}.markdown pre{background:var(--surface-2);border-radius:10px;padding:10px;overflow-x:auto}.markdown blockquote{border-left:3px solid var(--border-strong);color:var(--muted);margin:0;padding-left:12px}.markdown a{text-underline-offset:2px;text-decoration:underline}.markdown table{border-collapse:collapse;font-size:14px;display:block;overflow-x:auto}.markdown th,.markdown td{border:1px solid var(--border);padding:4px 8px}.typing{gap:4px;padding:8px 2px;display:inline-flex}.typing i{background:var(--muted);border-radius:50%;width:6px;height:6px;animation:1s ease-in-out infinite pulse}.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}.sources{flex-wrap:wrap;align-items:center;gap:4px 10px;min-width:0;font-size:13px;display:flex}.sources a{text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom;max-width:100%;display:inline-block;overflow:hidden}.turn-foot{align-items:center;gap:4px;min-height:28px;display:flex}.error-badge{color:var(--danger);background:var(--danger-soft)}.composer{border-top:1px solid var(--border);background:var(--surface);gap:6px;padding:10px 12px 12px;display:grid}.composer textarea{resize:none;width:100%;color:var(--text);font:inherit;border-radius:12px;max-height:40dvh;padding:9px 12px;line-height:1.45}.composer-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.composer-actions>:first-child{margin-right:auto}.thinking-toggle{color:var(--muted);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:999px;align-items:center;gap:5px;padding:4px 10px;font-size:13px;display:inline-flex}.thinking-toggle input{display:none}.thinking-toggle.on{background:var(--ai-soft);color:var(--ai);font-weight:600}.send-button{border-radius:50%;width:38px;height:38px;padding:0}.stop-button{border-radius:999px;padding:7px 14px}.cue-check{width:18px;height:18px;accent-color:var(--accent);margin:3px 0 0 8px}.cue-row.chosen{background:var(--accent-soft)}.choose-bar{border-top:1px solid var(--border);background:var(--surface);align-items:center;gap:8px;padding:10px 12px;font-size:14px;display:flex}.choose-bar>span{color:var(--muted);margin-right:auto}.sheet-backdrop{z-index:30;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#05060a73;animation:.15s ease-out fade;position:fixed;inset:0}@keyframes fade{0%{opacity:0}}.sheet{z-index:31;background:var(--surface);border-left:1px solid var(--border);width:min(520px,100vw);box-shadow:var(--shadow);flex-direction:column;animation:.2s ease-out slide;display:flex;position:fixed;top:0;bottom:0;right:0}@keyframes slide{0%{opacity:0;transform:translate(24px)}}.sheet-head{padding:max(12px, env(safe-area-inset-top)) 12px 12px 20px;border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;display:flex}.sheet-head h2{font-size:17px}.sheet-body{padding:0 20px 32px;overflow-y:auto}.sheet-section{border-bottom:1px solid var(--border);gap:10px;padding:18px 0;display:grid}.sheet-section:last-child{border-bottom:none}.field{color:var(--muted);gap:4px;font-size:13px;display:grid}.field select,.field input{color:var(--text);width:100%}.option-list{gap:6px;display:grid}.option{text-align:left;border-radius:12px;justify-content:space-between;padding:10px 12px}.option.active{border-color:var(--accent);background:var(--accent-soft)}.option.active svg{color:var(--accent)}.usage-numbers{color:var(--muted);justify-content:space-between;gap:8px;font-size:13px;display:flex}.keys{grid-template-columns:auto 1fr;align-items:center;gap:8px 14px;margin:0;font-size:14px;display:grid}.keys dt{gap:4px;display:flex}.keys dd{color:var(--muted);margin:0}.track-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.track-card{border:1px solid var(--border);background:var(--surface-2);border-radius:12px;gap:8px;padding:10px 12px;display:grid}.track-head{align-items:center;gap:6px;display:flex}.track-title{background:0 0;border-color:#0000;flex:1;margin-left:-6px;padding:4px 6px;font-weight:600}.track-title:hover,.track-title:focus{border-color:var(--border-strong);background:var(--surface)}.track-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;font-size:13px;display:flex}.track-meta select{color:var(--text);background:var(--surface);border-radius:8px;padding:4px 8px;font-size:13px}.track-error{color:var(--danger);font-size:13px}.dropzone{border:1.5px dashed var(--border-strong);cursor:pointer;color:var(--muted);border-radius:12px;align-items:center;gap:10px;padding:14px;font-size:14px;transition:border-color .15s,background-color .15s;display:flex}.dropzone:hover,.dropzone.over{border-color:var(--accent);background:var(--accent-soft);color:var(--text)}.dropzone input{display:none}.upload-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.upload-row .file-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:14px;overflow:hidden}@media (width<=820px){.player-layout{grid-template-columns:1fr}.side-card{height:auto;position:static}.cue-list,.chat-messages{max-height:62dvh}.side-card>.chat-home{max-height:70dvh}.breakdown{overflow:visible}}@media (width<=700px){.player-page{padding:0 10px 24px}.player-topbar{padding:8px 0}.settings-label,.chip-unit{display:none}.usage-popover{width:auto;position:fixed;top:56px;left:10px;right:10px}.usage-totals{grid-template-columns:1fr}.player-layout{gap:10px}.stage{display:contents}.video-box{z-index:5;border-radius:12px;position:sticky;top:0}.overlay{bottom:8px}.line.primary{font-size:15px}.line.secondary{font-size:13px}.controls-card{padding:8px 10px 10px}.buttons-row{gap:8px 10px}.control-group:first-child{flex-basis:100%}.control-group.grow{justify-content:flex-end}.volume-slider,.volume-button,.fullscreen-desktop,.loop-label,.control-label,.tips{display:none}.fullscreen-mobile{margin-left:auto;display:inline-flex}.rate-select{padding:6px 4px}.explain-cta{padding:8px 12px}.fields{grid-template-columns:1fr 1fr}.fields input:first-child{grid-column:1/-1}.cue-row{grid-template-columns:38px minmax(0,1fr) 40px}.chat-messages{max-height:max(220px,100dvh - 56.25vw - 250px)}.word-card{max-height:72dvh;padding-bottom:max(16px, env(safe-area-inset-bottom));border-radius:18px 18px 0 0;animation:.18s ease-out rise;right:0;width:auto!important;top:auto!important;bottom:0!important;left:0!important}.hint{display:none}.sheet{border-left:none;width:100vw}}@keyframes rise{0%{opacity:0;transform:translateY(30px)}}
