/* 三产品总览页与各产品页共用的版式。token 全部沿用 aievisa.css，这里不新造颜色和圆角。 */
.pnav-cur,nav .nav-cur{color:var(--brand)!important}

/* Hero：左文右产品索引 */
.phero{padding:48px 0 0}
.phero .wrap{display:grid;grid-template-columns:1fr 360px;gap:48px;align-items:center}
.phero h1{font-size:clamp(30px,4.6vw,46px);line-height:1.15;letter-spacing:-.02em;margin:0 0 16px;color:var(--ink)}
.phero p.lede{font-size:17px;line-height:1.8;color:var(--ink-2);margin:0 0 24px;max-width:560px}
.phero .p-cta{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.phero .p-cta .btn{text-decoration:none}
.phero .p-cta a.txt{font-size:15px;color:var(--brand);text-decoration:none;font-weight:600}
.pindex{display:grid;gap:10px}
.pindex a{display:flex;align-items:center;gap:13px;padding:14px 16px;border:1px solid var(--line);border-radius:var(--r-card);background:var(--bg);text-decoration:none}
.pindex a:hover{border-color:var(--brand)}
.pindex img{width:38px;height:38px;flex:none}
.pindex b{display:block;font-size:15px;color:var(--ink);letter-spacing:-.01em}
.pindex span{display:block;font-size:12.5px;color:var(--ink-3);margin-top:2px;line-height:1.5}

/* 产品卡 */
.pcards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.pcard{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--r-card);background:var(--bg);padding:24px 22px 22px;text-decoration:none}
.pcard:hover{border-color:var(--brand)}
.pcard>img{width:56px;height:56px;margin:0 0 14px}
.pname{font-size:21px;font-weight:800;letter-spacing:-.02em;color:var(--ink);margin:0 0 8px}
.pname i{font-style:normal;color:var(--brand)}
.pchip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:700;margin:0 0 12px;align-self:flex-start}
.pchip::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.pchip.live{background:var(--ok-bg);color:var(--ok)}
.pchip.soon{background:var(--warn-bg);color:var(--warn)}
.pcard .one{font-size:14.5px;color:var(--ink-2);line-height:1.75;margin:0 0 14px}
.pcard ul{margin:0 0 18px;padding:0;list-style:none;display:grid;gap:8px}
.pcard li{position:relative;padding-left:17px;font-size:13.5px;color:var(--ink-2);line-height:1.65}
.pcard li::before{content:"";position:absolute;left:0;top:8px;width:6px;height:6px;border-radius:50%;background:var(--brand);opacity:.55}
.pcard .p-go{margin-top:auto;font-size:14px;font-weight:700;color:var(--brand)}

/* 三件事怎么串起来 */
.pflow{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--r-card);overflow:hidden}
.pflow>div{position:relative;background:var(--bg-2);padding:20px 22px}
.pflow>div+div::before{content:"";position:absolute;left:-7px;top:24px;width:12px;height:12px;background:var(--bg-2);border-top:1.5px solid var(--brand);border-right:1.5px solid var(--brand);transform:rotate(45deg)}
.pflow h3{display:flex;align-items:center;gap:9px;margin:0 0 7px;font-size:15px;color:var(--ink)}
.pflow h3 i{flex:none;width:22px;height:22px;border-radius:50%;background:var(--brand);color:#fff;display:grid;place-items:center;font-style:normal;font-size:12px;font-weight:700}
.pflow p{margin:0;font-size:13.5px;color:var(--ink-2);line-height:1.7}

/* 现在能做什么 */
.ptable{width:100%;border-collapse:collapse;font-size:14px}
.ptable th{background:var(--bg-2);color:var(--ink-3);font-weight:600;text-align:left;padding:12px 16px;font-size:13px}
.ptable td{padding:13px 16px;border-top:1px solid var(--line);color:var(--ink-2);vertical-align:top}
.ptable td:first-child{color:var(--ink);font-weight:600;white-space:nowrap}
.ptable .y{color:var(--ok);font-weight:700}
.ptable .n{color:var(--ink-3)}
.pwrap-t{border:1px solid var(--line);border-radius:var(--r-card);overflow:hidden;background:var(--bg)}

/* 产品页头 */
.pdhero{padding:48px 0 0}
.pdhero .wrap{display:grid;grid-template-columns:72px 1fr;gap:20px;align-items:start}
.pdhero img.mk{width:72px;height:72px}
.pdhero h1{font-size:clamp(28px,4.4vw,42px);letter-spacing:-.02em;margin:0 0 10px;color:var(--ink)}
.pdhero h1 i{font-style:normal;color:var(--brand)}
.pdhero p.lede{font-size:17px;line-height:1.8;color:var(--ink-2);margin:12px 0 22px;max-width:620px}
.pdhero .p-cta{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.pdhero .p-cta .btn{text-decoration:none}
.pdhero .p-cta .p-hint{font-size:13px;color:var(--ink-3);line-height:1.6;display:grid;gap:1px}
.pdhero .p-cta .p-hint b{font-weight:400;color:inherit;font-variant-numeric:tabular-nums}
.pdhero .p-cta .p-hint a{color:var(--brand);text-decoration:underline;text-underline-offset:2px}   /* <b> 只是构建脚本盖版本号的钩子，不是强调 */

/* 事实行：数字和官方口径不用状态胶囊，用一行弱字 */
.pfacts{margin:0 0 10px;font-size:14px;color:var(--ink-3);display:flex;flex-wrap:wrap;align-items:center;gap:0 6px}
.pfacts .dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:6px}
.pfacts .sep{margin:0 2px}

/* 首页：护照选择直达护照页 */
.p-pick{display:flex;align-items:center;gap:12px;margin:20px 0 0;flex-wrap:wrap}
.p-pick label{font-size:14px;color:var(--ink-2);font-weight:600}
.p-pick select{height:44px;min-width:220px;padding:0 12px;border:1px solid var(--line);border-radius:var(--r);background:var(--bg);font:inherit;font-size:15px;color:var(--ink)}
.p-pick select:focus{outline:2px solid var(--brand);outline-offset:1px}

/* 两栏说明块 */
.psplit{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.pbox{border:1px solid var(--line);border-radius:var(--r-card);background:var(--bg);padding:22px}
.pbox h3{margin:0 0 9px;font-size:16px;color:var(--ink)}
.pbox p{margin:0 0 10px;font-size:14px;color:var(--ink-2);line-height:1.8}
.pbox p:last-child{margin-bottom:0}
.pbox ol{margin:0;padding-left:20px;display:grid;gap:9px}
.pbox ol li{font-size:14px;color:var(--ink-2);line-height:1.7}
.pbox code{background:var(--bg-2);border-radius:6px;padding:1px 6px;font-size:13px;color:var(--ink)}
.pnote{margin:16px 0 0;font-size:13px;color:var(--ink-3);line-height:1.8;border-left:3px solid var(--line);padding-left:14px}

/* 这张表是全站诚信姿态的核心物料，手机上被挤成一行两三个字就白写了：560 以下改成卡片堆叠 */
@media(max-width:560px){
  .ptable,.ptable tbody,.ptable tr,.ptable td{display:block;width:100%}
  .ptable thead{display:none}
  .ptable tr{border-top:1px solid var(--line);padding:13px 16px}
  .ptable tr:first-child{border-top:0}
  .ptable td{border:0;padding:0}
  .ptable td:first-child{font-size:15px;margin-bottom:2px;white-space:normal}
  .ptable td:nth-child(2){display:inline-block;font-size:12px;font-weight:700;margin:2px 0 7px}
  .ptable td:last-child{font-size:13.5px;line-height:1.7}
  .ptable td[data-h]:empty{display:none}   /* 没有说明就连标签一起不显示 */
  .ptable td:nth-child(n+3)[data-h]::before{content:attr(data-h);display:inline-block;min-width:3em;margin-right:8px;font-size:11.5px;color:var(--ink-3)}   /* 堆叠后第三列起带上表头名，免得只剩光秃秃的数字 */
}
@media(max-width:900px){
  .phero{padding:48px 0 0}
  .phero .wrap{grid-template-columns:1fr;gap:28px}
  .pcards,.psplit{grid-template-columns:1fr}
  .pflow{grid-template-columns:1fr}
  .pflow>div+div::before{left:30px;top:-7px;transform:rotate(135deg)}
  .pdhero .wrap{grid-template-columns:1fr;gap:14px}
  .pdhero img.mk{width:60px;height:60px}
}

/* 产品页：左文右图分栏，一段一个论点（DESIGN.md 第 0 节：特性用分栏 + 真实截图，不用图标卡片墙） */
.pfeat{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center;padding:36px 0}
.pfeat+.pfeat{border-top:1px solid var(--line)}
.pfeat.rev>div:first-child{order:2}
.pfeat img{width:100%;height:auto;display:block;border:1px solid var(--line);border-radius:var(--r-card);background:#fff}
.pfeat h3{margin:0 0 10px;font-size:22px;letter-spacing:-.02em;line-height:1.3;color:var(--ink)}
.pfeat p{margin:0 0 10px;font-size:15px;line-height:1.8;color:var(--ink-2)}
.pfeat p:last-child{margin-bottom:0}
.pfeat .k{display:block;margin:0 0 8px;font-size:12.5px;font-weight:700;letter-spacing:.04em;color:var(--brand)}
.puse{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--r-card);overflow:hidden}
.puse>div{background:var(--bg);padding:20px 22px}
.puse b{display:block;font-size:15.5px;color:var(--ink);margin:0 0 6px}
.puse p{margin:0;font-size:14px;line-height:1.75;color:var(--ink-2)}
@media(max-width:900px){
  .pfeat{grid-template-columns:1fr;gap:18px;padding:26px 0}
  .pfeat.rev>div:first-child{order:0}
  .puse{grid-template-columns:1fr}
}

/* 护照页内嵌地图 + 分享 */
.pmap-sec{padding:0 0 48px}
.pmap-wrap{position:relative;border:1px solid var(--line);border-radius:var(--r-card);background:var(--ocean);overflow:hidden}
#pmap{display:block;width:100%;height:auto;aspect-ratio:960/470}
.pmap-tip{position:absolute;left:0;top:0;pointer-events:none;background:#fff;border:1px solid var(--line);border-radius:8px;padding:6px 10px;font-size:13px;line-height:1.4;color:var(--ink-2);white-space:nowrap;z-index:2}
.pmap-tip b{display:block;color:var(--ink);font-size:14px}
.pmap-bar{display:flex;justify-content:space-between;align-items:center;gap:12px 24px;flex-wrap:wrap;margin-top:12px}
.pmap-bar .pfacts{margin:0}
.pmap-acts{display:flex;gap:8px 16px;align-items:center;flex-wrap:wrap}
.pmap-acts a.txt{font-size:14px;color:var(--brand);font-weight:600;text-decoration:none}
.pmap-bar .tap{display:none}
@media(hover:none){.pmap-bar .hov{display:none}.pmap-bar .tap{display:inline}}
.pmap-acts .btn{height:40px;padding:0 16px;font-size:14px}
.pmap-msg{margin:10px 0 0;font-size:13.5px;color:var(--ok)}
.pmap-fail{margin:0;padding:24px;font-size:14px;color:var(--ink-3)}
@media(max-width:720px){.pmap-sec{padding-bottom:32px}.pmap-acts{width:100%}.pmap-acts .btn{flex:1}}

/* 加到日历 / 手机安装说明 */
.gcal{background:var(--bg-2)}
.gcal-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.gcal-row label{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:var(--ink-2);font-weight:600}
.gcal-row input[type=date]{height:44px;padding:0 12px;border:1px solid var(--line);border-radius:var(--r);background:var(--bg);font:inherit;font-size:15px;color:var(--ink)}
.gcal-row .btn{height:44px;padding:0 16px;font-size:14px}
.gcal-msg{margin:10px 0 0;font-size:13.5px;color:var(--ok)}
.p-mobile{margin:10px 0 0;font-size:13.5px;color:var(--ink-2);line-height:1.8;flex-basis:100%}
.p-mobile a{color:var(--brand);font-weight:600;text-decoration:underline;text-underline-offset:2px}
.p-mobile-msg{display:block;color:var(--ok)}

/* 可见面包屑（和 BreadcrumbList 一致） */
.crumbs{padding:16px 0 0}
.crumbs ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px 0;font-size:13px;color:var(--ink-3)}
.crumbs li+li::before{content:"›";margin:0 8px;color:var(--ink-3)}
.crumbs a{color:var(--ink-3);text-decoration:none}
.crumbs a:hover{color:var(--brand)}
.crumbs li[aria-current]{color:var(--ink-2)}
.crumbs+.pdhero{padding-top:24px}

/* 分享图预览（微信等不能直接下载的环境：长按保存） */
.sc-prev{position:relative;margin:14px 0 0;padding:12px 12px 10px;border:1px solid var(--line);border-radius:var(--r-card);background:var(--bg-2)}
.sc-prev img{display:block;width:auto;max-width:100%;max-height:min(70vh,720px);margin:0 auto;border:1px solid var(--line);border-radius:8px}
.sc-prev p{margin:10px 0 0;text-align:center;font-size:13.5px;color:var(--ink-2)}
.sc-prev-x{position:absolute;right:8px;top:6px;width:32px;height:32px;border:0;background:transparent;color:var(--ink-3);font-size:22px;line-height:1;cursor:pointer}
.sc-prev-x:hover{color:var(--ink)}

/* 日历提醒：算出来的提醒日 */
.gcal-when{margin:10px 0 0;font-size:13.5px;color:var(--ink-2)}
.gcal-row .btn[disabled]{opacity:.45;cursor:not-allowed}

/* 护照 × 目的地：首屏三行答案 */
.ans{border:1px solid var(--line);border-radius:var(--r-card);background:var(--bg-2);overflow:hidden}
.ans-row{display:grid;grid-template-columns:150px 1fr;gap:16px;padding:16px 20px;border-top:1px solid var(--line);font-size:15.5px;line-height:1.7}
.ans-row:first-child{border-top:0}
.ans-k{color:var(--ink-3)}
.ans-v{color:var(--ink)}
.ans-v a{color:var(--brand)}
@media(max-width:640px){.ans-row{grid-template-columns:1fr;gap:2px;padding:14px 16px}.ans-k{font-size:13px}}

/* 更新记录 */
.chlog{margin:0;padding:0 0 0 18px;font-size:15px;line-height:1.9;color:var(--ink-2)}
.chlog a{color:var(--ink)}

/* 微信链接卡用的方图：在文档流里但不可见（微信取正文第一张 ≥300px 的图） */
.wx-thumb{position:absolute;width:1px;height:1px;clip:rect(0 0 0 0);overflow:hidden;opacity:0;pointer-events:none}
