:root{
  --ink-green:#0B2E24;
  --ink-green-deep:#061C16;
  --fluo:#D8F440;
  --fluo-soft:#EDFB9E;
  --ref-red:#D93A2B;
  --wine:#6B1E2E;
  --indigo:#2E2A5B;
  --line-grey:#E9EAE3;
  --off-white:#F7F5EE;
  --graphite:#4C544E;
  --white:#FFFFFF;

  --font-display:"Barlow Condensed","Source Han Sans SC","PingFang SC","Microsoft YaHei",sans-serif;
  --font-body:"Inter","Source Han Sans SC","PingFang SC","Microsoft YaHei",sans-serif;
  --font-mono:"JetBrains Mono","Sarasa Mono SC",ui-monospace,SFMono-Regular,Menlo,monospace;

  --r-pill:999px;
  --r-card:20px;
  --r-soft:10px;

  --sp-block:clamp(64px,9vw,140px);
  --sp-card:clamp(20px,2.4vw,28px);
  --maxw:1240px;
  --maxw-wide:1420px;

  --ease:cubic-bezier(0.2,0.8,0.2,1);
}

*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;}
body{
  margin:0;
  font-family:var(--font-body);
  font-size:17px;
  line-height:1.75;
  color:var(--graphite);
  background:var(--off-white);
  text-rendering:optimizeLegibility;
}
img,svg,video{max-width:100%;display:block;}
h1,h2,h3,h4,h5,h6{
  margin:0 0 0.5em;
  font-family:var(--font-display);
  font-weight:900;
  letter-spacing:-0.02em;
  line-height:1.02;
  color:var(--ink-green);
  text-wrap:balance;
}
h1{font-size:clamp(40px,7vw,112px);}
h2{font-size:clamp(28px,4.2vw,58px);}
h3{font-size:clamp(22px,2.6vw,34px);}
p{margin:0 0 1.2em;}
p:last-child{margin-bottom:0;}
a{color:inherit;text-decoration:none;}
a:hover{text-decoration:underline;text-underline-offset:3px;}
a:focus-visible,button:focus-visible,[tabindex]:focus-visible{
  outline:3px solid var(--fluo);
  outline-offset:3px;
  border-radius:4px;
}
ul,ol{margin:0;padding:0;list-style:none;}
code,kbd,samp,.mono{font-family:var(--font-mono);}
small,.annotation{font-size:12.5px;line-height:1.6;color:var(--graphite);}
table{border-collapse:collapse;width:100%;}
hr{border:0;border-top:1px solid var(--line-grey);margin:var(--sp-block) 0;}

.skip-link{
  position:absolute;left:-9999px;top:0;
  z-index:999;
  background:var(--fluo);color:var(--ink-green-deep);
  padding:12px 20px;border-radius:0 0 var(--r-soft) 0;
  font-weight:700;
}
.skip-link:focus{left:0;}

.container{
  width:100%;max-width:var(--maxw);margin:0 auto;
  padding:0 clamp(18px,4vw,40px);
}
.container--wide{max-width:var(--maxw-wide);}

/* ---------- header ---------- */
.site-header{
  position:relative;
  background:var(--ink-green);
  color:var(--off-white);
  background-image:radial-gradient(circle at 12% 0%,rgba(216,244,64,0.14),transparent 46%);
}
.site-header__masthead{
  border-bottom:1px solid rgba(233,234,227,0.14);
}
.site-header__masthead-inner{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:20px;
  padding-top:clamp(18px,2.6vw,30px);
  padding-bottom:clamp(14px,2.2vw,24px);
}
.site-header__brand{
  grid-column:2;
  display:flex;flex-direction:column;align-items:center;text-align:center;
  text-decoration:none;
}
.site-header__brand:hover{text-decoration:none;}
.site-header__wordmark{
  font-family:var(--font-display);
  font-weight:900;
  font-size:clamp(30px,4.6vw,64px);
  letter-spacing:-0.02em;
  line-height:1;
  color:var(--white);
}
.site-header__wordmark::after{
  content:"";
  display:block;
  width:100%;height:5px;margin-top:8px;
  background:linear-gradient(90deg,var(--fluo),var(--fluo-soft));
  border-radius:var(--r-pill);
  transform:rotate(-0.6deg);
}
.site-header__note{
  margin-top:12px;
  font-family:var(--font-mono);
  font-size:12.5px;
  letter-spacing:0.06em;
  color:var(--fluo-soft);
}
.site-header__masthead-side{
  grid-column:3;
  display:flex;justify-content:flex-end;align-items:center;gap:10px;
  flex-wrap:wrap;
}

.site-header__utilitybar{
  background:var(--ink-green-deep);
  border-bottom:1px solid rgba(233,234,227,0.12);
}
.site-header__utility-inner{
  display:flex;align-items:center;justify-content:space-between;
  gap:16px;flex-wrap:wrap;
  padding-top:12px;padding-bottom:12px;
}
.league-switch{
  display:flex;align-items:center;gap:6px;
  padding:5px;
  background:rgba(233,234,227,0.07);
  border:1px solid rgba(233,234,227,0.16);
  border-radius:var(--r-pill);
}
.league-switch__item{
  appearance:none;border:0;cursor:pointer;
  font-family:var(--font-display);
  font-weight:900;font-size:15px;letter-spacing:0.04em;
  padding:7px 20px;
  border-radius:var(--r-pill);
  background:transparent;color:var(--line-grey);
  transition:background 200ms var(--ease),color 200ms var(--ease);
}
.league-switch__item:hover{background:rgba(216,244,64,0.18);color:var(--white);}
.league-switch__item[aria-pressed="true"]{
  background:var(--fluo);color:var(--ink-green-deep);
}
.status-legend{position:relative;}
.status-legend__trigger{
  appearance:none;cursor:pointer;
  font-family:var(--font-mono);font-size:12.5px;letter-spacing:0.05em;
  padding:8px 18px;border-radius:var(--r-pill);
  background:transparent;
  border:1px dashed rgba(233,234,227,0.42);
  color:var(--line-grey);
  transition:border-color 200ms var(--ease),color 200ms var(--ease);
}
.status-legend__trigger:hover{border-color:var(--fluo);color:var(--fluo);}
.legend__panel{
  position:absolute;right:0;top:calc(100% + 10px);
  z-index:40;
  min-width:262px;
  background:var(--off-white);
  color:var(--ink-green-deep);
  border-radius:var(--r-card);
  border-left:6px solid var(--fluo);
  padding:16px 18px;
  box-shadow:0 18px 40px rgba(6,28,22,0.34);
}
.legend__item{
  display:flex;align-items:center;gap:10px;
  margin:0 0 10px;
  font-family:var(--font-mono);font-size:12.5px;
}
.legend__item:last-child{margin-bottom:0;}
.legend__dot{
  flex:0 0 auto;width:12px;height:12px;border-radius:50%;
}
.legend__dot--verified{background:var(--fluo);border:2px solid var(--ink-green);}
.legend__dot--pending{background:var(--ref-red);}
.legend__dot--review{background:var(--indigo);}

.site-header__navbar{background:var(--ink-green);}
.site-header__nav-inner{
  display:flex;align-items:center;justify-content:center;
  position:relative;
  padding-top:6px;padding-bottom:6px;
}
.site-nav{display:block;}
.site-nav__list{
  display:flex;align-items:center;justify-content:center;
  gap:clamp(4px,1.4vw,18px);
  flex-wrap:wrap;
}
.site-nav__link{
  display:inline-block;
  font-family:var(--font-display);
  font-weight:900;
  font-size:clamp(16px,1.5vw,20px);
  letter-spacing:0.02em;
  color:var(--off-white);
  padding:14px 6px;
  border-bottom:4px solid transparent;
  transition:color 200ms var(--ease),border-color 200ms var(--ease);
  text-decoration:none;
}
.site-nav__link:hover{color:var(--fluo);text-decoration:none;}
.site-nav__link[aria-current="page"]{
  color:var(--fluo);
  border-bottom-color:var(--fluo);
}
.site-nav__toggle{
  display:none;
  align-items:center;gap:10px;
  background:transparent;cursor:pointer;
  border:1px solid rgba(233,234,227,0.36);
  border-radius:var(--r-pill);
  color:var(--off-white);
  font-family:var(--font-mono);font-size:13px;letter-spacing:0.08em;
  padding:9px 18px;
}
.site-nav__toggle-bars,
.site-nav__toggle-bars::before,
.site-nav__toggle-bars::after{
  display:block;width:18px;height:2px;background:var(--fluo);
  transition:transform 200ms var(--ease),opacity 200ms var(--ease);
}
.site-nav__toggle-bars{position:relative;}
.site-nav__toggle-bars::before{content:"";position:absolute;top:-6px;}
.site-nav__toggle-bars::after{content:"";position:absolute;top:6px;}
.site-nav__mobile-cta{display:none;}

.progress-bar{
  position:sticky;top:0;z-index:60;
  height:4px;width:100%;
  background:rgba(11,46,36,0.12);
}
.progress-bar__fill{
  display:block;height:100%;width:0;
  background:linear-gradient(90deg,var(--fluo),var(--ref-red));
  transition:width 120ms linear;
}

/* ---------- footer ---------- */
.site-footer{
  background:var(--ink-green);
  color:var(--off-white);
  margin-top:var(--sp-block);
  background-image:radial-gradient(circle at 86% 100%,rgba(107,30,46,0.55),transparent 52%);
}
.site-footer__band{
  height:8px;
  background:repeating-linear-gradient(90deg,var(--fluo) 0 46px,transparent 46px 92px);
  opacity:0.9;
}
.site-footer__inner{
  display:grid;
  grid-template-columns:minmax(240px,5fr) 7fr;
  gap:clamp(28px,5vw,72px);
  padding-top:clamp(44px,6vw,84px);
  padding-bottom:clamp(32px,4vw,56px);
}
.site-footer__wordmark{
  font-family:var(--font-display);
  font-weight:900;font-size:clamp(26px,3vw,40px);
  line-height:1;margin:0 0 10px;color:var(--white);
}
.site-footer__tagline{
  margin:0 0 16px;
  font-family:var(--font-mono);font-size:13px;letter-spacing:0.08em;
  color:var(--fluo);
}
.site-footer__note{
  font-size:14px;color:var(--line-grey);margin:0 0 10px;
}
.site-footer__note a{color:var(--fluo-soft);}
.site-footer__columns{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(18px,3vw,40px);
}
.site-footer__col-title{
  font-size:17px;letter-spacing:0.06em;color:var(--white);
  margin:0 0 14px;padding-bottom:10px;
  border-bottom:2px solid rgba(216,244,64,0.5);
}
.site-footer__list li{margin-bottom:9px;}
.site-footer__list a{
  font-size:14.5px;color:var(--line-grey);
  border-bottom:1px solid transparent;
  transition:color 200ms var(--ease),border-color 200ms var(--ease);
}
.site-footer__list a:hover{color:var(--fluo);border-bottom-color:var(--fluo);text-decoration:none;}
.site-footer__legal{
  background:var(--ink-green-deep);
  border-top:1px solid rgba(233,234,227,0.14);
}
.site-footer__legal-inner{
  padding-top:20px;padding-bottom:26px;
}
.site-footer__legal-text{
  font-size:12.5px;color:rgba(233,234,227,0.82);
  margin:0 0 6px;font-family:var(--font-mono);
}
.site-footer__legal-row{
  display:flex;align-items:center;justify-content:space-between;
  gap:14px;flex-wrap:wrap;margin-top:14px;
}
.site-footer__icp,
.site-footer__copyright{
  font-family:var(--font-mono);font-size:12.5px;color:rgba(233,234,227,0.7);
}
.site-footer__legal-links{display:flex;gap:18px;flex-wrap:wrap;}
.site-footer__legal-links a{
  font-size:12.5px;color:var(--fluo-soft);
}

/* ---------- buttons ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-family:var(--font-display);
  font-weight:900;letter-spacing:0.03em;
  font-size:16px;line-height:1;
  padding:13px 24px;
  border-radius:var(--r-pill);
  border:2px solid transparent;
  cursor:pointer;
  transition:background 200ms var(--ease),color 200ms var(--ease),border-color 200ms var(--ease),transform 200ms var(--ease);
  text-decoration:none;
}
.btn:hover{text-decoration:none;transform:translateY(-2px);}
.btn--primary{background:var(--fluo);color:var(--ink-green-deep);border-color:var(--fluo);}
.btn--primary:hover{background:var(--fluo-soft);border-color:var(--fluo-soft);}
.btn--secondary{background:transparent;color:var(--off-white);border-color:rgba(233,234,227,0.5);}
.btn--secondary:hover{border-color:var(--fluo);color:var(--fluo);}

/* ---------- breadcrumbs ---------- */
.breadcrumbs{
  display:flex;flex-wrap:wrap;align-items:center;gap:8px;
  font-family:var(--font-mono);font-size:12.5px;
  color:var(--graphite);
  margin:0 0 clamp(20px,3vw,36px);
}
.breadcrumbs__item{display:inline-flex;align-items:center;gap:8px;}
.breadcrumbs__item + .breadcrumbs__item::before{
  content:"/";color:rgba(76,84,78,0.5);
}
.breadcrumbs__item a{color:var(--ink-green);}

/* ---------- sections & grid ---------- */
.section{
  padding-top:var(--sp-block);
  padding-bottom:var(--sp-block);
  position:relative;
}
.section--deep{background:var(--ink-green);color:var(--line-grey);}
.section--deep h2,.section--deep h3{color:var(--white);}
.section--indigo{background:var(--indigo);color:var(--line-grey);}
.section--indigo h2,.section--indigo h3{color:var(--white);}
.section--wine{background:var(--wine);color:var(--line-grey);}
.section--wine h2,.section--wine h3{color:var(--white);}
.section--line{background:var(--line-grey);}
.section--paper{background:var(--off-white);}
.section--skew{
  clip-path:polygon(0 0,100% 3.4vw,100% 100%,0 calc(100% - 3.4vw));
}

.grid{display:grid;gap:clamp(18px,2.6vw,32px);grid-template-columns:repeat(12,minmax(0,1fr));}
.grid--5-7 > .col-a{grid-column:span 5;}
.grid--5-7 > .col-b{grid-column:span 7;}
.grid--7-5 > .col-a{grid-column:span 7;}
.grid--7-5 > .col-b{grid-column:span 5;}

.prose{max-width:66ch;}
.prose p{font-size:17px;}

/* ---------- cards & data ---------- */
.card{
  background:var(--white);
  border-radius:var(--r-card);
  padding:var(--sp-card);
  border:1px solid rgba(11,46,36,0.08);
}
.card--data{border-top:5px solid var(--fluo);}
.card--dark{
  background:var(--ink-green-deep);
  color:var(--line-grey);
  border-color:rgba(233,234,227,0.16);
  border-top:5px solid var(--fluo);
}
.card--dark h3{color:var(--white);}
.data-line{
  display:flex;align-items:baseline;justify-content:space-between;gap:14px;
  padding:12px 0;
  border-bottom:1px dashed var(--line-grey);
  font-family:var(--font-mono);font-size:14px;
}
.data-line:last-child{border-bottom:0;}
.data-line__key{color:var(--graphite);letter-spacing:0.02em;}
.data-line__value{
  font-size:clamp(18px,2vw,26px);
  font-weight:700;color:var(--ink-green);
}
.card--dark .data-line{border-bottom-color:rgba(233,234,227,0.2);}
.card--dark .data-line__key{color:rgba(233,234,227,0.72);}
.card--dark .data-line__value{color:var(--fluo);}

.status-tag{
  display:inline-flex;align-items:center;gap:7px;
  font-family:var(--font-mono);font-size:12px;letter-spacing:0.05em;
  padding:5px 14px;border-radius:var(--r-pill);
  transition:background 200ms var(--ease),color 200ms var(--ease);
  border:1px solid transparent;
}
.status-tag--verified{background:var(--fluo);color:var(--ink-green-deep);border-color:var(--fluo);}
.status-tag--pending{background:var(--ref-red);color:var(--white);border-color:var(--ref-red);}
.status-tag--review{background:transparent;color:var(--indigo);border-color:var(--indigo);}

/* ---------- media ---------- */
.media{
  position:relative;
  border-radius:var(--r-card);
  overflow:hidden;
  background:linear-gradient(140deg,var(--ink-green-deep),var(--ink-green));
  aspect-ratio:16/10;
}
.media--wide{aspect-ratio:21/9;}
.media--portrait{aspect-ratio:3/4;}
.media > img{width:100%;height:100%;object-fit:cover;}
.media__caption{
  position:absolute;left:0;bottom:0;right:0;
  padding:14px 18px;
  font-family:var(--font-mono);font-size:12px;
  color:var(--off-white);
  background:linear-gradient(180deg,transparent,rgba(6,28,22,0.86));
}

/* ---------- axis rail ---------- */
.axis-rail{
  overflow-x:auto;
  padding-bottom:12px;
  scrollbar-width:thin;
}
.axis-rail__track{
  display:flex;align-items:center;gap:14px;
  min-width:max-content;
  padding:6px 2px;
}
.axis-rail__node{
  flex:0 0 auto;
  font-family:var(--font-mono);font-size:13px;
  padding:10px 20px;border-radius:var(--r-pill);
  border:1px solid rgba(233,234,227,0.35);
  color:var(--off-white);
  background:transparent;cursor:pointer;
  transition:background 200ms var(--ease),color 200ms var(--ease),border-color 200ms var(--ease);
}
.axis-rail__node[aria-selected="true"]{background:var(--fluo);color:var(--ink-green-deep);border-color:var(--fluo);}

/* ---------- anchor rail ---------- */
.anchor-rail{
  position:sticky;top:96px;
  display:flex;flex-direction:column;gap:12px;
  border-left:2px solid var(--line-grey);
  padding-left:16px;
}
.anchor-rail__link{
  font-family:var(--font-mono);font-size:13px;
  color:var(--graphite);
  padding-left:0;
}
.anchor-rail__link[aria-current="true"]{
  color:var(--ink-green);
  font-weight:700;
  box-shadow:inset 4px 0 0 var(--fluo);
  padding-left:10px;
}

/* ---------- reveal / misc ---------- */
.reveal{
  opacity:0;
  transform:translateY(16px);
  transition:opacity 320ms var(--ease),transform 320ms var(--ease);
}
.reveal--visible{opacity:1;transform:none;}
.reveal--d1{transition-delay:60ms;}
.reveal--d2{transition-delay:120ms;}
.reveal--d3{transition-delay:180ms;}

.to-top{
  position:fixed;right:clamp(14px,3vw,32px);bottom:clamp(14px,3vw,32px);
  z-index:70;
  appearance:none;cursor:pointer;
  font-family:var(--font-display);font-weight:900;font-size:15px;
  padding:12px 22px;border-radius:var(--r-pill);
  background:var(--fluo);color:var(--ink-green-deep);
  border:2px solid var(--ink-green);
  box-shadow:0 10px 26px rgba(6,28,22,0.32);
  transition:transform 200ms var(--ease),background 200ms var(--ease);
}
.to-top:hover{transform:translateY(-3px);background:var(--fluo-soft);}
.to-top[hidden]{display:none;}

/* ---------- responsive ---------- */
@media (max-width:1024px){
  .site-header__masthead-inner{
    grid-template-columns:1fr;
    justify-items:center;
    text-align:center;
  }
  .site-header__brand{grid-column:1;}
  .site-header__masthead-side{grid-column:1;justify-content:center;margin-top:18px;}
  .grid--5-7 > .col-a,
  .grid--5-7 > .col-b,
  .grid--7-5 > .col-a,
  .grid--7-5 > .col-b{grid-column:span 12;}
  .site-footer__inner{grid-template-columns:1fr;}
  .anchor-rail{position:static;border-left:0;border-top:2px solid var(--line-grey);padding:14px 0 0;}
}

@media (max-width:820px){
  .site-header__nav-inner{
    justify-content:flex-start;
    padding-top:10px;padding-bottom:10px;
  }
  .site-nav__toggle{display:inline-flex;}
  .site-nav{
    position:absolute;left:0;right:0;top:100%;
    z-index:55;
    background:var(--ink-green-deep);
    border-top:1px solid rgba(233,234,227,0.16);
    border-bottom:6px solid var(--fluo);
    max-height:0;overflow:hidden;
    transition:max-height 280ms var(--ease);
  }
  .site-nav[data-open="true"]{max-height:520px;overflow-y:auto;}
  .site-nav__list{
    flex-direction:column;align-items:stretch;gap:0;
    padding:10px clamp(18px,4vw,28px) 4px;
  }
  .site-nav__link{
    display:block;
    padding:15px 4px;
    border-bottom:1px solid rgba(233,234,227,0.12);
    border-left:4px solid transparent;
  }
  .site-nav__link[aria-current="page"]{
    border-bottom-color:rgba(233,234,227,0.12);
    border-left-color:var(--fluo);
  }
  .site-nav__mobile-cta{
    display:flex;flex-direction:column;gap:10px;
    padding:16px clamp(18px,4vw,28px) 22px;
  }
  .site-header__utility-inner{justify-content:flex-start;}
  .legend__panel{left:0;right:auto;min-width:0;width:max-content;max-width:82vw;}
  .grid{grid-template-columns:repeat(6,minmax(0,1fr));}
  .site-footer__columns{grid-template-columns:1fr 1fr;}
}

@media (max-width:560px){
  body{font-size:16px;}
  .grid{grid-template-columns:1fr;}
  .site-footer__columns{grid-template-columns:1fr;}
  .site-header__masthead-side .btn{width:100%;}
  .status-legend__trigger{width:100%;text-align:center;}
  .league-switch{width:100%;justify-content:space-between;}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  *,*::before,*::after{
    animation-duration:0.001ms !important;
    animation-iteration-count:1 !important;
    transition-duration:0.001ms !important;
    scroll-behavior:auto !important;
  }
  .reveal{opacity:1;transform:none;}
  .btn:hover,.to-top:hover{transform:none;}
}
