:root{--navy:#102b46;--navy-deep:#0b1b2d;--navy-mid:#1b466c;--gold:#c69a4c;--gold-light:#e5c68d;--ink:#24384d;--muted:#718092;--line:#e2e8ed;--bg:#f5f7f9;--white:#fff;--green:#25846c;--red:#c5554e;--amber:#ab7431;--shadow:0 14px 38px rgba(16,43,70,.06)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;font-size:14px}button,input,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.shell{width:min(1200px,calc(100% - 64px));margin:auto}[hidden]{display:none!important}
.topline{background:var(--navy-deep);color:#b6c6d4;font-size:11px;letter-spacing:.12em}.topline-inner{height:31px;display:flex;align-items:center;justify-content:space-between}.sparkle{color:var(--gold-light);font-size:15px;margin-right:7px}.topline-right{display:flex;align-items:center;gap:10px;letter-spacing:.09em}.topline-right i{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--gold)}
.site-header{background:rgba(255,255,255,.97);border-bottom:1px solid #e9edf1;position:sticky;top:0;z-index:10;backdrop-filter:blur(14px)}.header-inner{height:72px;display:flex;align-items:center;gap:36px}.brand{display:flex;align-items:center;gap:10px;white-space:nowrap}.brand-mark{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:linear-gradient(145deg,var(--navy-mid),var(--navy-deep));color:var(--gold-light);font-size:24px;line-height:1}.brand strong{display:block;color:var(--navy);font-size:17px;line-height:1.3}.brand small{display:block;color:#8c9aab;font-size:10px;letter-spacing:.1em}.site-header nav{display:flex;gap:32px;margin-left:auto}.site-header nav a{color:#4a5c6f;font-weight:600;font-size:13px;transition:color .2s}.site-header nav a:hover{color:var(--gold)}.header-badge{border:1px solid #e5eaf0;background:#f7f9fb;border-radius:50px;padding:9px 14px;font-size:11px;color:#5b6c7d;white-space:nowrap}.pulse{display:inline-block;background:#3aa887;width:7px;height:7px;border-radius:50%;margin-right:6px;box-shadow:0 0 0 3px #e2f3ee}
.hero{color:white;background:radial-gradient(circle at 87% 12%,rgba(53,111,152,.35),transparent 32%),radial-gradient(circle at 20% 88%,rgba(198,154,76,.12),transparent 28%),linear-gradient(112deg,#0c2035 0%,#163d61 73%,#204e72 100%);position:relative;overflow:hidden}.hero:after{content:"";position:absolute;right:-100px;top:-170px;width:600px;height:600px;border:1px solid rgba(255,255,255,.06);border-radius:50%;box-shadow:0 0 0 100px rgba(255,255,255,.018),0 0 0 210px rgba(255,255,255,.012)}.hero-inner{min-height:355px;display:flex;align-items:center;justify-content:space-between;gap:70px;position:relative;z-index:1;padding:45px 0}.hero-copy{max-width:680px}.eyebrow,.section-kicker{display:inline-block;font-size:10px;letter-spacing:.18em;font-weight:800;color:var(--gold)}.eyebrow{color:#e6c891;display:flex;align-items:center;gap:10px}.eyebrow-line{width:20px;height:1px;background:var(--gold)}.hero h1{font-size:clamp(32px,4.2vw,52px);line-height:1.25;letter-spacing:.01em;margin:22px 0 14px;font-weight:750}.hero h1 em{font-style:normal;color:#e7c78f}.hero-copy>p{color:#c6d5e1;font-size:15px;line-height:1.8;margin:0;max-width:520px}.hero-meta{display:flex;gap:26px;margin-top:33px;color:#cbd9e4;font-size:12px}.hero-aside{width:330px;flex:none;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.14);border-radius:16px;box-shadow:0 20px 55px rgba(0,0,0,.14);padding:22px 22px 15px;backdrop-filter:blur(8px)}.aside-label{display:flex;justify-content:space-between;color:#e6edf2;font-size:12px;font-weight:700;padding-bottom:17px;border-bottom:1px solid rgba(255,255,255,.12)}.aside-label span{font-size:10px;color:#aec4d4;font-weight:500}.aside-step{display:flex;align-items:center;gap:13px;padding:16px 0;border-bottom:1px solid rgba(255,255,255,.1)}.aside-step:last-child{border:0}.aside-step b{color:#eacb93;font-size:12px}.aside-step span{flex:1;font-size:13px;font-weight:600}.aside-step small{display:block;font-size:10px;font-weight:400;color:#9db8cc;margin-top:4px}.aside-step strong{color:#e0bf82;font-size:14px;font-weight:400}
.workspace{padding:52px 0 90px}.workspace-heading,.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:25px}.workspace h2,.analysis-section h2{font-size:28px;color:var(--navy);margin:8px 0 7px;letter-spacing:-.02em}.workspace-heading p,.section-heading p{color:var(--muted);margin:0;line-height:1.7}.snapshot-tag{background:#ebeff3;color:#526b80;border-radius:6px;padding:10px 13px;font-size:11px;font-weight:650;white-space:nowrap}.snapshot-tag span{color:var(--gold);padding:0 3px}.query-card{background:white;border:1px solid var(--line);border-radius:14px;padding:24px 25px;box-shadow:var(--shadow);margin:26px 0 21px;display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:25px}.query-card label{display:block;font-size:12px;font-weight:700;color:var(--navy);margin-bottom:10px}.query-input-wrap{display:flex;align-items:center;border:1px solid #d7e0e8;border-radius:8px;height:48px;overflow:hidden;transition:border .2s}.query-input-wrap:focus-within{border-color:#a2b9ce;box-shadow:0 0 0 3px #eaf2f8}.query-icon{padding:0 14px;color:var(--gold);font-size:20px}.query-input-wrap input{min-width:0;flex:1;outline:none;border:0;color:var(--navy);font-weight:600}.query-input-wrap button{align-self:stretch;background:var(--navy);color:white;border:0;padding:0 21px;font-size:12px;font-weight:700;white-space:nowrap;transition:background .2s}.query-input-wrap button:hover{background:var(--navy-mid)}.query-input-wrap button span{color:var(--gold-light);font-size:17px;margin-left:6px}.query-hint{font-size:11px;color:#91a0ad;margin:9px 0 0}.scenario-control{border-left:1px solid var(--line);padding-left:25px}.scenario-control select{height:48px;width:100%;border:1px solid #d7e0e8;border-radius:8px;background:#f9fafb;color:var(--navy);padding:0 12px;outline:none;font-weight:600}.scenario-control small{display:block;font-size:11px;line-height:1.5;color:#91a0ad;margin-top:9px;min-height:16px}.loading,.error-box{padding:30px;border-radius:10px;background:white;color:var(--muted);text-align:center;margin:20px 0}.error-box{background:#fff0ee;color:var(--red);border:1px solid #f6d8d4}.report-topline{display:flex;justify-content:space-between;gap:15px;align-items:center;color:#8190a0;font-size:11px;margin:21px 0 15px}.report-topline>div{display:flex;align-items:center;gap:8px}.divider-dot{color:#c3cbd2}.status-badge{background:#e9f4ef;color:#25846c;border-radius:30px;padding:5px 10px;font-weight:700}.status-badge.warn{background:#fff1dd;color:#a9752f}.status-badge.degraded{background:#fff0ec;color:#c3574b}
.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.metric-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:22px 22px 20px;box-shadow:var(--shadow);position:relative;min-height:154px}.metric-card:before{content:"";position:absolute;top:0;left:23px;right:23px;height:3px;border-radius:0 0 3px 3px;background:#d9e2ea}.metric-card.accent:before{background:var(--gold)}.metric-card.negative:before{background:var(--red)}.metric-card .metric-label{color:#66788a;font-size:12px;font-weight:700}.metric-card .metric-value{font-size:30px;letter-spacing:-.04em;font-weight:750;color:var(--navy);margin-top:20px;line-height:1.15}.metric-card .metric-value.negative{color:var(--red)}.metric-card .metric-value.positive{color:var(--green)}.metric-card .metric-unit{font-size:14px;font-weight:500;margin-left:4px}.metric-card .metric-sub{font-size:11px;color:#90a0ad;margin-top:10px}.metric-card .metric-sub b{color:#5d7082}.content-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:16px;margin-top:17px}.card{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}.answer-card,.quality-card{padding:26px}.card-head{display:flex;align-items:start;justify-content:space-between;gap:12px}.card-head h3{font-size:18px;color:var(--navy);margin:8px 0 0}.icon-chip{background:#f8f1e5;color:var(--gold);display:grid;place-items:center;border-radius:9px;width:32px;height:32px;font-size:18px}.answer-card>p{line-height:1.95;font-size:13px;color:#4d6073;margin:21px 0 24px}.answer-note{background:#f3f7fa;border-radius:8px;padding:12px 14px;display:flex;gap:10px;align-items:start}.answer-note span{display:grid;place-items:center;width:16px;height:16px;border-radius:50%;background:#7896ac;color:white;font-family:serif;font-size:11px;font-weight:bold;flex:none}.answer-note p{font-size:11px;color:#74879a;line-height:1.65;margin:0}.grade{border-radius:7px;background:#e9f4ef;color:var(--green);font-weight:800;font-size:12px;padding:7px 10px;white-space:nowrap}.grade.medium{color:var(--amber);background:#fff3e2}.grade.low{color:var(--red);background:#fff0ed}.quality-checks{margin-top:18px}.quality-row{display:flex;align-items:center;justify-content:space-between;padding:9px 0;border-top:1px solid #edf0f3;font-size:11px;color:#687a8b}.quality-row b{color:var(--navy);font-size:12px}.quality-row b.fail{color:var(--red)}.quality-row .check{color:var(--green);margin-right:5px}.quality-row .cross{color:var(--red);margin-right:5px}
.analysis-section{padding-top:65px;scroll-margin-top:105px}.section-number{font-size:55px;font-weight:800;color:#e1e8ee;letter-spacing:-.07em;line-height:.9}.bridge-card{margin-top:24px;overflow:hidden}.bridge-head,.bridge-row{display:grid;grid-template-columns:2fr 1fr 1fr 1.2fr 1fr;gap:12px;align-items:center;padding:0 22px}.bridge-head{height:48px;background:#f7f9fa;color:#8b9aa8;text-transform:uppercase;font-size:10px;font-weight:750;letter-spacing:.04em}.bridge-row{min-height:56px;border-top:1px solid #edf0f3;color:#5c6e7f;font-size:12px}.bridge-row .factor{font-weight:700;color:#344b60}.bridge-row span:not(:first-child),.bridge-head span:not(:first-child){text-align:right}.bridge-row .impact{font-weight:800}.bridge-row .impact.positive{color:var(--green)}.bridge-row .impact.negative{color:var(--red)}.source-link{border:0;background:none;padding:3px 0;color:#31729e;font-size:11px;text-decoration:underline;text-underline-offset:3px}.source-link:hover{color:var(--gold)}.bridge-total{background:var(--navy);color:white;min-height:63px;display:flex;align-items:center;justify-content:space-between;padding:0 24px;font-weight:700;font-size:13px}.bridge-total strong{font-size:18px;color:#f3d29a}.bridge-paused{padding:35px 26px;color:#8b6a45;background:#fffaf3;line-height:1.8}.bridge-paused strong{display:block;color:#9a6630;font-size:15px}
.source-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:24px}.source-card{padding:23px}.source-title{display:flex;align-items:center;gap:12px;padding-bottom:18px;border-bottom:1px solid #edf0f3}.source-icon{display:grid;place-items:center;width:37px;height:37px;border-radius:9px;color:white;font-weight:800}.source-icon.erp{background:#2d6385}.source-icon.ads{background:#bd9552}.source-title h3{font-size:15px;color:var(--navy);margin:0 0 4px}.source-title p{font-size:11px;color:#8d9dab;margin:0}.source-detail{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #edf0f3;padding:11px 0;font-size:11px;color:#7d8b98}.source-detail:last-child{border:0;padding-bottom:0}.source-detail strong{color:#3c5267;font-weight:700;text-align:right}.source-detail button{font-size:11px}.warning-box{background:#fff7e9;border:1px solid #f0dfbf;color:#946b33;border-radius:9px;margin-top:16px;padding:15px 18px}.warning-box strong{display:block;font-size:12px;margin-bottom:6px}.warning-box p{margin:5px 0;font-size:11px;line-height:1.7}.warning-box.good{background:#eef7f3;border-color:#d7eadf;color:#2b8065}.method-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:24px}.method-card{background:white;border:1px solid var(--line);border-radius:12px;padding:23px;box-shadow:var(--shadow)}.method-card span{color:var(--gold);font-size:10px;font-weight:800;letter-spacing:.1em}.method-card h3{font-size:15px;color:var(--navy);margin:15px 0 12px}.method-card p{font-size:11px;line-height:1.85;color:#748494;margin:0}
footer{background:#0d2237;color:#92a8ba}.footer-inner{min-height:88px;display:flex;align-items:center;justify-content:space-between;font-size:11px}.footer-inner strong{color:white;font-size:14px}dialog{border:0;border-radius:14px;box-shadow:0 25px 75px #091e3190;padding:0;width:min(700px,calc(100% - 32px));max-height:80vh;color:var(--ink)}dialog::backdrop{background:rgba(7,25,42,.6)}.dialog-header{padding:23px 25px;display:flex;justify-content:space-between;align-items:start;border-bottom:1px solid var(--line)}.dialog-header h3{margin:8px 0 0;color:var(--navy)}.dialog-header button{border:0;background:#f0f4f6;color:#6f8190;width:30px;height:30px;border-radius:6px;font-size:20px}.dialog-body{padding:22px 25px 26px;overflow:auto}.dialog-body p{color:#718394;font-size:12px;line-height:1.7}.records-table{border-collapse:collapse;width:100%;font-size:11px;white-space:nowrap}.records-table th,.records-table td{padding:10px 11px;border-bottom:1px solid var(--line);text-align:right}.records-table th:first-child,.records-table td:first-child{text-align:left}.records-table th{color:#718394;background:#f6f8fa}.records-scroll{overflow:auto}.null{color:var(--red);font-weight:700}
@media(max-width:980px){.site-header nav{gap:16px}.header-badge{display:none}.hero-aside{width:300px}.metric-grid{grid-template-columns:repeat(2,1fr)}.content-grid{grid-template-columns:1fr}.method-grid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.shell{width:min(100% - 32px,1200px)}.topline-right,.site-header nav,.hero-aside,.snapshot-tag{display:none}.header-inner{height:62px}.hero-inner{min-height:310px;padding:40px 0}.hero h1{font-size:36px}.hero-meta{gap:13px;flex-wrap:wrap}.workspace{padding-top:36px}.query-card{grid-template-columns:1fr;padding:18px;gap:17px}.scenario-control{border-left:0;border-top:1px solid var(--line);padding-left:0;padding-top:17px}.query-input-wrap button{padding:0 13px}.report-topline{align-items:start;flex-direction:column}.metric-card{padding:18px;min-height:140px}.metric-card .metric-value{font-size:24px}.source-grid,.method-grid{grid-template-columns:1fr}.bridge-card{overflow-x:auto}.bridge-head,.bridge-row{min-width:650px}.footer-inner{gap:15px;align-items:start;justify-content:center;flex-direction:column;padding:25px 0}.section-number{display:none}.workspace h2,.analysis-section h2{font-size:24px}}

.pulse-section{padding-top:82px}.pulse-flow{display:flex;align-items:center;gap:10px;margin:24px 0}.pulse-flow>div{flex:1;display:flex;align-items:center;gap:12px;background:#e9eff3;border:1px solid #dce5eb;border-radius:9px;padding:15px 17px;color:var(--navy);font-size:12px;font-weight:700}.pulse-flow b{display:grid;place-items:center;background:var(--navy);color:var(--gold-light);border-radius:6px;width:25px;height:25px;font-size:10px}.pulse-flow i{color:var(--gold);font-style:normal;font-size:18px}.pulse-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(310px,1fr);gap:16px}.pulse-list-card,.pulse-compose{padding:25px}.pulse-card-head{display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);padding-bottom:18px}.pulse-card-head h3{font-size:18px;color:var(--navy);margin:8px 0 0}.count-pill{background:#eef2f5;color:#617a8e;border-radius:20px;padding:7px 10px;font-size:11px;font-weight:700}.pulse-list{max-height:640px;overflow:auto}.pulse-empty{padding:25px 0;color:var(--muted);font-size:12px}.decision-item{padding:20px 0;border-bottom:1px solid var(--line)}.decision-item:last-child{border-bottom:0}.decision-top{display:flex;align-items:center;justify-content:space-between;color:#9ba8b4;font-size:10px}.decision-state{border-radius:20px;background:#fff2df;color:#9b6b2e;font-size:10px;font-weight:800;padding:5px 9px}.decision-state.done{background:#e8f4ee;color:var(--green)}.decision-item h4{color:var(--navy);font-size:15px;margin:13px 0}.decision-item p{color:#63778a;font-size:11px;line-height:1.75;margin:8px 0}.decision-item p b{display:inline-block;color:#36536c;font-weight:800;margin-right:10px}.decision-item .outcome-line{background:#eff7f3;border-radius:6px;padding:8px 10px}.decision-item .lesson-line{background:#f8f3e9;border-radius:6px;padding:8px 10px}.decision-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;color:#a1aeb9;font-size:10px;margin-top:14px}.pulse-form-hint,.pulse-public-note{font-size:11px;line-height:1.8;color:#7b8e9e;margin:17px 0}.pulse-public-note{background:#f3f7fa;border-radius:7px;padding:14px}.pulse-compose label,.outcome-form label{display:block;color:#526b80;font-size:11px;font-weight:700;margin:14px 0 7px}.pulse-compose input,.pulse-compose textarea,.outcome-form textarea{display:block;width:100%;border:1px solid #dce5eb;border-radius:7px;padding:11px 12px;color:var(--ink);outline:none;resize:vertical;background:#fafcfd;font-size:12px}.pulse-compose input:focus,.pulse-compose textarea:focus,.outcome-form textarea:focus{border-color:#9cb8ca;background:white}.pulse-primary{background:var(--navy);border:0;color:white;border-radius:7px;padding:11px 16px;margin-top:15px;font-size:12px;font-weight:750}.pulse-primary:hover{background:var(--navy-mid)}.pulse-primary:disabled{opacity:.6}.pulse-message{color:#6f8394;font-size:11px;line-height:1.6;margin:14px 0 0}.outcome-form{margin-top:16px;padding:16px;background:#f7f9fb;border-radius:8px}.outcome-form label{margin-top:0}.outcome-form textarea{margin-top:7px}
@media(max-width:980px){.pulse-layout{grid-template-columns:1fr}.pulse-list{max-height:none}}
@media(max-width:700px){.pulse-flow{display:grid;grid-template-columns:1fr 1fr}.pulse-flow i{display:none}.pulse-flow>div{padding:11px;font-size:11px}.pulse-list-card,.pulse-compose{padding:19px}.decision-footer{align-items:start;flex-direction:column}}

/* ---------- 演示页 → 真实数据入口 ---------- */
.site-header nav a.nav-cta{color:var(--navy);border:1px solid #d9c39a;background:#fbf6ec;border-radius:30px;padding:7px 13px;margin-left:-8px}.site-header nav a.nav-cta:hover{color:var(--navy);background:#f6ecd9}.hero-cta{display:inline-block;margin-top:24px;background:var(--gold);color:var(--navy-deep);font-weight:800;font-size:13px;border-radius:8px;padding:12px 18px;transition:background .2s}.hero-cta:hover{background:var(--gold-light)}.header-badge.real .pulse{background:var(--gold);box-shadow:0 0 0 3px #f6ecd9}
.warning-box.declared{background:#f2f6fa;border-color:#d9e4ee;color:#40607b}

/* ---------- 真实数据工作区 ---------- */
.hero-compact .hero-inner{min-height:300px}.privacy-aside ul{margin:14px 0 4px;padding-left:18px;color:#d4e0ea;font-size:12px;line-height:1.75}.privacy-aside li{margin-bottom:6px}.privacy-aside b{color:var(--gold-light)}
.muted{color:#8796a5}.bad{color:var(--red);font-weight:700}.thinking{color:#7b8e9e;margin:0}.thinking:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--gold);margin-right:8px;animation:blink 1s infinite alternate}@keyframes blink{from{opacity:.25}to{opacity:1}}
.upload-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:24px}.upload-card{padding:23px}.upload-head{display:flex;gap:12px;align-items:flex-start}.upload-head h3{font-size:15px;color:var(--navy);margin:2px 0 6px}.upload-head p{font-size:11px;line-height:1.7;color:#7d8b98;margin:0}.req,.opt{font-style:normal;font-size:10px;border-radius:4px;padding:2px 6px;margin-left:6px;vertical-align:2px}.req{background:#fff0ec;color:var(--red)}.opt{background:#eef2f5;color:#617a8e}
.file-drop{position:relative;display:grid;place-items:center;margin:18px 0 12px;height:86px;border:1.5px dashed #c7d3de;border-radius:10px;background:#fafcfd;color:#5d7387;font-size:12px;font-weight:700;cursor:pointer;transition:border-color .2s,background .2s}.file-drop:hover{border-color:var(--gold);background:#fdfaf3}.file-drop input{position:absolute;inset:0;opacity:0;cursor:pointer}
.file-status{font-size:11px;min-height:20px}.file-status p{margin:0}.file-ok{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;background:#eef7f3;border-radius:7px;padding:10px 12px;color:#2b6b55}.file-ok b{color:#1d5a45;overflow-wrap:anywhere}.file-ok .source-link{margin-left:auto}
.mapping-card{padding:23px;margin-top:20px}.mapping-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.mapping-head h3{font-size:16px;color:var(--navy);margin:8px 0 0;overflow-wrap:anywhere}.tag{display:inline-block;border-radius:20px;padding:4px 9px;font-size:10px;font-weight:800;white-space:nowrap}.tag.ai,.tag.ai-rule{background:#f8f1e5;color:#97692c}.tag.rule{background:#eef2f5;color:#617a8e}.tag.running{background:#e9f1f8;color:#31729e}.field-select .tag{margin-left:6px}
.ai-note{background:#fbf6ec;border-radius:7px;padding:10px 12px;font-size:11px;line-height:1.7;color:#7d5a26;margin:14px 0 0}.pending-note{color:var(--red);font-size:11px;font-weight:700;margin:12px 0 0}
.mapping-table{margin-top:14px}.mapping-row{display:grid;grid-template-columns:150px 220px minmax(0,1fr) minmax(0,1.3fr);gap:12px;align-items:center;padding:10px 0;border-top:1px solid #edf0f3;font-size:12px}.mapping-row.head{color:#8b9aa8;font-size:10px;font-weight:750;border-top:0;padding-top:0}.field-name{font-weight:700;color:#344b60}.field-select select{max-width:100%;height:34px;border:1px solid #d7e0e8;border-radius:6px;background:#f9fafb;color:var(--navy);padding:0 8px;font-weight:600}.field-samples code{display:inline-block;background:#f3f6f8;border-radius:4px;padding:2px 6px;margin:2px 4px 2px 0;font-size:10px;color:#5a6d7f;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}.field-handling{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;font-size:11px}
.choice{display:inline-flex;align-items:center;gap:5px;color:#4d6073;cursor:pointer;white-space:nowrap}.declare{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center}.declare>span{color:#6c7f90}.declare.need{background:#fff4ef;border-radius:6px;padding:6px 8px;box-shadow:inset 3px 0 0 var(--red)}
.settings-card{padding:24px;margin-top:22px}.settings-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.settings-card label{display:flex;flex-direction:column;gap:7px;font-size:11px;font-weight:700;color:#526b80}.settings-card input,.settings-card select{height:38px;border:1px solid #d7e0e8;border-radius:7px;background:#fafcfd;padding:0 10px;color:var(--ink);font-size:12px;min-width:0}.settings-block{border-top:1px solid #edf0f3;margin-top:20px;padding-top:18px;font-size:12px;color:#344b60}.settings-block>b{display:block;font-size:13px;color:var(--navy);margin-bottom:6px}.settings-block p{font-size:11px;line-height:1.7;margin:0 0 10px}.settings-block.declare{display:block}.settings-block.declare.need{padding:16px 14px;border-radius:8px}.settings-block .choice{display:flex;margin:6px 0}
.fx-grid{display:flex;flex-wrap:wrap;gap:12px}.fx-grid label{flex-direction:row;align-items:center}.fx-grid input{width:110px}.period-field{display:flex;align-items:center;gap:10px;margin:8px 0;font-size:12px}.period-field span{width:46px;font-weight:700;color:#526b80}.period-field i{font-style:normal;color:#9aa8b5}.period-field input{height:36px;border:1px solid #d7e0e8;border-radius:7px;padding:0 8px;background:#fafcfd}
.control-grid{display:grid;grid-template-columns:130px repeat(2,minmax(0,180px));gap:8px 12px;align-items:center;font-size:11px;color:#6c7f90}
.settings-actions{display:flex;align-items:center;gap:16px;margin-top:18px}.pulse-primary.big{padding:14px 24px;font-size:13px;margin-top:0}
.report-heading{padding-top:65px;margin-bottom:6px}
.ai-layout{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:24px}.ai-card{padding:24px}.ai-card .pulse-primary{margin-top:0}.ai-answer{margin-top:16px;font-size:12px;line-height:1.85;color:#3e5165}.ai-answer.muted{color:#8796a5}.answer-text b{color:var(--navy)}mark{background:#ffe9a8;color:#7a4b00;border-radius:3px;padding:0 2px}.verify{margin-top:12px;border-radius:6px;padding:8px 10px;font-size:11px;font-weight:700}.verify.ok{background:#eef7f3;color:#2b8065}.verify.bad{background:#fff4dd;color:#946b33}.tools{margin-top:8px;font-size:10px;color:#9aa8b5;overflow-wrap:anywhere}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 4px}.chips button{border:1px solid #dce5eb;background:#f7f9fb;color:#40607b;border-radius:30px;padding:7px 12px;font-size:11px;font-weight:700}.chips button:hover{border-color:var(--gold);color:var(--navy)}
.chat{max-height:620px;overflow:auto}.turn{border-top:1px solid var(--line);padding:14px 0}.turn:first-child{border-top:0}.turn .q{font-weight:800;color:var(--navy);font-size:13px;margin-bottom:8px}.turn .q:before{content:"问 ";color:var(--gold)}.turn .a{font-size:12px;line-height:1.85;color:#3e5165}
.ask-row{display:flex;gap:8px;margin-top:12px}.ask-row input{flex:1;min-width:0;height:42px;border:1px solid #d7e0e8;border-radius:8px;padding:0 12px;font-size:13px;outline:none}.ask-row input:focus{border-color:#a2b9ce}.ask-row .pulse-primary{margin:0}
.danger-zone{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:70px;padding:20px 22px;border:1px solid #f1d6d2;border-radius:12px;background:#fffafa}.danger-zone strong{color:#a6463f;font-size:14px}.danger-zone p{margin:6px 0 0;font-size:11px;color:#9a7470}.danger-button{border:1px solid #e0aaa4;background:white;color:#b14a42;border-radius:7px;padding:10px 16px;font-weight:800;font-size:12px;white-space:nowrap}.danger-button:hover{background:#fff0ee}
@media(max-width:980px){.mapping-row{grid-template-columns:130px 190px minmax(0,1fr)}.mapping-row .field-handling{grid-column:2/-1}.mapping-row.head span:last-child{display:none}.ai-layout{grid-template-columns:1fr}}
@media(max-width:700px){.site-header nav a.nav-cta{margin:0}.hero-cta{display:block;text-align:center}.upload-grid,.settings-grid{grid-template-columns:1fr}.mapping-card,.settings-card,.upload-card,.ai-card{padding:18px}.mapping-row.head{display:none}.mapping-row{grid-template-columns:1fr;gap:6px;padding:12px 0}.mapping-row .field-handling{grid-column:auto}.field-select select{width:100%}.control-grid{grid-template-columns:90px 1fr 1fr}.period-field{flex-wrap:wrap}.period-field input{flex:1;min-width:120px}.danger-zone{flex-direction:column;align-items:stretch}.settings-actions{flex-direction:column;align-items:stretch}}

/* ---------- “用我的数据”入口：醒目 ---------- */
.new-tag{display:inline-block;background:var(--navy-deep);color:var(--gold-light);font-size:9px;font-weight:900;letter-spacing:.08em;border-radius:4px;padding:2px 5px;margin-right:7px;vertical-align:1px;font-style:normal}
.header-cta{display:inline-flex;align-items:center;white-space:nowrap;background:linear-gradient(135deg,#e2bd76,var(--gold));color:var(--navy-deep);font-weight:850;font-size:13px;border-radius:30px;padding:10px 16px 10px 10px;box-shadow:0 6px 18px rgba(198,154,76,.35);animation:cta-glow 2.4s ease-in-out infinite;transition:transform .15s}
.header-cta:hover{transform:translateY(-1px)}.header-cta b{margin-left:5px;font-size:15px}
@keyframes cta-glow{0%,100%{box-shadow:0 6px 18px rgba(198,154,76,.32),0 0 0 0 rgba(198,154,76,.45)}50%{box-shadow:0 6px 18px rgba(198,154,76,.32),0 0 0 7px rgba(198,154,76,0)}}
.hero-cta{display:inline-flex;flex-direction:column;gap:5px;margin-top:30px;background:linear-gradient(135deg,#f0d59f,var(--gold));color:var(--navy-deep);border-radius:12px;padding:16px 26px 15px;box-shadow:0 14px 34px rgba(0,0,0,.28),0 0 0 1px rgba(255,255,255,.25) inset;transition:transform .15s,box-shadow .15s}
.hero-cta:hover{background:linear-gradient(135deg,#f5ddb0,#d4a85a);transform:translateY(-2px);box-shadow:0 18px 40px rgba(0,0,0,.32)}
.hero-cta-main{font-size:19px;font-weight:900;letter-spacing:.01em}.hero-cta-main b{margin-left:4px}.hero-cta-sub{font-size:11px;font-weight:700;color:#5b4520;opacity:.9}
a.aside-step{color:inherit}.aside-new{margin:4px -12px 0;padding:14px 12px!important;border-radius:10px;background:rgba(229,198,141,.16);border:1px solid rgba(229,198,141,.45)!important;transition:background .2s}.aside-new:hover{background:rgba(229,198,141,.26)}.aside-new strong{color:var(--gold-light)!important;font-weight:800!important}
.own-data-banner{display:block;background:linear-gradient(100deg,#fbf3e2 0%,#f6e5c4 55%,#efd7a8 100%);border-bottom:1px solid #e6cf9f;color:var(--navy);transition:filter .2s}.own-data-banner:hover{filter:brightness(1.02)}
.own-data-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 0}.own-data-text{display:flex;flex-direction:column;gap:4px}.own-data-kicker{font-size:10px;font-weight:850;letter-spacing:.14em;color:#a07531}.own-data-text strong{font-size:20px;color:var(--navy-deep)}.own-data-text small{font-size:12px;color:#6b5a3a;line-height:1.6}
.own-data-button{flex:none;background:var(--navy);color:#fff;font-weight:850;font-size:14px;border-radius:10px;padding:14px 22px;box-shadow:0 8px 20px rgba(16,43,70,.25)}.own-data-banner:hover .own-data-button{background:var(--navy-mid)}
@media(prefers-reduced-motion:reduce){.header-cta{animation:none}}
@media(max-width:980px){.header-cta{margin-left:auto}}
@media(max-width:700px){.header-cta{font-size:12px;padding:8px 12px 8px 8px}.hero-cta{display:flex;margin-top:24px}.hero-cta-main{font-size:17px}.own-data-inner{flex-direction:column;align-items:stretch;gap:14px;padding:18px 0}.own-data-text strong{font-size:17px}.own-data-button{text-align:center}}
@media(max-width:380px){.header-cta .new-tag{display:none}.brand small{display:none}}

/* ---------- 手机适配 ---------- */
.swipe-hint{display:none}.header-back{display:none}
.md-table{overflow-x:auto;margin:8px 0;-webkit-overflow-scrolling:touch}.md-table table{border-collapse:collapse;font-size:11px;white-space:nowrap}.md-table th,.md-table td{border-bottom:1px solid var(--line);padding:6px 10px;text-align:right}.md-table th:first-child,.md-table td:first-child{text-align:left}.md-table th{background:#f6f8fa;color:#5b6c7d}
.answer-text p{margin:0 0 6px}
details.tools summary{cursor:pointer;color:#8b9aa8;font-size:10px;list-style:none}details.tools summary::-webkit-details-marker{display:none}details.tools summary:before{content:"▸ "}details.tools[open] summary:before{content:"▾ "}details.tools code{display:block;margin-top:4px;color:#9aa8b5;font-size:10px;overflow-wrap:anywhere;white-space:normal}
.upload-card.has-file .file-drop{height:46px;margin:14px 0 10px;border-style:solid;font-weight:600}
@media(max-width:700px){
  /* iOS 输入框字号小于 16px 时聚焦会自动放大页面 */
  input:not([type=radio]):not([type=checkbox]):not([type=file]),select,textarea{font-size:16px!important}
  input[type=radio],input[type=checkbox]{width:20px;height:20px;flex:none}
  .source-link{display:inline-flex;align-items:center;min-height:34px;font-size:13px}
  .choice{min-height:34px;font-size:13px;white-space:normal}
  .header-back{display:inline-flex;align-items:center;margin-left:auto;border:1px solid #d9c39a;background:#fbf6ec;color:var(--navy);font-weight:800;font-size:13px;border-radius:30px;padding:8px 14px;white-space:nowrap}
  .topline{font-size:10px}.topline-inner{height:28px}
  .report-topline{gap:6px}.report-topline>div{flex-wrap:wrap;gap:4px 8px}.report-topline .divider-dot{display:none}
  .query-input-wrap{flex-wrap:wrap;height:auto;overflow:visible;border:0}.query-input-wrap:focus-within{box-shadow:none}.query-input-wrap .query-icon{display:none}.query-input-wrap input{flex:1 1 100%;height:48px;border:1px solid #d7e0e8;border-radius:8px;padding:0 12px}.query-input-wrap button{flex:1 1 100%;height:46px;border-radius:8px;margin-top:8px;font-size:14px}
  .metric-card .metric-label{font-size:12px}.metric-card .metric-sub{font-size:11px;line-height:1.5}
  /* 利润桥：每个因素一张小卡片 */
  .bridge-card{overflow:visible}.bridge-head{display:none}
  .bridge-head,.bridge-row{min-width:0}
  .bridge-row{grid-template-columns:1fr 1fr auto;grid-template-rows:auto auto;gap:6px 10px;padding:14px 16px;min-height:0}
  .bridge-row .factor{grid-column:1/3;grid-row:1;font-size:14px}.bridge-row .impact{grid-column:3;grid-row:1;text-align:right;font-size:14px}
  .bridge-row .bridge-value{grid-row:2;text-align:left!important;font-size:12px;color:#5c6e7f}.bridge-row .bridge-value:before{content:attr(data-label);display:block;font-size:10px;color:#9aa8b5}
  .bridge-row .bridge-value:nth-child(2){grid-column:1}.bridge-row .bridge-value:nth-child(3){grid-column:2}.bridge-row .bridge-source{grid-column:3;grid-row:2;align-self:end}
  .bridge-total{flex-direction:column;align-items:flex-start;gap:6px;padding:16px;min-height:0}.bridge-total strong{font-size:22px}
  /* 证据弹窗：底部抽屉 */
  dialog{width:100%;max-width:100%;margin:auto 0 0;border-radius:16px 16px 0 0;max-height:88vh}
  .dialog-header{padding:18px 18px 14px}.dialog-header button{width:40px;height:40px}.dialog-body{padding:16px 18px 24px}
  .swipe-hint{display:block;text-align:center;font-size:11px!important;color:#9aa8b5!important;margin:0 0 6px}
  .records-table th:first-child,.records-table td:first-child{position:sticky;left:0;background:#fff;z-index:1}.records-table th:first-child{background:#f6f8fa}
  /* 真实数据页 */
  .file-drop{height:64px}
  .period-field{display:grid;grid-template-columns:1fr auto 1fr;gap:6px 8px}.period-field span{grid-column:1/-1;width:auto}.period-field input{min-width:0;width:100%;height:42px}
  .settings-card input,.settings-card select{height:44px}
  .control-grid input{height:44px}
  .mapping-row{gap:8px}.field-samples code{font-size:11px}
  .ai-answer,.turn .a{font-size:13px}
  .chips{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch}.chips button{flex:none;padding:9px 14px;font-size:12px}
  .ask-row input{height:46px}.ask-row .pulse-primary{padding:0 18px}
  .pulse-primary{min-height:42px}
}

/* ---------- 架构页 ---------- */
.arch-links{display:flex;gap:12px;margin-top:26px}.arch-links a{border:1px solid rgba(229,198,141,.6);color:var(--gold-light);border-radius:8px;padding:10px 16px;font-weight:800;font-size:13px}.arch-links a:hover{background:rgba(229,198,141,.12)}
.arch-quote{color:#dbe6ef;font-size:14px;line-height:1.85;margin:16px 0 6px}
.arch-section{padding:64px 0 0;scroll-margin-top:90px}.arch-section:last-of-type{padding-bottom:90px}.arch-section .section-heading{margin-bottom:26px}
.role{display:inline-block;border-radius:5px;padding:2px 7px;font-size:10px;font-weight:850;margin-right:6px;vertical-align:1px;white-space:nowrap}.role-user{background:#e9f1f8;color:#31729e}.role-code{background:#e8f4ee;color:var(--green)}.role-ai{background:#f8f1e5;color:#97692c}.role-no{background:#fff0ec;color:var(--red)}
.node{background:#fff;border:1px solid var(--line);border-radius:10px;padding:13px 15px;box-shadow:var(--shadow);min-width:0}.node b{display:block;color:var(--navy);font-size:13px}.node small{display:block;color:#7d8b98;font-size:11px;line-height:1.6;margin-top:4px}.node-gold{border-color:#e2c792;background:#fdf8ee}.node-wide{width:100%}.node-store{background:#f6f8fa;border-style:dashed}.node-ext{background:#f3f6f9;border-style:dashed}
.arch-tier{border:1px solid #dfe6ec;border-radius:14px;padding:16px;background:#fbfcfd}.arch-host{background:#f1f5f8;border-color:#cfdbe5}.tier-label{font-size:10px;font-weight:850;letter-spacing:.12em;color:#8b9aa8;margin-bottom:12px}
.tier-row{display:flex;align-items:stretch;gap:12px}.tier-row>.node{flex:1}.tier-row .link{align-self:center;color:var(--gold);font-size:20px;font-weight:800}.tier-row.stores{margin-top:12px}
.arch-arrow{display:flex;flex-direction:column;align-items:center;padding:6px 0;color:#9aa8b5;font-size:11px;font-weight:700}.arch-arrow:before{content:"";width:2px;height:16px;background:linear-gradient(var(--gold),#d7c39a)}.arch-arrow:after{content:"▼";color:var(--gold);font-size:10px;line-height:1}.arch-arrow span{order:1;margin-top:3px}.arch-arrow.small{padding:4px 0}
.node-api{margin-top:0;padding:16px}.api-modules{display:grid;grid-template-columns:1fr 1.15fr 1fr;gap:12px;margin-top:12px}.module{border:1px solid var(--line);border-radius:9px;padding:12px;background:#fafcfd;position:relative}.module b{font-size:13px}.module small{font-size:11px}.module-tag{position:absolute;top:-9px;right:10px;background:#eef2f5;color:#617a8e;font-size:10px;font-weight:850;border-radius:10px;padding:1px 8px}.module-core{border:2px solid var(--navy);background:#fff}.module-core .module-tag{background:var(--navy);color:var(--gold-light)}.module-real{border-color:#e2c792;background:#fdf8ee}.module-real .module-tag{background:var(--gold);color:var(--navy-deep)}
.arch-side{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}.arch-side .node{position:relative;padding-left:40px}.arch-side .node:before{content:"⇄";position:absolute;left:14px;top:13px;color:var(--gold);font-weight:800}
.flow{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,1fr);gap:28px 30px;counter-reset:step}.flow li{position:relative;background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px 15px 15px;box-shadow:var(--shadow);counter-increment:step}.flow li:before{content:counter(step,decimal-leading-zero);display:block;font-size:11px;font-weight:900;color:var(--gold);margin-bottom:8px;letter-spacing:.08em}.flow li b{display:block;color:var(--navy);font-size:14px;margin:8px 0 6px}.flow li small{display:block;color:#748494;font-size:11px;line-height:1.7}
.flow li:not(:nth-child(4n)):not(:last-child):after{content:"→";position:absolute;right:-23px;top:50%;transform:translateY(-50%);color:var(--gold);font-weight:900;font-size:16px}
.flow li.flow-user{border-color:#c9dcea;background:#f6fafd}.flow li.flow-core{border:2px solid var(--navy)}
.flow-note{margin-top:18px;font-size:12px;color:#6c7f90;background:#f3f7fa;border-radius:8px;padding:12px 14px;line-height:1.7}
.loop{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:26px;align-items:end}.loop-col{display:flex;flex-direction:column;align-items:stretch}.loop-node{background:#fff;border:1px solid var(--line);border-radius:11px;padding:13px 15px;box-shadow:var(--shadow);position:relative}.loop-node b{color:var(--navy);font-size:13px}.loop-node small{display:block;color:#748494;font-size:11px;line-height:1.7;margin-top:5px}.loop-node em{position:absolute;top:12px;right:12px;font-style:normal;font-size:10px;font-weight:800;color:#31729e;background:#e9f1f8;border-radius:10px;padding:2px 8px}
.loop-tool{border-color:#bfe0d1;background:#f4fbf7}.loop-tool:after{content:"↺ 可多次调用";display:block;text-align:right;margin-top:6px;font-size:10px;color:var(--green);font-weight:800}.loop-check{border:2px solid var(--navy)}
.loop-arrow{text-align:center;color:var(--gold);font-weight:800;font-size:12px;padding:5px 0}
.loop-outcomes{display:flex;flex-direction:column;gap:12px}.outcome{border-radius:11px;padding:14px 16px;border:1px solid}.outcome b{display:block;font-size:14px}.outcome small{display:block;font-size:11px;line-height:1.7;margin-top:4px}.outcome.ok{background:#eef7f3;border-color:#cfe6da;color:#2b6b55}.outcome.retry{background:#f5f8fb;border-color:#d6e2ec;color:#40607b}.outcome.bad{background:#fff7e6;border-color:#f0dfbf;color:#8a6430}
.boundary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.boundary{padding:20px}.boundary .role{font-size:12px;padding:4px 10px}.boundary ul{margin:12px 0 0;padding-left:18px;color:#4d6073;font-size:12px;line-height:1.95}
.grade-row{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:16px}.grade-card{border-radius:12px;padding:16px 18px}.grade-card b{display:block;font-size:15px}.grade-card small{display:block;font-size:11px;line-height:1.7;margin-top:6px}.grade-card.high{background:#eef7f3;color:#2b6b55}.grade-card.mid{background:#fff3e2;color:#8a6430}.grade-card.low{background:#fff0ed;color:#a6463f}
.degrade{margin-top:16px;overflow:hidden}.degrade-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:16px;padding:12px 20px;border-top:1px solid #edf0f3;font-size:12px;color:#4d6073;line-height:1.6}.degrade-row span:first-child{font-weight:700;color:#344b60}.degrade-row.head{border-top:0;background:#f7f9fa;color:#8b9aa8;font-size:10px;font-weight:800}.degrade-row.head span:first-child{color:#8b9aa8}
.eval-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.eval-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px;box-shadow:var(--shadow)}.eval-card strong{display:block;font-size:34px;color:var(--navy);letter-spacing:-.03em;line-height:1}.eval-card b{display:block;color:var(--navy);margin:8px 0 6px}.eval-card small{display:block;font-size:11px;line-height:1.7;color:#748494}
.not-doing{margin-top:16px;padding:20px}.not-doing>b{color:var(--navy)}.chips.static span{border:1px solid #f1d6d2;background:#fffafa;color:#a6463f;border-radius:30px;padding:6px 12px;font-size:11px;font-weight:700}
footer a{color:#c9d7e2;text-decoration:underline;text-underline-offset:3px}
@media(max-width:980px){.flow{grid-template-columns:repeat(2,1fr)}.flow li:after{display:none!important}.boundary-grid,.grade-row{grid-template-columns:1fr}.eval-grid{grid-template-columns:repeat(2,1fr)}.loop{grid-template-columns:1fr}}
@media(max-width:700px){
  .arch-section{padding-top:48px}.arch-links{flex-direction:column}.arch-links a{text-align:center}
  .tier-row{flex-direction:column;gap:8px}.tier-row .link{transform:rotate(90deg);align-self:center;line-height:1}
  .api-modules{grid-template-columns:1fr;gap:16px}.arch-side{grid-template-columns:1fr}
  .flow{grid-template-columns:1fr;gap:22px}.flow li:not(:last-child):after{content:"↓"!important;display:block!important;position:absolute;left:50%!important;right:auto!important;top:auto!important;bottom:-21px!important;transform:translateX(-50%)!important;color:var(--gold);font-weight:900}
  .degrade-row{grid-template-columns:1fr;gap:4px;padding:12px 16px}.degrade-row.head{display:none}
  .eval-grid{grid-template-columns:1fr 1fr;gap:10px}.eval-card{padding:14px}.eval-card strong{font-size:28px}
  .boundary ul{font-size:13px}.flow li small,.loop-node small,.node small{font-size:12px}
}
