/* GEOScope Shared Design System — v3 · Apple-inspired */
:root {
  --paper: #FAFBF9;
  --ink: #16211C;
  --pine: #0E5F4C;
  --pine-deep: #0A4A3B;
  --amber: #E8A33D;
  --mint: #DCEFE7;
  --mint-deep: #C5E8D9;
  --mist: #E4EEE9;
  --gray: #5E7268;
  --rust: #C4543A;
  --rust-light: #FBEAE4;
  --disp: "Fraunces", serif;
  --mono: "IBM Plex Mono", Menlo, monospace;
  --body: -apple-system, "PingFang SC", "Microsoft YaHei", sans-serif;
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 16px;
  --radius-xl: 20px;
  --shadow-xs: 0 1px 2px rgba(14,95,76,.04);
  --shadow-sm: 0 1px 3px rgba(14,95,76,.06), 0 1px 2px rgba(14,95,76,.04);
  --shadow-md: 0 4px 12px rgba(14,95,76,.06), 0 1px 3px rgba(14,95,76,.04);
  --shadow-lg: 0 8px 24px rgba(14,95,76,.08), 0 2px 8px rgba(14,95,76,.04);
  --ease-out: cubic-bezier(0.25, 0.1, 0.25, 1);
  --ease-in-out: cubic-bezier(0.42, 0, 0.58, 1);
}

/* Reset */
*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }

body {
  background: var(--paper);
  color: var(--ink);
  font-family: var(--body);
  font-size: 15px;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-optical-sizing: auto;
}

/* ═══ Typography — tiered letter-spacing & line-height ═══ */
h1, h2, h3, h4 {
  font-family: var(--disp);
  font-optical-sizing: auto;
}
h1 {
  font-weight: 900;
  font-size: clamp(32px, 4.8vw, 50px);
  line-height: 1.1;
  letter-spacing: -0.02em;
}
h2 {
  font-size: clamp(22px, 3vw, 28px);
  line-height: 1.2;
  letter-spacing: -0.01em;
}
h3 {
  font-size: 18px;
  line-height: 1.3;
  letter-spacing: -0.005em;
}
h4 {
  font-size: 15px;
  line-height: 1.4;
  letter-spacing: 0;
}
.sub {
  color: var(--gray);
  font-size: 13.5px;
  letter-spacing: 0.01em;
}

/* Inline evidence bars used by report tables. */
.rpt-bar {
  display: inline-block;
  height: 7px;
  min-width: 2px;
  margin-left: 8px;
  border-radius: 999px;
  background: var(--pine);
  vertical-align: middle;
}

/* ═══ Navigation — frosted glass ═══ */
nav {
  position: sticky; top: 0; z-index: 50;
  background: rgba(250, 251, 249, .85);
  backdrop-filter: blur(24px) saturate(180%);
  -webkit-backdrop-filter: blur(24px) saturate(180%);
  border-bottom: 0.5px solid rgba(14,95,76,.08);
}
.nav-in {
  max-width: 1200px; margin: 0 auto; padding: 0 24px;
  display: flex; align-items: center; justify-content: space-between; height: 56px;
}
.brand {
  font-weight: 800; font-size: 17px; text-decoration: none; color: var(--ink);
  display: flex; align-items: center; gap: 8px;
  letter-spacing: -0.01em;
}
.nav-r, .nav-links {
  display: flex; gap: 16px; align-items: center;
}

/* Navigation dropdown */
.nav-drop { position: relative; }
.nav-drop-trigger { cursor: pointer; user-select: none; color: var(--pine); font-weight: 600; font-size: 14px; }
.nav-drop-menu {
  display: none; position: absolute; right: 0; top: calc(100% + 6px);
  background: rgba(255,255,255,.96);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border: 0.5px solid rgba(14,95,76,.1);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-lg);
  min-width: 180px; padding: 6px; z-index: 100;
}
.nav-drop-menu a {
  display: block; padding: 8px 14px; border-radius: var(--radius-sm);
  color: var(--ink); text-decoration: none; font-size: 13.5px;
  transition: background 120ms var(--ease-out);
}
.nav-drop-menu a:hover { background: var(--mint); }
.nav-drop:hover .nav-drop-menu { display: block; }

/* ═══ Buttons — press-feedback ═══ */
.btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 6px;
  background: var(--pine); color: #fff;
  padding: 10px 20px;
  border-radius: var(--radius-sm);
  text-decoration: none; font-weight: 600; font-size: 13.5px;
  border: none; cursor: pointer;
  transition: background 150ms var(--ease-out), transform 100ms var(--ease-out), box-shadow 150ms var(--ease-out);
  font-family: var(--body);
  letter-spacing: 0;
  -webkit-tap-highlight-color: transparent;
}
.btn:hover {
  background: var(--pine-deep);
  box-shadow: var(--shadow-sm);
}
.btn:active {
  transform: scale(0.97);
  transition: transform 80ms var(--ease-out);
}
.btn.ghost {
  background: transparent; color: var(--pine);
  border: 1px solid var(--pine);
}
.btn.ghost:hover { background: var(--mint); border-color: var(--pine-deep); }
.btn.ghost:active { transform: scale(0.97); }
.btn.amber { background: var(--amber); color: var(--ink); font-weight: 700; }
.btn.amber:hover { background: #F0B45C; }
.btn.sm { padding: 6px 14px; font-size: 12px; border-radius: 6px; }
.btn.danger { background: var(--rust); }
.btn.danger:hover { background: #A8432E; }
.btn.big { padding: 15px 36px; font-size: 16px; border-radius: var(--radius-md); }
.btn.gap { background: #fff; color: var(--ink); border: 1px solid var(--mist); font-weight: 500; }
.btn.gap:hover { border-color: var(--pine); background: var(--mint); }
.btn:disabled { opacity: .45; cursor: not-allowed; transform: none !important; }

/* ═══ Cards — material depth ═══ */
.card {
  background: #fff;
  border: 0.5px solid rgba(14,95,76,.08);
  border-top: 0.5px solid rgba(255,255,255,.6);
  border-radius: var(--radius-md);
  padding: 22px 24px;
  box-shadow: var(--shadow-xs);
  transition: box-shadow 200ms var(--ease-out), border-color 200ms var(--ease-out);
}
.card:hover {
  box-shadow: var(--shadow-sm);
  border-color: rgba(14,95,76,.12);
}

/* ═══ Forms — clean focus ═══ */
label {
  display: block; font-size: 12px; color: var(--gray); margin-bottom: 4px;
  font-weight: 600; letter-spacing: 0.01em;
}
input, select {
  width: 100%; padding: 10px 14px;
  border: 0.5px solid rgba(14,95,76,.15);
  border-radius: var(--radius-sm);
  font-size: 14px; font-family: var(--body); background: #fff;
  outline: none;
  transition: border-color 150ms var(--ease-out), box-shadow 150ms var(--ease-out);
}
input:focus, select:focus {
  border-color: var(--pine);
  box-shadow: 0 0 0 3px rgba(14,95,76,.06);
}

/* ═══ Utility ═══ */
.mono { font-family: var(--mono); }
.empty { color: var(--gray); font-size: 13px; padding: 16px 0; letter-spacing: 0.01em; }
.badge {
  display: inline-block; padding: 3px 10px; border-radius: 99px;
  font-size: 11px; font-family: var(--mono); font-weight: 600;
  letter-spacing: 0.02em;
}
.badge.ok { background: var(--mint); color: var(--pine); }
.badge.fail { background: var(--rust-light); color: var(--rust); }

/* ═══ Motion — prefers-reduced-motion ═══ */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
  .btn:active { transform: none; }
}

/* ═══ Breadcrumbs — minimal ═══ */
.breadcrumbs {
  max-width: 1200px; margin: 0 auto; padding: 14px 24px 0;
  font-size: 12.5px; color: var(--gray);
}
.breadcrumbs a { color: var(--gray); text-decoration: none; }
.breadcrumbs a:hover { color: var(--pine); text-decoration: underline; }
.breadcrumbs span { color: var(--ink); font-weight: 600; }
.breadcrumbs .sep { margin: 0 8px; color: var(--mist); }

/* ═══ Global nav link style (shared) ═══ */
.nav-links a, .nav-links span {
  color: var(--gray); text-decoration: none; font-size: 14px; font-weight: 500;
  transition: color .15s;
}
.nav-links a:hover, .nav-links a.active { color: var(--pine); }
.nav-links a.highlight { color: var(--pine); font-weight: 600; }

/* ═══ Homepage Redesign v4 — clean centered hero + 7 sections ═══ */
.hp-wrap{max-width:1160px;margin:0 auto;padding:0 24px}
.hp-hero{padding:72px 0 48px;text-align:center}
.hp-hero .kicker{font-family:var(--mono);font-size:11px;letter-spacing:.14em;color:var(--amber);text-transform:uppercase;margin-bottom:16px}
.hp-hero h1{font-size:clamp(38px,5.6vw,64px);line-height:1.08;letter-spacing:-.03em;margin:0 auto 18px;max-width:14ch}
.hp-hero h1 em{font-style:normal;color:var(--pine)}
.hp-hero .sub{max-width:58ch;margin:0 auto 28px;font-size:clamp(15px,1.8vw,17px);line-height:1.75;color:var(--gray)}
.hp-hero .sub b{color:var(--ink);font-weight:600}
.hp-search{max-width:640px;margin:0 auto;display:flex;gap:10px;background:#fff;border:0.5px solid rgba(14,95,76,.12);border-radius:var(--radius-lg);padding:8px;box-shadow:var(--shadow-md)}
.hp-search input{flex:1;border:none;background:transparent;padding:12px 14px;font-size:15px}
.hp-search input:focus{box-shadow:none}
.hp-search .btn{border-radius:10px;padding:12px 24px;font-size:15px}
.hp-hero .hint{margin-top:14px;font-size:12.5px;color:var(--gray)}
.hp-hero .hint b{color:var(--ink);font-weight:600}
.hp-preview{max-width:720px;margin:42px auto 0;background:#fff;border:0.5px solid rgba(14,95,76,.1);border-radius:var(--radius-xl);padding:28px 32px;box-shadow:var(--shadow-lg);text-align:left}
.hp-preview .ph{font-size:11px;font-weight:700;color:var(--gray);letter-spacing:.06em;margin-bottom:14px}
.hp-preview table{width:100%;border-collapse:collapse;font-size:13.5px}
.hp-preview th{text-align:left;font-size:11px;color:var(--gray);font-weight:600;padding:8px 10px;border-bottom:1px solid var(--mist)}
.hp-preview td{padding:11px 10px;border-bottom:1px solid var(--mist)}
.hp-preview tr:last-child td{border-bottom:none}
.hp-preview .you td{background:#F2FAF6;font-weight:700}
.hp-bar{display:inline-block;height:7px;background:var(--pine);border-radius:99px;min-width:3px}
.hp-sec{padding:76px 0}
.hp-sec.bg{background:linear-gradient(180deg,#fff,var(--paper))}
.hp-sec .head{text-align:center;max-width:680px;margin:0 auto 44px}
.hp-sec .head .kicker{font-family:var(--mono);font-size:11px;letter-spacing:.12em;color:var(--amber);text-transform:uppercase;margin-bottom:12px}
.hp-sec .head h2{font-size:clamp(26px,3.4vw,34px);line-height:1.18;margin-bottom:14px}
.hp-sec .head p{font-size:15.5px;color:var(--gray);line-height:1.7}
.hp-grid{display:grid;gap:20px}
.hp-grid.cols3{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.hp-grid.cols2{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}
.hp-card{background:#fff;border:0.5px solid rgba(14,95,76,.08);border-radius:var(--radius-lg);padding:28px 26px;box-shadow:var(--shadow-xs);transition:box-shadow .2s,border-color .2s,transform .2s}
.hp-card:hover{box-shadow:var(--shadow-md);border-color:rgba(14,95,76,.14);transform:translateY(-2px)}
.hp-card .ic{font-size:28px;margin-bottom:10px}
.hp-card h3{font-size:18px;margin-bottom:8px}
.hp-card p{font-size:14px;color:var(--gray);line-height:1.7;margin:0}
.hp-card .cta{display:inline-flex;align-items:center;gap:4px;margin-top:16px;font-size:13px;font-weight:700;color:var(--pine);text-decoration:none}
.hp-card .cta:hover{gap:8px}
.hp-ind{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.hp-ind .l{border-right:1px solid var(--mist);padding-right:24px}
.hp-ind .r{padding-left:24px}
.hp-ind h3{font-size:24px;margin-bottom:12px}
.hp-ind p{font-size:14.5px;color:var(--gray);line-height:1.75;margin-bottom:18px}
.hp-int{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px}
.hp-int span{background:var(--mint);color:var(--pine);font-size:12.5px;font-weight:600;padding:6px 12px;border-radius:999px}
.hp-lift{max-width:540px;margin:0 auto;text-align:center}
.hp-lift .beforeafter{display:flex;align-items:center;justify-content:center;gap:18px;margin:28px 0}
.hp-lift .ba{text-align:center}
.hp-lift .ba .n{font-family:var(--disp);font-size:42px;font-weight:800;color:var(--gray);letter-spacing:-1px}
.hp-lift .ba .l{font-size:12px;color:var(--gray);margin-top:4px}
.hp-lift .ba.you .n{color:var(--pine)}
.hp-lift .arrow{font-size:24px;color:var(--amber);font-weight:700}
.hp-lift .delta{font-family:var(--disp);font-size:22px;font-weight:800;color:var(--pine)}
.hp-flow{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:18px}
.hp-flow span{font-size:12px;font-weight:700;color:var(--pine);background:var(--mint);padding:7px 14px;border-radius:999px}
.hp-flow i{color:var(--mist);font-style:normal;font-weight:700}
.hp-preview-box{max-width:800px;margin:0 auto;background:#fff;border:0.5px solid rgba(14,95,76,.1);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-lg)}
.hp-preview-box .pb-head{background:var(--mint);padding:16px 24px;display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.hp-preview-box .pb-head span{font-size:12px;font-weight:700;color:var(--pine)}
.hp-preview-box .pb-body{padding:24px}
.hp-preview-box .pb-mask{position:relative;height:120px;background:linear-gradient(180deg,transparent,var(--paper));margin-top:-80px;pointer-events:none}
.hp-tier{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-top:24px}
.hp-tier .t{background:#fff;border:0.5px solid rgba(14,95,76,.08);border-radius:var(--radius-md);padding:22px 20px;text-align:center}
.hp-tier .t .tag{font-size:11px;font-weight:700;color:var(--gray);letter-spacing:.06em;margin-bottom:8px}
.hp-tier .t h4{font-size:17px;margin-bottom:8px}
.hp-tier .t ul{list-style:none;padding:0;margin:0;font-size:13px;color:var(--gray);line-height:1.8}
.hp-stats{display:flex;justify-content:center;gap:48px;flex-wrap:wrap;text-align:center;margin-top:18px}
.hp-stats .n{font-family:var(--disp);font-size:40px;font-weight:800;color:var(--pine);letter-spacing:-1px}
.hp-stats .l{font-size:13px;color:var(--gray);margin-top:4px}
@media(max-width:820px){
  .hp-hero{padding:52px 0 36px}
  .hp-search{flex-direction:column}
  .hp-search .btn{width:100%}
  .hp-ind{grid-template-columns:1fr}
  .hp-ind .l{border-right:none;padding-right:0;border-bottom:1px solid var(--mist);padding-bottom:24px}
  .hp-ind .r{padding-left:0;padding-top:24px}
  .hp-preview{padding:20px;overflow-x:auto}
  .hp-stats{gap:28px}
  .hp-stats .n{font-size:32px}
}

/* ═══ Result page redesign v4 — clean report modules ═══ */
.rpt-wrap{max-width:1100px;margin:0 auto;padding:0 24px 60px}

/* ═══ Shared footer (.eg-foot) used by index + detection pages ═══ */
.eg-wrap{max-width:1100px;margin:0 auto;padding:0 24px}
.eg-foot{background:#0B4A3B;color:rgba(255,255,255,.82);padding:40px 0 30px;margin-top:40px}
.eg-foot-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:26px;margin-bottom:24px}
.eg-foot h4{font-size:13px;letter-spacing:.04em;color:#fff;margin:0 0 9px;font-weight:700}
.eg-foot p{font-size:12.5px;line-height:1.75;margin:0;color:rgba(255,255,255,.72)}
.eg-foot p a, .eg-foot a{color:rgba(255,255,255,.82);text-decoration:none}
.eg-foot p a:hover, .eg-foot a:hover{color:#fff}
.eg-foot-meta{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-top:22px;padding-top:16px;border-top:1px solid rgba(255,255,255,.14);font-size:12px;color:rgba(255,255,255,.6)}
/* 检测页行业选择标签栏：当前行业高亮，其他行业可跳转 */
.eg-tabs{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;margin:0 0 18px}
.eg-tabs-t{font-size:12px;color:var(--gray);margin-right:4px;font-weight:600}
.eg-tabs a,.eg-tabs span.pill{font-size:13.5px;font-weight:600;text-decoration:none;padding:7px 16px;border:1px solid rgba(14,95,76,.24);border-radius:99px;transition:all .15s;background:#fff}
.eg-tabs a{color:var(--pine)}
.eg-tabs a:hover{border-color:var(--pine);background:rgba(14,95,76,.06)}
.eg-tabs a.on,.eg-tabs span.pill.on{background:var(--pine);color:#fff;border-color:var(--pine);cursor:default}
.eg-tabs span.pill.on{pointer-events:none}
@media(max-width:760px){.eg-tabs a,.eg-tabs span.pill{padding:6px 12px;font-size:12.5px}}
/* 业务化标签选择器：把 select 改成可点击标签组 */
.eg-seg{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.eg-seg .s{font-size:13px;font-family:inherit;padding:7px 14px;border:1px solid rgba(14,95,76,.18);border-radius:99px;background:#fff;color:var(--ink);cursor:pointer;transition:all .15s;line-height:1.2}
.eg-seg .s:hover{border-color:var(--pine)}
.eg-seg .s.on{background:var(--pine);border-color:var(--pine);color:#fff}
.eg-seg .s:not(.on){opacity:.65}
.eg-seg .s.empty{color:var(--gray);border-style:dashed;opacity:.7}
/* 实体名称条：显示从首页传入的名称 */
.eg-entity-bar{max-width:620px;margin:0 auto 18px;display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;font-size:14px;color:var(--gray)}
.eg-entity-bar b{font-weight:600;color:var(--ink)}
.eg-entity-bar .tag{font-size:12px;font-weight:600;color:var(--pine);background:var(--mint);padding:3px 10px;border-radius:99px}
.rpt-hero{padding:42px 0 28px}
.rpt-cover{background:linear-gradient(155deg,#0B4A3B 0%,#0E5F4C 46%,#14755E 100%);border-radius:var(--radius-xl);padding:36px 40px;color:#fff;position:relative;overflow:hidden;box-shadow:0 22px 56px rgba(11,74,59,.22)}
.rpt-cover:before{content:"";position:absolute;right:-90px;top:-90px;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle,rgba(232,163,61,.28),transparent 68%)}
.rpt-cover .brand{font-size:10px;letter-spacing:.22em;font-weight:800;color:rgba(255,255,255,.65);text-transform:uppercase}
.rpt-cover .top{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;flex-wrap:wrap;position:relative}
.rpt-cover h1{font-size:clamp(24px,3.6vw,34px);letter-spacing:-.5px;margin:10px 0 6px}
.rpt-cover .meta{font-size:13.5px;color:rgba(255,255,255,.72)}
.rpt-cover .mode{display:inline-block;margin-top:12px;font-size:10px;font-weight:700;letter-spacing:.08em;padding:5px 12px;border-radius:999px;background:rgba(232,163,61,.2);border:1px solid rgba(232,163,61,.5);color:#F7D9A4}
.rpt-score{text-align:right;flex-shrink:0}
.rpt-score .n{font-family:var(--disp);font-size:72px;font-weight:800;line-height:.9;letter-spacing:-2.5px}
.rpt-score .l{font-size:12px;color:rgba(255,255,255,.7);margin-top:6px}
.rpt-kpi{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;margin-top:30px;background:rgba(255,255,255,.16);border-radius:14px;overflow:hidden;position:relative}
.rpt-kpi>div{background:rgba(6,52,41,.42);padding:16px 18px}
.rpt-kpi .k{font-size:10px;letter-spacing:.09em;color:rgba(255,255,255,.62);font-weight:700;margin-bottom:7px;text-transform:uppercase}
.rpt-kpi .v{font-size:22px;font-weight:700;letter-spacing:-.4px}
.rpt-kpi .s{font-size:11.5px;color:rgba(255,255,255,.6);margin-top:3px;line-height:1.5}
.rpt-beta{margin-top:16px;font-size:12px;line-height:1.7;color:rgba(255,255,255,.6);position:relative}
/* PHASE 1 · 5 问 AI Brand Snapshot 卡片 */
.rpt-5q{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}
.q5{background:#fff;border:1px solid var(--line,#ECEEF0);border-radius:14px;padding:18px 18px 16px;position:relative;transition:box-shadow .18s,transform .18s}
.q5:hover{box-shadow:0 12px 30px rgba(11,74,59,.10);transform:translateY(-2px)}
.q5-q{font-size:15.5px;font-weight:700;color:var(--ink,#10231D);margin-bottom:9px;letter-spacing:-.2px}
.q5-a{font-size:13.5px;line-height:1.75;color:#33403B;margin-bottom:10px}
.q5-m{display:inline-block;font-size:11px;font-weight:700;color:#0E5F4C;background:#E7F3EE;border:1px solid #CDE7DD;padding:4px 10px;border-radius:999px;margin-bottom:8px}
.q5-d{font-size:12px;line-height:1.65;color:var(--gray,#7A8580);border-top:1px dashed #ECEEF0;padding-top:9px}
@media(max-width:560px){.rpt-5q{grid-template-columns:1fr}}
.rpt-livebar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:18px}
.rpt-livebtn{font-family:inherit;font-size:13px;font-weight:700;color:#0B4A3B;background:#fff;border:none;border-radius:999px;padding:9px 16px;cursor:pointer;box-shadow:0 6px 18px rgba(0,0,0,.18);transition:transform .12s ease}
.rpt-livebtn:hover{transform:translateY(-1px)}
.rpt-livebtn:disabled{opacity:.7;cursor:default}
.rpt-livehint{font-size:11.5px;color:rgba(255,255,255,.66)}
.rpt-cover .mode.live{background:rgba(46,204,113,.22);border-color:rgba(46,204,113,.6);color:#BFF3D6}
.rpt-livemeta{margin-top:10px;font-size:11.5px;line-height:1.6;color:rgba(255,255,255,.72)}
.rpt-sec{margin-top:40px}
.rpt-sec-h{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:8px}
.rpt-sec-n{font-family:var(--mono);font-size:11px;font-weight:700;color:var(--amber);letter-spacing:.1em}
.rpt-sec-h h2{font-size:clamp(20px,2.6vw,26px);letter-spacing:-.4px;margin:0}
.rpt-sec-d{font-size:14.5px;color:var(--gray);line-height:1.75;margin:0 0 18px;max-width:68ch}
.rpt-card{background:#fff;border:0.5px solid rgba(14,95,76,.1);border-radius:var(--radius-lg);padding:26px 28px;box-shadow:var(--shadow-xs)}
.rpt-grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}
.rpt-grid3{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.rpt-grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px}
.rpt-metric{border:0.5px solid rgba(14,95,76,.1);border-radius:var(--radius-md);padding:20px 22px;background:#fff;position:relative}
.rpt-metric .w{font-size:10px;font-weight:700;color:var(--amber);letter-spacing:.06em;margin-bottom:10px}
.rpt-metric .k{font-size:15px;font-weight:600;margin-bottom:4px}
.rpt-metric .e{font-size:11px;color:var(--gray);font-family:var(--mono);margin-bottom:12px}
.rpt-metric .v{font-size:34px;font-weight:800;letter-spacing:-1px;line-height:1}
.rpt-metric .b{display:inline-block;margin-top:10px;font-size:11px;font-weight:700;padding:3px 11px;border-radius:999px}
.rpt-metric .b.strong{background:#E6F4EE;color:#0E7A57}
.rpt-metric .b.ok{background:#E4F0F8;color:#2C7FB8}
.rpt-metric .b.weak{background:#FBF1E0;color:#B07A1A}
.rpt-metric .b.critical{background:#FBEAE6;color:#B23B2B}
.rpt-tbl{width:100%;border-collapse:collapse;font-size:13.5px}
.rpt-tbl th{text-align:left;font-size:11px;letter-spacing:.04em;color:var(--gray);font-weight:700;padding:10px 12px;border-bottom:1px solid var(--mist);white-space:nowrap}
.rpt-tbl td{padding:13px 12px;border-bottom:1px solid var(--mist);vertical-align:middle}
.rpt-tbl tr:last-child td{border-bottom:none}
.rpt-tbl tr.you{background:#F2FAF6}
.rpt-tbl tr.you td{font-weight:700}
.rpt-tbl .bar{display:inline-block;height:7px;background:var(--pine);border-radius:99px;min-width:2px;vertical-align:middle;margin-left:8px}
.rpt-pill{display:inline-block;font-size:11px;font-weight:700;padding:3px 11px;border-radius:999px;letter-spacing:.02em}
.rpt-pill.lead{background:#E6F4EE;color:#0E7A57}
.rpt-pill.avg{background:#E4F0F8;color:#2C7FB8}
.rpt-pill.behind{background:#FBF1E0;color:#B07A1A}
.rpt-pill.gap{background:#FBEAE6;color:#B23B2B}
.rpt-rank{font-family:var(--mono);font-weight:800;font-size:14px;color:var(--gray)}
.rpt-rank.you{color:var(--pine)}
.rpt-eng{display:flex;align-items:center;justify-content:space-between;gap:14px;background:#fff;border:0.5px solid rgba(14,95,76,.1);border-radius:var(--radius-md);padding:14px 18px;margin-bottom:10px}
.rpt-eng .n{font-size:15px;font-weight:800;color:var(--pine)}
.rpt-eng .v{font-family:var(--mono);font-size:18px;font-weight:700}
.rpt-ogap{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:16px}
.rpt-og{background:var(--mint);border:0.5px solid #D0E8DD;border-radius:var(--radius-lg);padding:22px 24px;position:relative;overflow:hidden}
.rpt-og .n{font-family:var(--disp);font-size:38px;font-weight:800;color:var(--pine);letter-spacing:-1.2px;line-height:1}
.rpt-og .l{font-size:13px;color:#34564c;font-weight:600;margin-top:8px;line-height:1.5}
.rpt-og .l small{display:block;font-weight:400;font-size:11.5px;color:var(--gray);margin-top:3px}
.rpt-og .up{position:absolute;top:14px;right:16px;font-size:9px;font-weight:800;letter-spacing:.08em;color:#B07A1A;text-transform:uppercase}
.rpt-owned{display:flex;gap:16px;align-items:flex-start;background:#fff;border:0.5px solid rgba(14,95,76,.1);border-radius:var(--radius-md);padding:20px 24px}
.rpt-owned .bd{display:inline-block;font-size:11px;font-weight:800;padding:4px 12px;border-radius:999px;letter-spacing:.04em}
.rpt-owned .bd.strong{background:#E6F4EE;color:#0E7A57}
.rpt-owned .bd.weak{background:#FBEAE6;color:#B23B2B}
.rpt-owned h4{font-size:15px;margin-bottom:4px}
.rpt-owned p{font-size:13.5px;color:var(--gray);line-height:1.7;margin:0}
.rpt-tier{border:0.5px solid rgba(14,95,76,.1);border-radius:var(--radius-md);overflow:hidden;background:#fff}
.rpt-tier .h{color:#fff;font-size:13px;font-weight:700;padding:10px 14px;letter-spacing:.02em}
.rpt-tier .b{display:flex;align-items:baseline;gap:8px;padding:15px 14px 6px}
.rpt-tier .share{font-size:26px;font-weight:800;color:var(--ink);letter-spacing:-.8px}
.rpt-tier .sub{font-size:11.5px;color:var(--gray)}
.rpt-tier .note{font-size:12px;color:var(--gray);line-height:1.6;padding:0 14px 15px}
.rpt-gated{position:relative;border-radius:var(--radius-lg);overflow:hidden;margin-top:24px;background:#fff;border:0.5px solid rgba(14,95,76,.1)}
.rpt-gated .blur{pointer-events:none;user-select:none;filter:blur(6px);opacity:.45;transform:scale(1.02);min-height:180px}
.rpt-gated .mask{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:9px;padding:28px 24px;background:linear-gradient(180deg,rgba(255,255,255,.66),rgba(255,255,255,.9));backdrop-filter:blur(2px)}
.rpt-gated .mask .ic{font-size:30px;line-height:1}
.rpt-gated .mask h3{font-size:19px;letter-spacing:-.3px;margin:0;color:var(--ink)}
.rpt-gated .mask p{font-size:13.5px;line-height:1.7;color:var(--gray);max-width:46ch;margin:0}
.rpt-gated .mask .cta{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin-top:4px}
/* ---- 三层状态重设计：权限条 / LOCKED REAL DATA / FEATURE PREVIEW / upsell ---- */
.rpt-perm{display:flex;align-items:center;gap:14px;flex-wrap:wrap;background:var(--paper);border:0.5px solid rgba(14,95,76,.14);border-radius:var(--radius-md);padding:13px 18px;margin:18px 0 4px}
.rpt-perm .pt{flex:1;min-width:200px}
.rpt-perm .pt-t{display:flex;justify-content:space-between;align-items:baseline;gap:10px;font-size:12.5px;margin-bottom:8px}
.rpt-perm .pt-t b{color:var(--ink);font-weight:700}
.rpt-perm .pt-t span{color:var(--gray)}
.rpt-perm .pt-bar{display:flex;height:7px;border-radius:99px;overflow:hidden;background:var(--mist)}
.rpt-perm .pt-bar i{display:block;height:100%}
.rpt-perm .pt-bar .s1{background:#BFD9D0}
.rpt-perm .pt-bar .s2{background:#5E9C8C}
.rpt-perm .pt-bar .s3{background:var(--pine)}
.rpt-perm .pt-stages{display:flex;gap:6px;flex-wrap:wrap;font-size:11px;color:var(--gray);margin-top:7px}
.rpt-perm .pt-stages em{font-style:normal;background:#fff;border:0.5px solid rgba(14,95,76,.15);border-radius:99px;padding:2px 9px}
.rpt-perm .pt-stages em.on{color:var(--pine);border-color:var(--pine);font-weight:700}
.rpt-perm .pt-cta{white-space:nowrap;font-size:13.5px;font-weight:700}
/* LOCKED REAL DATA：数字遮罩行 + 字段名 + 1 行真实结论，不放假数字 */
.rpt-lock{background:#fff;border:0.5px solid rgba(14,95,76,.1);border-radius:var(--radius-lg);margin-top:24px;overflow:hidden}
.rpt-lock .lk-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 22px;border-bottom:1px dashed rgba(14,95,76,.16);background:#FBFCFC}
.rpt-lock .lk-head h3{font-size:16.5px;letter-spacing:-.3px;margin:0;display:flex;align-items:center;gap:9px;color:var(--ink)}
.rpt-lock .lk-badge{font-family:var(--mono);font-size:10px;font-weight:700;letter-spacing:.14em;color:#8A6516;background:#FFF6E3;border:0.5px solid #EDD9A8;border-radius:5px;padding:3px 8px;white-space:nowrap}
.rpt-lock .lk-rows{padding:6px 22px 4px}
.rpt-lock .lk-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 0;border-bottom:1px solid var(--mist);font-size:13.5px}
.rpt-lock .lk-row:last-child{border-bottom:none}
.rpt-lock .lk-row .f{color:#34564c;font-weight:600}
.rpt-lock .lk-row .f small{display:block;font-weight:400;color:var(--gray);font-size:11.5px;margin-top:2px}
.rpt-lock .lk-row .v{font-family:var(--mono);font-size:15px;font-weight:700;color:#9AA8A2;letter-spacing:.08em;white-space:nowrap}
.rpt-lock .lk-note{display:flex;align-items:flex-start;gap:9px;margin:10px 22px 0;padding:12px 15px;background:var(--paper);border-radius:var(--radius-sm);font-size:13px;line-height:1.65;color:#34564c}
.rpt-lock .lk-note b{color:var(--ink)}
.rpt-lock .lk-cta{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:15px 22px 18px}
.rpt-lock .lk-cta p{font-size:13px;color:var(--gray);line-height:1.6;margin:0}
/* FEATURE PREVIEW：功能示例，浅灰虚线框 + DEMO 角标 */
.rpt-demo .rpt-sec-h h2::after{content:"FEATURE PREVIEW";font-family:var(--mono);font-size:9.5px;font-weight:700;letter-spacing:.14em;color:#8A94A6;background:#F1F3F4;border:0.5px dashed #C4CBCF;border-radius:5px;padding:3px 8px;margin-left:11px;vertical-align:2px}
.rpt-demo .rpt-sec-d::before{content:"以下为功能示例（Demo）——基于你本次检测的 Baseline 展示未来复测后的呈现方式，非真实复测结果。";display:block;font-size:12.5px;color:#8A6516;background:#FFFBF3;border:0.5px solid #F3E2C4;border-radius:var(--radius-sm);padding:9px 13px;margin-bottom:12px;line-height:1.65}
.rpt-demo .rpt-card,.rpt-demo .rpt-impact{border-style:dashed;border-color:#C9D4CF;background:#FCFDFD}
.rpt-demo .rpt-impact .c .n{text-shadow:none}
.rpt-demo .rpt-ogap .rpt-og{border-style:dashed;border-color:#C9D4CF;background:#FCFDFD}
/* 「你的完整报告还包含」6 卡 */
.rpt-include{background:var(--mint);border-radius:var(--radius-xl);padding:30px 32px;margin-top:34px}
.rpt-include h3{font-size:19px;letter-spacing:-.4px;margin:0 0 6px}
.rpt-include>p{font-size:13.5px;color:#34564c;line-height:1.7;margin:0 0 18px;max-width:70ch}
.rpt-include .ig{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}
.rpt-include .ic{background:#fff;border:0.5px solid rgba(14,95,76,.12);border-radius:var(--radius-md);padding:15px 17px}
.rpt-include .ic .t{font-size:14px;font-weight:700;color:var(--ink);margin-bottom:5px;display:flex;align-items:center;gap:7px}
.rpt-include .ic .t .lk{color:#8A94A6;font-size:12px}
.rpt-include .ic p{font-size:12.5px;color:var(--gray);line-height:1.65;margin:0}
.rpt-include .btns{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}
.rpt-impact{background:#fff;border:0.5px solid rgba(14,95,76,.1);border-radius:var(--radius-lg);padding:28px 30px}
.rpt-impact .flow{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:24px}
.rpt-impact .flow span{font-size:12px;font-weight:700;color:var(--pine);background:var(--mint);padding:7px 14px;border-radius:999px}
.rpt-impact .flow i{color:var(--mist);font-style:normal;font-weight:700}
.rpt-impact .chart{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:18px}
.rpt-impact .c{border:0.5px solid rgba(14,95,76,.1);border-radius:var(--radius-md);padding:18px 20px;text-align:center}
.rpt-impact .c .n{font-family:var(--disp);font-size:32px;font-weight:800;color:var(--pine);letter-spacing:-1px}
.rpt-impact .c .l{font-size:12px;color:var(--gray);margin-top:6px}
.rpt-impact .c.up .n{color:var(--pine)}
.rpt-impact .c.down .n{color:var(--rust)}
.rpt-impact .assoc{font-size:13px;color:var(--gray);line-height:1.75;margin-top:20px;padding:16px;background:var(--paper);border-radius:var(--radius-md)}
.rpt-impact .assoc b{color:var(--ink)}
.rpt-honest{background:#FFFBF3;border:0.5px solid #F3E2C4;border-radius:var(--radius-md);padding:14px 18px;font-size:13px;line-height:1.75;color:#6B5426;margin-top:16px}
.rpt-honest b{color:#8A6516}
.rpt-cta{background:var(--mint);border-radius:var(--radius-xl);padding:32px 34px;margin-top:34px}
.rpt-cta h3{font-size:21px;margin:0 0 10px;letter-spacing:-.4px}
.rpt-cta p{font-size:14.5px;color:#34564c;line-height:1.75;margin:0 0 18px;max-width:64ch}
.rpt-cta.dark{background:linear-gradient(155deg,#0B4A3B,#14755E);color:#fff}
.rpt-cta.dark p{color:rgba(255,255,255,.82)}
.rpt-cta.dark .btn{background:#fff;color:var(--pine)}
.rpt-cta.dark .btn.ghost{border-color:rgba(255,255,255,.4);color:#fff}
.rpt-cta .btns{display:flex;gap:12px;flex-wrap:wrap}
@media(max-width:820px){
  .rpt-cover{padding:26px 24px}
  .rpt-score{text-align:left;width:100%}
  .rpt-score .n{font-size:56px}
  .rpt-kpi{grid-template-columns:1fr 1fr}
  .rpt-card{padding:20px 18px}
  .rpt-eng{flex-direction:column;align-items:flex-start;gap:6px}
  .rpt-ogap{grid-template-columns:1fr}
  .rpt-impact .flow{justify-content:center}
}

/* ═══ Navigation mega dropdowns (product / industry / research) ═══ */
.nav-mega{position:static}
.nav-mega-menu{display:none;position:absolute;left:24px;right:24px;top:100%;max-width:1160px;margin:0 auto;background:rgba(255,255,255,.98);backdrop-filter:blur(20px);border:0.5px solid rgba(14,95,76,.1);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:24px;z-index:100}
.nav-mega:hover .nav-mega-menu{display:block}
.nav-mega-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}
.nav-mega-grid a{display:block;padding:12px 14px;border-radius:var(--radius-sm);text-decoration:none;color:var(--ink);transition:background .15s}
.nav-mega-grid a:hover{background:var(--mint)}
.nav-mega-grid a .t{font-size:14px;font-weight:700;margin-bottom:3px}
.nav-mega-grid a .d{font-size:12px;color:var(--gray);line-height:1.5}
.nav-mega-menu .more{display:block;margin-top:12px;padding-top:12px;border-top:1px solid var(--mist);font-size:13px;font-weight:700;color:var(--pine);text-decoration:none}
.nav-right{display:flex;align-items:center;gap:14px}
.nav-right .btn{padding:8px 16px;font-size:13px}
@media(max-width:900px){
  .nav-mega-menu{left:12px;right:12px;padding:16px}
  .nav-mega-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
  .nav-mega-menu{display:none!important}
  .nav-right .btn span{display:none}
}

/* ═══ PHASE 1 · AI 推荐原始证据三模块（Raw Answer / Perception / Brand Health） ═══ */
.dmod-wrap{margin-top:8px}
.dmod-head{margin:0 0 6px}
.dmod-title{font-size:21px;letter-spacing:-.01em;color:var(--ink);margin:18px 0 6px}
.dmod-dm{font-size:12px;color:var(--gray);background:var(--paper);border:0.5px solid var(--mist);border-radius:999px;padding:6px 13px;display:inline-block;margin:0 0 4px}
.dmod-loading,.dmod-err{font-size:13.5px;color:var(--gray);padding:18px 20px;background:#fff;border:0.5px solid rgba(14,95,76,.1);border-radius:var(--radius-lg)}
.dmod-err{color:#B23B2B}
.dmod-muted{color:var(--gray);font-size:12.5px}

/* Raw Answer Explorer */
.dmod-toolbar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:12px 0 14px;font-size:13px;color:var(--gray)}
.dmod-tb-l{display:inline-flex;align-items:center;gap:6px}
.dmod-tb-l select{padding:7px 10px;border:0.5px solid rgba(14,95,76,.18);border-radius:var(--radius-sm);font-family:inherit;font-size:13px;background:#fff;color:var(--ink)}
.dmod-tb-c{margin-left:auto;font-weight:600;color:var(--pine)}
.dmod-raw-list{display:flex;flex-direction:column;gap:8px}
.dmod-raw-item{border:0.5px solid rgba(14,95,76,.12);border-radius:var(--radius-md);background:#fff;overflow:hidden}
.dmod-raw-h{width:100%;display:flex;align-items:center;gap:10px;padding:12px 14px;background:none;border:none;cursor:pointer;font-family:inherit;text-align:left}
.dmod-eng{font-size:11px;font-weight:700;color:var(--pine);background:var(--mint);padding:3px 9px;border-radius:999px;white-space:nowrap}
.dmod-int{font-size:13.5px;font-weight:600;color:var(--ink);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dmod-badge{font-size:11.5px;font-weight:700;padding:3px 10px;border-radius:999px;white-space:nowrap}
.dmod-badge.m{color:#0E7A57;background:#E6F4EE}
.dmod-badge.nm{color:#B23B2B;background:#FBEAE6}
.dmod-sim{font-size:10px;font-weight:700;color:#9a6b00;background:#fff4d6;padding:2px 7px;border-radius:999px;white-space:nowrap}
.dmod-caret{color:var(--gray);transition:transform .2s;font-size:13px}
.dmod-raw-item.open .dmod-caret{transform:rotate(180deg)}
.dmod-raw-body{display:none;padding:0 14px 14px;border-top:1px solid var(--mist)}
.dmod-raw-item.open .dmod-raw-body{display:block}
.dmod-q{font-size:13.5px;color:var(--ink);margin:12px 0 8px}
.dmod-ans{max-height:220px;overflow:auto;font-size:13px;line-height:1.75;color:#33403c;background:var(--paper);border-radius:var(--radius-sm);padding:12px 14px;white-space:pre-wrap}
.dmod-raw-meta{margin-top:12px;display:flex;flex-direction:column;gap:8px}
.dmod-rm-row{display:grid;grid-template-columns:78px 1fr;gap:10px;align-items:start}
.dmod-rm-k{font-size:12px;font-weight:700;color:var(--gray);padding-top:3px}
.dmod-rm-v{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.dmod-chip{font-size:12px;background:var(--paper);border:0.5px solid var(--mist);border-radius:999px;padding:3px 10px;color:var(--ink)}
.dmod-cite{font-size:12px;color:var(--pine);text-decoration:none;background:#E6F4EE;border-radius:999px;padding:3px 10px}
.dmod-cite:hover{text-decoration:underline}
.dmod-cite.ro{color:var(--gray);background:var(--paper);border:0.5px solid var(--mist)}
.dmod-acc{font-size:12px;font-weight:700;padding:3px 10px;border-radius:999px}
.dmod-acc.ok{color:#0E7A57;background:#E6F4EE}
.dmod-acc.bad{color:#B23B2B;background:#FBEAE6}

/* AI Perception */
.dmod-grid3{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;margin-top:12px}
.dmod-card{background:#fff;border:0.5px solid rgba(14,95,76,.1);border-radius:var(--radius-lg);padding:18px 20px}
.dmod-card-h{font-size:14px;font-weight:700;color:var(--ink);margin-bottom:12px}
.dmod-card.ok{border-color:rgba(14,122,87,.35)}
.dmod-card.warn{border-color:rgba(178,59,43,.3)}
.dmod-pr-row{margin-bottom:11px}
.dmod-pr-top{display:flex;justify-content:space-between;align-items:baseline;font-size:12.5px;margin-bottom:5px}
.dmod-pr-l{color:var(--ink);font-weight:600}
.dmod-pr-en{font-style:normal;font-size:10.5px;color:var(--gray);margin-left:5px}
.dmod-pr-v{font-weight:800;font-family:var(--disp)}
.dmod-bar{height:7px;background:var(--mist);border-radius:99px;overflow:hidden}
.dmod-bar i{display:block;height:100%;border-radius:99px}
.dmod-cons-sum{font-size:13px;color:var(--ink);margin-bottom:12px;line-height:1.7}
.dmod-cons-sum b{font-weight:800}
.dmod-card-note{font-size:11.5px;color:var(--gray);line-height:1.6;margin-top:10px}
.dmod-mc-alert{font-size:13px;font-weight:700;color:#B23B2B;margin-bottom:10px}
.dmod-mc-list{margin:0;padding-left:18px}
.dmod-mc-list li{font-size:12.5px;color:var(--ink);margin-bottom:9px;line-height:1.6}
.dmod-mc-note{color:var(--gray);font-size:11.5px}
.dmod-mc-good{font-size:13px;color:#0E7A57;font-weight:600;line-height:1.7}

/* Dashboard 4 层 */
.dmod-bh-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin-top:12px}
.dmod-bh-card{background:#fff;border:0.5px solid rgba(14,95,76,.1);border-top:3px solid var(--pine);border-radius:var(--radius-lg);padding:18px 20px}
.dmod-bh-top{display:flex;gap:14px;align-items:center;margin-bottom:14px}
.dmod-bh-score{font-size:40px;font-weight:800;font-family:var(--disp);line-height:1}
.dmod-bh-t{flex:1}
.dmod-bh-l{font-size:15px;font-weight:700;color:var(--ink)}
.dmod-bh-zh{font-size:12.5px;color:var(--gray);font-weight:500;margin-left:4px}
.dmod-bh-d{font-size:11.5px;color:var(--gray);margin:3px 0}
.dmod-bh-band{font-size:11px;font-weight:700;letter-spacing:.03em}
.dmod-bh-metrics{display:flex;flex-direction:column;gap:6px;border-top:1px solid var(--mist);padding-top:12px}
.dmod-bh-m{display:flex;justify-content:space-between;align-items:center;font-size:12.5px;color:var(--gray)}
.dmod-bh-m b{font-weight:800;font-family:var(--disp)}
@media(max-width:760px){
  .dmod-grid3,.dmod-bh-grid{grid-template-columns:1fr}
  .dmod-tb-c{margin-left:0;width:100%}
}

/* ── PHASE 2 · Evidence Graph + Source Intelligence ── */
.evg-stage{background:#fff;border:0.5px solid rgba(14,95,76,.1);border-radius:var(--radius-lg);padding:18px 16px;margin-top:6px;overflow-x:auto}
.evg-svg{width:100%;height:auto;display:block;min-width:520px}
.evg-el{fill:var(--ink);font-size:12.5px;font-weight:700;font-family:inherit}
.evg-sl{fill:var(--ink);font-size:12px;font-weight:600;font-family:inherit}
.evg-legend{display:flex;flex-wrap:wrap;gap:14px;margin-top:14px;font-size:12px;color:var(--gray)}
.evg-legend span{display:inline-flex;align-items:center;gap:6px}
.evg-dot{width:11px;height:11px;border-radius:50%;display:inline-block}
.evg-line{width:20px;height:3px;border-radius:2px;display:inline-block}
.evg-line.dash{background:repeating-linear-gradient(90deg,#B9A06B 0 4px,transparent 4px 7px)}
.evg-ring{width:13px;height:13px;border-radius:50%;border:2px solid var(--pine);display:inline-block}
.evg-note{font-size:12.5px;color:var(--gray);line-height:1.7;margin:12px 0 0;max-width:72ch}
.evg-stat-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px;margin:14px 0 12px}
.evg-stat{background:var(--mint);border:0.5px solid rgba(14,95,76,.12);border-radius:var(--radius-sm);padding:12px 14px;text-align:center}
.evg-stat b{display:block;font-family:var(--disp);font-size:26px;font-weight:800;color:var(--pine);letter-spacing:-1px;line-height:1}
.evg-stat span{font-size:12px;color:var(--gray)}
.evg-sum{font-size:13.5px;color:var(--ink);line-height:1.7;background:#F6FAF8;border:0.5px solid rgba(14,95,76,.1);border-radius:var(--radius-sm);padding:11px 14px;margin-bottom:14px}
.evg-tbl-wrap{overflow-x:auto;border:0.5px solid rgba(14,95,76,.1);border-radius:var(--radius-lg)}
.evg-tbl{width:100%;border-collapse:collapse;font-size:13px;min-width:560px}
.evg-tbl thead th{background:var(--pine);color:#fff;font-weight:700;font-size:12px;text-align:left;padding:10px 12px;white-space:nowrap}
.evg-tbl tbody td{padding:10px 12px;border-top:0.5px solid var(--mist);color:var(--ink);vertical-align:middle}
.evg-tbl tbody tr:nth-child(even){background:#FBFDFC}
.evg-rk{font-weight:800;color:var(--pine);font-family:var(--disp);width:30px}
.evg-dom b{font-weight:700}
.evg-dom-sub{font-size:11px;color:var(--gray);margin-top:2px}
.evg-cit{font-weight:800;font-family:var(--disp);color:var(--ink)}
.evg-cit-sub{font-size:11px;color:var(--gray);font-weight:400;font-family:inherit;margin-left:2px}
.evg-eng{color:var(--gray);font-size:12px}
.evg-ctrl{display:inline-block;font-size:11.5px;font-weight:700;padding:3px 9px;border-radius:999px;white-space:nowrap}
.evg-ctrl.own{background:#E3F5EC;color:#0E7A57;border:0.5px solid #BFE6D2}
.evg-ctrl.inf{background:#E6F0F8;color:#2C7FB8;border:0.5px solid #C3DCF0}
.evg-ctrl.tp{background:#FBF1E0;color:#B07A1A;border:0.5px solid #EED9B4}
.evg-tier{display:inline-block;font-size:11px;font-weight:800;padding:3px 9px;border-radius:6px;white-space:nowrap}
.evg-tier.a{background:#0E7A57;color:#fff}
.evg-tier.d{background:#EFE7D6;color:#8A6516;border:0.5px solid #E0CEA8}
.evg-inf{display:inline-block;width:88px;height:8px;background:#EDF3F0;border-radius:99px;overflow:hidden;vertical-align:middle;margin-right:7px}
.evg-inf i{display:block;height:100%;background:linear-gradient(90deg,#0E5F4C,#2C7FB8);border-radius:99px}
.evg-inf-v{font-weight:800;font-family:var(--disp);font-size:13px;color:var(--ink)}

/* ── Competitive Gap 模块 ── */
.cg-sum{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:14px 0 16px}
.cg-s{background:#F6FAF8;border:0.5px solid rgba(14,95,76,.12);border-radius:var(--radius-sm);padding:12px 14px;text-align:center}
.cg-s b{display:block;font-family:var(--disp);font-size:24px;font-weight:800;color:var(--pine);line-height:1}
.cg-s.neg b{color:#B23B2B}
.cg-s.pos b{color:#0E7A57}
.cg-s.warn b{color:#B07A1A}
.cg-s span{font-size:12px;color:var(--gray);margin-top:3px;display:block}
.cg-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:14px}
.cg-card{background:#fff;border:0.5px solid rgba(14,95,76,.1);border-radius:var(--radius-lg);padding:13px 15px}
.cg-card-h{font-size:14px;font-weight:800;color:var(--pine);margin-bottom:11px;padding-left:10px;border-left:4px solid var(--pine)}
.cg-card-note{font-size:12px;color:var(--gray);line-height:1.6;margin-top:10px}
.cg-rank{display:flex;align-items:center;gap:10px;padding:7px 0;border-top:0.5px solid var(--mist)}
.cg-rank:first-child{border-top:none}
.cg-rk{width:22px;height:22px;border-radius:50%;background:var(--mist);color:var(--ink);font-weight:800;font-size:12px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;font-family:var(--disp)}
.cg-rank.you .cg-rk{background:var(--pine);color:#fff}
.cg-nm{flex:0 0 auto;min-width:120px;max-width:42%;font-weight:600;font-size:13.5px;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cg-rank.you .cg-nm{color:var(--pine);font-weight:800}
.cg-nm i{font-style:normal;font-size:11px;color:var(--gray);margin-left:3px}
.cg-bar{flex:1;height:12px;background:#EDF3F0;border-radius:99px;overflow:hidden}
.cg-bar i{display:block;height:100%;background:linear-gradient(90deg,#2C7FB8,#0E5F4C);border-radius:99px}
.cg-rank.you .cg-bar i{background:linear-gradient(90deg,#0E7A57,#0E5F4C)}
.cg-sov{font-weight:800;font-family:var(--disp);font-size:14px;color:var(--ink);flex-shrink:0;width:48px;text-align:right}
.cg-tbl-wrap{overflow-x:auto;border:0.5px solid rgba(14,95,76,.1);border-radius:var(--radius-lg)}
.cg-tbl{width:100%;border-collapse:collapse;font-size:13px;min-width:520px}
.cg-tbl thead th{background:var(--pine);color:#fff;font-weight:700;font-size:12px;text-align:left;padding:10px 12px;white-space:nowrap}
.cg-tbl tbody td{padding:9px 12px;border-top:0.5px solid var(--mist);color:var(--ink);vertical-align:middle}
.cg-tbl tbody tr:nth-child(even){background:#FBFDFC}
.cg-int{font-weight:600}
.cg-ld{color:var(--gray);font-size:12.5px}
.cg-gap{text-align:right;font-weight:800;font-family:var(--disp);color:#B23B2B}
.cg-st{display:inline-block;font-size:11.5px;font-weight:800;padding:3px 10px;border-radius:999px;white-space:nowrap}
.cg-st.lead{background:#E3F5EC;color:#0E7A57}
.cg-st.avg{background:#E6F0F8;color:#2C7FB8}
.cg-st.behind{background:#FBF1E0;color:#B07A1A}
.cg-st.gap{background:#FBE6E2;color:#B23B2B}
.cg-dims-wrap{background:#fff;border:0.5px solid rgba(14,95,76,.1);border-radius:var(--radius-lg);padding:13px 15px;margin-top:14px}
.cg-dim{margin:9px 0}
.cg-dim-top{display:flex;justify-content:space-between;align-items:baseline;font-size:13px}
.cg-dim-l{font-weight:600;color:var(--ink)}
.cg-dim-l i{font-style:normal;font-size:11px;color:var(--gray);margin-left:5px}
.cg-dim-v{font-weight:800;font-family:var(--disp);font-size:15px}
.cg-dim-v .cg-base{font-style:normal;font-weight:400;font-family:inherit;font-size:11px;color:var(--gray);margin-left:4px}
.cg-dim-bar{position:relative;height:10px;background:#EDF3F0;border-radius:99px;overflow:hidden;margin-top:4px}
.cg-dim-bar .cg-base-mark{position:absolute;top:-2px;bottom:-2px;width:2px;background:#B23B2B;z-index:2}
.cg-dim-bar .cg-fill{display:block;height:100%;border-radius:99px}
.cg-dim.exposed .cg-dim-l{color:#B23B2B}
.cg-dim-note{font-size:11px;color:#B23B2B;margin-top:2px;font-weight:600}
.cg-caveat{font-size:12px;color:var(--gray);line-height:1.7;margin-top:14px;background:#F6FAF8;border:0.5px solid rgba(14,95,76,.1);border-radius:var(--radius-sm);padding:10px 13px}

/* ── PDF 导出按钮（注入到 .dmod-head） ── */
.geo-pdf-btn{margin-left:auto;align-self:center;background:#0E5F4C;color:#fff;border:none;border-radius:9px;padding:9px 16px;font-size:13.5px;font-weight:700;cursor:pointer;white-space:nowrap;font-family:inherit;letter-spacing:.3px}
.geo-pdf-btn:hover{background:#0E7A57}
.geo-pdf-btn:disabled{opacity:.6;cursor:wait}
.dmod-head{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center}

/* ── 单页 PDF 报告（light theme，独立于站点暗色，html2canvas 直接截图） ── */
.geo-report{width:794px;box-sizing:border-box;background:#ffffff;color:#1a1a1a;font-family:-apple-system,"PingFang SC","Microsoft YaHei",Segoe UI,Roboto,sans-serif;padding:30px 34px;font-size:13px;line-height:1.5}
.geo-report *{box-sizing:border-box}
.gr-head{display:flex;align-items:baseline;justify-content:space-between;border-bottom:3px solid #0E5F4C;padding-bottom:10px}
.gr-brand{font-family:"Georgia",serif;font-weight:800;font-size:24px;letter-spacing:1px;color:#0E5F4C}
.gr-brand-sub{font-size:11px;color:#5a6b66;letter-spacing:1.5px;text-transform:uppercase;margin-top:2px}
.gr-date{font-size:12px;color:#8a9490}
.gr-title-row{display:flex;align-items:center;justify-content:space-between;margin-top:16px;gap:12px}
.gr-title{font-size:26px;font-weight:800;color:#10211c;letter-spacing:-.5px}
.gr-mode{font-size:11px;font-weight:700;padding:5px 11px;border-radius:999px;white-space:nowrap}
.gr-mode.live{background:#E3F5EC;color:#0E7A57;border:1px solid #BFE6D2}
.gr-mode.mixed{background:#E6F0F8;color:#2C7FB8;border:1px solid #C3DCF0}
.gr-mode.beta{background:#FBF1E0;color:#B07A1A;border:1px solid #EED9B4}
.gr-sub{font-size:12.5px;color:#5a6b66;margin-top:5px}
.gr-kpis{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin:16px 0 18px}
.gr-kpi{background:#F6FAF8;border:1px solid #E3EDE9;border-radius:10px;padding:12px 8px;text-align:center}
.gr-kpi-sc{font-family:"Georgia",serif;font-size:30px;font-weight:800;line-height:1}
.gr-kpi-cap{font-size:11.5px;color:#33433d;margin-top:5px}
.gr-kpi-cap span{display:block;color:#8a9490;font-size:10px;margin-top:1px}
.gr-kpi-band{font-size:11px;font-weight:700;margin-top:4px}
.gr-kpi-total{background:#0E5F4C;border-color:#0E5F4C}
.gr-kpi-total .gr-kpi-sc{color:#fff}
.gr-kpi-total .gr-kpi-cap{color:#cfe6dd}
.gr-kpi-total .gr-kpi-cap span{color:#a9cfc3}
.gr-kpi-total .gr-kpi-band{color:#cfe6dd}
.gr-sec{border:1px solid #E3EDE9;border-radius:12px;padding:14px 16px;margin:14px 0}
.gr-sec-h{font-size:14px;font-weight:800;color:#0E5F4C;margin-bottom:10px;padding-left:10px;border-left:4px solid #0E5F4C}
.gr-perc{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.gr-bar{margin-bottom:4px}
.gr-bar-l{font-size:12px;color:#33433d;display:block;margin-bottom:3px}
.gr-bar-v{font-weight:800;font-size:14px;float:right}
.gr-bar-track{display:block;height:7px;background:#EDF3F0;border-radius:99px;overflow:hidden;margin-top:3px}
.gr-bar-track b{display:block;height:100%;border-radius:99px}
.gr-perc-foot{font-size:12px;color:#5a6b66;margin-top:10px;clear:both}
.gr-perc-foot b{font-weight:800}
.gr-evg svg{display:block;margin:0 auto;max-height:240px}
.gr-evg-note{font-size:11px;color:#8a9490;line-height:1.6;margin-top:8px}
.gr-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:10px}
.gr-stats div{background:#F6FAF8;border:1px solid #E3EDE9;border-radius:9px;padding:9px;text-align:center}
.gr-stats b{display:block;font-family:"Georgia",serif;font-size:22px;font-weight:800;color:#0E5F4C;line-height:1}
.gr-stats span{font-size:11px;color:#8a9490}
.gr-sum{font-size:12.5px;color:#33433d;line-height:1.6;background:#F6FAF8;border:1px solid #E3EDE9;border-radius:8px;padding:9px 12px;margin-bottom:10px}
.gr-tbl{width:100%;border-collapse:collapse;font-size:12px}
.gr-tbl thead th{background:#0E5F4C;color:#fff;font-weight:700;font-size:11px;text-align:left;padding:8px 10px}
.gr-tbl tbody td{padding:8px 10px;border-top:1px solid #EDF3F0;color:#1a1a1a;vertical-align:middle}
.gr-tbl tbody tr:nth-child(even){background:#FBFDFC}
.gr-sub{font-size:10.5px;color:#8a9490;margin-top:2px}
.gr-tag{display:inline-block;font-size:10.5px;font-weight:700;padding:2px 8px;border-radius:6px;white-space:nowrap}
.gr-tag.own{background:#E3F5EC;color:#0E7A57}
.gr-tag.inf{background:#E6F0F8;color:#2C7FB8}
.gr-tag.tp{background:#FBF1E0;color:#B07A1A}
.gr-tag.a{background:#0E7A57;color:#fff}
.gr-tag.d{background:#EFE7D6;color:#8A6516}
.gr-muted{font-size:12px;color:#8a9490}
.gr-foot{font-size:10.5px;color:#8a9490;line-height:1.6;margin-top:16px;padding-top:10px;border-top:1px solid #E3EDE9}

/* ── Competitive Gap · PDF ── */
.gr-cg-d{font-size:12px;color:#5a6b66;line-height:1.7;margin:0 0 12px}
.gr-cg-sum{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:12px}
.gr-cg-sum div{background:#F6FAF8;border:1px solid #E3EDE9;border-radius:9px;padding:9px;text-align:center}
.gr-cg-sum b{display:block;font-family:"Georgia",serif;font-size:22px;font-weight:800;color:#0E5F4C;line-height:1}
.gr-cg-sum span{font-size:11px;color:#8a9490}
.gr-cg-sub{font-size:12.5px;font-weight:800;color:#0E5F4C;margin:12px 0 7px}
.gr-cg-rank{display:flex;align-items:center;gap:8px;padding:5px 0;border-top:1px solid #EDF3F0}
.gr-cg-rank:first-child{border-top:none}
.gr-cg-rk{width:20px;height:20px;border-radius:50%;background:#EDF3F0;color:#1a1a1a;font-weight:800;font-size:11px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.gr-cg-rank.you .gr-cg-rk{background:#0E5F4C;color:#fff}
.gr-cg-nm{flex:1;font-size:12.5px;color:#1a1a1a;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gr-cg-rank.you .gr-cg-nm{color:#0E5F4C;font-weight:800}
.gr-cg-nm i{font-style:normal;font-size:10.5px;color:#8a9490;margin-left:3px}
.gr-cg-bar{flex:2;height:9px;background:#EDF3F0;border-radius:99px;overflow:hidden;position:relative}
.gr-cg-bar i{display:block;height:100%;background:linear-gradient(90deg,#2C7FB8,#0E5F4C);border-radius:99px}
.gr-cg-rank.you .gr-cg-bar i{background:#0E5F4C}
.gr-cg-bar.sm{flex:1.5}
.gr-cg-sov{font-weight:800;font-size:13px;color:#1a1a1a;width:44px;text-align:right;flex-shrink:0}
.gr-cg-st{display:inline-block;font-size:10.5px;font-weight:700;padding:2px 8px;border-radius:999px;white-space:nowrap}
.gr-cg-st.lead{background:#E3F5EC;color:#0E7A57}
.gr-cg-st.avg{background:#E6F0F8;color:#2C7FB8}
.gr-cg-st.behind{background:#FBF1E0;color:#B07A1A}
.gr-cg-st.gap{background:#FBE6E2;color:#B23B2B}
.gr-cg-dim{display:flex;align-items:center;gap:8px;margin:6px 0}
.gr-cg-dl{flex:0 0 130px;font-size:12px;color:#1a1a1a;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gr-cg-dim.exposed .gr-cg-dl{color:#B23B2B}
.gr-cg-mark{position:absolute;top:-2px;bottom:-2px;width:2px;background:#B23B2B;z-index:2}
.gr-cg-dv{width:30px;text-align:right;font-weight:800;font-size:13px;flex-shrink:0}
.gr-cg-caveat{font-size:10.5px;color:#8a9490;line-height:1.6;margin-top:12px;padding-top:9px;border-top:1px solid #E3EDE9}

