/* ============================================================
   浅色主题适配（覆盖深色硬编码）
   依赖文件头部已切换为浅色变量
   ============================================================ */

/* 顶栏：白色毛玻璃 */
.pf-head{background:rgba(255,255,255,.86);box-shadow:0 1px 0 var(--pf-line),0 2px 14px rgba(22,48,94,.05)}
.pf-logo b{color:var(--pf-t)}
.pf-logo em{color:var(--pf-t3)}
.pf-nav a{color:var(--pf-t2)}
.pf-nav a:hover{color:var(--pf-p);background:rgba(59,111,245,.08)}
.pf-nav a.on{color:var(--pf-p);background:rgba(59,111,245,.11);
  box-shadow:inset 0 0 0 1px rgba(59,111,245,.28)}
.pf-lang{background:rgba(255,255,255,.9)}
.pf-lang a:hover{background:rgba(59,111,245,.1)}
.pf-login{background:linear-gradient(135deg,var(--pf-p),#2B5FE0);
  box-shadow:0 6px 18px rgba(59,111,245,.30)}
.pf-login:hover{box-shadow:0 10px 26px rgba(59,111,245,.40)}
.pf-burger{background:rgba(255,255,255,.9)}
.pf-burger span,.pf-burger span::before,.pf-burger span::after{background:var(--pf-t)}

/* HERO */
.pf-hero::before{background:radial-gradient(closest-side,rgba(59,111,245,.10),transparent)}
.pf-hero-badge{background:rgba(255,255,255,.86);border-color:var(--pf-line);color:var(--pf-t2);
  box-shadow:var(--pf-sh)}
.pf-hero h1{color:var(--pf-t)}
.pf-hero h1 .grad{background:linear-gradient(120deg,var(--pf-p) 5%,var(--pf-p2) 48%,var(--pf-pu) 95%);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.pf-hero-lead{color:var(--pf-t2)}
.pf-hero-stats div b{background:linear-gradient(135deg,var(--pf-p),var(--pf-p2));
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.pf-hero-stats div span{color:var(--pf-t3)}
.pf-btn{background:linear-gradient(135deg,var(--pf-p),#2B5FE0);
  box-shadow:0 8px 22px rgba(59,111,245,.28)}
.pf-btn:hover{box-shadow:0 14px 32px rgba(59,111,245,.38)}
.pf-btn-ghost{background:rgba(255,255,255,.9);border-color:var(--pf-line);color:var(--pf-t);
  box-shadow:var(--pf-sh)}
.pf-btn-ghost:hover{background:#fff;box-shadow:var(--pf-sh2)}
.pf-art-card{background:#fff;border-color:var(--pf-line);box-shadow:var(--pf-sh3)}
.pf-art-card:hover{border-color:rgba(59,111,245,.5);box-shadow:0 24px 56px rgba(22,48,94,.18)}
.pf-art-card-2{box-shadow:var(--pf-sh2)}
.pf-art-cap b{color:var(--pf-t)}
.pf-art-cap span{color:var(--pf-t3)}

/* 区块 */
.pf-sec-alt{background:linear-gradient(180deg,transparent,rgba(226,234,247,.55),transparent)}
.pf-sec-head h2{color:var(--pf-t)}
.pf-sec-head p{color:var(--pf-t3)}
.pf-sec-more{color:var(--pf-p)}
.pf-sec-more:hover{color:var(--pf-p2)}

.pf-kpi{background:#fff;border-color:var(--pf-line);box-shadow:var(--pf-sh)}
.pf-kpi:hover{border-color:rgba(59,111,245,.4);box-shadow:var(--pf-sh2)}
.pf-kpi-l{color:var(--pf-t3)}
.pf-kpi-v{color:var(--pf-t)}
.pf-kpi-u{color:var(--pf-t3)}

/* 片区卡 */
.pf-region{background:#fff;border-color:var(--pf-line);box-shadow:var(--pf-sh)}
.pf-region:hover{box-shadow:0 20px 46px color-mix(in srgb,var(--rc) 20%,transparent)}
.pf-region-ico{background:rgba(255,255,255,.9);border-color:var(--pf-line);box-shadow:var(--pf-sh)}
.pf-region-top h3{color:var(--rc)}
.pf-region-tag{color:var(--rc);background:color-mix(in srgb,var(--rc) 12%,transparent);
  border-color:color-mix(in srgb,var(--rc) 30%,transparent)}
.pf-region-body p{color:var(--pf-t2)}
.pf-region-focus span{color:var(--pf-t2);background:rgba(240,244,251,.9);border-color:var(--pf-line)}

/* 业务域 */
.pf-module{background:#fff;border-color:var(--pf-line);box-shadow:var(--pf-sh)}
.pf-module:hover{background:color-mix(in srgb,var(--mc) 5%,#fff);box-shadow:var(--pf-sh2)}
.pf-module-ico{background:color-mix(in srgb,var(--mc) 13%,transparent);
  border-color:color-mix(in srgb,var(--mc) 28%,transparent);color:var(--mc)}
.pf-module h4{color:var(--pf-t)}
.pf-module p{color:var(--pf-t3)}

/* 智能体 */
.pf-agent{background:#fff;border-color:var(--pf-line);box-shadow:var(--pf-sh)}
.pf-agent:hover{box-shadow:0 12px 28px color-mix(in srgb,var(--ac) 18%,transparent)}
.pf-agent-ico{background:color-mix(in srgb,var(--ac) 12%,transparent);
  border-color:color-mix(in srgb,var(--ac) 28%,transparent);color:var(--ac)}
.pf-agent b{color:var(--pf-t)}
.pf-agent-d{color:var(--pf-t3)}

/* 政策卡 */
.pf-pol{background:#fff;border-color:var(--pf-line);box-shadow:var(--pf-sh)}
.pf-pol:hover{border-color:rgba(59,111,245,.4);box-shadow:var(--pf-sh2)}
.pf-pol h4{color:var(--pf-t)}
.pf-pol p{color:var(--pf-t3)}
.pf-pol-ft{color:var(--pf-t3)}
.pf-pol-ft b{color:#16A34E}
.pf-pol-tag{background:rgba(240,244,251,.9)}
.pf-type-补贴{color:#15803D;background:rgba(34,197,94,.11);border-color:rgba(34,197,94,.28)}
.pf-type-税收{color:#1D4ED8;background:rgba(59,111,245,.10);border-color:rgba(59,111,245,.26)}
.pf-type-便利化{color:#0369A1;background:rgba(56,189,248,.12);border-color:rgba(56,189,248,.30)}
.pf-type-资格{color:#6D28D9;background:rgba(168,85,247,.10);border-color:rgba(168,85,247,.26)}

/* CTA */
.pf-cta-in{background:linear-gradient(120deg,rgba(59,111,245,.10),rgba(8,145,178,.06),rgba(124,58,237,.09));
  border-color:rgba(59,111,245,.24);box-shadow:var(--pf-sh)}
.pf-cta h2{color:var(--pf-t)}
.pf-cta p{color:var(--pf-t2)}

/* 页脚 */
.pf-foot{background:rgba(255,255,255,.72);border-top-color:var(--pf-line)}
.pf-foot-brand{color:var(--pf-t)}
.pf-foot-desc{color:var(--pf-t3)}
.pf-foot-tags span{background:#fff;border-color:var(--pf-line);color:var(--pf-t2)}
.pf-foot h6{color:var(--pf-t)}
.pf-foot-grid > div > a{color:var(--pf-t3)}
.pf-foot-grid > div > a:hover{color:var(--pf-p)}
.pf-foot-grid p{color:var(--pf-t3)}
.pf-copy{color:var(--pf-t3);border-top-color:var(--pf-line)}

/* AI 悬浮窗 */
.pf-ai-fab{background:linear-gradient(135deg,var(--pf-p),#2B5FE0);
  box-shadow:0 12px 32px rgba(59,111,245,.40)}
.pf-ai-fab:hover{box-shadow:0 18px 40px rgba(59,111,245,.50)}
.pf-ai-panel{background:rgba(255,255,255,.98);border-color:var(--pf-line);
  box-shadow:0 26px 70px rgba(22,48,94,.20)}
.pf-ai-head{border-bottom-color:var(--pf-line)}
.pf-ai-avatar{background:linear-gradient(135deg,var(--pf-p),var(--pf-p2))}
.pf-ai-head b{color:var(--pf-t)}
.pf-ai-head small{color:var(--pf-t3)}
.pf-ai-close{background:rgba(240,244,251,.9);border-color:var(--pf-line);color:var(--pf-t2)}
.pf-ai-close:hover{background:#fff;color:var(--pf-t)}
.pf-ai-msgs{background:linear-gradient(180deg,#FBFCFE,#F5F8FC)}
.pf-ai-msg.me .pf-ai-av{background:#fff;border-color:var(--pf-line);color:var(--pf-t2)}
.pf-ai-bub{background:#fff;border-color:var(--pf-line);color:var(--pf-t);
  box-shadow:0 1px 4px rgba(22,48,94,.05)}
.pf-ai-msg.me .pf-ai-bub{background:linear-gradient(135deg,rgba(59,111,245,.12),rgba(8,145,178,.08));
  border-color:rgba(59,111,245,.26);color:var(--pf-t)}
.pf-ai-bub strong{color:var(--pf-t)}
.pf-ai-bub em{color:var(--pf-p2)}
.pf-ai-bub .pf-ai-meta{color:var(--pf-t3);border-top-color:var(--pf-line)}
.pf-ai-quick{border-top-color:var(--pf-line)}
.pf-ai-quick span{background:#fff;border-color:var(--pf-line);color:var(--pf-t2)}
.pf-ai-quick span:hover{color:var(--pf-p);border-color:rgba(59,111,245,.4);background:rgba(59,111,245,.07)}
.pf-ai-input{border-top-color:var(--pf-line)}
.pf-ai-input input{background:#fff;border-color:var(--pf-line);color:var(--pf-t)}
.pf-ai-input input:focus{border-color:var(--pf-p);background:rgba(59,111,245,.05)}
.pf-ai-input button{background:linear-gradient(135deg,var(--pf-p),#2B5FE0)}

/* 内页 */
.pf-page-hero::before{background:radial-gradient(closest-side,rgba(59,111,245,.10),transparent)}
.pf-page-hero h1{color:var(--pf-t)}
.pf-page-hero p{color:var(--pf-t2)}
.pf-crumbs{color:var(--pf-t3)}
.pf-crumbs a{color:var(--pf-t3)}
.pf-crumbs a:hover{color:var(--pf-p)}

.pf-timeline::before{background:linear-gradient(var(--pf-p),var(--pf-p2),var(--pf-pu));opacity:.5}
.pf-tl-item::before{background:#fff}
.pf-tl-year{color:var(--tc);background:color-mix(in srgb,var(--tc) 11%,transparent);
  border-color:color-mix(in srgb,var(--tc) 28%,transparent)}
.pf-tl-body{background:#fff;border-color:var(--pf-line);box-shadow:var(--pf-sh)}
.pf-tl-body:hover{box-shadow:var(--pf-sh2)}
.pf-tl-body b{color:var(--pf-t)}
.pf-tl-body p{color:var(--pf-t2)}

.pf-adv-card{background:#fff;border-color:var(--pf-line);box-shadow:var(--pf-sh)}
.pf-adv-card:hover{box-shadow:var(--pf-sh2)}
.pf-adv-ico{background:linear-gradient(135deg,rgba(59,111,245,.12),rgba(8,145,178,.09));
  border-color:rgba(59,111,245,.24);color:var(--pf-p)}
.pf-adv-card h4{color:var(--pf-t)}
.pf-adv-card p{color:var(--pf-t3)}

.pf-pol-row{background:#fff;border-color:var(--pf-line);box-shadow:var(--pf-sh)}
.pf-pol-row:hover{box-shadow:var(--pf-sh2)}
.pf-pr-main h3{color:var(--pf-t)}
.pf-pr-main p{color:var(--pf-t3)}
.pf-pr-tags span{background:rgba(240,244,251,.9);border-color:var(--pf-line);color:var(--pf-t2)}
.pf-pr-amt{color:#15803D}
.pf-pr-dept,.pf-pr-date{color:var(--pf-t3)}

.pf-rd-hero{border-color:var(--rc);box-shadow:var(--pf-sh2)}
.pf-rd-hero-in{background:linear-gradient(180deg,color-mix(in srgb,var(--rc) 8%,transparent),rgba(255,255,255,.9))}
.pf-rd-hero-in h2{color:var(--rc)}
.pf-rd-hero-in p{color:var(--pf-t2)}
.pf-rd-stat{background:#fff;border-color:var(--pf-line);box-shadow:var(--pf-sh)}
.pf-rd-stat b{color:var(--rc)}
.pf-rd-stat span{color:var(--pf-t3)}

.pf-tech{background:#fff;border-color:var(--pf-line);box-shadow:var(--pf-sh)}
.pf-tech h3{color:var(--pf-t)}
.pf-tech p{color:var(--pf-t2)}

/* 移动端菜单 */
@media(max-width:1023px){
  .pf-nav{background:rgba(255,255,255,.99);border-bottom-color:var(--pf-line);
    box-shadow:var(--pf-sh2)}
}

/* 片区详情：hero 底部收尾改为纯白，避免出现色带 */
.pf-rd-hero-in{background:linear-gradient(180deg,color-mix(in srgb,var(--rc) 7%,transparent),#fff 78%)}
/* 交替区块浅色下用极淡冷灰蓝，保持层次但不压抑 */
.pf-sec-alt{background:linear-gradient(180deg,transparent,rgba(228,236,248,.5),transparent)}
/* 最后一个 section 后面不要残留色块 */
.pf-main .pf-sec:last-child{padding-bottom:52px}

/* ============================================================
   body 层兜底：portal.css 只改了 .pf 作用域，
   但 body 自身仍继承 app.css 的深色 --bg/--text，
   这里把 body 也纳入浅色体系（仅作用于 .pf 页面）
   ============================================================ */
body.pf{
  --bg:#F4F7FC; --bg-2:#FFFFFF;
  --text:#0E1B30; --text-2:#4C5F79; --text-3:#7B8CA4;
  --border:rgba(24,54,105,.13);
  --card:rgba(255,255,255,.92); --card-2:rgba(255,255,255,.98);
  --shadow:0 10px 32px rgba(22,48,94,.10);
  background:var(--bg);color:var(--text);
}
/* 前台页面不显示 app.css 的深色装饰层 */
body.pf::before,body.pf::after{display:none!important}
