/* ============================================================
   南宫体育 · 共享层 /assets/site.css
   深靛蓝底 + 珠宝色分区 + 玻璃叠层 + 等宽数字
   ============================================================ */

/* ---------- 变量 ---------- */
:root{
  --c-ink:#0A1030;
  --c-panel:#191A4E;
  --c-teal:#07302C;
  --c-wine:#4E1230;
  --c-cyan:#35F2D6;
  --c-orange:#FF8A2B;
  --c-text:#DDE7F5;
  --c-muted:#7C8CB4;
  --c-yellow:#FFD34D;

  --glass:rgba(255,255,255,.08);
  --glass-strong:rgba(255,255,255,.16);
  --line:rgba(124,140,180,.26);
  --line-strong:rgba(53,242,214,.42);
  --glow-cyan:0 0 22px rgba(53,242,214,.35);
  --glow-orange:0 0 22px rgba(255,138,43,.32);

  --font-sans:"Noto Sans SC","Source Han Sans SC","PingFang SC","Hiragino Sans GB","Microsoft YaHei",system-ui,-apple-system,sans-serif;
  --font-mono:"JetBrains Mono","IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;

  --fs-12:12px; --fs-14:14px; --fs-17:17px; --fs-22:22px;
  --fs-32:32px; --fs-48:48px; --fs-72:72px; --fs-120:120px;
  --lh-tight:1.2; --lh-mid:1.5; --lh-body:1.85;

  --w-wrap:1240px;
  --r-sm:6px; --r-md:12px; --r-lg:20px;
  --dur:.2s;
  --gap:clamp(1rem,2.4vw,1.75rem);
}

/* ---------- reset ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:clamp(96px,14vh,160px)}
body,h1,h2,h3,h4,h5,p,ul,ol,figure,blockquote,dl,dd,address{margin:0}
ul,ol{padding:0;list-style:none}
img,svg,video{display:block;max-width:100%}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
a{color:inherit;text-decoration:none}
table{border-collapse:collapse}
::selection{background:var(--c-cyan);color:var(--c-ink)}
:focus-visible{outline:2px solid var(--c-cyan);outline-offset:3px;border-radius:2px}

/* ---------- 基础排版 ---------- */
body{
  min-height:100vh;
  background-color:var(--c-ink);
  background-image:
    radial-gradient(900px 520px at 10% -8%,rgba(53,242,214,.10),transparent 62%),
    radial-gradient(760px 480px at 94% 4%,rgba(255,138,43,.08),transparent 58%),
    radial-gradient(1000px 700px at 50% 118%,rgba(78,18,48,.35),transparent 65%);
  background-repeat:no-repeat;
  color:var(--c-text);
  font-family:var(--font-sans);
  font-size:var(--fs-17);
  line-height:var(--lh-body);
  font-weight:400;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,h4{font-weight:900;line-height:var(--lh-tight);letter-spacing:-.02em;color:var(--c-text)}
h1{font-size:clamp(32px,5vw,64px)}
h2{font-size:clamp(24px,3.4vw,48px)}
h3{font-size:var(--fs-22)}
p{line-height:var(--lh-body)}
strong{font-weight:900;color:#fff}

.mono,.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:.02em}
.label{
  font-family:var(--font-mono);
  font-size:var(--fs-12);
  letter-spacing:.14em;
  line-height:var(--lh-mid);
  color:var(--c-muted);
  text-transform:uppercase;
}
.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}
.text-cyan{color:var(--c-cyan)}
.text-orange{color:var(--c-orange)}
.text-muted{color:var(--c-muted)}

/* ---------- 版心 ---------- */
.wrap{width:min(var(--w-wrap),calc(100% - 2.5rem));margin-inline:auto}
#main-content{display:block;scroll-margin-top:clamp(96px,14vh,160px)}

/* ---------- 跳过链接 ---------- */
.skip-link{
  position:absolute;left:1rem;top:.5rem;z-index:90;
  transform:translateY(-180%);
  background:var(--c-cyan);color:var(--c-ink);
  font-size:var(--fs-14);font-weight:700;letter-spacing:.04em;
  padding:.5rem .95rem;border-radius:var(--r-sm);
  transition:transform var(--dur) ease;
}
.skip-link:focus{transform:translateY(0)}

/* ---------- 按钮 ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.5rem;
  font-family:var(--font-sans);font-size:var(--fs-14);font-weight:700;letter-spacing:.03em;
  padding:.62rem 1.1rem;border-radius:999px;border:1px solid transparent;
  white-space:nowrap;
  transition:transform var(--dur) ease,background var(--dur) ease,border-color var(--dur) ease,box-shadow var(--dur) ease,color var(--dur) ease;
}
.btn--primary{background:var(--c-orange);color:#1A0B02;box-shadow:0 6px 18px rgba(255,138,43,.22)}
.btn--primary:hover{transform:translateY(-1px);box-shadow:0 10px 26px rgba(255,138,43,.36)}
.btn--ghost{background:var(--glass);border-color:var(--line);color:var(--c-text)}
.btn--ghost:hover{border-color:var(--line-strong);color:var(--c-cyan);background:rgba(53,242,214,.10)}
.btn--quiet{color:var(--c-cyan);border-color:transparent;padding-inline:.4rem;border-radius:var(--r-sm)}
.btn--quiet:hover{background:rgba(53,242,214,.10)}
.btn--sm{font-size:var(--fs-12);padding:.42rem .82rem;letter-spacing:.06em}
.btn--block{width:100%}

/* ---------- 顶部进度线 ---------- */
.scroll-progress{
  position:absolute;top:0;left:0;z-index:5;
  height:2px;width:0;
  background:linear-gradient(90deg,var(--c-cyan),var(--c-orange));
  box-shadow:0 0 12px rgba(53,242,214,.6);
  transition:width .1s linear;
}

/* ---------- 刊头 ---------- */
.site-header{
  position:sticky;top:0;z-index:60;
  background:rgba(10,16,48,.9);
  -webkit-backdrop-filter:blur(16px) saturate(140%);
  backdrop-filter:blur(16px) saturate(140%);
  border-bottom:1px solid var(--line);
}
.masthead{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
  align-items:center;
  gap:clamp(.75rem,2vw,2rem);
  padding-block:clamp(.85rem,1.6vw,1.35rem);
  transition:padding var(--dur) ease;
}
.masthead__mark{display:flex;align-items:center;gap:.7rem;min-width:0}
.masthead__mark-text{white-space:nowrap}
.round-dial{
  position:relative;flex:none;
  width:58px;height:58px;border-radius:50%;
  display:grid;place-items:center;
  background:repeating-conic-gradient(from 0deg,rgba(53,242,214,.55) 0deg 1.2deg,transparent 1.2deg 15deg);
  transition:width var(--dur) ease,height var(--dur) ease;
}
.round-dial::after{
  content:"";position:absolute;inset:9px;border-radius:50%;
  background:var(--c-panel);border:1px solid rgba(53,242,214,.35);
}
.round-dial__value{position:relative;font-family:var(--font-mono);font-size:var(--fs-14);letter-spacing:.02em;color:var(--c-cyan)}
.masthead__brand{display:grid;justify-items:center;gap:.3rem;text-align:center;min-width:0}
.masthead__word{
  font-size:clamp(26px,3.6vw,44px);font-weight:900;letter-spacing:-.02em;line-height:1.05;color:#FFFFFF;
  text-shadow:0 0 26px rgba(53,242,214,.25);
  transition:font-size var(--dur) ease,text-shadow var(--dur) ease;
}
.masthead__word:hover{text-shadow:0 0 34px rgba(53,242,214,.55)}
.masthead__meta{font-family:var(--font-mono);font-size:var(--fs-12);letter-spacing:.14em;color:var(--c-muted);line-height:var(--lh-mid)}
.masthead__side{display:flex;align-items:center;justify-content:flex-end;gap:.55rem;min-width:0}

/* ---------- 移动导航按钮 ---------- */
.nav-toggle{
  display:none;align-items:center;gap:.5rem;
  padding:.45rem .75rem;border-radius:999px;
  border:1px solid var(--line);background:var(--glass);
  font-size:var(--fs-12);letter-spacing:.12em;color:var(--c-text);
}
.nav-toggle__bars{position:relative;display:block;width:16px;height:10px}
.nav-toggle__bars::before,
.nav-toggle__bars::after{
  content:"";position:absolute;left:0;right:0;height:2px;background:var(--c-cyan);
  transition:transform var(--dur) ease;
}
.nav-toggle__bars::before{top:0}
.nav-toggle__bars::after{bottom:0}
.nav-toggle[aria-expanded="true"] .nav-toggle__bars::before{transform:translateY(4px) rotate(45deg)}
.nav-toggle[aria-expanded="true"] .nav-toggle__bars::after{transform:translateY(-4px) rotate(-45deg)}
.nav-toggle:hover{border-color:var(--line-strong);color:var(--c-cyan)}

/* ---------- 刊头第二行 ---------- */
.header-utility{
  display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;
  padding-block:.7rem;border-top:1px solid var(--line);
}
.segment{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}
.segment__label{margin-right:.35rem}
.segment__btn{
  font-family:var(--font-mono);font-size:var(--fs-12);letter-spacing:.1em;
  padding:.4rem .75rem;border-radius:999px;border:1px solid var(--line);
  color:var(--c-muted);background:transparent;
  transition:color var(--dur) ease,background var(--dur) ease,border-color var(--dur) ease,box-shadow var(--dur) ease;
}
.segment__btn:hover{color:var(--c-text);border-color:var(--line-strong)}
.segment__btn.is-active,
.segment__btn[aria-pressed="true"]{
  color:var(--c-ink);background:var(--c-cyan);border-color:var(--c-cyan);
  box-shadow:0 0 18px rgba(53,242,214,.35);
}
.header-utility__right{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap}
.header-link{font-size:var(--fs-14);color:var(--c-muted);border-bottom:1px dashed var(--line);padding-bottom:2px;transition:color var(--dur) ease,border-color var(--dur) ease}
.header-link:hover{color:var(--c-cyan);border-color:var(--line-strong)}
.mono-chip{
  font-family:var(--font-mono);font-size:var(--fs-12);letter-spacing:.08em;
  color:var(--c-ink);background:var(--c-yellow);
  padding:.18rem .5rem;border-radius:4px;
}

/* ---------- 栏目导航 ---------- */
.site-nav{border-top:1px solid var(--line);background:linear-gradient(180deg,rgba(25,26,78,.55),rgba(10,16,48,0))}
.nav-list{display:flex;justify-content:center;align-items:stretch;gap:clamp(.5rem,2.6vw,2.4rem)}
.nav-link{
  position:relative;display:block;padding:.85rem .2rem;
  font-size:var(--fs-14);font-weight:700;letter-spacing:.06em;color:var(--c-text);
  transition:color var(--dur) ease;
}
.nav-link::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:2px;
  background:var(--c-cyan);box-shadow:0 0 12px var(--c-cyan);
  transform:scaleX(0);transform-origin:center;
  transition:transform var(--dur) ease;
}
.nav-link:hover{color:var(--c-cyan)}
.nav-link:hover::after{transform:scaleX(1)}
.nav-link[aria-current="page"]{color:var(--c-cyan)}
.nav-link[aria-current="page"]::after{transform:scaleX(1)}

/* ---------- 页脚 ---------- */
.site-footer{
  margin-top:clamp(3rem,7vw,6rem);
  padding-block:clamp(2.5rem,5vw,4.5rem);
  border-top:1px solid var(--line);
  background:linear-gradient(180deg,rgba(7,48,44,0) 0%,rgba(7,48,44,.5) 24%,rgba(78,18,48,.3) 100%);
}
.footer-cta{
  display:grid;gap:.75rem;justify-items:start;
  padding:clamp(1.25rem,3vw,2rem);border-radius:var(--r-lg);
  margin-bottom:clamp(2rem,4vw,3rem);
}
.footer-cta__kicker{color:var(--c-cyan)}
.footer-cta__line{font-size:clamp(20px,2.6vw,32px);font-weight:900;letter-spacing:-.01em;line-height:var(--lh-tight)}

.footer-grid{
  display:grid;grid-template-columns:repeat(6,minmax(0,1fr));
  gap:clamp(1rem,2vw,1.75rem);
  padding-bottom:clamp(1.75rem,3vw,2.5rem);
  border-bottom:1px solid var(--line);
}
.footer-col__title{font-size:var(--fs-14);font-weight:900;letter-spacing:.04em;color:var(--c-cyan);margin-bottom:.7rem}
.footer-list{display:grid;gap:.45rem}
.footer-list a{font-size:var(--fs-14);line-height:var(--lh-mid);color:var(--c-text);opacity:.82;border-bottom:1px solid transparent;transition:color var(--dur) ease,opacity var(--dur) ease,border-color var(--dur) ease}
.footer-list a:hover{color:var(--c-cyan);opacity:1;border-color:var(--line-strong)}

.footer-contact{
  display:grid;gap:.5rem;
  padding-block:clamp(1.25rem,2.5vw,2rem);
  border-bottom:1px solid var(--line);
}
.footer-contact__item{display:flex;gap:.7rem;flex-wrap:wrap;align-items:baseline;font-family:var(--font-mono);font-size:var(--fs-14);color:var(--c-text);line-height:var(--lh-mid)}
.footer-contact__item .label{min-width:5.5rem}
.footer-contact__note{font-size:var(--fs-14);color:var(--c-muted);max-width:70ch}

.footer-base{
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;
  padding-top:clamp(1.25rem,2.5vw,2rem);
  font-family:var(--font-mono);font-size:var(--fs-12);letter-spacing:.08em;color:var(--c-muted);
}
.footer-brand{display:flex;align-items:baseline;gap:.75rem;flex-wrap:wrap}
.footer-brand__word{font-family:var(--font-sans);font-size:20px;font-weight:900;letter-spacing:-.01em;color:var(--c-text)}
.footer-brand__meta{color:var(--c-muted)}
.footer-legal,.footer-year{color:var(--c-muted)}

/* ---------- 章节骨架 ---------- */
.section{padding-block:clamp(2.5rem,6vw,5rem)}
.section--tight{padding-block:clamp(1.5rem,3vw,2.5rem)}
.section-head{display:grid;gap:.6rem;margin-bottom:clamp(1.25rem,3vw,2rem)}
.section-num{font-family:var(--font-mono);font-weight:700;font-size:clamp(40px,7vw,72px);line-height:1;letter-spacing:-.02em;color:rgba(53,242,214,.24);font-variant-numeric:tabular-nums}
.section-kicker{font-family:var(--font-mono);font-size:var(--fs-12);letter-spacing:.14em;color:var(--c-cyan)}
.section-title{font-size:clamp(24px,3.4vw,48px);font-weight:900;letter-spacing:-.02em;line-height:var(--lh-tight)}
.section-lede{max-width:64ch;color:var(--c-muted);font-size:var(--fs-17);line-height:var(--lh-body)}
.stack{display:grid;gap:clamp(.75rem,1.6vw,1.25rem)}

/* ---------- 网格 ---------- */
.grid{display:grid;gap:var(--gap)}
.grid--7-5{grid-template-columns:7fr 5fr}
.grid--8-4{grid-template-columns:8fr 4fr}
.grid--6-6{grid-template-columns:6fr 6fr}
.grid--auto{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
@media (max-width:860px){
  .grid--7-5,.grid--8-4,.grid--6-6{grid-template-columns:1fr}
}

/* ---------- 面板 ---------- */
.panel{
  position:relative;
  background:var(--c-panel);
  border:1px solid var(--line);
  border-radius:var(--r-lg);
  padding:clamp(1.25rem,3vw,2.25rem);
}
.panel--glass{
  background:var(--glass);
  -webkit-backdrop-filter:blur(12px);
  backdrop-filter:blur(12px);
  border-color:var(--glass-strong);
}
.panel--indigo{background:linear-gradient(160deg,rgba(25,26,78,.92),rgba(25,26,78,.5))}
.panel--teal{background:linear-gradient(160deg,rgba(7,48,44,.92),rgba(7,48,44,.45));border-color:rgba(53,242,214,.24)}
.panel--wine{background:linear-gradient(160deg,rgba(78,18,48,.92),rgba(78,18,48,.42));border-color:rgba(255,138,43,.24)}

/* ---------- 指标 ---------- */
.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:clamp(.75rem,2vw,1.5rem)}
.stat{display:grid;gap:.3rem;padding-block:1rem;border-top:2px solid var(--line)}
.stat__value{
  font-family:var(--font-mono);font-variant-numeric:tabular-nums;
  font-size:clamp(40px,6vw,72px);font-weight:700;line-height:1;
  letter-spacing:-.03em;color:var(--c-cyan);text-shadow:var(--glow-cyan);
}
.stat--orange .stat__value{color:var(--c-orange);text-shadow:var(--glow-orange)}
.stat__unit{font-family:var(--font-mono);font-size:var(--fs-14);letter-spacing:.1em;color:var(--c-muted)}
.stat__label{font-size:var(--fs-14);color:var(--c-muted)}

/* ---------- 表格 ---------- */
.table-scroll{
  overflow-x:auto;
  border:1px solid var(--line);border-radius:var(--r-md);
  background:rgba(25,26,78,.5);
}
.data-table{width:100%;min-width:560px;font-size:var(--fs-14);line-height:var(--lh-mid)}
.data-table caption{
  text-align:left;padding:.85rem 1rem;border-bottom:1px solid var(--line);
  font-family:var(--font-mono);font-size:var(--fs-12);letter-spacing:.14em;color:var(--c-muted);
}
.data-table th,.data-table td{padding:.7rem 1rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.data-table thead th{
  position:sticky;top:0;z-index:1;
  background:rgba(10,16,48,.94);
  font-family:var(--font-mono);font-size:var(--fs-12);letter-spacing:.12em;color:var(--c-cyan);font-weight:700;
}
.data-table tbody tr:hover{background:rgba(53,242,214,.06)}
.data-table tbody tr:last-child th,.data-table tbody tr:last-child td{border-bottom:0}
.data-table .num,.data-table td[data-num]{font-family:var(--font-mono);font-variant-numeric:tabular-nums}

/* ---------- 筛选 ---------- */
.filter-bar{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:clamp(1rem,2vw,1.5rem)}
.filter-btn{
  font-family:var(--font-mono);font-size:var(--fs-12);letter-spacing:.1em;
  padding:.45rem .9rem;border-radius:999px;border:1px solid var(--line);
  color:var(--c-muted);background:rgba(255,255,255,.03);
  transition:color var(--dur) ease,background var(--dur) ease,border-color var(--dur) ease;
}
.filter-btn:hover{color:var(--c-text);border-color:var(--line-strong)}
.filter-btn[aria-pressed="true"]{color:var(--c-ink);background:var(--c-cyan);border-color:var(--c-cyan)}
.filter-item.is-hidden{display:none}
.filter-item.is-enter{animation:itemIn .24s ease both}
@keyframes itemIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}

/* ---------- 标签 ---------- */
.tag{
  display:inline-flex;align-items:center;gap:.35rem;
  font-family:var(--font-mono);font-size:var(--fs-12);letter-spacing:.08em;
  padding:.22rem .55rem;border-radius:4px;
  border:1px solid var(--line);color:var(--c-muted);background:rgba(255,255,255,.04);
}
.tag--cyan{color:var(--c-cyan);border-color:rgba(53,242,214,.4);background:rgba(53,242,214,.08)}
.tag--orange{color:var(--c-orange);border-color:rgba(255,138,43,.4);background:rgba(255,138,43,.08)}
.tag--yellow{color:var(--c-yellow);border-color:rgba(255,211,77,.4);background:rgba(255,211,77,.08)}

/* ---------- 卡片 ---------- */
.card{
  position:relative;display:grid;gap:.6rem;
  padding:clamp(1rem,2.2vw,1.5rem);
  background:var(--glass);border:1px solid var(--line);border-radius:var(--r-md);
  transition:transform var(--dur) ease,border-color var(--dur) ease,box-shadow var(--dur) ease;
}
.card:hover{transform:translateY(-2px);border-color:var(--line-strong);box-shadow:0 12px 30px rgba(0,0,0,.35)}
.card__title{font-size:var(--fs-22);font-weight:900;letter-spacing:-.01em;line-height:var(--lh-tight)}
.card__meta{font-family:var(--font-mono);font-size:var(--fs-12);letter-spacing:.1em;color:var(--c-muted)}
.card__body{font-size:var(--fs-17);line-height:var(--lh-body);color:var(--c-text);opacity:.86}

/* ---------- 时间线 ---------- */
.timeline{
  display:grid;
  border-left:1px solid var(--line-strong);
  padding-left:clamp(1rem,2vw,1.5rem);
}
.timeline__item{position:relative;padding-block:.9rem;border-bottom:1px solid var(--line)}
.timeline__item::before{
  content:"";position:absolute;top:1.5rem;
  left:calc(-1 * clamp(1rem,2vw,1.5rem) - 5px);
  width:9px;height:9px;border-radius:50%;
  background:var(--c-cyan);box-shadow:0 0 12px var(--c-cyan);
}
.timeline__time{font-family:var(--font-mono);font-size:var(--fs-12);letter-spacing:.1em;color:var(--c-orange)}

/* ---------- 面包屑 ---------- */
.breadcrumb{
  display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;
  padding-block:1rem;
  font-family:var(--font-mono);font-size:var(--fs-12);letter-spacing:.1em;color:var(--c-muted);
}
.breadcrumb__item{display:inline-flex;align-items:center;gap:.4rem}
.breadcrumb__item + .breadcrumb__item::before{content:"/";color:var(--line-strong)}
.breadcrumb a:hover{color:var(--c-cyan)}
.breadcrumb [aria-current="page"]{color:var(--c-text)}

/* ---------- 长文 ---------- */
.prose{max-width:68ch;font-size:var(--fs-17);line-height:var(--lh-body);color:var(--c-text)}
.prose h2{font-size:var(--fs-32);margin-block:2rem .75rem}
.prose h3{font-size:var(--fs-22);font-weight:900;margin-block:1.5rem .5rem}
.prose p{margin-block:.9rem}
.prose ul{display:grid;gap:.5rem;margin-block:1rem;padding-left:1.15rem;list-style:disc}
.prose a{color:var(--c-cyan);border-bottom:1px solid rgba(53,242,214,.4)}
.prose code{font-family:var(--font-mono);font-size:.92em;background:rgba(255,255,255,.06);padding:.1em .35em;border-radius:4px;color:var(--c-yellow)}
.prose blockquote{border-left:2px solid var(--c-cyan);padding-left:1rem;color:var(--c-muted);margin-block:1.25rem}

/* ---------- 图片容器 ---------- */
.media{
  position:relative;overflow:hidden;
  border:1px solid var(--line);border-radius:var(--r-md);
  aspect-ratio:16/9;
  background:linear-gradient(135deg,rgba(7,48,44,.85),rgba(10,16,48,.95) 46%,rgba(78,18,48,.7));
}
.media__img{width:100%;height:100%;object-fit:cover;filter:saturate(.86) contrast(1.06) brightness(.94)}
.media::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background-image:
    linear-gradient(rgba(53,242,214,.10) 1px,transparent 1px),
    linear-gradient(90deg,rgba(53,242,214,.10) 1px,transparent 1px);
  background-size:44px 44px;
  mix-blend-mode:screen;
}
.media__caption{
  position:absolute;left:0;right:0;bottom:0;z-index:1;
  padding:.75rem 1rem;
  font-family:var(--font-mono);font-size:var(--fs-12);letter-spacing:.1em;color:var(--c-text);
  background:linear-gradient(180deg,transparent,rgba(10,16,48,.9));
}
.media--wide{aspect-ratio:21/9}
.media--square{aspect-ratio:1/1}
.media--tall{aspect-ratio:3/4}

/* ---------- 分隔与显现 ---------- */
.glow-line{height:1px;border:0;margin-block:clamp(1.5rem,3vw,2.5rem);background:linear-gradient(90deg,transparent,rgba(53,242,214,.7),transparent)}
.js-ready .reveal{opacity:0;transform:translateY(12px);transition:opacity var(--dur) ease,transform var(--dur) ease}
.js-ready .reveal.is-visible{opacity:1;transform:none}

/* ---------- 复制与回顶 ---------- */
[data-copy]{cursor:copy}
[data-copied="true"]{color:var(--c-cyan)}
.to-top{
  position:fixed;right:clamp(.75rem,2vw,1.5rem);bottom:clamp(.75rem,2vw,1.5rem);z-index:70;
  display:inline-flex;align-items:center;gap:.4rem;
  padding:.55rem .95rem;border-radius:999px;
  border:1px solid var(--line-strong);
  background:rgba(10,16,48,.88);
  -webkit-backdrop-filter:blur(10px);
  backdrop-filter:blur(10px);
  color:var(--c-cyan);font-family:var(--font-mono);font-size:var(--fs-12);letter-spacing:.1em;
  opacity:0;visibility:hidden;transform:translateY(8px);
  transition:opacity var(--dur) ease,transform var(--dur) ease,visibility var(--dur) ease;
}
.to-top.is-visible{opacity:1;visibility:visible;transform:none}

/* ---------- 头部收窄（桌面） ---------- */
@media (min-width:901px){
  .site-header.is-compact .masthead{padding-block:.5rem}
  .site-header.is-compact .round-dial{width:38px;height:38px}
  .site-header.is-compact .round-dial::after{inset:6px}
  .site-header.is-compact .round-dial__value{font-size:11px}
  .site-header.is-compact .masthead__mark-text{display:none}
  .site-header.is-compact .masthead__meta{display:none}
  .site-header.is-compact .masthead__word{font-size:clamp(18px,2.2vw,26px);text-shadow:none}
  .site-header.is-compact .header-utility{display:none}
  .site-header.is-compact .btn--ghost{display:none}
  .site-header.is-compact .nav-link{padding-block:.6rem}
}

/* ---------- 响应式 ---------- */
@media (max-width:1000px){
  .footer-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:900px){
  .masthead{grid-template-columns:auto minmax(0,1fr) auto;gap:.75rem}
  .masthead__mark-text{display:none}
  .masthead__side .btn{display:none}
  .nav-toggle{display:inline-flex}
  .site-nav{
    position:absolute;left:0;right:0;top:100%;
    display:none;
    background:rgba(10,16,48,.98);
    -webkit-backdrop-filter:blur(16px);
    backdrop-filter:blur(16px);
    border-bottom:1px solid var(--line);
  }
  .site-nav[data-open]{display:block;animation:navDrop .22s ease both}
  @keyframes navDrop{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
  .nav-list{flex-direction:column;gap:0;width:100%;margin-inline:0}
  .nav-link{padding:.9rem 1.25rem;border-bottom:1px solid var(--line)}
  .nav-link::after{display:none}
  .nav-link[aria-current="page"]{background:rgba(53,242,214,.08)}
  .header-utility{justify-content:flex-start}
}
@media (max-width:600px){
  .wrap{width:calc(100% - 1.75rem)}
  .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .footer-base{flex-direction:column;align-items:flex-start}
  .footer-contact__item .label{min-width:100%}
  .data-table{min-width:480px}
}

/* ---------- 动效偏好 ---------- */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{
    animation-duration:.001ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.001ms !important;
  }
  .js-ready .reveal{opacity:1;transform:none}
  .to-top{transform:none}
}
