:root{color-scheme:dark;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:13px;line-height:1.5;--sp-0: 2px;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--fs-xs: 10.5px;--fs-sm: 11.5px;--fs-md: 13px;--fs-lg: 14px;--fs-xl: 16px;--r-sm: 4px;--r-md: 6px;--r-lg: 8px;--r-xl: 12px;--r-pill: 999px;--h-control: 28px;--bg-alpha: 1;--c-bg: rgba(14, 16, 22, calc(.96 * var(--bg-alpha)));--c-fg: #f5f7fa;--c-fg-muted: #a8aebb;--c-fg-faded: #8b909d;--c-border: rgba(255, 255, 255, calc(.12 * var(--bg-alpha)));--c-border-strong: rgba(255, 255, 255, calc(.18 * var(--bg-alpha)));--c-surface: rgba(255, 255, 255, calc(.06 * var(--bg-alpha)));--c-surface-hover: rgba(255, 255, 255, calc(.12 * var(--bg-alpha)));--c-surface-strong: rgba(255, 255, 255, calc(.16 * var(--bg-alpha)));--c-input-bg: rgba(0, 0, 0, calc(.4 * var(--bg-alpha)));--c-accent: #60a5fa;--c-accent-strong: #2563eb;--c-success: #34d399;--c-warn: #fbbf24;--c-error: #f87171;--shadow-pop: 0 12px 40px rgba(0, 0, 0, .4);--shadow-tip: 0 4px 12px rgba(0, 0, 0, .4)}html,body,#root{margin:0;height:100%;background:transparent;cursor:none!important}#root{display:flex;flex-direction:column}.shell{display:flex;flex-direction:row;height:100vh;border-radius:var(--r-xl);overflow:hidden;background:var(--c-bg);backdrop-filter:blur(calc(24px * var(--bg-alpha)));-webkit-backdrop-filter:blur(calc(24px * var(--bg-alpha)));border:1px solid var(--c-border);color:var(--c-fg);box-shadow:var(--shadow-pop);cursor:none!important}.shell,.shell *,.shell *:before,.shell *:after{cursor:none!important}.fake-cursor{position:fixed;pointer-events:none;z-index:99999;transform:translate(-2px,-2px);filter:drop-shadow(0 0 1.5px rgba(0,0,0,.7))}.shell>.main{display:flex;flex-direction:column;flex:1;min-width:0}.side-nav{width:36px;display:flex;flex-direction:column;align-items:center;gap:var(--sp-1);padding:var(--sp-2) 2px;background:rgba(0,0,0,calc(.25 * var(--bg-alpha)));border-right:1px solid var(--c-border);flex-shrink:0}.side-tab{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid transparent;border-radius:var(--r-md);color:var(--c-fg-muted);cursor:pointer;transition:background .12s ease,color .12s ease,border-color .12s ease}.side-tab:hover{background:var(--c-surface);color:var(--c-fg)}.side-tab.active{background:var(--c-accent-strong);border-color:var(--c-accent-strong);color:#fff}.side-spacer{flex:1 1 auto}.browser-view{display:flex;flex-direction:column;flex:1;min-height:0}.browser-toolbar{display:flex;align-items:center;gap:var(--sp-1);padding:var(--sp-2) var(--sp-3);border-bottom:1px solid var(--c-border);background:#ffffff05;flex-shrink:0}.browser-toolbar .icon-btn{font-size:13px;font-weight:600}.browser-url{flex:1;height:var(--h-control);background:var(--c-input-bg);border:1px solid var(--c-border);color:var(--c-fg);border-radius:var(--r-md);padding:0 var(--sp-3);font-size:var(--fs-sm);font-family:ui-monospace,Menlo,Consolas,monospace;outline:none}.browser-url:focus{border-color:var(--c-accent-strong)}.browser-view webview{display:flex;flex:1;min-height:0;border:none;background:#fff}.titlebar{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border-bottom:1px solid var(--c-border);user-select:none}.titlebar .actions{margin-left:auto;display:flex;align-items:center;gap:var(--sp-1)}.status-chip{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-1);padding:0 var(--sp-2);height:22px;min-width:124px;box-sizing:border-box;border-radius:var(--r-pill);background:var(--c-surface);border:1px solid var(--c-border);font-size:var(--fs-xs);font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--c-fg-muted)}.status-chip.listening{color:#6ee7b7;border-color:#34d39966}.status-chip.thinking{color:#fcd34d;border-color:#fbbf2466}.status-chip.streaming{color:#93c5fd;border-color:#60a5fa66}.status-chip.error{color:#fca5a5;border-color:#f8717166}.status-chip.opacity-readout{color:var(--c-fg-muted);letter-spacing:.04em;height:var(--h-control);min-width:0;padding:0 10px;animation:opacity-readout-fade 1.5s ease forwards}@keyframes opacity-readout-fade{0%{opacity:0}10%{opacity:1}80%{opacity:1}to{opacity:0}}.status-chip .dot{width:7px;height:7px;flex-shrink:0;position:relative;top:-1px}.dot{width:8px;height:8px;border-radius:50%;background:var(--c-fg-faded);flex-shrink:0;transition:background .2s ease}.dot.idle{background:var(--c-fg-faded)}.dot.listening{background:var(--c-success);box-shadow:0 0 8px #34d399b3;animation:dotPulse 1.4s ease-in-out infinite}.dot.thinking{background:var(--c-warn);box-shadow:0 0 8px #fbbf24b3;animation:dotPulse .9s ease-in-out infinite}.dot.streaming{background:var(--c-accent);box-shadow:0 0 8px #60a5fab3;animation:dotPulse .9s ease-in-out infinite}.dot.error{background:var(--c-error);box-shadow:0 0 8px #f87171b3}@keyframes dotPulse{0%,to{opacity:.4}50%{opacity:1}}.mode-select{appearance:none;background-color:var(--c-surface);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 10 10'%3E%3Cpath fill='%23a8aebb' d='M2 4l3 3 3-3z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--sp-1) center;border:1px solid var(--c-border);border-radius:var(--r-sm);color:var(--c-fg);height:22px;padding:0 var(--sp-4) 0 var(--sp-2);font-size:var(--fs-xs);font-weight:600;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;outline:none}.mode-select:hover{background-color:var(--c-surface-hover)}.mode-select:focus{border-color:var(--c-accent-strong)}.level-bar{display:flex;align-items:center}.level-bar .meter{width:48px;height:4px;background:var(--c-surface);border-radius:2px;overflow:hidden}.level-bar .meter>span{display:block;height:100%;background:linear-gradient(90deg,var(--c-success),var(--c-warn));transition:width 80ms linear}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-1);height:var(--h-control);padding:0 var(--sp-3);background:var(--c-surface);color:var(--c-fg);border:1px solid var(--c-border);border-radius:var(--r-md);cursor:pointer;font-size:var(--fs-sm);font-weight:500;transition:background .12s ease,border-color .12s ease}.btn:hover{background:var(--c-surface-hover);border-color:var(--c-border-strong)}.btn:disabled,.btn[disabled]{opacity:.45;cursor:not-allowed}.btn.primary{background:var(--c-accent-strong);border-color:var(--c-accent-strong);color:#fff}.btn.primary:hover{background:#1d4ed8;border-color:#1d4ed8}.btn.quit{color:#fca5a5}.btn.quit:hover{background:#f871712e;border-color:#f8717180;color:#fff}.btn.icon-btn{width:var(--h-control);height:var(--h-control);min-width:var(--h-control);padding:0}.btn.icon-btn svg{display:block}[data-tip]{position:relative}[data-tip]:hover:after{content:attr(data-tip);position:absolute;top:calc(100% + 6px);right:0;background:#000000f0;color:var(--c-fg);padding:8px 12px;border-radius:var(--r-md);font-size:var(--fs-sm);font-weight:500;letter-spacing:.01em;white-space:pre;text-align:left;line-height:1.6;border:1px solid var(--c-border);box-shadow:var(--shadow-tip);z-index:1000;pointer-events:none;text-transform:none;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}[data-tip]:hover:before{content:"";position:absolute;top:100%;right:11px;margin-top:1px;border:4px solid transparent;border-bottom-color:#000000eb;z-index:1001;pointer-events:none}.auto-toggle[data-tip]:hover:after{right:auto;left:50%;transform:translate(-50%)}.auto-toggle[data-tip]:hover:before{right:auto;left:50%;transform:translate(-50%)}.side-tab[data-tip]:hover:after{top:50%;bottom:auto;left:calc(100% + 8px);right:auto;transform:translateY(-50%)}.side-tab[data-tip]:hover:before{top:50%;bottom:auto;left:calc(100% + 1px);right:auto;margin-top:0;transform:translateY(-50%);border:4px solid transparent;border-bottom-color:transparent;border-right-color:#000000eb}.source-toggle[data-tip]:hover:after{top:50%;bottom:auto;left:calc(100% + 8px);right:auto;transform:translateY(-50%)}.source-toggle[data-tip]:hover:before{top:50%;bottom:auto;left:calc(100% + 1px);right:auto;margin-top:0;transform:translateY(-50%);border:4px solid transparent;border-bottom-color:transparent;border-right-color:#000000eb}.seg{display:inline-flex;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-pill);padding:2px;height:22px}.seg-item{background:transparent;border:none;border-radius:var(--r-pill);padding:0 var(--sp-2);font-size:var(--fs-xs);font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--c-fg-muted);cursor:pointer;transition:background .12s ease,color .12s ease;display:inline-flex;align-items:center}.seg-item:hover{color:var(--c-fg)}.seg-item.active{background:var(--c-accent-strong);color:#fff}.code-view{display:flex;flex-direction:column;flex:1;min-height:0}.code-toolbar{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border-bottom:1px solid var(--c-border);background:#ffffff05;flex-shrink:0}.code-meta-hint{margin-left:auto;font-size:var(--fs-xs);color:var(--c-fg-muted);letter-spacing:.04em}.toolbar-spacer{flex:1}.code-info{color:var(--c-fg-muted)}.code-info:hover{color:var(--c-fg)}.code-lang-select{height:var(--h-control);padding:0 var(--sp-3) 0 var(--sp-2);font-size:var(--fs-sm);font-family:-apple-system,BlinkMacSystemFont,sans-serif;color:var(--c-fg);background:var(--c-input-bg);border:1px solid var(--c-border);border-radius:var(--r-md);cursor:pointer;outline:none;line-height:1}.code-lang-select:hover{border-color:var(--c-border-strong)}.code-lang-select:focus{border-color:var(--c-accent-strong)}.code-info[data-tip]:hover:after{right:0;left:auto}.code-info[data-tip]:hover:before{right:11px;left:auto}.code-split{flex:1;display:flex;flex-direction:column;min-height:0}.code-editor{min-height:80px;overflow:hidden;flex:0 0 auto}.code-splitter{flex:0 0 6px;height:6px;cursor:row-resize;background:transparent;position:relative;border-top:1px solid var(--c-border);border-bottom:1px solid var(--c-border);transition:background .12s ease}.code-splitter:after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:32px;height:2px;background:#ffffff2e;border-radius:2px}.code-splitter:hover{background:#60a5fa14}.code-splitter:hover:after{background:var(--c-accent)}.cm-host{height:100%}.cm-host .cm-editor{height:100%;background:#0000004d}.cm-host .cm-editor.cm-focused{outline:none}.cm-host .cm-gutters{background:#0006;border-right:1px solid var(--c-border)}.code-output{flex:1 1 0;display:flex;flex-direction:column;background:#00000040;min-height:80px}.code-output .pane-head{padding:var(--sp-2) var(--sp-3) var(--sp-1)}.output-actions{display:inline-flex;align-items:center;gap:var(--sp-2)}.code-duration{font-size:var(--fs-xs);color:var(--c-fg-muted);text-transform:none;letter-spacing:.02em;font-weight:500}.pane-action-ghost{height:22px;padding:0 var(--sp-2);font-size:var(--fs-xs);font-weight:600;letter-spacing:.04em;text-transform:none}.code-output-body{flex:1;min-height:0;overflow-y:auto;padding:var(--sp-1) var(--sp-3) var(--sp-3)}.code-output-body pre{margin:0 0 var(--sp-1);font-family:ui-monospace,Menlo,Consolas,monospace;font-size:var(--fs-md);line-height:1.4;white-space:pre-wrap;word-break:break-word}.code-output-body pre.stdout{color:var(--c-fg)}.code-output-body pre.stderr{color:#fcd34d}.code-output-body pre.error-text{color:var(--c-error)}.panes{display:flex;flex-direction:column;flex:1;min-height:0}.pane{display:flex;flex-direction:column;min-height:0}.pane-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);font-size:var(--fs-xs);font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--c-fg-muted);padding:var(--sp-2) var(--sp-3) var(--sp-1)}.pane-action{height:22px;padding:0 var(--sp-2);font-size:var(--fs-xs);font-weight:600;letter-spacing:.04em;text-transform:none;background:var(--c-accent-strong);border-color:var(--c-accent-strong);color:#fff}.pane-action:hover{background:#1d4ed8;border-color:#1d4ed8}.interim{color:var(--c-fg-muted);font-style:italic}.pane-body{flex:1;min-height:0;padding:var(--sp-1) var(--sp-3) var(--sp-3);overflow-y:auto;white-space:pre-wrap;font-size:var(--fs-md);color:var(--c-fg)}.pane.transcript{flex:0 0 auto;max-height:90px;border-bottom:1px solid var(--c-border)}.pane.transcript .pane-body{padding-top:0;padding-bottom:var(--sp-2);font-size:var(--fs-sm);color:#d8dde6}.pane.answer{flex:1 1 auto;min-height:0}.pane.answer .pane-body{color:#fff;font-size:var(--fs-lg);line-height:1.4}.reply-status{display:inline-flex;align-items:center;gap:5px;margin-left:var(--sp-2);padding:0 var(--sp-2);height:18px;border-radius:var(--r-pill);background:#60a5fa24;color:var(--c-accent);font-size:var(--fs-xs);font-weight:600;text-transform:none;letter-spacing:.02em}.reply-dot{width:6px;height:6px;border-radius:50%;background:var(--c-accent);animation:replyPulse 1.1s ease-in-out infinite}@keyframes replyPulse{0%,to{opacity:.35;transform:scale(.8)}50%{opacity:1;transform:scale(1.1)}}.answer-info{width:22px;height:22px;min-width:22px;color:var(--c-fg-muted);border-color:transparent;background:transparent}.answer-info:hover{color:var(--c-fg);background:var(--c-surface)}.asked-question{background:#60a5fa1a;border-left:3px solid var(--c-accent);padding:var(--sp-2) var(--sp-3);border-radius:var(--r-sm);margin:0 0 var(--sp-3);font-size:var(--fs-sm);color:#d8dde6;line-height:1.5}.asked-question .asked-label{color:var(--c-accent);font-weight:700;font-size:var(--fs-xs);letter-spacing:.06em;margin-right:var(--sp-1)}.markdown{white-space:normal}.markdown p{margin:0}.markdown p+p,.markdown p+ul,.markdown p+ol,.markdown ul+p,.markdown ol+p{margin-top:var(--sp-1)}.markdown h1,.markdown h2,.markdown h3,.markdown h4{margin:var(--sp-2) 0 var(--sp-0);font-weight:700;line-height:1.25}.markdown h1:first-child,.markdown h2:first-child,.markdown h3:first-child,.markdown h4:first-child{margin-top:0}.markdown h1{font-size:var(--fs-xl)}.markdown h2{font-size:var(--fs-lg)}.markdown h3,.markdown h4{font-size:var(--fs-md)}.markdown ul,.markdown ol{margin:0 0 0 var(--sp-4);padding:0}.markdown li{margin:0;line-height:1.4}.markdown li+li{margin-top:2px}.markdown li>p{margin:0}.markdown li>ul,.markdown li>ol{margin-top:2px}.markdown strong{color:#fff;font-weight:700}.markdown em{color:#e6e9f0}.markdown del{color:var(--c-fg-faded);text-decoration:line-through}.markdown hr{border:none;border-top:1px solid var(--c-border);margin:var(--sp-2) 0}.markdown a{color:var(--c-accent);text-decoration:underline}.markdown a:hover{color:#93c5fd}.markdown .contains-task-list{list-style:none;margin-left:var(--sp-2)}.markdown .task-list-item input[type=checkbox]{margin-right:var(--sp-1);accent-color:var(--c-accent)}.markdown table{border-collapse:collapse;margin:var(--sp-2) 0;font-size:var(--fs-sm);display:block;overflow-x:auto;max-width:100%}.markdown thead{background:#ffffff0d}.markdown th,.markdown td{border:1px solid var(--c-border);padding:4px 8px;text-align:left;vertical-align:top}.markdown th{font-weight:600;color:var(--c-fg)}.markdown tbody tr:nth-child(2n){background:#ffffff05}.markdown blockquote{border-left:3px solid var(--c-border-strong);padding:var(--sp-0) 0 var(--sp-0) var(--sp-2);margin:var(--sp-2) 0;color:#c0c5d0}.markdown code{font-family:ui-monospace,Menlo,Consolas,monospace;background:var(--c-surface-hover);padding:1px 5px;border-radius:var(--r-sm);font-size:var(--fs-md)}.markdown pre{font-family:ui-monospace,Menlo,Consolas,monospace;background:#0006;border:none;padding:var(--sp-2) var(--sp-3);border-radius:0;font-size:var(--fs-md);line-height:1.4;overflow-x:auto;margin:0;white-space:pre}.markdown pre code{display:block;background:transparent;padding:0;font-size:var(--fs-md);line-height:1.4;white-space:pre}.code-block{position:relative;margin:var(--sp-2) 0;border-radius:var(--r-md);overflow:hidden;border:1px solid var(--c-border)}.code-block .code-meta{display:flex;align-items:center;justify-content:space-between;padding:4px var(--sp-3);background:#0000008c;border-bottom:1px solid var(--c-border);font-size:var(--fs-xs);color:var(--c-fg-muted);text-transform:uppercase;letter-spacing:.06em}.code-block .copy-btn{background:var(--c-surface);color:var(--c-fg);border:1px solid var(--c-border);border-radius:var(--r-sm);padding:2px 8px;font-size:var(--fs-xs);cursor:pointer;text-transform:none;letter-spacing:0;transition:background .12s ease}.code-block .copy-btn:hover{background:var(--c-surface-hover)}.code-block pre{margin:0!important;border:none!important;border-radius:0!important}.history{display:flex;flex-direction:column;flex:1;min-height:0}.history-toolbar{display:flex;gap:var(--sp-2);align-items:center;padding:var(--sp-2) var(--sp-3);border-bottom:1px solid var(--c-border)}.history-count{font-size:var(--fs-xs);color:var(--c-fg-muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600;margin-right:auto}.history-list{flex:1;min-height:0;overflow-y:auto;padding:var(--sp-2) var(--sp-3) var(--sp-3)}.history-empty{padding:var(--sp-6) var(--sp-2);text-align:center}.history-item{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-lg);padding:var(--sp-2) var(--sp-3);margin-bottom:var(--sp-2)}.history-item:last-child{margin-bottom:0}.history-time{font-size:var(--fs-xs);color:var(--c-fg-faded);margin-bottom:var(--sp-1);letter-spacing:.04em}.history-q{font-size:var(--fs-md);color:var(--c-fg);line-height:1.4;margin-bottom:var(--sp-1)}.history-a summary{cursor:pointer;font-size:var(--fs-sm);color:var(--c-accent);user-select:none;outline:none}.history-a summary:hover{color:#bfdbfe}.history-a .markdown{margin-top:var(--sp-2);font-size:var(--fs-md);line-height:1.45;color:var(--c-fg)}.muted{color:var(--c-fg-muted);font-style:italic}.error-text{color:var(--c-error)}.config-chip{display:flex;align-items:center;gap:5px;align-self:stretch;margin:0 var(--sp-3) 3px;padding:1px 8px;border-radius:var(--r-pill);border:1px solid var(--c-border);background:rgba(255,255,255,calc(.04 * var(--bg-alpha)));color:var(--c-fg-muted);font-size:10px;line-height:1.5;font-family:ui-monospace,Menlo,Consolas,monospace;flex-wrap:nowrap;overflow:hidden;min-width:0}.config-chip-sep{opacity:.45;flex:0 0 auto}.config-chip-engine{color:var(--c-accent)}.config-chip-speed{font-variant-numeric:tabular-nums;flex:0 0 auto}.config-chip-segment{display:inline-flex;align-items:center;padding:0 4px;margin:0;border:0 none;border-radius:3px;background:transparent;color:inherit;font:inherit;font-family:inherit;cursor:pointer;transition:background .12s ease,color .12s ease;min-width:0;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.config-chip-segment:hover{background:rgba(255,255,255,calc(.08 * var(--bg-alpha)));color:var(--c-fg)}.config-chip-segment[aria-expanded=true]{background:rgba(96,165,250,calc(.18 * var(--bg-alpha)));color:var(--c-accent)}.config-chip-segment:focus-visible{outline:1px solid var(--c-accent);outline-offset:0}.config-chip-popover{background:#1c1c20f7;border:1px solid rgba(255,255,255,.08);border-radius:8px;box-shadow:0 -8px 24px #00000052;padding:4px;min-width:180px;max-width:280px;color:var(--c-fg, #f5f5f7);backdrop-filter:blur(18px);font-family:ui-monospace,Menlo,Consolas,monospace;font-size:11px;animation:config-chip-popover-in 90ms ease-out}@keyframes config-chip-popover-in{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}.config-chip-popover-arrow{position:absolute;bottom:-5px;width:10px;height:10px;background:#1c1c20f7;border-right:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08);transform:translate(-50%) rotate(45deg)}.config-chip-popover-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--c-fg-muted, #a1a1a8);padding:4px 8px 6px;border-bottom:1px solid rgba(255,255,255,.06);margin-bottom:2px}.config-chip-popover-options{display:flex;flex-direction:column;gap:0;max-height:240px;overflow-y:auto}.config-chip-popover-option{display:inline-flex;align-items:center;gap:6px;width:100%;text-align:left;padding:6px 8px;border:0 none;background:transparent;color:inherit;font:inherit;cursor:pointer;border-radius:4px;transition:background .1s ease}.config-chip-popover-option:hover{background:#ffffff0f}.config-chip-popover-option.is-checked{color:var(--c-accent)}.config-chip-popover-option:focus-visible{outline:1px solid var(--c-accent);outline-offset:-1px}.config-chip-popover-check{display:inline-block;width:12px;flex:0 0 auto;text-align:center;font-weight:700}.config-chip-popover-text{flex:1 1 auto;min-width:0;overflow:hidden;white-space:nowrap;display:inline-block}.config-chip-popover-text-inner{display:inline-block;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;max-width:100%;vertical-align:bottom}.config-chip-popover-option:hover .config-chip-popover-text-inner{max-width:none;overflow:visible;text-overflow:clip;animation:config-chip-marquee 2s linear infinite}@keyframes config-chip-marquee{0%,12%{transform:translate(0)}88%,to{transform:translate(min(0px,calc(-100% + 220px)))}}.config-chip-speed-slider{display:flex;align-items:center;gap:10px;padding:10px 8px 8px;min-width:220px}.config-chip-speed-slider input[type=range]{flex:1 1 auto;min-width:0}.config-chip-speed-readout{flex:0 0 auto;font-variant-numeric:tabular-nums;color:var(--c-fg);font-size:11px;min-width:56px;text-align:right}.config-chip-edit{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;margin-left:2px;border-radius:var(--r-pill);border:0 none;background:transparent;color:var(--c-fg-muted);cursor:pointer;opacity:.55;transition:opacity .12s ease,color .12s ease,background .12s ease}.config-chip-edit:hover{opacity:1;color:var(--c-accent);background:rgba(96,165,250,calc(.14 * var(--bg-alpha)))}.config-chip-edit:focus-visible{outline:1px solid var(--c-accent);outline-offset:1px}.config-chip-edit svg{display:block}.toggle-row{display:flex;align-items:flex-start;gap:10px;padding:6px 0;cursor:pointer}.toggle-row input[type=checkbox]{margin-top:3px;flex-shrink:0;accent-color:var(--c-accent)}.toggle-row>span{flex:1;font-size:var(--fs-sm);line-height:1.4}.askbar{display:flex;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border-top:1px solid var(--c-border);background:#ffffff08}.askbar input{flex:1;height:var(--h-control);background:var(--c-input-bg);border:1px solid var(--c-border);color:var(--c-fg);border-radius:var(--r-md);padding:0 var(--sp-3);font-size:var(--fs-md);outline:none;transition:border-color .12s ease}.askbar input:focus{border-color:var(--c-accent-strong)}.askbar input::placeholder{color:var(--c-fg-faded)}.settings-shell{display:flex;flex-direction:column;flex:1;min-height:0}.settings-tabs{display:flex;gap:var(--sp-1);padding:var(--sp-2) var(--sp-3) 0;border-bottom:1px solid var(--c-border);flex-shrink:0}.settings-tab{background:transparent;border:none;border-bottom:2px solid transparent;color:var(--c-fg-muted);cursor:pointer;padding:var(--sp-2) var(--sp-3);font-size:var(--fs-sm);font-weight:600;letter-spacing:.02em;border-radius:var(--r-sm) var(--r-sm) 0 0;margin-bottom:-1px;transition:color .12s ease,border-color .12s ease,background .12s ease}.settings-tab:hover{color:var(--c-fg);background:var(--c-surface)}.settings-tab.active{color:var(--c-fg);border-bottom-color:var(--c-accent)}.settings{display:flex;flex-direction:column;gap:var(--sp-3);padding:var(--sp-4);overflow-y:auto;flex:1}.kbd-list{display:flex;flex-direction:column;gap:var(--sp-1)}.settings input,.settings-select,.settings-textarea{background:var(--c-input-bg);border:1px solid var(--c-border);color:var(--c-fg);border-radius:var(--r-md);padding:var(--sp-2) var(--sp-3);font-family:ui-monospace,Menlo,monospace;font-size:var(--fs-md);outline:none;transition:border-color .12s ease}.settings input:focus,.settings-select:focus,.settings-textarea:focus{border-color:var(--c-accent-strong)}.settings-select{font-family:-apple-system,BlinkMacSystemFont,sans-serif;cursor:pointer}.settings-textarea{font-family:-apple-system,BlinkMacSystemFont,sans-serif;resize:vertical;min-height:70px;line-height:1.5}.settings label{font-size:var(--fs-xs);font-weight:600;color:var(--c-fg-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:calc(var(--sp-1) * -1)}.settings .row{display:flex;gap:var(--sp-2);flex-wrap:wrap;align-items:center}.settings .help{font-size:var(--fs-sm);color:#c0c5d0;line-height:1.6}.settings .help.test-result{border-radius:var(--r-md);padding:var(--sp-2) var(--sp-3);margin:var(--sp-1) 0;font-weight:500;white-space:pre-wrap;word-break:break-word}.settings .help.test-result.success{background:#34d3991f;border:1px solid rgba(52,211,153,.4);color:var(--c-success)}.settings .help.test-result.error{background:#f871711f;border:1px solid rgba(248,113,113,.4);color:var(--c-error)}.settings .help kbd{background:var(--c-surface-hover);border:1px solid var(--c-border-strong);padding:1px 6px;border-radius:var(--r-sm);font-family:ui-monospace,Menlo,monospace;font-size:var(--fs-xs);color:var(--c-fg)}.settings .help code{background:var(--c-surface);padding:1px 4px;border-radius:3px;font-family:ui-monospace,Menlo,monospace;font-size:var(--fs-xs)}.perm-list{display:flex;flex-direction:column;gap:var(--sp-1);margin-top:var(--sp-2)}.perm-row{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border:1px solid var(--c-border);border-radius:var(--r-md);background:var(--c-surface)}.perm-row-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.perm-row-head{display:flex;align-items:center;gap:var(--sp-2)}.perm-label{font-size:var(--fs-sm);font-weight:600}.perm-hint{font-size:var(--fs-xs);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.perm-pill{display:inline-flex;align-items:center;gap:4px;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:1px var(--sp-2);border-radius:var(--r-pill);border:1px solid var(--c-border)}.perm-pill .perm-dot{width:6px;height:6px;border-radius:50%;background:var(--c-fg-muted)}.perm-pill.granted{background:#34d39926;color:var(--c-success);border-color:#34d39966}.perm-pill.granted .perm-dot{background:var(--c-success)}.perm-pill.denied{background:#f8717126;color:var(--c-error);border-color:#f8717166}.perm-pill.denied .perm-dot{background:var(--c-error)}.perm-pill.not-determined,.perm-pill.unknown{background:#fbbf2426;color:var(--c-warn);border-color:#fbbf2466}.perm-pill.not-determined .perm-dot,.perm-pill.unknown .perm-dot{background:var(--c-warn)}.source-row{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border-bottom:1px solid var(--c-border);background:var(--c-surface);flex-shrink:0}.source-bar{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-1) var(--sp-2);flex:1;border:1px solid var(--c-border);border-radius:var(--r-pill);background:rgba(0,0,0,calc(.18 * var(--bg-alpha)));min-width:0}.source-bar.live{background:#60a5fa14;border-color:#60a5fa66}.source-bar.errored{border-color:#f8717180}.source-toggle{width:24px;height:24px;border-radius:50%;flex-shrink:0}.source-toggle.active{background:var(--c-accent-strong);border-color:var(--c-accent-strong);color:#fff}.source-label{display:flex;flex-direction:column;line-height:1.05;width:38px;flex-shrink:0}.source-name{font-size:var(--fs-xs);font-weight:600}.source-sub{font-size:9px;color:var(--c-fg-faded)}.source-meter{display:inline-flex;align-items:center;justify-content:center;gap:3px;height:22px;flex:1;min-width:0;padding:0 var(--sp-1)}.meter-bar{flex:0 0 3px;height:18px;border-radius:999px;background:linear-gradient(180deg,var(--c-accent) 0%,var(--c-accent-strong, var(--c-accent)) 100%);transform:scaleY(.05);transform-origin:center;transition:transform .16s cubic-bezier(.22,1,.36,1),opacity .2s ease;opacity:.32;will-change:transform}.source-bar.live .meter-bar{opacity:1;filter:drop-shadow(0 0 1.5px rgba(96,165,250,.45))}.auto-toggle{font-size:10px;font-weight:700;letter-spacing:.5px;padding:2px var(--sp-2);height:20px;border-radius:var(--r-pill)}.auto-toggle.on{background:#60a5fa2e;border-color:#60a5fa80;color:var(--c-accent)}.exchange-list-bar{display:flex;align-items:center;padding:var(--sp-1) var(--sp-3);border-bottom:1px solid var(--c-border);flex-shrink:0;gap:var(--sp-1)}.exchange-list-bar>.btn:first-of-type{margin-left:auto}.exchange-list-bar .btn{font-size:var(--fs-xs);padding:2px var(--sp-2);height:20px}.exchange-list{flex:1;min-height:0;overflow-y:auto;padding:var(--sp-3);display:flex;flex-direction:column;gap:var(--sp-3)}.exchange-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;gap:var(--sp-2)}.exchange-empty p{margin:0;font-size:var(--fs-sm)}.exchange-empty kbd{background:var(--c-surface);padding:1px 6px;border-radius:3px;font-family:ui-monospace,Menlo,monospace;font-size:var(--fs-xs);border:1px solid var(--c-border)}.exchange-card{display:flex;flex-direction:column;gap:var(--sp-1);padding:var(--sp-3);border:1px solid var(--c-border);border-radius:var(--r-md);background:var(--c-surface)}.exchange-card.collapsed{gap:2px}.exchange-card.collapsed .exchange-q-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.exchange-q-wrapper{display:flex;align-items:flex-start;gap:var(--sp-1)}.exchange-q-row{-webkit-appearance:none;appearance:none;background:transparent;border:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--sp-1);text-align:left;color:inherit;font:inherit;flex:1;min-width:0;cursor:pointer}.exchange-delete{width:16px;height:16px;border-radius:50%;flex-shrink:0;opacity:.55;transition:opacity .12s ease,color .12s ease,border-color .12s ease}.exchange-delete:hover{opacity:1;color:var(--c-error);border-color:#f8717180}.exchange-cancel{width:16px;height:16px;border-radius:50%;flex-shrink:0;opacity:.65;transition:opacity .12s ease,color .12s ease,border-color .12s ease}.exchange-cancel:hover{opacity:1;color:var(--c-warn, #fbbf24);border-color:#fbbf2480}.exchange-force-answer{width:16px;height:16px;border-radius:50%;flex-shrink:0;opacity:.55;transition:opacity .12s ease,color .12s ease,border-color .12s ease}.exchange-force-answer:hover{opacity:1;color:var(--c-accent);border-color:#60a5fa80}.exchange-q-row:disabled{cursor:default}.exchange-q-row:hover:not(:disabled) .exchange-q-label{color:var(--c-fg)}.exchange-skipped{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);font-size:var(--fs-xs);color:var(--c-fg-faded);font-style:italic;padding:0 var(--sp-2)}.exchange-head{display:flex;align-items:center;gap:var(--sp-1);font-size:10px;text-transform:uppercase;letter-spacing:.6px;color:var(--c-fg-faded)}.exchange-q-label{font-weight:600}.exchange-q-text{font-size:var(--fs-sm);color:var(--c-fg-muted)}.refine-row{display:inline-flex;align-items:center;gap:2px;margin-left:2px}.refine-btn{width:18px;height:18px;padding:0;min-width:0;flex-shrink:0;border-radius:var(--r-sm);border:0 none;background:transparent;color:var(--c-fg-muted);opacity:.65;transition:opacity .12s ease,background .12s ease,color .12s ease}.refine-btn:hover:not(:disabled){opacity:1;color:var(--c-accent);background:rgba(96,165,250,calc(.14 * var(--bg-alpha)))}.refine-btn:disabled{opacity:.25;cursor:default}.refine-row.disabled .refine-btn{pointer-events:none}.refine-btn svg{display:block}.exchange-divider{height:1px;background:var(--c-border);margin:var(--sp-1) 0}.exchange-error{display:flex;align-items:flex-start;gap:var(--sp-1);color:var(--c-error);font-size:var(--fs-xs)}.exchange-streaming-dot{width:6px;height:6px;border-radius:50%;background:var(--c-accent);opacity:.7}.exchange-collapsed-status{display:inline-flex;align-items:center;gap:4px;margin-left:auto;font-size:9px;text-transform:none;letter-spacing:0;color:var(--c-fg-muted)}.exchange-collapsed-status .exchange-streaming-dot{animation:pulse-dot 1.6s ease-in-out infinite}@keyframes pulse-dot{0%,to{opacity:.3}50%{opacity:1}}.answer-md{font-size:var(--fs-md);line-height:1.55}.answer-caret{display:inline-block;width:4px;height:12px;background:var(--c-accent);margin-left:2px;vertical-align:middle;opacity:.7}.source-tag{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:1px 5px;border-radius:3px;background:var(--c-surface-hover);color:var(--c-fg-muted)}.tag-system{background:#60a5fa2e;color:var(--c-accent)}.tag-microphone{background:#ffffff14;color:var(--c-fg-muted)}.tag-manual{background:#34d3992e;color:var(--c-success)}.tag-solve{background:#a855f733;color:#c4b5fd}.solve-view{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.solve-toolbar{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border-bottom:1px solid var(--c-border);flex-shrink:0}.solve-toolbar .btn{font-size:var(--fs-xs);padding:2px var(--sp-2);height:20px}.solve-stamp{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.solve-image-btn{background:transparent;border:1px solid var(--c-border);border-radius:var(--r-md);padding:0;margin:var(--sp-3);overflow:hidden;cursor:pointer;flex-shrink:0;display:block}.solve-image{display:block;width:100%;max-height:240px;object-fit:cover}.solve-question-text{margin:var(--sp-3);padding:var(--sp-2) var(--sp-3);border:1px solid var(--c-border);border-radius:var(--r-md);font-size:var(--fs-sm);color:var(--c-fg-muted);background:var(--c-surface);flex-shrink:0;white-space:pre-wrap;max-height:120px;overflow-y:auto}.solve-answer{flex:1;min-height:0;overflow-y:auto;padding:0 var(--sp-3) var(--sp-3);display:flex;flex-direction:column;gap:var(--sp-3)}.solve-followup{display:flex;flex-direction:column;gap:var(--sp-1);padding-top:var(--sp-3);border-top:1px solid var(--c-border)}.solve-followup-q{display:flex;gap:var(--sp-2);font-size:var(--fs-sm);color:var(--c-fg-muted)}.solve-followup-label{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:1px 5px;border-radius:3px;background:#a855f733;color:#c4b5fd;flex-shrink:0;height:16px;line-height:14px}.solve-followup-bar{display:flex;align-items:center;gap:var(--sp-1);padding:var(--sp-2) var(--sp-3);border-top:1px solid var(--c-border);background:var(--c-surface);flex-shrink:0}.solve-followup-input{flex:1;height:28px;padding:0 var(--sp-2);background:var(--c-input-bg);color:var(--c-fg);border:1px solid var(--c-border);border-radius:var(--r-md);font-size:var(--fs-sm);outline:none}.solve-followup-input:focus{border-color:var(--c-accent-strong)}.solve-followup-bar .icon-btn{width:28px;height:28px;font-size:var(--fs-md)}.solve-toolbar.batching{flex-wrap:wrap;padding:var(--sp-1) var(--sp-2)}.solve-tray{display:flex;align-items:center;gap:4px;overflow-x:auto;max-width:60%;flex-shrink:0}.solve-tray-thumb{position:relative;flex-shrink:0;width:40px;height:40px}.solve-tray-thumb-btn{-webkit-appearance:none;appearance:none;background:transparent;border:1px solid var(--c-border);border-radius:4px;padding:0;width:40px;height:40px;overflow:hidden;cursor:pointer;display:block}.solve-tray-thumb-btn img{width:100%;height:100%;object-fit:cover;display:block}.solve-tray-thumb-remove{position:absolute;top:-4px;right:-4px;width:16px;height:16px;border-radius:50%;border:1px solid var(--c-border);background:#000000eb;color:var(--c-fg);font-size:11px;line-height:1;cursor:pointer;display:none;padding:0}.solve-tray-thumb:hover .solve-tray-thumb-remove{display:block}.solve-tray-meta{white-space:nowrap}.solve-image-stack{display:flex;flex-direction:column;gap:var(--sp-2);margin:var(--sp-3);flex-shrink:0;max-height:45%;overflow-y:auto;padding-right:4px}.solve-image-stack.multi{border:1px solid var(--c-border);border-radius:var(--r-md);padding:var(--sp-2)}.solve-part{display:flex;flex-direction:column;gap:2px}.solve-part-label{font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;padding-left:2px}.solve-image-stack .solve-image-btn{margin:0;width:100%;background:#0000004d}.solve-image-stack .solve-image{width:100%;max-height:200px;object-fit:contain;display:block}.img-viewer-overlay{position:fixed;inset:0;background:#000000eb;z-index:10000;outline:none;cursor:zoom-out}.img-viewer-stage{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;overflow:hidden}.img-viewer-image{max-width:100%;max-height:100%;user-select:none;-webkit-user-drag:none;cursor:grab;transform-origin:center;will-change:transform}.img-viewer-image.dragging{cursor:grabbing}.img-viewer-toolbar{position:absolute;top:var(--sp-3);right:var(--sp-3);z-index:10001;display:flex;align-items:center;gap:var(--sp-1);padding:4px var(--sp-2);background:#000000e6;border:1px solid var(--c-border);border-radius:var(--r-pill);box-shadow:var(--shadow-tip);cursor:default}.img-viewer-toolbar .btn{font-size:var(--fs-xs);padding:2px var(--sp-2);height:22px;min-width:22px}.img-viewer-toolbar .icon-btn{width:22px;padding:0;font-size:14px;line-height:1}.img-viewer-zoom-readout{font-size:var(--fs-xs);color:var(--c-fg-muted);min-width:38px;text-align:center;font-variant-numeric:tabular-nums}.solve-empty{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--sp-4);overflow-y:auto}.solve-empty-row{display:flex;gap:var(--sp-3);width:100%;flex-direction:column}.solve-empty-card{flex:1;display:flex;flex-direction:column;gap:var(--sp-2);padding:var(--sp-3);border:1px solid var(--c-border);border-radius:var(--r-md);background:var(--c-surface)}.solve-empty-card h3{margin:0;font-size:var(--fs-md);font-weight:600}.solve-empty-card p{margin:0;font-size:var(--fs-sm)}.solve-empty-card .btn{align-self:flex-start}.solve-paste{resize:vertical;font-size:var(--fs-sm);font-family:inherit;padding:var(--sp-2);background:var(--c-input-bg);color:var(--c-fg);border:1px solid var(--c-border);border-radius:var(--r-md);outline:none}.solve-paste:focus{border-color:var(--c-accent-strong)}.solve-empty-error{font-size:var(--fs-xs);color:var(--c-error)}.faded-small{font-size:10px}.status-chip.open{color:var(--c-accent)}.status-chip.connecting{color:var(--c-warn)}.dot.open{background:var(--c-accent)}.dot.connecting{background:var(--c-warn);animation:pulse-dot 1s ease-in-out infinite}body.layout-horizontal .shell>.side-nav{display:none}body.layout-horizontal .titlebar{gap:var(--sp-2);padding:4px var(--sp-2);min-height:40px}body.layout-horizontal .toolbar-tabs{display:inline-flex;align-items:center;gap:2px;padding-right:var(--sp-2);border-right:1px solid var(--c-border);margin-right:var(--sp-1)}body.layout-horizontal .toolbar-tabs .side-tab{width:26px;height:26px;border-radius:var(--r-sm, 4px)}body.layout-horizontal .toolbar-sources{display:inline-flex;align-items:center;gap:var(--sp-1);padding:0 var(--sp-2);border-left:1px solid var(--c-border);margin-left:var(--sp-1)}.source-bar.source-bar-inline{display:inline-flex;align-items:center;flex-shrink:0}.source-toggle-wrap{position:relative;display:inline-block;width:32px;height:32px;flex-shrink:0}.source-toggle-wrap .source-ring{position:absolute;inset:0;transform:rotate(-90deg);pointer-events:none}.source-toggle-wrap .ring-bg{fill:none;stroke:var(--c-accent);stroke-width:2;opacity:.18}.source-toggle-wrap .ring-fill{fill:none;stroke:var(--c-accent);stroke-width:2;stroke-linecap:round;transition:stroke-dashoffset .24s cubic-bezier(.22,1,.36,1),stroke .2s ease}.source-bar.source-bar-inline:not(.live):not(.errored) .ring-bg,.source-bar.source-bar-inline:not(.live):not(.errored) .ring-fill{opacity:0}.source-bar.source-bar-inline.errored .ring-bg,.source-bar.source-bar-inline.errored .ring-fill{stroke:#f87171d9}.source-toggle-wrap .source-toggle.btn.icon-btn,.source-toggle-wrap .source-toggle.btn.icon-btn:hover,.source-toggle-wrap .source-toggle.btn.icon-btn.active,.source-toggle-wrap .source-toggle.btn.icon-btn.active:hover{position:absolute;inset:4px;width:auto;height:auto;min-width:0;padding:0;border:0 none;background:transparent;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;transition:color .2s ease;outline:none;box-shadow:none}.source-toggle-wrap .source-toggle.btn.icon-btn{color:var(--c-fg-muted)}.source-toggle-wrap .source-toggle.btn.icon-btn.active,.source-toggle-wrap .source-toggle.btn.icon-btn.active:hover{color:var(--c-accent)}.source-toggle-wrap .source-toggle:focus,.source-toggle-wrap .source-toggle:focus-visible{outline:none;box-shadow:none}body.layout-horizontal .titlebar>.actions{margin-left:auto;flex-shrink:0}body.layout-horizontal .titlebar .toolbar-tabs,body.layout-horizontal .titlebar .toolbar-sources{flex-shrink:0}body.layout-horizontal .titlebar .auto-toggle{flex-shrink:0;white-space:nowrap;font-size:9px;padding:0 6px;letter-spacing:.04em}.shell.minimized-shell{background:transparent;border:0 none;border-radius:50%;box-shadow:none;overflow:hidden}.shell.minimized-shell,.shell.minimized-shell *{scrollbar-width:none}.shell.minimized-shell::-webkit-scrollbar,.shell.minimized-shell *::-webkit-scrollbar{display:none}.minimized-icon{position:absolute;inset:2px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:rgba(8,10,14,calc(.88 * var(--bg-alpha)));border:1.5px solid rgba(96,165,250,calc(.7 * var(--bg-alpha)));color:var(--c-accent);cursor:pointer;outline:none;box-shadow:0 0 14px rgba(96,165,250,calc(.28 * var(--bg-alpha)));-webkit-user-select:none;user-select:none;transition:background .16s ease,border-color .16s ease,color .16s ease,box-shadow .2s ease}.minimized-icon:hover{background:rgba(8,10,14,calc(.95 * var(--bg-alpha)));border-color:var(--c-accent);color:#fff;box-shadow:0 0 18px rgba(96,165,250,calc(.45 * var(--bg-alpha)))}.minimized-icon:focus-visible{outline:none}.minimized-icon svg{display:block}.live-transcript{display:flex;flex-direction:column;gap:4px;padding:8px 12px;margin:0 var(--sp-3);border-radius:var(--r-md);border:1px dashed rgba(255,255,255,calc(.1 * var(--bg-alpha)));background:rgba(255,255,255,calc(.025 * var(--bg-alpha)));max-height:var(--live-transcript-h, 84px);overflow-y:auto;scroll-behavior:smooth}.live-transcript::-webkit-scrollbar{width:6px}.live-transcript::-webkit-scrollbar-thumb{background:rgba(255,255,255,calc(.1 * var(--bg-alpha)));border-radius:3px}.live-transcript-line{display:flex;gap:8px;align-items:flex-start;font-size:var(--fs-sm);line-height:1.4}.live-transcript-line[data-status=live] .live-text{color:var(--c-fg);font-style:italic}.live-transcript-line[data-status=final] .live-text{color:var(--c-fg);font-style:normal}.live-transcript-line[data-status=sent] .live-text{color:var(--c-accent);font-weight:500;font-style:normal}.live-transcript-line[data-status=answered] .live-text{color:var(--c-fg-muted);opacity:.55;font-style:normal}.live-transcript-line .live-tag{display:inline-block;font-size:9px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;font-style:normal;padding:2px 6px;border-radius:var(--r-pill);flex-shrink:0;background:rgba(255,255,255,calc(.06 * var(--bg-alpha)));color:var(--c-fg-muted)}.live-transcript-line.live-them .live-tag{background:rgba(96,165,250,calc(.18 * var(--bg-alpha)));color:var(--c-accent)}.live-transcript-line .live-text{flex:1;min-width:0}.live-transcript-splitter{height:6px;margin:-3px var(--sp-3) 0;border-radius:3px;cursor:ns-resize;transition:background .12s ease;flex-shrink:0}.live-transcript-splitter:hover{background:rgba(255,255,255,calc(.06 * var(--bg-alpha)))}.live-transcript-splitter:active{background:rgba(96,165,250,calc(.22 * var(--bg-alpha)))}.shell .titlebar{background:rgba(8,10,14,calc(.78 * var(--bg-alpha)));backdrop-filter:blur(10px) saturate(140%);-webkit-backdrop-filter:blur(10px) saturate(140%)}.settings-slider,.settings-slider:focus,.settings-slider:focus-visible,.settings-slider:hover{-webkit-appearance:none!important;appearance:none!important;height:6px!important;border-radius:3px!important;outline:none!important;border:0 none!important;box-shadow:none!important;margin:0!important;padding:0!important;cursor:pointer}.settings-slider::-webkit-slider-runnable-track{-webkit-appearance:none;height:6px;border-radius:3px;background:transparent;border:0 none;box-shadow:none}.settings-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:14px;height:14px;border-radius:50%;background:var(--c-accent);border:0 none;outline:none;box-shadow:none;cursor:pointer;margin-top:-4px;transition:transform 90ms ease}.settings-slider::-webkit-slider-thumb:hover{transform:scale(1.12)}.settings-slider::-webkit-slider-thumb:active{transform:scale(1.2)}@media(max-height:60px){body.layout-horizontal .exchange-list,body.layout-horizontal .exchange-list-bar,body.layout-horizontal .askbar,body.layout-horizontal .source-row,body.layout-horizontal .live-transcript,body.layout-horizontal .live-transcript-splitter{display:none}}.api-section-header{margin:var(--sp-4) 0 var(--sp-2);font-size:13px;font-weight:600;color:var(--c-fg);letter-spacing:0;text-transform:none;border:0 none;padding:0}.api-section-header:first-of-type{margin-top:0}.api-subsection-label{display:block;font-size:10px;font-weight:600;color:var(--c-fg-muted);margin:var(--sp-3) 0 0;text-transform:uppercase;letter-spacing:.06em}.api-subsection-label:first-child{margin-top:0}.field-card-header+.api-subsection-label{margin-top:0}.field-card{display:flex;flex-direction:column;gap:var(--sp-2);border:1px solid var(--c-border);border-radius:var(--r-md);padding:var(--sp-3);margin-bottom:var(--sp-2);background:rgba(255,255,255,calc(.02 * var(--bg-alpha)));transition:border-color .16s ease,background .16s ease}.field-card.is-active{border-left:3px solid var(--c-accent);padding-left:calc(var(--sp-3) - 2px);background:rgba(96,165,250,calc(.04 * var(--bg-alpha)))}.field-card-header{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2)}.field-card-header-left{display:flex;align-items:center;gap:var(--sp-2);min-width:0}.field-card-header-right{display:flex;align-items:center;gap:var(--sp-2);flex-shrink:0}.field-card-title{font-size:12px;font-weight:600;color:var(--c-fg)}.field-card-status{display:inline-flex;align-items:center;padding:1px 8px;border-radius:var(--r-pill);font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.field-card-status.tone-in-use{color:var(--c-accent);background:rgba(96,165,250,calc(.18 * var(--bg-alpha)))}.field-card-status.tone-available{color:var(--c-fg-muted);background:rgba(255,255,255,calc(.06 * var(--bg-alpha)))}.field-card-status.tone-warn{color:var(--c-warn, #fbbf24);background:rgba(251,191,36,calc(.14 * var(--bg-alpha)))}.field-card-footer{font-size:var(--fs-xs);color:var(--c-fg-muted)}.field-card-footer a{color:var(--c-accent);text-decoration:none}.field-card-footer a:hover{text-decoration:underline}.switch-row{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--sp-3);cursor:pointer;padding:6px 0}.switch-row-text{display:flex;flex-direction:column;gap:2px;flex:1 1 auto;min-width:0}.switch-row-title{font-weight:500;color:var(--c-fg)}.switch-row-help{font-size:var(--fs-xs);color:var(--c-fg-muted);line-height:1.4}.switch{position:relative;width:36px;height:20px;flex:0 0 auto}.switch input{position:absolute;inset:0;width:100%;height:100%;opacity:0;margin:0;cursor:pointer}.switch-track{display:block;width:100%;height:100%;border-radius:999px;background:rgba(255,255,255,calc(.1 * var(--bg-alpha)));position:relative;transition:background .16s ease;pointer-events:none}.switch-track:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #0006;transition:transform .16s ease}.switch input:checked~.switch-track{background:var(--c-accent)}.switch input:checked~.switch-track:after{transform:translate(16px)}.switch input:focus-visible~.switch-track{outline:2px solid var(--c-accent);outline-offset:2px}.provider-preset{display:flex;flex-direction:column;gap:8px;padding:10px 12px;border:1px solid var(--c-border);border-radius:var(--r-md);background:rgba(255,255,255,calc(.02 * var(--bg-alpha)))}.preset-row{display:flex;align-items:flex-start;gap:10px;padding:4px 6px;border-radius:var(--r-sm);cursor:pointer}.preset-row:hover{background:rgba(255,255,255,calc(.04 * var(--bg-alpha)))}.preset-row.active{background:rgba(96,165,250,calc(.1 * var(--bg-alpha)))}.preset-row input[type=radio]{margin-top:3px;flex-shrink:0;accent-color:var(--c-accent)}.preset-label{flex:1;font-size:var(--fs-sm);line-height:1.4}.preset-suboption{display:flex;align-items:flex-start;gap:10px;margin:0 6px 0 32px;padding:6px 8px;border-left:2px solid var(--c-border);font-size:var(--fs-sm);cursor:pointer}.preset-suboption input[type=checkbox]{margin-top:3px;flex-shrink:0;accent-color:var(--c-accent)}.preset-suboption .help{margin-top:2px}.key-inuse{display:inline-block;margin-left:6px;padding:1px 6px;border-radius:var(--r-pill);font-size:9px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;background:rgba(52,211,153,calc(.18 * var(--bg-alpha)));color:var(--c-success)}.solve-history-bar{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border-bottom:1px solid var(--c-border);flex-shrink:0}.solve-history-bar .toolbar-spacer{flex:1}.solve-threads{flex:1;display:flex;flex-direction:column;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);overflow-y:auto;scroll-behavior:smooth}.solve-thread{display:flex;flex-direction:column;gap:var(--sp-1);border:1px solid var(--c-border);border-radius:var(--r-md);background:var(--c-surface)}.solve-thread.collapsed{gap:0}.solve-thread-head{display:flex;align-items:center;gap:var(--sp-1);padding:var(--sp-1) var(--sp-2)}.solve-thread-toggle{flex:1;min-width:0;text-align:left;background:transparent;border:0 none;padding:4px 6px;font:inherit;color:inherit;cursor:pointer;border-radius:var(--r-sm)}.solve-thread-toggle:hover:not(:disabled){background:rgba(255,255,255,calc(.04 * var(--bg-alpha)))}.solve-thread-toggle:disabled{cursor:default}.solve-thread-stamp{font-size:10px;text-transform:uppercase;letter-spacing:.5px}.solve-thread-delete{width:16px;height:16px;border-radius:50%;flex-shrink:0;opacity:.55;transition:opacity .12s ease,color .12s ease,border-color .12s ease}.solve-thread-delete:hover{opacity:1;color:var(--c-error);border-color:#f8717180}.solve-image-wrap{position:relative;display:block}.solve-image-wrap>.solve-image-btn{margin:0;width:100%}.solve-image-download{position:absolute;top:6px;right:6px;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:#0000008c;color:#ffffffd9;border:0 none;cursor:pointer;opacity:0;transition:opacity .12s ease,background .12s ease,color .12s ease}.solve-image-wrap:hover .solve-image-download,.solve-image-wrap:focus-within .solve-image-download{opacity:1}.solve-image-download:hover{background:#000000c7;color:#fff}.fallback-toast{position:fixed;top:14px;left:50%;transform:translate(-50%);z-index:250;display:inline-flex;align-items:center;gap:10px;background:#1c1c20f7;color:var(--c-fg, #f5f5f7);border:1px solid rgba(255,255,255,.08);border-left:3px solid var(--c-accent, #4f8cff);border-radius:8px;padding:8px 12px;font-size:12px;box-shadow:0 8px 24px #00000052;backdrop-filter:blur(18px);animation:fallback-toast-in .16s ease-out;max-width:calc(100% - 32px)}@keyframes fallback-toast-in{0%{opacity:0;transform:translate(-50%,-8px)}to{opacity:1;transform:translate(-50%)}}.fallback-toast-text strong{font-weight:600}.fallback-toast-close{width:22px;height:22px;border:0 none;background:transparent;color:var(--c-fg-muted);font-size:16px;cursor:pointer;border-radius:4px;display:inline-flex;align-items:center;justify-content:center;transition:background .12s ease,color .12s ease}.fallback-toast-close:hover{background:#ffffff14;color:var(--c-fg)}.fallback-pill{display:inline-flex;align-items:center;margin-left:8px;padding:1px 6px;border-radius:var(--r-pill);background:rgba(96,165,250,calc(.18 * var(--bg-alpha)));color:var(--c-accent);font-size:10px;font-weight:500;line-height:1.5;font-family:ui-monospace,Menlo,Consolas,monospace}.vision-failures{display:flex;flex-wrap:wrap;gap:var(--sp-1);align-items:center;margin-top:var(--sp-1)}.vision-failures-list{flex-basis:100%;list-style:none;margin:var(--sp-1) 0 0;padding:var(--sp-2);border:1px solid var(--c-border);border-radius:var(--r-md);background:rgba(255,255,255,calc(.02 * var(--bg-alpha)));max-height:220px;overflow-y:auto}.vision-failures-list li{display:flex;flex-direction:column;gap:2px;padding:6px 0;border-bottom:1px solid rgba(255,255,255,calc(.04 * var(--bg-alpha)));font-size:var(--fs-xs)}.vision-failures-list li:last-child{border-bottom:0 none}.vision-failures-list code{font-family:ui-monospace,Menlo,Consolas,monospace;color:var(--c-fg)}.vision-failures-error{color:var(--c-error, #f87171);font-style:italic}.export-btn[data-tip]:hover:after{top:50%;right:calc(100% + 10px);bottom:auto;left:auto;transform:translateY(-50%)}.export-btn[data-tip]:hover:before{top:50%;right:calc(100% + 2px);bottom:auto;left:auto;margin-top:0;transform:translateY(-50%);border:4px solid transparent;border-left-color:#000000eb;border-bottom-color:transparent}.export-popover{background:#1c1c20f7;border:1px solid rgba(255,255,255,.08);border-radius:8px;box-shadow:0 8px 24px #00000052;padding:6px;min-width:180px;color:var(--c-fg, #f5f5f7);backdrop-filter:blur(18px);animation:export-popover-in 90ms ease-out}@keyframes export-popover-in{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}.export-popover-arrow{position:absolute;top:-5px;width:10px;height:10px;background:#1c1c20f7;border-left:1px solid rgba(255,255,255,.08);border-top:1px solid rgba(255,255,255,.08);transform:translate(50%) rotate(45deg)}.export-popover-caption{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--c-fg-muted, #a1a1a8);padding:4px 8px 6px;border-bottom:1px solid rgba(255,255,255,.06);margin-bottom:4px}.export-popover-row{display:flex;flex-direction:row;gap:0}.export-popover-option{flex:1 1 0;min-width:0;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 12px;background:transparent;border:0 none;color:inherit;font:inherit;font-weight:500;cursor:pointer;border-radius:6px;transition:background-color .12s ease}.export-popover-option+.export-popover-option{border-left:1px solid rgba(255,255,255,.06);border-radius:0 6px 6px 0}.export-popover-option:first-child{border-radius:6px 0 0 6px}.export-popover-option:hover{background:#ffffff0f}.export-popover-option:focus-visible{outline:2px solid var(--c-accent, #4f8cff);outline-offset:-2px}.export-popover-option svg{flex:0 0 auto}.sessions-view{display:flex;flex-direction:column;height:100%;min-height:0;padding:var(--sp-3, 12px);gap:var(--sp-2, 8px);overflow:hidden}.sessions-list-bar{display:flex;align-items:center;gap:var(--sp-2, 8px)}.sessions-list-title{margin:0;font-size:14px;font-weight:600;flex:1}.sessions-live-chip{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2, 8px);padding:6px 10px;background:#4f8cff1a;border:1px solid rgba(79,140,255,.3);border-radius:6px;font-size:12px;color:var(--c-text, #e8e8e8)}.sessions-live-actions{display:flex;gap:6px;flex-shrink:0}.sessions-list{display:flex;flex-direction:column;gap:4px;overflow-y:auto;flex:1;min-height:0}.session-row{display:flex;align-items:center;gap:var(--sp-2, 8px);padding:8px 10px;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:6px;transition:background 80ms ease}.session-row:hover{background:#ffffff0f}.session-row-open{flex:1;display:flex;flex-direction:column;gap:2px;align-items:flex-start;background:transparent;border:0;padding:0;cursor:pointer;color:inherit;font:inherit;text-align:left}.session-row-title{font-size:13px;font-weight:500;color:var(--c-text, #e8e8e8)}.session-row-meta{font-size:11px}.session-row-actions{display:flex;align-items:center;gap:2px;flex:0 0 auto}.session-row-action{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;background:transparent;border:0;border-radius:4px;color:var(--c-muted, #999);cursor:pointer;transition:background 80ms ease,color 80ms ease}.session-row-action:hover{background:#ffffff14;color:var(--c-text, #e8e8e8)}.session-row-action-danger:hover{background:#ff50501f;color:#ff8080}.session-row-action:focus-visible{outline:2px solid var(--c-accent-strong, #2563eb);outline-offset:-2px}.session-row-action:disabled{opacity:.5;cursor:default}.icon-spin{animation:icon-spin .9s linear infinite;transform-origin:50% 50%}@keyframes icon-spin{to{transform:rotate(360deg)}}.session-row-rename-input{flex:1;background:#0006;border:1px solid rgba(255,255,255,.2);border-radius:4px;padding:6px 8px;font-size:13px;color:var(--c-text, #e8e8e8)}.sessions-empty{padding:var(--sp-4, 16px);text-align:center;font-size:13px}.sessions-empty h3{margin:0 0 8px;font-size:14px}.sessions-empty p{margin:0;font-size:12px;line-height:1.5}.sessions-error{padding:8px 10px;background:#ff50501a;border:1px solid rgba(255,80,80,.3);border-radius:6px;color:#ff8080;font-size:12px}.sessions-detail-header{display:flex;flex-direction:column;gap:var(--sp-2, 8px);padding-bottom:var(--sp-2, 8px);border-bottom:1px solid rgba(255,255,255,.06)}.sessions-detail-row1{display:flex;align-items:center;gap:var(--sp-2, 8px)}.sessions-detail-row2{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2, 8px)}.sessions-detail-titleblock{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.sessions-detail-title{font-size:14px;font-weight:600;color:var(--c-text, #e8e8e8);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sessions-detail-subtitle{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sessions-cleared-toggle{display:inline-flex;align-items:center;gap:8px;font-size:11px;color:var(--c-muted, #999);user-select:none;cursor:pointer}.sessions-cleared-toggle .switch{width:30px;height:17px}.sessions-cleared-toggle .switch-track:after{width:13px;height:13px}.sessions-cleared-toggle .switch input:checked~.switch-track{background:var(--c-accent-strong)}.sessions-cleared-toggle .switch input:checked~.switch-track:after{transform:translate(13px)}.sessions-source-tabs{display:inline-flex;gap:2px;padding:2px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:5px}.sessions-source-tab{padding:4px 10px;background:transparent;border:0;border-radius:3px;font:inherit;font-size:11px;color:var(--c-muted, #999);cursor:pointer;transition:background 80ms ease,color 80ms ease}.sessions-source-tab:hover{color:var(--c-text, #e8e8e8)}.sessions-source-tab.active{background:#4f8cff2e;color:var(--c-text, #e8e8e8)}.sessions-detail-list{display:flex;flex-direction:column;gap:var(--sp-2, 8px);overflow-y:auto;flex:1;min-height:0;padding-right:4px}.exchange-card-archived{display:flex;flex-direction:column;gap:6px;padding:10px 12px;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:6px}.exchange-card-header{display:flex;align-items:center;gap:8px;font-size:11px}.exchange-card-source{font-weight:500;color:var(--c-muted, #999)}.exchange-card-time{margin-left:auto}.exchange-card-status-error,.exchange-card-status-cancelled{padding:1px 6px;border-radius:3px;font-size:10px;text-transform:uppercase}.exchange-card-status-error{background:#ff505026;color:#ff8080}.exchange-card-status-cancelled{background:#ffc85026;color:#ffc850}.exchange-card-question{font-size:13px;font-weight:500;color:var(--c-text, #e8e8e8)}.exchange-card-answer{font-size:13px;line-height:1.55;color:var(--c-text, #e8e8e8)}.exchange-card-error{font-size:12px;color:#ff8080}.exchange-card-screenshots{display:flex;flex-wrap:wrap;gap:6px}.exchange-card-screenshots img{max-width:100%;max-height:200px;border-radius:4px;border:1px solid rgba(255,255,255,.1)}.exchange-cleared{opacity:.55}.exchange-cleared .exchange-card-question,.exchange-cleared .exchange-card-answer{color:var(--c-muted, #999)}.exchange-cleared-tag{padding:1px 6px;border-radius:3px;background:#ffffff0f;font-size:10px;color:var(--c-muted, #999)}.newconvo-menu{display:flex;flex-direction:column;min-width:180px;padding:4px;background:#141418fa;border:1px solid rgba(255,255,255,.1);border-radius:6px;box-shadow:0 8px 24px #00000073}.newconvo-menu-item{display:block;padding:8px 10px;background:transparent;border:0;border-radius:4px;font:inherit;font-size:13px;color:var(--c-text, #e8e8e8);text-align:left;cursor:pointer}.newconvo-menu-item:hover{background:#ffffff14}.newconvo-menu-discard{color:var(--c-muted, #999)}.newconvo-menu-input{margin:4px;padding:6px 8px;background:#0006;border:1px solid rgba(255,255,255,.15);border-radius:4px;font:inherit;font-size:13px;color:var(--c-text, #e8e8e8);outline:none}.newconvo-menu-input:focus{border-color:var(--c-accent, #4f8cff)}html,body,#root{cursor:auto!important;width:100%;height:100%;background:var(--c-bg);padding:0}#root{border-radius:0}.pwa-shell{display:flex;flex-direction:column;height:100dvh;width:100%;background:var(--c-bg);color:var(--c-fg);font-family:ui-sans-serif,system-ui,sans-serif}.pwa-main{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column;position:relative;padding-top:env(safe-area-inset-top)}.pwa-tabbar{display:flex;border-top:1px solid var(--c-border);background:var(--c-surface);padding-bottom:env(safe-area-inset-bottom);flex-shrink:0}.pwa-tab{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:8px 0 10px;background:transparent;border:none;color:var(--c-fg-muted);font-size:11px;cursor:pointer;font-family:inherit}.pwa-tab.active{color:var(--c-accent)}.pwa-tab-glyph{font-size:18px;line-height:1;display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px}.pwa-tab-label{font-size:10px;letter-spacing:.04em;text-transform:uppercase}.pwa-tab-fab-slot{flex:1;display:flex;align-items:center;justify-content:center;overflow:visible;padding:0}.pwa-mic-fab{position:relative;width:52px;height:52px;border-radius:50%;border:1.5px solid var(--c-border);background:var(--c-surface);color:var(--c-fg);display:inline-flex;align-items:center;justify-content:center;transform:translateY(-14px);cursor:pointer;font-family:inherit;box-shadow:0 4px 12px #00000059;transition:background .12s ease,color .12s ease}.pwa-mic-fab:disabled{cursor:progress;opacity:.6}.pwa-mic-fab.live{background:var(--c-accent);color:var(--c-bg, #0b0d12);border-color:var(--c-accent);transition:box-shadow 90ms ease-out,background .12s ease,color .12s ease}.pwa-mic-fab.error{border-color:#f87171b3;color:var(--c-error, #fca5a5);animation:none}.pwa-mic-fab.busy{opacity:.7}.pwa-mic-error-toast{position:absolute;top:8px;left:50%;transform:translate(-50%);max-width:calc(100% - 24px);display:flex;align-items:center;gap:8px;padding:8px 12px;background:#7f1d1df2;color:#fee2e2;border:1px solid rgba(248,113,113,.6);border-radius:var(--r-md);font-size:13px;z-index:100;box-shadow:0 6px 18px #00000073}.pwa-mic-error-toast-text{flex:1}.pwa-mic-error-toast-dismiss{background:transparent;border:0;color:inherit;font-size:18px;line-height:1;padding:0 4px;cursor:pointer}.pwa-chat{display:flex;flex-direction:column;flex:1;min-height:0}.pwa-chat-toolbar{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border-bottom:1px solid var(--c-border);flex-shrink:0}.pwa-toggle{font-size:11px;font-weight:600;letter-spacing:.3px;height:26px;padding:0 10px;border-radius:var(--r-pill);color:var(--c-fg-muted);white-space:nowrap}.pwa-toggle.on{background:#60a5fa2e;border-color:#60a5fa80;color:var(--c-accent)}.pwa-chat-feed{flex:1;overflow-y:auto;padding:var(--sp-3);display:flex;flex-direction:column;gap:var(--sp-3)}.pwa-empty{margin:auto;text-align:center;color:var(--c-fg-muted);padding:var(--sp-4)}.pwa-empty p{margin:4px 0;font-size:14px}.pwa-exchange{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-md);padding:var(--sp-3);display:flex;flex-direction:column;gap:var(--sp-2)}.pwa-q{display:flex;align-items:flex-start;gap:8px;font-size:14px;font-weight:600;background:transparent;border:0;color:inherit;font-family:inherit;text-align:left;padding:0;margin:0;width:100%;cursor:pointer;-webkit-appearance:none;appearance:none}.pwa-q:focus-visible{outline:2px solid var(--c-accent);outline-offset:2px;border-radius:4px}.pwa-q-text{flex:1}.pwa-q-status{font-size:12px;font-weight:500;white-space:nowrap}.pwa-exchange.collapsed{padding-block:calc(var(--sp-2))}.pwa-tag{display:inline-block;font-size:9px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;background:var(--c-surface-hover);color:var(--c-fg-muted);padding:2px 6px;border-radius:var(--r-pill);flex-shrink:0}.pwa-error{color:var(--c-error, #fca5a5);font-size:13px}.pwa-skipped{font-size:12px;padding:2px var(--sp-2)}.pwa-partial{font-size:13px;color:var(--c-fg-muted);padding:var(--sp-2);border:1px dashed var(--c-border);border-radius:var(--r-md)}.pwa-chat-bottom{border-top:1px solid var(--c-border);background:var(--c-surface);padding:var(--sp-2) var(--sp-3);display:flex;flex-direction:column;gap:var(--sp-2);flex-shrink:0}.pwa-config-chip-row{display:flex;justify-content:center;padding:4px 0 6px;flex-shrink:0}.pwa-config-chip-row .config-chip{flex-wrap:wrap;justify-content:center;max-width:100%;font-size:11px;row-gap:2px}.pwa-config-chip-row .config-chip-segment{font-size:11px;padding:3px 7px}.pwa-input-row{display:flex;gap:var(--sp-2);align-items:flex-end}.pwa-input-row textarea{flex:1;min-height:38px;max-height:120px;background:var(--c-input-bg);border:1px solid var(--c-border);border-radius:var(--r-md);color:var(--c-fg);font-size:15px;padding:8px 10px;font-family:inherit;resize:none}.pwa-solve{display:flex;flex-direction:column;flex:1;min-height:0}.pwa-solve-toolbar{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border-bottom:1px solid var(--c-border)}.pwa-spacer{flex:1}.pwa-export-wrap{position:relative;display:inline-flex;align-items:center}.pwa-export-popover{position:absolute;top:calc(100% + 6px);right:0;min-width:220px;padding:4px;background:#141418fa;border:1px solid rgba(255,255,255,.1);border-radius:6px;box-shadow:0 8px 24px #00000073;z-index:50;display:flex;flex-direction:column;gap:2px}.pwa-export-option{display:flex;flex-direction:column;align-items:flex-start;gap:1px;padding:8px 10px;background:transparent;border:0;border-radius:4px;text-align:left;font:inherit;font-size:13px;color:var(--c-fg);cursor:pointer}.pwa-export-option strong{font-weight:600}.pwa-export-option .muted{font-size:11px}.pwa-export-option:hover{background:#ffffff14}.pwa-export-option:active{background:#ffffff1f}.pwa-export-cancel{color:var(--c-fg-muted, var(--c-fg))}.pwa-export-error{position:absolute;top:calc(100% + 6px);right:0;min-width:220px;max-width:280px;padding:6px 10px;background:#ff50501f;border:1px solid rgba(255,80,80,.3);border-radius:6px;font-size:12px;color:#ff8080;z-index:50}.pwa-pending-row{display:flex;gap:6px;overflow-x:auto;padding:var(--sp-2) var(--sp-3);border-bottom:1px solid var(--c-border)}.pwa-pending-thumb{position:relative;flex-shrink:0;width:80px;height:80px;border-radius:var(--r-md);overflow:hidden;border:1px solid var(--c-border)}.pwa-pending-thumb img{width:100%;height:100%;object-fit:cover;cursor:zoom-in}.pwa-thumb-x{position:absolute;top:2px;right:2px;width:22px;height:22px;border-radius:50%;background:#0009;color:#fff;font-size:14px;line-height:1}.pwa-solve-paste-row{padding:0 var(--sp-3) var(--sp-2);flex-shrink:0}.pwa-solve-paste{width:100%;min-height:44px;max-height:140px;background:var(--c-input-bg);border:1px solid var(--c-border);border-radius:var(--r-md);color:var(--c-fg);padding:8px 10px;font-size:14px;line-height:1.4;resize:vertical;font-family:inherit}.pwa-solve-paste:focus{outline:none;border-color:var(--c-accent-strong, #2563eb)}.pwa-solve-feed{flex:1;overflow-y:auto;padding:var(--sp-3);display:flex;flex-direction:column;gap:var(--sp-3)}.pwa-solve-card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-md);padding:var(--sp-3);display:flex;flex-direction:column;gap:var(--sp-2)}.pwa-solve-thumbs{display:flex;gap:6px;overflow-x:auto}.pwa-solve-thumbs img{height:100px;border-radius:var(--r-sm, 4px);border:1px solid var(--c-border);cursor:zoom-in;flex-shrink:0}.pwa-settings{display:flex;flex-direction:column;flex:1;min-height:0}.pwa-settings-tabs{display:flex;border-bottom:1px solid var(--c-border);flex-shrink:0}.pwa-settings-tab{flex:1;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--c-fg-muted);padding:10px 0;font-size:13px;cursor:pointer;font-family:inherit}.pwa-settings-tab.active{color:var(--c-fg);border-bottom-color:var(--c-accent)}.pwa-settings-body{flex:1;overflow-y:auto;padding:var(--sp-3)}.pwa-form{display:flex;flex-direction:column;gap:var(--sp-3)}.pwa-form h3{font-size:14px;margin:0;color:var(--c-fg)}.pwa-form .mt{margin-top:var(--sp-3)}.pwa-form input,.pwa-form select,.pwa-form textarea{width:100%;background:var(--c-input-bg);border:1px solid var(--c-border);border-radius:var(--r-md);color:var(--c-fg);padding:9px 10px;font-family:inherit;font-size:15px;box-sizing:border-box}.pwa-form textarea{resize:vertical}.pwa-field{display:flex;flex-direction:column;gap:6px;font-size:13px}.pwa-row{display:flex;gap:8px;flex-wrap:wrap}.test-result{font-size:12px;padding:6px 10px;border-radius:var(--r-md);border:1px solid var(--c-border)}.test-result.success{background:#22c55e1f;border-color:#22c55e66;color:#86efac}.test-result.error{background:#f871711f;border-color:#f8717166;color:#fca5a5}.pwa-help h3{font-size:14px;margin:var(--sp-3) 0 6px}.pwa-help p,.pwa-help ul{font-size:13px;line-height:1.5;color:var(--c-fg-muted)}.pwa-help ul{padding-left:18px}.code-view{flex:1;display:flex;flex-direction:column;min-height:0}
