/* =========================================================
   九州体育NET · 共享样式表  /assets/site.css
   令牌 → 重置 → 排版 → 通用组件 → 页头 → 页脚 → 响应式
   ========================================================= */

/* ---------- 1 · 设计令牌 ---------- */
:root{
  --paper:#F4F1E8;
  --ink:#14181A;
  --green-deep:#0E3B2E;
  --green-tactic:#175C45;
  --cyan:#3DF2D0;
  --orange:#FF7A1A;
  --steel:#7A8580;
  --line:#D8D2C4;
  --white:#FFFFFF;

  --rail-w:236px;
  --bar-h:60px;
  --gutter:clamp(20px,4.2vw,68px);
  --measure:1180px;

  --font-head:"Noto Sans SC","PingFang SC","Hiragino Sans GB","Microsoft YaHei",system-ui,-apple-system,"Segoe UI",sans-serif;
  --font-mono:"JetBrains Mono","SFMono-Regular",Menlo,Consolas,"Liberation Mono","Courier New",monospace;

  --dur:160ms;
  --ease:cubic-bezier(.22,.61,.36,1);
}

/* ---------- 2 · 重置 ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:var(--font-head);
  font-size:17px;
  font-weight:400;
  line-height:1.8;
  letter-spacing:.01em;
  overflow-x:hidden;
}
h1,h2,h3,h4,h5,h6,p,figure,blockquote,dl,dd{margin:0}
a{color:inherit}
img,picture,video,canvas,svg{display:block;max-width:100%}
img{height:auto}
button,input,select,textarea{font:inherit;color:inherit}
button{background:none;border:0;padding:0}
table{border-collapse:collapse;width:100%}
[hidden]{display:none !important}

:focus-visible{outline:2px solid var(--orange);outline-offset:2px}
.site-header :focus-visible,
.site-footer :focus-visible{outline-color:var(--cyan)}

/* ---------- 3 · 排版 ---------- */
.display{
  font-size:clamp(46px,7.4vw,116px);
  font-weight:200;
  line-height:.94;
  letter-spacing:-.035em;
}
.h1{font-size:clamp(34px,4.6vw,66px);font-weight:250;line-height:1.04;letter-spacing:-.025em}
.h2{font-size:clamp(25px,3vw,44px);font-weight:250;line-height:1.1;letter-spacing:-.02em}
.h3{font-size:clamp(18px,1.8vw,26px);font-weight:400;line-height:1.3;letter-spacing:-.008em}
.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:.02em}

.eyebrow{
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-family:var(--font-mono);
  font-size:11px;
  font-weight:500;
  line-height:1;
  letter-spacing:.28em;
  text-transform:uppercase;
  color:var(--steel);
}
.eyebrow::before{
  content:"";
  width:26px;
  height:1px;
  background:var(--orange);
  flex:none;
}

/* ---------- 4 · 布局工具 ---------- */
.container{
  width:100%;
  max-width:var(--measure);
  margin-inline:auto;
  padding-inline:var(--gutter);
}
.section{padding-block:clamp(48px,6vw,104px)}
.section--tight{padding-block:clamp(30px,4vw,60px)}
.section-head{
  display:flex;
  flex-wrap:wrap;
  align-items:flex-end;
  justify-content:space-between;
  gap:16px 32px;
  margin-block-end:clamp(24px,3vw,44px);
}
.rule{height:1px;background:var(--line);border:0;margin:0}
.stack{display:grid;gap:var(--stack-gap,18px)}
.prose{max-width:68ch;font-size:17px;line-height:1.85}
.prose > * + *{margin-block-start:1.05em}
.prose h2{font-size:clamp(24px,2.6vw,34px);font-weight:300;line-height:1.2;margin-block-start:1.6em}
.prose h3{font-size:clamp(19px,1.9vw,24px);font-weight:400;margin-block-start:1.3em}
.prose ul,.prose ol{margin-block:1em;padding-inline-start:1.45em}
.prose ul li{list-style:disc}
.prose ol li{list-style:decimal}
.prose li + li{margin-block-start:.4em}

.grid{display:grid;gap:var(--gap,18px)}
.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}

.breadcrumb{padding-block:16px 0}
.breadcrumb ol{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:0 8px;
  list-style:none;
  margin:0;
  padding:0;
  font-family:var(--font-mono);
  font-size:11px;
  line-height:1.6;
  letter-spacing:.1em;
  color:var(--steel);
}
.breadcrumb li{list-style:none}
.breadcrumb li:not(:last-child)::after{content:"/";margin-inline-start:8px;color:var(--line)}
.breadcrumb a{color:var(--steel);text-decoration:none;transition:color var(--dur) var(--ease)}
.breadcrumb a:hover{color:var(--ink)}
.breadcrumb [aria-current="page"]{color:var(--ink)}

/* ---------- 5 · 按钮 · 标签 · 卡片 ---------- */
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:14px 26px;
  border:1px solid transparent;
  border-radius:2px;
  font-family:var(--font-mono);
  font-size:13px;
  font-weight:600;
  letter-spacing:.1em;
  text-decoration:none;
  transition:background-color var(--dur) var(--ease),
             color var(--dur) var(--ease),
             border-color var(--dur) var(--ease),
             transform var(--dur) var(--ease);
}
.btn--primary{background:var(--ink);color:var(--paper)}
.btn--primary:hover{background:var(--green-deep);color:var(--cyan);transform:translateY(-2px)}
.btn--ghost{background:transparent;border-color:var(--line);color:var(--ink)}
.btn--ghost:hover{border-color:var(--green-tactic);background:var(--white);transform:translateY(-2px)}
.btn--accent{background:var(--orange);color:var(--ink)}
.btn--accent:hover{background:var(--ink);color:var(--orange);transform:translateY(-2px)}

.tag{
  display:inline-flex;
  align-items:baseline;
  gap:7px;
  padding:6px 11px;
  border:1px solid var(--line);
  border-radius:2px;
  background:var(--white);
  color:var(--ink);
  font-family:var(--font-mono);
  font-size:11px;
  font-weight:500;
  line-height:1.2;
  letter-spacing:.08em;
  cursor:pointer;
  transition:background-color var(--dur) var(--ease),
             border-color var(--dur) var(--ease),
             color var(--dur) var(--ease);
}
.tag:hover{border-color:var(--green-tactic);color:var(--green-deep)}
.tag.is-active,
.tag[aria-pressed="true"],
.tag[aria-selected="true"]{background:var(--ink);border-color:var(--ink);color:var(--cyan)}

.panel{
  position:relative;
  padding:clamp(20px,2.4vw,30px);
  background:var(--white);
  border:1px solid var(--line);
  border-radius:3px;
  transition:transform var(--dur) var(--ease),
             border-color var(--dur) var(--ease),
             box-shadow var(--dur) var(--ease);
}
.panel:hover{
  transform:translateY(-2px);
  border-color:var(--green-tactic);
  box-shadow:0 12px 28px -20px rgba(14,59,46,.55);
}
.panel--dark{background:var(--green-deep);border-color:rgba(61,242,208,.22);color:var(--paper)}
.panel--dark .panel-label{border-block-end-color:rgba(244,241,232,.2);color:rgba(244,241,232,.6)}
.panel--flat:hover{transform:none;box-shadow:none}
.panel-label{
  display:block;
  width:100%;
  margin-block-end:14px;
  padding-block-end:10px;
  border-block-end:1px solid var(--line);
  font-family:var(--font-mono);
  font-size:10px;
  font-weight:500;
  line-height:1.4;
  letter-spacing:.26em;
  text-transform:uppercase;
  color:var(--steel);
}

/* ---------- 6 · 数据组件 ---------- */
.metric{
  display:block;
  font-family:var(--font-mono);
  font-size:clamp(40px,5.5vw,88px);
  font-weight:700;
  line-height:.9;
  letter-spacing:-.045em;
  font-variant-numeric:tabular-nums;
  color:var(--ink);
}
.metric--sm{font-size:clamp(26px,3vw,40px);letter-spacing:-.03em}
.metric--cyan{color:var(--cyan)}
.metric--orange{color:var(--orange)}
.metric-label{
  display:block;
  margin-block-start:10px;
  font-family:var(--font-mono);
  font-size:11px;
  font-weight:500;
  line-height:1.6;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--steel);
}
.panel--dark .metric-label{color:rgba(244,241,232,.55)}

.table-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:3px;background:var(--white)}
.data-table{min-width:520px;font-size:14px;line-height:1.6}
.data-table caption{
  padding:14px 16px;
  text-align:start;
  font-family:var(--font-mono);
  font-size:11px;
  font-weight:500;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--steel);
}
.data-table th{
  padding:12px 16px;
  background:var(--green-tactic);
  color:var(--paper);
  font-family:var(--font-mono);
  font-size:11px;
  font-weight:600;
  line-height:1.4;
  letter-spacing:.12em;
  text-align:start;
  white-space:nowrap;
}
.data-table td{padding:13px 16px;border-block-end:1px solid var(--line);font-variant-numeric:tabular-nums}
.data-table tbody tr{transition:background-color var(--dur) var(--ease)}
.data-table tbody tr:hover,
.data-table tbody tr[data-highlight]{background:rgba(23,92,69,.08)}
.data-table .num{font-family:var(--font-mono);text-align:end;letter-spacing:0}
.data-table tbody tr:last-child td{border-block-end:0}

.timeline{list-style:none;margin:0;padding:0}
.timeline > li{
  position:relative;
  padding-inline-start:26px;
  padding-block-end:clamp(20px,2.4vw,32px);
  border-inline-start:1px solid var(--line);
}
.timeline > li::before{
  content:"";
  position:absolute;
  inset-inline-start:-4px;
  inset-block-start:.7em;
  width:7px;
  height:7px;
  border:1px solid var(--green-tactic);
  border-radius:50%;
  background:var(--paper);
}
.timeline > li:last-child{border-inline-start-color:transparent;padding-block-end:0}

.fold{border-block-end:1px solid var(--line)}
.fold:first-of-type{border-block-start:1px solid var(--line)}
.fold > summary{
  display:flex;
  align-items:baseline;
  gap:14px;
  padding:18px 0;
  cursor:pointer;
  list-style:none;
  font-size:17px;
  font-weight:500;
  line-height:1.5;
  transition:color var(--dur) var(--ease);
}
.fold > summary::-webkit-details-marker{display:none}
.fold > summary::before{
  content:"";
  width:5px;
  height:5px;
  flex:none;
  background:var(--green-tactic);
  transform:translateY(-2px) rotate(45deg);
}
.fold > summary::after{
  content:"+";
  margin-inline-start:auto;
  font-family:var(--font-mono);
  font-size:16px;
  line-height:1;
  color:var(--orange);
}
.fold[open] > summary::after{content:"–"}
.fold > summary:hover{color:var(--green-deep)}
.fold-body{padding:0 0 20px 19px;color:rgba(20,24,26,.82)}

/* ---------- 7 · 图片容器 ---------- */
.media{
  position:relative;
  display:block;
  overflow:hidden;
  aspect-ratio:16/9;
  background:var(--green-deep);
  border:1px solid var(--line);
  border-radius:3px;
}
.media img,
.media svg,
.media video{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.media--wide{aspect-ratio:21/9}
.media--square{aspect-ratio:1/1}
.media--portrait{aspect-ratio:3/4}
.media--tall{aspect-ratio:4/5}
.media-caption{
  position:absolute;
  inset-inline-start:0;
  inset-block-end:0;
  max-width:100%;
  padding:7px 12px;
  background:rgba(20,24,26,.86);
  color:var(--paper);
  font-family:var(--font-mono);
  font-size:11px;
  font-weight:500;
  line-height:1.5;
  letter-spacing:.1em;
}
.media--plain{
  display:grid;
  place-content:center;
  gap:6px;
  padding:22px;
  text-align:center;
  background-image:repeating-linear-gradient(135deg,rgba(61,242,208,.09) 0 1px,transparent 1px 12px);
  color:rgba(61,242,208,.72);
  font-family:var(--font-mono);
  font-size:11px;
  font-weight:500;
  line-height:1.7;
  letter-spacing:.2em;
}

/* ---------- 8 · 跳至主内容 ---------- */
.skip-link{
  position:fixed;
  inset-block-start:10px;
  inset-inline-start:10px;
  z-index:200;
  padding:11px 18px;
  background:var(--cyan);
  color:var(--ink);
  border-radius:2px;
  font-family:var(--font-mono);
  font-size:13px;
  font-weight:600;
  line-height:1;
  letter-spacing:.08em;
  text-decoration:none;
  transform:translateY(-200%);
  transition:transform var(--dur) var(--ease);
}
.skip-link:focus{transform:translateY(0)}

/* ---------- 9 · 页头 / 侧边轨道 ---------- */
.site-header{
  position:sticky;
  inset-block-start:0;
  z-index:120;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-height:var(--bar-h);
  padding-inline:16px;
  background:var(--green-deep);
  color:var(--paper);
}
.site-header::before{
  content:"";
  position:absolute;
  inset-block-start:0;
  inset-inline:0;
  height:3px;
  background:linear-gradient(90deg,var(--cyan) 0 38%,var(--orange) 38% 52%,rgba(244,241,232,.22) 52% 100%);
}

.rail-brand{display:flex;align-items:center;gap:10px;min-width:0}
.brand{display:block;text-decoration:none;color:inherit;min-width:0}
.brand-mark{
  display:block;
  font-size:17px;
  font-weight:500;
  line-height:1.2;
  letter-spacing:.05em;
  white-space:nowrap;
}
.brand-mark em{
  font-style:normal;
  margin-inline-start:3px;
  font-family:var(--font-mono);
  font-size:.72em;
  letter-spacing:.04em;
  color:var(--cyan);
}
.brand-sub{display:none}
.version-badge{
  flex:none;
  padding:5px 8px;
  background:var(--cyan);
  color:var(--ink);
  border-radius:2px;
  font-family:var(--font-mono);
  font-size:11px;
  font-weight:700;
  line-height:1;
  letter-spacing:.06em;
}

.nav-toggle{
  display:inline-flex;
  align-items:center;
  gap:9px;
  padding:9px 13px;
  border:1px solid rgba(61,242,208,.42);
  border-radius:2px;
  color:var(--paper);
  font-family:var(--font-mono);
  font-size:11px;
  font-weight:600;
  line-height:1;
  letter-spacing:.14em;
  cursor:pointer;
  transition:border-color var(--dur) var(--ease),color var(--dur) var(--ease);
}
.nav-toggle:hover{border-color:var(--cyan);color:var(--cyan)}
.nav-toggle-bars{display:grid;gap:3px;width:16px}
.nav-toggle-bars > span{
  display:block;
  height:1px;
  background:currentColor;
  transition:transform var(--dur) var(--ease),opacity var(--dur) var(--ease);
}
.nav-toggle[aria-expanded="true"] .nav-toggle-bars > span:nth-child(1){transform:translateY(4px) rotate(45deg)}
.nav-toggle[aria-expanded="true"] .nav-toggle-bars > span:nth-child(2){opacity:0}
.nav-toggle[aria-expanded="true"] .nav-toggle-bars > span:nth-child(3){transform:translateY(-4px) rotate(-45deg)}

.rail-nav{
  position:fixed;
  inset-block-start:var(--bar-h);
  inset-block-end:0;
  inset-inline:0;
  z-index:119;
  display:flex;
  flex-direction:column;
  padding:16px 0 0;
  background:var(--green-deep);
  border-block-start:1px solid rgba(61,242,208,.16);
  overflow-y:auto;
  transform:translateX(-101%);
  visibility:hidden;
  transition:transform 220ms var(--ease),visibility 220ms var(--ease);
}
.rail-nav[data-open]{transform:translateX(0);visibility:visible}

.nav-caption{
  margin:0;
  padding:0 22px 12px;
  font-family:var(--font-mono);
  font-size:10px;
  font-weight:400;
  line-height:1.4;
  letter-spacing:.28em;
  text-transform:uppercase;
  color:rgba(244,241,232,.42);
}
.nav-list{list-style:none;margin:0;padding:0}
.nav-item{border-block-start:1px solid rgba(244,241,232,.09)}
.nav-item:last-child{border-block-end:1px solid rgba(244,241,232,.09)}
.nav-link{
  position:relative;
  display:flex;
  align-items:baseline;
  gap:13px;
  padding:15px 22px;
  color:rgba(244,241,232,.74);
  text-decoration:none;
  font-size:15px;
  font-weight:400;
  line-height:1.4;
  letter-spacing:.05em;
  transition:color var(--dur) var(--ease),background-color var(--dur) var(--ease);
}
.nav-link::after{
  content:"";
  position:absolute;
  inset-block:0;
  inset-inline-start:0;
  width:2px;
  background:var(--cyan);
  transform:scaleY(0);
  transform-origin:center top;
  transition:transform var(--dur) var(--ease);
}
.nav-link:hover{color:var(--paper);background:rgba(61,242,208,.07)}
.nav-link:hover::after{transform:scaleY(1)}
.nav-link[aria-current="page"]{color:var(--cyan);background:rgba(61,242,208,.09)}
.nav-link[aria-current="page"]::after{transform:scaleY(1)}
.nav-index{
  flex:none;
  font-family:var(--font-mono);
  font-size:10px;
  font-weight:500;
  line-height:1;
  letter-spacing:.1em;
  color:var(--steel);
}
.nav-label{display:block}
.nav-link[aria-current="page"] .nav-index{color:var(--orange)}

.rail-foot{
  margin-block-start:auto;
  display:grid;
  gap:12px;
  padding:24px 22px 28px;
  border-block-start:1px solid rgba(244,241,232,.12);
}
.rail-cta{
  display:block;
  padding:13px 16px;
  background:var(--cyan);
  color:var(--ink);
  border-radius:2px;
  text-align:center;
  text-decoration:none;
  font-size:14px;
  font-weight:600;
  line-height:1.4;
  letter-spacing:.06em;
  transition:background-color var(--dur) var(--ease),color var(--dur) var(--ease),transform var(--dur) var(--ease);
}
.rail-cta:hover{background:var(--orange);color:var(--paper);transform:translateY(-2px)}
.rail-meta{
  margin:0;
  font-family:var(--font-mono);
  font-size:11px;
  line-height:1.7;
  letter-spacing:.06em;
  color:rgba(244,241,232,.46);
}
.rail-meta strong{font-weight:500;color:rgba(244,241,232,.86)}

.rail-progress{
  position:absolute;
  inset-inline:0;
  inset-block-end:0;
  height:2px;
  background:rgba(61,242,208,.16);
  pointer-events:none;
}
.rail-progress > span{
  display:block;
  height:100%;
  background:var(--cyan);
  transform:scaleX(var(--progress,0));
  transform-origin:left center;
}

html.is-nav-open{overflow:hidden}

/* ---------- 10 · 页脚 ---------- */
.site-footer{
  position:relative;
  background:var(--ink);
  color:rgba(244,241,232,.72);
  font-size:14px;
  line-height:1.75;
}
.site-footer::before{
  content:"";
  display:block;
  height:4px;
  background:linear-gradient(90deg,var(--green-deep) 0 42%,var(--cyan) 42% 56%,var(--orange) 56% 66%,#242A2C 66% 100%);
}
.footer-inner{
  width:100%;
  max-width:var(--measure);
  margin-inline:auto;
  padding:clamp(38px,5vw,72px) var(--gutter) clamp(26px,3vw,40px);
}
.footer-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px 20px}
.footer-eyebrow{
  margin:0;
  font-family:var(--font-mono);
  font-size:11px;
  font-weight:500;
  line-height:1;
  letter-spacing:.26em;
  text-transform:uppercase;
  color:var(--cyan);
}
.footer-summary{
  margin:0;
  flex:1 1 auto;
  font-size:clamp(18px,2vw,26px);
  font-weight:250;
  line-height:1.35;
  letter-spacing:-.01em;
  color:var(--paper);
}
.footer-cols{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
  gap:clamp(26px,3.4vw,52px);
  margin-block-start:clamp(28px,3.6vw,52px);
  padding-block-start:clamp(24px,3vw,40px);
  border-block-start:1px solid rgba(244,241,232,.12);
}
.footer-col-title{
  margin:0 0 14px;
  font-family:var(--font-mono);
  font-size:10px;
  font-weight:500;
  line-height:1.4;
  letter-spacing:.26em;
  text-transform:uppercase;
  color:var(--cyan);
}
.footer-links{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.footer-links li{list-style:none}
.footer-links a{
  display:inline-block;
  color:rgba(244,241,232,.74);
  text-decoration:none;
  font-size:14px;
  line-height:1.6;
  background-image:linear-gradient(var(--cyan),var(--cyan));
  background-repeat:no-repeat;
  background-size:0% 1px;
  background-position:0 100%;
  transition:background-size var(--dur) var(--ease),color var(--dur) var(--ease);
}
.footer-links a:hover{color:var(--cyan);background-size:100% 1px}
.footer-links--plain li{
  font-size:13px;
  line-height:1.75;
  color:rgba(244,241,232,.6);
}
.footer-links--plain .mono{
  font-size:12.5px;
  color:var(--paper);
  word-break:break-all;
}
.footer-cta{
  display:inline-block;
  margin-block-start:18px;
  padding:11px 18px;
  border:1px solid rgba(61,242,208,.45);
  border-radius:2px;
  color:var(--cyan);
  text-decoration:none;
  font-family:var(--font-mono);
  font-size:12px;
  font-weight:600;
  line-height:1;
  letter-spacing:.14em;
  transition:background-color var(--dur) var(--ease),color var(--dur) var(--ease),border-color var(--dur) var(--ease);
}
.footer-cta:hover{background:var(--cyan);border-color:var(--cyan);color:var(--ink)}
.footer-base{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:10px 28px;
  margin-block-start:clamp(30px,4vw,56px);
  padding-block-start:20px;
  border-block-start:1px solid rgba(244,241,232,.12);
  font-family:var(--font-mono);
  font-size:11.5px;
  line-height:1.75;
  letter-spacing:.02em;
  color:rgba(244,241,232,.42);
}
.footer-legal{margin:0;color:var(--orange)}
.footer-note{margin:0;flex:1 1 320px;max-width:640px}
.footer-copy{margin:0;margin-inline-start:auto;color:rgba(244,241,232,.5)}

/* ---------- 11 · 平板与桌面 ---------- */
@media (max-width:1023px){
  .grid-4,.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:640px){
  .grid-2,.grid-3,.grid-4{grid-template-columns:minmax(0,1fr)}
  .footer-copy{margin-inline-start:0}
}

@media (min-width:1024px){
  body{padding-inline-start:var(--rail-w)}

  .site-header{
    position:fixed;
    inset-block:0;
    inset-inline-start:0;
    width:var(--rail-w);
    min-height:0;
    flex-direction:column;
    align-items:stretch;
    justify-content:flex-start;
    gap:0;
    padding-inline:0;
    border-inline-end:1px solid rgba(61,242,208,.16);
  }
  .site-header::before{height:4px}

  .rail-brand{
    align-items:flex-start;
    justify-content:space-between;
    gap:10px;
    padding:34px 22px 20px;
  }
  .brand-mark{font-size:20px;font-weight:600;letter-spacing:.06em}
  .brand-sub{
    display:block;
    margin-block-start:7px;
    font-family:var(--font-mono);
    font-size:10px;
    line-height:1.5;
    letter-spacing:.2em;
    text-transform:uppercase;
    color:rgba(244,241,232,.5);
  }
  .nav-toggle{display:none}

  .rail-nav{
    position:static;
    transform:none;
    visibility:visible;
    flex:1 1 auto;
    padding:10px 0 0;
    border-block-start:0;
    transition:none;
  }
  .nav-caption{padding-inline:22px}
  .nav-link{padding:13px 22px}
  .rail-foot{padding:22px 22px 26px}

  .rail-progress{
    inset-inline:auto;
    inset-inline-end:0;
    inset-block:0;
    width:2px;
    height:auto;
  }
  .rail-progress > span{
    height:100%;
    transform:scaleY(var(--progress,0));
    transform-origin:center top;
    background:linear-gradient(180deg,var(--cyan),var(--green-tactic));
  }
}

/* ---------- 12 · 降低动效 ---------- */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{
    animation-duration:.001ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.001ms !important;
    scroll-behavior:auto !important;
  }
  .panel:hover,.btn:hover,.rail-cta:hover{transform:none}
}
