/* ==========================================================================
   天行体育 · /assets/site.css
   共享层：reset · 变量 · 中文排版 · 命令栏 · 页脚 · 基础组件
   ========================================================================== */

/* ---------- reset ---------- */
*,*::before,*::after{box-sizing:border-box}
html{
  -webkit-text-size-adjust:100%;
  scroll-behavior:smooth;
  scroll-padding-top:78px;
}
body,h1,h2,h3,h4,h5,h6,p,figure,blockquote,dl,dd{margin:0}
ul,ol{margin:0;padding:0;list-style:none}
img,picture,svg,video{display:block;max-width:100%}
button,input,select,textarea{font:inherit;color:inherit}
button{background:none;border:0;padding:0;cursor:pointer}
a{color:inherit;text-decoration:none}
table{border-collapse:collapse;border-spacing:0;width:100%}
hr{border:0;margin:0;height:0}
fieldset{border:0;margin:0;padding:0}

/* ---------- 变量 ---------- */
:root{
  --paper:#F4EFE6;
  --paper-2:#EDE5D8;
  --ink:#101820;
  --ink-70:rgba(16,24,32,.72);
  --ink-52:rgba(16,24,32,.52);
  --sky:#1E6FD9;
  --sky-deep:#0F4C9A;
  --ice:#A9C7E8;
  --ice-soft:#DCE8F6;
  --snow:#FFFFFF;
  --flare:#FF6A13;
  --red:#C0392B;
  --yellow:#E8B23A;
  --green:#2E8B6E;
  --rock:#5A6470;
  --rock-deep:#22303F;
  --rock-deeper:#182430;

  --line:rgba(16,24,32,.14);
  --line-soft:rgba(16,24,32,.075);
  --line-invert:rgba(244,239,230,.16);

  --font-sans:"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans SC","Source Han Sans SC",system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --font-mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,"Liberation Mono","Courier New",monospace;

  --cmdbar-h:44px;
  --shell-max:1240px;
  --gutter:clamp(18px,4vw,48px);
  --sp-section:clamp(56px,8.5vw,128px);

  --lift-1:0 1px 2px rgba(16,24,32,.06);
  --lift-2:0 14px 34px -20px rgba(16,24,32,.38);

  --ease:cubic-bezier(.2,.6,.25,1);
}

/* ---------- 基础排版 ---------- */
html.js .reveal{opacity:0;transform:translateY(8px);transition:opacity .3s var(--ease),transform .3s var(--ease)}
html.js .reveal.is-in{opacity:1;transform:none}

body{
  background-color:var(--paper);
  color:var(--ink);
  font-family:var(--font-sans);
  font-size:16px;
  font-weight:400;
  line-height:1.75;
  min-height:100vh;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
}

::selection{background:rgba(30,111,217,.22);color:var(--ink)}

h1,h2,h3,h4{font-weight:800;line-height:1.14;letter-spacing:-.01em;color:var(--ink)}
h1{font-size:clamp(34px,6.2vw,88px);font-weight:900;line-height:1.02;letter-spacing:-.028em}
h2{font-size:clamp(25px,3.2vw,44px);line-height:1.1;letter-spacing:-.018em}
h3{font-size:clamp(18px,1.6vw,23px);line-height:1.3;font-weight:700}
h4{font-size:16px;font-weight:700;line-height:1.45}

p{color:inherit}
strong{font-weight:700}

.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:.01em}

a:not([class]){color:var(--sky-deep);border-bottom:1px solid rgba(15,76,154,.3)}
a:not([class]):hover{color:var(--sky)}

:focus-visible{outline:2px solid var(--sky);outline-offset:3px;border-radius:2px}
.cmdbar :focus-visible{outline-color:var(--flare)}

.visually-hidden{
  position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;
}

.skip-link{
  position:fixed;left:14px;top:-70px;z-index:200;
  display:inline-block;padding:10px 18px;
  background:var(--ink);color:var(--paper);
  font-size:13px;font-weight:700;letter-spacing:.04em;
  border-radius:2px;box-shadow:var(--lift-2);
  transition:top .2s var(--ease);
}
.skip-link:focus{top:14px;color:var(--paper)}

/* ---------- 色带 ---------- */
.flag-band{
  height:4px;width:100%;
  background:linear-gradient(90deg,
    var(--sky) 0 20%,
    var(--ice) 20% 40%,
    var(--red) 40% 60%,
    var(--green) 60% 80%,
    var(--yellow) 80% 100%);
}
.flag-band--top{height:3px}

/* ---------- 命令栏 ---------- */
.cmdbar{
  position:sticky;top:0;z-index:80;
  background:rgba(244,239,230,.95);
  border-bottom:1px solid var(--line);
  -webkit-backdrop-filter:saturate(160%) blur(10px);
  backdrop-filter:saturate(160%) blur(10px);
}
.cmdbar__inner{
  position:relative;
  max-width:var(--shell-max);
  margin:0 auto;
  padding:0 var(--gutter);
  min-height:var(--cmdbar-h);
  display:flex;
  align-items:center;
  gap:clamp(10px,1.6vw,24px);
}

.brand{display:flex;align-items:center;gap:10px;flex:0 0 auto;min-width:0}
.brand__mark{
  width:22px;height:22px;flex:0 0 auto;border-radius:1px;
  background:linear-gradient(180deg,
    var(--sky) 0 40%,
    var(--flare) 40% 52%,
    var(--ink) 52% 100%);
  clip-path:polygon(0 100%,50% 0,100% 100%);
}
.brand__text{display:flex;flex-direction:column;line-height:1.1;min-width:0}
.brand__name{font-size:15px;font-weight:900;letter-spacing:.08em;color:var(--ink);white-space:nowrap}
.brand__sig{
  font-family:var(--font-mono);font-size:9px;letter-spacing:.16em;
  color:var(--rock);white-space:nowrap;margin-top:2px;
}

.nav{flex:1 1 auto;min-width:0;display:flex;align-items:center}
.nav__list{display:flex;align-items:center;gap:clamp(2px,.9vw,14px);flex-wrap:nowrap}
.nav__item{display:block}
.nav__link{
  position:relative;
  display:inline-flex;align-items:center;gap:6px;
  padding:6px 8px;
  font-size:14px;font-weight:600;letter-spacing:.01em;
  color:var(--ink-70);white-space:nowrap;border-radius:2px;
  transition:color .18s var(--ease),background-color .18s var(--ease);
}
.nav__dot{
  width:5px;height:5px;flex:0 0 auto;border-radius:50%;
  background:var(--ice);
  transition:background-color .18s var(--ease),transform .18s var(--ease),box-shadow .18s var(--ease);
}
.nav__link:hover{color:var(--ink);background:rgba(30,111,217,.07)}
.nav__link:hover .nav__dot{transform:scale(1.45);background:var(--sky)}
.nav__link[aria-current="page"]{color:var(--ink);font-weight:700}
.nav__link[aria-current="page"] .nav__dot{
  background:var(--flare);
  box-shadow:0 0 0 3px rgba(255,106,19,.18);
}
.nav__link[aria-current="page"]::after{
  content:"";position:absolute;left:8px;right:8px;bottom:0;height:2px;
  background:var(--flare);border-radius:1px;
}

.cmdbar__meta{display:flex;align-items:center;gap:10px;flex:0 0 auto;margin-left:auto}
.season-chip{
  display:inline-flex;align-items:center;gap:6px;
  padding:3px 10px;border-radius:999px;
  border:1px solid rgba(15,76,154,.26);
  background:var(--ice-soft);
  font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;
  color:var(--sky-deep);white-space:nowrap;
}
.season-chip__dot{
  width:6px;height:6px;flex:0 0 auto;border-radius:50%;
  background:var(--green);
}

.nav-toggle{
  display:none;align-items:center;gap:8px;
  margin-left:auto;
  padding:7px 12px;border:1px solid var(--line);border-radius:2px;
  background:var(--snow);color:var(--ink);
  font-size:12px;font-weight:700;letter-spacing:.1em;
  transition:border-color .18s var(--ease),background-color .18s var(--ease);
}
.nav-toggle:hover{border-color:var(--sky);background:rgba(30,111,217,.06)}
.nav-toggle__bars{display:inline-flex;flex-direction:column;gap:3px;width:14px}
.nav-toggle__bars i{
  display:block;height:1.5px;background:var(--ink);border-radius:2px;
  transition:transform .18s var(--ease),opacity .18s var(--ease);
}
.nav-toggle[aria-expanded="true"] .nav-toggle__bars i:nth-child(1){transform:translateY(4.5px) rotate(45deg)}
.nav-toggle[aria-expanded="true"] .nav-toggle__bars i:nth-child(2){opacity:0}
.nav-toggle[aria-expanded="true"] .nav-toggle__bars i:nth-child(3){transform:translateY(-4.5px) rotate(-45deg)}

.cmdbar__progress{
  position:absolute;left:0;right:0;bottom:-1px;height:2px;
  background:transparent;pointer-events:none;overflow:hidden;
}
.cmdbar__progress > span{
  display:block;height:100%;width:0;
  background:linear-gradient(90deg,var(--sky),var(--flare));
  transition:width .12s linear;
}

/* ---------- 按钮 ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:11px 20px;border:1px solid transparent;border-radius:2px;
  font-family:var(--font-sans);font-size:14px;font-weight:700;letter-spacing:.02em;
  white-space:nowrap;cursor:pointer;
  transition:background-color .18s var(--ease),color .18s var(--ease),
             border-color .18s var(--ease),transform .18s var(--ease),box-shadow .18s var(--ease);
}
.btn--primary{background:var(--flare);color:var(--snow);box-shadow:0 1px 0 rgba(16,24,32,.16)}
.btn--primary:hover{background:#F25D05;transform:translateY(-1px);box-shadow:0 6px 16px -10px rgba(255,106,19,.9)}
.btn--ghost{background:transparent;color:var(--ink);border-color:var(--line)}
.btn--ghost:hover{border-color:var(--sky);color:var(--sky-deep);background:rgba(30,111,217,.06)}
.btn--sky{background:var(--sky);color:var(--snow)}
.btn--sky:hover{background:var(--sky-deep);transform:translateY(-1px)}
.btn--sm{padding:6px 13px;font-size:12px;letter-spacing:.04em}
.btn--block{width:100%}

.link-arrow{
  display:inline-flex;align-items:center;gap:8px;
  font-size:14px;font-weight:700;color:var(--sky-deep);
  padding-bottom:3px;border-bottom:1px solid rgba(15,76,154,.3);
  transition:color .18s var(--ease),border-color .18s var(--ease),gap .18s var(--ease);
}
.link-arrow::after{content:"→";font-family:var(--font-mono);transition:transform .18s var(--ease)}
.link-arrow:hover{color:var(--sky);border-color:var(--sky)}
.link-arrow:hover::after{transform:translateX(4px)}

/* ---------- 布局 ---------- */
.container{width:100%;max-width:var(--shell-max);margin-inline:auto;padding-inline:var(--gutter)}

.section{padding-block:var(--sp-section)}
.section--tight{padding-block:clamp(34px,5vw,74px)}
.section--ink{background:var(--rock-deep);color:rgba(244,239,230,.8)}
.section--ink h1,.section--ink h2,.section--ink h3,.section--ink h4{color:var(--snow)}
.section--ink .kicker,.section--ink .lede{color:rgba(244,239,230,.66)}
.section--ink .section__head{border-bottom-color:var(--line-invert)}
.section--ice{background:var(--ice-soft)}

.grid{display:grid;gap:clamp(20px,3vw,42px)}
.grid--5-7{grid-template-columns:5fr 7fr}
.grid--4-8{grid-template-columns:4fr 8fr}
.grid--halves{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid--thirds{grid-template-columns:repeat(3,minmax(0,1fr))}

@media (max-width:880px){
  .grid--5-7,.grid--4-8,.grid--halves,.grid--thirds{grid-template-columns:minmax(0,1fr)}
}

/* ---------- 章节标题 ---------- */
.section__head{
  display:flex;flex-wrap:wrap;align-items:baseline;gap:12px 24px;
  padding-bottom:14px;margin-bottom:clamp(24px,3.6vw,48px);
  border-bottom:1px solid var(--line);
}
.section__head h2,.section__head h1{flex:1 1 auto;min-width:0}
.section__num{
  font-family:var(--font-mono);font-size:12px;font-weight:600;
  letter-spacing:.2em;color:var(--sky);flex:0 0 auto;
}
.kicker{
  display:inline-block;
  font-family:var(--font-mono);font-size:11px;letter-spacing:.2em;
  text-transform:uppercase;color:var(--rock);
}
.lede{
  font-size:clamp(16px,1.35vw,20px);line-height:1.78;
  color:var(--ink-70);max-width:34em;
}
.section--ink .lede{color:rgba(244,239,230,.7)}

.rule{height:1px;width:100%;background:var(--line)}
.rule--slant{
  height:1px;width:100%;background:var(--line);
  transform:rotate(-1.4deg);transform-origin:left center;
}

/* ---------- 正文 ---------- */
.prose{max-width:40em}
.prose p{
  max-width:36em;margin-bottom:1.15em;
  line-height:1.9;color:var(--ink-70);
}
.prose p:last-child{margin-bottom:0}
.prose h3{margin:1.9em 0 .7em}
.prose ul,.prose ol{max-width:36em;margin:0 0 1.2em;padding-left:0}
.prose li{position:relative;padding-left:1.4em;margin-bottom:.55em;color:var(--ink-70)}
.prose li::before{
  content:"";position:absolute;left:0;top:.72em;
  width:7px;height:1px;background:var(--sky);
}
.section--ink .prose p,.section--ink .prose li{color:rgba(244,239,230,.76)}

/* ---------- 标签 ---------- */
.tag{
  display:inline-flex;align-items:center;gap:6px;
  padding:3px 9px;border-radius:2px;
  font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;
  background:var(--ice-soft);color:var(--sky-deep);
  border:1px solid rgba(15,76,154,.18);
  white-space:nowrap;
}
.tag--yellow{background:rgba(232,178,58,.16);border-color:rgba(232,178,58,.45);color:#8A6412}
.tag--red{background:rgba(192,57,43,.1);border-color:rgba(192,57,43,.34);color:var(--red)}
.tag--green{background:rgba(46,139,110,.12);border-color:rgba(46,139,110,.36);color:var(--green)}

/* ---------- 卡片与面板 ---------- */
.card{
  position:relative;
  background:var(--snow);
  border:1px solid var(--line-soft);
  border-radius:3px;
  padding:clamp(18px,2.4vw,30px);
  box-shadow:var(--lift-1);
}
.card--float{box-shadow:var(--lift-2);transform:translateY(-3px)}
.card h3{margin-bottom:.5em}
.card p{color:var(--ink-70)}

.panel{
  background:var(--paper-2);
  border-left:2px solid var(--sky);
  padding:clamp(16px,2.2vw,28px);
  border-radius:0 2px 2px 0;
}
.panel p{color:var(--ink-70);max-width:36em}

/* ---------- 数据 ---------- */
.stat{display:flex;flex-direction:column;gap:7px}
.stat__num{
  font-family:var(--font-mono);font-variant-numeric:tabular-nums;
  font-size:clamp(30px,4.6vw,54px);font-weight:700;line-height:1;
  letter-spacing:-.03em;color:var(--ink);
}
.stat__label{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;color:var(--rock)}
.stat--accent .stat__num{color:var(--flare)}

.data-num{
  font-family:var(--font-mono);font-variant-numeric:tabular-nums;
  font-weight:700;letter-spacing:-.02em;line-height:1.05;
}
.data-num--lg{font-size:clamp(28px,4vw,46px)}
.data-num--xl{font-size:clamp(38px,6.4vw,76px);letter-spacing:-.035em}
.data-num--hl{color:var(--flare)}

.table{width:100%;font-size:14px;line-height:1.6}
.table caption{
  text-align:left;padding-bottom:10px;
  font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;color:var(--rock);
}
.table th{
  padding:9px 12px;text-align:left;white-space:nowrap;
  font-family:var(--font-mono);font-size:11px;font-weight:600;letter-spacing:.1em;
  background:var(--sky-deep);color:var(--snow);
}
.table td{
  padding:10px 12px;border-bottom:1px solid var(--line-soft);
  font-variant-numeric:tabular-nums;color:var(--ink-70);
}
.table tbody tr:nth-child(even){background:rgba(169,199,232,.16)}
.table tbody tr:hover{background:rgba(255,106,19,.08)}
.table .num{font-family:var(--font-mono);font-weight:600;text-align:right;color:var(--ink)}
.table th.num{text-align:right}
.section--ink .table td{color:rgba(244,239,230,.78);border-bottom-color:var(--line-invert)}
.section--ink .table tbody tr:nth-child(even){background:rgba(244,239,230,.05)}

/* ---------- 图例 ---------- */
.legend{
  display:flex;flex-wrap:wrap;gap:8px 18px;
  font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;color:var(--rock);
}
.legend__item{display:inline-flex;align-items:center;gap:7px}
.legend__swatch{width:9px;height:9px;flex:0 0 auto;border-radius:2px;background:var(--sky)}
.legend__swatch--flare{background:var(--flare)}
.legend__swatch--green{background:var(--green)}
.legend__swatch--red{background:var(--red)}
.legend__swatch--yellow{background:var(--yellow)}
.legend__swatch--ice{background:var(--ice)}
.legend__swatch--ink{background:var(--ink)}

/* ---------- 筛选 ---------- */
.filters{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.filter-btn{
  padding:6px 14px;border:1px solid var(--line);border-radius:999px;
  background:var(--snow);color:var(--ink-70);
  font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;
  transition:background-color .18s var(--ease),color .18s var(--ease),
             border-color .18s var(--ease),transform .18s var(--ease);
}
.filter-btn:hover{border-color:var(--sky);color:var(--sky-deep);transform:translateY(-1px)}
.filter-btn[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.filter-count{font-family:var(--font-mono);font-size:12px;color:var(--rock);margin-left:4px}
[data-tags][hidden]{display:none!important}

/* ---------- 图片容器 ---------- */
.figure{margin:0;position:relative}
.figure__media{
  position:relative;overflow:hidden;border-radius:3px;
  aspect-ratio:16/9;
  background:
    linear-gradient(135deg,rgba(169,199,232,.55) 0%,rgba(244,239,230,.25) 52%,rgba(255,106,19,.12) 100%),
    var(--ice-soft);
  box-shadow:var(--lift-1);
}
.figure__media img{width:100%;height:100%;object-fit:cover}
.figure__media--tall{aspect-ratio:3/4}
.figure__media--wide{aspect-ratio:21/9}
.figure__media--square{aspect-ratio:1/1}
.figure__cap{
  margin-top:9px;
  font-family:var(--font-mono);font-size:11px;letter-spacing:.07em;
  line-height:1.65;color:var(--rock);
}
.ridge{
  position:absolute;left:0;right:0;bottom:0;height:42%;pointer-events:none;
  opacity:.55;
  background:linear-gradient(180deg,transparent 0%,rgba(169,199,232,.55) 100%);
  clip-path:polygon(0 100%,0 64%,12% 34%,22% 56%,34% 18%,48% 48%,60% 26%,74% 52%,86% 30%,100% 58%,100% 100%);
}
.ridge--ink{
  background:linear-gradient(180deg,transparent 0%,rgba(16,24,32,.35) 100%);
}

/* ---------- 面包屑 ---------- */
.crumbs{
  display:flex;flex-wrap:wrap;align-items:center;gap:8px;
  font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;color:var(--rock);
}
.crumbs a{color:var(--rock);border-bottom:1px solid transparent;transition:color .18s var(--ease),border-color .18s var(--ease)}
.crumbs a:hover{color:var(--sky-deep);border-color:currentColor}
.crumbs__sep{opacity:.45}
.section--ink .crumbs,.section--ink .crumbs a{color:rgba(244,239,230,.6)}

/* ---------- 回到顶部 ---------- */
.totop{
  position:fixed;right:clamp(14px,3vw,34px);bottom:clamp(14px,3vw,34px);z-index:90;
  display:inline-flex;align-items:center;gap:7px;
  padding:10px 14px;border-radius:2px;
  background:var(--ink);color:var(--paper);
  font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;
  box-shadow:var(--lift-2);
  opacity:0;visibility:hidden;transform:translateY(8px);
  transition:opacity .22s var(--ease),transform .22s var(--ease),visibility .22s;
}
.totop[data-visible="true"]{opacity:1;visibility:visible;transform:none}
.totop:hover{background:var(--sky-deep)}
.totop__arrow{font-size:13px;line-height:1}

/* ---------- 页脚 ---------- */
.site-footer{
  background:var(--rock-deep);
  color:rgba(244,239,230,.78);
  margin-top:clamp(48px,8vw,120px);
}
.foot__inner{
  max-width:var(--shell-max);
  margin:0 auto;
  padding:clamp(40px,6vw,74px) var(--gutter) clamp(26px,4vw,44px);
  display:grid;
  grid-template-columns:minmax(190px,1.05fr) minmax(0,2.1fr) minmax(210px,1.25fr);
  gap:clamp(26px,4vw,64px);
}
.foot__lead{display:flex;flex-direction:column;gap:10px}
.foot__brand{display:flex;align-items:center;gap:10px}
.site-footer .brand__mark{
  width:22px;height:22px;
  background:linear-gradient(180deg,var(--sky) 0 40%,var(--flare) 40% 52%,var(--snow) 52% 100%);
}
.foot__brandname{font-size:17px;font-weight:900;letter-spacing:.1em;color:var(--snow)}
.foot__sig{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;color:var(--ice)}
.foot__season{
  display:inline-flex;align-items:center;gap:7px;
  font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;
  color:rgba(244,239,230,.66);
}
.foot__cols{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(18px,3vw,38px);
}
.foot__col{min-width:0}
.foot__title{
  font-family:var(--font-mono);font-size:11px;letter-spacing:.2em;
  text-transform:uppercase;color:var(--ice);
  margin-bottom:14px;
}
.foot__list{display:flex;flex-direction:column;gap:2px}
.foot__link{
  display:inline-block;padding:5px 0;
  font-size:14px;color:rgba(244,239,230,.78);
  border-bottom:1px solid transparent;
  transition:color .18s var(--ease),border-color .18s var(--ease);
}
.foot__link:hover{color:var(--snow);border-color:var(--flare)}
.foot__contact{min-width:0}
.foot__crow{display:flex;gap:10px;padding:5px 0;font-size:13px;line-height:1.7}
.foot__ck{
  flex:0 0 auto;
  font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;
  color:var(--ice);padding-top:2px;
}
.foot__cv{color:rgba(244,239,230,.8);word-break:break-word;font-variant-numeric:tabular-nums}
.foot__note{
  margin-top:12px;font-size:12px;line-height:1.75;
  color:rgba(244,239,230,.5);max-width:30em;
}
.foot__bottom{
  max-width:var(--shell-max);
  margin:0 auto;
  padding:16px var(--gutter) clamp(24px,3.4vw,36px);
  border-top:1px solid var(--line-invert);
  display:flex;flex-wrap:wrap;align-items:center;gap:8px 24px;
  font-size:12px;color:rgba(244,239,230,.52);
}
.foot__copy{margin-right:auto;font-family:var(--font-mono);letter-spacing:.04em}
.foot__icp{font-family:var(--font-mono);letter-spacing:.04em}
.foot__foot{flex:1 1 100%;max-width:60em;line-height:1.7}

/* ---------- 响应式 ---------- */
@media (max-width:1080px){
  .brand__sig{display:none}
}
@media (max-width:1000px){
  .season-chip{display:none}
}
@media (max-width:900px){
  .cmdbar__inner{gap:10px}
  .nav-toggle{display:inline-flex}
  .nav{
    position:absolute;left:0;right:0;top:100%;
    display:none;
    background:var(--paper);
    border-bottom:1px solid var(--line);
    box-shadow:0 22px 42px -30px rgba(16,24,32,.6);
    padding:6px 0 14px;
    max-height:calc(100vh - var(--cmdbar-h) - 3px);
    overflow-y:auto;
  }
  .nav[data-open="true"]{display:block}
  .nav__list{flex-direction:column;align-items:stretch;gap:0}
  .nav__item{border-bottom:1px solid var(--line-soft)}
  .nav__item:last-child{border-bottom:0}
  .nav__link{
    width:100%;padding:13px var(--gutter);
    font-size:16px;border-radius:0;color:var(--ink);
  }
  .nav__link[aria-current="page"]{background:rgba(255,106,19,.09)}
  .nav__link[aria-current="page"]::after{
    left:0;right:auto;top:10px;bottom:10px;width:3px;height:auto;bottom:10px;
  }
  .cmdbar__meta{margin-left:auto}
  .foot__inner{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .foot__lead{grid-column:1 / -1}
  .foot__contact{grid-column:1 / -1}
  .totop{padding:9px 12px}
  .totop__label{display:none}
}
@media (max-width:620px){
  :root{--gutter:16px;--sp-section:clamp(42px,11vw,72px)}
  .brand__name{font-size:14px;letter-spacing:.06em}
  .cmdbar__meta .btn--sm{padding:6px 10px;font-size:11px}
  .nav-toggle__label{display:none}
  .foot__cols{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .foot__crow{flex-direction:column;gap:2px}
  .foot__bottom{flex-direction:column;align-items:flex-start;gap:6px}
}

/* ---------- 动效降级 ---------- */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{
    animation-duration:.001ms!important;
    animation-iteration-count:1!important;
    transition-duration:.001ms!important;
    scroll-behavior:auto!important;
  }
  html.js .reveal{opacity:1;transform:none}
  .card--float{transform:none}
  .btn--primary:hover,.btn--sky:hover,.filter-btn:hover{transform:none}
}
