/* ==========================================================================
   亿动看台 · 共享样式表 /assets/site.css
   高原体育数据舱：深墨蓝底 · 荧光青计分 · 经幡色点缀
   ========================================================================== */

/* ---------- 01 变量 ---------- */
:root{
  --ink:#0B1B2B;
  --panel:#10263A;
  --band:#16334B;
  --glow:#0E3A4A;
  --cyan:#23D3EE;
  --cyan-soft:#7CE7F7;
  --gold:#F5A623;
  --crimson:#C0392B;
  --snow:#F4F7FA;
  --mist:#A9BCCD;

  --line:rgba(35,211,238,.18);
  --line-soft:rgba(169,188,205,.18);

  --pill:999px;
  --radius-lg:28px;
  --radius-md:20px;
  --radius-sm:12px;

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

  --maxw:1240px;
  --pad-x:clamp(18px,4vw,40px);
  --section-y:clamp(52px,8vw,104px);
}

/* ---------- 02 Reset ---------- */
*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;}
body,h1,h2,h3,h4,p,ul,ol,figure,blockquote{margin:0;}
ul,ol{padding:0;list-style:none;}
img,svg,video{display:block;max-width:100%;height:auto;}
button,input,select,textarea{font:inherit;color:inherit;}
button{background:none;border:0;}
a{color:var(--cyan);text-decoration:none;transition:color .12s ease,border-color .12s ease;}
a:hover{color:var(--cyan-soft);}
hr{border:0;border-top:1px solid var(--line-soft);}
:focus-visible{outline:2px solid var(--cyan-soft);outline-offset:3px;border-radius:6px;}

/* ---------- 03 中文排版与页面底色 ---------- */
body{
  min-height:100%;
  font-family:var(--font-sans);
  font-size:16px;
  line-height:1.7;
  color:var(--snow);
  background-color:var(--ink);
  background-image:
    radial-gradient(80% 55% at 8% -8%, rgba(35,211,238,.16) 0%, rgba(35,211,238,0) 60%),
    radial-gradient(60% 45% at 96% 4%, rgba(245,166,35,.12) 0%, rgba(245,166,35,0) 62%),
    radial-gradient(120% 80% at 50% 112%, rgba(14,58,74,.85) 0%, rgba(14,58,74,0) 70%),
    linear-gradient(180deg,#0B1B2B 0%,#0C2132 48%,#0B1B2B 100%);
  background-repeat:no-repeat;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,h4{font-weight:700;letter-spacing:-.02em;line-height:1.16;}
h1{font-size:clamp(40px,8vw,96px);}
h2{font-size:clamp(26px,4.2vw,46px);}
h3{font-size:clamp(18px,2.4vw,22px);font-weight:600;}
p{max-width:68ch;margin-bottom:1.05em;}
p:last-child{margin-bottom:0;}
strong{color:var(--snow);font-weight:700;}
small{font-size:12px;letter-spacing:.3em;color:var(--mist);}

/* 等宽数字：比分 / 轮次 / 名次 / 时间戳 */
.num,.chapter-no,.stat-value,.data-value,.contact-value,.brand-glyph,.footer-legal span{
  font-family:var(--font-mono);
  font-variant-numeric:tabular-nums;
  font-feature-settings:"tnum" 1;
}

/* ---------- 04 通用布局 ---------- */
.container{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--pad-x);}
.container--narrow{max-width:880px;}
.section{padding-block:var(--section-y);position:relative;}
.section--tint{
  background:linear-gradient(180deg,rgba(14,58,74,.42) 0%,rgba(16,38,58,.18) 55%,rgba(11,27,43,0) 100%);
  border-radius:var(--radius-lg);
}
.section-band{
  display:block;width:100%;height:6px;border-radius:var(--pill);
  background:linear-gradient(90deg,var(--cyan) 0%,var(--cyan-soft) 28%,var(--gold) 76%,var(--crimson) 100%);
  opacity:.9;
}

/* ---------- 05 章节编号体系 ---------- */
.chapter{position:relative;padding-top:clamp(6px,1.2vw,14px);}
.chapter-no{
  display:inline-block;font-size:13px;font-weight:600;letter-spacing:.22em;
  color:var(--cyan);padding-bottom:4px;margin-bottom:12px;
  border-bottom:2px solid rgba(35,211,238,.34);
  transition:color .2s ease,border-color .2s ease;
}
.chapter.is-current .chapter-no{color:var(--gold);border-bottom-color:rgba(245,166,35,.6);}
.chapter-title{font-size:clamp(24px,3.6vw,36px);margin-bottom:.5em;}
.eyebrow{
  display:inline-block;font-family:var(--font-mono);font-size:12px;letter-spacing:.3em;
  color:var(--mist);text-transform:uppercase;margin-bottom:14px;
}
.lede{font-size:clamp(17px,1.6vw,20px);line-height:1.75;color:#CFE0EE;max-width:62ch;}
.note-vertical{
  position:absolute;right:-4px;top:0;
  writing-mode:vertical-rl;text-orientation:mixed;
  font-size:12px;letter-spacing:.3em;color:rgba(169,188,205,.8);
  pointer-events:none;
}

/* ---------- 06 数据表达 ---------- */
.stat-value{
  display:inline-block;font-size:2.2em;line-height:1.05;font-weight:600;
  color:var(--snow);letter-spacing:-.01em;
  text-shadow:0 0 1px rgba(35,211,238,.95),0 0 20px rgba(35,211,238,.34);
}

/* ---------- 07 卡片 / 标签 / 按钮 ---------- */
.card{
  position:relative;
  background:linear-gradient(158deg,rgba(16,38,58,.95) 0%,rgba(11,27,43,.9) 100%);
  border:1px solid var(--line-soft);
  border-radius:var(--radius-md);
  padding:clamp(18px,2.4vw,26px);
  transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease;
}
.card:hover{border-color:rgba(35,211,238,.45);box-shadow:0 22px 46px -32px rgba(35,211,238,.75);}

.pill{
  display:inline-flex;align-items:center;gap:.4em;
  padding:5px 14px;border-radius:var(--pill);
  border:1px solid var(--line-soft);background:rgba(14,58,74,.42);
  font-size:13px;line-height:1.5;color:var(--mist);white-space:nowrap;
}
.pill--cyan{color:var(--cyan);border-color:rgba(35,211,238,.5);}
.pill--gold{color:var(--gold);border-color:rgba(245,166,35,.5);}
.pill--crimson{color:#EE8C7E;border-color:rgba(192,57,43,.6);}

.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.45em;
  padding:10px 20px;border-radius:var(--radius-sm);
  border:1px solid transparent;font-size:14px;font-weight:600;
  cursor:pointer;text-align:center;
  transition:border-color .12s ease,background-color .12s ease,color .12s ease,box-shadow .12s ease;
}
.btn-pill{border-radius:var(--pill);}
.btn-primary{background:var(--cyan);color:#04202B;border-color:var(--cyan);}
.btn-primary:hover,.btn-primary:focus-visible{background:var(--cyan-soft);color:#04202B;box-shadow:0 0 0 4px rgba(35,211,238,.16);}
.btn-ghost{background:rgba(11,27,43,.4);color:var(--snow);border-color:var(--line-soft);}
.btn-ghost:hover,.btn-ghost:focus-visible{color:var(--cyan-soft);border-color:var(--cyan);}

/* ---------- 08 网格与横向轨道 ---------- */
.grid{display:grid;gap:clamp(16px,2.4vw,26px);}
.grid--2{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));}
.grid--3{grid-template-columns:repeat(auto-fit,minmax(228px,1fr));}
.grid--asym{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);}
.rail{
  display:flex;gap:14px;overflow-x:auto;padding-bottom:12px;
  scroll-snap-type:x proximity;scrollbar-width:thin;
}
.rail > *{scroll-snap-align:start;flex:0 0 auto;}
.rail::-webkit-scrollbar{height:6px;}
.rail::-webkit-scrollbar-thumb{background:rgba(35,211,238,.35);border-radius:var(--pill);}

/* ---------- 09 图片容器（页面阶段放置 <img>） ---------- */
.media-frame{
  position:relative;overflow:hidden;
  border-radius:var(--radius-lg);
  border:1px solid var(--line-soft);
  background:linear-gradient(140deg,#16334B 0%,#0E3A4A 100%);
}
.media-frame > img{width:100%;height:100%;object-fit:cover;}
.media-frame::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background-image:
    linear-gradient(90deg,rgba(35,211,238,.14) 1px,transparent 1px),
    linear-gradient(0deg,rgba(35,211,238,.1) 1px,transparent 1px);
  background-size:46px 46px;
  mix-blend-mode:screen;
  opacity:.75;
}
.media-frame--ratio{aspect-ratio:16/10;}
.media-frame--tall{aspect-ratio:4/5;}
.media-frame--slant{
  border-radius:var(--radius-md);
  clip-path:polygon(0 6%,100% 0,100% 94%,0 100%);
}
.media-frame--arc{
  border-radius:44% 44% var(--radius-lg) var(--radius-lg) / 20% 20% var(--radius-lg) var(--radius-lg);
}

/* ---------- 10 面包屑与筛选 ---------- */
.breadcrumb{font-size:13px;color:var(--mist);}
.breadcrumb ol{display:flex;flex-wrap:wrap;align-items:center;gap:.4em;}
.breadcrumb li{display:flex;align-items:center;}
.breadcrumb li + li::before{content:"／";margin-right:.4em;color:rgba(169,188,205,.45);}
.breadcrumb a{color:var(--mist);}
.breadcrumb a:hover{color:var(--cyan-soft);}
.breadcrumb [aria-current="page"]{color:var(--snow);}

.filter-bar{
  display:flex;flex-wrap:wrap;gap:8px;padding:8px;
  border:1px solid var(--line-soft);border-radius:var(--pill);
  background:rgba(16,38,58,.62);
}
.filter-chip{
  padding:7px 16px;border-radius:var(--pill);
  border:1px solid transparent;background:transparent;
  font-size:13.5px;color:var(--mist);cursor:pointer;white-space:nowrap;
  transition:color .12s ease,border-color .12s ease,background-color .12s ease;
}
.filter-chip:hover{color:var(--cyan-soft);border-color:rgba(124,231,247,.5);}
.filter-chip[aria-pressed="true"]{
  color:var(--snow);border-color:rgba(35,211,238,.6);
  background:rgba(35,211,238,.1);
  box-shadow:inset 0 -2px 0 0 var(--cyan);
}

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

/* ---------- 11 跳转链接 ---------- */
.skip-link{
  position:absolute;left:16px;top:-60px;z-index:120;
  padding:10px 18px;border-radius:var(--pill);
  background:var(--cyan);color:#04202B;font-size:14px;font-weight:700;
  transition:top .18s ease;
}
.skip-link:focus{top:12px;color:#04202B;}

/* ---------- 12 页头：紧凑命令栏 ---------- */
.site-header{
  position:sticky;top:0;z-index:80;
  background:linear-gradient(180deg,rgba(11,27,43,.98) 0%,rgba(11,27,43,.9) 100%);
  -webkit-backdrop-filter:blur(14px);
  backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line);
}
.header-inner{
  width:100%;max-width:var(--maxw);margin-inline:auto;
  padding:9px var(--pad-x);
  display:flex;align-items:center;gap:18px;flex-wrap:wrap;
}
.brand-block{display:flex;align-items:center;gap:10px;order:1;flex:0 0 auto;}
.brand-mark{display:inline-flex;align-items:center;gap:10px;color:var(--snow);}
.brand-mark:hover{color:var(--snow);}
.brand-glyph{
  position:relative;width:26px;height:26px;flex:0 0 auto;border-radius:9px;
  background:conic-gradient(from 210deg,var(--cyan) 0deg,var(--gold) 160deg,var(--cyan) 360deg);
  box-shadow:0 0 0 1px rgba(35,211,238,.5),0 0 18px rgba(35,211,238,.35);
}
.brand-glyph::after{content:"";position:absolute;inset:7px;border-radius:4px;background:var(--ink);}
.brand-name{font-size:19px;font-weight:800;letter-spacing:-.02em;white-space:nowrap;}
.region-tag{
  font-size:11px;letter-spacing:.28em;color:var(--gold);
  border:1px solid rgba(245,166,35,.42);border-radius:var(--pill);
  padding:2px 8px 2px 11px;white-space:nowrap;
}

.site-nav{order:2;flex:1 1 auto;min-width:0;display:flex;justify-content:center;visibility:visible;}
.nav-list{
  display:flex;align-items:center;gap:2px;
  overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 10px,#000 calc(100% - 10px),transparent 100%);
  mask-image:linear-gradient(90deg,transparent 0,#000 10px,#000 calc(100% - 10px),transparent 100%);
}
.nav-list::-webkit-scrollbar{display:none;}
.nav-list a{
  position:relative;display:block;white-space:nowrap;
  padding:7px 13px;border-radius:var(--pill);border:1px solid transparent;
  color:var(--mist);font-size:14px;font-weight:500;
  transition:color .12s ease,border-color .12s ease,background-color .12s ease,box-shadow .12s ease;
}
.nav-list a:hover,.nav-list a:focus-visible{
  color:var(--cyan-soft);border-color:rgba(124,231,247,.55);background:rgba(35,211,238,.07);
}
.nav-list a[aria-current="page"]{
  color:var(--snow);
  border-color:rgba(35,211,238,.6);
  background:rgba(35,211,238,.1);
  box-shadow:inset 0 -2px 0 0 var(--cyan),0 0 20px -6px rgba(35,211,238,.6);
}

.header-actions{order:3;flex:0 0 auto;display:flex;align-items:center;gap:10px;}
.index-link{
  padding:7px 13px;border-radius:var(--pill);
  border:1px dashed rgba(169,188,205,.38);
  color:var(--mist);font-size:13px;white-space:nowrap;
  transition:color .12s ease,border-color .12s ease,border-style .12s ease;
}
.index-link:hover,.index-link:focus-visible{color:var(--cyan-soft);border-color:var(--cyan);border-style:solid;}

.nav-toggle{
  order:4;display:none;align-items:center;gap:9px;
  padding:7px 14px;border-radius:var(--pill);
  border:1px solid rgba(35,211,238,.42);
  background:rgba(35,211,238,.08);
  color:var(--snow);font-size:13px;font-weight:600;cursor:pointer;
}
.nav-toggle:hover{border-color:var(--cyan);}
.nav-toggle-bars{position:relative;display:block;width:16px;height:2px;background:var(--cyan);}
.nav-toggle-bars::before,.nav-toggle-bars::after{
  content:"";position:absolute;left:0;width:16px;height:2px;background:var(--cyan);
  transition:transform .2s ease,top .2s ease,background-color .2s ease;
}
.nav-toggle-bars::before{top:-5px;}
.nav-toggle-bars::after{top:5px;}
.nav-toggle[aria-expanded="true"] .nav-toggle-bars{background:transparent;}
.nav-toggle[aria-expanded="true"] .nav-toggle-bars::before{top:0;transform:rotate(45deg);}
.nav-toggle[aria-expanded="true"] .nav-toggle-bars::after{top:0;transform:rotate(-45deg);}

.status-strip{
  max-width:var(--maxw);margin-inline:auto;
  padding:0 var(--pad-x) 8px;
  display:flex;justify-content:flex-end;align-items:center;gap:9px;
  font-size:11.5px;letter-spacing:.18em;color:rgba(169,188,205,.85);
}
.status-dot{
  width:6px;height:6px;border-radius:50%;flex:0 0 auto;
  background:var(--cyan);box-shadow:0 0 10px var(--cyan);
  animation:stand-pulse 2.4s ease-in-out infinite;
}
@keyframes stand-pulse{
  0%,100%{opacity:1;transform:scale(1);}
  50%{opacity:.42;transform:scale(.78);}
}

.scroll-progress{
  position:absolute;left:0;bottom:0;width:100%;height:2px;
  transform:scaleX(0);transform-origin:0 50%;
  background:linear-gradient(90deg,var(--cyan) 0%,var(--gold) 62%,var(--crimson) 100%);
  box-shadow:0 0 12px rgba(35,211,238,.55);
}

/* ---------- 13 页脚 ---------- */
.site-footer{
  position:relative;
  margin-top:clamp(48px,8vw,96px);
  border-top:1px solid var(--line);
  background:
    radial-gradient(110% 100% at 0% 0%,rgba(14,58,74,.7) 0%,rgba(11,27,43,0) 58%),
    linear-gradient(180deg,#10263A 0%,#0A1725 100%);
  color:var(--mist);
}
.site-footer::before{
  content:"";display:block;height:6px;width:100%;
  background:linear-gradient(90deg,var(--cyan) 0%,var(--gold) 58%,var(--crimson) 100%);
  opacity:.88;
}
.footer-inner{
  width:100%;max-width:var(--maxw);margin-inline:auto;
  padding:clamp(34px,5vw,58px) var(--pad-x) 28px;
}
.footer-top{
  display:grid;
  grid-template-columns:minmax(220px,1.5fr) repeat(3,minmax(120px,1fr));
  gap:clamp(20px,3vw,42px);
}
.footer-brand-name{
  font-size:22px;font-weight:800;letter-spacing:-.02em;color:var(--snow);margin-bottom:10px;
}
.footer-tagline{font-size:13.5px;line-height:1.75;color:var(--mist);max-width:34ch;margin-bottom:16px;}
.footer-col-title{
  font-family:var(--font-mono);
  font-size:12px;font-weight:600;letter-spacing:.3em;text-transform:uppercase;
  color:var(--cyan);margin-bottom:14px;
}
.footer-col ul{display:grid;gap:9px;}
.footer-col a{
  display:inline-block;font-size:14.5px;color:var(--mist);text-decoration:none;
  transition:color .12s ease,padding-left .12s ease;
}
.footer-col a:hover,.footer-col a:focus-visible{color:var(--cyan-soft);padding-left:5px;}

.footer-cta{
  display:flex;flex-wrap:wrap;gap:12px;
  margin-top:clamp(28px,4vw,44px);
  padding-top:clamp(22px,3vw,30px);
  border-top:1px solid var(--line-soft);
}
.footer-contact{
  display:flex;flex-wrap:wrap;gap:9px 26px;align-items:baseline;
  margin-top:22px;padding-top:20px;
  border-top:1px solid var(--line-soft);
  font-size:13.5px;color:var(--mist);
}
.contact-item{display:inline-flex;flex-wrap:wrap;gap:.4em;align-items:baseline;}
.contact-value{color:var(--cyan);font-size:13px;letter-spacing:.02em;}

.footer-legal{
  display:flex;flex-wrap:wrap;gap:8px 20px;align-items:center;
  margin-top:20px;padding-top:16px;
  border-top:1px solid rgba(169,188,205,.12);
  font-size:12.5px;letter-spacing:.06em;color:rgba(169,188,205,.75);
}

/* ---------- 14 进入视口显现 ---------- */
.has-js [data-reveal]{
  opacity:0;transform:translateY(18px);
  transition:opacity .55s ease,transform .55s ease;
}
.has-js [data-reveal].is-visible{opacity:1;transform:translateY(0);}

/* ---------- 15 响应式 ---------- */
@media (max-width:1024px){
  .grid--asym{grid-template-columns:1fr;}
}
@media (max-width:900px){
  .nav-toggle{display:inline-flex;}
  .header-actions{order:2;margin-left:auto;}
  .nav-toggle{order:3;}
  .site-nav{
    order:4;flex:1 0 100%;display:block;
    max-height:0;overflow:hidden;opacity:0;visibility:hidden;
    border-top:1px solid transparent;
    transition:max-height .32s ease,opacity .22s ease,visibility 0s linear .32s;
  }
  .site-nav[data-open]{
    max-height:70vh;overflow-y:auto;opacity:1;visibility:visible;
    border-top-color:var(--line);
    transition:max-height .32s ease,opacity .22s ease,visibility 0s;
  }
  .nav-list{
    flex-direction:column;align-items:stretch;gap:2px;
    padding:10px 0 6px;
    -webkit-mask-image:none;mask-image:none;
  }
  .nav-list a{padding:11px 14px;border-radius:var(--radius-sm);font-size:15px;}
  .nav-list a[aria-current="page"]{
    box-shadow:inset 3px 0 0 0 var(--cyan),0 0 20px -8px rgba(35,211,238,.55);
  }
  .status-strip{display:none;}
  .note-vertical{display:none;}
}
@media (max-width:760px){
  .footer-top{grid-template-columns:repeat(2,minmax(0,1fr));}
  .footer-brand{grid-column:1 / -1;}
}
@media (max-width:560px){
  .brand-name{font-size:17px;}
  .region-tag{display:none;}
  .index-link{display:none;}
  .footer-top{grid-template-columns:1fr;}
  .header-inner{gap:12px;}
}

/* ---------- 16 降低动效 ---------- */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  *,*::before,*::after{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important;}
  .has-js [data-reveal]{opacity:1;transform:none;transition:none;}
  .status-dot{animation:none;}
  .scroll-progress{box-shadow:none;}
}
