:root{--bg: #f7f7f5;--surface: #ffffff;--surface-raised: #ffffff;--border: #e0ded9;--border-strong: #c9c6bf;--text: #1c1b19;--text-muted: #6b6862;--text-faint: #979389;--accent: #7a4f2b;--accent-strong: #5e3c1f;--accent-bg: #f1e6da;--danger: #b3382c;--danger-bg: #fbe9e6;--warn: #8a5a00;--warn-bg: #fbf0d9;--ok: #2f7a4f;--ok-bg: #e6f3ea;--parenthetical: #7a4f2b;--bracket-bg: #fdf1d9;--bracket-text: #7a5a00;--font-ui: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;--font-transcript: "Courier New", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--radius: 8px;--radius-sm: 5px}@media (prefers-color-scheme: dark){:root{--bg: #171614;--surface: #201f1c;--surface-raised: #26241f;--border: #38352f;--border-strong: #4a463d;--text: #efece5;--text-muted: #a8a399;--text-faint: #79756a;--accent: #d0a06b;--accent-strong: #e6bb8a;--accent-bg: #332a1e;--danger: #e0776a;--danger-bg: #3a201c;--warn: #dcb256;--warn-bg: #3a2f14;--ok: #7fce9f;--ok-bg: #17301f;--parenthetical: #d0a06b;--bracket-bg: #3a2f14;--bracket-text: #e0c17a}}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:var(--font-ui);font-size:14px;line-height:1.5}#root{min-height:100vh}button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit}.app-shell{max-width:1440px;margin:0 auto;padding:20px 24px 48px}.app-header{margin-bottom:20px}.app-header h1{margin:0 0 4px;font-size:22px;font-weight:650;letter-spacing:-.01em}.app-header__subtitle{margin:0;color:var(--text-muted);font-size:13px}.app-layout{display:grid;grid-template-columns:380px 1fr;gap:20px;align-items:start}@media (max-width: 860px){.app-layout{grid-template-columns:1fr}}.input-column{display:flex;flex-direction:column;gap:14px;position:sticky;top:20px}@media (max-width: 860px){.input-column{position:static}}.output-column{min-width:0}.panel-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:14px}.panel-section__title{margin:0 0 10px;font-size:13px;font-weight:650;text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted)}.panel-section__optional{text-transform:none;font-weight:400;letter-spacing:0;color:var(--text-faint)}.panel-section__empty-hint{margin:8px 0 0;font-size:12.5px;color:var(--text-faint)}.upload-zone{border:1.5px dashed var(--border-strong);border-radius:var(--radius);padding:18px 14px;text-align:center;cursor:pointer;transition:border-color .12s ease,background .12s ease;color:var(--text-muted)}.upload-zone:hover{border-color:var(--accent);background:var(--accent-bg)}.upload-zone--dragging{border-color:var(--accent);background:var(--accent-bg);color:var(--accent-strong)}.upload-zone--disabled{opacity:.5;cursor:not-allowed}.upload-zone__icon{font-size:18px;margin-bottom:4px}.upload-zone__label{font-size:13px;font-weight:550;color:var(--text)}.upload-zone__hint{margin-top:3px;font-size:11.5px;color:var(--text-faint)}.file-list{display:flex;flex-direction:column;gap:6px;margin-top:10px}.file-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg)}.file-item__main{min-width:0}.file-item__name{font-size:12.5px;font-weight:550;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-item__meta{display:flex;gap:8px;font-size:11px;color:var(--text-faint);margin-top:1px}.file-item__status--busy{color:var(--warn)}.file-item__status--ok{color:var(--ok)}.file-item__status--error{color:var(--danger)}.file-item__remove{border:none;background:none;cursor:pointer;color:var(--text-faint);font-size:13px;padding:2px 4px;border-radius:4px;flex-shrink:0}.file-item__remove:hover{color:var(--danger);background:var(--danger-bg)}.field{display:block;margin-bottom:10px}.field:last-child{margin-bottom:0}.field__label{display:block;font-size:12px;font-weight:600;margin-bottom:4px;color:var(--text-muted)}.field__hint{display:block;margin-top:4px;font-size:11.5px;color:var(--text-faint)}.field__hint--warn{color:var(--warn)}.field input[type=text],.field input[type=password],.field input[type=number],.field select{width:100%;padding:7px 9px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--text)}.field input:focus,.field select:focus{outline:2px solid var(--accent);outline-offset:-1px}.field--checkbox{display:flex;align-items:center;gap:7px}.field--checkbox input{width:15px;height:15px}.field-row{display:flex;gap:10px}.field-row .field{flex:1;min-width:0}.part-inputs{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--text-muted)}.part-inputs input{width:56px;padding:6px 7px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);text-align:center}.segmented{display:flex;border:1px solid var(--border-strong);border-radius:var(--radius-sm);overflow:hidden}.segmented__option{flex:1;padding:7px 6px;border:none;background:var(--surface);cursor:pointer;font-size:12px;font-weight:550;color:var(--text-muted);border-right:1px solid var(--border)}.segmented__option:last-child{border-right:none}.segmented__option--active{background:var(--accent);color:#fff}.settings-panel__toggle{width:100%;display:flex;align-items:center;gap:8px;background:none;border:none;cursor:pointer;padding:0;font-size:13px;font-weight:650;color:var(--text);text-transform:none;letter-spacing:0}.settings-panel__chevron{margin-left:auto;color:var(--text-faint)}.settings-panel__body{margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}.settings-panel__note{font-size:11.5px;color:var(--text-faint);margin:0 0 12px}.badge{display:inline-block;padding:1px 7px;border-radius:999px;font-size:10.5px;font-weight:650}.badge--warn{background:var(--warn-bg);color:var(--warn)}.run-button{padding:11px 14px;border:none;border-radius:var(--radius);background:var(--accent);color:#fff;font-weight:650;font-size:13.5px;cursor:pointer}.run-button:hover:not(:disabled){background:var(--accent-strong)}.run-button:disabled{background:var(--border-strong);color:var(--text-faint);cursor:not-allowed}.output-panel{display:flex;flex-direction:column;gap:14px}.draft-notice{padding:8px 12px;border-radius:var(--radius-sm);background:var(--surface);border:1px solid var(--border);color:var(--text-faint);font-size:12px;text-align:center}.error-banner{padding:10px 12px;border-radius:var(--radius-sm);background:var(--danger-bg);color:var(--danger);font-size:13px;border:1px solid var(--danger)}.truncated-banner{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:var(--radius-sm);background:var(--warn-bg);color:var(--warn);border:1px solid var(--warn);font-size:12.5px}.truncated-banner button{padding:6px 12px;border:1px solid var(--warn);border-radius:var(--radius-sm);background:var(--surface);color:var(--warn);font-weight:600;cursor:pointer;flex-shrink:0}.progress-indicator{display:flex;flex-wrap:wrap;gap:14px;padding:10px 12px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:12px;color:var(--text-faint)}.progress-step{display:flex;align-items:center;gap:6px}.progress-step__dot{width:7px;height:7px;border-radius:50%;background:var(--border-strong);flex-shrink:0}.progress-step--done{color:var(--ok)}.progress-step--done .progress-step__dot{background:var(--ok)}.progress-step--active{color:var(--accent);font-weight:650}.progress-step--active .progress-step__dot{background:var(--accent);animation:pulse 1.1s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}.scope-banner{background:var(--accent-bg);border:1px solid var(--accent);border-radius:var(--radius);padding:10px 14px;display:flex;gap:12px}.scope-banner__label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--accent-strong);flex-shrink:0;padding-top:1px}.scope-banner__text{margin:0;white-space:pre-wrap;font-family:var(--font-ui);font-size:12.5px;color:var(--text)}.scope-banner__pending{font-size:12.5px;color:var(--text-faint);font-style:italic}.output-placeholder{padding:40px 20px;text-align:center;color:var(--text-faint);font-size:13px;border:1px dashed var(--border);border-radius:var(--radius)}.tab-bar{display:flex;gap:2px;border-bottom:1px solid var(--border)}.tab-button{padding:8px 14px;border:none;background:none;cursor:pointer;font-size:13px;font-weight:600;color:var(--text-faint);border-bottom:2px solid transparent;display:flex;align-items:center;gap:6px}.tab-button--active{color:var(--accent-strong);border-bottom-color:var(--accent)}.tab-button__badge{background:var(--warn);color:#fff;font-size:10px;font-weight:700;border-radius:999px;padding:1px 6px}.tab-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:22px 26px;min-height:320px}.output-empty{color:var(--text-faint);font-size:13px;font-style:italic}.output-prose{font-size:13px;line-height:1.6;white-space:pre-wrap;color:var(--text)}.output-prose--lead{margin-bottom:12px}.output-prose--trail{margin-top:12px}.transcript-body{font-family:var(--font-transcript),Georgia,serif;font-size:13.5px;line-height:1.75;max-width:74ch;color:var(--text)}.transcript-line{min-height:1.2em;white-space:pre-wrap;word-break:break-word}.speaker-id{font-weight:750;font-variant:small-caps;letter-spacing:.02em;color:var(--text)}.speaker-id--qa{font-variant:normal;padding-right:.5em}.parenthetical{color:var(--parenthetical);font-style:italic}.bracket-tag{background:var(--bracket-bg);color:var(--bracket-text);border-radius:3px;padding:0 3px;font-style:normal}.table-scroll{overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:12.5px}.data-table th,.data-table td{border:1px solid var(--border);padding:7px 10px;text-align:left;vertical-align:top}.data-table th{background:var(--bg);font-weight:650;color:var(--text-muted)}.notes-body{font-size:13px;line-height:1.7;white-space:pre-wrap;color:var(--text)}.export-buttons{display:flex;gap:8px;flex-wrap:wrap}.export-buttons button{padding:8px 14px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font-weight:600;font-size:12.5px;cursor:pointer}.export-buttons button:hover:not(:disabled){border-color:var(--accent);color:var(--accent-strong)}.export-buttons button:disabled{opacity:.5;cursor:not-allowed}
