/* =====================================================================
 * base.css — 原生AI伙伴计划 · 集中式响应式排版基座
 * 所有模板共用。跨域引用：
 *   <link rel="stylesheet" href="http://43.98.178.137/assets/base.css">
 * （日后切 https 子域名，仅替换此基准 URL 一处）
 * 新增模板/管理见：/assets/index.html
 * ===================================================================== */

/* —— 重置 —— */
*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%; text-size-adjust:100%;}
html,body{margin:0; padding:0;}
body{
  font-family:"Microsoft YaHei","PingFang SC","Segoe UI",system-ui,-apple-system,sans-serif;
  font-size:clamp(15px, .92rem + .35vw, 17px);   /* 流式字号，随屏自适应 */
  line-height:1.8;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
:lang(en) body, html[lang="en"] body{
  font-family:"Segoe UI",system-ui,-apple-system,"Microsoft YaHei",sans-serif;
  line-height:1.7;
}
img,svg,video,table{max-width:100%;}
a{color:inherit;}

/* —— 响应式容器 —— */
.wrap{max-width:780px; margin:0 auto; padding:0 clamp(16px,4vw,24px) 80px;}

/* —— 表格：小屏横向可滚 —— */
.table-wrap{overflow-x:auto; -webkit-overflow-scrolling:touch;}
table{width:100%; border-collapse:collapse;}

/* —— 通用工具类 —— */
.sr-only{position:absolute; width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0;}
.no-print{}
button,a[role="button"]{touch-action:manipulation;}   /* 触控目标友好 */

/* —— 动效降级（无障碍） —— */
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{
    animation-duration:.001ms !important; animation-iteration-count:1 !important;
    transition-duration:.001ms !important; scroll-behavior:auto !important;
  }
}

/* —— 打印基线 —— */
@media print{
  body{background:#fff !important; color:#000 !important;}
  .no-print{display:none !important;}
  a{color:inherit; text-decoration:none;}
}

/* =====================================================================
 * 文内段落导航（汉堡式抽屉）— 由 base.js 自动生成，所有模板共用
 * base.js 依据页内 h2[id]/h3[id] 构建；条目不足 3 个则不显示。
 * 行为：点 ☰ 抽屉滑出，点条目平滑滚动并高亮当前段，Esc/点遮罩关闭。
 * ===================================================================== */

/* —— 触发按钮（右上浮动，遵从安全区）—— */
.nav-toggle{
  position:fixed; z-index:9000; top:max(14px,env(safe-area-inset-top));
  right:max(14px,env(safe-area-inset-right));
  width:46px; height:46px; border-radius:50%;
  border:1px solid rgba(0,0,0,.12); background:#fff; color:#1f2a33;
  box-shadow:0 4px 14px rgba(0,0,0,.16); cursor:pointer;
  display:flex; align-items:center; justify-content:center;
  transition:background .2s, transform .2s; -webkit-tap-highlight-color:transparent;
}
.nav-toggle:hover{background:#f4f6f9;}
.nav-toggle svg{width:22px; height:22px; display:block;}
.nav-toggle[aria-expanded="true"]{transform:rotate(90deg);}

/* —— 遮罩 —— */
.nav-overlay{
  position:fixed; inset:0; z-index:8999; background:rgba(15,30,50,.42);
  opacity:0; visibility:hidden; transition:opacity .25s, visibility .25s;
}
.nav-overlay.open{opacity:1; visibility:visible;}

/* —— 抽屉（右滑入）—— */
.nav-drawer{
  position:fixed; top:0; right:0; z-index:9001;
  height:100dvh; width:min(320px,86vw); background:#fff;
  transform:translateX(100%); transition:transform .26s ease;
  box-shadow:-8px 0 30px rgba(0,0,0,.18); overflow-y:auto;
  padding:max(18px,env(safe-area-inset-top)) 0 max(18px,env(safe-area-inset-bottom));
  display:flex; flex-direction:column;
}
.nav-drawer.open{transform:translateX(0);}
.nav-drawer .nav-head{
  font-size:13px; font-weight:700; color:#0f4c75; letter-spacing:.4px;
  padding:0 22px 10px; border-bottom:1px solid #eef1f5; margin-bottom:6px;
}
.nav-drawer ol{list-style:none; margin:0; padding:0;}
.nav-drawer li.sub a{padding-left:34px; font-size:14px; color:#56636e;}
.nav-drawer a{
  display:block; padding:11px 22px; text-decoration:none; color:#1f2a33;
  font-size:15px; border-left:3px solid transparent; line-height:1.4;
}
.nav-drawer a:hover{background:#eef5fb;}
.nav-drawer a.is-active{background:#e7f1f9; border-left-color:#1f6fb2; color:#0f4c75; font-weight:700;}

/* —— 无障碍：键盘焦点 —— */
.nav-toggle:focus-visible,.nav-drawer a:focus-visible{
  outline:3px solid #c8821a; outline-offset:2px;
}

/* —— 电视 10ft：按钮与抽屉放大，利于遥控 D-pad —— */
[data-terminal="tv"] .nav-toggle{width:64px; height:64px;}
[data-terminal="tv"] .nav-toggle svg{width:32px; height:32px;}
[data-terminal="tv"] .nav-drawer{width:min(420px,70vw); background:#16222e;}
[data-terminal="tv"] .nav-drawer .nav-head{color:#7fc4ff; border-color:#2a3b4a;}
[data-terminal="tv"] .nav-drawer a{color:#eaf1f8; font-size:20px; padding:15px 26px;}
[data-terminal="tv"] .nav-drawer a:hover,[data-terminal="tv"] .nav-drawer a.is-active{background:#1a2733; border-left-color:#7fc4ff; color:#fff;}

/* —— 打印隐藏 —— */
@media print{
  .nav-toggle,.nav-drawer,.nav-overlay{display:none !important;}
}
