:root{--bg:#0b0e14;--panel:#131722;--panel-2:#1b202e;--border:#232a3a;--text:#d7dce6;--text-dim:#8b93a7;--accent:#3b82f6;--up:#ef5350;--down:#26a69a;--warn:#eab308;--radius:10px;font-size:14px}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:-apple-system,PingFang SC,Microsoft YaHei,Segoe UI,sans-serif}.app{flex-direction:column;min-height:100vh;display:flex}.topbar{background:var(--panel);border-bottom:1px solid var(--border);z-index:50;align-items:center;gap:24px;height:52px;padding:0 20px;display:flex;position:sticky;top:0}.brand{letter-spacing:.5px;cursor:pointer;align-items:center;gap:8px;font-size:15px;font-weight:700;display:flex}.brand-mark{background:linear-gradient(180deg, var(--up) 55%, var(--down) 55%);border-radius:3px;width:10px;height:18px}.nav{flex:1;gap:4px;display:flex}.nav-link{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:6px 14px;font-size:14px}.nav-link:hover{color:var(--text);background:var(--panel-2)}.topbar-right{align-items:center;gap:12px;display:flex}.user-chip{color:var(--text-dim);align-items:center;gap:8px;font-size:13px;display:flex}.role-badge{border-radius:10px;padding:2px 8px;font-size:11px;font-style:normal}.role-admin{color:#fbbf24;background:#fbbf241f}.role-user{color:var(--text-dim);background:var(--panel-2)}.content{flex:1;width:100%;max-width:1200px;margin:0 auto;padding:20px}.content.wide{max-width:1500px}.btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:7px 14px;font-size:13px;transition:filter .15s}.btn:hover{filter:brightness(1.15)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.ghost{background:var(--panel-2);color:var(--text)}.btn.danger{color:var(--up);border:1px solid var(--up);background:0 0}.btn.small{padding:4px 10px;font-size:12px}.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:16px}.panel-title{margin:0 0 12px;font-size:15px;font-weight:600}.muted{color:var(--text-dim);font-size:12px}input,select{background:var(--panel-2);border:1px solid var(--border);color:var(--text);border-radius:8px;outline:none;width:100%;padding:8px 12px;font-size:13px}input:focus,select:focus{border-color:var(--accent)}label{color:var(--text-dim);margin:12px 0 6px;font-size:12px;display:block}.error-text{color:var(--up);margin-top:10px;font-size:13px}.ok-text{color:var(--down);margin-top:10px;font-size:13px}table{border-collapse:collapse;width:100%;font-size:13px}th{text-align:left;color:var(--text-dim);border-bottom:1px solid var(--border);padding:8px 10px;font-weight:500}td{border-bottom:1px solid #232a3a80;padding:9px 10px}tr:hover td{background:#ffffff05}.auth-wrap{justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.auth-card{background:var(--panel);border:1px solid var(--border);border-radius:14px;width:380px;padding:32px}.auth-logo{align-items:center;gap:10px;margin-bottom:6px;font-size:18px;font-weight:700;display:flex}.auth-sub{color:var(--text-dim);margin-bottom:24px;font-size:12px}.loading-screen{min-height:100vh;color:var(--text-dim);justify-content:center;align-items:center;display:flex}.index-strip{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:18px;display:grid}.index-cell{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:10px 14px}.index-cell .nm{color:var(--text-dim);font-size:12px}.index-cell .px{margin-top:2px;font-size:16px;font-weight:600}.index-cell .pc{margin-top:2px;font-size:12px}.up{color:var(--up)}.down{color:var(--down)}.group-bar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;display:flex}.group-tab{background:var(--panel);border:1px solid var(--border);color:var(--text-dim);cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:6px 16px;font-size:13px;display:flex}.group-tab.active{color:var(--text);border-color:var(--accent);background:#3b82f614}.group-tab .del{opacity:.4;padding:0 2px;font-size:11px}.group-tab .del:hover{opacity:1;color:var(--up)}.group-bar .spacer{flex:1}.cards-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;display:grid}.quote-card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;padding:14px;transition:border-color .15s;position:relative}.quote-card:hover{border-color:#3b82f6aa}.quote-card .qc-head{justify-content:space-between;align-items:baseline;display:flex}.quote-card .qc-name{font-size:14px;font-weight:600}.quote-card .qc-code{color:var(--text-dim);font-size:12px}.quote-card .qc-price{font-variant-numeric:tabular-nums;margin-top:8px;font-size:22px;font-weight:700}.quote-card .qc-pct{margin-top:2px;font-size:13px;font-weight:600}.quote-card .qc-note{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;margin-top:6px;font-size:11px;overflow:hidden}.quote-card .qc-remove{color:var(--text-dim);cursor:pointer;opacity:0;background:0 0;border:none;font-size:14px;transition:opacity .15s;position:absolute;top:8px;right:10px}.quote-card:hover .qc-remove{opacity:1}.quote-card .qc-remove:hover{color:var(--up)}.detail-head{flex-wrap:wrap;align-items:baseline;gap:14px;margin-bottom:14px;display:flex}.detail-head h2{margin:0;font-size:20px}.detail-head .px{font-variant-numeric:tabular-nums;font-size:26px;font-weight:700}.detail-head .meta{color:var(--text-dim);font-size:12px}.interval-bar{align-items:center;gap:6px;margin-bottom:12px;display:flex}.interval-btn{background:var(--panel);border:1px solid var(--border);color:var(--text-dim);cursor:pointer;border-radius:6px;padding:4px 12px;font-size:12px}.interval-btn.active{color:var(--text);border-color:var(--accent)}.chart-box{margin-bottom:12px}.ma-toggles{color:var(--text-dim);gap:10px;margin-bottom:8px;font-size:12px;display:flex}.ma-toggles label{cursor:pointer;align-items:center;gap:4px;margin:0;display:flex}.ma-toggles input{width:auto}.modal-mask{z-index:100;background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--panel);border:1px solid var(--border);border-radius:12px;width:420px;max-width:92vw;max-height:85vh;padding:22px;overflow:auto}.modal h3{margin:0 0 14px;font-size:15px}.modal-actions{justify-content:flex-end;gap:10px;margin-top:18px;display:flex}.search-row{cursor:pointer;border-bottom:1px solid #232a3a80;justify-content:space-between;align-items:center;padding:8px 6px;display:flex}.search-row:hover{background:var(--panel-2)}.type-badge{color:var(--text-dim);border:1px solid var(--border);border-radius:10px;padding:1px 8px;font-size:11px}.temp-password{letter-spacing:1px;background:var(--panel-2);border:1px dashed var(--accent);color:var(--accent);text-align:center;-webkit-user-select:all;user-select:all;border-radius:8px;padding:12px;font-family:ui-monospace,monospace;font-size:16px}.settings-grid{gap:16px;max-width:720px;display:grid}.admin-tabs{gap:6px;margin-bottom:16px;display:flex}.recovery-codes{grid-template-columns:repeat(2,1fr);gap:8px;margin:12px 0;display:grid}.recovery-codes code{background:var(--panel-2);text-align:center;-webkit-user-select:all;user-select:all;border-radius:6px;padding:8px;font-family:ui-monospace,monospace;font-size:13px}.qr-box{background:#fff;border-radius:8px;justify-content:center;margin:12px 0;padding:12px;display:flex}.qr-box img{width:180px;height:180px}.status-pill{border-radius:10px;padding:2px 10px;font-size:11px}.pill-on{color:var(--down);background:#26a69a1f}.pill-off{color:var(--text-dim);background:var(--panel-2)}.pill-locked{color:var(--up);background:#ef53501f}.help-panel{margin-top:14px;font-size:13px}.help-panel summary{cursor:pointer;color:var(--text-dim);font-weight:500}.help-panel summary:hover{color:var(--text)}.help-body{margin-top:12px;line-height:1.8}.help-body p{margin:8px 0}.event-tag{white-space:nowrap;border-radius:8px;padding:1px 8px;font-size:11px}.event-success{color:var(--down);background:#26a69a1f}.event-fail{color:var(--up);background:#ef53501f}.event-warn{color:var(--warn);background:#eab3081f}.setup-steps{max-width:460px;margin:60px auto}.step-hint{color:var(--text-dim);margin-bottom:16px;font-size:13px;line-height:1.6}@media (width<=720px){.content{padding:12px}.cards-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.topbar .nav{display:none}}.topbar{background:linear-gradient(135deg,#e0342e,#c02820);border-bottom:2px solid #a51e18;box-shadow:0 2px 12px #a01e1859}.topbar .brand{color:#fff;white-space:nowrap}.topbar .brand-mark{background:#ffffff40}.topbar .nav-link{color:#ffd9d6;white-space:nowrap}.topbar .nav-link:hover{color:#fff;background:#ffffff24}.topbar .user-chip{color:#fff;white-space:nowrap}.topbar .role-badge{color:#c02820;background:#fff;font-weight:700}.topbar .btn.ghost{color:#fff;white-space:nowrap;background:0 0;border-color:#ffffff73}.topbar .btn.ghost:hover{color:#fff;background:#ffffff29}.topbar .index-strip{flex:1;gap:0;min-width:0;margin:0 14px;display:flex;overflow:hidden}.topbar .nav{flex:none}.topbar .topbar-right{margin-left:auto}.topbar .index-strip .index-cell{white-space:nowrap;background:0 0;border:none;border-right:1px solid #ffffff29;border-radius:0;flex-shrink:0;align-items:baseline;gap:6px;padding:4px 12px;display:flex}.topbar .index-strip .index-cell:last-child{border-right:0}.topbar .index-strip .nm{color:#ffffffbf;font-size:10.5px}.topbar .index-strip .px,.topbar .index-strip .pc{color:#fff;font-size:12px;font-weight:600}.topbar .index-strip .px.up,.topbar .index-strip .pc.up{color:#fff}.topbar .index-strip .px.down,.topbar .index-strip .pc.down{color:#ffd0ce}@media (width<=1600px){.topbar .index-strip .index-cell:nth-child(n+5){display:none}}@media (width<=1280px){.topbar .index-strip .index-cell:nth-child(n+4){display:none}}@media (width<=900px){.topbar{flex-wrap:wrap;row-gap:4px;height:auto;min-height:52px;padding:8px 12px}.topbar .index-strip{flex-basis:100%;order:10}.topbar .index-strip .index-cell:nth-child(n+3){display:none}.topbar .brand{font-size:14px}.topbar .nav-link{padding:5px 10px;font-size:13px}.topbar .user-chip{display:none}}.ths-board{flex-direction:column;gap:0;display:flex}.ths-funcgrid{background:#fff;border:1px solid #f0e3e2;border-radius:10px;grid-template-columns:repeat(8,1fr);margin-bottom:12px;display:grid;overflow:hidden}.ths-fg{text-align:center;color:#444;cursor:pointer;background:0 0;border:0;border-right:1px solid #f4f4f4;padding:11px 4px;font-family:inherit;font-size:12px;transition:background .15s;position:relative}.ths-fg:last-child{border-right:0}.ths-fg .ic{margin-bottom:4px;font-size:17px;display:block}.ths-fg:hover{color:#e0342e;background:#fff5f4}.ths-fg.on{color:#e0342e;background:#fff5f4;font-weight:600}.ths-fg .soon{color:#b9a28a;background:#f5efe4;border-radius:3px;padding:0 4px;font-size:8.5px;font-style:normal;position:absolute;top:3px;right:5px}.ths-board .group-bar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.ths-board .group-tab{color:#4a5160;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #e8e8e8;border-radius:8px;align-items:center;gap:8px;padding:6px 16px;font-size:13px;display:flex}.ths-board .group-tab.active{color:#c02820;background:#fff5f4;border-color:#e0342e;font-weight:600}.ths-board .group-tab .del{opacity:.45;padding:0 2px;font-size:11px}.ths-board .group-tab .del:hover{opacity:1;color:#d93025}.ths-board .spacer{flex:1}.ths-tablewrap{background:#fff;border:1px solid #eee;border-radius:10px;overflow-x:auto}.ths-quote{border-collapse:collapse;color:#262b35;width:100%;min-width:860px;font-size:12.5px}.ths-quote th{color:#c02820;text-align:right;white-space:nowrap;background:#fff2f0;border-bottom:2px solid #e0342e;padding:8px 10px;font-weight:600}.ths-quote th.l,.ths-quote td.l{text-align:left}.ths-quote td{text-align:right;white-space:nowrap;color:#3d4452;border-bottom:1px solid #f4f4f4;padding:9px 10px}.ths-quote td.up{color:#d93025;font-weight:600}.ths-quote td.dn{color:#0a8a52;font-weight:600}.ths-quote tbody tr{cursor:pointer;transition:background .12s}.ths-quote tbody tr:hover{background:#fff8f7}.ths-name{color:#171b22;font-weight:600}.ths-code{color:#9098a4;margin-left:5px;font-size:10px}.ths-pill{border-radius:4px;padding:2px 9px;font-size:11.5px;font-weight:600}.ths-pill.up{color:#d93025;background:#fff0f0}.ths-pill.dn{color:#0a8a52;background:#eefaf4}.ths-empty{text-align:center;padding:42px}.ths-signal{min-width:150px}.ths-sig{white-space:nowrap;border-radius:4px;margin:1px 3px;padding:2px 9px;font-size:11px;display:inline-block}.ths-sig.up{color:#e0342e;background:#e0342e17;font-weight:600}.ths-sig.dn{color:#0a9e5c;background:#0a9e5c17;font-weight:600}.ths-sig.flat{color:#666;background:#f0f1f4}.ths-act{color:#888;cursor:pointer;background:0 0;border:1px solid #e4e4e4;border-radius:6px;padding:3px 10px;font-family:inherit;font-size:11px}.ths-act:hover{color:#e0342e;background:#fff5f4;border-color:#e0342e}.ths-note{color:#999;margin-top:10px;font-size:11px;line-height:1.6}.diag-panel{background:#fff;border:1px solid #f0e3e2;border-radius:10px;margin-top:14px;padding:14px 16px}.diag-head{align-items:center;gap:10px;margin-bottom:12px;display:flex}.diag-head b{color:#c02820;font-size:14px}.diag-note{color:#98a0ad;font-size:11px}.diag-plain-toggle{color:#4a5160;cursor:pointer;background:#f7f7f8;border:1px solid #e8e8e8;border-radius:8px;align-items:center;gap:5px;padding:3px 10px;font-size:12px;display:flex}.diag-plain-toggle input{width:auto;margin:0}.diag-loading{text-align:center;color:#8a919e;padding:26px;font-size:12.5px}.diag-summary{flex-wrap:wrap;align-items:stretch;gap:16px;display:flex}.diag-total{flex-direction:column;justify-content:center;gap:6px;min-width:150px;display:flex}.diag-total-num{font-variant-numeric:tabular-nums;font-size:42px;font-weight:700;line-height:1}.diag-total-sub{align-items:baseline;gap:8px;display:flex}.diag-total-sub em{color:#98a0ad;font-size:12px;font-style:normal}.diag-total-sub b{font-size:15px}.diag-total-caption{flex-wrap:wrap;gap:4px;display:flex}.diag-dims-row{flex-wrap:wrap;flex:1;gap:10px;min-width:260px;display:flex}.diag-dim{background:#fcfcfd;border:1px solid #f0f0f2;border-radius:8px;flex:1;min-width:220px;padding:10px 12px}.diag-dim-head{justify-content:space-between;align-items:baseline;margin-bottom:6px;display:flex}.diag-dim-head b{color:#262b35;font-size:13px}.diag-dim-na{color:#98a0ad;font-size:11px}.diag-bar{background:#f0f1f4;border-radius:4px;height:8px;overflow:hidden}.diag-bar.small{height:5px;margin-bottom:8px}.diag-bar span{border-radius:4px;height:100%;display:block}.diag-items{margin:6px 0 0;padding:0;list-style:none}.diag-items li{border-top:1px dashed #f0f0f2;padding:5px 0;font-size:12px}.diag-items li:first-child{border-top:0}.diag-item-label{color:#262b35;margin-right:6px;font-weight:600}.diag-item-detail{color:#5a6270}.diag-item-plain{color:#4a5160;margin-top:2px;line-height:1.5;display:block}.diag-item-delta{float:right;font-size:11.5px;font-style:normal;font-weight:600}.diag-context{border-top:1px solid #f0f0f2;margin-top:14px;padding-top:12px}.diag-context-head{color:#262b35;font-size:12.5px;font-weight:600}.diag-context-tip{color:#98a0ad;margin-left:6px;font-weight:400}.diag-context-rows{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.diag-ctx-row{cursor:pointer;background:#fff;border:1px solid #e8e8e8;border-radius:8px;align-items:center;gap:10px;padding:5px 12px;font-family:inherit;font-size:12.5px;display:flex}.diag-ctx-row.self{cursor:default;background:#fff5f4;border-color:#e0342e}.diag-ctx-row:not(.self):hover{color:#d93025;border-color:#e0342e}.diag-ctx-row b{color:inherit;font-weight:600}.diag-ctx-row .d-up{color:#d93025;font-weight:600}.diag-ctx-row .d-dn{color:#0a8a52;font-weight:600}.diag-context-foot{color:#8a919e;margin-top:8px;font-size:11px;line-height:1.6}.page-reminders,.page-report{background:#fff;border:1px solid #f0e3e2;border-radius:10px;padding:16px 18px 18px}.page-reminders h2,.page-report h2{color:#171b22;margin:0 0 6px}.page-reminders .muted,.page-report .muted{color:#6b7280}.remind-channel-tip{color:#6b5d3f;background:#f5efe4;border:1px solid #e8dfc8;border-radius:8px;margin-bottom:12px;padding:10px 14px;font-size:12px;line-height:1.7}.remind-create{background:#fcfcfd;border:1px solid #f0f0f2;margin-bottom:16px}.remind-create h3{color:#262b35;margin:0 0 10px;font-size:14px}.remind-search input,.remind-form-row select,.remind-threshold input{color:#262b35;background:#fff;border:1px solid #d9dde3;border-radius:8px;width:100%;padding:7px 12px;font-size:13px}.remind-search-rows{max-height:240px;overflow:auto}.page-reminders .search-row{color:#262b35;border-bottom:1px solid #f0f0f2}.page-reminders .search-row .muted{color:#8a919e}.page-reminders .search-row:hover{background:#fff5f4}.remind-picked{color:#262b35;align-items:center;gap:8px;padding:6px 0;font-size:13px;display:flex}.remind-repick{cursor:pointer;color:#4a5160;background:0 0;border:1px solid #d9dde3;border-radius:6px;padding:2px 10px}.remind-form-row{flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;display:flex}.remind-form-row select{width:auto;min-width:180px}.remind-threshold{align-items:center;gap:6px;display:flex}.remind-threshold input{width:120px}.remind-ok{color:#0a8a52;margin-top:8px;font-size:12.5px}.remind-sec{color:#262b35;margin:16px 0 8px;font-size:14px}.remind-table{background:#fff}.remind-del{margin-left:6px}.remind-del:hover{color:#d93025;background:#fff0f0;border-color:#d93025}.remind-empty{color:#6b7280;text-align:center;background:#fcfcfd;border:1px solid #f0f0f2;border-radius:8px;padding:18px;font-size:12.5px}.remind-logs-toggle{margin:14px 0 8px}.remind-logs-toggle .interval-btn{color:#4a5160;background:#fff;border:1px solid #d9dde3}.remind-logs-toggle .interval-btn:hover{color:#d93025;border-color:#e0342e}.report-head{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:12px;display:flex}.page-report .btn.ghost{color:#4a5160;background:#fff;border:1px solid #d9dde3}.page-report .btn.ghost:hover{filter:none;color:#d93025;border-color:#e0342e}.report-history{color:#262b35;background:#fff;border:1px solid #d9dde3;border-radius:8px;padding:6px 10px;font-size:12.5px}.report-loading{color:#6b7280;text-align:center;padding:26px;font-size:12.5px}.report-summary{background:#fcfcfd;border:1px solid #f0f0f2;border-radius:10px;margin-bottom:6px;padding:14px 16px}.report-summary p{color:#262b35;white-space:pre-wrap;margin:8px 0;line-height:1.8}.report-source{border-radius:4px;padding:2px 9px;font-size:11px;font-weight:600}.report-source.glm{color:#d93025;background:#fff0f0}.report-source.rule{color:#5a6270;background:#f0f1f4}.report-sec{color:#262b35;margin:18px 0 8px;font-size:14px}.report-indices{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;margin-bottom:6px;display:grid}.report-index-cell{background:#fff;border:1px solid #f0f0f2;border-radius:8px;padding:10px 12px}.report-index-cell .nm{color:#8a919e;font-size:11px}.report-index-cell .px{color:#262b35;font-variant-numeric:tabular-nums;margin-top:2px;font-size:16px;font-weight:600}.report-index-cell .pc{margin-top:2px;font-size:12px;font-weight:600}.report-index-cell .up{color:#d93025}.report-index-cell .down{color:#0a8a52}.report-reminders{color:#262b35;margin:0;padding-left:18px;font-size:12.5px;line-height:2}.report-disclaimer{color:#8a919e;margin-top:16px;font-size:11px}.page-chat{gap:14px;height:calc(100vh - 92px);min-height:420px;display:flex}.chat-side{flex-direction:column;flex-shrink:0;gap:10px;width:210px;display:flex}.chat-new{width:100%}.chat-conv-list{flex:1;overflow:auto}.chat-conv{cursor:pointer;color:#b9c0cb;border-radius:8px;align-items:center;gap:6px;margin-bottom:4px;padding:8px 10px;font-size:12.5px;display:flex}.chat-conv:hover{background:#1b202e}.chat-conv.active{color:#d7dce6;background:#1b202e}.chat-conv-title{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.chat-conv-del{opacity:.35;padding:0 3px;font-size:11px}.chat-conv-del:hover{opacity:1;color:#ef5350}.chat-main{background:var(--panel);border:1px solid var(--border);border-radius:10px;flex-direction:column;flex:1;min-width:0;display:flex}.chat-head{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:12px 16px;display:flex}.chat-head b{color:#e0342e}.chat-head-note{font-size:11px}.chat-unconfigured{color:#4a4232;background:#f5efe4;border-color:#e8dfc8;margin:16px;font-size:12.5px;line-height:1.8}.chat-unconfigured p{margin:6px 0}.chat-unconfigured pre{color:#d7dce6;background:#1b202e;border-radius:8px;padding:10px 14px;font-size:12px}.chat-unconfigured code{color:#fbbf24;background:#1b202e;border-radius:4px;padding:1px 6px}.chat-msgs{flex:1;padding:16px;overflow:auto}.chat-welcome{color:#8b93a7;padding:12px 4px;font-size:13px;line-height:2}.chat-welcome-title{color:var(--text);font-weight:600}.chat-msg{margin-bottom:12px;display:flex}.chat-msg.user{justify-content:flex-end}.chat-bubble{word-break:break-word;border-radius:12px;max-width:78%;padding:10px 14px;font-size:13.5px;line-height:1.8}.chat-msg.user .chat-bubble{color:#e8ecf5;background:#2b3350;border-bottom-right-radius:4px}.chat-msg.assistant .chat-bubble{color:#d7dce6;background:#1b202e;border-bottom-left-radius:4px}.chat-bubble code{background:#0b0e14;border-radius:4px;padding:1px 6px;font-size:12px}.chat-tool-running{color:#8b93a7;border:1px dashed var(--border);font-style:italic;background:0 0!important}.chat-tools-used{color:#5b6474;margin-top:4px;font-size:10.5px}.chat-error{color:#ffb4ae;background:#3a1a18;border-radius:8px;margin:0 16px 10px;padding:10px 14px;font-size:12.5px}.chat-input-row{border-top:1px solid var(--border);gap:8px;padding:12px 16px;display:flex}.chat-input-row input{background:var(--panel-2);border:1px solid var(--border);color:var(--text);border-radius:8px;flex:1;padding:9px 14px;font-size:13.5px}@media (width<=900px){.page-chat{flex-direction:column;height:auto}.chat-side{flex-direction:row;align-items:center;width:100%}.chat-new{white-space:nowrap;flex-shrink:0;width:auto}.chat-conv-list{gap:6px;display:flex;overflow-x:auto}.chat-conv{white-space:nowrap;margin-bottom:0}.chat-msgs{min-height:300px}.chat-head{flex-wrap:wrap}.chat-head b{white-space:nowrap}.chat-head .chat-head-note{display:none}.chat-unconfigured pre{font-size:11px;overflow-x:auto}}@media (width<=760px){.ths-funcgrid{grid-template-columns:repeat(4,1fr)}.ths-fg{border-bottom:1px solid #f4f4f4}.ths-fg:nth-child(n+5){border-bottom:0}.ths-fg:nth-child(4n){border-right:0}}
