@font-face{font-family:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./newsreader-vietnamese-wght-normal-Czsa-EzN.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./newsreader-latin-ext-wght-normal-C-3rgBeH.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./newsreader-latin-wght-normal-CCVVNp6i.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:400;src:url(./be-vietnam-pro-vietnamese-400-normal-CRcqvyg1.woff2)format("woff2"),url(./be-vietnam-pro-vietnamese-400-normal-BuGn0gnm.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:400;src:url(./be-vietnam-pro-latin-ext-400-normal-CiZNW1ec.woff2)format("woff2"),url(./be-vietnam-pro-latin-ext-400-normal-DYBYyMQr.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:400;src:url(./be-vietnam-pro-latin-400-normal-PpnXBOrz.woff2)format("woff2"),url(./be-vietnam-pro-latin-400-normal-bXgqVju9.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:500;src:url(./be-vietnam-pro-vietnamese-500-normal-DREgrEoJ.woff2)format("woff2"),url(./be-vietnam-pro-vietnamese-500-normal-CfdwVo8-.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:500;src:url(./be-vietnam-pro-latin-ext-500-normal-h0Fp6aX0.woff2)format("woff2"),url(./be-vietnam-pro-latin-ext-500-normal-CK0UkkKf.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:500;src:url(./be-vietnam-pro-latin-500-normal-B6LVzGNe.woff2)format("woff2"),url(./be-vietnam-pro-latin-500-normal-BJkVuMHw.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:600;src:url(./be-vietnam-pro-vietnamese-600-normal-nyU-ZL2p.woff2)format("woff2"),url(./be-vietnam-pro-vietnamese-600-normal-DkpCIyan.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:600;src:url(./be-vietnam-pro-latin-ext-600-normal-BNd8euf0.woff2)format("woff2"),url(./be-vietnam-pro-latin-ext-600-normal-BeUwKxhG.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:600;src:url(./be-vietnam-pro-latin-600-normal-BZDkUTrt.woff2)format("woff2"),url(./be-vietnam-pro-latin-600-normal-5IO4e7bK.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(./jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(./jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(./jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(./jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(./jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--font-serif:"Newsreader Variable", Newsreader, Georgia, serif;--font-sans:"Be Vietnam Pro", "Segoe UI", system-ui, sans-serif;--font-mono:"JetBrains Mono Variable", "JetBrains Mono", Consolas, monospace;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--control-h:32px;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-pill:24px;--bg-base:#fdfbf7;--bg-panel:#f4f2ee;--bg-elevated:#fff;--bg-brand-soft:#e1eae8;--border-subtle:#e5e2dc;--border-strong:#8a857f;--text-primary:#2d2b2a;--text-muted:#6f6b68;--text-disabled:#a8a5a0;--text-brand:#476e64;--brand:#57877a;--action-primary:#476e64;--action-primary-hover:#395850;--action-primary-pressed:#29403a;--on-action-primary:#fff;--focus-ring:#57877a;--success:#56703e;--warning:#8d6225;--warning-fill:#d29e55;--danger:#9f4d3c;--action-danger:#b85a46;--action-danger-hover:#9f4d3c;--on-action-danger:#fff;--viz-2:#ad782e;--viz-3:#67767e;--viz-4:#b85a46;--viz-5:#8a6e8c;--viz-6:#56703e;--shadow-float:0 8px 32px #2d2b2a29}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg-base:#1e1d1c;--bg-panel:#2a2928;--bg-elevated:#353332;--bg-brand-soft:#29403a;--border-subtle:#454341;--border-strong:#8a857f;--text-primary:#ebe9e4;--text-muted:#a8a5a0;--text-disabled:#6e6a66;--text-brand:#9ebcb4;--brand:#80a89d;--action-primary:#80a89d;--action-primary-hover:#9ebcb4;--action-primary-pressed:#c3d5d0;--on-action-primary:#1e1d1c;--focus-ring:#80a89d;--success:#8daa6c;--warning:#d29e55;--warning-fill:#d29e55;--danger:#cd998e;--action-danger:#bd796b;--action-danger-hover:#cd998e;--on-action-danger:#1e1d1c;--viz-2:#d29e55;--viz-3:#8e9ca3;--viz-4:#cd998e;--viz-5:#a08aa1;--viz-6:#8daa6c;--shadow-float:0 8px 32px #00000080}}:root[data-theme=dark]{--bg-base:#1e1d1c;--bg-panel:#2a2928;--bg-elevated:#353332;--bg-brand-soft:#29403a;--border-subtle:#454341;--border-strong:#8a857f;--text-primary:#ebe9e4;--text-muted:#a8a5a0;--text-disabled:#6e6a66;--text-brand:#9ebcb4;--brand:#80a89d;--action-primary:#80a89d;--action-primary-hover:#9ebcb4;--action-primary-pressed:#c3d5d0;--on-action-primary:#1e1d1c;--focus-ring:#80a89d;--success:#8daa6c;--warning:#d29e55;--warning-fill:#d29e55;--danger:#cd998e;--action-danger:#bd796b;--action-danger-hover:#cd998e;--on-action-danger:#1e1d1c;--viz-2:#d29e55;--viz-3:#8e9ca3;--viz-4:#cd998e;--viz-5:#a08aa1;--viz-6:#8daa6c;--shadow-float:0 8px 32px #00000080}*{box-sizing:border-box}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){html{--lightningcss-light: ;--lightningcss-dark:initial}}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{background:var(--bg-base);color:var(--text-primary);font:400 14px/1.5 var(--font-sans);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3{font-family:var(--font-serif);margin:0}h1{font-size:24px;font-weight:500;line-height:1.2}h2{font-size:16px;font-weight:600;line-height:1.4}p{margin:0}a{color:var(--text-brand)}.caption{color:var(--text-muted);font-size:12px}.mono{font-family:var(--font-mono);font-size:12px;font-weight:500}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;border-radius:var(--radius-sm)}.btn{height:var(--control-h);min-width:28px;padding:0 var(--space-4);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg-elevated);color:var(--text-primary);font:500 14px/1 var(--font-sans);cursor:pointer}.btn:hover:not(:disabled){background:var(--bg-brand-soft)}.btn:disabled{color:var(--text-disabled);border-color:var(--border-subtle);cursor:not-allowed}.btn.primary{background:var(--action-primary);border-color:var(--action-primary);color:var(--on-action-primary)}.btn.primary:hover:not(:disabled){background:var(--action-primary-hover)}.btn.primary:active:not(:disabled){background:var(--action-primary-pressed)}.btn.primary:disabled{background:var(--bg-panel);border-color:var(--border-subtle);color:var(--text-disabled)}.btn.danger{background:var(--action-danger);border-color:var(--action-danger);color:var(--on-action-danger)}.btn.danger:hover:not(:disabled){background:var(--action-danger-hover)}.segmented{border:1px solid var(--border-strong);border-radius:var(--radius-sm);display:inline-flex;overflow:hidden}.segmented button{height:calc(var(--control-h) - 2px);padding:0 var(--space-3);background:var(--bg-elevated);color:var(--text-muted);font:500 12px/1 var(--font-sans);cursor:pointer;border:0}.segmented button+button{border-left:1px solid var(--border-subtle)}.segmented button[aria-pressed=true]{background:var(--bg-brand-soft);color:var(--text-brand)}.shell{flex-direction:column;min-height:100vh;display:flex}.topbar{align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--border-subtle);flex-wrap:wrap;display:flex}.brand-mark{flex:none;width:32px;height:32px}.brand-text{flex-direction:column;min-width:0;margin-right:auto;display:flex}.topbar-tools{align-items:center;gap:var(--space-2);display:flex}.workspace{gap:var(--space-4);padding:var(--space-6);flex:1;grid-template-columns:minmax(0,1fr);align-content:start;width:100%;max-width:1400px;margin:0 auto;display:grid}@media (min-width:1000px){.workspace{grid-template-columns:minmax(320px,4fr) minmax(0,6fr)}.col-left,.col-right{gap:var(--space-4);flex-direction:column;min-width:0;display:flex}}@media (max-width:999px){.col-left,.col-right{display:contents}}@media (max-width:560px){.topbar,.workspace{padding:var(--space-4)}}.panel{background:var(--bg-panel);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-4);gap:var(--space-3);flex-direction:column;min-width:0;display:flex}.panel-head{justify-content:space-between;align-items:baseline;gap:var(--space-3);flex-wrap:wrap;display:flex}.panel-head .step{font-family:var(--font-mono);color:var(--text-muted);font-size:12px}.dropzone{border:1px dashed var(--border-strong);border-radius:var(--radius-lg);background:var(--bg-base);justify-content:center;align-items:center;gap:var(--space-2);min-height:160px;padding:var(--space-6);text-align:center;flex-direction:column;display:flex}.dropzone .title{font-family:var(--font-serif);font-size:16px;font-weight:600}.empty-note{color:var(--text-muted);border-top:1px solid var(--border-subtle);padding-top:var(--space-3);font-size:12px}.exportbar{z-index:10;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-6);background:var(--bg-elevated);border-top:1px solid var(--border-subtle);flex-wrap:wrap;display:flex;position:sticky;bottom:0}.exportbar .summary{color:var(--text-muted);margin-right:auto}@media (max-width:560px){.exportbar{padding:var(--space-3) var(--space-4)}}dialog.about{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--bg-elevated);color:var(--text-primary);box-shadow:var(--shadow-float);padding:var(--space-6);width:min(440px,100vw - 32px)}dialog.about::backdrop{background:#0006}dialog.about dl{gap:var(--space-2) var(--space-4);margin:var(--space-4) 0;grid-template-columns:max-content 1fr;display:grid}dialog.about dt{color:var(--text-muted)}dialog.about dd{overflow-wrap:anywhere;margin:0}dialog.about .actions{justify-content:flex-end;display:flex}.gate{max-width:560px;padding:var(--space-6);gap:var(--space-4);flex-direction:column;margin:12vh auto;display:flex}.gate .panel{background:var(--bg-elevated)}.tokens{padding:var(--space-6);gap:var(--space-6);flex-direction:column;max-width:1100px;margin:0 auto;display:flex}.swatches{gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(168px,1fr));display:grid}.swatch{align-items:center;gap:var(--space-2);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-2);background:var(--bg-elevated);display:flex}.swatch i{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);flex:none;width:28px;height:28px}.swatch span{flex-direction:column;min-width:0;display:flex}.type-sample{gap:var(--space-2);flex-direction:column;display:flex}.files-body{gap:var(--space-3);flex-direction:column;min-width:0;display:flex}.panel.dragover .dropzone,.panel.dragover .file-list{border-style:solid;border-color:var(--brand);background:var(--bg-brand-soft)}.toolbar{gap:var(--space-2);flex-wrap:wrap;display:flex}.file-list{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-base);max-height:320px;overflow:auto}.file-row{column-gap:var(--space-2);padding:var(--space-2) var(--space-3);cursor:default;border-bottom:1px solid var(--border-subtle);grid-template-columns:28px minmax(0,1fr);align-items:baseline;display:grid}.file-row:last-child{border-bottom:0}.file-row:hover{background:var(--bg-panel)}.file-row[aria-selected=true]{background:var(--bg-brand-soft)}.file-index{color:var(--text-muted)}.file-row[aria-selected=true] .file-index,.file-row[aria-selected=true] .file-meta{color:var(--text-primary)}.file-name{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.file-meta{color:var(--text-muted);overflow-wrap:anywhere;grid-column:2;font-weight:400}.summary-line{color:var(--text-primary);overflow-wrap:anywhere}.scan.error{color:var(--danger)}.notice{justify-content:space-between;align-items:baseline;gap:var(--space-3);border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-elevated);padding:var(--space-2) var(--space-3);border-left-width:3px;font-size:13px;display:flex}.notice.warning{border-left-color:var(--warning-fill)}.notice.info{border-left-color:var(--brand)}.btn-link{color:var(--text-brand);font:500 12px/1 var(--font-sans);cursor:pointer;padding:0 var(--space-2);background:0 0;border:0;flex:none;min-height:28px;text-decoration:underline}.field{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.row{gap:var(--space-2);display:flex}.row .input:first-child{flex:1;min-width:0}.row select.input{flex:0 0 112px}.two{gap:var(--space-3);grid-template-columns:1fr 1fr;display:grid}.input{height:var(--control-h);padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg-elevated);width:100%;color:var(--text-primary);font:400 14px/1 var(--font-sans)}.input::placeholder{color:var(--text-disabled)}.input:hover{border-color:var(--text-muted)}.mono-input{font-family:var(--font-mono);font-size:13px}.preview{border-top:1px solid var(--border-subtle);padding-top:var(--space-3);gap:var(--space-1);flex-direction:column;display:flex}.paths{overflow-wrap:anywhere;flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.warn{color:var(--warning);font-size:13px}.toolbar .filter{flex:160px;min-width:140px;max-width:260px;margin-left:auto}.channel-head{z-index:1;background:var(--bg-panel);border-bottom:1px solid var(--border-subtle);min-height:28px;position:sticky;top:0}.channel-head:hover{background:var(--bg-panel)}.channel-table{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-base);flex-direction:column;max-height:60vh;display:flex;overflow:auto}.channel-row{align-items:center;column-gap:var(--space-2);padding:var(--space-1) var(--space-3);border-bottom:1px solid var(--border-subtle);grid-template-columns:76px 10px minmax(100px,1fr) 16px 52px;min-height:36px;display:grid}.channel-row[hidden]{display:none}.channel-row:last-child{border-bottom:0}.channel-row:hover{background:var(--bg-panel)}.channel-row.paired{background:var(--bg-brand-soft)}.channel-row.off .name{color:var(--text-muted)}.channel-row.silent .tick-cell{color:var(--text-disabled)}.tick-cell,.link-cell{align-items:center;gap:var(--space-2);cursor:pointer;min-height:28px;display:inline-flex}.tick-cell input,.link-cell input{width:16px;height:16px;accent-color:var(--action-primary);margin:0}.track-dot{border-radius:50%;width:8px;height:8px;display:block}.side{color:var(--text-brand);text-align:center}.name{height:28px}@media (max-width:560px){.channel-row{grid-template-columns:70px 8px minmax(60px,1fr) 12px 44px}}.progress-row{justify-content:space-between;gap:var(--space-3);min-height:18px;display:flex}.bar{border-radius:var(--radius-pill);background:var(--border-subtle);height:8px;overflow:hidden}.bar-fill{background:var(--brand);border-radius:var(--radius-pill);width:0;height:100%;transition:width .15s linear}.bar[data-state=failed] .bar-fill{background:var(--action-danger)}.bar[data-state=cancelled] .bar-fill{background:var(--warning-fill)}.log{background:var(--bg-base);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-3);flex-direction:column;gap:2px;max-height:240px;font-size:13px;display:flex;overflow:auto;box-shadow:inset 0 1px 3px #00000014}.log[hidden]{display:none}.log-line{overflow-wrap:anywhere}.log-line.ok{color:var(--success)}.log-line.warn{color:var(--warning)}.log-line.error{color:var(--danger)}.exportbar .summary.problem{color:var(--warning)}.queue-row{column-gap:var(--space-2);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border-subtle);cursor:default;grid-template-columns:28px minmax(0,1fr) auto;align-items:baseline;display:grid}.queue-row:last-child{border-bottom:0}.queue-row:hover{background:var(--bg-panel)}.queue-row[aria-selected=true]{background:var(--bg-brand-soft)}.queue-row[aria-selected=true] .file-index,.queue-row[aria-selected=true] .file-meta,.queue-row[aria-selected=true] .queue-status,.queue-row[aria-selected=true] .queue-message{color:var(--text-primary)}.queue-row .file-meta,.queue-row .queue-message{grid-column:2/4}.queue-status{font:500 12px/1 var(--font-sans);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.queue-status.status-running{color:var(--text-brand)}.queue-status.status-done{color:var(--success)}.queue-status.status-failed{color:var(--danger)}.queue-status.status-cancelled{color:var(--warning)}.queue-message{color:var(--warning);overflow-wrap:anywhere;font-size:12px}.queue-message.error{color:var(--danger)}.result{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-elevated);padding:var(--space-3);gap:var(--space-2);border-left-width:3px;flex-direction:column;display:flex}.result.done{border-left-color:var(--success)}.result.cancelled{border-left-color:var(--warning-fill)}.result.failed{border-left-color:var(--action-danger)}.result-session summary{cursor:pointer;overflow-wrap:anywhere;min-height:28px}.result-session .paths{margin:var(--space-2) 0 0 var(--space-4)}.preview-row{gap:var(--space-2);border-bottom:1px solid var(--border-subtle);padding-bottom:var(--space-3);flex-direction:column;display:flex}.preview-controls{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.preview-play{min-width:72px}.preview-readout{min-width:150px;color:var(--text-primary)}.preview-seek{flex:160px;min-width:120px}.preview-vol{flex:0 0 96px;width:96px}.preview-vol-label{min-width:64px;color:var(--text-muted)}.slider{appearance:none;cursor:pointer;background:0 0;height:28px;margin:0}.slider:disabled{cursor:not-allowed;opacity:.5}.slider::-webkit-slider-runnable-track{border-radius:var(--radius-pill);background:var(--border-strong);height:4px}.slider::-moz-range-track{border-radius:var(--radius-pill);background:var(--border-strong);height:4px}.slider::-webkit-slider-thumb{appearance:none;border-radius:var(--radius-sm);background:var(--bg-elevated);border:1px solid var(--border-strong);width:16px;height:24px;margin-top:-10px}.slider::-moz-range-thumb{border-radius:var(--radius-sm);background:var(--bg-elevated);border:1px solid var(--border-strong);width:14px;height:22px}.slider:hover::-webkit-slider-thumb{border-color:var(--brand)}.slider:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.updatebar{z-index:30;align-items:center;gap:var(--space-2);background:var(--bg-elevated);max-width:calc(100vw - 32px);color:var(--text-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);flex-wrap:wrap;padding:8px 12px;display:flex;position:fixed;bottom:80px;left:50%;transform:translate(-50%)}
