:root{
  --bg-deep:#0B1B2B;
  --bg-lift:#081620;
  --green:#00FF88;
  --orange:#FF7A00;
  --violet:#5A5CFF;
  --cyan:#D0E4F5;
  --gray:#8A9BAB;
  --error:#FF4D4F;
  --glass:rgba(255,255,255,0.06);
  --line:rgba(138,155,171,0.18);
  --content:1240px;
  --radius:16px;
  --font-head:"Archivo Black","Noto Sans SC","HarmonyOS Sans","PingFang SC","Microsoft YaHei",sans-serif;
  --font-body:"Noto Sans SC","HarmonyOS Sans","PingFang SC","Microsoft YaHei",sans-serif;
  --font-data:"JetBrains Mono","Roboto Mono","SFMono-Regular",Consolas,monospace;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--bg-deep);
  color:var(--cyan);
  font-family:var(--font-body);
  font-size:16px;
  line-height:1.75;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--green)}
button{font:inherit}
:focus-visible{outline:2px solid var(--orange);outline-offset:3px;border-radius:4px}
::selection{background:var(--green);color:#06121B}

.skip-link{
  position:fixed;
  top:0;
  left:0;
  z-index:1000;
  transform:translateY(-130%);
  background:var(--green);
  color:#06121B;
  padding:.7rem 1rem;
  border-radius:0 0 12px 0;
  font-weight:800;
  font-size:.9rem;
  text-decoration:none;
}
.skip-link:focus{transform:translateY(0);color:#06121B}

.site-header{
  position:sticky;
  top:0;
  z-index:100;
  background:rgba(11,27,43,.92);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line);
}
.announce-bar{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:1.5rem;
  padding:.45rem 1rem;
  background:linear-gradient(90deg,#0A1825,#101D30 50%,#0A1825);
  border-bottom:1px solid rgba(0,255,136,.18);
  font-family:var(--font-data);
  font-size:.78rem;
  color:var(--gray);
  overflow:hidden;
  white-space:nowrap;
}
.announce-bar::before{
  content:"";
  position:absolute;
  inset:0;
  background:repeating-linear-gradient(115deg,transparent 0 18px,rgba(90,92,255,.08) 18px 19px,transparent 19px 36px);
  pointer-events:none;
}
.announce-text{position:relative;color:var(--cyan)}
.announce-text::before{
  content:"";
  display:inline-block;
  width:8px;
  height:8px;
  margin-right:8px;
  border-radius:2px;
  background:var(--green);
  box-shadow:0 0 10px var(--green);
}
.announce-meta{position:relative;color:var(--green);letter-spacing:.08em}
.header-main{
  position:relative;
  max-width:var(--content);
  margin-inline:auto;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:1rem 1.25rem;
  padding:.9rem 1.5rem;
}
.progress-track{
  position:absolute;
  left:0;
  right:0;
  bottom:-1px;
  height:3px;
  background:rgba(90,92,255,.18);
  pointer-events:none;
  overflow:hidden;
}
.progress-line{
  display:block;
  width:0%;
  height:100%;
  background:linear-gradient(90deg,var(--green),var(--violet));
  box-shadow:0 0 14px rgba(0,255,136,.65);
}
.brand{
  display:inline-flex;
  align-items:center;
  gap:.7rem;
  text-decoration:none;
  flex-shrink:0;
}
.brand-glyph{
  position:relative;
  width:38px;
  height:38px;
  flex:0 0 38px;
  background:
    radial-gradient(circle at 30% 30%,rgba(255,122,0,.45),transparent 45%),
    linear-gradient(135deg,rgba(0,255,136,.4),rgba(11,27,43,.2) 44%,rgba(90,92,255,.55));
  border:1px solid rgba(0,255,136,.35);
  border-radius:3px 14px 3px 14px;
}
.brand-glyph::before{
  content:"";
  position:absolute;
  inset:7px;
  border:1px solid rgba(208,228,245,.55);
  border-radius:2px 8px 2px 8px;
}
.brand-glyph::after{
  content:"";
  position:absolute;
  right:4px;
  top:50%;
  width:16px;
  height:2px;
  background:var(--green);
  transform:rotate(-18deg);
  box-shadow:12px -7px 0 -1px var(--orange),6px 8px 0 -1px var(--violet);
}
.brand-name{
  font-family:var(--font-head);
  font-weight:900;
  font-size:1.3rem;
  line-height:1.1;
  letter-spacing:.02em;
  color:var(--cyan);
}
.brand-tld{
  display:inline-block;
  margin-left:.2em;
  font-family:var(--font-data);
  font-weight:700;
  font-size:.62em;
  letter-spacing:.12em;
  color:var(--green);
  background:rgba(0,255,136,.1);
  border:1px solid rgba(0,255,136,.28);
  padding:.18em .45em;
  border-radius:3px;
  vertical-align:middle;
  text-transform:uppercase;
}
.nav-toggle{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  background:transparent;
  border:1px solid var(--line);
  padding:.45rem .75rem;
  border-radius:8px;
  color:var(--cyan);
  cursor:pointer;
  font-weight:700;
  line-height:1;
}
.nav-toggle-box{
  width:18px;
  height:12px;
  display:inline-flex;
  flex-direction:column;
  justify-content:space-between;
}
.nav-toggle-box span{
  height:2px;
  background:var(--cyan);
  border-radius:2px;
  transition:background .2s,transform .2s,opacity .2s;
}
.nav-toggle[aria-expanded="true"] .nav-toggle-box span:nth-child(1){
  transform:translateY(5px) rotate(45deg);
  background:var(--green);
}
.nav-toggle[aria-expanded="true"] .nav-toggle-box span:nth-child(2){
  opacity:0;
}
.nav-toggle[aria-expanded="true"] .nav-toggle-box span:nth-child(3){
  transform:translateY(-5px) rotate(-45deg);
  background:var(--green);
}
.site-nav{
  order:4;
  width:100%;
  display:none;
}
.site-nav[data-open]{
  display:block;
  padding:.5rem 0 1rem;
}
.nav-list{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:.2rem;
}
.nav-link{
  display:block;
  color:var(--gray);
  text-decoration:none;
  font-weight:700;
  padding:.7rem .9rem;
  border-radius:8px;
  border-left:3px solid transparent;
  transition:color .2s,background .2s,border-color .2s,box-shadow .2s;
}
.nav-link:hover{
  color:var(--green);
  background:rgba(0,255,136,.08);
  border-left-color:var(--green);
}
.nav-link[aria-current="page"]{
  color:var(--green);
  background:linear-gradient(90deg,rgba(0,255,136,.14),transparent 70%);
  border-left-color:var(--green);
  box-shadow:inset 0 -2px 0 rgba(0,255,136,.4);
}
.header-actions{
  order:2;
  margin-left:auto;
  display:flex;
  align-items:center;
  gap:.6rem;
}
.action-btn{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  border-radius:999px;
  padding:.55rem 1.1rem;
  text-decoration:none;
  border:1px solid transparent;
  font-weight:800;
  font-size:.875rem;
  line-height:1;
  cursor:pointer;
  white-space:nowrap;
  transition:transform .2s,box-shadow .2s,background .2s,color .2s;
}
.action-btn:hover{transform:translateY(-1px)}
.action-btn:active{transform:translateY(1px)}
.action-btn--primary{
  background:var(--green);
  color:#06121B;
  box-shadow:0 0 18px rgba(0,255,136,.28);
}
.action-btn--primary:hover{
  background:#a1ffce;
  box-shadow:0 0 30px rgba(0,255,136,.5);
}
.action-btn--ghost{
  background:rgba(90,92,255,.16);
  color:var(--cyan);
  border-color:rgba(90,92,255,.55);
}
.action-btn--ghost:hover{
  background:rgba(90,92,255,.3);
  color:#fff;
  box-shadow:0 0 18px rgba(90,92,255,.3);
}

.site-footer{
  position:relative;
  overflow:hidden;
  background:
    linear-gradient(180deg,rgba(90,92,255,.08),transparent 20%),
    repeating-linear-gradient(115deg,rgba(0,255,136,.035) 0 1px,transparent 1px 14px),
    var(--bg-lift);
  border-top:1px solid rgba(0,255,136,.3);
  margin-top:auto;
}
.site-footer::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:280px;
  background:
    radial-gradient(ellipse at 18% 100%,rgba(255,122,0,.12),transparent 40%),
    radial-gradient(ellipse at 85% 100%,rgba(90,92,255,.18),transparent 45%);
  pointer-events:none;
}
.footer-grid{
  position:relative;
  z-index:1;
  max-width:var(--content);
  margin-inline:auto;
  padding:3.5rem 1.5rem 1.5rem;
  display:grid;
  grid-template-columns:1.6fr 1fr 1.2fr;
  gap:2.5rem;
}
.footer-eyebrow{
  margin:0 0 .5rem;
  font-size:.75rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--green);
}
.brand--footer{margin-bottom:.8rem}
.brand--footer .brand-glyph{width:44px;height:44px;flex-basis:44px}
.brand--footer .brand-name{font-size:1.45rem}
.footer-about{
  color:var(--gray);
  font-size:.9rem;
  line-height:1.9;
  max-width:44ch;
  margin:.6rem 0 0;
}
.footer-heading{
  margin:0 0 1rem;
  padding-left:.8rem;
  border-left:3px solid var(--orange);
  color:var(--cyan);
  font-size:.8rem;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
  font-family:var(--font-head);
}
.footer-links,.footer-contact-list,.footer-policy-list{
  list-style:none;
  margin:0;
  padding:0;
}
.footer-links li + li{margin-top:.35rem}
.footer-links a{
  color:var(--gray);
  text-decoration:none;
  font-size:.9rem;
  transition:color .2s,padding-left .2s;
}
.footer-links a:hover{
  color:var(--green);
  padding-left:.3rem;
}
.footer-contact-list li{
  position:relative;
  color:var(--gray);
  font-size:.86rem;
  line-height:1.75;
  margin-bottom:.4rem;
  padding-left:1.2rem;
}
.footer-contact-list li::before{
  content:"";
  position:absolute;
  left:0;
  top:.75rem;
  width:.5rem;
  height:.5rem;
  background:var(--violet);
  transform:rotate(45deg);
}
.footer-contact-item{font-family:var(--font-data);color:var(--cyan)}
.footer-policy-list{
  display:flex;
  flex-wrap:wrap;
  gap:.75rem;
  margin-top:1.2rem;
}
.footer-policy-list a{
  display:inline-block;
  padding:.45rem .7rem;
  border:1px solid var(--line);
  border-radius:999px;
  color:var(--gray);
  text-decoration:none;
  font-size:.8rem;
  transition:border-color .2s,color .2s;
}
.footer-policy-list a:hover{
  border-color:var(--orange);
  color:var(--orange);
}
.footer-meta{
  position:relative;
  z-index:1;
  max-width:var(--content);
  margin-inline:auto;
  padding:1.1rem 1.5rem;
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  gap:.5rem;
  border-top:1px solid rgba(138,155,171,.14);
  color:#5A7286;
  font-size:.78rem;
}
.footer-icp,.footer-copy{margin:0}

.content-shell{
  max-width:var(--content);
  margin-inline:auto;
  padding-inline:1.5rem;
}
.prose{
  font-size:1rem;
  color:var(--cyan);
}
.prose h1,.prose h2,.prose h3{
  font-family:var(--font-head);
  color:var(--cyan);
  line-height:1.15;
  letter-spacing:.02em;
}
.panel{
  position:relative;
  background:var(--glass);
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:1.5rem;
}
.data-mono{font-family:var(--font-data)}
.score-text{
  font-family:var(--font-data);
  font-weight:800;
  font-size:clamp(2.4rem,8vw,5rem);
  line-height:1;
  letter-spacing:-.04em;
  color:var(--cyan);
}
.score-text[data-tone="green"]{
  color:var(--green);
  text-shadow:0 0 22px rgba(0,255,136,.45);
}
.pill{
  display:inline-flex;
  align-items:center;
  gap:.35rem;
  padding:.3rem .65rem;
  border-radius:999px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.04);
  color:var(--gray);
  font-size:.78rem;
  font-weight:700;
}
.pill[data-tone="green"]{
  color:var(--green);
  border-color:rgba(0,255,136,.3);
  background:rgba(0,255,136,.08);
}
.pill[data-tone="orange"]{
  color:var(--orange);
  border-color:rgba(255,122,0,.3);
  background:rgba(255,122,0,.08);
}
.pill[data-tone="violet"]{
  color:#A8A9FF;
  border-color:rgba(90,92,255,.4);
  background:rgba(90,92,255,.12);
}
.grid{display:grid;gap:1.5rem}
.grid--2{grid-template-columns:repeat(2,1fr)}
.grid--3{grid-template-columns:repeat(3,1fr)}
.kpi-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));
  gap:1rem;
}
.image-frame{
  position:relative;
  overflow:hidden;
  min-height:220px;
  border:1px solid rgba(0,255,136,.18);
  border-radius:18px 4px 18px 4px;
  background:
    linear-gradient(135deg,rgba(90,92,255,.22),transparent 45%),
    repeating-linear-gradient(-45deg,rgba(0,255,136,.08) 0 1px,transparent 1px 12px),
    rgba(10,22,35,.5);
  display:grid;
  place-items:center;
  padding:1rem;
}
.image-frame::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(115deg,transparent 25%,rgba(255,122,0,.08) 50%,transparent 75%);
  pointer-events:none;
}
.image-frame img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
}
.image-frame--hero{min-height:460px}
.image-frame--tall{min-height:360px}
.image-frame--card{min-height:170px;border-radius:12px}
.breadcrumb{
  list-style:none;
  margin:1rem 0;
  padding:0;
  display:flex;
  flex-wrap:wrap;
  gap:.4rem;
  font-size:.8rem;
  color:var(--gray);
}
.breadcrumb li::after{content:"/";margin-left:.4rem;color:var(--gray)}
.breadcrumb li:last-child::after{content:none}
.breadcrumb a{color:var(--gray);text-decoration:none}
.breadcrumb a:hover{color:var(--green)}

html.js [data-reveal]{
  opacity:0;
  transform:translateY(16px);
  transition:opacity 650ms cubic-bezier(.22,.68,.16,1),transform 650ms cubic-bezier(.22,.68,.16,1);
}
html.js [data-reveal-visible]{
  opacity:1;
  transform:none;
}

@media (max-width:899px){
  .announce-bar{
    justify-content:flex-start;
    gap:.85rem;
  }
  .header-main{
    gap:.85rem;
    padding:.7rem 1rem;
  }
  .brand-name{font-size:1.1rem}
  .brand-glyph{width:34px;height:34px;flex-basis:34px}
  .nav-toggle{
    order:3;
    margin-left:0;
  }
  .header-actions{
    order:2;
    margin-left:auto;
  }
  .site-nav{
    order:4;
    width:100%;
  }
  .footer-grid{
    grid-template-columns:1fr 1fr;
    gap:2rem;
  }
}
@media (max-width:599px){
  .announce-bar{font-size:.7rem}
  .announce-meta{display:none}
  .header-main{gap:.6rem}
  .action-btn--ghost{display:none}
  .action-btn--primary{padding:.5rem .85rem;font-size:.78rem}
  .brand-tld{font-size:.58em;padding:.15em .35em}
  .nv-toggle-text{font-size:.75rem}
  .footer-grid{grid-template-columns:1fr;padding-top:2.5rem}
  .footer-meta{justify-content:center;text-align:center}
  .grid--2,.grid--3{grid-template-columns:1fr}
}
@media (min-width:900px){
  .header-main{flex-wrap:nowrap}
  .site-nav{
    order:1;
    display:block;
    width:auto;
    margin-left:auto;
  }
  .header-actions{
    order:2;
    margin-left:0;
  }
  .nav-toggle{display:none}
  .nav-list{
    flex-direction:row;
    flex-wrap:wrap;
    gap:.15rem;
  }
  .nav-link{
    border-left:0;
    border-bottom:3px solid transparent;
    padding:.55rem .8rem;
  }
  .nav-link:hover{
    border-left-color:transparent;
    border-bottom-color:var(--green);
    background:linear-gradient(180deg,transparent,rgba(0,255,136,.08));
  }
  .nav-link[aria-current="page"]{
    border-left-color:transparent;
    border-bottom-color:var(--green);
    background:linear-gradient(180deg,transparent,rgba(90,92,255,.2));
    box-shadow:none;
  }
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .nav-toggle-box span,
  .nav-link,
  .action-btn,
  .footer-links a,
  .footer-policy-list a{
    transition:none;
  }
  html.js [data-reveal],
  html.js [data-reveal-visible]{
    opacity:1;
    transform:none;
    transition:none;
  }
}
