/* ===== reset ===== */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0}
img,svg{max-width:100%;height:auto;display:block}
button{font:inherit;color:inherit}
h1,h2,h3,h4,p,figure{margin:0}
ul,ol{margin:0;padding:0;list-style:none}
a{color:inherit}
[hidden]{display:none !important}

/* ===== tokens ===== */
:root{
  --bg:#060A12;
  --panel:#0D1424;
  --lift:#162034;
  --line:#22304A;
  --cy:#26F0CE;
  --or:#FF7A2F;
  --grad:linear-gradient(120deg,#7A3BFF,#FF2E7E);
  --ink:#E8F0FF;
  --dim:#8CA0BC;
  --soft:#B9C8DF;
  --ok:#3DE08A;
  --warn:#FFC24B;
  --font-d:'HarmonyOS Sans SC','Noto Sans SC','PingFang SC','Microsoft YaHei',sans-serif;
  --font-b:'HarmonyOS Sans SC','Noto Sans SC','PingFang SC','Microsoft YaHei',sans-serif;
  --font-s:'Noto Serif SC','Source Han Serif SC','Songti SC',serif;
  --font-m:'JetBrains Mono','IBM Plex Mono','SF Mono',Consolas,monospace;
  --rail-w:13.5rem;
  --bar-h:3.6rem;
  --dock-h:3.4rem;
}

/* ===== base ===== */
body{
  font-family:var(--font-b);
  font-size:.95rem;
  line-height:1.75;
  color:var(--ink);
  background-color:var(--bg);
  background-image:
    radial-gradient(58rem 38rem at 88% -12%,rgba(255,122,47,.13),transparent 62%),
    radial-gradient(50rem 36rem at -8% 16%,rgba(38,240,206,.09),transparent 60%),
    radial-gradient(46rem 34rem at 60% 118%,rgba(122,59,255,.14),transparent 64%),
    linear-gradient(180deg,#060A12 0%,#060A12 68%,#070C16 100%);
  background-repeat:no-repeat;
  -webkit-font-smoothing:antialiased;
}
main{display:block}
#main-content{scroll-margin-top:calc(var(--bar-h) + 1.2rem)}
#main-content:focus{outline:none}
::selection{background:rgba(38,240,206,.28);color:#fff}
:focus-visible{outline:2px solid var(--cy);outline-offset:3px}
a:focus:not(:focus-visible),button:focus:not(:focus-visible){outline:none}

/* ===== text utilities ===== */
.eyebrow{display:inline-flex;align-items:center;gap:.55rem;font-family:var(--font-d);font-weight:700;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--cy)}
.eyebrow::before{content:"";width:1.4rem;height:1px;background:var(--cy);opacity:.7}
.display{font-family:var(--font-d);font-weight:800;font-stretch:92%;letter-spacing:-.02em;line-height:1.04;font-size:clamp(2.6rem,6vw,4.6rem)}
.serif{font-family:var(--font-s);font-weight:600;letter-spacing:.01em;line-height:1.35}
.num{font-family:var(--font-m);font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-.01em}
.lead{max-width:46ch;color:var(--soft);font-size:1.02rem}
.dim{color:var(--dim)}
.rule{height:1px;margin:0;border:0;background:var(--line)}
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* ===== layout ===== */
.wrap{width:min(100% - 2.4rem,80rem);margin-inline:auto}
.section{padding-block:clamp(2.2rem,5vw,4rem)}
.grid{display:grid;gap:clamp(.9rem,2vw,1.4rem)}
.grid--2{grid-template-columns:repeat(auto-fit,minmax(16rem,1fr))}
.grid--3{grid-template-columns:repeat(auto-fit,minmax(13rem,1fr))}
.split{display:grid;gap:clamp(1.4rem,4vw,3rem);grid-template-columns:minmax(0,1fr)}
@media (min-width:900px){.split{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}}

/* ===== panels & cards ===== */
.panel{position:relative;padding:clamp(1rem,2vw,1.4rem);background:linear-gradient(180deg,#0D1424,#0A101C);border:1px solid var(--line);border-radius:2px;box-shadow:0 30px 60px -42px #000}
.card{position:relative;padding:clamp(1rem,2vw,1.35rem);background:linear-gradient(180deg,#0D1424,#0A101C);border:1px solid var(--line);border-radius:2px;box-shadow:0 26px 54px -40px #000;transition:border-color .25s ease,transform .25s ease,box-shadow .25s ease}
.card:hover{border-color:#31456A;transform:translateY(-2px);box-shadow:0 34px 66px -40px #000}

/* ===== stats & meters ===== */
.stat{display:block}
.stat__value{display:block;font-family:var(--font-m);font-weight:600;font-size:clamp(1.9rem,4vw,2.6rem);line-height:1;color:var(--cy);letter-spacing:-.02em}
.stat__value--or{color:var(--or)}
.stat__label{display:block;margin-top:.4rem;font-size:.72rem;letter-spacing:.1em;color:var(--dim)}
.meter{height:6px;border:1px solid var(--line);border-radius:99px;background:#101A2C;overflow:hidden}
.meter__fill{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#26F0CE,#7A3BFF)}

/* ===== buttons ===== */
.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem 1.05rem;font-size:.86rem;font-weight:600;text-decoration:none;color:var(--ink);background:var(--panel);border:1px solid var(--line);border-radius:2px;cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease}
.btn:hover{background:var(--lift);border-color:#3A4C6E}
.btn--primary{background:var(--or);border-color:transparent;color:#190800;font-weight:700}
.btn--primary:hover{background:#FF8F4F;color:#190800}
.btn--ghost{background:transparent;border-color:rgba(38,240,206,.4);color:var(--cy)}
.btn--ghost:hover{background:rgba(38,240,206,.08);border-color:var(--cy)}
.btn--grad{background:var(--grad);border-color:transparent;color:#fff}
.btn--grad:hover{filter:brightness(1.08)}

/* ===== chips & tags ===== */
.chip,.tag{display:inline-flex;align-items:center;gap:.35rem;padding:.16rem .55rem;font-size:.72rem;letter-spacing:.04em;border:1px solid var(--line);border-radius:99px;color:var(--dim);background:rgba(13,20,36,.7)}
.tag--cy{color:var(--cy);border-color:rgba(38,240,206,.35)}
.tag--or{color:var(--or);border-color:rgba(255,122,47,.4)}
.tag--ok{color:var(--ok);border-color:rgba(61,224,138,.4)}
.tag--warn{color:var(--warn);border-color:rgba(255,194,75,.4)}

/* ===== breadcrumb ===== */
.crumb{padding-top:1.2rem}
.crumb__list{display:flex;flex-wrap:wrap;gap:.4rem;font-size:.74rem;color:var(--dim)}
.crumb__item{display:flex;align-items:center;gap:.4rem}
.crumb__item + .crumb__item::before{content:"/";color:#3A4C6E}
.crumb__link{color:var(--dim);text-decoration:none}
.crumb__link:hover{color:var(--cy)}

/* ===== image frame ===== */
.img-frame{position:relative;overflow:hidden;border:1px solid var(--line);background:radial-gradient(120% 120% at 0% 0%,#162034,#080D18 72%)}
.img-frame img{width:100%;height:100%;object-fit:cover;display:block}
.img-frame::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(6,10,18,0) 52%,rgba(4,8,16,.74))}
.img-frame--wide{aspect-ratio:16/9}
.img-frame--panorama{aspect-ratio:21/9}
.img-frame--tall{aspect-ratio:4/5}
.img-frame--square{aspect-ratio:1/1}
.img-frame__cap{position:absolute;left:.85rem;bottom:.7rem;z-index:2;font-size:.7rem;letter-spacing:.06em;color:#CBD8EC}

/* ===== filter ===== */
.filter{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}
.filter__btn{appearance:none;padding:.32rem .75rem;font-size:.78rem;color:var(--soft);background:var(--panel);border:1px solid var(--line);border-radius:99px;cursor:pointer;transition:color .2s ease,border-color .2s ease,background .2s ease}
.filter__btn:hover{color:var(--ink);border-color:#3A4C6E}
.filter__btn[aria-pressed="true"]{background:var(--grad);border-color:transparent;color:#fff;font-weight:600}

/* ===== reveal ===== */
.js [data-reveal]{opacity:0;transform:translateY(16px);transition:opacity .6s ease,transform .6s cubic-bezier(.2,.7,.2,1)}
.js [data-reveal].is-in{opacity:1;transform:none}

/* ===== header ===== */
.k1-skip{position:fixed;top:.5rem;left:.5rem;z-index:200;padding:.55rem .9rem;font-size:.82rem;font-weight:600;color:#04120F;background:var(--cy);text-decoration:none;transform:translateY(-220%);transition:transform .2s ease}
.k1-skip:focus-visible{transform:none}

.k1-progress{position:fixed;top:0;left:0;right:0;height:2px;z-index:120;background:rgba(34,48,74,.55);pointer-events:none}
.k1-progress__bar{display:block;width:0;height:100%;background:linear-gradient(90deg,#26F0CE,#FF7A2F 62%,#FF2E7E)}

.k1-header{position:relative;z-index:60}

.k1-rail{position:fixed;top:0;bottom:0;left:0;width:var(--rail-w);z-index:110;display:flex;flex-direction:column;gap:1.15rem;padding:1.05rem 1rem 1.15rem;background:linear-gradient(180deg,#0A111E,#060A12 62%);border-right:1px solid var(--line);overflow-y:auto;overscroll-behavior:contain}
.k1-rail__close{display:none;align-self:flex-start;margin-bottom:.1rem;padding:.28rem .65rem;font-size:.72rem;color:var(--dim);background:transparent;border:1px solid var(--line);cursor:pointer}
.k1-rail__close:hover{color:var(--ink);border-color:#3A4C6E}

.k1-brand{display:flex;align-items:center;gap:.6rem;padding-bottom:.95rem;text-decoration:none;border-bottom:1px solid var(--line)}
.k1-brand__mark{flex:0 0 auto;padding:.12rem .45rem .06rem;font-family:var(--font-d);font-weight:800;font-size:1.2rem;line-height:1.35;letter-spacing:-.04em;color:#04120F;background:var(--cy);clip-path:polygon(0 0,100% 0,92% 100%,0 100%)}
.k1-brand__text{display:block;min-width:0}
.k1-brand__name{display:block;font-weight:700;font-size:.9rem;line-height:1.4;color:var(--ink)}
.k1-brand__sub{display:block;font-family:var(--font-m);font-size:.58rem;letter-spacing:.16em;color:var(--dim)}

.k1-nav{display:flex;flex-direction:column;gap:.55rem;flex:1 1 auto;min-height:0}
.k1-nav__label{margin:0;font-family:var(--font-m);font-size:.6rem;letter-spacing:.22em;text-transform:uppercase;color:var(--dim)}
.k1-nav__list{display:flex;flex-direction:column}
.k1-nav__item{border-top:1px solid rgba(34,48,74,.6)}
.k1-nav__item:last-child{border-bottom:1px solid rgba(34,48,74,.6)}
.k1-nav__link{position:relative;display:flex;align-items:baseline;gap:.55rem;padding:.6rem .1rem;font-size:.86rem;font-weight:500;color:var(--soft);text-decoration:none;transition:color .2s ease,padding-left .2s ease}
.k1-nav__link::before{content:"";position:absolute;left:0;top:50%;width:2px;height:0;background:var(--cy);transform:translateY(-50%);transition:height .22s ease}
.k1-nav__link:hover,.k1-nav__link:focus-visible{color:var(--ink);padding-left:.7rem}
.k1-nav__link:hover::before,.k1-nav__link:focus-visible::before{height:56%}
.k1-nav__link[aria-current="page"]{color:var(--cy);padding-left:.7rem;font-weight:600}
.k1-nav__link[aria-current="page"]::before{height:72%;background:linear-gradient(180deg,#26F0CE,#7A3BFF)}
.k1-nav__idx{font-family:var(--font-m);font-size:.64rem;color:#5A6C88}
.k1-nav__link[aria-current="page"] .k1-nav__idx{color:var(--cy)}
.k1-nav__txt{min-width:0}

.k1-rail__foot{display:grid;gap:.5rem;margin-top:auto;padding-top:.9rem;border-top:1px solid var(--line)}
.k1-rail__link{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.42rem .6rem;font-size:.8rem;color:var(--ink);text-decoration:none;background:var(--panel);border:1px solid var(--line);transition:border-color .2s ease,background .2s ease}
.k1-rail__link:hover{background:var(--lift);border-color:#3A4C6E}
.k1-rail__num{min-width:1.5rem;padding:.04rem .3rem;font-family:var(--font-m);font-size:.7rem;line-height:1.5;text-align:center;color:#04120F;background:var(--cy);border-radius:99px}
.k1-rail__note{margin:0;font-size:.64rem;letter-spacing:.1em;color:var(--dim)}

.k1-veil{display:none;position:fixed;inset:0;z-index:125;background:rgba(3,6,12,.7);opacity:0;pointer-events:none;transition:opacity .28s ease}

.k1-bar{position:fixed;top:0;left:var(--rail-w);right:0;height:var(--bar-h);z-index:100;display:flex;align-items:center;background:rgba(6,10,18,.84);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}
.k1-bar__inner{display:flex;align-items:center;gap:1rem;width:100%;height:100%;padding-inline:clamp(1rem,2.4vw,2rem)}
.k1-bar__status{display:flex;align-items:center;gap:.45rem;margin:0;font-size:.72rem;letter-spacing:.06em;color:var(--dim);white-space:nowrap}
.k1-dot{width:.42rem;height:.42rem;border-radius:50%;background:var(--ok);box-shadow:0 0 0 3px rgba(61,224,138,.16);animation:k1-pulse 2.6s ease-in-out infinite}
@keyframes k1-pulse{0%,100%{opacity:1}50%{opacity:.45}}
.k1-bar__tools{display:flex;align-items:center;gap:.55rem;margin-left:auto}

.k1-burger{display:none;align-items:center;gap:.4rem;padding:.35rem .55rem;font-size:.76rem;color:var(--ink);background:transparent;border:1px solid var(--line);cursor:pointer}
.k1-burger__box{display:grid;gap:4px;width:14px}
.k1-burger__line{display:block;height:1.5px;background:currentColor;transition:transform .25s ease}
.k1-header[data-open] .k1-burger__line:first-child{transform:translateY(2.75px) rotate(45deg)}
.k1-header[data-open] .k1-burger__line:last-child{transform:translateY(-2.75px) rotate(-45deg)}
.k1-burger__txt{letter-spacing:.06em}
.k1-bar__brand{display:none;font-weight:700;font-size:.88rem;color:var(--ink);text-decoration:none;white-space:nowrap}

.k1-search{display:inline-flex;align-items:center;gap:.5rem;min-width:12rem;padding:.34rem .8rem;font-size:.76rem;color:var(--dim);text-decoration:none;border:1px solid var(--line);border-radius:99px;transition:color .2s ease,border-color .2s ease,background .2s ease}
.k1-search:hover,.k1-search:focus-visible{color:var(--ink);border-color:rgba(38,240,206,.5);background:rgba(38,240,206,.06)}
.k1-search__dot{position:relative;flex:0 0 auto;width:.5rem;height:.5rem;border:1px solid currentColor;border-radius:50%}
.k1-search__dot::after{content:"";position:absolute;right:-3px;bottom:-3px;width:4px;height:1px;background:currentColor;transform:rotate(45deg)}

.k1-chip{display:inline-flex;align-items:center;gap:.4rem;padding:.32rem .6rem;font-size:.76rem;color:var(--soft);text-decoration:none;background:rgba(13,20,36,.72);border:1px solid var(--line);transition:color .2s ease,border-color .2s ease}
.k1-chip:hover,.k1-chip:focus-visible{color:var(--ink);border-color:#3A4C6E}
.k1-chip__num{min-width:1.4rem;padding:0 .3rem;font-family:var(--font-m);font-weight:600;font-size:.7rem;text-align:center;color:var(--cy);background:rgba(38,240,206,.12);border-radius:2px}

.k1-cta{display:inline-flex;align-items:center;padding:.44rem .9rem;font-size:.78rem;font-weight:700;letter-spacing:.02em;color:#190800;text-decoration:none;background:var(--or);clip-path:polygon(.5rem 0,100% 0,100% calc(100% - .5rem),calc(100% - .5rem) 100%,0 100%,0 .5rem);transition:filter .2s ease}
.k1-cta:hover,.k1-cta:focus-visible{filter:brightness(1.12)}

.k1-dock{display:none;position:fixed;left:0;right:0;bottom:0;z-index:105;height:var(--dock-h);grid-template-columns:repeat(4,1fr);background:rgba(8,13,24,.95);border-top:1px solid var(--line);backdrop-filter:blur(14px)}
.k1-dock a{position:relative;display:flex;align-items:center;justify-content:center;font-size:.74rem;color:var(--dim);text-decoration:none}
.k1-dock a:hover,.k1-dock a:focus-visible{color:var(--ink)}
.k1-dock a[aria-current="page"]{color:var(--cy);font-weight:600}
.k1-dock a[aria-current="page"]::before{content:"";position:absolute;top:0;left:24%;right:24%;height:2px;background:var(--cy)}

/* ===== footer ===== */
.k1-footer{position:relative;margin-top:clamp(3rem,7vw,5rem);border-top:1px solid var(--line);background:linear-gradient(180deg,#080D18,#060A12);overflow:hidden}
.k1-footer::before{content:"";position:absolute;left:38%;right:-12%;bottom:-70%;height:20rem;background:radial-gradient(closest-side,rgba(255,122,47,.16),transparent 70%);pointer-events:none}
.k1-footer::after{content:"";position:absolute;left:-8%;top:-30%;width:18rem;height:16rem;background:radial-gradient(closest-side,rgba(38,240,206,.11),transparent 70%);pointer-events:none}
.k1-footer__inner{position:relative;z-index:1;width:min(100% - 2.4rem,80rem);margin-inline:auto;padding:clamp(2rem,4vw,3rem) 0 1.4rem}
.k1-footer__head{display:flex;align-items:flex-end;gap:1.1rem;padding-bottom:1.3rem;border-bottom:1px solid var(--line)}
.k1-footer__mark{margin:0;font-family:var(--font-d);font-weight:800;font-size:clamp(3rem,9vw,6rem);line-height:.74;letter-spacing:-.06em;color:#162034;-webkit-text-stroke:1px #26374F}
.k1-footer__id{display:grid;gap:.1rem;min-width:0}
.k1-footer__name{margin:0;font-weight:700;font-size:.98rem}
.k1-footer__url{margin:0;font-family:var(--font-m);font-size:.72rem;color:var(--cy);letter-spacing:.04em}
.k1-footer__tag{margin:0;font-size:.74rem;color:var(--dim)}
.k1-totop{display:inline-flex;align-items:center;gap:.4rem;margin-left:auto;padding:.4rem .8rem;font-size:.74rem;color:var(--dim);background:transparent;border:1px solid var(--line);cursor:pointer;transition:color .2s ease,border-color .2s ease,background .2s ease}
.k1-totop::before{content:"↑";font-family:var(--font-m);color:var(--cy)}
.k1-totop:hover,.k1-totop:focus-visible{color:var(--ink);border-color:rgba(38,240,206,.45);background:rgba(38,240,206,.06)}

.k1-footer__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(1.4rem,3vw,2.4rem);padding:clamp(1.6rem,3vw,2.3rem) 0}
.k1-fcol__title{margin:0 0 .8rem;font-family:var(--font-m);font-weight:600;font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:var(--dim)}
.k1-fcol__list{display:grid;gap:.5rem}
.k1-fcol__list a{position:relative;display:inline-block;padding-bottom:2px;font-size:.86rem;color:var(--soft);text-decoration:none;transition:color .2s ease}
.k1-fcol__list a::after{content:"";position:absolute;left:0;bottom:0;width:0;height:1px;background:var(--cy);transition:width .22s ease}
.k1-fcol__list a:hover,.k1-fcol__list a:focus-visible{color:var(--ink)}
.k1-fcol__list a:hover::after,.k1-fcol__list a:focus-visible::after{width:100%}

.k1-fcontact{padding-left:clamp(.9rem,2vw,1.4rem);border-left:1px solid var(--line)}
.k1-fcontact__line{margin:0 0 .3rem;font-size:.82rem;color:var(--soft);word-break:break-word}
.k1-fcontact__note{margin:.65rem 0 .8rem;font-size:.72rem;line-height:1.65;color:var(--dim)}
.k1-fcontact__link{display:inline-flex;align-items:center;gap:.35rem;font-size:.76rem;font-weight:600;color:var(--cy);text-decoration:none;border-bottom:1px solid rgba(38,240,206,.35);padding-bottom:2px}
.k1-fcontact__link:hover{border-bottom-color:var(--cy)}

.k1-footer__legal{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem 1.4rem;padding-top:1.1rem;border-top:1px solid var(--line);font-size:.74rem;color:var(--dim)}
.k1-footer__legal p{margin:0}
.k1-footer__fine{flex:1 1 16rem;text-align:right}

/* ===== responsive ===== */
@media (min-width:1024px){
  body{padding-left:var(--rail-w);padding-top:var(--bar-h)}
}

@media (max-width:1023px){
  body{padding-bottom:calc(var(--dock-h) + .6rem)}
  .k1-bar{position:sticky;top:0;left:auto;right:auto;width:100%}
  .k1-bar__inner{gap:.7rem;padding-inline:.9rem}
  .k1-burger{display:inline-flex}
  .k1-bar__brand{display:block}
  .k1-bar__status{display:none}
  .k1-search{display:none}
  .k1-cta{padding:.34rem .62rem;font-size:.74rem}
  .k1-chip{padding:.28rem .5rem}
  .k1-rail{width:min(84vw,19rem);padding:1rem;transform:translateX(-102%);transition:transform .3s cubic-bezier(.22,.7,.2,1)}
  .k1-header[data-open] .k1-rail{transform:none;box-shadow:0 0 70px rgba(0,0,0,.75)}
  .k1-rail__close{display:inline-flex}
  .k1-veil{display:block}
  .k1-header[data-open] .k1-veil{opacity:1;pointer-events:auto}
  .k1-dock{display:grid}
  .k1-footer__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .k1-fcontact{grid-column:1/-1;padding:1.1rem 0 0;border-left:0;border-top:1px solid var(--line)}
  .k1-footer__fine{flex:1 1 100%;text-align:left}
}

@media (max-width:560px){
  .k1-footer__head{flex-wrap:wrap;align-items:center;gap:.8rem}
  .k1-footer__mark{font-size:3.2rem}
  .k1-totop{margin-left:0}
  .k1-footer__grid{grid-template-columns:1fr;gap:1.4rem}
  .k1-footer__legal{justify-content:flex-start}
  .k1-bar__tools .k1-chip{display:none}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important}
  .js [data-reveal]{opacity:1;transform:none}
  .k1-dot{animation:none}
  .card:hover{transform:none}
}
