/* ============================================================
   云南大学附属医院神经外科 · 官网样式
   品牌令牌与《2026 科室年会报名页》同源，语义与公众号排版系统一致
   ============================================================ */
:root{
  --page:#F2F5F4; --paper:#FFFFFF; --surface:#F7FAF9; --surface-2:#EAF1EF;
  --text:#1A2B27; --text-strong:#0B201D; --muted:#54655F;
  --teal:#12A091;
  --teal-ink:#0A5750;
  --teal-cta:#0B6E63;
  --deep:#0A4A44;
  --teal-soft:#E5F1EE;
  --border:#DDE7E4; --border-strong:#BFD1CC;
  --gold:#C4A059; --gold-ink:#79571A; --gold-soft:#FBF3E3; --gold-border:#E2D1AC;
  --danger:#A3382A; --danger-soft:#FBEDEA; --danger-border:#DEACA0;
  --ring:rgba(18,160,145,.55);
  --shadow-1:0 1px 2px rgba(10,32,29,.05), 0 8px 20px -12px rgba(10,32,29,.20);
  --shadow-2:0 2px 6px rgba(10,32,29,.07), 0 18px 44px -20px rgba(10,32,29,.28);
  --maxw:1120px; --radius:16px; --radius-sm:10px; --radius-pill:999px;
  --gut:20px;
  --font-hei:-apple-system,BlinkMacSystemFont,"PingFang SC","Noto Sans SC","Microsoft YaHei","Hiragino Sans GB",sans-serif;
}
@media (prefers-color-scheme: dark){
  :root{
    --page:#0B1211; --paper:#111A18; --surface:#17211F; --surface-2:#1E2926;
    --text:#D5E1DE; --text-strong:#EFF6F4; --muted:#94A7A2;
    --teal:#33C3AE; --teal-ink:#83DCCD; --teal-cta:#168273; --deep:#123B36; --teal-soft:#1B302C;
    --border:#25322F; --border-strong:#33433F;
    --gold:#D6B677; --gold-ink:#E8CE95; --gold-soft:#241F12; --gold-border:#55461F;
    --danger:#F0A695; --danger-soft:#33211D; --danger-border:#5E3A31;
    --ring:rgba(51,195,174,.6);
    --shadow-1:0 1px 2px rgba(0,0,0,.5), 0 8px 20px -12px rgba(0,0,0,.7);
    --shadow-2:0 2px 6px rgba(0,0,0,.55), 0 18px 44px -20px rgba(0,0,0,.8);
  }
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  *{animation-duration:.01ms !important;transition-duration:.01ms !important}
}
body{
  margin:0;background:var(--page);color:var(--text);
  font-family:var(--font-hei);font-size:17px;line-height:1.72;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--teal-ink);text-decoration:none;text-underline-offset:.22em}
a:hover{text-decoration:underline}
:focus-visible{outline:3px solid var(--ring);outline-offset:2px;border-radius:4px}

.wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--gut)}
.narrow{max-width:820px}
.skip{position:absolute;left:-9999px;top:0;background:var(--paper);padding:10px 16px;z-index:100}
.skip:focus{left:12px;top:12px}

/* ---------- 页头 ---------- */
.site-header{
  position:sticky;top:0;z-index:50;
  background:color-mix(in srgb,var(--paper) 92%,transparent);
  backdrop-filter:saturate(1.4) blur(12px);
  border-bottom:1px solid var(--border);
}
.header-inner{display:flex;align-items:center;gap:14px;min-height:66px;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:10px;color:var(--text-strong);font-weight:700;letter-spacing:.01em}
.brand:hover{text-decoration:none}
.brand img{width:34px;height:34px;flex:0 0 auto}
.brand-text{display:flex;flex-direction:column;line-height:1.25}
.brand-text b{font-size:16px;font-weight:700}
.brand-text span{font-size:11.5px;color:var(--muted);font-weight:500;letter-spacing:.08em}
.site-nav{margin-left:auto}
.site-nav ul{display:flex;gap:2px;list-style:none;margin:0;padding:0;overflow-x:auto;scrollbar-width:none}
.site-nav ul::-webkit-scrollbar{display:none}
.site-nav a{
  display:block;padding:8px 12px;border-radius:var(--radius-pill);
  color:var(--text);font-size:14.5px;white-space:nowrap;
}
.site-nav a:hover{background:var(--surface-2);text-decoration:none}
.site-nav a[aria-current="page"]{background:var(--teal-soft);color:var(--teal-ink);font-weight:600}

/* ---------- 首页 hero ---------- */
.hero{
  position:relative;overflow:hidden;
  background:
    radial-gradient(1200px 520px at 82% -10%, var(--teal-soft) 0%, transparent 62%),
    linear-gradient(180deg,var(--paper) 0%,var(--page) 100%);
  border-bottom:1px solid var(--border);
}
.hero::after{
  content:"";position:absolute;inset:auto -80px -140px auto;width:460px;height:460px;
  border-radius:50%;border:1px solid var(--border);opacity:.7;pointer-events:none;
}
.hero-inner{padding-top:64px;padding-bottom:52px;position:relative;z-index:1}
.eyebrow{
  display:inline-flex;align-items:center;gap:8px;margin:0 0 18px;
  font-size:12.5px;letter-spacing:.14em;color:var(--teal-ink);
  background:var(--teal-soft);border:1px solid var(--border);
  padding:5px 12px;border-radius:var(--radius-pill);
}
.hero h1{
  margin:0 0 16px;font-size:clamp(30px,4.6vw,46px);line-height:1.24;
  letter-spacing:-.01em;color:var(--text-strong);font-weight:800;
}
.hero .lede{margin:0;max-width:44em;font-size:clamp(16px,1.6vw,18.5px);color:var(--muted);line-height:1.8}
.hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}

.quick{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:34px;
}
.quick a{
  display:flex;flex-direction:column;gap:2px;padding:14px 16px;
  background:var(--paper);border:1px solid var(--border);border-radius:var(--radius-sm);
  box-shadow:var(--shadow-1);color:var(--text);
}
.quick a:hover{border-color:var(--border-strong);text-decoration:none;transform:translateY(-1px)}
.quick .k{font-size:12px;letter-spacing:.1em;color:var(--muted)}
.quick .v{font-weight:700;color:var(--text-strong);font-size:15.5px}

/* ---------- 按钮 ---------- */
.btn{
  display:inline-flex;align-items:center;gap:8px;
  padding:11px 20px;border-radius:var(--radius-pill);
  border:1px solid var(--border-strong);background:var(--paper);color:var(--text-strong);
  font-size:15px;font-weight:600;line-height:1.3;
}
.btn:hover{text-decoration:none;border-color:var(--teal);background:var(--surface)}
.btn-primary{background:var(--teal-cta);border-color:var(--teal-cta);color:#fff}
.btn-primary:hover{background:var(--deep);border-color:var(--deep);color:#fff}

/* ---------- 常规区块 ---------- */
main{display:block}
.section{padding:56px 0}
/* .wrap.section 组合时 .section 的 padding 会清掉左右留白，导致正文比页头左移 20px */
.wrap.section{padding-left:var(--gut);padding-right:var(--gut)}
.section + .section{padding-top:8px}
/* 色块（section--tint）之后接无底色区块时恢复常规上间距，避免内容贴着色块边缘 */
.section--tint + .section{padding-top:56px}
.section-head{margin:0 0 26px;max-width:46em}
.section-head h2{
  margin:0 0 8px;font-size:clamp(22px,2.4vw,28px);line-height:1.35;
  color:var(--text-strong);letter-spacing:-.008em;
}
/* 色块交替代替分割线：相邻区块用面色变化断开，不额外描边 */
.section.section--tint{background:var(--surface);padding:56px 0}
.section-head p{margin:0;color:var(--muted)}
.section-head .more{display:inline-block;margin-top:10px;font-size:14.5px}

/* ---------- 页面头（内页） ---------- */
.page-header{
  background:linear-gradient(180deg,var(--paper) 0%,var(--page) 100%);
  border-bottom:1px solid var(--border);padding:34px 0 30px;
}
.breadcrumb{margin:0 0 14px;font-size:13px;color:var(--muted)}
.breadcrumb ol{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:0;padding:0}
.breadcrumb li+li::before{content:"/";margin-right:6px;color:var(--border-strong)}
.page-header h1{
  margin:0 0 10px;font-size:clamp(26px,3.6vw,36px);line-height:1.3;
  color:var(--text-strong);letter-spacing:-.01em;
}
.page-header .lede{margin:0;max-width:46em;color:var(--muted);font-size:17px}
.tagrow{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.tag{
  font-size:12.5px;padding:4px 11px;border-radius:var(--radius-pill);
  background:var(--teal-soft);color:var(--teal-ink);border:1px solid var(--border);
}
.tag-plain{background:var(--surface);color:var(--muted)}

/* ---------- 正文排版 ---------- */
.prose{max-width:820px}
.prose > *:first-child{margin-top:0}
.prose h2{
  margin:2.4em 0 .7em;font-size:clamp(20px,2.2vw,25px);line-height:1.4;
  color:var(--text-strong);padding-bottom:.35em;border-bottom:1px solid var(--border);
}
.prose h3{margin:1.9em 0 .55em;font-size:18.5px;color:var(--text-strong);line-height:1.45}
.prose p{margin:0 0 1.05em}
.prose ul,.prose ol{margin:0 0 1.2em;padding-left:1.35em}
.prose li{margin:.42em 0}
.prose li::marker{color:var(--teal)}
.prose strong{color:var(--text-strong);font-weight:700}
.prose hr{border:0;border-top:1px solid var(--border);margin:2em 0}
.prose .lead-block{border-left:0}
.lead-block{
  margin:0 0 1.6em;padding:18px 22px;background:var(--surface);
  border-left:3px solid var(--teal);border-radius:0 var(--radius-sm) var(--radius-sm) 0;
}
.lead-block p{margin:0;font-size:17.5px;line-height:1.8;color:var(--text)}

/* ---------- 提示框 ---------- */
.callout{
  margin:1.6em 0;padding:18px 20px;border-radius:var(--radius-sm);
  background:var(--teal-soft);border:1px solid var(--border);
}
.callout p{margin:0}
.callout p + p{margin-top:.7em}
.callout > :first-child{margin-top:0}
.callout > :last-child{margin-bottom:0}
.callout-alert{
  background:var(--danger-soft);border-color:var(--danger-border);
}
.callout-alert strong{color:var(--danger)}
.callout-title{
  margin:0 0 .55em !important;font-size:16px !important;font-weight:700;
  color:var(--danger);padding:0 !important;border:0 !important;line-height:1.5 !important;
}
.callout:not(.callout-alert) .callout-title{color:var(--teal-ink)}
.callout ul{margin:.4em 0 0;padding-left:1.25em}
.callout li::marker{color:var(--danger)}

/* ---------- 信息卡 / 步骤 / 问答 ---------- */
.info-card{
  margin:1.4em 0;padding:20px 22px;background:var(--paper);
  border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-1);
}
.info-card dl{margin:0;display:grid;grid-template-columns:7.5em 1fr;gap:10px 18px}
.info-card dt{color:var(--muted);font-size:14.5px}
.info-card dd{margin:0;color:var(--text-strong)}

.steps{margin:1.1em 0 1.4em;padding-left:1.3em}
.steps li{margin:.55em 0}
.steps.numbered{counter-reset:step;list-style:none;padding-left:0}
.steps.numbered li{
  position:relative;padding:12px 16px 12px 52px;margin:.55em 0;
  background:var(--paper);border:1px solid var(--border);border-radius:var(--radius-sm);
}
.steps.numbered li::before{
  counter-increment:step;content:counter(step);
  position:absolute;left:14px;top:12px;width:24px;height:24px;border-radius:50%;
  background:var(--teal-soft);color:var(--teal-ink);
  font-size:13px;font-weight:700;display:grid;place-items:center;
}
.faq{margin:1.2em 0}
.faq dt{
  margin-top:1.3em;font-weight:700;color:var(--text-strong);font-size:16.5px;
}
.faq dt:first-child{margin-top:0}
.faq dd{margin:.4em 0 0;color:var(--text)}

/* ---------- 卡片网格 ---------- */
.grid{display:grid;gap:16px}
.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.group-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));margin:1.2em 0 1.8em}
.group-card{
  padding:20px;background:var(--paper);border:1px solid var(--border);
  border-radius:var(--radius);box-shadow:var(--shadow-1);
  display:flex;flex-direction:column;gap:8px;
}
.group-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-2)}
.group-card .num{
  font-size:12px;letter-spacing:.12em;color:var(--teal-ink);
}
.group-card h3{margin:0;font-size:19px;color:var(--text-strong);line-height:1.4}
.group-card h3 a{color:inherit}
.group-card p{margin:0;color:var(--muted);font-size:15px;line-height:1.7}
.group-card .leader{margin-top:auto;padding-top:10px;font-size:13.5px;color:var(--muted);border-top:1px solid var(--border)}
.group-card .leader b{color:var(--text-strong);font-weight:600}

.card{
  padding:20px;background:var(--paper);border:1px solid var(--border);
  border-radius:var(--radius);box-shadow:var(--shadow-1);
  display:flex;flex-direction:column;gap:8px;
}
.card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-2)}
.card h3{margin:0;font-size:18px;line-height:1.45;color:var(--text-strong)}
.card h3 a{color:inherit}
.card p{margin:0;color:var(--muted);font-size:14.8px;line-height:1.7}
.card .meta{font-size:13px;color:var(--muted);margin-top:auto;padding-top:8px}

/* ---------- 医师团队 ---------- */
.tier{margin:44px 0 0}
.tier:first-of-type{margin-top:8px}
.tier-head{display:flex;align-items:baseline;gap:12px;margin:0 0 16px}
.tier-head h2{margin:0;font-size:20px;color:var(--text-strong)}
.tier-head .count{font-size:13.5px;color:var(--muted)}
.doctor-grid{display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}
.doctor-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
/* 补齐 3 列网格末行空位的轻量入口 */
.grid-more{
  display:flex;flex-direction:column;justify-content:flex-start;gap:6px;padding:20px;align-self:start;
  border:1px dashed var(--border-strong);border-radius:var(--radius);
  color:var(--muted);
}
.grid-more b{font-size:15.5px;font-weight:700;color:var(--text-strong)}
.grid-more span{font-size:13.5px;line-height:1.6}
.grid-more:hover{
  border-color:var(--teal);background:var(--paper);color:var(--teal-ink);text-decoration:none;
}
.grid-more:hover b{color:var(--teal-ink)}
.doctor{
  padding:20px;background:var(--paper);border:1px solid var(--border);
  border-radius:var(--radius);box-shadow:var(--shadow-1);
}
.doctor-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;margin-bottom:2px}
.doctor-head h3{margin:0;font-size:20px;color:var(--text-strong);letter-spacing:.02em}
.doctor-title{font-size:14px;color:var(--teal-ink);font-weight:600}
.doctor-role{font-size:13px;color:var(--muted)}
.doctor-focus{margin:10px 0 0;color:var(--text);font-size:15px;line-height:1.75}
.doctor-meta{margin:10px 0 0;font-size:13px;color:var(--muted)}
.doctor-soc{margin:8px 0 0;padding:0;list-style:none;font-size:12.8px;color:var(--muted)}
.doctor-soc li{margin:2px 0}
.doctor-note{
  margin:10px 0 0;padding:9px 12px;background:var(--surface);
  border-radius:var(--radius-sm);font-size:13.2px;color:var(--muted);
}

/* ---------- 病种页 ---------- */
.disease-grid{display:grid;gap:14px;grid-template-columns:repeat(3,minmax(0,1fr))}
.disease-card{
  padding:18px;background:var(--paper);border:1px solid var(--border);
  border-radius:var(--radius);box-shadow:var(--shadow-1);
  display:flex;flex-direction:column;gap:6px;
}
.disease-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-2)}
.disease-card h3{margin:0;font-size:17.5px;color:var(--text-strong);line-height:1.4}
.disease-card h3 a{color:inherit}
.disease-card p{margin:0;font-size:14.5px;color:var(--muted);line-height:1.7}
.disease-card .group{font-size:12.5px;color:var(--teal-ink);margin-top:auto;padding-top:8px}

.category{margin:36px 0 0}
.category-head{display:flex;align-items:baseline;gap:12px;margin:0 0 12px;flex-wrap:wrap}
.category-head h2{margin:0;font-size:21px;color:var(--text-strong)}
.category-head span{font-size:13.5px;color:var(--muted)}
.category ul{margin:0;padding-left:1.25em;columns:2;column-gap:32px}
.category li{margin:.35em 0;font-size:15px;break-inside:avoid}

/* ---------- 页尾 ---------- */
.site-footer{
  margin-top:64px;padding:44px 0 40px;background:var(--deep);color:#DCEAE7;
  border-top:1px solid var(--border);
}
.site-footer a{color:#EFF7F5}
.site-footer .lockup{width:280px;max-width:70%;height:auto;margin-bottom:18px}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:32px}
.footer-grid h2{font-size:13px;letter-spacing:.14em;color:#9FC4BD;margin:0 0 12px;font-weight:600}
.footer-grid ul{list-style:none;margin:0;padding:0;font-size:14.5px}
.footer-grid li{margin:.45em 0;color:#C8DBD7}
.footer-note{
  margin-top:30px;padding-top:20px;border-top:1px solid rgba(255,255,255,.16);
  font-size:13px;color:#A9C4BF;line-height:1.75;
}
.footer-note p{margin:.35em 0}

/* ---------- 其他 ---------- */
.next-links{display:flex;flex-wrap:wrap;gap:10px;margin:2.2em 0 0}
.facts{list-style:none;padding:0;margin:1.1em 0 1.4em}
.facts li{
  position:relative;padding:11px 0 11px 26px;border-bottom:1px solid var(--border);
  font-size:15.5px;
}
.facts li::before{
  content:"";position:absolute;left:6px;top:20px;width:7px;height:7px;border-radius:50%;
  background:var(--teal);
}
.facts li:last-child{border-bottom:0}
.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}

/* ---------- 响应式 ---------- */
@media (max-width:1100px){
  .doctor-grid.cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:960px){
  .group-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .doctor-grid{grid-template-columns:1fr}
  .doctor-grid.cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .disease-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .category ul{columns:1}
  .footer-grid{grid-template-columns:1fr 1fr;gap:26px}
}
@media (max-width:760px){
  body{font-size:16px}
  .header-inner{min-height:auto;padding:10px 0 8px;gap:8px}
  .site-nav{width:100%;margin-left:0;order:3}
  .site-nav ul{gap:0;padding-bottom:2px;mask-image:linear-gradient(90deg,#000 92%,transparent)}
  .site-nav a{padding:7px 11px;font-size:14px}
  .hero-inner{padding-top:44px;padding-bottom:38px}
  .quick{grid-template-columns:1fr;gap:8px;margin-top:26px}
  .quick a{flex-direction:row;align-items:baseline;gap:10px;padding:12px 14px}
  .quick .k{flex:0 0 4.5em}
  .section{padding:40px 0}
  .disease-grid{grid-template-columns:1fr}
  .group-grid{grid-template-columns:1fr}
  .doctor-grid.cols-3{grid-template-columns:1fr}
  .info-card dl{grid-template-columns:1fr;gap:2px 0}
  .info-card dt{margin-top:10px}
  .footer-grid{grid-template-columns:1fr}
  .site-footer .lockup{width:230px}
  .prose h2{margin-top:2em}
}
@media (max-width:420px){
  :root{--gut:16px}
  .brand-text b{font-size:15px}
  .disease-grid,.group-grid{grid-template-columns:1fr}
}

/* ---------- 打印 ---------- */
@media print{
  .site-header,.site-footer,.next-links,.hero-actions,.site-nav{display:none}
  body{background:#fff;color:#000;font-size:12pt}
  a{color:#000;text-decoration:underline}
  .callout,.lead-block,.card,.doctor,.disease-card{border:1px solid #999;background:#fff;box-shadow:none}
}

/* ============================================================
   科室年会页（设计参考《2026 年会报名落地页》）
   ============================================================ */
.page-meeting{background:var(--page)}
.page-meeting h1,.page-meeting .msec h2,.page-meeting .mfinal h2{
  font-family:"Noto Serif SC","Songti SC","STSong","SimSun",Georgia,serif;
  font-weight:600;letter-spacing:0;
}
.mhero{
  position:relative;overflow:hidden;color:#fff;
  background:
    radial-gradient(115% 85% at 6% -6%, rgba(18,160,145,.52), transparent 56%),
    radial-gradient(85% 70% at 94% 4%, rgba(18,160,145,.26), transparent 62%),
    linear-gradient(180deg,#0B302B 0%,#08211F 58%,#061917 100%);
}
.mhero::after{
  content:"";position:absolute;right:-170px;bottom:-240px;width:520px;height:520px;
  border-radius:50%;border:1px solid rgba(127,227,210,.20);
  box-shadow:0 0 0 56px rgba(127,227,210,.045), 0 0 0 132px rgba(127,227,210,.03);
  pointer-events:none;
}
.mhero-inner{
  position:relative;z-index:1;display:grid;gap:44px;
  grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);
  align-items:center;padding:68px var(--gut) 58px;
}
.mhero .eyebrow{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.22);color:#D9F0EB;margin-bottom:20px}
.mhero .eyebrow::before{content:"";width:6px;height:6px;border-radius:50%;background:#7FE3D2}
.mhero h1{
  margin:0 0 14px;font-size:clamp(29px,4.1vw,46px);line-height:1.24;
  letter-spacing:-.005em;color:#fff;font-weight:800;
}
.mhero-sub{margin:0 0 22px;font-size:clamp(14.5px,1.5vw,17.5px);color:#BEDCD6}
.mhero-theme{
  margin:0 0 18px;padding-left:14px;border-left:3px solid #35C4B0;
  color:#DCEFE9;font-size:15.5px;line-height:1.8;max-width:36em;
}
.mhero-theme b{color:#8FE9D9;font-weight:700}
.mhero-motto{display:flex;align-items:center;gap:10px;margin:0 0 28px;font-size:14.5px;letter-spacing:.06em;color:#DCEFE9}
.mhero-motto::before{content:"";width:22px;height:2px;background:var(--gold);flex:0 0 auto}
.mhero-cta{display:flex;flex-wrap:wrap;gap:12px}
.btn-ghost-light{background:rgba(255,255,255,.08);color:#fff;border-color:rgba(255,255,255,.32)}
.btn-ghost-light:hover{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.5);color:#fff}
.btn-quiet{background:rgba(255,255,255,.07);color:#BFD9D4;border-color:rgba(255,255,255,.18);cursor:default}
.btn-quiet:hover{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.18);color:#BFD9D4}

.mfacts{
  background:rgba(255,255,255,.065);border:1px solid rgba(255,255,255,.15);
  border-radius:var(--radius);padding:24px 26px;
}
.mfacts dl{margin:0;display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px 18px;align-items:start}
.mfacts dt{font-size:12.5px;letter-spacing:.12em;color:#9FC4BD;padding-top:3px}
.mfacts dd{margin:0;font-size:15.5px;line-height:1.65;color:#fff;font-weight:600}
.mfacts-note{
  margin:18px 0 0;padding-top:14px;border-top:1px solid rgba(255,255,255,.12);
  font-size:12.8px;color:#A9C4BF;line-height:1.7;
}
.tentative{
  display:inline-block;margin-left:6px;padding:1px 6px;border-radius:4px;vertical-align:2px;
  font-size:11px;font-weight:600;letter-spacing:.08em;
  color:var(--gold-ink);background:var(--gold-soft);border:1px solid var(--gold-border);
}
.mhero .tentative{color:#F0DCAE;background:rgba(196,160,89,.16);border-color:rgba(196,160,89,.38)}

.mindex{border-bottom:1px solid var(--border);background:var(--paper)}
.mindex .wrap{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;padding-top:8px;padding-bottom:8px}
.mindex .wrap::-webkit-scrollbar{display:none}
.mindex a{
  padding:8px 13px;border-radius:var(--radius-pill);font-size:14px;color:var(--text);
  white-space:nowrap;
}
.mindex a:hover{background:var(--surface-2);text-decoration:none}

.msec{padding:60px 0}
.msec-tint{background:var(--paper);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.msec > .wrap{max-width:980px}
.msec-head{max-width:46em;margin-bottom:30px}
.msec-head .eyebrow{margin-bottom:14px}
.msec h2{
  margin:0 0 14px;font-size:clamp(22px,2.5vw,29px);line-height:1.4;
  color:var(--text-strong);letter-spacing:-.005em;
}
.msec .lede{margin:0;color:var(--muted);font-size:16.5px;line-height:1.85}
.mnote{margin:22px 0 0;font-size:13px;color:var(--muted);line-height:1.7}

.theme-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.theme-card{
  padding:22px;background:var(--paper);border:1px solid var(--border);
  border-radius:var(--radius);box-shadow:var(--shadow-1);
}
.msec-tint .theme-card{background:var(--surface)}
.theme-card h3{
  display:flex;align-items:center;gap:8px;margin:0 0 10px;
  font-size:17.5px;color:var(--text-strong);line-height:1.5;
}
.theme-card h3 svg{width:19px;height:19px;color:var(--teal);flex:0 0 auto}
.theme-card p{margin:0;font-size:14.8px;line-height:1.8;color:var(--muted)}
.theme-tags{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0 0;padding:0;list-style:none}
.theme-tags li{
  font-size:12.5px;color:var(--teal-ink);background:var(--teal-soft);
  border-radius:var(--radius-pill);padding:3px 10px;
}

.day-chips{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 22px}
.day-chip{
  display:flex;flex-direction:column;gap:2px;padding:10px 16px;
  border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);
}
.day-chip b{font-size:14.5px;color:var(--text-strong)}
.day-chip span{font-size:12.8px;color:var(--muted)}

.timeline{list-style:none;margin:0;padding:0}
.timeline li{
  display:grid;grid-template-columns:96px minmax(0,1fr);gap:6px 20px;
  padding:16px 0;border-top:1px solid var(--border);
}
.timeline li:first-child{border-top:0;padding-top:0}
.timeline .t{font-size:13px;font-weight:600;color:var(--teal-ink);letter-spacing:.03em;padding-top:3px}
.timeline h3{margin:0;font-size:16.5px;color:var(--text-strong);line-height:1.6}
.timeline p{margin:5px 0 0;font-size:14.5px;color:var(--muted);line-height:1.8}

.signup{
  display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:24px;align-items:center;
  padding:26px 28px;background:var(--teal-soft);border:1px solid var(--border);border-radius:var(--radius);
}
.signup h3{margin:0 0 8px;font-size:18px;color:var(--text-strong)}
.signup p{margin:0;font-size:15px;color:var(--muted);line-height:1.8}
.signup-actions{display:flex;justify-content:flex-end}
.signup-wait{background:var(--surface);border-style:dashed}

.travel-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.travel-card{padding:20px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}
.travel-card h3{margin:0 0 8px;font-size:16px;color:var(--text-strong)}
.travel-card p{margin:0;font-size:14.5px;color:var(--muted);line-height:1.8}

.marchive{list-style:none;margin:0;padding:0}
.marchive-item{
  display:grid;grid-template-columns:96px minmax(0,1fr);gap:6px 20px;
  padding:24px 0;border-top:1px solid var(--border);
}
.marchive-item:first-child{border-top:0;padding-top:0}
.marchive-year{margin:0;padding-top:2px;font-size:13px;font-weight:600;color:var(--muted)}
.marchive-year b{
  display:block;font-family:var(--song);font-size:26px;line-height:1.2;
  color:var(--text-strong);letter-spacing:.01em;
}
.marchive-year span{display:block;margin-top:2px;font-weight:500;color:var(--teal-ink)}
.marchive-body h3{margin:0;font-size:17px;line-height:1.6;color:var(--text-strong)}
.marchive-meta{margin:5px 0 0;font-size:13px;color:var(--muted)}
.marchive-text{margin:8px 0 0;font-size:14.5px;line-height:1.85;color:var(--muted)}
.marchive-tags{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 0;padding:0;list-style:none}
.marchive-tags li{
  font-size:12.5px;color:var(--teal-ink);background:var(--teal-soft);
  border-radius:var(--radius-pill);padding:3px 10px;
}
.marchive-stats{display:flex;flex-wrap:wrap;gap:14px 26px;margin:14px 0 0;padding:0}
.marchive-stats dt{font-size:12.5px;color:var(--muted)}
.marchive-stats dd{margin:2px 0 0;font-size:15px;font-weight:600;color:var(--text-strong)}
.marchive-cover{
  margin:16px 0 0;border:1px solid var(--border);border-radius:var(--radius-sm);
  overflow:hidden;background:var(--surface);
}
.marchive-cover img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}
.marchive-link{margin:12px 0 0;font-size:14px}
.marchive-link a{font-weight:600}
.marchive-empty{
  padding:26px 28px;background:var(--surface);border:1px dashed var(--border);
  border-radius:var(--radius);
}
.marchive-empty p{margin:0;font-size:14.5px;line-height:1.85;color:var(--muted)}
.marchive-empty .mnote{margin-top:8px;font-size:13px}

/* —— 资源：手术直播回放 & 课件分享 —— */
.marchive-resources{margin-top:16px}
.marchive-resources .marh{
  margin:0 0 10px;font-size:13px;font-weight:700;letter-spacing:.12em;
  color:var(--teal-ink);
}
/* 回放视频：2 列网格，每格视频 + 元信息 */
.marchive-back{list-style:none;margin:0;padding:0;display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}
.mb-item{
  background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);
  overflow:hidden;
}
.mb-video{position:relative;aspect-ratio:16/9;background:#0b1412}
.mb-video video,.mb-video iframe{
  position:absolute;inset:0;width:100%;height:100%;border:0;background:#0b1412;
}
.mb-meta{padding:12px 14px}
.mb-meta h4{margin:0;font-size:14px;line-height:1.6;color:var(--text-strong)}
.mb-meta .mb-sub{margin:4px 0 0;font-size:12.5px;color:var(--muted);line-height:1.7}
/* 课件下载列表：文件类型标签 + 标题 + 箭头 */
.marchive-slides{list-style:none;margin:0;padding:0;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--paper)}
.ms-item{border-bottom:1px solid var(--border)}
.ms-item:last-child{border-bottom:0}
.ms-link{
  display:flex;align-items:stretch;gap:12px;padding:12px 14px;
  color:var(--text);text-decoration:none;
}
.ms-link:hover{background:var(--teal-soft);color:var(--teal-ink);text-decoration:none}
.ms-ext{
  flex:0 0 44px;align-self:center;
  font-size:11px;font-weight:700;letter-spacing:.08em;
  padding:4px 0;border-radius:4px;text-align:center;
  background:var(--surface-2);color:var(--teal-ink);border:1px solid var(--border);
}
.ms-body{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}
.ms-body b{font-size:14px;font-weight:600;color:var(--text-strong);line-height:1.55}
.ms-link:hover .ms-body b{color:var(--teal-ink)}
.ms-body small{font-size:12.5px;color:var(--muted);line-height:1.65}
.ms-arrow{flex:0 0 auto;align-self:center;color:var(--muted);font-size:14px}
/* 移动端回放网格单列 */
@media (max-width:820px){
  .marchive-back{grid-template-columns:1fr}
}

.mfinal{background:var(--deep);color:#fff;padding:56px 0}
.mfinal h2{margin:0 0 12px;font-size:clamp(21px,2.5vw,27px);color:#fff;line-height:1.45}
.mfinal p{margin:0;color:#CFE5E1;font-size:15.5px;line-height:1.85;max-width:46em}
.mfinal .next-links{margin-top:24px}
.mfinal .btn-primary{background:#fff;border-color:#fff;color:var(--teal-ink)}
.mfinal .btn-primary:hover{background:#EAF6F3;border-color:#EAF6F3;color:var(--teal-ink)}
.mfinal .btn-ghost-light{background:transparent;color:#fff;border-color:rgba(255,255,255,.36)}
.mfinal .btn-ghost-light:hover{background:rgba(255,255,255,.12)}

@media (max-width:960px){
  .mhero-inner{grid-template-columns:1fr;gap:32px;padding:52px var(--gut) 46px}
  .theme-grid,.travel-grid{grid-template-columns:1fr}
  .msec{padding:46px 0}
  .signup{grid-template-columns:1fr}
  .signup-actions{justify-content:flex-start}
}
@media (max-width:760px){
  .timeline li{grid-template-columns:1fr;gap:2px}
  .timeline .t{padding-top:0}
  .marchive-item{grid-template-columns:1fr;gap:2px}
  .marchive-year{display:flex;align-items:baseline;gap:8px;padding-top:0}
  .marchive-year b{font-size:21px}
  .marchive-year span{margin-top:0}
  .mhero-cta .btn{flex:1 1 auto;justify-content:center}
  .mfacts{padding:20px}
  .mindex .wrap{mask-image:linear-gradient(90deg,#000 92%,transparent)}
}

/* ============================================================
   年会在线报名
   ============================================================ */
.callout-links{display:flex;flex-wrap:wrap;gap:18px;align-items:center;margin-top:4px}
.callout-links .link-strong{font-weight:700;color:var(--teal-cta)}

.page-register .page-header{padding-bottom:26px}
.regsec{padding-top:0}
.page-register .regsec > .wrap{max-width:920px}

.regcard{
  background:var(--paper);border:1px solid var(--border);border-radius:var(--radius);
  box-shadow:var(--shadow-1);padding:30px 32px 26px;
}
.reg-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px}
.field{display:flex;flex-direction:column;gap:7px;margin:0;padding:0;border:0;min-width:0}
.field-wide{grid-column:1 / -1;margin-top:18px}
.reg-grid .field-wide{grid-column:auto}
.field-label{
  display:flex;align-items:center;gap:6px;
  font-size:13.5px;font-weight:600;letter-spacing:.02em;color:var(--text-strong);padding:0;
}
.field-label i{font-style:normal;color:var(--danger);font-size:12px}
.field-optional{font-weight:400;color:var(--muted);font-size:12px;letter-spacing:.06em}
.field input[type="text"],.field input[type="tel"],.field select,.field textarea{
  width:100%;box-sizing:border-box;
  font-family:inherit;font-size:15.5px;color:var(--text);
  background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);
  padding:11px 13px;transition:border-color .15s,background .15s;
}
.field textarea{resize:vertical;min-height:84px;line-height:1.7}
.field input:focus,.field select:focus,.field textarea:focus{
  outline:0;border-color:var(--teal);background:var(--paper);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--teal) 18%,transparent);
}
.field input::placeholder,.field textarea::placeholder{color:color-mix(in srgb,var(--muted) 78%,transparent)}
.field-msg{min-height:0;font-size:12.5px;color:var(--danger);line-height:1.5}

.choices{display:flex;flex-wrap:wrap;gap:8px}
.choice{
  display:inline-flex;align-items:center;gap:7px;position:relative;
  padding:8px 13px;border:1px solid var(--border-strong);border-radius:var(--radius-pill);
  background:var(--surface);font-size:14px;color:var(--text);cursor:pointer;
  transition:border-color .15s,background .15s;
}
.choice:hover{border-color:var(--teal)}
.choice input{accent-color:var(--teal-cta);margin:0;width:15px;height:15px}
.choice:has(input:checked){background:var(--teal-soft);border-color:var(--teal);color:var(--teal-ink);font-weight:600}

.consent{
  display:flex;gap:10px;align-items:flex-start;margin:22px 0 0;
  padding:14px 16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);
  font-size:13.5px;line-height:1.75;color:var(--muted);cursor:pointer;
}
.consent input{accent-color:var(--teal-cta);width:16px;height:16px;flex:0 0 auto;margin-top:3px}
.consent b{color:var(--text-strong);font-weight:600}

.reg-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:22px}
.reg-actions .btn-primary{padding:12px 26px;font-size:15.5px}
.reg-hint{margin:0;font-size:12.8px;color:var(--muted);line-height:1.6;flex:1 1 260px}
.reg-alert{
  margin:16px 0 0;padding:10px 14px;border-radius:var(--radius-sm);
  background:var(--danger-soft);border:1px solid var(--danger-border);
  color:var(--danger);font-size:13.5px;line-height:1.6;
}

.regdone{
  background:var(--paper);border:1px solid var(--border);border-radius:var(--radius);
  box-shadow:var(--shadow-1);padding:36px 32px;text-align:left;
}
.regdone h2{margin:0 0 10px;font-family:"Noto Serif SC","Songti SC","STSong","SimSun",Georgia,serif;font-size:26px;color:var(--text-strong)}
.regdone-lead{margin:0 0 22px;color:var(--muted);font-size:15.5px;line-height:1.8}
.reggcode{
  display:flex;align-items:center;gap:16px;flex-wrap:wrap;
  padding:16px 18px;background:var(--teal-soft);border:1px solid var(--border);border-radius:var(--radius-sm);
}
.reggcode .k{font-size:12.5px;letter-spacing:.1em;color:var(--muted)}
.reggcode .v{
  font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:22px;font-weight:700;
  letter-spacing:.06em;color:var(--teal-ink);
}
.btn-small{padding:7px 14px;font-size:13px}
.regdone .next-links{margin-top:24px}

.regn{
  margin-top:28px;padding:22px 24px;background:var(--surface);
  border:1px solid var(--border);border-radius:var(--radius);
}
.regn h3{margin:0 0 10px;font-size:16px;color:var(--text-strong)}
.regn ul{margin:0 0 10px;padding-left:1.25em;color:var(--muted);font-size:14px;line-height:1.85}
.regn p{margin:0;font-size:13px;color:var(--muted)}

@media (max-width:760px){
  .regcard{padding:22px 18px}
  .reg-grid{grid-template-columns:1fr}
  .reg-actions{flex-direction:column;align-items:stretch}
  .reg-actions .btn-primary{width:100%}
  .regdone{padding:26px 20px}
  .reggcode{gap:10px}
  .reggcode .v{font-size:19px}
}

/* ============================================================
   首页焦点轮播
   ============================================================ */
.bshow{position:relative;background:#0d2b2b;color:#f3f7f5;overflow:hidden}
.bshow-stage{position:relative;min-height:520px}
.bslide{display:none}
.bslide.is-on{display:block;animation:bfade .6s ease both}
@keyframes bfade{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.bslide:nth-child(1){background:
  radial-gradient(1100px 520px at 78% -10%,rgba(70,170,150,.34),transparent 62%),
  linear-gradient(120deg,rgba(12,42,41,.9) 0%,rgba(16,57,58,.86) 52%,rgba(10,34,36,.92) 100%)}
.bslide:nth-child(2){background:
  radial-gradient(900px 480px at 82% 0%,rgba(200,150,80,.28),transparent 60%),
  linear-gradient(120deg,rgba(19,42,42,.9) 0%,rgba(27,58,51,.86) 55%,rgba(13,36,34,.92) 100%)}
.bslide:nth-child(3){background:
  radial-gradient(900px 500px at 20% 0%,rgba(90,140,190,.28),transparent 60%),
  linear-gradient(120deg,rgba(11,36,48,.9) 0%,rgba(18,52,66,.86) 55%,rgba(10,30,40,.92) 100%)}
.bslide-inner{padding:86px var(--gut) 74px;max-width:1200px}
.bshow .eyebrow,.mzone .eyebrow{
  background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.22);
}
.bshow .eyebrow{color:#9fd6c6;letter-spacing:.18em}
.bshow h1,.bshow .bslide-title{
  margin:14px 0 0;font-family:"Noto Serif SC","Songti SC","STSong","SimSun",Georgia,serif;
  font-size:clamp(32px,4.6vw,58px);line-height:1.22;font-weight:600;letter-spacing:.02em;color:#f6faf8;
}
.bshow h1 span,.bshow .bslide-title span{display:block;margin-top:14px;font-size:clamp(15px,1.5vw,19px);font-weight:400;letter-spacing:.12em;color:#b9d8cf}
.bslide-lede{max-width:640px;margin:22px 0 0;font-size:16.5px;line-height:1.9;color:#cfded9}
.bshow .hero-actions{margin-top:30px}
.btn-ghost-light{
  background:rgba(255,255,255,.08);color:#eaf3f0;border-color:rgba(255,255,255,.32);
}
.btn-ghost-light:hover{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.6)}
.bshow-ctrl{
  position:absolute;left:50%;transform:translateX(-50%);bottom:22px;
  width:100%;max-width:1200px;box-sizing:border-box;padding:0 32px;
  display:flex;align-items:center;justify-content:space-between;gap:20px;
}
.bdots{display:flex;gap:9px}
.bdot{
  width:30px;height:5px;border-radius:3px;border:0;padding:0;cursor:pointer;
  background:rgba(255,255,255,.28);transition:background .2s;
}
.bdot.is-on{background:#7fd0ba}
.barrows{display:flex;gap:8px}
.barrows button{
  width:34px;height:34px;border-radius:50%;cursor:pointer;
  border:1px solid rgba(255,255,255,.35);background:transparent;color:#eaf3f0;font-size:15px;
}
.barrows button:hover{background:rgba(255,255,255,.14)}

/* 快捷入口 */
.quickband{background:var(--paper);border-bottom:1px solid var(--border)}
.quick-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:0}
.qentry{
  display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;
  padding:26px 8px 24px;text-decoration:none;color:var(--text);
  border-right:1px solid var(--border);transition:background .16s;
}
.qentry:last-child{border-right:0}
.qentry:hover{background:var(--surface)}
.qentry svg{width:26px;height:26px;color:var(--teal-ink)}
.qentry b{font-size:15px;font-weight:600;letter-spacing:.03em}
.qentry span{font-size:12.5px;color:var(--muted);letter-spacing:.02em}

/* 数据带 */
.statband{background:var(--surface);border-bottom:1px solid var(--border);padding:0 var(--gut)}
.statband .wrap{padding:0;max-width:calc(var(--maxw) - var(--gut) * 2)}
.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--border)}
.stat-grid > div{background:var(--surface);padding:30px 20px;text-align:center}
.stat-grid b{
  display:block;font-family:"Noto Serif SC","Songti SC",Georgia,serif;
  font-size:36px;line-height:1;color:var(--teal-ink);letter-spacing:.02em;
}
.stat-grid span{display:block;margin-top:10px;font-size:13px;color:var(--muted);letter-spacing:.04em}

/* 年会专区 */
.mzone{background:linear-gradient(135deg,#0d2f2e,#123c37 60%,#0b2626);color:#eaf3ef;padding:64px 0}
.mzone .eyebrow{color:#8fd3c0}
.mzone-inner{display:grid;grid-template-columns:1.5fr .8fr;gap:44px;align-items:center}
.mzone h2{
  margin:8px 0 0;font-family:"Noto Serif SC","Songti SC",Georgia,serif;
  font-size:clamp(28px,3vw,38px);color:#f5faf7;
}
.mzone .lede{margin:16px 0 0;color:#c2d8d2;line-height:1.9;font-size:15.5px;max-width:620px}
.mzone-meta{display:grid;grid-template-columns:auto 1fr;gap:8px 18px;margin:24px 0 0;font-size:14.5px}
.mzone-meta dt{color:#8fb6ab;letter-spacing:.08em}
.mzone-meta dd{margin:0;color:#e6f1ed}
.tentative{
  display:inline-block;margin-left:8px;padding:1px 7px;border-radius:3px;
  border:1px solid rgba(196,160,89,.42);background:rgba(196,160,89,.16);
  font-size:11.5px;letter-spacing:.06em;color:#F0DCAE;vertical-align:1px;
}
.mzone .next-links{margin-top:26px}
.mzone .btn{border-color:rgba(255,255,255,.28);color:#eaf3f0;background:rgba(255,255,255,.06)}
.mzone .btn:hover{background:rgba(255,255,255,.14)}
.mzone .btn-primary{background:#1f7a68;border-color:#1f7a68;color:#fff}
.mzone-side{
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);
  border-radius:var(--radius);padding:26px 24px;backdrop-filter:blur(2px);
}
.mzone-side-k{margin:0;font-size:12px;letter-spacing:.14em;color:#9cc6ba}
.countdown{margin-top:10px;font-size:13px;color:#cfe4de;line-height:1.9}
.countdown b{
  font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:26px;
  color:#fff;margin:0 2px;
}
.mzone-count{margin:18px 0 0;padding-top:16px;border-top:1px solid rgba(255,255,255,.16);font-size:13.5px;color:#c2d8d2}
.mzone-count b{font-size:20px;color:#8fe0c7;margin:0 3px}
.mzone-note{margin:8px 0 0;font-size:12px;color:#93b6ac}

/* 病例 */
.case-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.case-card{
  display:flex;flex-direction:column;height:100%;box-sizing:border-box;
  background:var(--paper);border:1px solid var(--border);border-radius:var(--radius);
  padding:24px 24px 20px;transition:border-color .18s,box-shadow .18s;
}
.case-card:hover{border-color:var(--teal);box-shadow:var(--shadow-1)}
.case-tag{
  align-self:flex-start;padding:3px 10px;border-radius:var(--radius-pill);
  background:var(--teal-soft);color:var(--teal-ink);font-size:12px;letter-spacing:.06em;
}
.case-card h3{margin:13px 0 0;font-size:18px;line-height:1.55;font-weight:600}
.case-card h3 a{color:var(--text-strong);text-decoration:none}
.case-card h3 a:hover{color:var(--teal-cta)}
.case-card > p{margin:10px 0 0;font-size:14px;line-height:1.8;color:var(--muted)}
.case-core{
  margin-top:14px !important;padding:12px 14px;border-left:3px solid var(--teal);
  background:var(--surface);color:var(--text) !important;font-size:13.5px !important;
}
.case-core b{display:block;margin-bottom:4px;font-size:11.5px;letter-spacing:.14em;color:var(--teal-ink)}
.case-meta{margin-top:auto;padding-top:16px;font-size:12px;color:var(--muted);letter-spacing:.04em}

/* 双栏资讯 */
.news-2col{display:grid;grid-template-columns:1.55fr .75fr;gap:44px}
.section-head.tight{margin-bottom:16px;align-items:flex-end}
.news-tabs{display:flex;gap:6px}
.news-tab,.chip{
  cursor:pointer;font:inherit;font-size:13.5px;padding:7px 14px;border-radius:var(--radius-pill);
  border:1px solid var(--border-strong);background:var(--paper);color:var(--muted);
  transition:all .15s;
}
.news-tab.is-on,.chip.is-on{background:var(--teal-ink);border-color:var(--teal-ink);color:#fff}
.news-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--border)}
.news-list li{border-bottom:1px solid var(--border)}
.news-list a{
  display:grid;grid-template-columns:96px 1fr auto;gap:16px;align-items:baseline;
  padding:16px 2px;text-decoration:none;color:var(--text);transition:background .15s;
}
.news-list a:hover{background:var(--surface)}
.news-list time{font-family:ui-monospace,Menlo,monospace;font-size:12.5px;color:var(--muted)}
.news-list .nt{font-size:15.5px;line-height:1.6;color:var(--text-strong)}
.news-list a:hover .nt{color:var(--teal-cta)}
.news-list .nc{font-size:12px;color:var(--teal-ink);white-space:nowrap}
.news-side h3{margin:0 0 14px;font-size:16px;letter-spacing:.04em}
.media-list{list-style:none;margin:0;padding:0}
.media-list li{padding:16px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);margin-bottom:12px}
.media-list b{display:block;font-size:14.5px;line-height:1.6;color:var(--text-strong)}
.media-list span{display:block;margin-top:6px;font-size:13px;line-height:1.7;color:var(--muted)}
.media-empty{border-style:dashed !important;background:transparent !important}
/* 右栏补位：科室入口清单，填平媒体报道稀少时的留白 */
.news-side .side-next{margin-top:26px}
.side-links{list-style:none;margin:0;padding:0;border-top:1px solid var(--border)}
.side-links li{border-bottom:1px solid var(--border)}
.side-links a{
  display:flex;justify-content:space-between;align-items:baseline;gap:14px;
  padding:12px 2px;font-size:14.5px;color:var(--text);text-decoration:none;
}
.side-links a:hover{color:var(--teal-cta);text-decoration:none}
.side-links span{font-size:12.5px;color:var(--muted);white-space:nowrap}

/* 科普与进修 */
.duoban{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.duoban-card{
  padding:34px 32px;border:1px solid var(--border);border-radius:var(--radius);
  background:var(--surface);
}
.duoban-card h2{margin:8px 0 0;font-family:"Noto Serif SC","Songti SC",Georgia,serif;font-size:26px;color:var(--text-strong)}
.duoban-card p{margin:12px 0 0;font-size:14.5px;line-height:1.9;color:var(--muted)}
.duoban-card .next-links{margin-top:20px}
.duoban-dark{background:linear-gradient(135deg,#123a36,#0d2a2a);border-color:#0d2a2a;color:#eaf3ef}
.duoban-dark h2{color:#f5faf7}
.duoban-dark p{color:#c2d8d2}
/* 卡片内的眉标被 .duoban-card p / .duoban-dark p 的颜色规则覆盖，需单独复位 */
.duoban-card .eyebrow{
  color:var(--teal-ink);background:var(--teal-soft);border-color:var(--border);
}
.duoban-dark .eyebrow{
  color:#DDF3ED;background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.24);
}

/* 列表页筛选 */
.filterbar{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:26px}
.news-groups[hidden]{display:none}
.news-full{list-style:none;margin:0 0 34px;padding:0;border-top:1px solid var(--border)}
.newsitem{
  display:grid;grid-template-columns:110px 1fr auto;gap:18px;align-items:baseline;
  padding:20px 4px;border-bottom:1px solid var(--border);
}
.newsitem time{font-family:ui-monospace,Menlo,monospace;font-size:12.5px;color:var(--muted)}
.newsitem h3{margin:0;font-size:17px;line-height:1.6}
.newsitem h3 a{color:var(--text-strong);text-decoration:none}
.newsitem h3 a:hover{color:var(--teal-cta)}
.newsitem p{margin:6px 0 0;font-size:13.5px;line-height:1.8;color:var(--muted)}
.newsitem .nc{font-size:12px;color:var(--teal-ink);white-space:nowrap}

/* 文章 */
/* 与页头（面包屑、H1）左轴对齐；正文列收窄，单行 40 字左右更易读 */
.post{max-width:740px;margin:0}
.postmeta{margin:0 0 14px;font-family:ui-monospace,Menlo,monospace;font-size:12.5px;color:var(--muted);letter-spacing:.04em}
.postlede{
  margin:0 0 28px !important;padding:0 0 22px;border-bottom:1px solid var(--border);
  font-size:17px !important;line-height:1.85;color:var(--text) !important;
}
.post h2{
  margin:34px 0 10px;font-family:"Noto Serif SC","Songti SC",Georgia,serif;
  font-size:21px;color:var(--text-strong);
}
.post p,.post li{font-size:16.5px;line-height:1.85;color:var(--text)}
.post ul,.post ol{padding-left:1.35em}
.post a{color:var(--teal-cta)}
.case-post .case-core-box{
  margin:0 0 26px;padding:18px 20px;border-left:3px solid var(--teal);
  background:var(--surface);border-radius:0 var(--radius-sm) var(--radius-sm) 0;
  font-size:16px;line-height:1.75;color:var(--text);
}
.case-core-box b{display:block;margin-bottom:6px;font-size:11.5px;letter-spacing:.14em;color:var(--teal-ink)}
.postnav{
  display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;
  margin-top:40px;padding-top:20px;border-top:1px solid var(--border);
}
.postnav a{font-size:14px;color:var(--teal-cta);text-decoration:none}
.postnav a:hover{text-decoration:underline}

/* 联系我们 */
.contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.contact-card{padding:24px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}
.contact-card h3{margin:8px 0 0;font-size:18px;line-height:1.5;color:var(--text-strong)}
.contact-card p{margin:10px 0 0;font-size:14px;line-height:1.8;color:var(--muted)}
.contact-note{font-size:12.5px !important;padding-top:12px;border-top:1px dashed var(--border);color:var(--muted)}
.contact-note a{color:var(--teal-cta);text-decoration:none}
.contact-split{display:grid;grid-template-columns:1.35fr .75fr;gap:44px;margin-top:48px}
.contact-formwrap h2,.contact-aside h3{font-size:20px;color:var(--text-strong)}
.contact-formwrap h2{margin:0 0 8px;font-family:"Noto Serif SC","Songti SC",Georgia,serif}
.contact-lede{margin:0 0 20px;font-size:14.5px;line-height:1.8;color:var(--muted)}
.contact-form{padding:26px 26px 22px}
.contact-aside{padding:26px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);height:fit-content}
.contact-aside h3{margin:0 0 10px;font-size:17px}
.contact-aside h3 + p{margin-top:0}
.contact-aside p{font-size:14px;line-height:1.9;color:var(--muted);margin:0 0 22px}

/* 报名查询 */
.lookupcard{max-width:720px;margin:0 auto}
.lookup-result{max-width:720px;margin:28px auto 0}
.credential{
  border:1px solid var(--border-strong);border-radius:var(--radius);
  background:var(--paper);box-shadow:var(--shadow-1);overflow:hidden;
}
.credential-head{
  display:flex;justify-content:space-between;align-items:flex-start;gap:16px;
  padding:24px 26px 18px;background:var(--surface);border-bottom:1px solid var(--border);
}
.credential-head h2{margin:6px 0 0;font-family:"Noto Serif SC","Songti SC",Georgia,serif;font-size:22px;color:var(--text-strong)}
.status-badge{
  flex:0 0 auto;padding:6px 14px;border-radius:var(--radius-pill);
  background:var(--teal-soft);color:var(--teal-ink);font-size:13px;letter-spacing:.06em;
}
.status-badge[data-status="confirmed"]{background:#e6f4ec;color:#1c6b45}
.status-badge[data-status="checked"]{background:#e8effa;color:#234f8f}
.status-badge[data-status="cancelled"]{background:var(--danger-soft);color:var(--danger)}
.credential-body{display:grid;grid-template-columns:1fr 1fr;gap:18px 26px;margin:0;padding:24px 26px}
.credential-body dt{font-size:11.5px;letter-spacing:.14em;color:var(--muted)}
.credential-body dd{margin:5px 0 0;font-size:15px;color:var(--text-strong)}
.credential-body dd#credCode{font-family:ui-monospace,Menlo,monospace;font-size:18px;letter-spacing:.05em;color:var(--teal-ink)}
.credential-foot{
  margin:0;padding:15px 26px 20px;border-top:1px dashed var(--border);
  font-size:12.5px;line-height:1.7;color:var(--muted);
}
.lookup-result .next-links{margin-top:20px}

/* 报名页表单补充 */
.field input[type="text"],.field input[type="tel"],.field select,.field textarea{background:#fff}
.page-register .field-optional{text-transform:none}

@media (max-width:1000px){
  .quick-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .qentry:nth-child(4){border-right:0}
  .qentry:nth-child(-n+4){border-bottom:1px solid var(--border)}
  .news-2col,.mzone-inner,.contact-split{grid-template-columns:1fr;gap:26px}
  .case-grid{grid-template-columns:1fr}
  .duoban,.contact-grid{grid-template-columns:1fr}
  .bshow-stage{min-height:0}
  .bslide-inner{padding:64px var(--gut) 58px}
  .site-nav ul{
    -webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 16px),transparent);
    mask-image:linear-gradient(90deg,#000 calc(100% - 16px),transparent);
  }
}
@media (max-width:600px){
  .quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .qentry{border-right:0;border-bottom:1px solid var(--border)}
  .qentry:nth-child(odd){border-right:1px solid var(--border)}
  .stat-grid{grid-template-columns:1fr 1fr}
  .mzone{padding:44px 0}
  .credential-body{grid-template-columns:1fr}
  .newsitem{grid-template-columns:1fr;gap:6px}
  .news-list a{grid-template-columns:1fr;gap:4px}
  /* 首屏三个入口：两两成行，落单的按钮撑满一行，避免左侧留白 */
  .hero-actions .btn{flex:1 1 calc(50% - 5px);justify-content:center}
}

@media print{
  .site-header,.site-footer,.lookupcard,.lookup-result .next-links,.regon,.regn,.bshow-ctrl{display:none !important}
  body{background:#fff}
  .credential{box-shadow:none;border:1px solid #999}
  .page-header{padding:0 0 10px}
}

/* 正文配图 */
.prose img,.post img{display:block;max-width:100%;height:auto;margin:22px auto;border-radius:8px}

/* 封面图 */
.case-cover{
  display:block;width:calc(100% + 48px);margin:-24px -24px 18px;aspect-ratio:16/9;object-fit:cover;
  border-radius:var(--radius) var(--radius) 0 0;background:var(--surface);
}
.post img.post-cover{
  width:100%;aspect-ratio:16/9;object-fit:cover;margin:0 0 24px;border-radius:10px;
}
.post video.post-video{
  display:block;width:100%;aspect-ratio:16/9;margin:0 0 24px;border-radius:10px;
  background:#08110F;border:1px solid var(--border);box-shadow:var(--shadow-1);
}
.nthumb{display:block;overflow:hidden;border-radius:6px;background:var(--surface)}
.nthumb img{display:block;width:100%;height:100%;object-fit:cover}
.news-list a.has-cover{grid-template-columns:76px 96px 1fr auto;align-items:center}
.news-list a.has-cover .nthumb{width:76px;height:52px}
.newsitem.has-cover{grid-template-columns:132px 110px 1fr auto;align-items:center}
.newsitem.has-cover .nthumb{width:132px;height:82px}

@media (max-width:600px){
  .newsitem.has-cover,.news-list a.has-cover{grid-template-columns:1fr}
  .newsitem.has-cover .nthumb,.news-list a.has-cover .nthumb{width:132px;height:82px}
  .case-cover{margin:-24px -24px 14px}
}

/* ============================================================
   材质与动效层
   毛玻璃 · 柔阴影 · 渐变网格 · 颗粒纹理 · 滚动渐入 · 3D 焦点
   ============================================================ */
:root{
  --mesh-a:rgba(18,160,145,.10);
  --mesh-b:rgba(196,160,89,.07);
  --glass:rgba(255,255,255,.62);
  --glass-strong:rgba(255,255,255,.82);
  --glass-line:rgba(255,255,255,.55);
  --ease-out:cubic-bezier(.22,.8,.24,1);
  --ease-spring:cubic-bezier(.2,1.1,.32,1);
  --shadow-1:0 1px 1px rgba(10,32,29,.04), 0 3px 8px rgba(10,32,29,.05),
             0 16px 34px -20px rgba(10,32,29,.26);
  --shadow-2:0 2px 4px rgba(10,32,29,.05), 0 18px 40px -20px rgba(10,32,29,.30),
             0 48px 90px -60px rgba(10,32,29,.34);
}
@media (prefers-color-scheme: dark){
  :root{
    --mesh-a:rgba(51,195,174,.11); --mesh-b:rgba(214,182,119,.06);
    --glass:rgba(20,32,29,.58); --glass-strong:rgba(17,27,25,.82);
    --glass-line:rgba(255,255,255,.07);
  }
}

/* 渐变网格底 */
body{
  background:
    radial-gradient(1000px 640px at 4% -8%, var(--mesh-a), transparent 62%),
    radial-gradient(820px 560px at 104% 6%, var(--mesh-b), transparent 58%),
    var(--page);
  background-attachment:fixed;
}

/* 颗粒纹理：叠在最上层，不拦截点击 */
body::after{
  content:"";position:fixed;inset:0;z-index:9999;pointer-events:none;
  opacity:.055;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.82' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E");
}
@media (prefers-color-scheme: dark){ body::after{opacity:.085} }

/* 页头与卡片：玻璃质感 */
.site-header{
  background:color-mix(in srgb,var(--paper) 82%,transparent);
  -webkit-backdrop-filter:saturate(1.5) blur(16px);
  backdrop-filter:saturate(1.5) blur(16px);
}
.card,.case-card,.doctor,.disease-card,.group-card,.contact-card{
  background:var(--glass);
  border:1px solid color-mix(in srgb,var(--border) 72%,var(--glass-line));
  -webkit-backdrop-filter:blur(16px) saturate(1.2);
  backdrop-filter:blur(16px) saturate(1.2);
  box-shadow:var(--shadow-1);
  transition:transform .28s var(--ease-out), box-shadow .28s var(--ease-out), border-color .28s;
}
.card:hover,.case-card:hover,.doctor:hover,.disease-card:hover{
  transform:translateY(-3px);box-shadow:var(--shadow-2);border-color:var(--border-strong);
}
.quickband{
  background:linear-gradient(180deg,
    color-mix(in srgb,var(--paper) 84%,transparent),
    color-mix(in srgb,var(--surface) 72%,transparent));
  -webkit-backdrop-filter:blur(12px);
  backdrop-filter:blur(12px);
  border-bottom:1px solid var(--border);
}

/* 按钮：柔高光与按压反馈 */
.btn{
  transition:transform .22s var(--ease-spring), box-shadow .22s var(--ease-out),
             background .2s, border-color .2s, color .2s;
}
.btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-1)}
.btn:active{transform:translateY(0) scale(.98)}
.btn-primary{
  background:linear-gradient(140deg,var(--teal-cta) 0%,var(--deep) 100%);
  border-color:var(--deep);
  box-shadow:0 10px 24px -18px rgba(10,74,68,.8);
}
.btn-primary:hover{background:linear-gradient(140deg,var(--deep) 0%,var(--teal-cta) 100%)}
.btn[disabled],.btn[aria-disabled="true"]{opacity:.55;pointer-events:none;box-shadow:none;transform:none}
.btn[aria-busy="true"]{position:relative;pointer-events:none;opacity:.86}
.btn[aria-busy="true"]::before{
  content:"";width:13px;height:13px;flex:0 0 auto;border-radius:50%;
  border:2px solid currentColor;border-top-color:transparent;
  animation:btnSpin .7s linear infinite;
}
@keyframes btnSpin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){
  .btn[aria-busy="true"]::before{animation:none;border-top-color:currentColor;opacity:.7}
}
.bshow .hero-actions .btn:not(.btn-primary){
  -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
}

/* 快捷入口微交互 */
.qentry{
  transition:background .25s var(--ease-out),transform .25s var(--ease-out);
}
.qentry:hover{background:var(--glass-strong);transform:translateY(-2px)}
.qentry svg{transition:transform .3s var(--ease-spring),color .2s}
.qentry:hover svg{transform:translateY(-3px) scale(1.05);color:var(--teal-cta)}

/* 扫描线、标签、输入的统一状态 */
.chip,.news-tab,.tag{transition:background .2s,border-color .2s,color .2s,transform .2s var(--ease-out)}
.chip:hover,.news-tab:hover{transform:translateY(-1px);border-color:var(--border-strong)}
input:disabled,select:disabled,textarea:disabled{background:var(--surface-2);color:var(--muted);cursor:not-allowed}

/* 首页焦点：3D 画布与入场序列 */
.bshow{isolation:isolate;background:
  radial-gradient(1200px 700px at 78% -20%,rgba(55,150,135,.18),transparent 62%),
  linear-gradient(135deg,#0a2224 0%,#0d2b2b 55%,#071a1b 100%)}
.bshow-3d{
  position:absolute;inset:0;width:100%;height:100%;display:block;
  pointer-events:none;z-index:0;
}
.bshow-stage{position:relative;isolation:isolate}
.bslide{position:relative;z-index:1}
.bshow-ctrl{z-index:3}
.bshow .bslide.is-on .eyebrow,
.bshow .bslide.is-on h1,
.bshow .bslide.is-on .bslide-title,
.bshow .bslide.is-on .bslide-lede,
.bshow .bslide.is-on .hero-actions{
  animation:bRise .9s var(--ease-out) both;
}
.bshow .bslide.is-on .eyebrow{animation-delay:.05s}
.bshow .bslide.is-on h1,.bshow .bslide.is-on .bslide-title{animation-delay:.14s}
.bshow .bslide.is-on .bslide-lede{animation-delay:.26s}
.bshow .bslide.is-on .hero-actions{animation-delay:.38s}
@keyframes bRise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}

/* 滚动渐入 */
.reveal{
  opacity:0;transform:translateY(18px);
  transition:opacity .72s var(--ease-out) var(--reveal-delay,0ms),
             transform .72s var(--ease-spring) var(--reveal-delay,0ms);
}
.reveal.is-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  .reveal{opacity:1;transform:none;transition:none}
  .bshow .bslide.is-on .eyebrow,.bshow .bslide.is-on h1,
  .bshow .bslide.is-on .bslide-title,.bshow .bslide.is-on .bslide-lede,
  .bshow .bslide.is-on .hero-actions{animation:none}
  body::after{display:none}
}

/* 打印：去掉材质与动效，保留内容 */
@media print{
  body{background:#fff}
  body::after{display:none}
  .card,.case-card,.doctor,.disease-card,.group-card,.contact-card,.quickband,
  .site-header,.bshow-3d{
    background:#fff !important;box-shadow:none !important;
    -webkit-backdrop-filter:none !important;backdrop-filter:none !important;
  }
  .reveal{opacity:1 !important;transform:none !important}
}
