/* ===========================================================
   6163银河中心 · 共享层  /assets/site.css
   星图导航站：银河深蓝底 + 玻璃面板 + 琥珀金交互高亮
   =========================================================== */

:root{
  --ink:#F2F5FF;
  --muted:#9AA5C4;
  --galaxy:#0B1030;
  --deep:#050818;
  --lake:#1FBFA6;
  --nebula:#6B4BE0;
  --amber:#FFB347;
  --aurora:#7BE0D3;
  --wine:#7A2140;
  --glass:rgba(255,255,255,.08);
  --line:rgba(154,165,196,.22);
  --line-strong:rgba(154,165,196,.42);
  --radius:18px;
  --container:1180px;
  --font-mono:"JetBrains Mono","IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,"Courier New",monospace;
  --ease:cubic-bezier(.22,.61,.36,1);
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  margin:0;
  font-family:"Noto Sans SC","Source Han Sans SC","PingFang SC","Microsoft YaHei",system-ui,-apple-system,"Segoe UI",sans-serif;
  font-size:16px;
  line-height:1.75;
  color:var(--ink);
  background:var(--galaxy);
  -webkit-font-smoothing:antialiased;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background-image:
    radial-gradient(60% 45% at 12% 6%, rgba(107,75,224,.34), transparent 70%),
    radial-gradient(55% 42% at 92% 2%, rgba(31,191,166,.20), transparent 72%),
    radial-gradient(72% 50% at 62% 100%, rgba(122,33,64,.20), transparent 74%),
    radial-gradient(1.6px 1.6px at 18% 24%, rgba(242,245,255,.55), transparent 60%),
    radial-gradient(1.4px 1.4px at 64% 12%, rgba(123,224,211,.50), transparent 60%),
    radial-gradient(1.8px 1.8px at 84% 62%, rgba(255,179,71,.45), transparent 60%),
    radial-gradient(1.3px 1.3px at 34% 76%, rgba(242,245,255,.40), transparent 60%);
  background-size:cover,cover,cover,620px 620px,880px 880px,740px 740px,520px 520px;
  background-repeat:no-repeat,no-repeat,no-repeat,repeat,repeat,repeat,repeat;
  animation:yh-drift 64s linear infinite;
}
@keyframes yh-drift{
  from{background-position:0 0,0 0,0 0,0 0,0 0,0 0,0 0}
  to{background-position:0 0,0 0,0 0,-120px 60px,-90px 40px,140px -70px,-60px -120px}
}

h1,h2,h3,h4{font-weight:900;line-height:1.16;letter-spacing:-.02em;margin:0 0 .5em}
h1{font-size:clamp(2rem,4.6vw,3.4rem)}
h2{font-size:clamp(1.5rem,2.8vw,2.15rem)}
h3{font-size:clamp(1.1rem,1.6vw,1.3rem)}
p{margin:0 0 1em}
a{color:var(--aurora)}
img,svg,video{max-width:100%;display:block}
ul,ol{margin:0 0 1em;padding-left:1.3em}
::selection{background:var(--amber);color:#0A0F2A}

:focus-visible{outline:2px solid var(--aurora);outline-offset:3px;border-radius:4px}

.yh-container{width:min(100% - 2.5rem, var(--container));margin-inline:auto}
.yh-main{display:block;padding-block:clamp(20px,3.5vw,40px) 0}
.yh-mono{font-family:var(--font-mono);letter-spacing:.04em}
.yh-muted{color:var(--muted)}
.yh-hl{color:var(--amber)}
.yh-meta{font-size:.78rem;color:var(--muted);letter-spacing:.02em}
.yh-eyebrow{display:inline-block;font-family:var(--font-mono);font-size:.7rem;letter-spacing:.22em;text-transform:uppercase;color:var(--aurora);margin-bottom:10px}
.yh-lead{font-size:clamp(1rem,1.35vw,1.1rem);line-height:1.85;color:#D8DEF6;max-width:62ch}
.yh-actions,.yh-btnrow{display:flex;flex-wrap:wrap;gap:12px;align-items:center}

section[id],[data-section]{scroll-margin-top:112px}

/* ---------- skip link ---------- */
.yh-skip{
  position:absolute;left:16px;top:-70px;z-index:120;
  padding:10px 18px;border-radius:0 0 12px 12px;
  background:var(--amber);color:#0A0F2A;font-weight:800;text-decoration:none;
  transition:top .2s var(--ease);
}
.yh-skip:focus{top:0}

/* ---------- header ---------- */
.yh-header{
  position:sticky;top:0;z-index:80;
  background:linear-gradient(180deg, rgba(5,8,24,.95), rgba(11,16,48,.86));
  backdrop-filter:blur(16px) saturate(1.2);
  border-bottom:1px solid var(--line);
}
.yh-header__inner{
  position:relative;
  display:flex;align-items:center;
  gap:clamp(14px,2.2vw,28px);
  min-height:78px;padding-block:10px;
}
.yh-brand{display:flex;align-items:center;gap:12px;flex:none;text-decoration:none;color:var(--ink)}
.yh-brand__mark{
  position:relative;flex:none;width:38px;height:38px;border-radius:50%;
  border:1px solid rgba(123,224,211,.38);
  background:
    radial-gradient(circle at 50% 50%, var(--amber) 0 2.6px, transparent 3.4px),
    conic-gradient(from 0deg, rgba(123,224,211,0) 0 68%, rgba(123,224,211,.62) 84%, rgba(107,75,224,0) 100%);
  animation:yh-orbit 48s linear infinite;
}
.yh-brand__mark::after{
  content:"";position:absolute;inset:6px;border-radius:50%;
  border:1px dashed rgba(154,165,196,.42);
}
@keyframes yh-orbit{to{transform:rotate(360deg)}}
.yh-brand__text{display:block}
.yh-brand__name{display:block;font-weight:900;font-size:1.02rem;letter-spacing:-.01em;line-height:1.3}
.yh-brand__domain{display:block;font-size:.66rem;color:var(--muted);letter-spacing:.08em}

.yh-signal{
  display:flex;flex-direction:column;align-items:center;gap:8px;
  align-self:stretch;margin:0;padding:6px 0 6px clamp(8px,1.4vw,16px);
  border-left:1px solid var(--line);
}
.yh-signal__dot{
  width:7px;height:7px;border-radius:50%;background:var(--lake);
  box-shadow:0 0 0 0 rgba(31,191,166,.6);
  animation:yh-pulse 3.8s ease-in-out infinite;
}
@keyframes yh-pulse{
  0%,100%{box-shadow:0 0 0 0 rgba(31,191,166,.55);opacity:1}
  50%{box-shadow:0 0 0 7px rgba(31,191,166,0);opacity:.65}
}
.yh-signal__text{
  writing-mode:vertical-rl;text-orientation:mixed;
  font-size:.6rem;letter-spacing:.24em;color:var(--muted);white-space:nowrap;
}

.yh-nav{margin-left:auto;min-width:0}
.yh-nav__list{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  gap:2px clamp(10px,1.5vw,22px);
  list-style:none;margin:0;padding:0;
}
.yh-nav__item{display:block;list-style:none}
.yh-nav__link{
  position:relative;display:inline-flex;align-items:center;gap:7px;
  padding:6px 2px;color:var(--ink);text-decoration:none;
  font-size:.9rem;font-weight:700;letter-spacing:.01em;white-space:nowrap;
  transition:color .22s var(--ease);
}
.yh-nav__link::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:2px;
  background:var(--amber);transform:scaleX(0);transform-origin:left;
  transition:transform .26s var(--ease);
}
.yh-nav__link:hover{color:var(--aurora)}
.yh-nav__link:hover::after{transform:scaleX(1);background:var(--aurora)}
.yh-nav__link[aria-current="page"]{color:var(--amber)}
.yh-nav__link[aria-current="page"]::after{transform:scaleX(1);box-shadow:0 0 12px rgba(255,179,71,.75)}
.yh-nav__index{font-family:var(--font-mono);font-size:.62rem;font-weight:500;color:var(--muted)}

.yh-navtoggle{
  display:none;margin-left:auto;align-items:center;gap:10px;
  background:rgba(255,255,255,.06);border:1px solid var(--line);color:var(--ink);
  border-radius:999px;padding:9px 15px;font:inherit;font-size:.82rem;font-weight:700;
  cursor:pointer;
}
.yh-navtoggle:hover{border-color:var(--aurora)}
.yh-navtoggle__bars{display:grid;gap:4px;width:18px}
.yh-navtoggle__bars i{display:block;height:2px;border-radius:2px;background:var(--aurora);transition:transform .22s var(--ease),opacity .22s var(--ease)}
.yh-navtoggle[aria-expanded="true"] .yh-navtoggle__bars i:nth-child(1){transform:translateY(6px) rotate(45deg)}
.yh-navtoggle[aria-expanded="true"] .yh-navtoggle__bars i:nth-child(2){opacity:0}
.yh-navtoggle[aria-expanded="true"] .yh-navtoggle__bars i:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.yh-navtoggle__label{letter-spacing:.16em;font-size:.7rem}

.yh-progress{position:absolute;left:0;right:0;bottom:-1px;height:2px;overflow:hidden}
.yh-progress__bar{
  display:block;height:100%;width:100%;
  transform:scaleX(0);transform-origin:left center;
  background:linear-gradient(90deg,var(--lake),var(--aurora) 55%,var(--amber));
}

/* ---------- footer ---------- */
.yh-footer{
  position:relative;margin-top:clamp(48px,8vw,110px);
  background:linear-gradient(180deg, rgba(5,8,24,.72), var(--deep));
  border-top:1px solid var(--line);
  padding-block:clamp(34px,5vw,58px) 24px;
}
.yh-footer__top{
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(0,1.6fr) minmax(0,.9fr);
  gap:clamp(20px,3vw,44px);
  align-items:start;
}
.yh-footer__brand{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.yh-footer__blurb{margin:0;color:var(--muted);font-size:.86rem}
.yh-footer__links{display:flex;flex-wrap:wrap;gap:10px 22px}
.yh-footer__links a{
  color:#D8DEF6;text-decoration:none;font-size:.9rem;font-weight:700;
  border-bottom:1px solid transparent;transition:color .2s var(--ease),border-color .2s var(--ease);
}
.yh-footer__links a:hover{color:var(--amber);border-bottom-color:var(--amber)}
.yh-footer__sub{display:flex;flex-direction:column;gap:10px}
.yh-footer__sub a{color:var(--muted);text-decoration:none;font-size:.84rem}
.yh-footer__sub a:hover{color:var(--aurora)}
.yh-footer__legal{
  display:flex;flex-wrap:wrap;gap:8px 26px;
  margin-top:clamp(24px,4vw,40px);padding-top:18px;
  border-top:1px solid var(--line);
  color:var(--muted);font-size:.74rem;
}
.yh-footer__contact{
  display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;
  margin-top:14px;color:var(--muted);font-size:.76rem;
}
.yh-footer__tip{color:var(--muted)}
.yh-footer .yh-brand__name{color:var(--ink)}

.yh-copy{
  display:inline-flex;align-items:center;gap:8px;
  padding:5px 6px 5px 12px;border-radius:999px;
  background:rgba(255,255,255,.05);border:1px solid var(--line);
}
.yh-copy__value{color:#D8DEF6;font-size:.76rem;white-space:nowrap}
.yh-copy__btn{
  font-family:var(--font-mono);font-size:.7rem;letter-spacing:.06em;
  padding:3px 10px;border-radius:999px;cursor:pointer;
  background:rgba(255,179,71,.14);border:1px solid rgba(255,179,71,.5);color:var(--amber);
  transition:background .2s var(--ease),color .2s var(--ease);
}
.yh-copy__btn:hover{background:var(--amber);color:#0A0F2A}
.yh-copy__btn[data-copied]{background:rgba(31,191,166,.2);border-color:var(--lake);color:var(--lake)}

.yh-totop{
  position:fixed;right:clamp(14px,3vw,28px);bottom:clamp(14px,3vw,28px);z-index:90;
  width:46px;height:46px;border-radius:50%;display:grid;place-items:center;
  font-size:1rem;cursor:pointer;
  background:rgba(5,8,24,.86);border:1px solid rgba(255,179,71,.5);color:var(--amber);
  opacity:0;visibility:hidden;transform:translateY(10px);
  transition:opacity .28s var(--ease),transform .28s var(--ease),visibility .28s var(--ease),box-shadow .24s var(--ease),background .24s var(--ease);
}
.yh-totop[data-visible]{opacity:1;visibility:visible;transform:none}
.yh-totop:hover{background:rgba(122,33,64,.55);color:var(--ink);box-shadow:0 0 0 6px rgba(255,179,71,.12)}

/* ---------- 版式区块 ---------- */
.yh-section{padding-block:clamp(30px,5.5vw,68px)}
.yh-section__head{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px 20px;margin-bottom:clamp(18px,3vw,30px)}
.yh-section__head h2{margin:0}

.yh-stack{display:grid;gap:clamp(16px,2.4vw,26px)}
.yh-stack--offset > :nth-child(even){margin-left:clamp(8px,1.6vw,16px)}
.yh-stack--offset > :nth-child(odd){margin-right:clamp(8px,1.6vw,16px)}

.yh-panel{
  position:relative;
  padding:clamp(20px,3vw,34px);
  border:1px solid var(--line);border-radius:var(--radius);
  background:linear-gradient(160deg, rgba(17,24,66,.92), rgba(10,15,42,.92));
}
.yh-panel--glass{background:var(--glass);backdrop-filter:blur(14px);border-color:rgba(123,224,211,.24)}
.yh-panel--nebula{background:linear-gradient(160deg, rgba(107,75,224,.36), rgba(11,16,48,.92))}
.yh-panel--warn{background:linear-gradient(160deg, rgba(122,33,64,.42), rgba(11,16,48,.92));border-color:rgba(122,33,64,.6)}
.yh-panel__title{margin:0 0 .5em;font-size:clamp(1.15rem,1.8vw,1.45rem);font-weight:900}
.yh-panel__note{margin:0;color:var(--muted);font-size:.88rem}

.yh-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(18px,2.6vw,36px)}
.yh-rail{display:none}
.yh-rail__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:20px;align-items:center}
.yh-rail__link{
  position:relative;display:block;padding-block:6px;
  writing-mode:vertical-rl;text-orientation:mixed;
  color:var(--muted);text-decoration:none;
  font-family:var(--font-mono);font-size:.64rem;letter-spacing:.24em;white-space:nowrap;
  transition:color .22s var(--ease);
}
.yh-rail__link::before{
  content:"";position:absolute;left:-13px;top:50%;width:6px;height:6px;margin-top:-3px;
  border-radius:50%;background:rgba(154,165,196,.5);transition:background .22s var(--ease),box-shadow .22s var(--ease);
}
.yh-rail__link:hover{color:var(--aurora)}
.yh-rail__link:hover::before{background:var(--aurora)}
.yh-rail__link[aria-current="true"]{color:var(--amber)}
.yh-rail__link[aria-current="true"]::before{background:var(--amber);box-shadow:0 0 14px rgba(255,179,71,.8)}

.yh-grid{display:grid;gap:clamp(16px,2.4vw,26px)}
.yh-grid--2{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.yh-grid--3{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}
.yh-grid--stars{grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr);align-items:start}

.yh-card{
  position:relative;display:block;padding:clamp(18px,2.6vw,26px);
  border:1px solid var(--line);border-radius:16px;
  background:rgba(255,255,255,.045);color:inherit;text-decoration:none;
  transition:border-color .24s var(--ease),box-shadow .24s var(--ease),transform .24s var(--ease),background .24s var(--ease);
}
.yh-card:hover,.yh-card:focus-within{
  border-color:var(--aurora);background:rgba(255,255,255,.075);transform:translateY(-3px);
  box-shadow:0 0 0 1px rgba(123,224,211,.35), 0 18px 50px -22px rgba(123,224,211,.55);
}
.yh-card__index{display:block;margin-bottom:10px;font-family:var(--font-mono);font-size:.68rem;letter-spacing:.18em;color:var(--amber)}
.yh-card__title{margin:0 0 8px;font-size:1.06rem;font-weight:800}
.yh-card__text{margin:0;color:var(--muted);font-size:.9rem}
.yh-card__foot{margin-top:14px;padding-top:12px;border-top:1px dashed rgba(154,165,196,.24);font-size:.78rem;color:var(--muted)}
.yh-card--focus{
  border-color:rgba(255,179,71,.55);
  background:linear-gradient(150deg, rgba(255,179,71,.14), rgba(255,255,255,.04));
  box-shadow:0 0 0 1px rgba(255,179,71,.25), 0 28px 60px -30px rgba(255,179,71,.65);
}
.yh-card--focus .yh-card__index{color:var(--aurora)}

.yh-btn{
  display:inline-flex;align-items:center;gap:10px;
  padding:13px 22px;border-radius:999px;border:1px solid transparent;
  font:inherit;font-size:.92rem;font-weight:700;line-height:1;text-decoration:none;cursor:pointer;
  transition:transform .2s var(--ease),box-shadow .24s var(--ease),background .24s var(--ease),color .24s var(--ease),border-color .24s var(--ease);
}
.yh-btn--primary{background:var(--amber);color:#0A0F2A}
.yh-btn--primary:hover{background:#FFC46B;transform:translateY(-2px);box-shadow:0 0 0 5px rgba(255,179,71,.16), 0 18px 40px -18px rgba(255,179,71,.85)}
.yh-btn--ghost{background:rgba(123,224,211,.06);border-color:rgba(123,224,211,.5);color:var(--aurora)}
.yh-btn--ghost:hover{background:rgba(123,224,211,.15);border-color:var(--aurora);box-shadow:0 0 0 5px rgba(123,224,211,.1)}
.yh-btn--quiet{background:transparent;border-color:var(--line);color:var(--ink)}
.yh-btn--quiet:hover{border-color:var(--aurora);color:var(--aurora)}
.yh-btn--mono{font-family:var(--font-mono);font-size:.78rem;font-weight:500;letter-spacing:.06em}

.yh-breadcrumb{margin:0 0 clamp(16px,2.5vw,26px);font-size:.78rem}
.yh-breadcrumb ol{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0;color:var(--muted)}
.yh-breadcrumb li{display:flex;align-items:center;gap:8px}
.yh-breadcrumb li + li::before{content:"/";font-family:var(--font-mono);color:rgba(154,165,196,.6)}
.yh-breadcrumb a{color:var(--muted);text-decoration:none}
.yh-breadcrumb a:hover{color:var(--aurora)}
.yh-breadcrumb [aria-current="page"]{color:var(--ink)}

.yh-status{
  display:inline-flex;align-items:center;gap:8px;
  padding:6px 12px;border-radius:999px;
  border:1px solid var(--line);color:var(--muted);
  font-family:var(--font-mono);font-size:.7rem;letter-spacing:.08em;
}
.yh-status::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
.yh-status--ok{color:var(--lake);border-color:rgba(31,191,166,.45);background:rgba(31,191,166,.08)}
.yh-status--warn{color:#E58BA6;border-color:rgba(122,33,64,.75);background:rgba(122,33,64,.22)}

.yh-tag{
  display:inline-block;padding:4px 10px;border-radius:6px;
  font-family:var(--font-mono);font-size:.68rem;letter-spacing:.1em;
  background:rgba(107,75,224,.28);border:1px solid rgba(107,75,224,.5);color:#CFC3FF;
}

/* ---------- 图片容器（页面阶段放置图片） ---------- */
.yh-media{
  position:relative;display:block;overflow:hidden;
  aspect-ratio:16 / 9;border-radius:var(--radius);border:1px solid var(--line);
  background:linear-gradient(150deg,#0E1440,#050818 72%);
}
.yh-media > img,.yh-media > svg,.yh-media > video{width:100%;height:100%;object-fit:cover}
.yh-media::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(circle at 22% 18%, rgba(123,224,211,.18), transparent 46%),
    radial-gradient(circle at 78% 74%, rgba(255,179,71,.12), transparent 42%);
}
.yh-media--hero{aspect-ratio:21 / 9}
.yh-media--tall{aspect-ratio:4 / 5}
.yh-media--square{aspect-ratio:1 / 1}
.yh-media__caption{
  position:absolute;left:14px;right:14px;bottom:12px;z-index:1;
  font-family:var(--font-mono);font-size:.68rem;letter-spacing:.08em;color:rgba(242,245,255,.82);
}

/* ---------- 响应式 ---------- */
@media (max-width:1100px){
  .yh-nav__list{grid-template-columns:repeat(3,auto)}
  .yh-nav__link{font-size:.84rem}
}
@media (max-width:900px){
  .yh-container{width:min(100% - 1.75rem, var(--container))}
  .yh-signal{display:none}
  .yh-navtoggle{display:inline-flex}
  .yh-nav{
    position:absolute;top:calc(100% + 1px);left:0;right:0;margin:0;
    padding:0 18px;max-height:0;overflow:hidden;
    opacity:0;visibility:hidden;
    background:linear-gradient(180deg, rgba(5,8,24,.98), rgba(11,16,48,.98));
    border:1px solid var(--line);border-radius:0 0 var(--radius) var(--radius);
    transition:max-height .32s var(--ease),opacity .24s var(--ease),visibility .32s var(--ease),padding .32s var(--ease);
  }
  .yh-nav[data-open]{
    max-height:min(72vh,520px);overflow-y:auto;
    padding:16px 18px 22px;opacity:1;visibility:visible;
  }
  .yh-nav__list{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 14px}
  .yh-nav__link{
    display:flex;width:100%;font-size:.95rem;padding:11px 2px;
    border-bottom:1px solid rgba(154,165,196,.12);
  }
  .yh-nav__link::after{bottom:-1px}
  .yh-footer__top{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .yh-stack--offset > :nth-child(even){margin-left:0}
  .yh-stack--offset > :nth-child(odd){margin-right:0}
}
@media (max-width:820px){
  .yh-grid--stars{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:700px){
  .yh-media--hero{aspect-ratio:4 / 3}
}
@media (max-width:640px){
  .yh-footer__top{grid-template-columns:minmax(0,1fr)}
  .yh-copy{width:100%;justify-content:space-between}
  .yh-copy__value{font-size:.72rem}
}
@media (min-width:1000px){
  .yh-layout--rail{grid-template-columns:72px minmax(0,1fr);gap:clamp(22px,3vw,44px)}
  .yh-layout--rail .yh-rail{display:block;position:sticky;top:112px;align-self:start}
  .yh-layout--noted{grid-template-columns:minmax(0,1fr) clamp(180px,20vw,240px)}
  .yh-layout--noted > .yh-aside{position:sticky;top:112px;align-self:start}
}

@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{
    animation-duration:.001ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.001ms !important;
  }
}
