:root{
  --ink:#0B1A2E;
  --ink-deep:#13294A;
  --rock:#2A3340;
  --paper:#F2EFE6;
  --moss:#4E7A5E;
  --cyan:#34E1D6;
  --coral:#FF6F5E;
  --gold:#E9B65C;
  --black:#0A0F16;
  --mist:#9AA6B2;
  --line:rgba(154,166,178,.28);
  --line-strong:rgba(154,166,178,.5);
  --rhythm-h:64px;
  --rail-w:88px;
  --scroll-progress:0;
  --font-sans:"Noto Sans SC","Source Han Sans SC","PingFang SC","Microsoft YaHei","Helvetica Neue",Arial,sans-serif;
  --font-mono:"SFMono-Regular",Consolas,"Liberation Mono","Courier New",monospace;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  margin:0;
  padding-top:var(--rhythm-h);
  background:var(--ink);
  color:var(--paper);
  font-family:var(--font-sans);
  font-size:17px;
  line-height:1.75;
  text-rendering:optimizeLegibility;
}
@media (min-width:1024px){
  body{padding-left:var(--rail-w)}
}
img,svg{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
ul,ol{margin:0;padding:0;list-style:none}
p{margin:0 0 1em}
h1,h2,h3,h4{margin:0;line-height:1.15;letter-spacing:.03em;font-weight:900}
address{font-style:normal}
:focus-visible{outline:2px solid var(--coral);outline-offset:3px}
.skip-link{
  position:fixed;
  left:16px;
  top:-100%;
  z-index:999;
  padding:10px 14px;
  background:var(--coral);
  color:var(--black);
  font-weight:900;
}
.skip-link:focus{top:10px}
.mono{font-family:var(--font-mono);font-size:.86em;letter-spacing:.02em}
.site-header{position:relative;z-index:100}
.rhythm-bar{
  position:fixed;
  inset:0 0 auto;
  height:var(--rhythm-h);
  z-index:120;
  background:rgba(11,26,46,.97);
  border-bottom:1px solid var(--line);
}
.rhythm-bar__inner{
  height:100%;
  width:100%;
  max-width:1600px;
  margin:0 auto;
  padding:0 16px;
  display:flex;
  align-items:center;
  gap:14px;
}
.brand{display:flex;align-items:center;gap:10px;min-width:0}
.brand__pulse{
  width:10px;
  height:10px;
  flex:0 0 auto;
  border-radius:50%;
  background:var(--coral);
  box-shadow:0 0 0 5px rgba(255,111,94,.14);
}
.brand__name{
  font-size:15px;
  font-weight:900;
  letter-spacing:.04em;
  white-space:nowrap;
}
.brand__tag{
  font-family:var(--font-mono);
  font-size:10px;
  letter-spacing:.16em;
  color:var(--mist);
  white-space:nowrap;
}
.rhythm-bar__chapter{
  flex:1;
  margin:0;
  min-width:0;
  overflow:hidden;
  color:var(--mist);
  font-size:13px;
  text-align:center;
  white-space:nowrap;
  text-overflow:ellipsis;
}
.rhythm-bar__chapter .mono{color:var(--cyan)}
.rhythm-bar__tools{display:flex;align-items:center;gap:10px;margin-left:auto}
.rhythm-bar__search{
  font-size:13px;
  color:var(--cyan);
  border-bottom:1px solid transparent;
  transition:border-color .18s,color .18s;
}
.rhythm-bar__search:hover{color:var(--paper);border-color:var(--coral)}
.nav-toggle{
  display:none;
  align-items:center;
  gap:10px;
  height:40px;
  padding:0 10px;
  border:1px solid var(--line-strong);
  background:transparent;
  color:var(--paper);
}
.nav-toggle__label{font-size:13px;letter-spacing:.08em}
.nav-toggle__lines{
  display:block;
  position:relative;
  width:20px;
  height:2px;
  background:var(--cyan);
  transition:background .2s;
}
.nav-toggle__lines::before,
.nav-toggle__lines::after{
  content:"";
  position:absolute;
  left:0;
  width:20px;
  height:2px;
  background:var(--cyan);
  transition:transform .2s,background .2s;
}
.nav-toggle__lines::before{top:-6px}
.nav-toggle__lines::after{bottom:-6px}
.nav-toggle[aria-expanded="true"] .nav-toggle__lines{background:transparent}
.nav-toggle[aria-expanded="true"] .nav-toggle__lines::before{
  transform:translateY(6px) rotate(45deg);
  background:var(--coral);
}
.nav-toggle[aria-expanded="true"] .nav-toggle__lines::after{
  transform:translateY(-6px) rotate(-45deg);
  background:var(--coral);
}
.pulse-nav{
  position:fixed;
  top:var(--rhythm-h);
  left:0;
  bottom:0;
  width:var(--rail-w);
  z-index:110;
  display:flex;
  flex-direction:column;
  align-items:center;
  padding:18px 0 24px;
  overflow:hidden;
  background:linear-gradient(180deg,var(--ink),var(--black));
  border-right:1px solid var(--line);
}
.pulse-nav__head{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:8px;
  color:var(--mist);
  font-family:var(--font-mono);
  font-size:10px;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.pulse-nav__hint{writing-mode:vertical-rl;letter-spacing:.2em}
.pulse-nav__list{width:100%;display:flex;flex-direction:column;gap:10px;margin-top:18px}
.pulse-nav__item{width:100%}
.pulse-nav__link{
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:6px;
  width:100%;
  padding:8px 2px;
  color:var(--mist);
  border:1px solid transparent;
  transition:color .2s,border-color .2s,background .2s;
}
.pulse-nav__link:hover{
  color:var(--paper);
  border-color:var(--line);
  background:rgba(52,225,214,.04);
}
.pulse-nav__index{font-family:var(--font-mono);font-size:10px;color:inherit;opacity:.8}
.pulse-nav__label{
  writing-mode:vertical-rl;
  font-size:13px;
  font-weight:800;
  letter-spacing:.18em;
}
.pulse-nav__node{
  width:6px;
  height:6px;
  border-radius:50%;
  border:1px solid currentColor;
  background:transparent;
  transition:background .2s,box-shadow .2s,border-color .2s;
}
.pulse-nav__link[aria-current="page"]{color:var(--cyan)}
.pulse-nav__link[aria-current="page"] .pulse-nav__node{
  background:var(--coral);
  border-color:var(--coral);
  box-shadow:0 0 0 5px rgba(255,111,94,.16);
}
.pulse-nav__link[aria-current="page"]::before{
  content:"";
  position:absolute;
  left:0;
  top:10px;
  bottom:10px;
  width:2px;
  background:var(--coral);
}
.pulse-nav__progress{
  position:absolute;
  top:0;
  right:-1px;
  bottom:0;
  width:2px;
  overflow:hidden;
  background:rgba(154,166,178,.16);
}
.pulse-nav__progress span{
  display:block;
  width:100%;
  height:100%;
  background:linear-gradient(180deg,var(--cyan),var(--coral));
  transform:scaleY(var(--scroll-progress));
  transform-origin:top center;
  transition:transform .12s linear;
}
.site-footer{
  position:relative;
  padding:44px 0 22px;
  background:var(--black);
  color:var(--paper);
  border-top:1px solid var(--line);
}
.footer-beat{
  width:min(100% - 32px,1280px);
  height:14px;
  margin:0 auto 24px;
  display:flex;
  align-items:center;
  gap:8px;
}
.beat-line{
  display:block;
  width:100%;
  height:1px;
  background:linear-gradient(90deg,transparent,var(--cyan),var(--coral),transparent);
  opacity:.6;
}
.footer-top,
.footer-mid,
.footer-bottom{
  width:min(100% - 32px,1280px);
  margin-left:auto;
  margin-right:auto;
}
.footer-top{
  display:grid;
  grid-template-columns:1fr;
  gap:22px;
  padding-bottom:22px;
  border-bottom:1px solid var(--line);
}
.footer-brand__mark{
  display:inline-block;
  font-size:20px;
  font-weight:900;
  letter-spacing:.04em;
  color:var(--paper);
}
.footer-brand__claim{margin:10px 0 0;max-width:34em;color:var(--mist)}
.footer-lines{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.footer-line{
  display:flex;
  align-items:center;
  gap:10px;
  padding:10px 12px;
  border:1px solid var(--line);
  color:var(--paper);
  transition:border-color .2s,color .2s,background .2s;
}
.footer-line:hover{
  border-color:var(--cyan);
  color:var(--cyan);
  background:rgba(52,225,214,.05);
}
.footer-line .mono{color:var(--coral)}
.footer-mid{
  display:grid;
  grid-template-columns:1fr;
  gap:20px;
  padding:22px 0;
}
.footer-kicker{
  margin:0 0 8px;
  font-family:var(--font-mono);
  font-size:12px;
  letter-spacing:.14em;
  color:var(--gold);
  text-transform:uppercase;
}
.footer-service p{margin:0;color:var(--mist)}
.footer-contact{display:flex;flex-direction:column;gap:7px;color:var(--mist)}
.footer-contact__key{
  display:inline-block;
  min-width:4.5em;
  margin-right:8px;
  color:var(--gold);
  font-family:var(--font-mono);
  font-size:12px;
  letter-spacing:.06em;
}
.footer-bottom{
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  gap:12px;
  padding-top:18px;
  border-top:1px solid var(--line);
  color:var(--mist);
  font-size:13px;
}
.footer-legal{display:flex;flex-wrap:wrap;gap:16px}
.footer-legal a{
  color:var(--mist);
  border-bottom:1px solid transparent;
  transition:color .18s,border-color .18s;
}
.footer-legal a:hover{color:var(--cyan);border-color:var(--coral)}
.footer-record{display:flex;flex-wrap:wrap;gap:16px}
.page-shell{width:min(100% - 32px,1280px);margin-inline:auto}
.content-grid{display:grid;grid-template-columns:1fr;gap:28px}
.surface-light{background:var(--paper);color:var(--black)}
.section-head{display:grid;gap:10px;margin-bottom:22px}
.section-kicker{
  font-family:var(--font-mono);
  font-size:12px;
  letter-spacing:.16em;
  color:var(--coral);
  text-transform:uppercase;
}
.section-title{font-size:clamp(28px,4vw,44px);line-height:1.1;letter-spacing:.03em}
.section-lede{margin:0;max-width:38em;color:var(--mist)}
.eyebrow{
  font-family:var(--font-mono);
  font-size:12px;
  letter-spacing:.14em;
  color:var(--cyan);
  text-transform:uppercase;
}
.prose{max-width:38em;font-size:18px;line-height:1.75}
.prose p{margin:0 0 1.05em}
.prose h2,.prose h3{margin:1.4em 0 .6em}
.prose a{color:var(--cyan);border-bottom:1px solid rgba(52,225,214,.35)}
.prose a:hover{border-color:var(--coral)}
.surface-light .prose{color:var(--black)}
.surface-light .prose a{color:#0E6F6A;border-color:rgba(14,111,106,.35)}
.breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;align-items:center;color:var(--mist);font-size:13px}
.breadcrumbs__item{display:inline-flex;align-items:center;gap:8px}
.breadcrumbs__link{
  color:var(--mist);
  border-bottom:1px solid transparent;
  transition:color .18s,border-color .18s;
}
.breadcrumbs__link:hover{color:var(--cyan);border-color:var(--coral)}
.breadcrumbs__sep{color:var(--rock)}
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:44px;
  padding:0 18px;
  border:1px solid var(--line-strong);
  background:transparent;
  color:var(--paper);
  font-weight:800;
  letter-spacing:.04em;
  transition:border-color .2s,background .2s,color .2s;
}
.btn:hover{border-color:var(--cyan);color:var(--cyan);background:rgba(52,225,214,.05)}
.btn--pulse{background:var(--cyan);border-color:var(--cyan);color:var(--ink)}
.btn--pulse:hover{background:var(--coral);border-color:var(--coral);color:var(--ink)}
.btn--ghost{border-color:var(--line);color:var(--mist)}
.btn--ghost:hover{color:var(--paper);border-color:var(--coral)}
.grid{display:grid;grid-template-columns:1fr;gap:20px}
.grid--2,
.grid--3,
.grid--aside{grid-template-columns:1fr}
.stack{display:grid;gap:16px}
.cluster{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.card{
  padding:20px;
  border:1px solid var(--line);
  background:rgba(19,41,74,.45);
  transition:border-color .2s,background .2s;
}
.card:hover{border-color:var(--cyan);background:rgba(19,41,74,.7)}
.card__index{font-family:var(--font-mono);font-size:13px;color:var(--coral)}
.card__title{margin:8px 0 6px;font-size:20px}
.card__text{margin:0;color:var(--mist)}
.card__meta{margin-top:12px;font-family:var(--font-mono);font-size:12px;color:var(--gold)}
.step-card{
  display:grid;
  gap:10px;
  padding:20px;
  border:1px solid var(--line);
  background:rgba(19,41,74,.55);
  transition:border-color .2s,background .2s;
}
.step-card:hover{border-color:var(--cyan);background:rgba(19,41,74,.72)}
.step-card__number{font-family:var(--font-mono);font-size:32px;line-height:1;color:var(--coral);font-weight:800}
.step-card__title{margin:0;font-size:20px}
.step-card__text{margin:0;color:var(--mist)}
.tag{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:0 8px;
  border:1px solid var(--line-strong);
  color:var(--mist);
  font-family:var(--font-mono);
  font-size:11px;
  letter-spacing:.08em;
}
.tag--moss{color:#A9D6B4;border-color:rgba(78,122,94,.7);background:rgba(78,122,94,.16)}
.tag--cyan{color:var(--cyan);border-color:rgba(52,225,214,.5);background:rgba(52,225,214,.08)}
.tag--coral{color:var(--coral);border-color:rgba(255,111,94,.5);background:rgba(255,111,94,.08)}
.tag--gold{color:var(--gold);border-color:rgba(233,182,92,.5);background:rgba(233,182,92,.08)}
.table-wrap{overflow-x:auto;border:1px solid var(--line);background:var(--paper);color:var(--black)}
.table{width:100%;border-collapse:collapse;font-size:15px}
.table th{background:var(--rock);color:var(--paper);text-align:left;padding:12px;font-weight:800;letter-spacing:.03em}
.table td{padding:12px;border-top:1px solid rgba(42,51,64,.16);vertical-align:top}
.data-number{
  display:block;
  font-family:var(--font-sans);
  font-size:clamp(40px,8vw,72px);
  line-height:.9;
  font-weight:900;
  letter-spacing:-.02em;
  color:var(--cyan);
}
.data-number--coral{color:var(--coral)}
.data-number--gold{color:var(--gold)}
.aside-note{padding:12px 0 12px 16px;border-left:2px solid var(--coral);color:var(--mist)}
.aside-note__label{
  display:block;
  font-family:var(--font-mono);
  font-size:12px;
  color:var(--gold);
  letter-spacing:.1em;
}
.aside-note__value{
  display:block;
  margin-top:4px;
  font-size:28px;
  line-height:1.1;
  font-weight:900;
  color:var(--paper);
}
.further{display:grid;gap:8px}
.further__link{
  display:flex;
  justify-content:space-between;
  gap:12px;
  padding:10px 0;
  border-bottom:1px solid var(--line);
  color:var(--paper);
  transition:color .18s,border-color .18s;
}
.further__link::after{content:"↗";color:var(--cyan)}
.further__link:hover{color:var(--cyan);border-color:var(--coral)}
.divider-wave{display:flex;align-items:center;gap:6px;height:14px;margin:32px 0}
.divider-wave__line{
  flex:1;
  height:1px;
  background:linear-gradient(90deg,transparent,var(--cyan),var(--coral),transparent);
  opacity:.65;
}
.image-frame{display:block;overflow:hidden;border:1px solid var(--line);background:var(--ink-deep)}
.image-frame__media{
  position:relative;
  aspect-ratio:16/9;
  background:
    radial-gradient(circle at 18% 30%,rgba(52,225,214,.18),transparent 42%),
    linear-gradient(120deg,rgba(19,41,74,.9),rgba(10,15,22,.95));
}
.image-frame__media::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,transparent 0 12%,rgba(52,225,214,.5) 12% 12.8%,transparent 12.8% 28%,rgba(255,111,94,.45) 28% 28.7%,transparent 28.7% 100%);
  opacity:.5;
}
.image-frame__media::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:2px;
  background:linear-gradient(90deg,var(--cyan),var(--coral));
  transform:scaleX(var(--scroll-progress));
  transform-origin:left center;
  opacity:.8;
}
.image-frame__caption{
  display:block;
  padding:10px 12px;
  border-top:1px solid var(--line);
  color:var(--mist);
  font-size:13px;
}
.image-frame--wide .image-frame__media{aspect-ratio:21/9}
.image-frame--portrait .image-frame__media{aspect-ratio:3/4}
@media (min-width:720px) and (max-width:1023px){
  .grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .grid--3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .footer-top{grid-template-columns:1fr 1fr}
}
@media (min-width:1024px){
  .nav-toggle{display:none}
  .grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .grid--aside{grid-template-columns:minmax(0,1fr) 280px}
  .content-grid{grid-template-columns:minmax(0,1fr) 280px}
  .footer-top{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}
  .footer-mid{grid-template-columns:1fr 1fr}
}
@media (max-width:1023px){
  body{padding-left:0}
  .rhythm-bar__chapter{display:none}
  .brand__tag{display:none}
  .nav-toggle{display:inline-flex}
  .pulse-nav{
    top:var(--rhythm-h);
    left:auto;
    right:0;
    bottom:0;
    width:min(86vw,360px);
    align-items:stretch;
    padding:22px 18px 34px;
    transform:translateX(105%);
    opacity:0;
    visibility:hidden;
    overflow-y:auto;
    border-right:0;
    border-left:1px solid var(--line);
    transition:transform .28s ease,opacity .22s ease,visibility .22s;
  }
  .site-header[data-open="true"] .pulse-nav{
    transform:translateX(0);
    opacity:1;
    visibility:visible;
  }
  .pulse-nav__head{
    flex-direction:row;
    justify-content:space-between;
    align-items:center;
    width:100%;
  }
  .pulse-nav__hint{writing-mode:horizontal-tb;letter-spacing:.08em}
  .pulse-nav__list{margin-top:20px;gap:0}
  .pulse-nav__link{
    flex-direction:row;
    justify-content:flex-start;
    align-items:center;
    gap:14px;
    padding:14px 10px;
    border-bottom:1px solid var(--line);
  }
  .pulse-nav__label{writing-mode:horizontal-tb;font-size:15px;letter-spacing:.06em}
  .pulse-nav__index{font-size:12px}
  .pulse-nav__node{margin-left:auto}
  .pulse-nav__link[aria-current="page"]::before{left:0;top:0;bottom:0;width:2px}
  .pulse-nav__progress{left:0;right:0;bottom:0;top:auto;width:auto;height:2px}
  .pulse-nav__progress span{transform:scaleX(var(--scroll-progress));transform-origin:left center}
}
@media (max-width:420px){
  .brand__name{max-width:8em;overflow:hidden;text-overflow:ellipsis}
  .nav-toggle__label{display:none}
  .rhythm-bar__search{font-size:12px}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{
    animation-duration:.001ms!important;
    animation-iteration-count:1!important;
    transition-duration:.001ms!important;
  }
  .pulse-nav__progress span,
  .image-frame__media::after{transition:none}
}
