:root{color-scheme:light;--bg:#101315;--surface:#191d20;--raised:#23282c;--border:#343b40;--text:#edf1f0;--muted:#a6b0b3;--accent:#7ce1c1;--accent-bg:#1d3c34;--amber:#f0c378;--rose:#f3a6b3}
*{box-sizing:border-box;letter-spacing:0}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.65 "Microsoft YaHei UI","Microsoft YaHei",system-ui,sans-serif}[hidden]{display:none!important}h1,h2,h3,p{margin:0}h1{font-size:27px;line-height:1.4;margin:4px 0 8px}h2{font-size:17px;line-height:1.5}h3{font-size:15px}button,input,select,textarea{font:inherit}button,a,select{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}button,a{transition:background .16s,color .16s,border-color .16s}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:3px}svg.lucide{width:19px;height:19px;flex-shrink:0;stroke-width:1.7}.muted{color:var(--muted)}.small{font-size:12px}.required,.form-error{color:var(--rose)}.form-error{font-size:13px;overflow-wrap:anywhere}.form-error:empty{display:none}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip{position:fixed;left:12px;top:-80px;z-index:70;padding:10px;background:var(--accent);color:var(--bg)}.skip:focus{top:12px}
.btn,.icon-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;border:1px solid var(--border);border-radius:6px;padding:9px 14px;background:var(--raised);color:var(--text);font-weight:500;text-align:center;white-space:normal}.btn:hover,.icon-btn:hover{background:#30383d;border-color:#59686c}.btn.primary{background:var(--accent);border-color:var(--accent);color:#102b22;font-weight:700}.btn.primary:hover{background:#a0efd6}.btn.compact{font-size:12px;padding:7px 10px}.btn.text{background:transparent;border-color:transparent;color:var(--accent);padding:6px 0;min-height:44px}.icon-btn{width:44px;height:44px;padding:10px;flex:0 0 44px}.full{width:100%}.button-group{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.chip{display:inline-block;border:1px solid var(--border);border-radius:4px;padding:3px 8px;font-size:11px;line-height:1.6;background:var(--raised);color:var(--muted);overflow-wrap:anywhere}.chip.amber{color:var(--amber);background:#302c23;border-color:#4a4233}.chip.teal{color:var(--accent);background:var(--accent-bg);border-color:#325447}
label{display:block;color:var(--muted);font-size:13px;margin-bottom:6px}input,select,textarea{display:block;width:100%;min-width:0;border:1px solid #485158;border-radius:6px;background:#121719;color:var(--text);padding:10px 11px;min-height:44px}input::placeholder,textarea::placeholder{color:#879399}input[type=file]{max-width:100%;font-size:12px}textarea{resize:vertical;min-height:100px;line-height:1.8}select{padding-right:25px}option{background:var(--surface)}.form-grid{display:grid;gap:16px}.field-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}
.auth-screen{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;gap:30px}.auth-brand{display:flex;align-items:center;gap:12px;font-size:21px;flex-wrap:wrap;justify-content:center}.auth-brand>svg{color:var(--accent);width:28px;height:28px}.auth-brand>span{color:var(--muted);font-size:13px;padding-left:12px;border-left:1px solid var(--border)}.auth-form{width:min(420px,100%);padding:26px;background:var(--surface);border:1px solid var(--border);border-radius:8px}.auth-form h1{font-size:23px;margin:15px 0 7px}.auth-form>p{margin:0 0 17px}.auth-form label{margin-top:15px}.auth-form .form-error{margin-top:15px}.auth-form>.btn{margin-top:20px}.auth-footer{font-size:12px;color:var(--muted)}
.sidebar{position:fixed;inset:0 auto 0 0;width:216px;padding:24px 14px;background:#161a1d;border-right:1px solid var(--border);display:flex;flex-direction:column;z-index:5}.brand{display:flex;align-items:center;gap:12px;padding:0 6px 28px}.brand>svg{width:26px;height:26px;color:var(--accent)}.brand strong{font-size:20px}.brand small{display:block;color:var(--muted);font-size:11px}.nav{display:flex;align-items:center;gap:12px;width:100%;min-height:46px;border:1px solid transparent;border-radius:6px;padding:10px 13px;margin-bottom:5px;background:transparent;color:var(--muted);text-align:left}.nav:hover{background:var(--raised);color:var(--text)}.nav[aria-current=page]{background:var(--accent-bg);border-color:#325447;color:var(--accent)}.nav-divider{display:block;font-size:11px;color:var(--muted);padding:20px 13px 8px}.session-label{margin-top:auto;border-top:1px solid var(--border);padding:16px 9px 0;color:var(--muted);font-size:12px}.session-label small{display:block;margin-top:8px;overflow-wrap:anywhere}.status-dot{width:6px;height:6px;display:inline-block;background:var(--amber);border-radius:50%;margin-right:8px}.shell{margin-left:216px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 28px;border-bottom:1px solid var(--border);min-height:78px;background:#15191b}.company-picker{min-width:0;max-width:360px;flex:1}.company-picker label{font-size:10px;margin-bottom:2px}.company-picker select{border-color:transparent;background:transparent;padding:0 24px 0 0;font-weight:600;min-height:35px}.top-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.top-actions>select{width:126px;font-size:12px}.workspace{max-width:1540px;padding:30px 28px 28px;margin:auto;min-width:0}.page{display:none}.page.active{display:block}.page-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:26px}.page-header p{font-size:13px}.eyebrow{font-size:11px;color:var(--accent)}.section{margin-top:28px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:18px;min-height:35px}.band{min-width:0;border-top:1px solid var(--border);padding-top:20px}.band>.form-grid{margin-top:12px}.workspace-columns{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:32px}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.metric{padding:17px 18px;background:var(--surface);border:1px solid var(--border);border-radius:6px;min-height:127px}.metric-label{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--muted);font-size:12px}.metric-value{font-size:26px;line-height:1.4;min-height:37px;margin:10px 0 4px;font-variant-numeric:tabular-nums}.metric-note{font-size:11px;color:var(--muted)}.record-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0;border-bottom:1px solid var(--border);min-width:0}.record-row>div{min-width:0}.record-row strong{font-size:14px;overflow-wrap:anywhere}.record-row small{display:block;font-size:11px;color:var(--muted);margin-top:4px}.record-row .button-group{flex-shrink:0}.empty{color:var(--muted);padding:24px 0;font-size:13px}.status-row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px 0;border-bottom:1px solid var(--border)}.status-row:last-child{border-bottom:0}.notice{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:24px;background:#29271f;border-left:3px solid var(--amber);padding:13px 16px;color:var(--amber);font-size:12px}.notice.error{background:#302127;color:var(--rose);border-color:var(--rose)}.loading .page{visibility:hidden}.loading .company-picker{opacity:.6}
.topic-grid,.company-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.item-card{min-width:0;background:var(--surface);border:1px solid var(--border);padding:20px;border-radius:6px}.item-card h3{margin:14px 0 9px;overflow-wrap:anywhere}.item-card p{color:var(--muted);font-size:13px;margin-bottom:18px}.item-card .btn{margin-top:5px}.script-layout{display:grid;grid-template-columns:minmax(300px,1fr) minmax(0,1.15fr);gap:30px}.script-editor{display:flex;flex-direction:column}.script-output{min-height:530px;flex:1;white-space:pre-wrap;font-size:13px;line-height:1.9;resize:vertical}.editor-status{display:flex;justify-content:space-between;gap:15px;color:var(--muted);font-size:11px;padding:12px 0}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.toolbar>input{max-width:280px}.table-wrap{overflow-x:auto;border-top:1px solid var(--border)}table{width:100%;border-collapse:collapse;min-width:700px;text-align:left;font-size:13px}th{font-size:11px;font-weight:500;color:var(--muted);padding:13px 12px;background:#191e21}td{padding:17px 12px;border-bottom:1px solid var(--border);vertical-align:top}td:first-child{max-width:300px;overflow-wrap:anywhere}td small{display:block;color:var(--muted);font-size:11px;margin-top:4px}tbody tr:hover{background:var(--surface)}.roi-result{padding-top:20px;margin-top:24px;border-top:1px solid var(--border)}.roi-result>strong{font-size:36px;color:var(--accent);line-height:1.3;font-variant-numeric:tabular-nums}.roi-result p{font-size:13px;color:var(--muted);margin-top:6px}.evidence-notes{font-size:12px;color:var(--muted);border-top:1px solid var(--border);padding-top:20px;margin-top:20px}.evidence-notes p+p{margin-top:10px}.connection-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;padding:20px 0;border-bottom:1px solid var(--border)}.connection-row h3{margin-bottom:5px}.connection-meta{display:flex;gap:14px;flex-wrap:wrap;color:var(--muted);font-size:11px;margin:9px 0}.connection-status{display:flex;gap:8px;flex-wrap:wrap}.json-input{min-height:225px;font:12px/1.7 Consolas,monospace}.report-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:20px 0}.report-summary strong{display:block;font-size:23px;margin-top:5px;font-variant-numeric:tabular-nums}.report-summary span{color:var(--muted);font-size:12px}.report-meta{font-size:12px;color:var(--muted);overflow-wrap:anywhere}.report-meta p{margin:5px 0}.report-item{padding:18px 0;border-bottom:1px solid var(--border)}.report-item h3{margin-bottom:8px}.report-item .report-meta{margin-top:8px}footer{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;border-top:1px solid var(--border);padding-top:17px;margin-top:45px;font-size:11px;color:var(--muted)}dialog{width:min(560px,calc(100% - 32px));max-height:calc(100dvh - 40px);padding:25px;border:1px solid var(--border);border-radius:8px;color:var(--text);background:var(--surface);overflow:auto}dialog::backdrop{background:#000b}.dialog-footer{display:flex;justify-content:flex-end;margin-top:22px}.dialog-description{font-size:13px;color:var(--muted)}.toast{position:fixed;bottom:24px;right:24px;z-index:80;max-width:min(420px,calc(100vw - 36px));border:1px solid #426b5b;background:#1a332a;color:#d1f2e3;border-radius:6px;padding:13px 18px;box-shadow:0 4px 20px #0005;font-size:13px;overflow-wrap:anywhere}.toast:empty{display:none}
@media(max-width:1200px){.sidebar{width:192px;padding:24px 10px}.brand strong{font-size:18px}.shell{margin-left:192px}.topbar{padding:13px 22px}.workspace{padding:24px 22px}.top-actions{gap:7px}.script-layout{gap:22px;grid-template-columns:minmax(275px,1fr) minmax(0,1fr)}.workspace-columns{gap:24px}.topic-grid,.company-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.top-actions>#sync-badge{display:none}}
.section-bottom{margin-bottom:24px}#reference-job-list .policy-box>.checkbox-row{margin:16px 0;color:var(--text);font-size:13px}#reference-job-list .form-error{margin-top:12px}#reference-job-list .button-group{margin-top:16px}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

.chart-legend{display:flex;align-items:center;gap:18px;flex-wrap:wrap;font-size:12px;color:var(--muted);margin:4px 0 15px}.chart-legend span{display:flex;gap:7px;align-items:center}.legend-bar{display:inline-block;width:9px;height:11px;background:#407f81;border-radius:2px}.legend-line{display:inline-block;width:18px;height:3px;background:var(--accent)}.trend-chart{width:100%;height:auto;min-height:145px;display:block;overflow:visible}.trend-chart text{font-size:11px;fill:var(--muted)}.chart-grid{stroke:var(--border);stroke-dasharray:3 4}.cost-bar{fill:#407f81;opacity:.8}.roi-line{fill:none;stroke:var(--accent);stroke-width:2.2;stroke-linejoin:round;stroke-linecap:round}.trend-detail{display:flex;gap:8px 18px;flex-wrap:wrap;font-size:12px;color:var(--muted);padding:13px 0;border-top:1px solid var(--border)}.trend-detail strong{font-weight:500;color:var(--text)}.data-details summary,details summary{cursor:pointer;min-height:44px;display:list-item;align-content:center;color:var(--accent);font-size:13px}.data-details .table-wrap{max-height:360px}.data-details table{min-width:590px}.data-details th{position:sticky;top:0;background:var(--raised)}.data-details td{padding:10px 8px;font-variant-numeric:tabular-nums}
.case-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.case-grid .item-card{border-radius:9px}.case-grid .item-card h3{font-size:16px;line-height:1.6}.case-grid .item-card>small{font-size:12px}.case-comparison{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;margin:16px 0 20px}.case-comparison span{display:flex;flex-direction:column;gap:6px}.case-comparison strong{font-size:19px;color:var(--accent);font-weight:500}.case-comparison small{font-size:12px;color:var(--muted)}.case-comparison>svg{width:15px;color:var(--muted)}.check-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.check-grid strong{font-size:14px;font-weight:600}.check-grid p{color:var(--muted);font-size:13px;margin-top:7px}.analysis-list{display:grid;gap:18px}.analysis-item{padding:20px;background:#0e1a29;border:1px solid var(--border);border-radius:8px}.analysis-item h3,.proposal-item h3{font-size:16px;margin-top:9px}.analysis-item .section-heading{align-items:flex-start}.analysis-text{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.95;padding:16px 0 3px;border-top:1px solid var(--border)}.analysis-form>.btn{justify-self:start}.analysis-form .checkbox-row{font-size:13px;min-height:40px}.analysis-form .checkbox-row:has(input:disabled){opacity:.55}.workflow-strip{display:flex;align-items:center;gap:14px;flex-wrap:wrap;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:18px 21px;color:var(--muted);font-size:13px}.workflow-strip span{padding:5px 10px;border-radius:4px;background:var(--raised)}.workflow-strip svg{width:16px;color:var(--accent)}.proposal-list{display:grid;gap:18px}.proposal-fields{margin:0 0 17px}.proposal-fields>div{display:grid;grid-template-columns:110px minmax(0,1fr);gap:15px;padding:12px 0;border-bottom:1px solid var(--border);font-size:13px}.proposal-fields dt{color:var(--muted)}.proposal-fields dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}
.analysis-list{grid-template-columns:minmax(0,1fr)}.analysis-item{min-width:0;overflow-wrap:anywhere}
.connection-steps{padding-left:24px;margin:18px 0;line-height:2}.oauth-account{display:flex;align-items:center;gap:12px;min-height:48px;padding:10px 0;cursor:pointer}.oauth-account input{width:20px;height:20px;flex:0 0 20px}.oauth-account small{display:block;color:var(--muted)}#qianchuan-picker{width:min(620px,calc(100vw - 32px))}#qianchuan-picker fieldset{border:1px solid var(--border);border-radius:8px;padding:14px}#qianchuan-picker-company{margin:14px 0}#qianchuan-connect>.btn{margin-top:16px}.oauth-return{max-width:680px;margin:10vh auto}
.member-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 0;border-bottom:1px solid var(--border);min-width:0}.member-row>div{min-width:0;overflow-wrap:anywhere}.member-row .button-group{flex-shrink:0}#reset-url,#invite-url{overflow-wrap:anywhere}#quota-summary strong{font-size:24px;color:var(--accent)}#password-dialog{width:min(460px,calc(100vw - 32px))}#password-help{margin-top:18px}#deployment-status{overflow-wrap:anywhere}@media(max-width:600px){.member-row{align-items:flex-start;flex-direction:column}.member-row .button-group{width:100%}}
#experience-panel{scroll-margin-top:110px}#experience-detail-dialog{width:min(840px,calc(100vw - 32px));max-height:85dvh;overflow:auto}.experience-block{margin-top:22px;padding-top:16px;border-top:1px solid var(--border);overflow-wrap:anywhere}.experience-block p{white-space:pre-wrap;margin-top:8px}.experience-block blockquote{margin:12px 0;padding:10px 14px;border-left:3px solid var(--accent);color:var(--muted);white-space:pre-wrap}#experience-context{padding:12px 14px;background:var(--accent-bg);border-radius:8px}#experience-content{min-height:160px}
#auth-screen{position:relative;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(330px,.8fr);grid-template-rows:auto 1fr auto;column-gap:clamp(32px,7vw,130px);row-gap:34px;align-items:center;min-height:100dvh;max-width:1440px;margin:auto;padding:46px clamp(28px,6vw,90px) 26px;background:radial-gradient(ellipse at 15% 45%,rgba(49,123,109,.1),transparent 58%)}
#auth-screen .auth-brand{grid-column:1/-1;justify-content:flex-start;font-size:20px;gap:12px}#auth-screen .auth-brand>.brand-symbol{border:1px solid rgba(125,224,194,.38);padding:0;font-size:inherit;color:var(--accent)}#auth-screen .auth-brand>span:last-child{font-size:12px;color:var(--muted);font-weight:400}.auth-story{position:relative;padding-top:18px;align-self:center}.auth-story>.eyebrow{font-size:10px;letter-spacing:.22em;color:#9db9bf}.auth-story h2{font-size:clamp(32px,3.9vw,58px);letter-spacing:-.05em;line-height:1.45;margin:20px 0 18px;font-weight:550}.auth-story>p{font-size:15px;line-height:2.1;color:var(--muted)}.auth-story-foot{display:flex;gap:24px;flex-wrap:wrap;border-top:1px solid var(--border);padding-top:22px;margin-top:8px;color:#96acbc;font-size:11px}.auth-orbit{position:relative;width:280px;height:200px;margin:24px auto 10px 20px;opacity:.9}.orbit-ring{position:absolute;inset:10px 10px;border:1px solid rgba(125,224,194,.2);border-radius:50%;transform:rotate(-22deg);box-shadow:0 0 35px rgba(125,224,194,.025)}.orbit-ring.inner{inset:36px 46px;transform:rotate(22deg);border-style:dashed;border-color:rgba(125,224,194,.17)}.orbit-core,.orbit-node{position:absolute;display:grid;place-items:center;border:1px solid rgba(125,224,194,.3);border-radius:16px;background:linear-gradient(140deg,#244a44,#152e36);color:var(--accent)}.orbit-core{width:76px;height:76px;left:102px;top:62px;box-shadow:0 0 60px rgba(91,203,168,.12)}.orbit-core svg{width:38px;height:38px}.orbit-node{width:42px;height:42px;border-radius:12px;background:#142531}.node-one{left:32px;top:17px}.node-two{right:0;top:104px}.node-three{left:56px;bottom:0}.orbit-node svg{width:20px;height:20px}
#auth-screen .auth-form{width:100%;max-width:430px;justify-self:end;border:1px solid rgba(143,170,193,.25);border-radius:18px;padding:34px;background:linear-gradient(150deg,rgba(25,43,59,.95),rgba(16,28,42,.96));box-shadow:0 24px 80px rgba(0,0,0,.25)}#auth-screen .auth-form h1{font-size:24px;line-height:1.5;margin-top:18px}#auth-screen .auth-form>p{font-size:13px;line-height:1.8}#auth-screen .auth-form input{min-height:48px}#auth-screen .auth-form>.btn{min-height:48px}#auth-screen .auth-footer{grid-column:1/-1;text-align:right;font-size:11px;color:#8ea2b5}
.legacy-notice{display:block;padding:10px 16px;margin-bottom:22px;box-shadow:none}.legacy-notice summary{min-height:24px;font-size:11px;padding:0}.legacy-notice .button-group{margin-top:12px}.answer-heading{display:flex;gap:8px;flex-wrap:wrap;justify-content:space-between;align-items:center}.answer-question{margin-top:12px;font-size:12px;color:var(--muted)}.answer-question p{line-height:1.8;margin:8px 0;white-space:pre-wrap}.operator-answer-card>.operator-answer-summary{display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden}.answer-full{font-size:12px;border-top:1px solid var(--border);padding-top:12px}.answer-full[open]+*{display:block}.operator-answer-card:has(.answer-full[open])>.operator-answer-summary{display:block}.answer-history,.past-answer{margin-top:16px;font-size:12px}.past-answer{border-top:1px solid var(--border);padding-top:12px}.answer-history .analysis-item{margin-top:12px}.answer-full .button-group{margin-top:16px}.answer-full .analysis-text{font-size:13px}
/* 智投 2026-10：顶部导航、集中工作区、简报与编辑器。 */
:root{--bg:#0b111a;--surface:#141e2b;--raised:#1c2939;--inset:#101925;--border:#314154;--text:#eef3f7;--muted:#a9b8c9;--accent:#80dec0;--accent-bg:#17382f;--amber:#efd096;--rose:#f0aab9}
html{scroll-padding-top:96px}body{background:var(--bg);font-family:"Segoe UI","Microsoft YaHei UI","Microsoft YaHei",system-ui,sans-serif}h1,h2,h3{font-weight:600}h1{font-size:32px;line-height:1.4}h2{font-size:18px}svg.lucide{stroke-width:1.65}.eyebrow{display:inline-block;color:var(--muted);font-size:10px;font-weight:600;letter-spacing:.14em}
.btn,.icon-btn{border-radius:9px;background:var(--raised);padding:10px 15px;box-shadow:none;transition:background .16s ease,border-color .16s ease,color .16s ease}.icon-btn{padding:10px;width:44px;height:44px;flex:0 0 44px}.btn:hover,.icon-btn:hover{background:#293a4d;border-color:#587083;transform:none}.btn:active,.icon-btn:active{background:#30455b}.btn.primary{background:var(--accent);border-color:var(--accent);color:#102b23;font-weight:650}.btn.primary:hover{background:#a3ebd4;border-color:#a3ebd4}.btn.primary:active{background:#68caaa}.btn.compact{font-size:12px;padding:9px 12px}.btn.text{background:transparent;border-color:transparent;color:var(--accent)}.btn.danger{color:var(--rose);border-color:#825560;background:#36232b}.btn.danger:hover{background:#472f38}
.chip{border-radius:6px;padding:4px 9px;font-size:11px;background:var(--raised);color:var(--muted);border-color:var(--border)}.chip.amber{color:var(--amber);background:#302a21;border-color:#68573d}.chip.teal{color:var(--accent);background:var(--accent-bg);border-color:#426e5c}
input,select,textarea{border:1px solid #4c6076;border-radius:9px;background:var(--inset);color:var(--text);padding:11px 12px;transition:border-color .16s ease}input:hover,select:hover,textarea:hover{border-color:#72869b}input::placeholder,textarea::placeholder{color:#97a8bc;opacity:1}label{margin-bottom:7px}.form-grid{gap:18px}.field-grid{gap:12px}.checkbox-row{min-height:44px}.checkbox-row input{width:20px;min-height:20px;height:20px;flex:0 0 20px}
.sidebar.workspace-header{position:sticky;inset:auto;top:0;z-index:30;display:flex;flex-direction:row;align-items:center;gap:28px;width:100%;padding:16px clamp(20px,3.2vw,64px);min-height:80px;background:#111b28;border:0;border-bottom:1px solid var(--border);box-shadow:none}
.brand{flex:0 0 218px;gap:12px;padding:0;color:var(--text)}.brand:hover{text-decoration:none}.brand-symbol{display:grid;place-items:center;width:40px;height:40px;flex:0 0 40px;border-radius:12px;background:var(--accent-bg);color:var(--accent);border:1px solid #426e5c}.brand-symbol svg{width:23px;height:23px}.brand strong{font-size:22px;letter-spacing:.08em}.brand small{font-size:9px;line-height:1.4;letter-spacing:.12em}
.workspace-header nav{display:flex;gap:6px;align-items:center;min-width:0;overflow:visible}.nav{display:flex;align-items:center;justify-content:center;gap:8px;width:auto;min-height:44px;margin:0;padding:10px 14px;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--muted);white-space:nowrap;transition:background .16s ease,color .16s ease}.nav:hover{background:var(--raised);color:var(--text)}.nav[aria-current=page]{background:var(--accent-bg);border-color:#426e5c;color:var(--accent)}.nav-toggle{display:none;background:transparent}
.nav-management{position:relative}.nav-management>summary{display:flex;gap:8px;align-items:center;padding:10px 12px;min-height:44px;color:var(--muted);border:1px solid transparent;border-radius:9px;font-size:14px;font-weight:500;list-style:none}.nav-management>summary::-webkit-details-marker{display:none}.nav-management>summary>svg:last-child{width:13px;height:13px}.nav-management>summary:hover,.nav-management[open]>summary{color:var(--text);background:var(--raised)}.nav-management:has(.nav[aria-current=page])>summary{color:var(--accent);background:var(--accent-bg)}.nav-management-menu{position:absolute;top:calc(100% + 12px);right:0;width:194px;padding:8px;border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:0 18px 45px #0005}.nav-management-menu>.nav{justify-content:flex-start;width:100%}
.session-label{margin:0 0 0 auto;padding:0;border:0;text-align:right;font-size:11px;min-width:0}.session-label>span{color:var(--amber)}.session-label small{margin-top:2px;font-size:11px}
.shell{margin:0}.topbar{display:flex;position:static;align-items:center;gap:22px;padding:12px clamp(20px,3.2vw,64px);min-height:72px;border-bottom:1px solid #263445;background:var(--bg)}.company-picker{display:flex;align-items:center;gap:10px;max-width:400px;min-width:0;flex:0 1 auto}.company-picker>svg{color:var(--muted)}.company-picker>div{min-width:0}.company-picker label{font-size:10px;margin:0}.company-picker select{background:transparent;border:0;padding:3px 24px 3px 0;font-weight:600;min-height:44px;max-width:300px}.company-picker select:disabled{opacity:1;color:var(--text)}.topbar-breadcrumb{display:flex;gap:20px;align-items:center;font-size:12px;color:var(--muted)}.topbar-breadcrumb>span:first-child{color:#7c91a6}.top-actions{gap:8px;margin-left:auto;flex-wrap:nowrap}.top-actions .icon-btn{background:transparent;border-color:transparent;color:var(--muted)}.top-actions .icon-btn:hover{background:var(--raised);color:var(--text)}.top-actions>.chip{margin-right:12px}
.workspace{max-width:1600px;padding:32px clamp(20px,3.2vw,64px) 24px;margin:auto;min-width:0}.workspace:focus{outline:none}.page-header{gap:20px;margin-bottom:28px}.page-header h1{margin:5px 0 8px}.page-header p{font-size:13px}.section{margin-top:24px}.section-heading{gap:16px;margin-bottom:20px;min-height:0}.section-heading .eyebrow{margin-bottom:6px}.panel,.band{min-width:0;padding:24px;background:var(--surface);border:1px solid var(--border);border-radius:16px}.panel>.form-grid{margin-top:20px}.band>.form-grid{margin-top:18px}.workspace-columns{gap:24px}.notice{background:#302a21;border:1px solid #68573d;border-radius:9px;padding:14px 16px;color:var(--amber);font-size:12px;overflow-wrap:anywhere}.notice.error{background:#36232b;color:var(--rose);border-color:#825560}.legacy-notice{display:block;padding:5px 16px}.legacy-notice summary{color:var(--amber);font-size:12px;min-height:44px}.legacy-notice .button-group{margin:12px 0}
.dataset-note{font-size:12px;color:var(--muted);line-height:1.85;margin-top:14px;padding-left:3px;overflow-wrap:anywhere}.dataset-note::before{content:'';display:inline-block;width:5px;height:5px;background:var(--amber);border-radius:50%;vertical-align:middle;margin-right:8px}
.overview-header-actions{justify-content:flex-end}.overview-dataset{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.65fr);gap:28px;align-items:center;padding:18px 20px;margin-bottom:20px;border:1px solid var(--border);background:var(--inset);border-radius:12px}.account-hero{display:flex;align-items:center;gap:14px;min-width:0}.account-mark{display:grid;place-items:center;width:46px;height:46px;flex:0 0 46px;background:#213c39;color:var(--accent);border-radius:12px}.account-mark svg{width:23px;height:23px}.account-description{min-width:0}.account-description h2{font-size:16px;overflow-wrap:anywhere}.account-description p{color:var(--muted);font-size:11px;margin-top:4px;overflow-wrap:anywhere}.dashboard-toolbar{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:center;gap:20px;min-width:0}.dashboard-toolbar label{font-size:11px}.dashboard-toolbar select{background:var(--surface);font-size:12px}.dashboard-toolbar p{margin-top:6px;font-size:11px;overflow-wrap:anywhere}
.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.metric{min-width:0;padding:20px;border:1px solid var(--border);background:var(--surface);border-radius:12px;min-height:0}.metric-label{font-size:12px}.metric-label svg{width:18px;height:18px;color:var(--muted)}.metric-value{font-size:clamp(24px,2.25vw,34px);line-height:1.4;min-height:0;margin:13px 0 8px;font-weight:600;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.metric-note{font-size:11px;line-height:1.65}#overview-metrics .metric:nth-child(3){background:#17332f;border-color:#426e5c}#overview-metrics .metric:nth-child(3) .metric-value{color:var(--accent)}
.overview-grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);gap:20px}.trend-panel{min-height:330px}.trend-chart{min-height:0}.trend-detail{font-size:11px;padding:16px 0 10px}.trend-detail:empty{display:none}.chart-legend{font-size:11px;margin:0 0 18px}.cost-bar{fill:#569ca2}.legend-bar{background:#569ca2}.module-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}.module-card{display:flex;align-items:center;gap:13px;width:100%;min-width:0;padding:15px;background:var(--inset);border:1px solid var(--border);border-radius:11px;color:var(--text);text-align:left;transition:background .16s ease,border-color .16s ease}.module-card:hover{background:#1c3234;border-color:#426e5c}.module-card:active{background:#24433c}.module-icon{width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center;background:var(--accent-bg);color:var(--accent);border-radius:10px}.module-copy{display:grid;gap:4px;flex:1;min-width:0}.module-copy strong{font-size:14px;font-weight:600}.module-copy>span,.module-copy small{font-size:11px;color:var(--muted)}.module-card>svg{color:var(--muted);width:17px;height:17px}.entry-panel>.section-heading{flex-wrap:wrap;gap:8px}#overview-trend>.empty{display:grid;place-content:center;min-height:190px;text-align:center;padding:24px;border:1px dashed var(--border);border-radius:9px}
.script-layout{grid-template-columns:minmax(0,.78fr) minmax(0,1.4fr);gap:24px;align-items:stretch}.creative-brief{align-content:start;gap:18px}.creative-brief>.section-heading{margin-bottom:0}.creative-brief>.section-heading>svg{color:var(--muted)}.creative-brief textarea{min-height:126px}.creative-brief>.btn{width:100%;min-height:48px}.brief-options{border-top:1px solid var(--border);padding-top:4px}.brief-options>.form-grid{margin-top:14px}.script-editor>.muted{margin-bottom:18px}.script-output{color-scheme:light;flex:1;min-height:550px;padding:28px;border:1px solid #a3ada9;border-radius:9px;background:#e8ebe5;color:#1e302b;font-size:14px;line-height:2.1;white-space:pre-wrap;resize:vertical}.script-output:disabled{opacity:1;color:#40564b}.script-output::placeholder{color:#516459}.script-output:focus-visible{outline-color:#1c7458}.editor-status{padding:14px 0 0}.studio-support{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:start}.script-diagnostics>summary{display:flex;align-items:center;gap:12px;color:var(--text);min-height:44px;list-style:none}.script-diagnostics>summary::-webkit-details-marker{display:none}.script-diagnostics>summary>svg:first-child{color:var(--accent)}.script-diagnostics>summary>svg:last-child{margin-left:auto}.script-diagnostics[open]>summary{margin-bottom:22px;border-bottom:1px solid var(--border);padding-bottom:18px}.record-row:last-child{border-bottom:0}
.live-workbench-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.85fr);gap:22px;align-items:start}.live-header-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.live-control-panel,.live-dashboard-panel{min-width:0;padding:22px}.live-control-panel{background:#121d2b}.live-dashboard-panel{background:var(--surface)}.live-control-panel>.section-heading{align-items:flex-start;flex-wrap:wrap;gap:12px;margin-bottom:14px}.assistant-heading{display:flex;align-items:center;gap:12px;min-width:0}.assistant-symbol{width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;color:var(--accent);border:1px solid #426e5c;border-radius:10px;background:var(--accent-bg)}.assistant-heading .eyebrow{margin-bottom:3px;letter-spacing:.08em}.assistant-heading h2{font-size:18px}#operator-status{font-size:10px}.conversation-stream{margin-top:22px}.conversation-empty{min-height:230px;padding:24px 12px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--muted);background:var(--inset);border:1px dashed var(--border);border-radius:11px}.empty-state-icon{display:grid;place-items:center;width:48px;height:48px;margin-bottom:14px;background:var(--raised);border-radius:12px;color:var(--accent)}.empty-state-icon svg{width:25px;height:25px}.conversation-empty h3,.data-empty-state h3{font-size:16px;color:var(--text);margin-bottom:9px}.conversation-empty p,.data-empty-state p{font-size:12px;line-height:1.9}
.question-shortcuts{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.question-shortcut{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:9px 10px;border:1px solid var(--border);border-radius:7px;background:var(--inset);color:var(--muted);font-size:11px}.question-shortcut svg{width:14px;height:14px}.question-shortcut:hover{color:var(--accent);background:var(--accent-bg);border-color:#426e5c}.live-question-form{margin-top:18px;gap:13px}.live-question-form textarea{min-height:135px;padding:14px;font-size:13px}.live-question-form label{color:var(--text);font-size:12px}.live-question-form .small{margin-top:8px;font-size:11px}.live-question-form .btn.primary{width:100%;min-height:48px}#operator-progress:empty,#live-progress:empty{display:none}.assistant-footnote{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:13px;color:var(--muted);font-size:11px}.assistant-footnote svg{width:14px;height:14px}.live-control-panel>.data-details{border-top:1px solid var(--border);padding-top:8px}.live-dashboard-panel>.section-heading{flex-wrap:wrap;align-items:flex-start;gap:12px}.live-status-line{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:11px;border-bottom:1px solid var(--border);padding-bottom:14px;font-variant-numeric:tabular-nums}
.live-evidence-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:18px 0;margin-bottom:4px;border-bottom:1px solid var(--border)}.live-evidence-cell{min-width:0}.live-evidence-cell span,.live-evidence-cell strong,.live-evidence-cell small{display:block;font-size:11px;overflow-wrap:anywhere}.live-evidence-cell>span,.live-evidence-cell small{color:var(--muted)}.live-evidence-cell strong{font-weight:500;color:var(--text);margin:5px 0}.live-evidence-cell strong.warn{color:var(--amber)}.live-evidence-empty{grid-column:1/-1;color:var(--muted);font-size:12px;line-height:1.9}.live-dashboard-content{min-width:0}.live-dashboard-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:18px}.live-dashboard-metrics .metric{padding:15px 13px;background:var(--inset);border-radius:10px}.live-dashboard-metrics .metric-label{font-size:11px}.live-dashboard-metrics .metric-value{font-size:clamp(20px,1.75vw,28px);margin:10px 0 6px}.live-dashboard-metrics .metric-note{font-size:10px}.live-dashboard-metrics .metric:nth-child(3){border-color:#426e5c;background:#17332f}.live-dashboard-metrics .metric:nth-child(3) .metric-value{color:var(--accent)}.live-dashboard-meta{display:flex;gap:14px;flex-wrap:wrap;color:var(--muted);font-size:11px;padding:18px 0}
.live-topic-tabs{display:flex;gap:8px;flex-wrap:wrap;padding:4px 0 15px;border-bottom:1px solid var(--border)}.live-topic-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;border:1px solid var(--border);background:var(--inset);color:var(--muted);border-radius:7px;padding:9px 10px;font-size:11px;transition:background .16s ease,color .16s ease}.live-topic-tabs button[aria-pressed=true]{background:var(--accent-bg);color:var(--accent);border-color:#426e5c}.live-topic-tabs span{padding:0 4px;font-size:10px;color:inherit}.live-detail-grid{display:grid;grid-template-columns:minmax(0,1fr);margin-top:18px}.live-detail-card{min-width:0;padding:0}.live-detail-card>.section-heading{margin-bottom:6px}.live-detail-card h3{font-size:15px}.live-detail-card>.muted{margin-bottom:13px}.detail-table-wrap{overflow:auto;max-height:420px}.detail-table{min-width:560px;font-size:12px}.detail-table th{position:sticky;top:0;z-index:1}.detail-table td{padding:12px 10px}.detail-table td:first-child{max-width:220px}.detail-table strong{font-size:12px;font-weight:500}.detail-table small{font-size:10px;overflow-wrap:anywhere}.detail-empty,.detail-unavailable{min-height:180px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;color:var(--muted);padding:24px;border:1px dashed var(--border);border-radius:9px}.detail-empty svg{color:var(--amber);margin-bottom:12px}.detail-empty p,.detail-unavailable p{font-size:12px;line-height:1.9}.data-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:590px;padding:28px;color:var(--muted);text-align:center}.data-empty-state .btn{margin-top:20px}.live-explain{border:1px solid var(--border);background:var(--inset);border-radius:10px;padding:4px 18px}.live-explain p{line-height:1.9;margin:8px 0 14px}#live-auto-toggle{background:transparent}#live-auto-toggle[aria-pressed=true]{border-color:#426e5c;color:var(--accent)}
.workflow-strip{display:flex;gap:18px;align-items:center;flex-wrap:wrap;padding:18px 22px;border:1px solid var(--border);background:var(--inset);border-radius:11px;color:var(--muted);font-size:12px}.workflow-strip svg{color:var(--accent);width:15px;height:15px}.reference-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.45fr);gap:24px;align-items:start;margin-top:24px}.reference-input>.section-heading{flex-wrap:wrap;gap:10px}#reference-link-form>.field-grid{grid-template-columns:minmax(0,1fr)}#reference-share{min-height:96px}#reference-question{min-height:120px}#reference-link-form>.btn{width:100%;min-height:48px}.reference-fallback{margin-top:22px;border-top:1px solid var(--border);padding-top:6px}.reference-fallback .form-grid{margin-top:14px}.reference-results{min-height:640px}.reference-results>.section-heading{align-items:flex-start;flex-wrap:wrap;gap:12px}#viral-analyses>.empty{min-height:380px;display:grid;place-content:center;text-align:center;border:1px dashed var(--border);border-radius:11px}
.analysis-list{gap:16px}.analysis-item{padding:18px;background:var(--inset);border:1px solid var(--border);border-radius:11px;overflow-wrap:anywhere}.analysis-item h3{margin-top:10px;font-size:15px}.analysis-item .section-heading{align-items:flex-start;flex-wrap:wrap;gap:12px}.analysis-text{font-size:13px;line-height:1.95}.analysis-form>.btn{justify-self:start}.policy-box{margin-top:16px;padding:16px;background:var(--surface);border:1px solid var(--border);border-radius:8px}.policy-box p{font-size:13px;margin:10px 0 5px}.policy-box small{color:var(--muted);font-size:12px}.operator-answer-summary{font-size:13px;line-height:1.95;margin:16px 0;white-space:pre-wrap}.operator-answer-card>.operator-answer-summary{display:block;overflow:visible}.load-details{font-size:12px;line-height:1.85}.load-details h4{margin:20px 0 9px}.load-details p{margin:10px 0}.load-details code,#operator-company-id{overflow-wrap:anywhere;color:var(--muted)}.load-details ul{padding-left:22px}.company-grid{gap:18px}.item-card{padding:22px;border-radius:12px}.connection-row{padding:22px 0}.connection-meta{overflow-wrap:anywhere}table{min-width:620px;font-size:12px}th{font-size:11px;background:var(--raised)}td{font-variant-numeric:tabular-nums}.evidence-caption{color:var(--muted);font-size:12px;line-height:1.85;margin-top:20px}footer{padding-top:20px;margin-top:36px}dialog{padding:26px;border-radius:14px;box-shadow:0 24px 70px #0006}dialog::backdrop{background:#030911cc}.toast{bottom:max(24px,env(safe-area-inset-bottom));border-radius:10px;background:var(--accent-bg);color:#d9f5eb;border-color:#426e5c;box-shadow:0 12px 40px #0004}
@media(max-width:1250px){.workspace-header{gap:20px}.brand{flex-basis:185px}.session-label{display:none}.workspace-header nav{margin-left:auto}.nav{padding:10px 12px;font-size:13px}.overview-dataset{grid-template-columns:minmax(0,.8fr) minmax(0,1.6fr);gap:20px}.dashboard-toolbar{grid-template-columns:minmax(0,1fr);gap:12px}.live-workbench-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.6fr)}.live-dashboard-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.company-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:950px){.sidebar.workspace-header{flex-wrap:wrap;padding:14px 24px;gap:12px}.brand{flex:1}.nav-toggle{display:inline-flex}.workspace-header nav{display:none;width:100%;flex:1 1 100%;margin:4px 0 0;padding-top:14px;border-top:1px solid var(--border);flex-wrap:wrap}.workspace-header nav.nav-open{display:flex}.workspace-header .nav{justify-content:flex-start;width:auto;flex:1 1 calc(50% - 12px);font-size:14px;min-height:48px}.nav-management{flex:1 1 100%}.nav-management>summary{min-height:48px}.nav-management-menu{position:static;display:flex;width:100%;margin-top:8px;box-shadow:none;gap:8px}.topbar{padding:10px 24px;gap:16px}.topbar-breadcrumb,.top-actions>.chip{display:none}.workspace{padding:26px 24px 24px}.page-header{align-items:flex-start}.overview-grid{grid-template-columns:minmax(0,1fr)}.entry-panel .module-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.entry-panel .module-card{flex-wrap:wrap;align-items:flex-start}.module-card>svg{margin-left:auto}.entry-panel .module-copy{flex-basis:100%;order:1}.script-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:18px}.creative-brief .field-grid{grid-template-columns:minmax(0,1fr)}.script-output{padding:22px}.live-workbench-grid{grid-template-columns:minmax(0,1fr)}.live-dashboard-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.conversation-empty{min-height:160px}.data-empty-state{min-height:360px}.reference-layout{grid-template-columns:minmax(0,1fr)}.reference-results{min-height:400px}#auth-screen{gap:32px;padding:32px}.auth-story h2{font-size:36px}}
@media(max-width:700px){.sidebar.workspace-header{position:relative;padding:14px 18px}.brand strong{font-size:20px}.brand small{font-size:8px}.topbar{padding:10px 18px;gap:8px}.company-picker{flex:1;max-width:calc(100% - 150px)}.company-picker>svg{display:none}.company-picker select{max-width:100%;font-size:13px}.company-picker>div{width:100%}.top-actions{gap:4px;flex-shrink:0}.workspace{padding:24px 18px 20px}.page-header{flex-direction:column;gap:16px;margin-bottom:22px}.page-header h1{font-size:28px}.overview-header-actions{width:100%;justify-content:flex-start}.overview-header-actions>.btn{flex:1;min-width:0;font-size:12px}.overview-header-actions>.btn.primary{flex:1.65}.overview-dataset{grid-template-columns:minmax(0,1fr);gap:18px;padding:18px}.dashboard-toolbar{padding-top:16px;border-top:1px solid var(--border)}.dashboard-toolbar select{font-size:13px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.metric{padding:16px 13px}.metric-value{font-size:26px;margin-top:11px}.metric-label svg{width:16px;height:16px}.panel,.band{padding:20px 18px;border-radius:12px}.section-heading{flex-wrap:wrap;gap:12px}.entry-panel .module-grid{grid-template-columns:minmax(0,1fr)}.entry-panel .module-card{flex-wrap:nowrap;align-items:center}.entry-panel .module-copy{flex-basis:auto;order:0}.script-layout,.studio-support,.workspace-columns{grid-template-columns:minmax(0,1fr);gap:20px}.script-output{min-height:480px;padding:20px;font-size:16px}.creative-brief .field-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.field-grid{grid-template-columns:minmax(0,1fr)}input,select,textarea{font-size:16px}.live-header-actions{width:100%;justify-content:flex-start}.live-header-actions>.btn{width:100%;min-height:48px}.live-control-panel,.live-dashboard-panel{padding:20px 16px}.live-dashboard-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.live-evidence-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 12px}.live-evidence-cell:last-child{grid-column:1/-1}.live-dashboard-metrics .metric-value{font-size:23px}.live-question-form textarea{font-size:16px}.question-shortcut{flex:1;padding:9px 6px;font-size:11px;white-space:nowrap}.live-topic-tabs button{flex:1 1 calc(50% - 8px)}.data-empty-state{min-height:330px;padding:22px 4px}.workflow-strip{gap:10px 12px;padding:16px;font-size:11px}.workflow-strip svg{width:12px;height:12px}.company-grid,.topic-grid{grid-template-columns:minmax(0,1fr)}.member-row{align-items:flex-start;flex-direction:column}.member-row .button-group{width:100%}.connection-row{grid-template-columns:minmax(0,1fr)}.status-row{flex-wrap:wrap}.analysis-item{padding:16px}.record-row{flex-wrap:wrap}#auth-screen{max-width:560px;display:flex;flex-direction:column;gap:26px;padding:28px 24px}#auth-screen .auth-brand{width:100%;font-size:20px}.auth-story{width:100%}.auth-story h2{font-size:30px;line-height:1.5;margin:14px 0 10px}.auth-story h2 br{display:none}.auth-story>p{font-size:13px}.auth-orbit,.auth-story-foot{display:none}#auth-screen .auth-form{width:100%;padding:26px}.auth-footer{width:100%;text-align:center}dialog{padding:20px}footer{margin-top:28px;line-height:1.8}.toast{left:18px;right:18px;bottom:max(18px,env(safe-area-inset-bottom))}}
@media(max-width:390px){.creative-brief .field-grid{grid-template-columns:minmax(0,1fr)}.overview-header-actions{align-items:stretch}.metric-value{font-size:23px}.metric-label{flex-wrap:wrap}.auth-brand>span:last-child{display:none}.question-shortcut{font-size:10px;gap:4px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* GPT 问答承载建议；右侧只保留实时官方数据大屏。 */
.answer-recommendations { margin: 16px 0 4px; padding-top: 14px; border-top: 1px solid var(--border); }
.answer-recommendations > .eyebrow { display: block; margin-bottom: 8px; color: var(--accent); }
.answer-recommendation { display: grid; grid-template-columns: 28px minmax(0,1fr); gap: 10px; padding: 11px 0; border-top: 1px solid var(--border); }
.answer-recommendation > span { color: var(--accent); font: 600 12px/1.8 Consolas, monospace; }
.answer-recommendation strong { color: var(--text); font-size: 13px; }
.answer-recommendation p { margin-top: 3px; color: var(--muted); font-size: 12px; line-height: 1.75; }
.live-dashboard-subtitle { margin-top: 6px; }
html[data-role="client"] .live-dashboard-subtitle { display: block; }

/* 智投视觉规范：深色层次、8px节奏、公司级自动投流权限。 */
:root {
  --bg: #09090f;
  --surface: #191922;
  --raised: #242430;
  --inset: #0d0d14;
  --border: rgba(255,255,255,.1);
  --border-hover: rgba(255,255,255,.18);
  --text: #f5f5f7;
  --text-primary: var(--text);
  --muted: #a1a1aa;
  --text-secondary: var(--muted);
  --text-muted: #93939f;
  --accent: #34d399;
  --accent-bg: rgba(52,211,153,.1);
  --accent-glow: rgba(52,211,153,.15);
  --accent-border: rgba(52,211,153,.32);
  --amber: #fbbf24;
  --rose: #f87171;
  --warning: var(--amber);
  --danger: var(--rose);
  --radius-card: 14px;
  --radius-control: 10px;
  --space-1: 8px;
  --space-2: 16px;
  --space-3: 24px;
  --space-4: 32px;
  --space-5: 40px;
}
body {background:var(--bg);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei UI",sans-serif}
h1 {font-size:28px;letter-spacing:-.025em}
h2 {font-size:18px;letter-spacing:-.015em}
h1,h2,h3 {font-weight:600;text-wrap:balance}
.small,.eyebrow {font-size:12px}
.eyebrow {color:var(--text-muted);letter-spacing:.12em}
.section {margin-top:var(--space-3)}
.section-heading {gap:var(--space-2);margin-bottom:var(--space-2)}
.panel,.band,.item-card {background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-card);padding:var(--space-3);box-shadow:none;transition:border-color .2s ease}
.panel:hover,.band:hover,.item-card:hover {border-color:var(--border-hover)}
.workspace {padding:var(--space-4) var(--space-4) var(--space-3)}
.workspace-columns,.script-layout,.studio-support,.reference-layout,.company-grid {gap:var(--space-3)}
.form-grid,.creative-brief,.live-question-form {gap:var(--space-2)}
.field-grid {gap:var(--space-2)}
.page-header {gap:var(--space-3);margin-bottom:var(--space-3)}
label,.field-label {font-size:12px;color:var(--muted);margin-bottom:8px}
input,select,textarea {border-radius:var(--radius-control);background:var(--inset);border:1px solid var(--border);padding:8px 16px;min-height:36px;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease}
input:hover,select:hover,textarea:hover {border-color:var(--border-hover)}
input:focus-visible,select:focus-visible,textarea:focus-visible {outline:0;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}
input::placeholder,textarea::placeholder {color:var(--text-muted);opacity:1}
.btn,.icon-btn,.company-permission-button {min-height:36px;padding:8px 16px;background:transparent;border:1px solid var(--border);border-radius:var(--radius-control);font-weight:500;transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease,filter .15s ease}
.btn:hover,.icon-btn:hover,.company-permission-button:hover {background:rgba(255,255,255,.05);border-color:var(--border-hover)}
.btn:active,.icon-btn:active {background:var(--raised)}
.btn.primary {background:linear-gradient(110deg,#34d399,#10b981);border-color:transparent;color:#052b20;font-weight:600}
.btn.primary:hover {background:linear-gradient(110deg,#34d399,#10b981);border-color:transparent;filter:brightness(1.1);box-shadow:0 4px 16px var(--accent-glow)}
.btn.primary:active {filter:brightness(.95)}
.btn.compact {min-height:28px;padding:4px 8px;font-size:12px}
.btn.text {background:transparent;border-color:transparent}
.btn.danger {background:rgba(248,113,113,.07);border-color:rgba(248,113,113,.25);color:var(--rose)}
.btn.danger:hover {background:rgba(248,113,113,.13);border-color:rgba(248,113,113,.4)}
.icon-btn {width:36px;height:36px;flex-basis:36px;padding:8px}
.chip {padding:4px 8px;border-radius:6px;background:var(--raised);border-color:var(--border);color:var(--muted)}
.chip.teal {color:var(--accent);background:var(--accent-bg);border-color:var(--accent-border)}
.chip.amber {color:var(--amber);background:rgba(251,191,36,.08);border-color:rgba(251,191,36,.25)}
.sidebar.workspace-header {min-height:64px;padding:8px 32px;gap:var(--space-3);background:rgba(17,17,24,.95);border-bottom:1px solid var(--border);backdrop-filter:blur(16px)}
.brand {gap:16px;flex-basis:208px}
.brand-symbol {width:40px;height:40px;flex-basis:40px;border:0;border-radius:12px;background:linear-gradient(135deg,#34d399,#22d3ee);color:#062b23}
.brand strong {letter-spacing:.06em}
.brand small {color:var(--text-muted)}
.nav {position:relative;min-height:40px;padding:8px 16px;border-radius:10px}
.nav:hover {background:rgba(255,255,255,.04)}
.nav[aria-current=page] {background:var(--accent-bg);border-color:transparent}
.nav[aria-current=page]::before {content:"";position:absolute;left:0;top:12px;bottom:12px;width:3px;border-radius:2px;background:var(--accent)}
.nav-management>summary {min-height:40px;padding:8px 16px;border-radius:10px;cursor:pointer}
.nav-management>summary:hover,.nav-management[open]>summary {background:var(--raised)}
.nav-management-menu {background:var(--surface);border-color:var(--border);border-radius:14px;box-shadow:0 16px 40px #0006}
.topbar {min-height:64px;padding:8px 32px;gap:var(--space-3);border-bottom-color:var(--border)}
.topbar-breadcrumb>span:first-child {color:var(--text-muted)}
.top-actions .icon-btn:hover {background:var(--raised)}
.company-picker select {min-height:36px}
.overview-dataset {padding:16px 24px;gap:24px;border-radius:14px;border-color:var(--border);background:var(--inset)}
.account-hero {gap:16px}
.account-mark,.module-icon,.assistant-symbol {color:var(--accent);background:var(--accent-bg);border-color:var(--accent-border)}
.account-mark {width:48px;height:48px;flex-basis:48px}
.dashboard-toolbar {gap:16px}
.dashboard-toolbar label,.dashboard-toolbar p,.account-description p {font-size:12px}
.metric {position:relative;overflow:hidden;min-width:0;padding:24px;border-radius:14px;background:var(--surface);border-color:var(--border);transition:background .2s ease,border-color .2s ease}
.metric:hover {background:var(--raised);border-color:var(--border-hover)}
.metric-value {font-size:28px;font-weight:600;line-height:1.4;margin:16px 0 8px;font-variant-numeric:tabular-nums;letter-spacing:-.03em}
.metric-note,.metric-label {font-size:12px}
#overview-metrics .metric:nth-child(3),.live-dashboard-metrics .metric:nth-child(3) {background:radial-gradient(ellipse at 100% 0%,rgba(52,211,153,.1),transparent 75%),var(--surface);border-color:var(--accent-border)}
#overview-metrics .metric:nth-child(3)::before,.live-dashboard-metrics .metric:nth-child(3)::before {content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,#34d399,#22d3ee)}
.overview-grid,.live-workbench-grid {gap:24px}
.trend-panel,.trend-chart {background:linear-gradient(180deg,rgba(52,211,153,.025),transparent 80%)}
.chart-grid {stroke:rgba(255,255,255,.055);stroke-dasharray:3 6}
.roi-line {stroke:var(--accent);filter:drop-shadow(0 0 4px var(--accent-glow))}
.roi-point {fill:var(--surface);stroke:var(--accent);stroke-width:2;transition:r .15s ease,filter .15s ease}
.roi-point:hover {r:5px;filter:drop-shadow(0 0 4px var(--accent))}
.cost-bar {fill:#358779;rx:4px}
.cost-bar:hover {fill:#4bac99}
.legend-bar {background:#358779}
.chart-legend,.trend-detail {font-size:12px}
.module-grid {gap:8px}
.module-card {padding:16px;gap:16px;border-radius:14px;background:var(--inset)}
.module-card:hover {background:var(--raised);border-color:var(--accent-border)}
.module-card:active {background:var(--accent-bg)}
.module-copy>span,.module-copy small {font-size:12px}
.module-icon {width:40px;height:40px;flex-basis:40px;border-radius:10px}
.script-output {background:var(--inset);color:var(--text);border-color:var(--border);border-radius:14px;padding:24px;color-scheme:dark}
.script-output:disabled {color:var(--muted)}
.script-output::placeholder {color:var(--text-muted)}
.creative-brief>.btn,.live-question-form .btn.primary,#reference-link-form>.btn {min-height:36px}
.studio-support,.reference-layout {margin-top:24px}
.live-control-panel,.live-dashboard-panel {background:var(--surface);padding:24px}
.conversation-empty,.analysis-item,.live-explain {border-radius:14px;background:var(--inset);border-color:var(--border)}
.conversation-empty {margin-top:24px;padding:24px 16px}
.conversation-empty p,.data-empty-state p,.live-status-line,.live-evidence-cell span,.live-evidence-cell strong,.live-evidence-cell small {font-size:12px}
.live-question-form textarea {padding:16px}
.assistant-footnote {font-size:12px;margin-top:16px;align-items:flex-start;line-height:1.8}
.assistant-footnote svg {margin-top:4px;flex-shrink:0}
.live-dashboard-metrics {gap:16px;margin-top:24px}
.live-dashboard-metrics .metric {padding:16px;border-radius:14px;background:var(--inset)}
.live-dashboard-metrics .metric-value {margin:16px 0 8px}
.live-dashboard-metrics .metric-note,.live-dashboard-metrics .metric-label {font-size:12px}
.question-shortcuts {gap:8px}
.question-shortcut,.live-topic-tabs button {padding:8px 16px;min-height:36px;border-radius:10px;font-size:12px}
.question-shortcut:hover,.live-topic-tabs button[aria-pressed=true] {background:var(--accent-bg);border-color:var(--accent-border);color:var(--accent)}
.workflow-strip {padding:16px 24px;gap:16px;border-radius:14px}
.analysis-item {padding:16px}
.policy-box,.experience-block {border-radius:14px;border-color:var(--border)}
.notice {padding:16px 24px;border-radius:14px;background:rgba(251,191,36,.045);border:1px solid rgba(251,191,36,.2);color:#edcc79}
.notice.error {background:rgba(248,113,113,.06);border-color:rgba(248,113,113,.25);color:var(--rose)}
.dataset-note {padding:0;margin-top:16px;font-size:12px}
.connection-row {padding:24px 0;gap:24px}
.connection-meta {gap:16px;font-size:12px}
th {background:var(--raised)}
td {border-color:var(--border)}
.detail-table small {font-size:12px}
.table-wrap {border-color:var(--border)}
dialog {background:var(--surface);padding:24px;border-color:var(--border-hover);border-radius:14px;box-shadow:0 24px 80px #0008}
dialog::backdrop {background:rgba(5,5,9,.8);backdrop-filter:blur(4px)}
.toast {background:var(--raised);border-color:var(--accent-border);color:var(--text)}
#auth-screen {position:relative;isolation:isolate}
#auth-screen::before {content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(ellipse at 30% 40%,var(--accent-glow),transparent 58%);pointer-events:none}
#auth-screen .auth-form {background:rgba(25,25,34,.8);backdrop-filter:blur(20px);border:1px solid var(--border-hover);border-radius:14px;padding:32px}
.auth-story h2 {font-size:48px;font-weight:600;letter-spacing:-.02em;line-height:1.3}
.auth-story-foot {gap:24px;color:var(--muted)}
.orbit-ring {border-color:var(--border)}
.orbit-core {background:var(--accent-bg);border-color:var(--accent-border);color:var(--accent)}
.orbit-node {background:var(--raised);border-color:var(--border-hover);color:var(--accent)}
footer {margin-top:32px;padding-top:24px}

/* Permission controls use native inputs, so keyboard and screen readers work. */
.permission-intro {display:flex;align-items:center;gap:24px;background:linear-gradient(110deg,rgba(52,211,153,.04),transparent 65%),var(--surface)}
.permission-intro>div {flex:1;min-width:0}
.permission-intro h2 {margin:8px 0}
.permission-intro>.module-icon {width:48px;height:48px;flex-basis:48px}
.company-card-top {display:flex;align-items:center;justify-content:space-between;gap:16px}
.company-avatar {display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--border);border-radius:10px;background:var(--raised);color:var(--muted)}
.company-card h3 {font-size:18px;margin:24px 0 8px}
.company-card>p {font-size:12px;margin-bottom:24px}
.company-card>.button-group {gap:8px;padding-top:24px}
.company-card .btn {margin:0}
.company-permission {display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px;background:var(--inset);border:1px solid var(--border);border-radius:10px}
.company-permission.is-authorized {background:var(--accent-bg);border-color:var(--accent-border)}
.company-permission>div {min-width:0}
.company-permission span {font-size:12px;color:var(--text)}
.company-permission small {display:block;color:var(--muted);font-size:12px;margin-top:8px}
.company-permission-button {display:inline-flex;align-items:center;justify-content:center;gap:8px;flex-shrink:0;padding:8px;font-size:12px;color:var(--text)}
.company-permission-button svg {width:16px;height:16px}
#execution-dialog {width:min(680px,calc(100% - 32px))}
#execution-form {gap:24px}
#execution-form .section-heading {margin-bottom:0}
.execution-toggle {display:flex;align-items:center;gap:16px;position:relative;padding:16px;border:1px solid var(--border);border-radius:14px;background:var(--inset);margin:0;cursor:pointer}
.execution-toggle>span:first-child {flex:1;min-width:0}
.execution-toggle strong {display:block;color:var(--text);font-size:14px}
.execution-toggle small {display:block;margin-top:8px;line-height:1.7;font-size:12px}
.execution-toggle input {position:absolute;right:16px;opacity:0;width:48px;height:32px;margin:0;cursor:pointer;z-index:1}
.switch-track {display:block;width:48px;height:28px;flex:0 0 48px;border:1px solid var(--border-hover);border-radius:20px;background:var(--raised);padding:3px;transition:background .15s ease,border-color .15s ease}
.switch-track::after {content:"";display:block;width:20px;height:20px;border-radius:50%;background:var(--muted);transition:transform .15s ease,background .15s ease}
.execution-toggle input:checked+.switch-track {background:var(--accent);border-color:var(--accent)}
.execution-toggle input:checked+.switch-track::after {transform:translateX(20px);background:#052b20}
.execution-toggle input:focus-visible+.switch-track {outline:2px solid var(--accent);outline-offset:4px}
.execution-toggle input:disabled+.switch-track {opacity:.4}
.execution-status {font-size:12px;color:var(--muted);line-height:1.85}
.execution-settings {display:grid;gap:24px;border:0;padding:0;margin:0;min-width:0}
.execution-settings legend {font-size:14px;font-weight:600;margin-bottom:16px;color:var(--text)}
.execution-choices {display:grid;gap:8px}
.action-choices {grid-template-columns:repeat(2,minmax(0,1fr))}
.execution-choice {display:flex;align-items:center;gap:16px;margin:0;padding:8px 16px;min-height:44px;border:1px solid var(--border);border-radius:10px;background:var(--inset);cursor:pointer;font-size:14px;color:var(--text)}
.execution-choice:has(:checked) {background:var(--accent-bg);border-color:var(--accent-border)}
.execution-choice input,.execution-settings .checkbox-row input {width:18px;height:18px;min-height:18px;flex:0 0 18px;accent-color:var(--accent);margin:0}
.execution-choice span {min-width:0;overflow-wrap:anywhere}
.execution-choice small {display:block;font-size:12px;color:var(--muted);margin-top:8px}
.execution-settings .checkbox-row {display:flex;align-items:flex-start;gap:16px;line-height:1.9;font-size:12px;color:var(--text);margin:0}
.execution-settings .checkbox-row input {margin-top:4px}
.execution-settings .muted.small {margin-top:8px}
.execution-review {padding:16px;border:1px solid var(--border);border-radius:14px;background:var(--inset);font-size:12px}
.execution-review p {margin-top:8px;overflow-wrap:anywhere}
.execution-review:empty {display:none}
.permission-event {display:grid;gap:8px;padding:16px 0;border-bottom:1px solid var(--border);font-size:12px}
.permission-event span,.permission-event small {color:var(--muted)}
#execution-events .permission-event:last-child {border:0}

@media(min-width:951px) {
  .sidebar.workspace-header {padding-top:8px;padding-bottom:8px}
  .nav-management-menu>.nav {min-height:36px}
}
@media(max-width:1250px) {
  .sidebar.workspace-header {gap:16px}
  .nav {padding:8px 16px;font-size:13px}
}
@media(max-width:950px) {
  .sidebar.workspace-header {padding:16px 24px}
  .topbar {padding:8px 24px}
  .workspace {padding:24px}
  .nav-toggle {width:44px;height:44px;flex-basis:44px}
  .script-layout {gap:24px}
  .auth-story h2 {font-size:40px}
}
@media(max-width:700px) {
  .sidebar.workspace-header {padding:16px;gap:16px}
  .topbar {padding:8px 16px;gap:8px}
  .workspace {padding:24px 16px}
  .btn,.icon-btn,.question-shortcut,.live-topic-tabs button,.company-permission-button {min-height:44px}
  .btn.compact {min-height:44px;padding:8px}
  .icon-btn {width:44px;height:44px;flex-basis:44px}
  input,select,textarea {min-height:44px}
  .company-picker select {min-height:44px}
  .panel,.band,.item-card,.live-control-panel,.live-dashboard-panel {padding:16px;border-radius:14px}
  .section-heading {gap:16px}
  .overview-dataset {padding:16px;gap:16px}
  .metric {padding:16px}
  .metric-grid,.live-dashboard-metrics {gap:16px}
  .metric-value {font-size:26px}
  .live-dashboard-metrics .metric-value {font-size:24px}
  .script-layout,.studio-support,.workspace-columns {gap:24px}
  .script-output {padding:16px;font-size:16px}
  .creative-brief>.btn,.live-question-form .btn.primary,#reference-link-form>.btn {min-height:44px}
  .question-shortcut {padding:8px;font-size:11px}
  .workflow-strip {padding:16px}
  .permission-intro {flex-wrap:wrap;gap:16px}
  .permission-intro>.chip {margin-left:64px}
  .permission-intro h2 {font-size:16px}
  .company-card>.button-group {padding-top:16px}
  .company-card h3 {margin-top:16px}
  .company-permission {gap:8px;padding:16px}
  .company-permission-button {min-width:44px}
  #execution-dialog {padding:16px}
  #execution-form {gap:16px}
  .execution-settings {gap:16px}
  .action-choices {gap:8px}
  .execution-choice {gap:8px;padding:8px;font-size:13px}
  .execution-choice input,.execution-settings .checkbox-row input {min-height:18px}
  .execution-toggle input {min-height:32px}
  #auth-screen {padding:32px 24px;gap:24px}
  #auth-screen .auth-form {padding:24px}
  .auth-story h2 {font-size:32px}
  .notice {padding:16px}
  dialog {padding:16px}
}
@media(prefers-reduced-motion:reduce) {*,*::before,*::after {animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* 石墨白：客户视图保持简洁，内部核验继续由管理员使用。 */
:root {
  color-scheme: light;
  --bg: #f4f6f7;
  --surface: #ffffff;
  --raised: #f8fafb;
  --inset: #f1f4f5;
  --border: #dfe5e8;
  --border-hover: #c4d0d5;
  --text: #202a30;
  --muted: #637078;
  --text-muted: #7e8a91;
  --accent: #177b63;
  --accent-bg: #e4f3ee;
  --accent-border: #a9d8c9;
  --accent-glow: rgba(23, 123, 99, .16);
  --amber: #a56512;
  --rose: #b33b4b;
}

html { background: var(--bg); }
body {
  background:
    radial-gradient(700px 360px at 7% -5%, rgba(76, 170, 145, .12), transparent 64%),
    radial-gradient(620px 360px at 96% 2%, rgba(86, 133, 185, .09), transparent 66%),
    linear-gradient(120deg, rgba(255,255,255,.55), transparent 42%),
    var(--bg);
  color: var(--text);
}
body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  opacity: .42;
  background-image:
    linear-gradient(rgba(56, 77, 83, .035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(56, 77, 83, .035) 1px, transparent 1px),
    radial-gradient(circle at 20% 20%, rgba(23,123,99,.055) 0 1px, transparent 1.5px);
  background-size: 32px 32px, 32px 32px, 24px 24px;
}

.sidebar.workspace-header { background: rgba(255,255,255,.92); border-color: var(--border); box-shadow: 0 8px 24px rgba(32,42,48,.04); backdrop-filter: blur(14px); }
.topbar { background: rgba(255,255,255,.86); border-color: var(--border); backdrop-filter: blur(14px); }
.brand strong, h1, h2, h3, .metric-value, .module-copy strong { color: var(--text); }
.brand small, .session-label, .topbar-breadcrumb>span:first-child { color: var(--muted); }
.brand-symbol { background: linear-gradient(135deg, #d9f2ea, #e9f1fa); border-color: var(--accent-border); color: var(--accent); }
.nav { color: var(--muted); }
.nav:hover, .nav-management>summary:hover, .nav-management[open]>summary { background: var(--raised); color: var(--text); }
.nav[aria-current=page] { background: var(--accent-bg); border-color: var(--accent-border); color: var(--accent); }
.nav-management-menu { background: var(--surface); border-color: var(--border); box-shadow: 0 18px 45px rgba(32,42,48,.12); }
.btn, .icon-btn { background: var(--surface); color: var(--text); border-color: var(--border); box-shadow: 0 1px 2px rgba(32,42,48,.03); }
.btn:hover, .icon-btn:hover, .company-permission-button:hover { background: var(--raised); border-color: var(--border-hover); }
.btn.primary { background: var(--accent); border-color: var(--accent); color: #fff; box-shadow: 0 5px 14px rgba(23,123,99,.16); }
.btn.primary:hover { background: #126850; filter: none; }
.btn.text, a { color: var(--accent); }
.btn.danger { background: #fff4f5; border-color: #ecc4ca; color: var(--rose); }
.chip { background: var(--raised); border-color: var(--border); color: var(--muted); }
.chip.teal { background: var(--accent-bg); border-color: var(--accent-border); color: var(--accent); }
.chip.amber { background: #fff6e6; border-color: #efd6a7; color: var(--amber); }
input, select, textarea { background: #fff; color: var(--text); border-color: #cbd6da; }
input::placeholder, textarea::placeholder { color: #8a979d; }
option { background: #fff; color: var(--text); }
.panel, .band, .item-card, .live-control-panel, .live-dashboard-panel, .metric { background: rgba(255,255,255,.94); border-color: var(--border); box-shadow: 0 8px 24px rgba(32,42,48,.045); }
.overview-dataset, .workflow-strip, .module-card, .policy-box, .experience-block, .analysis-item, .conversation-empty, .live-explain, .live-dashboard-metrics .metric, .live-evidence-strip { background: var(--raised); border-color: var(--border); }
.live-control-panel { background: #f7faf9; }
.live-dashboard-panel { background: rgba(255,255,255,.97); }
.live-dashboard-metrics .metric:nth-child(3), #overview-metrics .metric:nth-child(3) { background: linear-gradient(135deg, #eefaf6, #fff); border-color: var(--accent-border); }
.live-dashboard-metrics .metric:nth-child(3) .metric-value { color: var(--accent); }
.live-topic-tabs button, .question-shortcut { background: #fff; color: var(--muted); border-color: var(--border); }
.question-shortcut:hover, .live-topic-tabs button[aria-pressed=true] { background: var(--accent-bg); border-color: var(--accent-border); color: var(--accent); }
.detail-table th, th { background: #f0f4f5; color: var(--muted); }
td, .record-row, .connection-row, .status-row { border-color: var(--border); }
tbody tr:hover { background: #f8fbfb; }
.trend-panel, .trend-chart { background: linear-gradient(180deg, rgba(23,123,99,.035), transparent 80%); }
.chart-grid { stroke: #d9e1e4; }
.roi-line { stroke: var(--accent); filter: none; }
.cost-bar, .legend-bar { fill: #78b9a7; background: #78b9a7; }
.notice { background: #fff8ea; color: var(--amber); border-color: #efd6a7; }
.notice.error { background: #fff3f5; color: var(--rose); border-color: #ecc4ca; }
.toast { background: #eff9f5; color: #245b4d; border-color: var(--accent-border); box-shadow: 0 10px 28px rgba(32,42,48,.14); }
dialog { background: var(--surface); color: var(--text); border-color: var(--border); box-shadow: 0 24px 70px rgba(32,42,48,.22); }
dialog::backdrop { background: rgba(26, 37, 42, .32); backdrop-filter: blur(3px); }
.assistant-symbol, .account-mark, .module-icon { color: var(--accent); background: var(--accent-bg); border-color: var(--accent-border); }
.client-advice-card { margin: 20px 0 4px; padding: 20px; border: 1px solid var(--accent-border); border-radius: 12px; background: linear-gradient(135deg, rgba(228,243,238,.8), rgba(255,255,255,.95) 70%); }
.client-advice-card .section-heading { margin-bottom: 10px; }
.client-advice-summary { max-width: 920px; color: var(--text); font-size: 14px; line-height: 1.85; }
.client-advice-list { display: grid; gap: 10px; margin-top: 14px; }
.client-advice-item { display: grid; grid-template-columns: 28px minmax(0,1fr); gap: 10px; padding: 12px 0; border-top: 1px solid rgba(169,216,201,.7); }
.client-advice-item>span { color: var(--accent); font: 600 12px/1.8 Consolas, monospace; }
.client-advice-item strong { color: var(--text); font-size: 13px; }
.client-advice-item p { margin-top: 3px; color: var(--muted); font-size: 12px; line-height: 1.7; }
.client-advice-meta { margin-top: 14px; }

/* 客户成员可以用一句话向 GPT 询问建议；规则、权限和内部诊断仍隐藏。 */
html[data-role="client"] .live-explain,
html[data-role="client"] .internal-only,
html[data-role="client"] .live-control-panel > .data-details { display: none !important; }
html[data-role="client"] .live-workbench-grid { grid-template-columns: minmax(0, 1fr); }
html[data-role="client"] .live-dashboard-panel { min-height: 420px; }
html[data-role="client"] #client-advice { margin-top: 0; }
html[data-role="client"] #operator-admin { display: none !important; }
html[data-role="client"] #nav-management { display: none !important; }
/* Advice is part of the GPT conversation; the live panel remains data-only. */
#client-advice { display: none !important; }
.answer-recommendations { margin: 16px 0 4px; padding-top: 14px; border-top: 1px solid var(--border); }
.answer-recommendations > .eyebrow { display: block; margin-bottom: 8px; color: var(--accent); }
.answer-recommendation { display: grid; grid-template-columns: 28px minmax(0,1fr); gap: 10px; padding: 11px 0; border-top: 1px solid var(--border); }
.answer-recommendation > span { color: var(--accent); font: 600 12px/1.8 Consolas, monospace; }
.answer-recommendation strong { color: var(--text); font-size: 13px; }
.answer-recommendation p { margin-top: 3px; color: var(--muted); font-size: 12px; line-height: 1.75; }
.live-dashboard-subtitle { margin-top: 6px; }
.script-output { color-scheme: light; }

@media(max-width:950px) {
  .sidebar.workspace-header { background: rgba(255,255,255,.96); }
  .workspace-header nav { border-color: var(--border); }
}
@media(max-width:700px) {
  body::before { opacity: .28; background-size: 26px 26px, 26px 26px, 20px 20px; }
  .panel, .band, .item-card, .live-control-panel, .live-dashboard-panel { box-shadow: 0 5px 16px rgba(32,42,48,.04); }
  .client-advice-card { padding: 16px; }
}

/* Authentication screen follows the same graphite-white system. */
#auth-screen { background: transparent; }
#auth-screen .auth-form { background: rgba(255,255,255,.94); border-color: var(--border); box-shadow: 0 22px 60px rgba(32,42,48,.12); }
#auth-screen .auth-form h1, #auth-screen .auth-story h2 { color: var(--text); }
#auth-screen .auth-form>p, #auth-screen .auth-form label, #auth-screen .auth-story>p, #auth-screen .auth-footer { color: var(--muted); }
#auth-screen .auth-form input { background: #fff; color: var(--text); border-color: #cbd6da; }
#auth-screen .auth-story-foot { color: var(--muted); border-color: var(--border); }
#auth-screen .orbit-ring { border-color: rgba(23,123,99,.2); box-shadow: none; }
#auth-screen .orbit-ring.inner { border-color: rgba(23,123,99,.17); }
#auth-screen .orbit-core, #auth-screen .orbit-node { background: #fff; border-color: var(--accent-border); color: var(--accent); box-shadow: 0 8px 20px rgba(32,42,48,.08); }

/* Shared CTA: a 45px circle expands beneath the existing action label. */
:root {
  --cta-bg: #b1dae7;
  --cta-ink: #234567;
  --cta-disabled-bg: #e2e8eb;
  --cta-disabled-ink: #62717d;
}
.btn.cta {
  position: relative;
  isolation: isolate;
  justify-content: flex-start;
  gap: 10px;
  min-width: 45px;
  min-height: 45px;
  max-width: 100%;
  padding: 12px 18px;
  border: none;
  border-radius: 50px;
  background: none;
  box-shadow: none;
  color: var(--cta-ink);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.5;
  text-decoration: none;
  filter: none;
  cursor: pointer;
  transition: transform .2s ease;
}
.btn.cta::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  z-index: -1;
  width: 45px;
  height: 45px;
  border-radius: 50px;
  background: var(--cta-bg);
  transform: translateY(-50%);
  pointer-events: none;
  transition: width .3s ease, background-color .3s ease;
}
.btn.cta > .cta-label {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  overflow-wrap: anywhere;
  text-align: left;
}
.btn.cta > .cta-label > svg.lucide { width: 17px; height: 17px; }
.btn.cta > .cta-arrow {
  position: relative;
  flex: 0 0 15px;
  width: 15px;
  height: 10px;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 2;
  transform: translateX(-5px);
  transition: transform .3s ease;
}
.btn.cta:is(:hover, :active, :focus-visible) {
  border: none;
  background: none;
  box-shadow: none;
  color: var(--cta-ink);
  text-decoration: none;
  filter: none;
}
.btn.cta:focus-visible { outline: 2px solid var(--cta-ink); outline-offset: 4px; }
.btn.cta:not(:disabled):not([aria-disabled="true"]):focus-visible::before,
.btn.cta:not(:disabled):not([aria-disabled="true"]):active::before { width: 100%; }
.btn.cta:not(:disabled):not([aria-disabled="true"]):focus-visible > .cta-arrow,
.btn.cta:not(:disabled):not([aria-disabled="true"]):active > .cta-arrow { transform: translateX(0); }
.btn.cta:not(:disabled):not([aria-disabled="true"]):active { transform: scale(.95); }
@media (hover: hover) {
  .btn.cta:not(:disabled):not([aria-disabled="true"]):hover::before { width: 100%; }
  .btn.cta:not(:disabled):not([aria-disabled="true"]):hover > .cta-arrow { transform: translateX(0); }
}
.btn.cta:is(:disabled, [aria-disabled="true"]) {
  color: var(--cta-disabled-ink);
  cursor: not-allowed;
  opacity: .7;
}
.btn.cta:is(:disabled, [aria-disabled="true"])::before { background: var(--cta-disabled-bg); }
.btn.cta[aria-busy="true"]::before { width: 100%; }
.btn.cta[aria-busy="true"] > .cta-arrow { visibility: hidden; }
.btn.cta[aria-busy="true"]::after {
  content: "";
  position: absolute;
  right: 18px;
  top: calc(50% - 7px);
  width: 14px;
  height: 14px;
  border: 2px solid var(--cta-disabled-ink);
  border-right-color: transparent;
  border-radius: 50%;
  pointer-events: none;
  animation: cta-spin .8s linear infinite;
}
@keyframes cta-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) {
  .btn.cta, .btn.cta::before, .btn.cta::after, .btn.cta > .cta-arrow { animation: none; transition: none; }
  .btn.cta:not(:disabled):not([aria-disabled="true"]):active { transform: none; }
  .btn.cta > .cta-arrow { transform: none; }
}

/* Reference history stays out of the main reading flow. */
#viral-history-open { flex-shrink: 0; }
.viral-history-count { display: inline-grid; place-items: center; min-width: 24px; height: 24px; padding: 0 6px; border-radius: 7px; background: var(--accent-bg); color: var(--accent); font-size: 12px; font-variant-numeric: tabular-nums; }
#viral-history-dialog {
  position: fixed;
  inset: 0 auto 0 0;
  margin: 0;
  width: min(420px, 100%);
  max-width: 100%;
  height: 100dvh;
  max-height: 100dvh;
  padding: 28px 24px max(24px, env(safe-area-inset-bottom));
  border: 0;
  border-right: 1px solid var(--border);
  border-radius: 0 18px 18px 0;
  overflow: hidden;
}
#viral-history-dialog[open] { display: flex; flex-direction: column; gap: 16px; }
#viral-history-dialog::backdrop { background: rgba(26, 37, 42, .28); backdrop-filter: blur(2px); }
body:has(#viral-history-dialog[open]) { overflow: hidden; }
.viral-history-header { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.viral-history-header h2 { font-size: 22px; margin-top: 4px; }
.viral-history-header .icon-btn { flex-shrink: 0; }
.viral-history-search label { font-size: 12px; }
.viral-history-search input { background: var(--raised); }
.viral-history-list { display: grid; align-content: start; gap: 12px; min-height: 0; overflow-y: auto; overscroll-behavior: contain; padding: 4px 5px 12px; margin: 0 -5px; scrollbar-gutter: stable; }
.viral-history-list > .empty { padding: 32px 12px; text-align: center; border: 1px dashed var(--border); border-radius: 12px; }
.viral-history-item { display: grid; gap: 14px; width: 100%; padding: 18px; border: 1px solid var(--border); border-radius: 12px; background: var(--surface); color: var(--text); text-align: left; overflow-wrap: anywhere; }
.viral-history-item:hover { background: var(--raised); border-color: var(--border-hover); }
.viral-history-item:active { background: var(--accent-bg); }
.viral-history-item[aria-current] { border-color: var(--accent); background: var(--accent-bg); }
.viral-history-item strong { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; font-size: 14px; line-height: 1.7; font-weight: 600; }
.viral-history-item-top { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 6px 12px; color: var(--muted); font-size: 11px; }
.viral-history-item-top > span, .viral-history-item-bottom { display: inline-flex; align-items: center; gap: 6px; }
.viral-history-item svg.lucide { width: 15px; height: 15px; }
.viral-history-item-bottom { justify-content: space-between; color: var(--accent); font-size: 12px; }
#page-viral .reference-results { min-height: 540px; scroll-margin-top: 110px; }
.viral-result-idle { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 16px; min-height: 350px; padding: 36px 20px; border: 1px dashed var(--border); border-radius: 12px; background: var(--raised); text-align: center; }
.viral-result-idle p { max-width: 32em; line-height: 1.8; }
.viral-result-symbol { display: grid; place-items: center; width: 54px; height: 54px; margin-bottom: 4px; border: 1px solid var(--accent-border); border-radius: 16px; background: var(--accent-bg); color: var(--accent); }
.viral-result-symbol svg.lucide { width: 25px; height: 25px; }
.viral-current-heading { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px; }
.viral-current > h3 { margin-top: 16px; line-height: 1.75; }
.viral-current > h3:focus-visible { outline: 2px solid var(--accent); outline-offset: 4px; }
.viral-current-time { margin: 8px 0 14px; }
.viral-current-content { max-height: min(62dvh, 680px); overflow-y: auto; overscroll-behavior: contain; margin-top: 20px; padding: 18px; border: 1px solid var(--border); border-radius: 10px; background: var(--surface); white-space: pre-wrap; scrollbar-gutter: stable; }
.viral-current-content:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
.viral-current-sources { margin-top: 18px; }
.viral-current-sources > p { margin-top: 12px; }
@media (max-width: 700px) {
  #viral-history-dialog { padding: 22px 18px max(18px, env(safe-area-inset-bottom)); border-radius: 0; }
  #page-viral .reference-results { min-height: 0; }
  .viral-result-idle { min-height: 300px; padding: 28px 16px; }
  .viral-current-content { max-height: 58dvh; padding: 14px; font-size: 14px; }
}
