:root{
  --ink:#0B100E;
  --deep:#0F3D2E;
  --cyan:#38F2C4;
  --orange:#FF8A3C;
  --rock:#2B3532;
  --moss:#7FA88A;
  --clay:#C1683F;
  --bone:#F1EDE2;
  --line:#1E4A3D;
  --dawn:#E8D06A;
  --rail-w:264px;
  --gap:clamp(16px,2.4vw,32px);
  --mono:"SFMono-Regular",Consolas,"Liberation Mono",Menlo,monospace;
  --sans:"Helvetica Neue",Helvetica,"PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;
  --edge:14px;
}
*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;}
body{
  margin:0;
  background:var(--ink);
  color:var(--bone);
  font-family:var(--sans);
  font-size:17px;
  line-height:1.85;
  letter-spacing:.01em;
  background-image:
    linear-gradient(to right,rgba(30,74,61,.32) 1px,transparent 1px),
    linear-gradient(to bottom,rgba(30,74,61,.22) 1px,transparent 1px);
  background-size:calc(100% / 12) 88px,calc(100% / 12) 88px;
}
img{max-width:100%;display:block;}
a{color:var(--cyan);text-decoration:none;}
a:hover{color:var(--orange);}
h1,h2,h3,h4{
  margin:0 0 .6em;
  font-family:var(--sans);
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.06em;
  line-height:1.12;
  font-stretch:condensed;
}
h1{font-size:clamp(34px,6vw,68px);}
h2{font-size:clamp(24px,3.4vw,38px);}
h3{font-size:clamp(19px,2.2vw,26px);}
p{margin:0 0 1.1em;}
code,time,.mono{font-family:var(--mono);font-variant-numeric:tabular-nums;}
:focus-visible{outline:2px solid var(--cyan);outline-offset:3px;}

.skip-link{
  position:absolute;left:12px;top:-60px;z-index:120;
  background:var(--cyan);color:var(--ink);
  padding:10px 18px;font-weight:700;font-size:14px;
  border-radius:0 0 12px 0;transition:top .18s ease;
}
.skip-link:focus{top:0;}

.container{width:min(1180px,100% - 2*var(--gap));margin-inline:auto;}
.section{padding-block:clamp(40px,6vw,88px);position:relative;}
.section__head{margin-bottom:clamp(20px,3vw,40px);border-bottom:1px solid var(--line);padding-bottom:14px;}
.section__title{margin:0;}
.blueprint-grid{position:relative;}
.blueprint-grid::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:repeating-linear-gradient(90deg,transparent 0 calc(100% / 12 - 1px),rgba(30,74,61,.5) calc(100% / 12 - 1px) calc(100% / 12));
  opacity:.55;
}
.grid-line{border-top:1px dashed var(--line);height:0;margin-block:24px;}

.site-header{position:relative;z-index:60;}
.site-header__bar{
  display:flex;align-items:center;gap:16px;flex-wrap:wrap;
  background:var(--deep);
  border-bottom:1px solid var(--line);
  padding:10px max(var(--gap),calc((100% - 1180px)/2));
}
.brand{display:inline-flex;align-items:center;gap:10px;color:var(--bone);font-weight:800;letter-spacing:.14em;text-transform:uppercase;font-size:15px;}
.brand:hover{color:var(--cyan);}
.brand__mark{width:12px;height:22px;background:var(--cyan);clip-path:polygon(0 0,100% 0,100% 62%,50% 100%,0 62%);}
.brand__name{white-space:nowrap;}
.site-header__meta{
  margin:0;margin-left:auto;display:flex;align-items:center;gap:14px;
  font-family:var(--mono);font-size:12.5px;color:var(--moss);letter-spacing:.08em;
}
.site-header__meta-label{text-transform:uppercase;}
.site-header__meta-time{color:var(--cyan);}
.site-header__link{font-family:var(--mono);font-size:12.5px;border-bottom:1px solid var(--orange);color:var(--orange);}
.site-header__link:hover{color:var(--cyan);border-color:var(--cyan);}

.nav-toggle{
  display:none;align-items:center;gap:10px;
  background:var(--rock);color:var(--bone);
  border:1px solid var(--line);padding:9px 14px;
  font-family:var(--mono);font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;
  cursor:pointer;clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,0 100%);
}
.nav-toggle__bars,.nav-toggle__bars::before,.nav-toggle__bars::after{
  display:block;width:18px;height:2px;background:var(--cyan);
}
.nav-toggle__bars{position:relative;}
.nav-toggle__bars::before{content:"";position:absolute;top:-6px;}
.nav-toggle__bars::after{content:"";position:absolute;top:6px;}

.nav-drawer{
  position:fixed;left:0;top:0;width:var(--rail-w);height:100vh;
  background:linear-gradient(180deg,var(--deep),#0A2A20 100%);
  border-right:1px solid var(--line);
  padding:88px 20px 28px;overflow-y:auto;z-index:50;
}
.nav-drawer__caption{
  font-family:var(--mono);font-size:11px;letter-spacing:.24em;text-transform:uppercase;
  color:var(--moss);margin:0 0 14px;padding-bottom:10px;border-bottom:1px solid var(--line);
}
.nav-drawer__list{list-style:none;margin:0 0 30px;padding:0;}
.nav-drawer__item{margin-bottom:2px;}
.nav-drawer__link{
  display:flex;align-items:baseline;gap:10px;
  padding:11px 12px;color:var(--bone);
  border-left:3px solid transparent;
  font-size:15px;letter-spacing:.04em;
  transition:background .2s ease,border-color .2s ease,color .2s ease;
}
.nav-drawer__link:hover{background:rgba(56,242,196,.08);color:var(--cyan);}
.nav-drawer__num{font-family:var(--mono);font-size:11.5px;color:var(--moss);}
.nav-drawer__link[aria-current="page"]{
  border-left-color:var(--cyan);background:rgba(56,242,196,.12);color:var(--cyan);
}
.nav-drawer__link[aria-current="page"] .nav-drawer__num{color:var(--cyan);}
.nav-drawer__cta{width:100%;justify-content:center;}

.rail-rank{border-top:1px solid var(--line);padding-top:16px;}
.rail-rank__title{font-family:var(--mono);font-size:11px;letter-spacing:.2em;color:var(--moss);text-transform:uppercase;margin:0 0 10px;}
.rail-rank__list{list-style:none;margin:0;padding:0;}
.rail-rank__item{
  display:flex;align-items:center;gap:8px;
  font-size:13px;padding:6px 0;border-bottom:1px dotted rgba(127,168,138,.28);
}
.rail-rank__num{font-family:var(--mono);color:var(--moss);font-size:12px;}
.rail-rank__name{flex:1;color:var(--bone);opacity:.9;}
.rail-rank__delta{font-family:var(--mono);font-size:11.5px;color:var(--rock);}
.rail-rank__delta--up{color:var(--dawn);}
.rail-rank__delta--down{color:var(--clay);}

.refresh-fab{
  position:fixed;right:20px;bottom:22px;z-index:70;
  display:inline-flex;align-items:center;gap:8px;
  background:var(--orange);color:var(--ink);
  border:0;padding:13px 20px;cursor:pointer;
  font-family:var(--mono);font-size:12.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,12px 100%,0 calc(100% - 12px));
}
.refresh-fab:hover{background:var(--cyan);}
.refresh-fab__ring{
  position:absolute;inset:-6px;border:2px solid var(--cyan);opacity:0;pointer-events:none;
  clip-path:inherit;
}
.refresh-fab.is-pulsing .refresh-fab__ring{animation:pulse 1.1s ease-out;}
@keyframes pulse{
  0%{opacity:.9;transform:scale(.82);}
  100%{opacity:0;transform:scale(1.22);}
}

.breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:14px 0;font-family:var(--mono);font-size:12px;color:var(--moss);}
.breadcrumbs__item::after{content:"–";margin-left:8px;color:var(--line);}
.breadcrumbs__item:last-child::after{content:"";}
.breadcrumbs a{color:var(--moss);}
.breadcrumbs a:hover{color:var(--cyan);}

.btn{
  display:inline-flex;align-items:center;gap:8px;
  padding:12px 22px;border:1px solid var(--line);
  background:var(--rock);color:var(--bone);
  font-family:var(--mono);font-size:13px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;
  cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease;
  clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,0 100%);
}
.btn:hover{background:var(--deep);color:var(--cyan);border-color:var(--cyan);}
.btn--primary{background:var(--orange);color:var(--ink);border-color:var(--orange);}
.btn--primary:hover{background:var(--cyan);border-color:var(--cyan);color:var(--ink);}
.btn--ghost{background:transparent;color:var(--cyan);border-color:var(--cyan);}
.btn--ghost:hover{background:rgba(56,242,196,.12);}

.panel{
  position:relative;background:var(--rock);
  border:1px solid var(--line);padding:22px;
}
.panel--notch{clip-path:polygon(0 0,calc(100% - 26px) 0,100% 26px,100% 100%,0 100%);}
.panel__topline{
  position:absolute;left:0;top:0;height:2px;width:64px;background:var(--cyan);
}
.data-label{font-family:var(--mono);font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--moss);margin:0 0 6px;}
.data-value{font-family:var(--mono);font-size:clamp(26px,3.6vw,40px);font-weight:700;color:var(--bone);margin:0;line-height:1.1;}
.data-unit{font-family:var(--mono);font-size:12px;color:var(--moss);margin-left:6px;}

.tag{
  display:inline-block;font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;
  padding:3px 9px;border:1px solid currentColor;
}
.tag--clay{color:var(--clay);}
.tag--moss{color:var(--moss);}

.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease;}
.reveal.is-visible{opacity:1;transform:none;}

.fold{border:1px solid var(--line);background:rgba(43,53,50,.55);margin-bottom:10px;}
.fold__trigger{
  display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;
  background:transparent;border:0;color:var(--bone);text-align:left;
  padding:14px 18px;font-size:16px;font-weight:700;cursor:pointer;
}
.fold__trigger::after{content:"+";font-family:var(--mono);color:var(--cyan);font-size:18px;}
.fold[data-open] .fold__trigger::after{content:"–";}
.fold__body{padding:0 18px 18px;color:var(--moss);}
.fold__body[hidden]{display:none;}

.copy-field{
  display:inline-block;cursor:pointer;font-family:var(--mono);font-size:13px;
  border-bottom:1px dashed var(--line);color:var(--bone);
}
.copy-field:hover{border-color:var(--cyan);color:var(--cyan);}
.copy-field.is-copied{color:var(--cyan);border-color:var(--cyan);}

.media-frame{
  position:relative;background:var(--rock);border:1px solid var(--line);
  overflow:hidden;aspect-ratio:16/10;
}
.media-frame img{width:100%;height:100%;object-fit:cover;filter:saturate(.9) contrast(1.06);}
.media-frame--wide{aspect-ratio:21/9;}
.media-frame--tall{aspect-ratio:4/5;}
.media-frame__caption{
  position:absolute;left:0;bottom:0;right:0;
  background:linear-gradient(0deg,rgba(11,16,14,.92),transparent);
  padding:22px 16px 12px;font-family:var(--mono);font-size:11.5px;color:var(--moss);letter-spacing:.1em;
}

.pulse-ring{position:relative;}
.pulse-ring::after{
  content:"";position:absolute;inset:-4px;border:2px solid var(--cyan);
  opacity:0;pointer-events:none;
}
.pulse-ring.is-pulsing::after{animation:pulse 1.1s ease-out;}

.site-footer{
  background:var(--deep);border-top:1px solid var(--line);
  margin-top:clamp(40px,6vw,80px);padding-top:clamp(32px,4vw,56px);
}
.site-footer__grid{
  width:min(1180px,100% - 2*var(--gap));margin-inline:auto;
  display:grid;grid-template-columns:1.2fr 1fr 1.2fr;gap:var(--gap);
  padding-bottom:32px;
}
.site-footer__logo{font-family:var(--sans);font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--bone);font-size:17px;margin:0 0 8px;}
.site-footer__slogan{color:var(--moss);margin:0 0 8px;font-size:15px;}
.site-footer__domain{font-family:var(--mono);font-size:12px;color:var(--cyan);margin:0;}
.site-footer__nav-title{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--moss);margin:0 0 12px;}
.site-footer__list{list-style:none;margin:0;padding:0;font-size:15px;}
.site-footer__list li{margin-bottom:8px;color:var(--moss);}
.site-footer__list a{color:var(--bone);}
.site-footer__list a:hover{color:var(--cyan);}
.site-footer__contact .copy-field{color:var(--bone);}
.site-footer__legal{
  border-top:1px solid var(--line);
  padding:16px max(var(--gap),calc((100% - 1180px)/2));
  display:flex;flex-wrap:wrap;align-items:center;gap:10px 20px;
}
.site-footer__copy{margin:0;font-family:var(--mono);font-size:12px;color:var(--moss);}
.site-footer__legal-list{list-style:none;display:flex;flex-wrap:wrap;gap:18px;margin:0;padding:0;font-family:var(--mono);font-size:12px;}
.site-footer__legal-list a{color:var(--moss);}
.site-footer__legal-list a:hover{color:var(--cyan);}

body{padding-left:var(--rail-w);}
.site-header__bar{padding-left:max(var(--gap),calc((100vw - var(--rail-w) - 1180px)/2 + var(--rail-w) - var(--rail-w)));}
main{display:block;}

@media (max-width:1024px){
  :root{--rail-w:0px;}
  body{padding-left:0;}
  .nav-toggle{display:inline-flex;}
  .site-header__bar{padding:10px var(--gap);}
  .nav-drawer{
    position:fixed;left:0;top:0;width:min(320px,86vw);
    transform:translateX(-102%);transition:transform .3s ease;
    box-shadow:0 0 0 100vmax rgba(11,16,14,.6);
  }
  .nav-drawer[data-open]{transform:translateX(0);}
  .site-header__meta{margin-left:auto;order:3;width:100%;justify-content:flex-start;}
  .nav-toggle{margin-left:auto;}
}
@media (max-width:760px){
  body{font-size:16px;}
  .site-footer__grid{grid-template-columns:1fr;gap:28px;}
  .site-footer__legal{flex-direction:column;align-items:flex-start;}
  .refresh-fab{right:14px;bottom:14px;padding:11px 16px;}
}
@media (min-width:1025px){
  .nav-drawer{transform:none;}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important;}
  html{scroll-behavior:auto;}
  .reveal{opacity:1;transform:none;}
}
