:root{--bg: #0f1318;--panel: #171d24;--panel-2: #1f2730;--line: #2f3a46;--text: #e8edf2;--muted: #8f9aa7;--soft: #c3ccd5;--cyan: #36c5c8;--green: #58c77d;--amber: #e2aa4f;--red: #df6a6a;--blue: #6fa7ff;--violet: #b08cff;--shadow: rgba(0, 0, 0, .35);color:var(--text);background:var(--bg);font-family:Inter,PingFang SC,Microsoft YaHei,Arial,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;background:var(--bg);color:var(--text);letter-spacing:0}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}h1,h2,p{margin:0}.shell{min-height:100vh}.topbar{display:grid;grid-template-columns:1.2fr auto;gap:20px;align-items:center;padding:18px 22px;border-bottom:1px solid var(--line);background:#111820}.brand{display:flex;align-items:center;gap:14px;min-width:0}.mark{display:grid;place-items:center;width:42px;height:42px;border:1px solid #38515a;border-radius:8px;color:var(--cyan);background:linear-gradient(90deg,transparent 48%,rgba(54,197,200,.18) 48% 52%,transparent 52%),linear-gradient(0deg,transparent 48%,rgba(54,197,200,.18) 48% 52%,transparent 52%),#142028;font-weight:800}h1{font-size:22px;line-height:1.2;letter-spacing:0}.subtitle{margin-top:4px;color:var(--muted);font-size:13px}.runbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:10px}.workspace-tabs{display:flex;gap:8px;overflow-x:auto;border-bottom:1px solid var(--line);padding:10px 14px;background:#0f151b}.workspace-tab{display:inline-grid;grid-template-columns:auto auto;gap:8px;align-items:center;min-height:34px;border:1px solid var(--line);border-radius:6px;padding:0 10px;color:var(--soft);background:#141b22;white-space:nowrap}.workspace-tab:hover{border-color:#4b5a69;background:#18222b}.workspace-tab.active{color:#d6feff;border-color:#23696d;background:#123438}.workspace-tab em{color:var(--muted);font-size:11px;font-style:normal}.status{display:inline-flex;align-items:center;gap:7px;min-height:34px;border:1px solid #725732;border-radius:6px;padding:7px 10px;color:#ffe4b2;background:#e2aa4f14;font-size:13px}.status.ok{color:#b8f4ce;border-color:#315047;background:#58c77d14}.status.err{color:#ffd2d2;border-color:#713c3c;background:#df6a6a1a}.status.mode{color:#d6feff;border-color:#23696d;background:#36c5c814}.dot{width:8px;height:8px;border-radius:999px;background:currentColor}.btn,.icon-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px;border:1px solid var(--line);border-radius:6px;padding:0 12px;color:var(--text);background:var(--panel-2)}.btn:hover:not(:disabled),.icon-btn:hover:not(:disabled){border-color:#4b5a69;background:#26313c}.btn.primary{color:#d6feff;border-color:#23696d;background:#123438}.btn.warn{color:#ffe4b2;border-color:#725732;background:#322817}.icon-btn{width:32px;height:30px;padding:0}.main{display:grid;grid-template-columns:360px minmax(0,1fr);gap:14px;align-items:stretch;height:calc(100vh - 140px);min-height:0;overflow:hidden;padding:14px}.main.automation-main{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr)}.main.live-main{grid-template-rows:minmax(0,1fr)}.main>.stack:first-child{grid-column:1;grid-row:2}.primary-stack{display:contents}.script-panel{grid-column:1 / -1;grid-row:1}.main.automation-main .script-panel,.main.live-main .primary-stack>.panel:not(.script-panel){display:grid;grid-template-rows:auto minmax(0,1fr);min-height:0;overflow:hidden}.primary-stack>.panel:not(.script-panel){grid-column:2;grid-row:2}.main.live-main>.stack:first-child{grid-row:1;min-height:0;overflow:auto}.main.live-main .primary-stack>.panel:not(.script-panel){grid-row:1}.diagnostics-strip{display:grid;grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);gap:12px;align-items:stretch;height:calc(100vh - 140px);min-height:0;overflow:hidden;padding:12px 14px 14px}.connection-strip{height:calc(100vh - 140px);min-height:0;overflow:hidden;padding:14px}.connection-panel-body{display:grid;grid-template-columns:minmax(320px,1.2fr) minmax(280px,1fr) minmax(140px,.45fr) minmax(120px,.35fr);gap:12px;align-items:end}.connection-panel-body .field{margin-bottom:0}.compact-field{min-width:0}.diagnostics-strip>.panel{display:grid;grid-template-rows:auto minmax(0,1fr);height:100%;min-height:0;overflow:hidden}.stack{display:grid;gap:14px;align-content:start}.panel{min-width:0;border:1px solid var(--line);border-radius:8px;background:var(--panel);box-shadow:0 16px 30px var(--shadow)}.panel-header{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding:12px 14px}.panel-title{color:#f5f7fa;font-size:14px;letter-spacing:0}.panel-note{color:var(--muted);font-size:12px}.panel-body{padding:14px}.field{display:grid;gap:6px;margin-bottom:12px}.label{color:var(--muted);font-size:12px}.input,.select,.textarea{width:100%;border:1px solid var(--line);border-radius:6px;color:var(--text);background:#0f151b}.input,.select{min-height:34px;padding:0 10px}.textarea{min-height:120px;resize:vertical;padding:10px;line-height:1.6}.dtmf-row{display:grid;grid-template-columns:64px minmax(0,1fr);align-items:start;gap:8px;margin-bottom:8px}.dtmf-row .input{min-width:0}.dtmf-row .btn{grid-column:2;width:100%;justify-content:center}.dtmf-label{color:var(--muted);font-size:12px;line-height:34px}.seg{display:grid;grid-template-columns:repeat(2,1fr);overflow:hidden;border:1px solid var(--line);border-radius:7px}.seg span{border-right:1px solid var(--line);padding:8px 10px;color:var(--muted);font-size:13px;text-align:center}.seg span:last-child{border-right:0}.seg .active{color:var(--cyan);background:#123438}.panel-actions{display:grid;gap:10px;margin:12px 0}.file-btn{position:relative;width:100%}.file-btn.disabled{cursor:not-allowed;opacity:.45}.file-btn input{display:none}.checkbox-line{display:flex;align-items:center;gap:8px;color:var(--soft);font-size:13px}.scenario-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.primary-stack{min-width:0}.stack.primary-stack{display:contents}.script-panel .panel-body{display:grid;grid-template-rows:auto auto minmax(0,1fr);min-height:0;overflow:hidden;padding:12px}.script-layout{display:grid;grid-template-columns:clamp(420px,26vw,560px) minmax(420px,1fr) minmax(260px,320px);gap:12px;align-items:stretch;min-height:0;overflow:hidden}.script-control,.script-board,.scenario-detail{min-width:0;min-height:0}.script-control{display:grid;grid-template-rows:minmax(0,1fr) auto auto auto;overflow:hidden}.script-board,.scenario-detail{display:grid;grid-template-rows:auto minmax(0,1fr);min-height:0;overflow:hidden;border:1px solid var(--line);border-radius:8px;padding:12px;background:#10171e}.scenario-detail{align-content:start;grid-template-rows:auto auto auto auto;gap:8px;overflow-y:auto;padding:10px}.scenario-filter{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.scenario-pack-status{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;margin-bottom:12px;color:var(--muted);font-size:12px}.scenario-pack-status>span:not(.pill){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.script-board-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.script-board-head div{min-width:0}.script-board-head strong{display:block;color:var(--text);font-size:14px;line-height:1.25}.script-board-head span:not(.pill){display:block;margin-top:3px;overflow:hidden;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.script-scenarios{display:grid;align-content:start;grid-template-columns:1fr;gap:8px;min-height:0;margin-bottom:12px;overflow-y:auto;padding-right:4px}.script-scenario{display:grid;min-width:0;gap:5px;border:1px solid var(--line);border-radius:8px;padding:10px 12px;background:#10171e;color:var(--soft);text-align:left;cursor:pointer}.script-scenario strong,.script-scenario code,.script-scenario span,.script-scenario em{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.script-scenario span:nth-of-type(2){display:-webkit-box;line-height:1.35;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}.script-scenario strong{color:var(--text);font-size:13px}.script-scenario code{color:#6fb9c6;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px}.script-scenario span{color:var(--muted);font-size:11px}.script-scenario em{color:var(--cyan);font-size:11px;font-style:normal}.script-scenario.active{border-color:#23696d;background:#123438}.script-progress{display:grid;grid-template-columns:repeat(auto-fit,minmax(12px,1fr));gap:4px;margin-bottom:12px}.script-toolbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 36px;gap:8px;margin-bottom:10px}.script-dot{height:6px;border-radius:999px;background:#2b3540}.script-dot.done{background:var(--green)}.script-dot.active{background:var(--cyan)}.script-card{display:grid;gap:10px;border:1px solid var(--line);border-radius:8px;padding:12px;background:#111820}.script-card.complete{align-items:center;grid-template-columns:1fr auto}.script-card-head,.script-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.script-card-head{justify-content:space-between;color:var(--muted);font-size:12px}.script-line{display:grid;gap:5px}.script-line span{color:var(--muted);font-size:11px}.script-line strong{color:var(--text);font-size:13px;line-height:1.55;word-break:break-word}.script-list{display:grid;align-content:start;gap:7px;min-height:0;margin-top:12px;overflow-y:auto;padding-right:4px}.script-board .script-list{margin-top:0}.script-row{display:grid;grid-template-columns:28px 58px minmax(90px,.8fr) minmax(180px,1.2fr);gap:7px;align-items:center;border:1px solid var(--line);border-radius:7px;padding:7px;background:#0f151b;color:var(--muted);font-size:12px}.script-row.active{border-color:#23696d;background:#123438;color:var(--text)}.script-row.done{opacity:.72}.script-index{color:var(--soft);font-family:SFMono-Regular,Consolas,monospace}.script-row-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.script-row-expected{min-width:0;overflow:hidden;color:var(--soft);text-overflow:ellipsis;white-space:nowrap}.detail-list{display:grid;gap:8px}.detail-row{display:grid;gap:5px;border:1px solid var(--line);border-radius:7px;padding:9px;background:#0f151b}.detail-row span{color:var(--muted);font-size:11px}.detail-row strong{color:var(--text);font-size:13px;line-height:1.45;word-break:break-word}.scenario-detail .script-board-head{margin-bottom:4px}.scenario-detail .script-board-head code,.script-board>.script-board-head code{display:block;margin-top:3px;color:#6fb9c6;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scenario-detail .detail-list{gap:6px}.scenario-detail .detail-row{grid-template-columns:68px minmax(0,1fr);align-items:center;gap:8px;min-height:36px;padding:6px 8px}.scenario-detail .detail-row span{overflow:hidden;font-size:10px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.scenario-detail .detail-row strong{overflow:hidden;font-size:12px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap;word-break:normal}.scenario-detail .assertion-list{gap:5px}.scenario-detail .assertion-row{font-size:11px;line-height:1.3}.assertion-block{min-width:0}.assertion-list{display:grid;gap:7px}.assertion-row{display:grid;grid-template-columns:18px minmax(0,1fr);gap:7px;align-items:start;color:var(--soft);font-size:12px;line-height:1.45}.assertion-row svg{margin-top:1px;color:var(--green)}.scenario-actions{display:grid;gap:8px}.chat-thread{display:flex;flex-direction:column;gap:14px;height:100%;min-height:0;max-height:none;overflow-y:auto;border:1px solid var(--line);border-radius:8px;padding:18px;background:linear-gradient(90deg,#b08cff0a 0,#b08cff0a 49.8%,#ffffff0f 49.8%,#ffffff0f 50.2%,#58c77d0a 50.2%,#58c77d0a),#10161d}.main.live-main .primary-stack>.panel:not(.script-panel) .panel-body{display:grid;grid-template-rows:minmax(0,1fr) auto;gap:12px;min-height:0;overflow:hidden}.chat-message{display:grid;gap:7px;width:min(48%,760px);max-width:calc(50% - 18px);min-width:0}.chat-message.user{align-self:flex-start}.chat-message.assistant{align-self:flex-end}.chat-meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center;color:var(--muted);font-size:12px}.chat-message.assistant .chat-meta{justify-content:flex-end}.chat-meta strong{color:var(--text);font-size:13px}.chat-bubble{border:1px solid var(--line);border-radius:8px;padding:14px 16px;background:#151d26;color:var(--text);font-size:16px;line-height:1.75;white-space:pre-wrap;word-break:break-word;box-shadow:0 10px 26px var(--shadow)}.chat-message.user .chat-bubble{border-color:#554676;background:#1d1d31;color:#efe7ff}.chat-message.assistant .chat-bubble{border-color:#315047;background:#132b27;color:#e6fff0}.chat-audio{display:grid;grid-template-columns:minmax(84px,124px) minmax(0,1fr) auto;gap:8px;align-items:center;border:1px solid var(--line);border-radius:8px;min-height:34px;padding:4px 7px;background:#0f151be6;color:var(--muted);font-family:SFMono-Regular,Consolas,monospace;font-size:12px}.chat-audio>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mini-wave{display:flex;align-items:center;gap:2px;width:108px;height:24px;overflow:hidden}.mini-wave i{width:3px;min-height:6px;border-radius:8px;background:var(--cyan);transform-origin:center}.mini-wave i:nth-child(2n){background:var(--blue)}.mini-wave i:nth-child(3n){background:var(--green)}.playing-bars i{animation:wave-pulse 1.1s ease-in-out infinite}.playing-bars i:nth-child(2n){animation-delay:-.22s}.playing-bars i:nth-child(3n){animation-delay:-.42s}.playing-bars i:nth-child(5n){animation-delay:-.64s}@keyframes wave-pulse{0%,to{opacity:.72;transform:scaleY(.72)}50%{opacity:1;transform:scaleY(1.12)}}.chat-actions{display:flex;gap:6px}@media (prefers-reduced-motion: reduce){.playing-bars i{animation:none}}.kpis{display:grid;gap:8px}.kpis{grid-template-columns:repeat(4,1fr);gap:10px;margin-top:12px}.mini-kpi,.kpi{border:1px solid var(--line);border-radius:7px;padding:8px;background:#0f151b}.kpi{padding:10px;background:#111820}.mini-kpi strong,.kpi strong{display:block;color:var(--text);font-size:14px;line-height:1.2}.kpi strong{font-size:18px}.mini-kpi span,.kpi span{display:block;margin-top:4px;color:var(--muted);font-size:11px}.focus-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:12px 0 10px;color:var(--muted);font-size:12px}.history-list{display:grid;gap:9px}.history-list.tall{max-height:520px;overflow-y:auto;padding-right:4px}.history-item{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:7px;padding:10px;background:#111820}.history-main{min-width:0}.history-main strong{display:block;overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.history-main span{color:var(--muted);font-size:12px}.mini-actions{display:flex;gap:6px}.diag-grid{display:grid;gap:8px}.diagnostics-compact{display:grid;grid-template-columns:minmax(220px,260px) minmax(0,1fr);gap:12px;align-items:start;min-height:0}.diagnostics-token-field{align-content:start;margin-bottom:0}.diag-grid.top{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:0}.diag-grid.top .diag-row{grid-template-columns:minmax(96px,.75fr) minmax(0,1fr) auto;min-height:42px;padding:7px 9px}.diag-grid.top .diag-row>span:not(.pill){display:block;overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap}.diagnostics-token-field .help-text{max-height:34px;overflow:hidden}.diag-row{display:grid;grid-template-columns:88px 1fr auto;gap:8px;align-items:center;width:100%;min-height:auto;border:1px solid var(--line);border-radius:7px;padding:9px;color:var(--text);background:#111820;font-size:12px;text-align:left}.diag-row:hover{border-color:#4b5a69}.pill{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:999px;padding:4px 7px;color:var(--muted);font-size:11px;white-space:nowrap}.pill.ok{color:#b8f4ce;border-color:#315047}.pill.warn{color:#ffe4b2;border-color:#725732}.pill.diag{color:#eadfff;border-color:#554676}.help-text{display:block;margin-top:7px;color:var(--muted);font-size:11px;line-height:1.45}.diagnostics-output{max-height:260px;margin:0;overflow:auto;border:1px solid var(--line);border-radius:8px;padding:12px;color:var(--soft);background:#0f151b;font-family:SFMono-Regular,Consolas,monospace;font-size:12px;line-height:1.45;white-space:pre-wrap;word-break:break-word}.diagnostics-output.top{height:100%;min-height:0;max-height:none}.diagnostics-result-body{display:grid;grid-template-rows:minmax(0,1fr);gap:10px;min-height:0}.diagnostics-result-body:has(.registration-summary){grid-template-rows:auto minmax(0,1fr)}.tts-lab-strip{padding:14px 14px 0}.tts-lab-strip.fixed-pack-strip{display:grid;height:calc(100vh - 140px);min-height:0;overflow:hidden;padding-bottom:14px}.fixed-pack-panel{display:grid;grid-template-rows:auto minmax(0,1fr);min-height:0;overflow:hidden}.tts-lab-body{display:grid;gap:12px}.fixed-pack-panel .tts-lab-body{grid-template-rows:minmax(0,1fr);min-height:0}.tts-lab-compose{display:grid;grid-template-columns:minmax(360px,1.2fr) minmax(340px,.8fr);gap:12px;align-items:stretch}.tts-lab-editor,.tts-lab-policy,.tts-history-board{display:grid;align-content:start;gap:12px;min-width:0;border:1px solid var(--line);border-radius:8px;padding:12px;background:#10171e}.tts-history-board{background:#0f151b}.tts-lab-head,.tts-history-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.tts-lab-head div,.tts-history-head div{display:grid;gap:4px;min-width:0}.tts-lab-head strong,.tts-history-head strong{color:var(--text);font-size:13px}.tts-lab-head span:not(.pill),.tts-history-head span:not(.pill){color:var(--muted);font-size:11px}.tts-textarea{min-height:148px}.tts-lab-actions{display:flex;flex-wrap:wrap;gap:8px}.tts-lab-error,.tts-record-error{border:1px solid #713c3c;border-radius:7px;padding:8px;color:#ffd2d2;background:#df6a6a14;font-size:12px;line-height:1.5}.detail-list.compact{gap:7px}.detail-list.compact .detail-row{padding:8px}.tts-history-record{display:grid;gap:10px;border:1px solid var(--line);border-radius:8px;padding:12px;background:#111820}.tts-record-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.tts-record-footer{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:10px;align-items:start}.tts-record-head div{display:grid;gap:5px;min-width:0}.tts-record-head strong,.tts-record-meta strong,.tts-record-kpis strong{color:var(--text);word-break:break-word}.tts-record-head span:not(.pill),.tts-record-meta span,.tts-record-kpis span{color:var(--muted);font-size:11px}.tts-record-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.tts-record-kpis div,.tts-record-meta div{display:grid;gap:4px;border:1px solid var(--line);border-radius:7px;padding:8px;background:#0f151b}.tts-record-kpis strong{font-family:SFMono-Regular,Consolas,monospace;font-size:12px}.tts-record-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.tts-audio-preview{display:grid;grid-template-columns:118px minmax(0,1fr);gap:10px;align-items:center;min-height:44px;border:1px solid var(--line);border-radius:8px;padding:8px;background:#0f151b;color:var(--muted);font-size:12px}.tts-audio-preview>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tts-verdict-grid{display:flex;flex-wrap:wrap;gap:7px;grid-column:1 / -1;justify-content:flex-end}.tts-record-actions{display:flex;flex-wrap:wrap;gap:7px;justify-content:flex-end}.fixed-voice-pack-board{display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:12px;min-height:0;overflow:hidden;border:1px solid var(--line);border-radius:8px;padding:12px;background:#0f151b}.fixed-pack-head-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-end}.fixed-pack-layout{display:grid;grid-template-columns:minmax(520px,clamp(520px,32vw,640px)) minmax(0,1fr);gap:12px;align-items:stretch;min-height:0;overflow:hidden}.fixed-pack-list{display:grid;align-content:start;gap:7px;min-height:0;overflow-y:auto;padding-right:4px}.fixed-pack-row{display:grid;grid-template-columns:minmax(160px,.75fr) minmax(0,1fr) auto;gap:8px;align-items:center;min-width:0;border:1px solid var(--line);border-radius:7px;padding:8px;color:var(--soft);background:#111820;text-align:left}.fixed-pack-row:hover{border-color:#4b5a69;background:#151e27}.fixed-pack-row.active{border-color:#23696d;background:#123438}.fixed-pack-id,.fixed-pack-preview{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fixed-pack-id{color:var(--text);font-family:SFMono-Regular,Consolas,monospace;font-size:12px;font-weight:700}.fixed-pack-preview{color:var(--muted);font-size:12px}.fixed-pack-detail{display:grid;align-content:start;gap:12px;min-width:0;min-height:0;overflow:auto;border:1px solid var(--line);border-radius:8px;padding:12px;background:#111820}.fixed-pack-detail-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.fixed-pack-detail-head div{display:grid;gap:4px;min-width:0}.fixed-pack-detail-head strong{overflow:hidden;color:var(--text);font-family:SFMono-Regular,Consolas,monospace;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.fixed-pack-detail-head span:not(.pill){overflow:hidden;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.fixed-pack-actions{display:flex;flex-wrap:wrap;gap:8px}.fixed-pack-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.fixed-pack-kpis div{display:grid;gap:4px;min-width:0;border:1px solid var(--line);border-radius:7px;padding:8px;background:#0f151b}.fixed-pack-kpis strong{overflow:hidden;color:var(--text);font-family:SFMono-Regular,Consolas,monospace;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.fixed-pack-kpis span{color:var(--muted);font-size:11px}.fixed-pack-text{max-height:260px;overflow-y:auto;border:1px solid var(--line);border-radius:8px;padding:12px;color:var(--text);background:#0d141a;font-size:14px;line-height:1.75;white-space:pre-wrap;word-break:break-word}.registration-summary{display:grid;gap:10px;margin-bottom:12px;border:1px solid var(--line);border-radius:8px;padding:12px;background:#111820}.summary-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.summary-head div{display:grid;gap:4px;min-width:0}.summary-head strong,.summary-kpis strong,.summary-field strong,.summary-event strong{color:var(--text);word-break:break-word}.summary-head span,.summary-kpis span,.summary-field span,.summary-event span,.summary-event small{color:var(--muted);font-size:11px}.summary-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.summary-kpis div,.summary-field,.summary-event{display:grid;gap:4px;border:1px solid var(--line);border-radius:7px;padding:8px;background:#0f151b}.summary-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.summary-field em,.summary-event em{color:var(--cyan);font-size:11px;font-style:normal}.summary-events{display:grid;gap:7px}.summary-event{grid-template-columns:78px 74px 58px minmax(0,1fr);align-items:center}.summary-event small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lower-grid{display:grid;grid-template-columns:minmax(520px,1fr) 420px;gap:14px;align-items:start;margin:0 14px 14px}.round-card{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:stretch;border:1px solid var(--line);border-radius:8px;padding:12px;background:#111820}.round-side{display:grid;gap:8px;min-width:0}.round-text{min-height:76px;border:1px solid var(--line);border-radius:7px;padding:10px;background:#0f151b;font-size:13px;line-height:1.55;white-space:pre-wrap}.round-text.user{color:#eadfff;border-color:#554676}.round-text.assistant{color:#dff8e8;border-color:#315047}.round-actions{display:grid;gap:8px;align-content:center}.timeline{margin:0 14px 14px;border:1px solid var(--line);border-radius:8px;padding:14px;background:#0e141a}.timeline-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.timeline-head h2{font-size:14px}.timeline-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.filter-tabs{display:flex;flex-wrap:wrap;overflow:hidden;border:1px solid var(--line);border-radius:7px;background:#111820}.filter-tab{min-height:32px;border:0;border-right:1px solid var(--line);padding:0 10px;color:var(--muted);background:transparent;font-size:12px}.filter-tab:last-child{border-right:0}.filter-tab.active{color:var(--cyan);background:#123438}.events{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.event{min-height:112px;border:1px solid var(--line);border-radius:7px;padding:9px;background:var(--panel)}.event-top{display:flex;justify-content:space-between;gap:8px;margin-bottom:8px;color:var(--muted);font-size:11px}.event-order{color:var(--text);font-weight:700}.event-code{margin-top:8px;color:var(--soft);font-family:SFMono-Regular,Consolas,monospace;font-size:12px;line-height:1.45}.event-code.compact{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-code.expanded{max-height:220px;overflow:auto;border:1px solid var(--line);border-radius:6px;padding:8px;background:#0d141a;white-space:pre-wrap;word-break:break-word}.tag{color:var(--cyan)}.tag.down{color:var(--green)}.tag.diag{color:var(--violet)}.tag.err{color:var(--red)}.empty-text{color:var(--muted);font-size:13px;line-height:1.6}@media (max-width: 1180px){.events,.script-layout{grid-template-columns:1fr}}@media (max-width: 900px){.main,.diagnostics-strip,.tts-lab-body,.tts-lab-compose,.fixed-pack-layout,.connection-panel-body,.lower-grid,.round-card{grid-template-columns:1fr}.primary-stack,.stack.primary-stack{display:grid}.script-panel,.main>.stack:first-child,.primary-stack>.panel:not(.script-panel){grid-column:auto;grid-row:auto}.diagnostics-compact,.diag-grid.top{grid-template-columns:1fr}.diag-grid.top{margin-top:0}.script-board .script-list{max-height:360px}.topbar{grid-template-columns:1fr}.runbar{justify-content:flex-start}}@media (max-width: 760px){.topbar,.workspace-tabs,.diagnostics-strip,.tts-lab-strip,.connection-strip,.main,.lower-grid,.timeline{margin:0}.diagnostics-strip,.workspace-tabs,.tts-lab-strip,.connection-strip,.main{padding:10px}.lower-grid,.timeline{margin:0 10px 10px}.kpis,.events,.tts-record-kpis,.tts-record-meta,.fixed-pack-kpis,.summary-kpis,.summary-fields,.summary-event{grid-template-columns:1fr}.fixed-pack-row{grid-template-columns:minmax(0,1fr) auto}.fixed-pack-preview{grid-column:1 / -1}.tts-record-head,.tts-record-footer,.tts-history-head,.fixed-pack-detail-head{display:grid}.fixed-pack-actions{display:grid;grid-template-columns:1fr}.tts-record-footer,.tts-audio-preview{grid-template-columns:1fr}.tts-verdict-grid,.tts-record-actions{justify-content:flex-start}.script-scenarios,.script-toolbar{grid-template-columns:1fr}.script-toolbar .icon-btn{width:100%}.script-row{grid-template-columns:24px 54px minmax(0,1fr)}.script-row-expected{display:none}.chat-thread{min-height:460px;max-height:640px;padding:12px}.chat-message{width:94%}.chat-audio{grid-template-columns:1fr}}
