/* ============ 1. Reset & 基础 ============ */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:112px}
body,h1,h2,h3,h4,p,ul,ol,li,figure,blockquote,dl,dd{margin:0}
ul,ol{padding:0;list-style:none}
img,svg{display:block;max-width:100%}
a{color:inherit}
button{font:inherit;color:inherit;background:none;border:0}
:focus-visible{outline:2px solid var(--sr-amber);outline-offset:3px;border-radius:1px}

/* ============ 2. 变量 ============ */
:root{
  --sr-night:#0D1730;
  --sr-indigo:#18264F;
  --sr-dusk:#304A7A;
  --sr-amber:#E3A857;
  --sr-amber-soft:#F4D39B;
  --sr-slate:#7E92A8;
  --sr-milk:#F7F2E6;
  --sr-paper:#FFFDF6;
  --sr-flare:#D94A2E;
  --sr-ink:#141B2D;
  --sr-line:rgba(20,27,45,.14);
  --sr-line-soft:rgba(20,27,45,.08);
  --sr-line-light:rgba(244,211,155,.28);
  --sr-font-display:"Source Han Serif SC","Noto Serif SC","Songti SC","STSong",serif;
  --sr-font-head:"Source Han Sans SC","Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;
  --sr-font-body:"Source Han Sans SC","Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;
  --sr-font-mono:"IBM Plex Mono","Roboto Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  --sr-max:1280px;
  --sr-radius:2px;
  --sr-bar-h:64px;
  --sr-shadow:0 1px 0 rgba(20,27,45,.05),0 22px 40px -32px rgba(13,23,48,.55);
  --sr-shadow-lift:0 2px 0 rgba(20,27,45,.05),0 30px 50px -30px rgba(13,23,48,.62);
  --sr-ease:cubic-bezier(.22,.61,.36,1);
}

/* ============ 3. 页面底色与中文排版 ============ */
body{
  min-height:100vh;
  font-family:var(--sr-font-body);
  font-size:1rem;
  line-height:1.88;
  color:var(--sr-ink);
  background-color:var(--sr-milk);
  background-image:
    radial-gradient(120% 78% at 100% 0%,rgba(48,74,122,.12),transparent 62%),
    radial-gradient(80% 60% at 0% 100%,rgba(227,168,87,.12),transparent 70%),
    linear-gradient(180deg,#FBF7EC 0%,var(--sr-milk) 42%,#F2EDDF 100%);
  -webkit-font-smoothing:antialiased;
}
p{font-size:1rem;line-height:1.9}
strong{font-weight:700}

/* ============ 4. 布局 ============ */
.sr-container{width:100%;max-width:var(--sr-max);margin-inline:auto;padding-inline:clamp(18px,4vw,40px)}
.sr-section{padding-block:clamp(44px,6vw,96px)}
.sr-section--tight{padding-block:clamp(26px,3.6vw,52px)}
.sr-grid{display:grid;gap:clamp(16px,2.4vw,28px)}
.sr-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.sr-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.sr-grid--split{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:start}

/* ============ 5. 排版 ============ */
.sr-eyebrow{display:inline-flex;align-items:center;gap:10px;margin-bottom:12px;font-family:var(--sr-font-mono);font-size:11.5px;letter-spacing:.26em;color:var(--sr-dusk)}
.sr-eyebrow::before{content:"";width:26px;height:1px;background:var(--sr-amber)}
.sr-display{margin-bottom:18px;font-family:var(--sr-font-display);font-weight:800;font-size:clamp(34px,6.2vw,68px);line-height:1.12;letter-spacing:.02em;color:var(--sr-ink)}
.sr-h2{margin-bottom:14px;font-family:var(--sr-font-display);font-weight:800;font-size:clamp(24px,3.4vw,38px);line-height:1.26;letter-spacing:.02em}
.sr-h3{margin-bottom:10px;font-family:var(--sr-font-head);font-weight:700;font-size:clamp(17px,1.9vw,20px);line-height:1.5}
.sr-lede{max-width:56ch;margin-bottom:18px;font-size:clamp(16px,1.7vw,18px);line-height:1.95;color:rgba(20,27,45,.78)}
.sr-num{font-family:var(--sr-font-mono);font-variant-numeric:tabular-nums;letter-spacing:.02em}
.sr-text-muted{color:var(--sr-slate)}
.sr-visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* ============ 6. 跳转链接 ============ */
.sr-skip{
  position:fixed;top:10px;left:10px;z-index:200;
  padding:10px 18px;transform:translateY(-180%);
  background:var(--sr-night);color:var(--sr-amber-soft);
  font-size:14px;font-weight:700;letter-spacing:.08em;text-decoration:none;
  border:1px solid var(--sr-amber);border-radius:var(--sr-radius);
  transition:transform .2s var(--sr-ease);
}
.sr-skip:focus{transform:translateY(0);color:#FFFDF6}

/* ============ 7. 按钮 ============ */
.sr-btn{
  display:inline-flex;align-items:center;gap:8px;
  padding:11px 20px;border:1px solid transparent;border-radius:var(--sr-radius);
  font-family:var(--sr-font-head);font-size:14.5px;font-weight:700;letter-spacing:.06em;
  text-decoration:none;cursor:pointer;
  transition:transform .16s var(--sr-ease),background .16s var(--sr-ease),border-color .16s var(--sr-ease),color .16s var(--sr-ease),box-shadow .16s var(--sr-ease);
}
.sr-btn:hover{transform:translateY(-2px)}
.sr-btn:active{transform:translateY(0)}
.sr-btn--primary{background:var(--sr-flare);color:#FFFDF6;box-shadow:0 14px 28px -18px rgba(217,74,46,.95)}
.sr-btn--primary:hover{background:#c33f25}
.sr-btn--warm{background:linear-gradient(118deg,var(--sr-amber) 0%,#F0BE74 100%);color:var(--sr-night)}
.sr-btn--ghost{background:transparent;border-color:var(--sr-ink);color:var(--sr-ink)}
.sr-btn--ghost:hover{background:rgba(20,27,45,.06);border-color:var(--sr-dusk)}
.sr-btn--quiet{background:rgba(20,27,45,.05);border-color:var(--sr-line);color:var(--sr-ink)}
.sr-btn--onDark{background:rgba(244,211,155,.08);border-color:var(--sr-line-light);color:var(--sr-amber-soft)}
.sr-btn--onDark:hover{background:rgba(244,211,155,.16);border-color:var(--sr-amber)}

/* ============ 8. 标签 / 提示 ============ */
.sr-tag{
  display:inline-flex;align-items:center;gap:6px;
  padding:3px 10px;border:1px solid rgba(126,146,168,.32);border-radius:var(--sr-radius);
  background:rgba(126,146,168,.14);
  font-family:var(--sr-font-mono);font-size:11px;letter-spacing:.12em;color:var(--sr-dusk);
  text-decoration:none;
}
.sr-tag--amber{background:rgba(244,211,155,.42);border-color:rgba(227,168,87,.6);color:#6B4715}
.sr-tag--flare{background:rgba(217,74,46,.1);border-color:rgba(217,74,46,.45);color:#A93520}
.sr-note{
  padding:12px 16px;border-left:2px solid var(--sr-slate);border-radius:0 var(--sr-radius) var(--sr-radius) 0;
  background:rgba(126,146,168,.1);
  font-size:14px;line-height:1.85;color:rgba(20,27,45,.78);
}

/* ============ 9. 卡片 ============ */
.sr-card{
  position:relative;padding:clamp(20px,2.4vw,28px);
  background:var(--sr-paper);border:1px solid var(--sr-line);border-radius:var(--sr-radius);
  box-shadow:var(--sr-shadow);
  transition:transform .16s var(--sr-ease),box-shadow .16s var(--sr-ease),border-color .16s var(--sr-ease);
}
.sr-card::after{
  content:"";position:absolute;top:14px;right:14px;width:8px;height:8px;
  border-top:1px solid var(--sr-slate);border-right:1px solid var(--sr-slate);opacity:.5;
}
.sr-card:hover{transform:translateY(-2px);box-shadow:var(--sr-shadow-lift);border-color:rgba(227,168,87,.55)}
.sr-card__title{margin-bottom:8px;font-family:var(--sr-font-head);font-size:17px;font-weight:700;line-height:1.5}
.sr-card__meta{margin-bottom:0;font-family:var(--sr-font-mono);font-size:11.5px;letter-spacing:.14em;color:var(--sr-slate)}
.sr-card__body{margin-top:8px;font-size:15px;line-height:1.85;color:rgba(20,27,45,.8)}
.sr-card--dark{
  background:linear-gradient(152deg,var(--sr-indigo) 0%,var(--sr-night) 100%);
  border-color:rgba(244,211,155,.22);color:var(--sr-milk);
}
.sr-card--dark .sr-card__title{color:#FFFDF6}
.sr-card--dark .sr-card__meta{color:rgba(244,211,155,.72)}
.sr-card--dark .sr-card__body{color:rgba(247,242,230,.78)}
.sr-card--offset{margin-top:clamp(16px,3vw,34px)}

/* ============ 10. 目录索引簇 ============ */
.sr-index{border-top:1px solid var(--sr-line)}
.sr-index__item{border-bottom:1px dashed rgba(20,27,45,.16)}
.sr-index__link{
  display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:baseline;gap:14px;
  padding:16px 6px;text-decoration:none;color:var(--sr-ink);
  transition:background .16s var(--sr-ease),padding-left .16s var(--sr-ease);
}
.sr-index__link:hover{background:rgba(244,211,155,.24);padding-left:14px}
.sr-index__no{font-family:var(--sr-font-mono);font-size:12px;letter-spacing:.1em;color:var(--sr-amber)}
.sr-index__label{font-family:var(--sr-font-head);font-size:16.5px;font-weight:700}
.sr-index__note{font-size:13px;line-height:1.7;color:var(--sr-slate);text-align:right}

/* ============ 11. 记录轴 ============ */
.sr-timeline{position:relative;display:grid;gap:18px}
.sr-timeline::before{
  content:"";position:absolute;top:6px;bottom:6px;left:9px;width:1px;
  background:linear-gradient(180deg,rgba(227,168,87,.9),rgba(126,146,168,.3));
}
.sr-timeline__item{position:relative;padding-left:34px}
.sr-timeline__node{
  position:absolute;top:9px;left:3px;width:13px;height:13px;border-radius:50%;
  background:var(--sr-milk);border:1px solid var(--sr-amber);
  box-shadow:0 0 0 4px rgba(227,168,87,.14);
  transition:background .2s var(--sr-ease),border-color .2s var(--sr-ease);
}
.sr-timeline__item[data-active="true"] .sr-timeline__node{background:var(--sr-flare);border-color:var(--sr-flare)}
.sr-timeline__stage{font-family:var(--sr-font-mono);font-size:11px;letter-spacing:.2em;color:var(--sr-dusk)}
.sr-timeline__body{margin-top:4px;font-size:15px;line-height:1.85;color:rgba(20,27,45,.8)}

/* ============ 12. 横向滚动带 ============ */
.sr-scroller{position:relative}
.sr-scroller::after{
  content:"";position:absolute;top:0;right:0;bottom:18px;width:48px;pointer-events:none;
  background:linear-gradient(90deg,rgba(247,242,230,0),rgba(247,242,230,.92));
}
.sr-scroller--ondark::after{background:linear-gradient(90deg,rgba(13,23,48,0),rgba(13,23,48,.9))}
.sr-scroller__track{
  display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;
  padding:6px 2px 18px;overscroll-behavior-x:contain;
  scrollbar-width:thin;scrollbar-color:rgba(126,146,168,.6) transparent;
}
.sr-scroller__track::-webkit-scrollbar{height:6px}
.sr-scroller__track::-webkit-scrollbar-thumb{background:rgba(126,146,168,.55);border-radius:99px}
.sr-scroller__track::-webkit-scrollbar-track{background:rgba(126,146,168,.14)}
.sr-scroller__item{flex:0 0 min(300px,78vw);scroll-snap-align:start}

/* ============ 13. 折叠组 ============ */
.sr-expand{
  border:1px solid var(--sr-line);border-left:2px solid var(--sr-amber);
  border-radius:var(--sr-radius);background:var(--sr-paper);overflow:hidden;
}
.sr-expand + .sr-expand{margin-top:12px}
.sr-expand__q{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:16px 18px;cursor:pointer;list-style:none;
  font-family:var(--sr-font-head);font-size:16px;font-weight:700;line-height:1.6;
  transition:color .16s var(--sr-ease),background .16s var(--sr-ease);
}
.sr-expand__q::-webkit-details-marker{display:none}
.sr-expand__q::after{content:"+";font-family:var(--sr-font-mono);font-size:19px;line-height:1;color:var(--sr-amber);transition:transform .22s var(--sr-ease)}
.sr-expand__q:hover{background:rgba(244,211,155,.16)}
.sr-expand[open] .sr-expand__q{color:var(--sr-indigo);background:rgba(244,211,155,.2)}
.sr-expand[open] .sr-expand__q::after{content:"–"}
.sr-expand__a{padding:0 18px 18px;font-size:15px;line-height:1.9;color:rgba(20,27,45,.82)}

/* ============ 14. 图片容器（页面阶段填 <img class="sr-figure__img">） ============ */
.sr-figure{
  position:relative;margin:0;overflow:hidden;
  border:1px solid var(--sr-line);border-radius:var(--sr-radius);
  aspect-ratio:4/3;display:grid;align-items:end;justify-items:start;
  background:linear-gradient(162deg,#1C2A52 0%,#0D1730 58%,#241F2C 100%);
  color:var(--sr-milk);
}
.sr-figure::before{
  content:"";position:absolute;inset:0;
  background:
    radial-gradient(130px 64px at 76% 76%,rgba(227,168,87,.5),transparent 70%),
    radial-gradient(56% 38% at 18% 100%,rgba(48,74,122,.92),transparent 72%),
    linear-gradient(180deg,transparent 46%,rgba(13,23,48,.86) 100%);
  opacity:.9;
}
.sr-figure__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.sr-figure__cap{
  position:relative;z-index:1;width:100%;padding:14px 16px;
  font-family:var(--sr-font-mono);font-size:11px;letter-spacing:.16em;line-height:1.7;
  background:linear-gradient(0deg,rgba(13,23,48,.76),rgba(13,23,48,0));
}
.sr-figure--wide{aspect-ratio:16/9}
.sr-figure--tall{aspect-ratio:3/4}
.sr-figure--phone{aspect-ratio:9/19;max-width:320px}

/* ============ 15. 章节高亮目录 ============ */
.sr-toc{border-left:1px solid var(--sr-line);display:grid;gap:2px}
.sr-toc__item{margin:0}
.sr-toc__link{
  display:block;padding:8px 12px;border-left:2px solid transparent;
  font-size:14px;line-height:1.7;color:var(--sr-dusk);text-decoration:none;
  transition:color .16s var(--sr-ease),border-color .16s var(--sr-ease),background .16s var(--sr-ease);
}
.sr-toc__link:hover{color:var(--sr-ink);background:rgba(244,211,155,.2)}
.sr-toc__link[data-active="true"],
.sr-toc__link[aria-current="true"]{
  color:var(--sr-ink);font-weight:700;
  border-left-color:var(--sr-flare);background:rgba(244,211,155,.24);
}

/* ============ 16. 面包屑 ============ */
.sr-crumbs{margin-bottom:18px;font-size:12.5px;color:var(--sr-slate)}
.sr-crumbs__list{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.sr-crumbs__item{display:inline-flex;align-items:center;gap:8px}
.sr-crumbs__item + .sr-crumbs__item::before{content:"/";color:rgba(126,146,168,.7)}
.sr-crumbs__link{color:var(--sr-dusk);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .16s var(--sr-ease)}
.sr-crumbs__link:hover{border-bottom-color:var(--sr-amber)}
.sr-crumbs__current{color:var(--sr-ink);font-weight:600}

/* ============ 17. 页头 ============ */
.sr-header{
  position:sticky;top:0;z-index:90;
  background:linear-gradient(116deg,var(--sr-night) 0%,var(--sr-indigo) 56%,#22335E 100%);
  color:var(--sr-milk);
  border-bottom:1px solid rgba(227,168,87,.36);
  box-shadow:0 22px 42px -34px rgba(13,23,48,.95);
}
.sr-header__bar{
  display:flex;align-items:center;gap:clamp(14px,3vw,40px);
  width:100%;max-width:var(--sr-max);margin-inline:auto;
  min-height:var(--sr-bar-h);padding:8px clamp(16px,3vw,32px);
}
.sr-header__left{display:flex;align-items:center;gap:18px;flex:0 0 auto}
.sr-brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none;color:inherit}
.sr-brand__mark{
  position:relative;display:grid;place-items:center;flex:none;
  width:34px;height:38px;border:1px solid rgba(227,168,87,.55);border-radius:var(--sr-radius);
  background:linear-gradient(162deg,rgba(227,168,87,.2),rgba(13,23,48,0) 72%);
}
.sr-brand__mark::after{
  content:"";position:absolute;right:5px;bottom:5px;width:5px;height:5px;border-radius:50%;
  background:var(--sr-amber);box-shadow:0 0 0 3px rgba(227,168,87,.16);
}
.sr-brand__stitch{
  width:1px;height:22px;opacity:.85;
  background-image:linear-gradient(180deg,var(--sr-amber) 0 4px,transparent 4px 8px);
  background-size:1px 8px;background-repeat:repeat-y;
}
.sr-brand__text{display:flex;flex-direction:column;line-height:1.24}
.sr-brand__name{font-family:var(--sr-font-display);font-size:22px;font-weight:800;letter-spacing:.13em;color:#FFFDF6}
.sr-brand__sub{font-family:var(--sr-font-mono);font-size:10px;letter-spacing:.3em;color:rgba(244,211,155,.74)}
.sr-header__legend{
  display:flex;align-items:center;gap:14px;
  padding-left:16px;border-left:1px dashed rgba(244,211,155,.28);
  font-size:11.5px;letter-spacing:.18em;color:rgba(247,242,230,.6);
}
.sr-header__legend-item{display:inline-flex;align-items:baseline;gap:5px;white-space:nowrap}
.sr-header__legend-num{font-family:var(--sr-font-mono);font-size:10px;color:var(--sr-amber)}
.sr-header__right{margin-left:auto;display:flex;flex-direction:column;align-items:flex-end;gap:6px;min-width:0}

.sr-nav-toggle{
  display:none;align-items:center;gap:9px;position:relative;z-index:96;
  padding:8px 14px;border:1px solid rgba(227,168,87,.5);border-radius:var(--sr-radius);
  background:rgba(227,168,87,.12);color:var(--sr-amber-soft);
  font-family:var(--sr-font-head);font-size:13.5px;font-weight:700;letter-spacing:.14em;cursor:pointer;
  transition:background .16s var(--sr-ease),border-color .16s var(--sr-ease),color .16s var(--sr-ease);
}
.sr-nav-toggle:hover{background:rgba(227,168,87,.22);border-color:var(--sr-amber);color:#FFFDF6}
.sr-nav-toggle__bars{display:inline-flex;flex-direction:column;gap:3px;width:16px;flex:none}
.sr-nav-toggle__bars span{display:block;height:1.5px;background:currentColor;transition:transform .22s var(--sr-ease),opacity .16s var(--sr-ease)}
.sr-nav-toggle[aria-expanded="true"] .sr-nav-toggle__bars span:nth-child(1){transform:translateY(4.5px) rotate(45deg)}
.sr-nav-toggle[aria-expanded="true"] .sr-nav-toggle__bars span:nth-child(2){opacity:0}
.sr-nav-toggle[aria-expanded="true"] .sr-nav-toggle__bars span:nth-child(3){transform:translateY(-4.5px) rotate(-45deg)}
.sr-nav-toggle__label{white-space:nowrap}

.sr-nav{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:8px clamp(10px,1.6vw,22px);width:100%}
.sr-nav__head{display:none}
.sr-nav__title{margin:0;font-family:var(--sr-font-mono);font-size:11px;letter-spacing:.3em;color:rgba(244,211,155,.8)}
.sr-nav__list{display:flex;align-items:center;gap:clamp(4px,1vw,10px);flex-wrap:wrap}
.sr-nav__item{margin:0}
.sr-nav__link{
  position:relative;display:inline-block;padding:6px 2px;
  font-family:var(--sr-font-head);font-size:14.5px;font-weight:600;letter-spacing:.06em;
  color:rgba(247,242,230,.82);text-decoration:none;
  transition:color .16s var(--sr-ease);
}
.sr-nav__link::after{
  content:"";position:absolute;left:0;right:0;bottom:1px;height:1px;background:var(--sr-amber);
  transform:scaleX(0);transform-origin:left;transition:transform .2s var(--sr-ease);
}
.sr-nav__link:hover{color:#FFFDF6}
.sr-nav__link:hover::after{transform:scaleX(1)}
.sr-nav__link[aria-current="page"]{color:var(--sr-amber-soft)}
.sr-nav__link[aria-current="page"]::after{transform:scaleX(1);height:2px;background:var(--sr-flare)}

.sr-utility{
  display:inline-flex;align-items:center;gap:7px;padding-bottom:2px;
  font-size:12px;letter-spacing:.1em;color:rgba(244,211,155,.9);text-decoration:none;
  border-bottom:1px dashed rgba(244,211,155,.45);
  transition:color .16s var(--sr-ease),border-color .16s var(--sr-ease);
}
.sr-utility::before{
  content:"";width:11px;height:8px;border:1px solid currentColor;border-radius:1px;flex:none;
}
.sr-utility:hover{color:#FFFDF6;border-bottom-color:var(--sr-amber)}

.sr-anchors{
  display:flex;align-items:center;justify-content:flex-end;gap:10px;width:100%;
  padding-top:6px;border-top:1px dashed rgba(244,211,155,.25);
}
.sr-anchors__title{margin:0;font-family:var(--sr-font-mono);font-size:10px;letter-spacing:.26em;color:rgba(126,146,168,.95)}
.sr-anchor-list{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.sr-anchor-list__item{margin:0}
.sr-anchor{
  display:inline-flex;align-items:center;gap:6px;padding:3px 10px;
  border:1px solid rgba(244,211,155,.28);border-radius:var(--sr-radius);
  background:rgba(13,23,48,.38);
  font-size:12.5px;color:rgba(247,242,230,.86);text-decoration:none;
  transition:border-color .16s var(--sr-ease),background .16s var(--sr-ease),color .16s var(--sr-ease);
}
.sr-anchor:hover{border-color:var(--sr-amber);background:rgba(227,168,87,.16);color:#FFFDF6}
.sr-anchor__no{font-family:var(--sr-font-mono);font-size:10px;color:var(--sr-amber)}
.sr-anchor__label{font-weight:600;letter-spacing:.04em}
.sr-header__progress{position:absolute;left:0;right:0;bottom:-1px;height:2px;background:rgba(247,242,230,.12);pointer-events:none}
.sr-header__progress-bar{
  display:block;width:100%;height:100%;transform:scaleX(0);transform-origin:left;
  background:linear-gradient(90deg,var(--sr-amber),var(--sr-flare));
  transition:transform .1s linear;
}

/* ============ 18. 页脚 ============ */
.sr-footer{
  position:relative;overflow:hidden;
  padding:clamp(46px,6.4vw,84px) 0 26px;
  background:linear-gradient(180deg,var(--sr-indigo) 0%,var(--sr-night) 76%);
  color:rgba(247,242,230,.78);
  border-top:1px solid rgba(227,168,87,.36);
}
.sr-footer::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(62% 52% at 10% 0%,rgba(227,168,87,.18),transparent 66%),
    radial-gradient(46% 42% at 88% 14%,rgba(48,74,122,.58),transparent 72%),
    radial-gradient(40% 30% at 50% 108%,rgba(217,74,46,.14),transparent 70%);
}
.sr-footer__inner{
  position:relative;width:100%;max-width:var(--sr-max);
  margin-inline:auto;padding-inline:clamp(18px,4vw,40px);
}
.sr-footer__top{
  display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1.6fr);
  gap:clamp(26px,5vw,64px);
  padding-bottom:clamp(26px,3.6vw,42px);
  border-bottom:1px dashed rgba(244,211,155,.24);
}
.sr-footer__brand{display:flex;flex-direction:column;align-items:flex-start}
.sr-footer__tag{margin-bottom:8px;font-family:var(--sr-font-mono);font-size:10.5px;letter-spacing:.3em;color:rgba(244,211,155,.72)}
.sr-footer__name{display:block;font-family:var(--sr-font-display);font-size:clamp(22px,2.6vw,30px);font-weight:800;letter-spacing:.14em;color:#FFFDF6}
.sr-footer__summary{max-width:34ch;margin-top:14px;font-size:15px;line-height:1.9;color:rgba(247,242,230,.72)}
.sr-footer__cta{margin-top:20px}
.sr-footer__cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,3vw,36px)}
.sr-footer__col{min-width:0}
.sr-footer__col-title{margin-bottom:12px;font-family:var(--sr-font-mono);font-size:11px;letter-spacing:.24em;color:var(--sr-amber)}
.sr-footer__list{display:grid;gap:7px}
.sr-footer__link{
  font-size:14.5px;line-height:1.8;color:rgba(247,242,230,.78);text-decoration:none;
  border-bottom:1px solid transparent;
  transition:color .16s var(--sr-ease),border-color .16s var(--sr-ease);
}
.sr-footer__link:hover{color:var(--sr-amber-soft);border-bottom-color:rgba(244,211,155,.6)}
.sr-footer__contact{padding-top:clamp(22px,3vw,32px);border-bottom:1px dashed rgba(244,211,155,.24);padding-bottom:clamp(22px,3vw,32px)}
.sr-footer__contact-title{margin-bottom:14px;font-family:var(--sr-font-mono);font-size:11px;letter-spacing:.24em;color:var(--sr-amber)}
.sr-footer__contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px clamp(18px,3vw,36px)}
.sr-footer__contact-row{display:grid;grid-template-columns:52px minmax(0,1fr);gap:12px;align-items:baseline}
.sr-footer__contact-key{font-family:var(--sr-font-mono);font-size:11px;letter-spacing:.14em;color:rgba(126,146,168,.95)}
.sr-footer__contact-val{font-size:13.5px;line-height:1.75;color:rgba(247,242,230,.88);word-break:break-word}
.sr-footer__note{max-width:70ch;margin-top:12px;font-size:12.5px;line-height:1.8;color:rgba(126,146,168,.95)}
.sr-footer__base{
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 20px;
  padding-top:20px;font-size:12.5px;color:rgba(126,146,168,.95);
}
.sr-footer__legal{font-family:var(--sr-font-mono);letter-spacing:.08em}
.sr-footer__meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.sr-footer__year{font-family:var(--sr-font-mono);color:var(--sr-amber)}

/* ============ 19. 入场显现 ============ */
:root.sr-js [data-reveal]{opacity:0;transform:translateY(16px);transition:opacity .44s var(--sr-ease),transform .44s var(--sr-ease)}
:root.sr-js [data-reveal].is-visible{opacity:1;transform:none}

/* ============ 20. 响应式 ============ */
@media (max-width:1180px){
  .sr-header__legend{display:none}
  .sr-nav__link{font-size:14px}
}
@media (max-width:1023px){
  :root{--sr-bar-h:62px}
  html{scroll-padding-top:84px}
  .sr-header__bar{gap:12px;flex-wrap:nowrap}
  .sr-header__right{flex-direction:row;align-items:center;gap:10px}
  .sr-nav-toggle{display:inline-flex}
  .sr-nav{
    position:fixed;inset:0;z-index:92;
    display:flex;flex-direction:column;flex-wrap:nowrap;align-items:stretch;justify-content:flex-start;
    gap:0;width:100%;
    padding:calc(var(--sr-bar-h) + 22px) 0 44px;
    background:linear-gradient(172deg,var(--sr-night) 0%,var(--sr-indigo) 56%,#253C6C 100%);
    overflow-y:auto;
    opacity:0;visibility:hidden;transform:translateY(-10px);pointer-events:none;
    transition:opacity .24s var(--sr-ease),transform .24s var(--sr-ease),visibility .24s var(--sr-ease);
  }
  .sr-nav[data-open]{opacity:1;visibility:visible;transform:none;pointer-events:auto}
  .sr-nav__head{display:block;padding:0 clamp(20px,6vw,36px) 12px}
  .sr-nav__list{
    flex-direction:column;align-items:stretch;flex-wrap:nowrap;gap:0;
    padding:0 clamp(20px,6vw,36px);
    border-top:1px dashed rgba(244,211,155,.22);
  }
  .sr-nav__link{display:flex;align-items:center;justify-content:space-between;padding:15px 2px;font-size:18px;border-bottom:1px dashed rgba(244,211,155,.16)}
  .sr-nav__link::after{display:none}
  .sr-nav__link[aria-current="page"]{color:var(--sr-amber-soft);padding-left:14px;box-shadow:inset 3px 0 0 var(--sr-flare)}
  .sr-utility{margin:22px clamp(20px,6vw,36px) 0;align-self:flex-start;font-size:13px}
  .sr-anchors{
    flex-direction:column;align-items:flex-start;justify-content:flex-start;width:auto;
    margin:22px clamp(20px,6vw,36px) 0;padding-top:16px;
    border-top:1px dashed rgba(244,211,155,.24);
  }
  .sr-anchor-list{flex-wrap:wrap;gap:8px}
  .sr-anchor{padding:6px 12px;font-size:13px}
  body.sr-nav-open{overflow:hidden}
  .sr-footer__top{grid-template-columns:minmax(0,1fr)}
  .sr-footer__cols{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:900px){
  .sr-grid--2,.sr-grid--3,.sr-grid--split{grid-template-columns:minmax(0,1fr)}
  .sr-card--offset{margin-top:0}
}
@media (max-width:600px){
  body{font-size:16px;line-height:1.85}
  .sr-brand__name{font-size:19px;letter-spacing:.1em}
  .sr-brand__sub{font-size:9px;letter-spacing:.24em}
  .sr-brand__mark{width:30px;height:34px}
  .sr-index__link{grid-template-columns:auto minmax(0,1fr);row-gap:4px}
  .sr-index__note{grid-column:2;text-align:left}
  .sr-footer__cols{grid-template-columns:minmax(0,1fr);gap:22px}
  .sr-footer__contact-row{grid-template-columns:46px minmax(0,1fr)}
  .sr-footer__base{flex-direction:column;align-items:flex-start}
  .sr-scroller__item{flex:0 0 min(268px,84vw)}
  .sr-figure--phone{max-width:none}
}

/* ============ 21. 降低动效 ============ */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important}
  .sr-btn:hover,.sr-card:hover{transform:none}
  :root.sr-js [data-reveal]{opacity:1;transform:none;transition:none}
  .sr-header__progress-bar{transition:none}
}
