/* ============================================================
   H5 子页共享样式 · 浅色白底 + 共青团红（2026-09-10 同步主 H5 白底）
   供 h5-archive / h5-timeline / h5-portfolio / h5-career 使用
   ============================================================ */
:root{
  --ink:#1A1A1A; --ink-2:#5A5A5A; --ink-3:#9A9A9A;
  --line:rgba(0,0,0,.09); --line-hi:rgba(0,0,0,.16);
  --brand:#C8102E; --brand-hi:#C8102E; --brand-dim:#B01224;
  --gold:#B45309; --violet:#6C5BD4; --red:#E64340; --blue:#0EA5E9; --pink:#E24A8D;
}
*{ margin:0; padding:0; box-sizing:border-box; -webkit-tap-highlight-color:transparent; }
body{ font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","HarmonyOS Sans SC","Microsoft YaHei",sans-serif;
  background:#CFD3D2;
  color:var(--ink); font-size:14px; -webkit-font-smoothing:antialiased; }
.page{ max-width:430px; margin:0 auto; min-height:100dvh; background:#EDEDED;
  display:flex; flex-direction:column; box-shadow:0 0 40px rgba(0,0,0,.12); }
.appbar{ position:sticky; top:0; z-index:5; display:flex; align-items:center; gap:10px;
  padding:12px 16px; padding-top:calc(12px + env(safe-area-inset-top));
  background:rgba(255,255,255,.92); backdrop-filter:blur(16px); border-bottom:1px solid var(--line); }
.appbar .bk{ display:flex; align-items:center; color:var(--ink); text-decoration:none; }
.appbar .bk svg{ width:20px; height:20px; }
.appbar b{ font-size:16px; font-weight:600; }
.appbar .sp{ flex:1; }
.appbar .logo{ width:26px; height:26px; border-radius:8px; display:flex; align-items:center; justify-content:center;
  color:#fff; font-size:12px; font-weight:700; background:linear-gradient(135deg,#E64635,#C8102E);
  box-shadow:0 2px 8px rgba(200,16,46,.30); }
.content{ flex:1; padding:14px 14px 30px; }
.card{ background:#FFFFFF; border:1px solid var(--line); border-radius:12px; padding:14px;
  box-shadow:0 1px 2px rgba(0,0,0,.04); }
.sec{ font-size:11px; letter-spacing:2px; color:var(--ink-3); font-weight:700; margin:18px 2px 8px; }
.sec:first-child{ margin-top:4px; }
.hi{ padding:2px 2px 12px; }
.hi b{ font-size:19px; font-weight:700; }
.hi b em{ font-style:normal; color:var(--brand-hi); }
.hi p{ font-size:11.5px; color:var(--ink-3); margin-top:3px; }
.bar{ height:7px; border-radius:4px; background:rgba(0,0,0,.07); overflow:hidden; }
.bar i{ display:block; height:100%; border-radius:4px; }
.badge{ font-size:10px; font-weight:600; padding:2px 8px; border-radius:999px; letter-spacing:.5px; }
.badge.info{ background:rgba(200,16,46,.10); color:var(--brand); }
.badge.warn{ background:rgba(180,83,9,.10); color:var(--gold); }
.badge.violet{ background:rgba(108,91,212,.10); color:var(--violet); }
.btn{ display:flex; align-items:center; justify-content:center; gap:8px; width:100%;
  padding:13px; border-radius:12px; border:none; font-size:14px; font-weight:700; cursor:pointer; transition:.2s; }
.btn-pri{ background:linear-gradient(135deg,#E64635,#C8102E); color:#fff; box-shadow:0 4px 12px rgba(200,16,46,.30); }
.btn-ghost{ background:#FFFFFF; color:var(--ink); border:1px solid var(--line-hi); }
.note{ margin-top:10px; padding:11px 12px; border-radius:10px; background:#FFF8E7;
  border:1px solid rgba(180,83,9,.22); font-size:11px; color:#8A5A11; line-height:1.65; }
.toast{ position:fixed; bottom:30px; left:50%; transform:translateX(-50%); z-index:99;
  background:rgba(26,26,26,.92); color:#fff; padding:11px 18px; border-radius:10px;
  font-size:13px; opacity:0; transition:.3s; pointer-events:none; max-width:86vw; }
.toast.show{ opacity:1; }

/* —— [伦理审查标注 v5] 输入 / 输出数据统一标注 —— */
.eth-chip{ flex:none; display:inline-flex; align-items:center; gap:3px; white-space:nowrap;
  font-size:9px; letter-spacing:.2px; line-height:1.4; padding:3px 8px; border-radius:999px;
  border:1px solid currentColor; color:inherit; opacity:.72; text-decoration:none; }
.eth-chip:active{ opacity:1; }
.eth-note{ display:flex; align-items:center; gap:6px; margin:14px 2px 2px; padding-top:10px;
  border-top:1px dashed currentColor; font-size:10px; line-height:1.6; color:inherit; opacity:.62; }
.eth-note span{ flex:1; }
.eth-note a{ flex:none; color:inherit; text-decoration:none; border-bottom:1px solid currentColor; }
.eth-tag{ display:block; margin-top:7px; text-align:right; font-size:9.5px; line-height:1.5;
  letter-spacing:.3px; color:inherit; opacity:.48; }
.eth-tag.inline{ display:inline-flex; align-items:center; flex:none; margin:0 0 0 6px; white-space:nowrap; }
.eth-chip i,.eth-note i,.eth-tag i{ font-style:normal; }
