/* ============================================================
   LEYU看台 · /assets/site.css
   夜间球场看台 × 电子记分牌终端
   ============================================================ */

:root{
  /* 色彩体系 */
  --ly-deep:#070B14;
  --ly-stand:#0B1220;
  --ly-steel:#101B2E;
  --ly-line:#1C2942;
  --ly-cyan:#35E0D0;
  --ly-signal:#FF6B2C;
  --ly-paper:#E8EDF2;
  --ly-rock:#8C9AAB;
  --ly-moss:#A8B3A0;
  --ly-clay:#C97B5A;
  --ly-paperlight:#F2EEE6;
  --ly-ink:#1A1F26;
  --ly-body-soft:#C9D3DE;

  --ly-cyan-08:rgba(53,224,208,.08);
  --ly-cyan-16:rgba(53,224,208,.16);
  --ly-cyan-55:rgba(53,224,208,.55);

  /* 圆角 */
  --ly-r-xl:28px;
  --ly-r-lg:24px;
  --ly-r-md:16px;
  --ly-r-sm:10px;
  --ly-r-pill:999px;

  /* 角度与错位 */
  --ly-tilt:-3deg;
  --ly-skew:6deg;
  --ly-stack:12px;

  /* 动效 */
  --ly-ease:cubic-bezier(.2,.7,.3,1);
  --ly-dur:180ms;

  /* 版式 */
  --ly-shell:1280px;
  --ly-gutter:clamp(18px,4vw,48px);
  --ly-header-h:76px;

  --ly-font-display:"PingFang SC","Hiragino Sans GB","Noto Sans SC","Microsoft YaHei",system-ui,-apple-system,"Segoe UI",sans-serif;
  --ly-font-body:"PingFang SC","Hiragino Sans GB","Noto Sans SC","Microsoft YaHei",system-ui,-apple-system,"Segoe UI",sans-serif;
  --ly-font-mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,"Liberation Mono",monospace;
  --ly-font-serif:Georgia,"Songti SC","Noto Serif SC","Source Han Serif SC","SimSun",serif;
}

/* ============ reset ============ */
*,*::before,*::after{box-sizing:border-box;}
html{
  color-scheme:dark;
  -webkit-text-size-adjust:100%;
  scroll-behavior:smooth;
}
body{
  margin:0;
  min-height:100vh;
  background-color:var(--ly-deep);
  background-image:
    radial-gradient(circle at 84% -10%,rgba(53,224,208,.15),transparent 46%),
    radial-gradient(circle at 6% 2%,rgba(255,107,44,.09),transparent 42%),
    linear-gradient(180deg,#070B14 0%,#08101C 54%,#070B14 100%);
  background-repeat:no-repeat;
  color:var(--ly-paper);
  font-family:var(--ly-font-body);
  font-size:16px;
  line-height:1.75;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
img,svg,video{display:block;max-width:100%;height:auto;}
a{color:var(--ly-cyan);text-decoration:none;}
a:hover{color:#7FF0E6;}
p{margin:0;}
ul,ol{margin:0;padding:0;list-style:none;}
h1,h2,h3,h4{margin:0;font-weight:700;}
button{font-family:inherit;}
::selection{background:var(--ly-cyan);color:var(--ly-deep);}
:focus-visible{
  outline:2px solid var(--ly-cyan);
  outline-offset:3px;
  border-radius:4px;
}
#main-content{scroll-margin-top:calc(var(--ly-header-h) + 16px);}
html[data-nav-lock]{overflow:hidden;}

/* ============ 布局容器 ============ */
.ly-shell{
  width:100%;
  max-width:var(--ly-shell);
  margin-inline:auto;
  padding-inline:var(--ly-gutter);
}
.ly-cluster{display:flex;flex-wrap:wrap;align-items:center;gap:12px;}
.ly-stack{display:flex;flex-direction:column;gap:clamp(12px,1.6vw,18px);}
.ly-visually-hidden{
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;
}
.ly-num{
  font-family:var(--ly-font-mono);
  font-variant-numeric:tabular-nums;
  font-feature-settings:"tnum" 1;
  letter-spacing:.01em;
}
.ly-rule{
  height:1px;border:0;
  margin:clamp(24px,3vw,40px) 0;
  background:linear-gradient(90deg,var(--ly-line),rgba(28,41,66,0));
}

/* ============ 跳过导航 ============ */
.ly-skip{
  position:fixed;
  top:0;left:0;
  z-index:200;
  margin:10px;
  padding:12px 22px;
  border-radius:var(--ly-r-pill);
  background:var(--ly-cyan);
  color:#04140F;
  font-size:14px;
  font-weight:700;
  letter-spacing:.02em;
  transform:translateY(-160%);
  transition:transform var(--ly-dur) var(--ly-ease);
}
.ly-skip:focus,
.ly-skip:focus-visible{
  transform:none;
  color:#04140F;
  outline:2px solid var(--ly-paper);
  outline-offset:3px;
}

/* ============ 头部 ============ */
.ly-header{
  position:fixed;
  top:0;left:0;right:0;
  z-index:100;
  background:transparent;
  border-bottom:1px solid transparent;
  transition:
    background-color 240ms var(--ly-ease),
    border-color 240ms var(--ly-ease),
    box-shadow 240ms var(--ly-ease);
}
.ly-header[data-stuck="true"]{
  background:rgba(11,18,32,.95);
  border-bottom-color:var(--ly-line);
  box-shadow:0 22px 48px -36px rgba(0,0,0,.95);
}
@supports (backdrop-filter:blur(12px)){
  .ly-header[data-stuck="true"]{
    background:rgba(11,18,32,.86);
    backdrop-filter:blur(14px) saturate(140%);
    -webkit-backdrop-filter:blur(14px) saturate(140%);
  }
}
.ly-header__inner{
  display:flex;
  align-items:center;
  gap:clamp(12px,2.2vw,28px);
  min-height:var(--ly-header-h);
}
.ly-header__actions{
  display:flex;
  align-items:center;
  gap:10px;
  flex:0 0 auto;
}
.ly-progress{
  position:absolute;
  left:0;right:0;bottom:0;
  height:2px;
  overflow:hidden;
  pointer-events:none;
}
.ly-progress__bar{
  display:block;
  width:0;
  height:100%;
  background:linear-gradient(90deg,var(--ly-cyan) 0%,var(--ly-cyan) 60%,var(--ly-signal) 100%);
  transition:width 90ms linear;
}

/* ============ 品牌 ============ */
.ly-brand{
  display:inline-flex;
  align-items:center;
  gap:12px;
  flex:0 0 auto;
  color:var(--ly-paper);
}
.ly-brand:hover{color:var(--ly-paper);}
.ly-brand__mark{
  position:relative;
  display:inline-flex;
  width:38px;height:38px;
  border-radius:12px;
  overflow:hidden;
  background:linear-gradient(150deg,var(--ly-cyan) 0%,#12706D 56%,#0B2A38 100%);
  box-shadow:inset 0 0 0 1px rgba(232,237,242,.2),0 8px 20px -12px var(--ly-cyan);
  transform:skewX(var(--ly-tilt));
}
.ly-brand__mark::after{
  content:"";
  position:absolute;inset:0;
  background:repeating-linear-gradient(115deg,rgba(7,11,20,.55) 0 2px,transparent 2px 9px);
  opacity:.5;
}
.ly-brand__pulse{
  position:absolute;
  left:50%;top:50%;
  width:10px;height:10px;
  margin:-5px 0 0 -5px;
  border-radius:50%;
  background:var(--ly-paper);
  z-index:1;
  animation:ly-pulse 2.6s var(--ly-ease) infinite;
}
@keyframes ly-pulse{
  0%{box-shadow:0 0 0 0 rgba(232,237,242,.5);}
  70%{box-shadow:0 0 0 12px rgba(232,237,242,0);}
  100%{box-shadow:0 0 0 0 rgba(232,237,242,0);}
}
.ly-brand__text{display:flex;flex-direction:column;line-height:1.15;}
.ly-brand__name{
  font-family:var(--ly-font-display);
  font-weight:900;
  font-size:19px;
  letter-spacing:-.02em;
}
.ly-brand__tagline{
  font-size:11.5px;
  letter-spacing:.14em;
  color:var(--ly-rock);
}

/* ============ 导航 ============ */
.ly-nav{
  display:flex;
  align-items:center;
  gap:6px;
  margin-inline:auto;
}
.ly-nav__list{
  display:flex;
  align-items:center;
  gap:2px;
  counter-reset:ly-nav;
}
.ly-nav__item{
  position:relative;
  counter-increment:ly-nav;
}
.ly-nav__link{
  position:relative;
  display:inline-flex;
  align-items:center;
  padding:9px 13px;
  border-radius:var(--ly-r-pill);
  font-size:14px;
  font-weight:500;
  color:var(--ly-rock);
  white-space:nowrap;
  transition:
    color var(--ly-dur) var(--ly-ease),
    background-color var(--ly-dur) var(--ly-ease);
}
.ly-nav__link::after{
  content:"";
  position:absolute;
  left:13px;right:13px;bottom:5px;
  height:2px;
  border-radius:2px;
  background:linear-gradient(90deg,var(--ly-cyan),rgba(53,224,208,.18));
  transform:scaleX(0);
  transform-origin:left center;
  transition:transform var(--ly-dur) var(--ly-ease);
}
.ly-nav__link:hover,
.ly-nav__link:focus-visible{
  color:var(--ly-paper);
  background:rgba(232,237,242,.05);
}
.ly-nav__link:hover::after,
.ly-nav__link:focus-visible::after{transform:scaleX(1);}
.ly-nav__link[aria-current="page"]{
  color:var(--ly-cyan);
  background:var(--ly-cyan-08);
}
.ly-nav__link[aria-current="page"]::after{transform:scaleX(1);}
.ly-nav__foot{display:none;}

/* ============ 按钮 ============ */
.ly-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:44px;
  padding:11px 20px;
  border:1px solid transparent;
  border-radius:var(--ly-r-pill);
  font-family:var(--ly-font-body);
  font-size:14px;
  font-weight:600;
  letter-spacing:.01em;
  line-height:1.2;
  text-align:center;
  cursor:pointer;
  transition:
    transform var(--ly-dur) var(--ly-ease),
    background-color var(--ly-dur) var(--ly-ease),
    border-color var(--ly-dur) var(--ly-ease),
    color var(--ly-dur) var(--ly-ease),
    box-shadow var(--ly-dur) var(--ly-ease);
}
.ly-btn--primary{
  background:var(--ly-cyan);
  color:#04140F;
  box-shadow:0 10px 26px -16px var(--ly-cyan);
}
.ly-btn--primary:hover{
  background:#5CEADE;
  color:#04140F;
  transform:translateY(-2px);
}
.ly-btn--ghost{
  background:transparent;
  color:var(--ly-paper);
  border-color:var(--ly-line);
}
.ly-btn--ghost:hover{
  color:var(--ly-cyan);
  border-color:var(--ly-cyan);
  background:var(--ly-cyan-08);
  transform:translateY(-2px);
}
.ly-btn--signal{
  background:var(--ly-signal);
  color:#1A0A02;
}
.ly-btn--signal:hover{
  background:#FF8A58;
  color:#1A0A02;
  transform:translateY(-2px);
}
.ly-btn--sm{
  min-height:38px;
  padding:8px 16px;
  font-size:13px;
}

/* ============ 移动菜单按钮 ============ */
.ly-nav-toggle{
  display:none;
  align-items:center;
  gap:10px;
  margin-left:auto;
  min-height:44px;
  padding:10px 15px;
  border:1px solid var(--ly-line);
  border-radius:var(--ly-r-pill);
  background:transparent;
  color:var(--ly-paper);
  font-size:13px;
  font-weight:600;
  letter-spacing:.04em;
  cursor:pointer;
  position:relative;
  z-index:120;
  transition:
    border-color var(--ly-dur) var(--ly-ease),
    color var(--ly-dur) var(--ly-ease),
    background-color var(--ly-dur) var(--ly-ease);
}
.ly-nav-toggle:hover{
  border-color:var(--ly-cyan);
  color:var(--ly-cyan);
}
.ly-nav-toggle__bars{
  display:inline-flex;
  flex-direction:column;
  justify-content:space-between;
  width:18px;
  height:12px;
}
.ly-nav-toggle__bars span{
  display:block;
  height:2px;
  border-radius:2px;
  background:currentColor;
  transition:transform 180ms var(--ly-ease),opacity 180ms var(--ly-ease);
}
.ly-nav-toggle[aria-expanded="true"] .ly-nav-toggle__bars span:nth-child(1){transform:translateY(5px) rotate(45deg);}
.ly-nav-toggle[aria-expanded="true"] .ly-nav-toggle__bars span:nth-child(2){opacity:0;}
.ly-nav-toggle[aria-expanded="true"] .ly-nav-toggle__bars span:nth-child(3){transform:translateY(-5px) rotate(-45deg);}
.ly-nav-toggle__label{white-space:nowrap;}

/* ============ 页脚 ============ */
.ly-footer{
  position:relative;
  margin-top:clamp(64px,9vw,120px);
  border-top:1px solid var(--ly-line);
  background:linear-gradient(180deg,rgba(11,18,32,0) 0%,var(--ly-stand) 20%,var(--ly-stand) 100%);
}
.ly-footer::before{
  content:"";
  position:absolute;
  top:-1px;left:0;
  width:min(260px,42%);
  height:2px;
  background:linear-gradient(90deg,var(--ly-cyan),rgba(53,224,208,0));
}
.ly-footer__top{
  display:grid;
  grid-template-columns:minmax(240px,1.15fr) minmax(0,1.6fr) minmax(230px,.95fr);
  gap:clamp(24px,4vw,56px);
  padding-block:clamp(44px,6vw,76px);
}
.ly-footer__brandname{
  display:inline-block;
  font-family:var(--ly-font-display);
  font-weight:900;
  font-size:22px;
  letter-spacing:-.02em;
  transform:skewX(var(--ly-tilt));
  transform-origin:left bottom;
}
.ly-footer__summary{
  margin-top:14px;
  max-width:34ch;
  font-size:14px;
  line-height:1.8;
  color:var(--ly-rock);
}
.ly-footer__meta{
  margin-top:14px;
  font-family:var(--ly-font-mono);
  font-size:11.5px;
  letter-spacing:.08em;
  color:var(--ly-moss);
}
.ly-footer__nav{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(18px,2.4vw,32px);
  align-content:start;
}
.ly-footer__coltitle{
  display:flex;
  align-items:center;
  gap:8px;
  margin:0 0 14px;
  font-family:var(--ly-font-mono);
  font-size:11px;
  font-weight:600;
  letter-spacing:.2em;
  color:var(--ly-moss);
}
.ly-footer__coltitle::before{
  content:"";
  width:14px;
  height:1px;
  background:var(--ly-cyan);
}
.ly-footer__links{
  display:flex;
  flex-direction:column;
  gap:9px;
}
.ly-footer__link{
  display:inline-block;
  font-size:14.5px;
  color:var(--ly-rock);
  transition:
    color var(--ly-dur) var(--ly-ease),
    padding-left var(--ly-dur) var(--ly-ease);
}
.ly-footer__link:hover{
  color:var(--ly-cyan);
  padding-left:4px;
}
.ly-footer__contact{
  display:flex;
  flex-direction:column;
  gap:11px;
  align-content:start;
}
.ly-footer__contactrow{
  display:grid;
  grid-template-columns:56px minmax(0,1fr);
  gap:10px;
  font-size:13.5px;
  line-height:1.7;
}
.ly-footer__label{
  font-family:var(--ly-font-mono);
  font-size:10.5px;
  letter-spacing:.16em;
  color:var(--ly-rock);
  padding-top:4px;
}
.ly-footer__value{
  color:var(--ly-paper);
  overflow-wrap:anywhere;
}
.ly-footer__note{
  margin-top:4px;
  padding-left:10px;
  border-left:2px solid var(--ly-line);
  font-size:12.5px;
  line-height:1.7;
  color:var(--ly-rock);
}
.ly-footer__base{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px clamp(16px,3vw,32px);
  padding-block:22px 30px;
  border-top:1px solid var(--ly-line);
  font-size:12.5px;
  color:var(--ly-rock);
}
.ly-footer__legal,
.ly-footer__icp{margin:0;}
.ly-footer__icp{
  font-family:var(--ly-font-mono);
  letter-spacing:.02em;
}
.ly-footer__status{
  margin-left:auto;
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:6px 14px;
  border:1px solid var(--ly-line);
  border-radius:var(--ly-r-pill);
  font-family:var(--ly-font-mono);
  font-size:11.5px;
  letter-spacing:.08em;
  color:var(--ly-cyan);
  transition:
    border-color var(--ly-dur) var(--ly-ease),
    background-color var(--ly-dur) var(--ly-ease);
}
.ly-footer__status:hover{
  border-color:var(--ly-cyan);
  background:var(--ly-cyan-08);
  color:var(--ly-cyan);
}
.ly-footer__dot{
  width:6px;height:6px;
  border-radius:50%;
  background:var(--ly-signal);
  box-shadow:0 0 0 3px rgba(255,107,44,.16);
}

/* ============ 回到顶部 ============ */
.ly-to-top{
  position:fixed;
  right:clamp(14px,3vw,28px);
  bottom:clamp(14px,3vw,28px);
  z-index:90;
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:44px;
  padding:10px 17px;
  border:1px solid var(--ly-line);
  border-radius:var(--ly-r-pill);
  background:var(--ly-steel);
  color:var(--ly-paper);
  font-size:12.5px;
  font-weight:600;
  letter-spacing:.04em;
  cursor:pointer;
  opacity:0;
  visibility:hidden;
  transform:translateY(10px);
  transition:
    opacity 180ms var(--ly-ease),
    transform 180ms var(--ly-ease),
    visibility 0s linear 180ms,
    border-color 180ms var(--ly-ease),
    color 180ms var(--ly-ease);
}
.ly-to-top::before{
  content:"↑";
  font-size:13px;
  color:var(--ly-cyan);
}
.ly-to-top[data-visible="true"]{
  opacity:1;
  visibility:visible;
  transform:none;
  transition:
    opacity 180ms var(--ly-ease),
    transform 180ms var(--ly-ease),
    visibility 0s,
    border-color 180ms var(--ly-ease),
    color 180ms var(--ly-ease);
}
.ly-to-top:hover{
  border-color:var(--ly-cyan);
  color:var(--ly-cyan);
}

/* ============ 通用版式组件 ============ */
.ly-pagehead{
  padding-top:calc(var(--ly-header-h) + clamp(36px,6vw,72px));
  padding-bottom:clamp(24px,3.4vw,44px);
}
.ly-pagehead__title{
  margin:18px 0 12px;
  font-family:var(--ly-font-display);
  font-weight:900;
  font-size:clamp(32px,4.4vw,52px);
  line-height:1.08;
  letter-spacing:-.02em;
  transform:skewX(var(--ly-tilt));
  transform-origin:left bottom;
}
.ly-pagehead__lead{
  max-width:46ch;
  font-size:16px;
  line-height:1.8;
  color:var(--ly-rock);
}
.ly-display{
  margin:0;
  font-family:var(--ly-font-display);
  font-weight:900;
  font-size:clamp(40px,7vw,56px);
  line-height:1.06;
  letter-spacing:-.025em;
  transform:skewX(var(--ly-tilt));
  transform-origin:left bottom;
}
.ly-section{padding-block:clamp(48px,7vw,96px);}
.ly-section__head{
  display:flex;
  flex-wrap:wrap;
  align-items:flex-end;
  gap:10px clamp(16px,3vw,40px);
  margin-bottom:clamp(24px,3.4vw,40px);
}
.ly-section__title{
  margin:0;
  font-family:var(--ly-font-display);
  font-weight:900;
  font-size:clamp(28px,3.6vw,40px);
  line-height:1.12;
  letter-spacing:-.02em;
  transform:skewX(var(--ly-tilt));
  transform-origin:left bottom;
}
.ly-section__lead{
  max-width:40ch;
  font-size:15px;
  line-height:1.8;
  color:var(--ly-rock);
}
.ly-kicker{
  display:inline-flex;
  align-items:center;
  gap:9px;
  font-family:var(--ly-font-mono);
  font-size:11px;
  font-weight:600;
  letter-spacing:.2em;
  color:var(--ly-moss);
}
.ly-kicker::before{
  content:"";
  width:22px;
  height:2px;
  border-radius:2px;
  background:linear-gradient(90deg,var(--ly-cyan),var(--ly-signal));
  transform:skewX(-30deg);
}

/* 面包屑 */
.ly-crumb{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px;
  font-family:var(--ly-font-mono);
  font-size:12.5px;
  letter-spacing:.02em;
  color:var(--ly-rock);
}
.ly-crumb__list{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px;
}
.ly-crumb__item{
  display:inline-flex;
  align-items:center;
  gap:6px;
}
.ly-crumb__item + .ly-crumb__item::before{
  content:"/";
  color:var(--ly-line);
}
.ly-crumb__link{color:var(--ly-rock);}
.ly-crumb__link:hover{color:var(--ly-cyan);}
.ly-crumb__current{color:var(--ly-paper);}

/* 网格 */
.ly-grid{
  display:grid;
  gap:clamp(16px,2.4vw,28px);
}
.ly-grid--split{
  grid-template-columns:minmax(0,34fr) minmax(0,66fr);
  align-items:start;
}
.ly-grid--cards{
  grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));
}

/* 卡片 */
.ly-card{
  position:relative;
  padding:clamp(18px,2.2vw,26px);
  border:1px solid var(--ly-line);
  border-radius:var(--ly-r-lg);
  background:linear-gradient(165deg,var(--ly-steel) 0%,#0C1626 100%);
  transition:
    transform var(--ly-dur) var(--ly-ease),
    border-color var(--ly-dur) var(--ly-ease),
    box-shadow var(--ly-dur) var(--ly-ease);
}
.ly-card:hover,
.ly-card:focus-within{
  transform:translateY(-4px);
  border-color:var(--ly-cyan-55);
  box-shadow:0 24px 44px -32px rgba(53,224,208,.5);
}
.ly-card--angle{
  border-bottom-right-radius:6px;
  clip-path:polygon(0 0,100% 0,100% calc(100% - 18px),calc(100% - 18px) 100%,0 100%);
}
.ly-card__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:10px;
}
.ly-card__title{
  margin:0;
  font-size:18px;
  font-weight:700;
  letter-spacing:-.01em;
  line-height:1.35;
}
.ly-card__meta{
  font-family:var(--ly-font-mono);
  font-size:11.5px;
  letter-spacing:.08em;
  color:var(--ly-rock);
  white-space:nowrap;
}
.ly-card__body{
  font-size:14.5px;
  line-height:1.8;
  color:var(--ly-rock);
}

/* 胶囊与标签 */
.ly-chip{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:5px 12px;
  border:1px solid var(--ly-line);
  border-radius:var(--ly-r-pill);
  background:rgba(232,237,242,.04);
  color:var(--ly-rock);
  font-family:var(--ly-font-mono);
  font-size:11.5px;
  letter-spacing:.08em;
  line-height:1.5;
}
.ly-chip--cyan{background:var(--ly-cyan);border-color:var(--ly-cyan);color:#052B29;font-weight:600;}
.ly-chip--signal{background:var(--ly-signal);border-color:var(--ly-signal);color:#2A0C01;font-weight:600;}
.ly-chip--moss{background:var(--ly-moss);border-color:var(--ly-moss);color:#141A12;font-weight:600;}
.ly-chip--clay{background:var(--ly-clay);border-color:var(--ly-clay);color:#2A1008;font-weight:600;}
.ly-chip--line{background:var(--ly-cyan-08);border-color:rgba(53,224,208,.45);color:var(--ly-cyan);}
.ly-tag{
  display:inline-flex;
  align-items:center;
  gap:7px;
  font-family:var(--ly-font-mono);
  font-size:11px;
  letter-spacing:.14em;
  color:var(--ly-clay);
}
.ly-tag::before{
  content:"";
  width:6px;height:6px;
  border-radius:1px;
  background:currentColor;
  transform:rotate(45deg);
}

/* 图片容器基础规则（页面阶段放置图片） */
.ly-figure{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin:0;
}
.ly-figure__media{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  aspect-ratio:16 / 9;
  border:1px solid var(--ly-line);
  border-radius:var(--ly-r-lg);
  background:
    radial-gradient(circle at 72% 16%,rgba(53,224,208,.22),transparent 55%),
    radial-gradient(circle at 16% 84%,rgba(255,107,44,.16),transparent 52%),
    linear-gradient(155deg,#0E1A2C 0%,#070B14 100%);
}
.ly-figure__media::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  opacity:.32;
  background-image:repeating-linear-gradient(115deg,rgba(232,237,242,.08) 0 1px,transparent 1px 14px);
}
.ly-figure__img{
  position:relative;
  z-index:1;
  width:100%;
  height:100%;
  object-fit:cover;
  filter:saturate(.82) contrast(1.08);
}
.ly-figure__caption{
  display:flex;
  align-items:baseline;
  gap:8px;
  font-family:var(--ly-font-mono);
  font-size:11.5px;
  letter-spacing:.06em;
  color:var(--ly-rock);
}
.ly-figure__caption::before{
  content:"";
  width:16px;
  height:1px;
  background:var(--ly-cyan);
  transform:translateY(-3px);
}
.ly-figure--wide .ly-figure__media{aspect-ratio:21 / 9;}
.ly-figure--tall .ly-figure__media{aspect-ratio:4 / 5;}
.ly-figure--square .ly-figure__media{aspect-ratio:1 / 1;}

/* 长文阅读 */
.ly-prose{
  max-width:38em;
  font-size:16.5px;
  line-height:1.82;
  color:var(--ly-body-soft);
}
.ly-prose > * + *{margin-top:1.1em;}
.ly-prose p{margin:0;}
.ly-prose h2,
.ly-prose h3{
  margin:0;
  font-family:var(--ly-font-display);
  font-weight:800;
  letter-spacing:-.01em;
  color:var(--ly-paper);
}
.ly-prose h2{font-size:clamp(22px,2.4vw,28px);line-height:1.3;}
.ly-prose h3{font-size:clamp(18px,2vw,21px);line-height:1.4;}
.ly-prose a{text-decoration:underline;text-underline-offset:3px;}
.ly-editorial{
  max-width:34em;
  font-family:var(--ly-font-serif);
}
.ly-editorial h2{
  margin:0 0 .6em;
  font-size:clamp(24px,2.6vw,30px);
  font-weight:700;
  line-height:1.32;
  letter-spacing:.01em;
}
.ly-editorial p{
  margin:0 0 1.15em;
  font-size:16.5px;
  line-height:1.88;
  color:var(--ly-body-soft);
}

/* ============ 响应式 ============ */
@media (max-width:1180px){
  .ly-header__actions .ly-btn--ghost{display:none;}
}

@media (max-width:1080px){
  .ly-nav-toggle{display:inline-flex;}
  .ly-header__actions{display:none;}

  .ly-nav{
    position:fixed;
    inset:0;
    z-index:110;
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:0;
    margin:0;
    padding:calc(var(--ly-header-h) + 28px) var(--ly-gutter) 40px;
    overflow-y:auto;
    background:
      radial-gradient(circle at 88% 4%,rgba(53,224,208,.14),transparent 48%),
      linear-gradient(180deg,var(--ly-stand) 0%,var(--ly-deep) 100%);
    opacity:0;
    visibility:hidden;
    transform:translateY(-14px);
    transition:
      opacity 220ms var(--ly-ease),
      transform 220ms var(--ly-ease),
      visibility 0s linear 220ms;
  }
  .ly-nav[data-open="true"]{
    opacity:1;
    visibility:visible;
    transform:none;
    transition:
      opacity 220ms var(--ly-ease),
      transform 220ms var(--ly-ease),
      visibility 0s;
  }
  .ly-nav__list{
    flex-direction:column;
    align-items:stretch;
    gap:0;
  }
  .ly-nav__item{
    border-bottom:1px solid var(--ly-line);
  }
  .ly-nav__item:last-child{border-bottom:0;}
  .ly-nav__link{
    display:flex;
    align-items:center;
    gap:14px;
    padding:16px 4px;
    border-radius:0;
    font-size:19px;
    font-weight:600;
    color:var(--ly-paper);
    white-space:normal;
  }
  .ly-nav__link::before{
    content:counter(ly-nav,decimal-leading-zero);
    font-family:var(--ly-font-mono);
    font-size:11.5px;
    font-weight:500;
    letter-spacing:.1em;
    color:var(--ly-rock);
  }
  .ly-nav__link::after{display:none;}
  .ly-nav__link:hover,
  .ly-nav__link:focus-visible{
    background:transparent;
    color:var(--ly-cyan);
    padding-left:10px;
  }
  .ly-nav__link[aria-current="page"]{
    background:transparent;
    color:var(--ly-cyan);
  }
  .ly-nav__link[aria-current="page"]::before{color:var(--ly-cyan);}
  .ly-nav__foot{
    display:flex;
    flex-direction:column;
    gap:10px;
    margin-top:30px;
  }
  .ly-nav__foot .ly-btn{width:100%;}
}

@media (max-width:1024px){
  .ly-footer__top{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  }
  .ly-footer__brand{grid-column:1 / -1;}
}

@media (max-width:900px){
  .ly-grid--split{grid-template-columns:minmax(0,1fr);}
}

@media (max-width:680px){
  .ly-footer__top{grid-template-columns:minmax(0,1fr);}
  .ly-footer__nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;}
  .ly-footer__base{font-size:12px;}
  .ly-footer__status{margin-left:0;}
}

@media (max-width:640px){
  :root{--ly-header-h:64px;}
  .ly-brand__mark{width:34px;height:34px;border-radius:10px;}
  .ly-brand__name{font-size:17px;}
  .ly-brand__tagline{display:none;}
  .ly-nav-toggle__label{display:none;}
  .ly-nav-toggle{padding:10px 13px;}
  .ly-pagehead__title{font-size:clamp(28px,8vw,36px);}
  .ly-display{font-size:clamp(32px,9vw,40px);}
  .ly-to-top{padding:0;width:44px;height:44px;justify-content:center;border-radius:50%;}
  .ly-to-top::before{font-size:15px;}
  .ly-to-top{font-size:0;gap:0;}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  *,*::before,*::after{
    animation-duration:.001ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.001ms !important;
  }
  .ly-brand__pulse{animation:none;}
  .ly-card:hover,
  .ly-card:focus-within,
  .ly-btn:hover{transform:none;}
  .ly-progress__bar{transition:none;}
}
