/* ============================================================
   BeVision Studio · Consumer Insight Report · Shared Stylesheet
   所有行业/品牌报告共用。配色由各页面 <style> 内 :root 覆盖。
   默认主题 = 品牌红 #B22222
   ============================================================ */
:root{
  --red:#B22222;--red-dark:#8B0000;--red-light:#FDECEC;
  --ink:#111111;--ink-2:#3A3A3A;--ink-3:#7A7A7A;--ink-4:#B8B8B8;
  --line:#EEEEEE;--line-2:#DDDDDD;--bg:#FAFAFA;--bg-2:#F4F4F4;--white:#FFFFFF;
  --good:#166534;--bad:#B91C1C;--warn:#B45309;--alpine:#4A5D6C;
}
*{box-sizing:border-box;margin:0;padding:0;}
html,body{background:var(--white);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,'PingFang SC','Hiragino Sans GB','Microsoft YaHei',sans-serif;font-size:15px;line-height:1.7;-webkit-font-smoothing:antialiased;}

/* ---------- 顶部报告导航（三档切换 · 兼作 hub） ---------- */
.rnav{position:sticky;top:0;z-index:50;background:rgba(17,17,17,.96);backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.1);}
.rnav-inner{max-width:1360px;margin:0 auto;padding:0 6%;display:flex;align-items:center;justify-content:space-between;height:56px;}
.rnav-brand{color:var(--white);font-size:14px;font-weight:700;letter-spacing:.02em;text-decoration:none;display:flex;align-items:center;gap:8px;}
.rnav-brand .dot{width:8px;height:8px;background:var(--red);border-radius:50%;display:inline-block;}
.rnav-tabs{display:flex;gap:4px;}
.rnav-tab{color:#B8B8B8;font-size:13px;font-weight:600;text-decoration:none;padding:8px 16px;border-radius:3px;letter-spacing:.02em;transition:all .15s;white-space:nowrap;}
.rnav-tab:hover{color:var(--white);background:rgba(255,255,255,.08);}
.rnav-tab.active{color:var(--white);background:var(--red);}
@media (max-width:700px){.rnav-inner{height:auto;padding:10px 5%;flex-direction:column;gap:8px;align-items:flex-start;}.rnav-tabs{width:100%;overflow-x:auto;}}

/* ---------- HERO ---------- */
.hero{background:var(--ink);color:var(--white);padding:80px 6% 100px;position:relative;overflow:hidden;}
.hero::before{content:'';position:absolute;top:-140px;right:-140px;width:500px;height:500px;background:radial-gradient(circle,var(--red) 0%,transparent 70%);opacity:.35;pointer-events:none;}
.hero-tag{display:inline-block;padding:6px 14px;background:var(--red);color:var(--white);font-size:12px;letter-spacing:.15em;font-weight:600;border-radius:2px;margin-bottom:24px;}
.hero-title{font-size:56px;font-weight:800;letter-spacing:-.02em;line-height:1.1;margin-bottom:16px;}
.hero-title .accent{color:var(--red);}
.hero-sub{font-size:18px;color:#B8B8B8;max-width:820px;line-height:1.6;}
.hero-meta{margin-top:44px;display:flex;gap:44px;flex-wrap:wrap;font-size:13px;color:#909090;}
.hero-meta div{display:flex;flex-direction:column;gap:4px;}
.hero-meta strong{color:var(--white);font-weight:600;font-size:15px;letter-spacing:.01em;}

/* 副页 HERO（detail/action 用小一号） */
.hero-sm{padding:56px 6% 64px;}
.hero-sm .hero-title{font-size:40px;}

/* ---------- section ---------- */
.section{padding:80px 6%;max-width:1360px;margin:0 auto;}
.section-alt{background:var(--bg);}
.section-alt-inner{padding:80px 6%;max-width:1360px;margin:0 auto;}
.section-head{margin-bottom:48px;border-left:4px solid var(--red);padding-left:20px;}
.section-eyebrow{color:var(--red);font-size:12px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;margin-bottom:8px;}
.section-title{font-size:36px;font-weight:800;color:var(--ink);letter-spacing:-.02em;line-height:1.2;}
.section-desc{color:var(--ink-3);font-size:15px;margin-top:12px;max-width:900px;line-height:1.7;}

/* ---------- KPI ---------- */
.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.kpi-card{background:var(--white);padding:28px 26px;border-top:3px solid var(--red);box-shadow:0 1px 3px rgba(0,0,0,.06);}
.kpi-num{font-size:38px;font-weight:800;color:var(--ink);letter-spacing:-.02em;line-height:1;}
.kpi-num-red{color:var(--red);}
.kpi-label{color:var(--ink-3);font-size:12px;margin-top:12px;letter-spacing:.02em;}
.kpi-desc{color:var(--ink-2);font-size:12px;margin-top:8px;line-height:1.6;}

/* ---------- table ---------- */
.tbl-wrap{background:var(--white);border:1px solid var(--line);overflow-x:auto;margin-bottom:32px;}
table.rpt{width:100%;border-collapse:collapse;font-size:14px;min-width:640px;}
table.rpt thead th{background:var(--ink);color:var(--white);padding:12px 16px;text-align:left;font-weight:600;font-size:13px;letter-spacing:.02em;}
table.rpt th.num,table.rpt td.num{text-align:right;font-variant-numeric:tabular-nums;}
table.rpt tbody td{padding:11px 16px;border-bottom:1px solid var(--line);color:var(--ink-2);}
table.rpt tbody tr:hover td{background:var(--bg);}
table.rpt tr.hi td{background:var(--red-light) !important;font-weight:600;color:var(--ink);}
table.rpt tr.hi td .brand{color:var(--red);}
.txt-good{color:var(--good);font-weight:600;}
.txt-bad{color:var(--bad);font-weight:600;}
.txt-warn{color:var(--warn);font-weight:600;}
.tbl-h{margin:44px 0 16px;font-size:16px;font-weight:700;color:var(--ink);}
.tbl-note{font-size:12px;color:var(--ink-3);margin-top:-24px;margin-bottom:24px;line-height:1.7;}
.tbl-note b{color:var(--red);}

/* ---------- insight cards ---------- */
.insights{display:grid;gap:28px;}
.insight-card{background:var(--white);border:1px solid var(--line);display:grid;grid-template-columns:260px 1fr;overflow:hidden;}
.insight-card:hover{box-shadow:0 6px 24px rgba(0,0,0,.08);}
.insight-side{background:var(--ink);color:var(--white);padding:32px 28px;display:flex;flex-direction:column;justify-content:space-between;position:relative;}
.insight-num{font-size:80px;font-weight:900;line-height:1;color:var(--red);opacity:.9;font-family:'Georgia',serif;}
.insight-side-tag{display:inline-block;font-size:11px;letter-spacing:.15em;color:var(--red);font-weight:700;margin-bottom:8px;}
.insight-side-title{font-size:20px;font-weight:700;line-height:1.35;color:var(--white);}
.insight-body{padding:32px 36px;}
.insight-h{font-size:16px;font-weight:700;color:var(--ink);margin-bottom:10px;letter-spacing:.01em;line-height:1.5;}
.insight-stats{display:flex;gap:20px;margin:14px 0 18px;font-size:12.5px;color:var(--ink-2);flex-wrap:wrap;}
.insight-stats span{display:inline-flex;align-items:center;}
.insight-stats span::before{content:'●';color:var(--red);margin-right:6px;font-size:8px;}
.insight-means{margin:22px 0 0;padding:16px 20px;background:#FFF6E6;border-left:3px solid #EA9800;}
.insight-means-h{color:#B47100;font-size:11px;font-weight:800;letter-spacing:.18em;margin-bottom:6px;}
.insight-means p{color:var(--ink-2);font-size:13.5px;line-height:1.65;}
.insight-do{margin-top:16px;padding:18px 22px;background:var(--red-light);border-left:3px solid var(--red);}
.insight-do-h{color:var(--red-dark);font-size:11px;font-weight:800;letter-spacing:.18em;margin-bottom:10px;}
.insight-do table{width:100%;font-size:13.5px;line-height:1.6;}
.insight-do table td{padding:5px 0;color:var(--ink-2);vertical-align:top;}
.insight-do table td:first-child{width:100px;color:var(--red-dark);font-weight:700;padding-right:12px;white-space:nowrap;}

/* ---------- quote ---------- */
.quote{border-left:3px solid var(--line-2);padding:6px 16px;margin:6px 0;color:var(--ink-2);font-size:13.5px;line-height:1.65;background:var(--bg);}
.quote .cat{display:inline-block;background:var(--white);border:1px solid var(--line-2);padding:1px 8px;font-size:11px;color:var(--ink-3);margin-right:8px;letter-spacing:.03em;}
.quote em{font-style:normal;color:var(--red-dark);font-weight:600;background:var(--red-light);padding:0 3px;}
.quote-2col{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:8px;}
.quote-col-h{font-size:14px;font-weight:700;color:var(--ink);margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--line);letter-spacing:.02em;}

/* ---------- context cards ---------- */
.ctx-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:32px;}
.ctx-card{background:var(--white);border:1px solid var(--line);padding:32px 28px;}
.ctx-card h4{color:var(--red);font-size:12px;letter-spacing:.15em;font-weight:700;margin-bottom:14px;}
.ctx-card h3{font-size:20px;font-weight:700;color:var(--ink);margin-bottom:16px;line-height:1.35;}
.ctx-card p{color:var(--ink-2);font-size:14px;line-height:1.75;margin-bottom:12px;}
.ctx-card ul{margin:8px 0 0;padding-left:16px;color:var(--ink-2);font-size:13.5px;line-height:1.75;}
.ctx-card ul li{margin-bottom:4px;}
.ctx-card ul li strong{color:var(--red);}

/* ---------- charts ---------- */
.chart-wrap{background:var(--white);border:1px solid var(--line);padding:28px;margin-bottom:24px;}
.chart-title{font-size:15px;font-weight:700;color:var(--ink);margin-bottom:16px;letter-spacing:.02em;}
.chart-note{font-size:12px;color:var(--ink-3);margin-top:8px;line-height:1.6;}
.chart-row{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:24px;}

/* ---------- conclusion / pills ---------- */
.conclusion{background:var(--ink);color:var(--white);padding:80px 6%;}
.conclusion-inner{max-width:1360px;margin:0 auto;}
.conclusion-title{font-size:36px;font-weight:800;color:var(--white);margin-bottom:12px;letter-spacing:-.02em;}
.conclusion-title .accent{color:var(--red);}
.conclusion-sub{color:#B8B8B8;font-size:15px;max-width:800px;margin-bottom:44px;line-height:1.7;}
.pill-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.pill{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.15);padding:26px 24px 28px;}
.pill-tag{color:var(--red);font-size:11px;font-weight:700;letter-spacing:.2em;}
.pill-h{color:var(--white);font-size:19px;font-weight:700;margin:10px 0 14px;line-height:1.35;}
.pill-body{color:#C9C9C9;font-size:13.5px;line-height:1.75;}
.pill-body strong{color:var(--white);}

/* ---------- Q sections ---------- */
.q-section h3.q-h3, .section-alt h3.q-h3{margin:44px 0 18px;font-size:18px;font-weight:800;color:var(--ink);border-left:3px solid var(--red);padding-left:12px;letter-spacing:.01em;}
.q-summary{background:var(--red-light);border-left:4px solid var(--red);padding:20px 28px;margin:24px 0 32px;border-radius:2px;}
.q-summary-body{color:var(--ink-2);font-size:14.5px;line-height:1.75;}
.q-summary-body b{color:var(--ink);}
.q-badge{display:inline-block;margin-left:10px;padding:3px 10px;background:var(--red-light);color:var(--red-dark);font-size:11px;font-weight:700;letter-spacing:.08em;border-radius:3px;vertical-align:middle;}

/* ---------- SW / segment bars ---------- */
.sw-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:28px;}
.sw-card{background:var(--white);border:1px solid var(--line);padding:24px 26px;}
.sw-strength{border-top:3px solid var(--good);}
.sw-weakness{border-top:3px solid var(--bad);}
.sw-h{font-size:15px;font-weight:800;color:var(--ink);margin-bottom:18px;letter-spacing:.01em;}
.sw-row{display:grid;grid-template-columns:130px 1fr;gap:12px;margin-bottom:14px;align-items:center;}
.sw-name{font-size:13px;font-weight:600;color:var(--ink);}
.sw-bar-track{background:var(--bg-2);height:22px;border-radius:2px;position:relative;overflow:hidden;}
.sw-bar{height:100%;color:var(--white);font-size:11px;font-weight:700;padding:3px 10px;display:flex;align-items:center;letter-spacing:.05em;}
.sw-bar-good{background:var(--good);}
.sw-bar-bad{background:var(--bad);}
.sw-num{grid-column:1/-1;font-size:12px;color:var(--ink-3);padding-left:2px;margin-top:-4px;line-height:1.5;}
.sw-num b{color:var(--red);}

/* ---------- need cards / counter ---------- */
.need-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
.need-card{background:var(--white);border:1px solid var(--line);border-top:3px solid var(--red);padding:22px 24px;}
.need-tag{color:var(--red);font-size:11px;font-weight:800;letter-spacing:.15em;margin-bottom:6px;}
.need-h{font-size:17px;font-weight:800;color:var(--ink);margin-bottom:14px;line-height:1.35;}
.counter-box{margin:28px 0;padding:20px 24px;background:var(--ink);border-left:4px solid var(--red);border-radius:2px;}
.counter-h{color:#fff;font-size:12px;font-weight:800;letter-spacing:.15em;margin-bottom:8px;}
.counter-body{color:rgba(255,255,255,.82);font-size:14px;line-height:1.75;}
.counter-body b{color:#fff;}

/* ---------- footer ---------- */
.foot{background:var(--bg);padding:36px 6%;font-size:12px;color:var(--ink-3);text-align:center;line-height:1.7;}
.foot strong{color:var(--ink);}
.foot a{color:var(--red);text-decoration:none;}

/* ---------- page-end nav ---------- */
.pgnav{max-width:1360px;margin:0 auto;padding:40px 6% 64px;display:flex;gap:16px;flex-wrap:wrap;}
.pgnav a{flex:1;min-width:220px;background:var(--white);border:1px solid var(--line);border-left:3px solid var(--red);padding:20px 24px;text-decoration:none;transition:box-shadow .15s;}
.pgnav a:hover{box-shadow:0 6px 24px rgba(0,0,0,.08);}
.pgnav .pn-tag{color:var(--red);font-size:11px;font-weight:700;letter-spacing:.15em;}
.pgnav .pn-h{color:var(--ink);font-size:16px;font-weight:700;margin-top:6px;}
.pgnav .pn-d{color:var(--ink-3);font-size:12.5px;margin-top:4px;line-height:1.5;}

@media (max-width:1000px){
  .hero-title{font-size:36px;}.hero-sm .hero-title{font-size:30px;}.section-title{font-size:26px;}
  .kpi-grid{grid-template-columns:repeat(2,1fr);}.ctx-grid{grid-template-columns:1fr;}
  .pill-grid{grid-template-columns:1fr;}.insight-card{grid-template-columns:1fr;}
  .chart-row{grid-template-columns:1fr;}.sw-grid,.quote-2col,.need-grid{grid-template-columns:1fr;}
}
