*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none !important}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body,h1,h2,h3,h4,h5,p,ul,ol,li,figure,figcaption,blockquote{margin:0;padding:0}
ul,ol{list-style:none}
img,svg,video{display:block;max-width:100%}
button,input,select,textarea{font:inherit;color:inherit}
button{background:none;border:0;cursor:pointer}
a{color:inherit;text-decoration:none}
table{border-collapse:collapse;width:100%}

:root{
  --ink-950:#0A1221;
  --ink-800:#121D31;
  --ink-700:#182645;
  --paper:#F3EDE2;
  --paper-line:#E0D6C4;
  --signal-top:#FF5A2B;
  --signal-mid:#D9A429;
  --signal-third:#17A183;
  --score:#5CFF9E;
  --tick:#8C97AB;
  --alert:#D2452F;
  --glass:rgba(255,255,255,.08);
  --on-dark:#E7EDF6;
  --on-paper:#10161F;
  --line-dark:rgba(140,151,171,.28);
  --font-sans:"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Source Han Sans SC","Noto Sans SC",system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --font-mono:ui-monospace,SFMono-Regular,Menlo,Consolas,"DejaVu Sans Mono","Courier New",monospace;
  --fs-76:76px;--fs-56:56px;--fs-32:32px;--fs-22:22px;--fs-17:17px;--fs-15:15px;--fs-13:13px;--fs-12:12px;
  --wrap:1280px;
  --header-h:64px;
  --ease:cubic-bezier(.2,.6,.25,1);
}

body{
  font-family:var(--font-sans);
  font-size:var(--fs-17);
  line-height:1.85;
  font-weight:500;
  color:var(--on-dark);
  letter-spacing:.01em;
  background-color:var(--ink-950);
  background-image:
    radial-gradient(circle at 78% -10%,rgba(255,90,43,.16),transparent 46%),
    radial-gradient(circle at 6% 22%,rgba(23,161,131,.11),transparent 42%),
    radial-gradient(rgba(231,237,246,.05) 1px,transparent 1.4px),
    radial-gradient(rgba(231,237,246,.03) 1px,transparent 1.4px);
  background-size:auto,auto,4px 4px,9px 9px;
  background-position:0 0,0 0,0 0,3px 5px;
  background-attachment:fixed;
}

.display-xl,.display-l,.section-title,.sub-title{font-weight:900;letter-spacing:-.02em;font-stretch:condensed;line-height:1.08}
.display-xl{font-size:var(--fs-76);line-height:1.02}
.display-l{font-size:var(--fs-56)}
.section-title{font-size:var(--fs-32);font-weight:800}
.sub-title{font-size:var(--fs-22);font-weight:800;letter-spacing:-.01em}
.eyebrow{font-family:var(--font-mono);font-size:var(--fs-12);letter-spacing:.16em;color:var(--tick);text-transform:uppercase}
.caption{font-family:var(--font-mono);font-size:var(--fs-12);letter-spacing:.04em;color:var(--tick);line-height:1.7}
.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-weight:800;letter-spacing:.02em}
.num--score{color:var(--score)}

p,li{max-width:38em}
.prose{max-width:34em}
.prose p+p{margin-top:1.1em}
.prose ul{margin-top:1em}
.prose li+li{margin-top:.5em}
.hairline{height:1px;background:var(--line-dark);border:0;width:100%}

.wrap{width:100%;max-width:var(--wrap);margin-inline:auto;padding-inline:24px}
.grid-12{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;width:100%;max-width:var(--wrap);margin-inline:auto;padding-inline:24px;align-items:start}
.col-rail{grid-column:1 / span 1}
.col-main{grid-column:2 / span 7}
.col-note{grid-column:10 / span 2}
.col-wide{grid-column:2 / -1}

.section{padding-block:clamp(48px,7vw,88px)}
.section--tight{padding-block:clamp(28px,4vw,48px)}
.section--ink{background:var(--ink-800)}
.section--ink-soft{background:linear-gradient(180deg,rgba(18,29,49,.75),rgba(10,18,33,0))}
.paper-zone{background:var(--paper);color:var(--on-paper)}
.prose--paper{background:var(--paper);color:var(--on-paper);padding-block:clamp(40px,6vw,72px)}
.paper-zone .caption,.prose--paper .caption{color:#5C6470}
.paper-zone .data-table th,.prose--paper .data-table th{background:var(--paper-line);color:#3A4250}
.paper-zone .data-table td,.prose--paper .data-table td{border-bottom-color:var(--paper-line)}
.paper-zone .data-table tbody tr:hover,.prose--paper .data-table tbody tr:hover{background:rgba(16,22,31,.06)}

.scale-rail{position:relative;padding-left:18px;min-height:100%}
.scale-rail::before{content:"";position:absolute;left:6px;top:0;bottom:0;width:1px;background:linear-gradient(180deg,transparent,var(--line-dark) 10%,var(--line-dark) 90%,transparent)}
.scale-rail::after{content:"";position:absolute;left:0;top:0;bottom:0;width:13px;background-image:repeating-linear-gradient(180deg,var(--tick) 0 1px,transparent 1px 14px);opacity:.5}
.rail-list{position:relative;display:flex;flex-direction:column;gap:20px}
.rail-item{font-family:var(--font-mono);font-size:var(--fs-12);letter-spacing:.06em}
.rail-link{display:block;color:var(--tick)}
.rail-link::before{content:"";display:block;width:10px;height:1px;background:currentColor;margin-bottom:6px}
.rail-link:hover{color:var(--on-dark)}
.rail-link[aria-current="true"]{color:var(--signal-top)}
.rail-tick{font-family:var(--font-mono);font-size:var(--fs-12);color:var(--tick)}

.solid-panel{background:var(--ink-800);border:1px solid var(--line-dark);border-radius:2px;padding:24px}
.glass-panel{background:var(--glass);border:1px solid var(--line-dark);border-radius:2px;padding:20px;backdrop-filter:blur(10px) saturate(130%);-webkit-backdrop-filter:blur(10px) saturate(130%)}

.band{display:block;height:6px;width:100%;background:var(--signal-top)}
.band--top{background:var(--signal-top)}
.band--mid{background:var(--signal-mid)}
.band--third{background:var(--signal-third)}
.band--stacked{display:grid;grid-template-columns:repeat(3,1fr);gap:0;height:6px;background:none}
.band--stacked i{display:block;height:100%}
.band--stacked i:nth-child(1){background:var(--signal-top)}
.band--stacked i:nth-child(2){background:var(--signal-mid)}
.band--stacked i:nth-child(3){background:var(--signal-third)}

.tier-chip{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:var(--fs-12);letter-spacing:.08em;padding:4px 10px;border-radius:2px;background:rgba(140,151,171,.16);color:var(--on-dark);border:1px solid transparent;white-space:nowrap}
.tier-chip--top{background:var(--signal-top);color:#0A1221}
.tier-chip--mid{background:var(--signal-mid);color:#0A1221}
.tier-chip--third{background:var(--signal-third);color:#0A1221}

.btn{display:inline-flex;align-items:center;gap:10px;padding:12px 20px;font-size:var(--fs-15);font-weight:700;letter-spacing:.02em;border-radius:2px;border:1px solid transparent;transition:background-color .14s var(--ease),color .14s var(--ease),border-color .14s var(--ease)}
.btn--primary{background:var(--signal-top);color:#0A1221}
.btn--primary:hover{background:#FF7A52}
.btn--ghost{border-color:var(--line-dark);color:var(--on-dark)}
.btn--ghost:hover{border-color:var(--tick);background:var(--glass)}
.btn--paper{background:var(--on-paper);color:var(--paper)}
.btn--paper:hover{background:#26313F}
.link-arrow{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:var(--fs-15);border-bottom:2px solid var(--signal-top);padding-bottom:2px;transition:color .14s var(--ease)}
.link-arrow:hover{color:var(--signal-top)}

.breadcrumb{font-family:var(--font-mono);font-size:var(--fs-13);color:var(--tick);letter-spacing:.04em}
.breadcrumb ol{display:flex;flex-wrap:wrap;gap:8px;max-width:none}
.breadcrumb li+li::before{content:"/";margin-right:8px;color:var(--line-dark)}
.breadcrumb a:hover{color:var(--on-dark)}

.table-wrap{overflow-x:auto;border:1px solid var(--line-dark);background:rgba(18,29,49,.6)}
.data-table{min-width:640px;font-size:var(--fs-15)}
.data-table th{background:var(--ink-800);color:var(--tick);font-family:var(--font-mono);font-size:var(--fs-12);letter-spacing:.08em;text-align:left;padding:12px 16px;border-bottom:1px solid var(--line-dark);font-weight:600;white-space:nowrap}
.data-table td{padding:12px 16px;border-bottom:1px solid var(--line-dark);font-variant-numeric:tabular-nums}
.data-table tbody tr{transition:background-color .14s var(--ease)}
.data-table tbody tr:hover{background:rgba(255,255,255,.05)}
.data-table tbody tr[data-active="true"]{background:rgba(255,255,255,.06);box-shadow:inset 3px 0 0 var(--score)}
.row-tag{font-family:var(--font-mono);font-size:var(--fs-12);color:var(--signal-mid);opacity:0;transition:opacity .14s var(--ease)}
.data-table tbody tr:hover .row-tag,.data-table tbody tr:focus-within .row-tag,.data-table tbody tr[data-active="true"] .row-tag{opacity:1}

.filter-bar{display:flex;flex-wrap:wrap;gap:8px}
.filter-btn{font-family:var(--font-mono);font-size:var(--fs-12);letter-spacing:.06em;padding:6px 12px;border:1px solid var(--line-dark);border-radius:2px;color:var(--tick);transition:background-color .14s var(--ease),color .14s var(--ease),border-color .14s var(--ease)}
.filter-btn:hover{color:var(--on-dark);border-color:var(--tick)}
.filter-btn[aria-pressed="true"]{background:var(--score);color:#06210F;border-color:var(--score)}

.media-frame{position:relative;overflow:hidden;border:1px solid var(--line-dark);border-radius:2px;aspect-ratio:16 / 9;display:flex;align-items:flex-end;background:
  repeating-linear-gradient(90deg,rgba(231,237,246,.055) 0 1px,transparent 1px 32px),
  repeating-linear-gradient(0deg,rgba(231,237,246,.055) 0 1px,transparent 1px 32px),
  radial-gradient(circle at 28% 18%,rgba(255,90,43,.4),transparent 55%),
  radial-gradient(circle at 76% 84%,rgba(92,255,158,.22),transparent 55%),
  var(--ink-800)}
.media-frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.media-frame__caption{position:relative;z-index:1;width:100%;padding:14px 16px;font-family:var(--font-mono);font-size:var(--fs-12);color:var(--on-dark);background:linear-gradient(180deg,rgba(10,18,33,0),rgba(10,18,33,.92))}
.media-frame--wide{aspect-ratio:21 / 9}
.media-frame--tall{aspect-ratio:4 / 5}
.media-frame--bleed{margin-inline:calc(50% - 50vw);width:100vw;max-width:100vw;border-inline:0;border-radius:0}

.reveal{opacity:1;transform:none}
.has-js .reveal{opacity:0;transform:translateY(12px);transition:opacity .48s var(--ease),transform .48s var(--ease);transition-delay:var(--reveal-delay,0ms)}
.has-js .reveal.is-visible{opacity:1;transform:none}

.to-top{position:fixed;right:20px;bottom:20px;z-index:110;width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--line-dark);background:rgba(18,29,49,.92);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:var(--on-dark);border-radius:2px;font-family:var(--font-mono);font-size:var(--fs-12);letter-spacing:.06em;transition:border-color .14s var(--ease),color .14s var(--ease)}
.to-top:hover{border-color:var(--score);color:var(--score)}

.skip-link{position:absolute;left:16px;top:-70px;z-index:300;background:var(--score);color:#06210F;font-weight:700;font-size:var(--fs-15);padding:10px 16px;border-radius:0 0 2px 2px;transition:top .14s var(--ease)}
.skip-link:focus{top:0}

.site-header{position:sticky;top:0;z-index:120;background:rgba(10,18,33,.9);backdrop-filter:blur(14px) saturate(130%);-webkit-backdrop-filter:blur(14px) saturate(130%);border-bottom:1px solid var(--line-dark)}
.header-inner{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"brand nav aside";align-items:center;gap:24px;height:var(--header-h)}
.brand{grid-area:brand;display:flex;align-items:center;gap:10px;min-width:0}
.brand-mark{display:grid;place-items:center;width:30px;height:30px;flex:none;background:var(--signal-top);color:#0A1221;font-weight:900;font-size:var(--fs-15);border-radius:2px}
.brand-text{display:flex;flex-direction:column;line-height:1.15;min-width:0}
.brand-name{font-size:var(--fs-15);font-weight:800;letter-spacing:.02em;color:var(--on-dark);white-space:nowrap}
.brand-sub{font-family:var(--font-mono);font-size:var(--fs-12);color:var(--tick);white-space:nowrap;max-height:16px;overflow:hidden;transition:max-height .2s var(--ease),opacity .2s var(--ease)}
.site-header[data-scrolled] .brand-sub{max-height:0;opacity:0}
.nav-scroll{grid-area:nav;min-width:0;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}
.nav-scroll::-webkit-scrollbar{display:none}
.nav-index{display:flex;align-items:center;justify-content:center;gap:4px;flex-wrap:nowrap;max-width:none}
.nav-link{display:inline-flex;align-items:baseline;gap:6px;padding:8px 10px;font-size:var(--fs-15);font-weight:600;color:var(--tick);border-bottom:2px solid transparent;white-space:nowrap;transition:color .14s var(--ease),border-color .14s var(--ease)}
.nav-link:hover{color:var(--on-dark);border-bottom-color:var(--signal-top)}
.nav-link[aria-current="page"]{color:var(--on-dark);border-bottom-color:var(--signal-top)}
.nav-link[aria-current="page"] .nav-num{color:var(--signal-top)}
.nav-num{font-family:var(--font-mono);font-size:var(--fs-12);letter-spacing:.04em;color:var(--tick);transition:color .14s var(--ease)}
.header-aside{grid-area:aside;display:flex;align-items:center;gap:14px}
.season-gauge{display:flex;align-items:center;gap:8px;padding:5px 10px;border:1px solid var(--line-dark);background:var(--glass);border-radius:2px}
.gauge-track{display:block;width:44px;height:6px;background:linear-gradient(90deg,var(--signal-top) 0 33.33%,var(--signal-mid) 33.33% 66.66%,var(--signal-third) 66.66% 100%)}
.gauge-text{font-family:var(--font-mono);font-size:var(--fs-12);letter-spacing:.06em;color:var(--tick);white-space:nowrap}
.quick-link{font-family:var(--font-mono);font-size:var(--fs-13);letter-spacing:.06em;color:var(--score);border:1px solid rgba(92,255,158,.4);padding:6px 10px;border-radius:2px;white-space:nowrap;transition:background-color .14s var(--ease),border-color .14s var(--ease)}
.quick-link:hover{background:rgba(92,255,158,.14);border-color:var(--score)}
.nav-toggle{display:none;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--line-dark);border-radius:2px;color:var(--on-dark);font-family:var(--font-mono);font-size:var(--fs-13);letter-spacing:.06em}
.nav-toggle-bar{display:block;width:16px;height:2px;background:currentColor;box-shadow:0 5px 0 currentColor;transition:box-shadow .14s var(--ease)}
.site-header[data-open] .nav-toggle-bar{box-shadow:0 0 0 currentColor}
.scroll-progress{position:absolute;left:0;right:0;bottom:-1px;height:2px;pointer-events:none}
.scroll-progress-bar{display:block;height:100%;width:100%;background:linear-gradient(90deg,var(--signal-third),var(--score),var(--signal-top));transform:scaleX(0);transform-origin:0 50%}

.site-footer{position:relative;margin-top:96px;background:var(--ink-800);border-top:1px solid var(--line-dark);color:var(--on-dark)}
.site-footer::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--signal-top) 0 33.33%,var(--signal-mid) 33.33% 66.66%,var(--signal-third) 66.66%)}
.footer-inner{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.3fr;gap:32px;padding-block:56px 40px}
.footer-mark{display:grid;place-items:center;width:34px;height:34px;background:var(--signal-top);color:#0A1221;font-weight:900;font-size:var(--fs-17);border-radius:2px;margin-bottom:14px}
.footer-name{font-size:var(--fs-22);font-weight:900;letter-spacing:-.01em}
.footer-tag{font-size:var(--fs-13);color:var(--tick);line-height:1.8;margin-top:8px;max-width:26em}
.footer-col-title{font-family:var(--font-mono);font-size:var(--fs-12);letter-spacing:.14em;color:var(--signal-mid);margin-bottom:14px}
.footer-list li+li{margin-top:10px}
.footer-list a{font-size:var(--fs-15);color:var(--on-dark);opacity:.82;border-bottom:1px solid transparent;transition:opacity .14s var(--ease),border-color .14s var(--ease)}
.footer-list a:hover{opacity:1;border-bottom-color:var(--signal-top)}
.footer-meta{font-family:var(--font-mono);font-size:var(--fs-13);color:var(--tick);line-height:2}
.footer-meta li{max-width:22em}
.footer-legal{border-top:1px solid var(--line-dark);padding-block:18px 28px;display:flex;flex-wrap:wrap;gap:12px 24px;justify-content:space-between;align-items:center;font-family:var(--font-mono);font-size:var(--fs-12);color:var(--tick)}
.footer-legal p{max-width:none}
.footer-legal a{color:var(--tick)}
.footer-legal a:hover{color:var(--on-dark)}
.legal-links{display:flex;gap:18px}

:focus-visible{outline:2px solid var(--score);outline-offset:3px;border-radius:2px}
.paper-zone :focus-visible,.prose--paper :focus-visible{outline-color:var(--alert)}

@media (max-width:1023px){
  :root{--fs-76:52px;--fs-56:38px;--fs-32:26px;--fs-22:20px;--fs-17:16px}
  .header-inner{grid-template-columns:1fr auto;grid-template-areas:"brand toggle" "nav nav";height:auto;padding-block:10px;gap:10px 12px}
  .nav-toggle{grid-area:toggle;display:inline-flex}
  .header-aside{display:none}
  .brand-sub{display:none}
  .nav-scroll{display:none;border-top:1px solid var(--line-dark);margin-top:6px;padding-top:8px;padding-bottom:6px}
  .site-header[data-open] .nav-scroll{display:block}
  .nav-index{justify-content:flex-start}
  .grid-12{grid-template-columns:repeat(6,minmax(0,1fr));gap:20px}
  .col-rail{display:none}
  .col-main,.col-note,.col-wide{grid-column:1 / -1}
  .footer-inner{grid-template-columns:1fr 1fr;gap:28px;padding-block:44px 32px}
  .footer-brand{grid-column:1 / -1}
}
@media (max-width:720px){
  :root{--fs-76:40px;--fs-56:32px;--fs-32:24px}
  .wrap,.grid-12{padding-inline:18px}
  .grid-12{grid-template-columns:1fr;gap:16px}
  .footer-inner{grid-template-columns:1fr;gap:26px}
  .footer-legal{flex-direction:column;align-items:flex-start}
  .solid-panel{padding:18px}
  .to-top{right:14px;bottom:14px}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important}
  html{scroll-behavior:auto}
  .has-js .reveal{opacity:1;transform:none;transition:none}
  .scroll-progress-bar{transition:none}
}
