/* ============================================================
   皇冠主页 · 共享样式表 /assets/site.css
   墨黑 · 深墨面板 · 暖纸 · 金属金 · 电光青 · 珊瑚红
   纵向叙事长卷 + 右侧固定控制台 + 粗野主义卡片
   ============================================================ */

:root{
  --ink:#0B0C0E;
  --panel:#14171C;
  --paper:#EAE3D2;
  --paper-shade:#C6BBA3;
  --gold:#C9A227;
  --gold-light:#F2D479;
  --cyan:#38E1D0;
  --coral:#FF6B5A;
  --teal:#10312F;
  --slate:#A7ADB8;
  --chalk:#F5F7FA;

  --line:rgba(234,227,210,.14);
  --line-soft:rgba(234,227,210,.08);
  --line-strong:rgba(234,227,210,.32);

  --font-display:"Noto Sans SC","Source Han Sans SC","PingFang SC","Microsoft YaHei",system-ui,-apple-system,sans-serif;
  --font-body:system-ui,-apple-system,"Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;
  --font-mono:"JetBrains Mono","Roboto Condensed",ui-monospace,SFMono-Regular,Menlo,Consolas,"Courier New",monospace;

  --shell-max:1280px;
  --gap:24px;
  --pad:24px;
  --shadow:8px 8px 0 rgba(0,0,0,.5);
  --shadow-sm:4px 4px 0 rgba(0,0,0,.5);
  --rail-w:236px;
  --dur:.2s;
  --ease:cubic-bezier(.22,.61,.36,1);
}

/* ---------- reset ---------- */
*,*::before,*::after{box-sizing:border-box}
html{
  -webkit-text-size-adjust:100%;
  scroll-padding-top:132px;
  background-color:var(--ink);
  background-image:
    linear-gradient(rgba(234,227,210,.04) 1px,transparent 1px),
    linear-gradient(90deg,rgba(234,227,210,.04) 1px,transparent 1px);
  background-size:48px 48px,48px 48px;
  background-attachment:fixed;
}
body,h1,h2,h3,h4,p,ul,ol,li,figure,blockquote,dl,dd{margin:0}
ul,ol{padding:0;list-style:none}
img,svg,video{display:block;max-width:100%}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
a{color:inherit;text-decoration:none}
table{border-collapse:collapse}
[hidden]{display:none !important}

body{
  background:transparent;
  color:var(--chalk);
  font-family:var(--font-body);
  font-size:17px;
  line-height:1.75;
  letter-spacing:.01em;
  -webkit-font-smoothing:antialiased;
}
body{padding-right:0;transition:padding-right var(--dur) var(--ease)}

h1,h2,h3,h4{font-weight:400;line-height:1.2}
strong,b{font-weight:600}

/* ---------- 排版原子 ---------- */
.display{
  font-family:var(--font-display);
  font-weight:300;
  font-size:clamp(36px,5.6vw,72px);
  line-height:1.08;
  letter-spacing:-.02em;
}
.display--xl{font-size:clamp(44px,8.4vw,96px)}
.h2{font-family:var(--font-display);font-weight:300;font-size:clamp(26px,3.4vw,42px);line-height:1.16;letter-spacing:-.02em}
.h3{font-size:20px;font-weight:600;line-height:1.4}
.lead{font-size:19px;line-height:1.8;color:#dde3ea}
.kicker{font-family:var(--font-mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}
.label{font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--slate)}
.note{font-size:14px;line-height:1.8;color:var(--slate);border-left:2px solid var(--line-strong);padding-left:14px}
.link-more{font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;color:var(--cyan);border-bottom:1px solid rgba(56,225,208,.35);padding-bottom:2px;transition:color var(--dur) var(--ease),border-color var(--dur) var(--ease)}
.link-more:hover{color:var(--gold-light);border-bottom-color:var(--gold)}
.prose{max-width:68ch}
.prose p{margin-bottom:1.2em}
.prose p:last-child{margin-bottom:0}
.prose h2{font-family:var(--font-display);font-weight:300;font-size:clamp(24px,2.6vw,32px);margin:1.6em 0 .6em;letter-spacing:-.01em}
.prose h3{font-size:19px;font-weight:600;margin:1.4em 0 .5em}
.prose ul{margin:0 0 1.2em;display:grid;gap:8px}
.prose ul li{padding-left:20px;position:relative}
.prose ul li::before{content:"";position:absolute;left:0;top:.72em;width:8px;height:2px;background:var(--gold)}
.prose strong{color:var(--gold-light)}

/* ---------- 容器与栅格 ---------- */
.shell{width:100%;max-width:var(--shell-max);margin:0 auto;padding:0 var(--pad)}
.section{padding:64px 0}
.section--lg{padding:96px 0}
.section--paper{background:var(--paper);color:var(--panel)}
.section--paper .label,.section--paper .note{color:#4d4a41}
.section--paper .note{border-left-color:rgba(20,23,28,.28)}
.section--paper .link-more{color:#0f5f59;border-bottom-color:rgba(15,95,89,.4)}
.section--teal{background:var(--teal)}
.stack{display:grid;gap:var(--gap)}
.grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gap)}
.col-3{grid-column:span 3}
.col-4{grid-column:span 4}
.col-5{grid-column:span 5}
.col-6{grid-column:span 6}
.col-7{grid-column:span 7}
.col-8{grid-column:span 8}
.col-9{grid-column:span 9}
.col-12{grid-column:span 12}
.split{display:grid;grid-template-columns:2fr 1fr;gap:var(--gap);align-items:start}
.split__main{min-width:0}
.split__side{min-width:0;border-left:1px solid var(--line);padding-left:20px}

/* ---------- 章节编号色带 ---------- */
.band{display:flex;align-items:center;gap:16px;margin-bottom:28px;padding-top:12px;border-top:2px solid var(--gold)}
.band__no{font-family:var(--font-mono);font-size:13px;letter-spacing:.16em;color:var(--gold)}
.band__rule{
  flex:1 1 auto;height:8px;
  background:linear-gradient(90deg,var(--gold),rgba(201,162,39,.05));
  transform:scaleX(0);transform-origin:0 50%;
  transition:transform .24s var(--ease);
}
.is-inview .band__rule{transform:scaleX(1)}
.band__label{font-family:var(--font-mono);font-size:12px;letter-spacing:.1em;color:var(--slate)}

/* ---------- 显现 ---------- */
[data-reveal]{opacity:0;transition:opacity var(--dur) var(--ease)}
[data-reveal].is-inview{opacity:1}

/* ---------- 按钮 ---------- */
.btn{
  display:inline-flex;align-items:center;gap:8px;
  padding:11px 18px;
  border:2px solid var(--gold);
  background:var(--panel);
  color:var(--gold-light);
  font-size:15px;font-weight:600;letter-spacing:.02em;line-height:1.2;
  box-shadow:var(--shadow-sm);
  transition:transform var(--dur) var(--ease),border-color var(--dur) var(--ease),background-color var(--dur) var(--ease),color var(--dur) var(--ease),box-shadow var(--dur) var(--ease);
}
.btn:hover{transform:translateY(-2px);border-color:var(--gold-light);box-shadow:6px 6px 0 rgba(0,0,0,.55)}
.btn--gold{background:var(--gold);color:#191304;border-color:var(--gold)}
.btn--gold:hover{background:var(--gold-light);color:#1a1508;border-color:var(--gold-light)}
.btn--ghost{background:transparent;color:var(--chalk);border-color:var(--line-strong)}
.btn--ghost:hover{color:var(--gold-light);border-color:var(--gold)}
.btn--cyan{background:transparent;border-color:var(--cyan);color:var(--cyan)}
.btn--cyan:hover{background:rgba(56,225,208,.12);color:var(--cyan)}
.btn--sm{padding:8px 13px;font-size:13px;box-shadow:3px 3px 0 rgba(0,0,0,.5)}
.btn--block{display:flex;width:100%;justify-content:center}

/* ---------- 卡片 / 面板 / 标记 ---------- */
.card{
  background:var(--panel);
  border:2px solid var(--line);
  box-shadow:var(--shadow);
  padding:24px;
  transition:transform var(--dur) var(--ease),border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease);
}
.card:hover{transform:translateY(-2px);border-color:var(--gold);box-shadow:8px 8px 0 rgba(201,162,39,.18)}
.card__head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.card__title{font-size:19px;font-weight:600}
.card__meta{font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;color:var(--slate)}
.panel{background:var(--panel);border:1px solid var(--line);padding:20px}
.paper-block{background:var(--paper);color:var(--panel);border:1px solid var(--paper-shade);padding:24px}
.paper-block .label,.paper-block .note{color:#4d4a41}
.chip{
  display:inline-flex;align-items:center;gap:6px;
  padding:5px 10px;border:1px solid var(--line-strong);
  font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;color:var(--chalk);
}
.chip--gold{border-color:var(--gold);color:var(--gold-light)}
.chip--cyan{border-color:var(--cyan);color:var(--cyan)}
.chip--coral{border-color:var(--coral);color:var(--coral)}

/* ---------- 面包屑 ---------- */
.crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:20px 0;font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;color:var(--slate)}
.crumbs:empty{display:none}
.crumbs__item{display:inline-flex;align-items:center;gap:8px}
.crumbs__item::after{content:"/";color:rgba(167,173,184,.45)}
.crumbs__item:last-child::after{content:""}
.crumbs a:hover{color:var(--gold-light)}

/* ---------- 对照表 ---------- */
.data-table{width:100%;font-size:15px;border:1px solid var(--line)}
.data-table caption{text-align:left;font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;color:var(--slate);padding-bottom:10px}
.data-table th,.data-table td{border:1px solid var(--line);padding:11px 13px;text-align:left;vertical-align:top}
.data-table thead th{background:rgba(201,162,39,.12);color:var(--gold-light);font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;font-weight:500}
.data-table tbody tr:hover{background:rgba(234,227,210,.04)}
.data-table .diff{color:var(--coral);font-weight:600}
.data-table .ok{color:var(--cyan);font-weight:600}

/* ---------- 图片容器基础规则 ---------- */
.media{position:relative;border:2px solid var(--line);background:var(--panel);box-shadow:var(--shadow);overflow:hidden}
.media__frame{
  position:relative;
  aspect-ratio:16 / 10;
  background:
    radial-gradient(120% 90% at 20% 0%,rgba(56,225,208,.10),transparent 60%),
    radial-gradient(100% 80% at 100% 100%,rgba(201,162,39,.14),transparent 62%),
    var(--ink);
  overflow:hidden;
}
.media__frame::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background-image:
    linear-gradient(rgba(234,227,210,.06) 1px,transparent 1px),
    linear-gradient(90deg,rgba(234,227,210,.06) 1px,transparent 1px);
  background-size:32px 32px,32px 32px;
}
.media__frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.media__cap{font-family:var(--font-mono);font-size:12px;letter-spacing:.05em;color:var(--slate);padding:10px 14px;border-top:1px solid var(--line)}
.media--wide .media__frame{aspect-ratio:21 / 9}
.media--square .media__frame{aspect-ratio:1 / 1}
.media--phone .media__frame{aspect-ratio:9 / 19;max-width:280px;margin:0 auto;border-left:1px solid var(--line);border-right:1px solid var(--line)}

/* ============================================================
   页头：紧凑命令栏 + 状态条 + 标签层 + 右侧控制台
   ============================================================ */
.site-header{
  position:sticky;top:0;z-index:60;
  background:linear-gradient(180deg,#0B0C0E 0%,#0D0F13 100%);
  border-bottom:1px solid var(--line);
}
.skip-link{
  position:absolute;left:16px;top:-64px;z-index:120;
  padding:10px 16px;background:var(--gold);color:#191304;font-weight:700;font-size:14px;
  border:2px solid #000;transition:top var(--dur) var(--ease);
}
.skip-link:focus{top:12px}

.cmdbar{border-bottom:1px solid var(--line-soft)}
.cmdbar__inner{display:flex;align-items:center;gap:18px;min-height:66px;flex-wrap:nowrap}

.brand{display:flex;align-items:center;gap:12px;flex:0 0 auto}
.brand__mark{
  width:36px;height:36px;display:grid;place-items:center;
  border:2px solid var(--gold);background:var(--panel);
  box-shadow:3px 3px 0 rgba(0,0,0,.55);
}
.crown{width:20px;height:14px;background:var(--gold);clip-path:polygon(0% 100%,0% 22%,22% 56%,50% 0%,78% 56%,100% 22%,100% 100%)}
.brand__text{display:flex;flex-direction:column;line-height:1.15}
.brand__name{font-size:18px;font-weight:600;letter-spacing:.03em;color:var(--chalk)}
.brand__meta{font-size:10px;letter-spacing:.12em;color:var(--slate)}

.navbtn{
  display:none;align-items:center;gap:9px;margin-left:auto;
  padding:9px 12px;border:2px solid var(--line-strong);background:var(--panel);color:var(--chalk);font-size:13px;
  transition:border-color var(--dur) var(--ease),color var(--dur) var(--ease);
}
.navbtn:hover{border-color:var(--gold);color:var(--gold-light)}
.navbtn__bars{width:16px;height:2px;background:var(--gold);box-shadow:0 5px 0 var(--gold),0 -5px 0 var(--gold);display:inline-block}
.site-header[data-open="true"] .navbtn{border-color:var(--gold);color:var(--gold-light);background:rgba(201,162,39,.12)}

.nav-shell{display:flex;flex-direction:column;flex:1 1 auto;min-width:0;margin-left:6px}
.nav{min-width:0}
.nav__list{display:flex;align-items:center;gap:2px;flex-wrap:nowrap}
.nav__item{min-width:0}
.nav__link{
  display:inline-flex;align-items:center;gap:8px;
  padding:10px 12px;font-size:15px;color:var(--chalk);
  border-bottom:2px solid transparent;
  white-space:nowrap;
  transition:color var(--dur) var(--ease),border-color var(--dur) var(--ease),background-color var(--dur) var(--ease);
}
.nav__link:hover{color:var(--gold-light);border-bottom-color:rgba(201,162,39,.5);background:rgba(201,162,39,.06)}
.nav__link[aria-current="page"]{color:var(--gold-light);border-bottom-color:var(--gold)}
.nav__idx{font-size:11px;letter-spacing:.08em;color:var(--slate)}
.nav__link[aria-current="page"] .nav__idx{color:var(--gold)}

.subnav__toggle{display:none}

/* 分类标签层：桌面从页头下沿整幅推出，不遮挡版本状态条 */
.subnav{
  position:absolute;left:0;right:0;top:100%;
  background:var(--panel);
  border-bottom:2px solid var(--gold);
  box-shadow:0 20px 36px rgba(0,0,0,.6);
  opacity:0;visibility:hidden;transform:translateY(-6px);
  transition:opacity var(--dur) var(--ease),transform var(--dur) var(--ease),visibility var(--dur) linear;
}
.nav-shell:hover .subnav,
.nav-shell:focus-within .subnav,
.nav-shell[data-subnav-state="open"] .subnav{opacity:1;visibility:visible;transform:none}
.subnav__inner{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:12px 24px 14px}
.subnav__title{color:var(--gold)}
.tag{
  display:inline-flex;align-items:center;gap:7px;
  padding:6px 12px;border:1px solid var(--line-strong);
  background:rgba(11,12,14,.6);
  font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;color:var(--slate);
  transition:color var(--dur) var(--ease),border-color var(--dur) var(--ease),background-color var(--dur) var(--ease),transform var(--dur) var(--ease);
}
.tag:hover{color:var(--gold-light);border-color:var(--gold);background:rgba(201,162,39,.1);transform:translateY(-2px)}
.tag__no{font-size:10px;color:var(--cyan)}

.cmdbar__actions{margin-left:auto;display:flex;align-items:center;gap:10px;flex:0 0 auto}
.indexbtn{
  display:inline-flex;align-items:center;gap:6px;
  padding:8px 12px;border:1px solid var(--line-strong);background:rgba(20,23,28,.85);
  color:var(--slate);font-size:12px;letter-spacing:.06em;
  transition:color var(--dur) var(--ease),border-color var(--dur) var(--ease),transform var(--dur) var(--ease);
}
.indexbtn:hover{color:var(--gold-light);border-color:var(--gold);transform:translateY(-2px)}
.kbd{display:inline-block;padding:1px 5px;margin-left:2px;border:1px solid var(--line-strong);border-radius:2px;font-size:10px;color:var(--slate)}

/* 版本状态条 */
.statusline{position:relative;border-bottom:1px solid var(--line-soft)}
.statusline__inner{display:flex;align-items:center;gap:12px 24px;flex-wrap:wrap;min-height:40px;padding-top:6px;padding-bottom:6px}
.stat{display:inline-flex;align-items:center;gap:8px;font-size:12px}
.stat__k{letter-spacing:.1em;text-transform:uppercase;color:var(--slate);font-size:11px}
.stat__v{letter-spacing:.04em;color:var(--chalk);font-weight:600}
.dot{width:8px;height:8px;border-radius:50%;display:inline-block;flex:0 0 auto}
.dot--cyan{background:var(--cyan);box-shadow:0 0 0 3px rgba(56,225,208,.16)}
.dot--gold{background:var(--gold);box-shadow:0 0 0 3px rgba(201,162,39,.16)}
.dot--coral{background:var(--coral);box-shadow:0 0 0 3px rgba(255,107,90,.16)}
.statusline__hint{margin-left:auto;font-size:11px;letter-spacing:.08em;color:var(--slate)}
.progress{
  position:absolute;left:0;bottom:-1px;height:2px;width:100%;
  background:linear-gradient(90deg,var(--gold),var(--cyan));
  transform:scaleX(var(--p,0));transform-origin:0 50%;
}

/* 右侧控制台：平板与手机为底部吸附条 */
.rail{
  position:fixed;left:0;right:0;bottom:0;z-index:55;
  display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;
  padding:8px 16px;
  background:var(--teal);color:var(--chalk);
  border-top:2px solid var(--gold);
  box-shadow:0 -10px 30px rgba(0,0,0,.5);
}
.rail__head{display:flex;align-items:center;gap:10px}
.rail__label{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--cyan)}
.rail__toggle{
  display:inline-flex;align-items:center;justify-content:center;
  padding:6px 10px;border:1px solid rgba(234,227,210,.36);color:var(--chalk);font-size:12px;
  transition:border-color var(--dur) var(--ease),color var(--dur) var(--ease),background-color var(--dur) var(--ease);
}
.rail__toggle:hover{border-color:var(--gold);color:var(--gold-light);background:rgba(201,162,39,.12)}
.rail__toggle-sym{display:none;font-size:14px;line-height:1}
.rail[data-collapsed="true"] .rail__toggle-txt{display:none}
.rail[data-collapsed="true"] .rail__toggle-sym{display:inline}
.rail__body{display:flex;align-items:center;gap:16px;flex:1 1 auto;min-width:0}
.rail__title,.rail__desc{display:none}
.rail__links{display:flex;gap:8px;flex-wrap:wrap}
.rail__links a{
  display:inline-flex;align-items:center;gap:8px;
  padding:8px 12px;border:1px solid rgba(234,227,210,.36);background:rgba(11,12,14,.45);
  font-size:13px;transition:border-color var(--dur) var(--ease),color var(--dur) var(--ease),transform var(--dur) var(--ease);
}
.rail__links a:hover{border-color:var(--cyan);color:var(--cyan);transform:translateY(-2px)}
.rail__arrow{color:var(--cyan)}
.rail__meta{margin-left:auto;font-size:11px;letter-spacing:.06em;color:#9fb7b4}
.rail[data-collapsed="true"] .rail__body{display:none}

/* 索引浮层 */
.indexpanel{position:fixed;inset:0;z-index:90;display:flex;justify-content:center;align-items:flex-start;padding:96px 20px 24px}
.indexpanel[hidden]{display:none}
.indexpanel__scrim{position:absolute;inset:0;background:rgba(6,7,9,.84)}
.indexpanel__box{position:relative;width:100%;max-width:640px;background:var(--panel);border:2px solid var(--gold);box-shadow:12px 12px 0 rgba(0,0,0,.6)}
.indexpanel__head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;border-bottom:1px solid var(--line)}
.indexpanel__title{font-size:12px;letter-spacing:.18em;color:var(--gold)}
.indexpanel__close{padding:6px 10px;border:1px solid var(--line-strong);font-size:12px;letter-spacing:.08em;color:var(--slate);transition:color var(--dur) var(--ease),border-color var(--dur) var(--ease)}
.indexpanel__close:hover{color:var(--gold-light);border-color:var(--gold)}
.indexpanel__list{max-height:min(58vh,480px);overflow:auto}
.indexpanel__item{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 18px;border-bottom:1px solid var(--line-soft);transition:background-color var(--dur) var(--ease),color var(--dur) var(--ease)}
.indexpanel__item:hover,.indexpanel__item:focus-visible{background:rgba(201,162,39,.14);color:var(--gold-light)}
.indexpanel__no{font-size:12px;color:var(--cyan)}
.indexpanel__label{font-size:16px}
.indexpanel__hint{font-size:11px;color:var(--slate)}
.indexpanel__foot{padding:10px 18px;border-top:1px solid var(--line);font-size:11px;letter-spacing:.06em;color:var(--slate)}

/* ============================================================
   页脚
   ============================================================ */
.site-footer{margin-top:88px;background:var(--ink);border-top:2px solid var(--gold)}
.revisit{background:var(--teal);border-bottom:1px solid rgba(234,227,210,.18)}
.revisit__inner{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:14px 24px;font-size:14px}
.revisit__text{flex:1 1 320px;color:#d6e2e0;font-size:14px;line-height:1.7}

.footer__main{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:48px;padding-top:56px;padding-bottom:44px}
.footer__brand{max-width:380px}
.footer__name{margin-top:14px;font-size:20px;font-weight:600;letter-spacing:.03em}
.footer__meta{margin-top:6px;font-size:12px;letter-spacing:.06em;color:var(--gold)}
.footer__desc{margin-top:12px;font-size:14px;line-height:1.8;color:var(--slate)}
.footer__cta{display:inline-block;margin-top:16px;font-size:12px;letter-spacing:.06em;color:var(--cyan);border-bottom:1px solid rgba(56,225,208,.4);padding-bottom:2px;transition:color var(--dur) var(--ease),border-color var(--dur) var(--ease)}
.footer__cta:hover{color:var(--gold-light);border-bottom-color:var(--gold)}

.footer__index{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.footer__col-title{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);padding-bottom:10px;border-bottom:1px solid var(--line);margin-bottom:12px}
.footer__links{display:grid;gap:9px;font-size:14px}
.footer__links a{color:#ccd4dd;transition:color var(--dur) var(--ease)}
.footer__links a:hover{color:var(--gold-light)}

.footer__legal{border-top:1px solid var(--line)}
.footer__legal-inner{display:flex;flex-wrap:wrap;align-items:center;gap:10px 24px;padding-top:20px;padding-bottom:30px;font-size:12px;color:var(--slate)}
.footer__copy{letter-spacing:.04em}
.footer__legal-links{display:flex;flex-wrap:wrap;gap:16px}
.footer__legal-links a{color:var(--slate);border-bottom:1px solid transparent;transition:color var(--dur) var(--ease),border-color var(--dur) var(--ease)}
.footer__legal-links a:hover{color:var(--gold-light);border-bottom-color:var(--gold)}
.footer__contact{flex:1 1 100%;font-size:12px;letter-spacing:.03em;color:#8e959f}

.totop{
  position:fixed;left:24px;bottom:24px;z-index:58;
  padding:10px 14px;border:2px solid var(--gold);background:var(--panel);color:var(--gold-light);
  font-size:12px;letter-spacing:.06em;box-shadow:var(--shadow-sm);
  transition:transform var(--dur) var(--ease),background-color var(--dur) var(--ease),color var(--dur) var(--ease);
}
.totop:hover{background:var(--gold);color:#191304;transform:translateY(-2px)}

/* ---------- 焦点可见 ---------- */
:focus-visible{outline:2px solid var(--gold-light);outline-offset:2px}
.nav__link:focus-visible,.tag:focus-visible,.rail__links a:focus-visible{outline-offset:3px}

/* ============================================================
   断点：桌面 ≥1180 右侧栏常驻 / 平板 / 手机
   ============================================================ */
@media (min-width:1180px){
  body{padding-right:var(--rail-w)}
  html[data-rail="collapsed"] body{padding-right:56px}

  .rail{
    top:0;bottom:0;left:auto;right:0;width:var(--rail-w);
    flex-direction:column;flex-wrap:nowrap;align-items:stretch;gap:0;
    padding:0;border-top:0;border-left:2px solid var(--gold);
    box-shadow:-10px 0 30px rgba(0,0,0,.45);
    transition:width var(--dur) var(--ease);
  }
  .rail__head{justify-content:space-between;padding:14px 16px;margin-top:128px;border-bottom:1px solid rgba(234,227,210,.18)}
  .rail__label{letter-spacing:.1em;line-height:1.5}
  .rail__body{flex-direction:column;align-items:stretch;gap:0;flex:1 1 auto;padding:18px 16px 20px}
  .rail__title{display:block;font-size:17px;font-weight:600;color:var(--gold-light);letter-spacing:.01em}
  .rail__desc{display:block;margin-top:10px;font-size:14px;line-height:1.75;color:#cfd8dd}
  .rail__links{display:grid;gap:8px;margin-top:16px}
  .rail__links a{justify-content:space-between;padding:12px 13px;font-size:14px}
  .rail__meta{margin-left:0;margin-top:auto;padding-top:16px;border-top:1px solid rgba(234,227,210,.16)}
  .rail[data-collapsed="true"]{width:56px}
  .rail[data-collapsed="true"] .rail__head{margin-top:128px;padding:14px 0;justify-content:center}
  .rail[data-collapsed="true"] .rail__label{writing-mode:vertical-rl;letter-spacing:.18em}
  .totop{bottom:32px}
}

@media (max-width:1179px){
  body{padding-bottom:76px}
  .totop{bottom:88px;left:16px}
}

@media (max-width:1023px){
  :root{--pad:20px}
  .section{padding:52px 0}
  .section--lg{padding:72px 0}
  .split{grid-template-columns:1fr}
  .split__side{border-left:0;border-top:1px solid var(--line);padding-left:0;padding-top:16px}
  .col-3,.col-4,.col-5{grid-column:span 6}
  .col-7,.col-8,.col-9{grid-column:span 12}
  .footer__main{grid-template-columns:1fr;gap:36px;padding-top:44px}
  .footer__index{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width:899px){
  html{scroll-padding-top:118px}
  .navbtn{display:inline-flex}
  .cmdbar__inner{min-height:60px;gap:12px}
  .nav-shell{
    display:none;
    position:absolute;left:0;right:0;top:100%;
    margin-left:0;
    background:var(--ink);
    border-bottom:2px solid var(--gold);
    box-shadow:0 24px 40px rgba(0,0,0,.65);
    max-height:calc(100vh - 140px);overflow:auto;
  }
  .site-header[data-open="true"] .nav-shell{display:block}
  .nav__list{flex-direction:column;align-items:stretch;padding:6px 0 0}
  .nav__link{
    width:100%;justify-content:flex-start;gap:12px;
    padding:14px 20px;font-size:16px;
    border-bottom:1px solid var(--line-soft);
    border-left:3px solid transparent;
  }
  .nav__link:hover{background:rgba(201,162,39,.06)}
  .nav__link[aria-current="page"]{border-left-color:var(--gold);border-bottom-color:var(--line-soft);background:rgba(201,162,39,.08)}

  .subnav__toggle{
    display:flex;align-items:center;gap:10px;width:100%;
    padding:13px 20px;font-size:12px;letter-spacing:.08em;color:var(--gold);
    border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);
  }
  .subnav__toggle:hover{color:var(--gold-light);background:rgba(201,162,39,.08)}
  .nav-shell[data-subnav-state="open"] .subnav__toggle{color:var(--gold-light);background:rgba(201,162,39,.1)}

  .subnav{
    position:static;opacity:1;visibility:visible;transform:none;
    max-height:0;overflow:hidden;
    border-bottom:0;box-shadow:none;background:transparent;
    transition:max-height var(--dur) var(--ease);
  }
  .nav-shell[data-subnav-state="open"] .subnav{max-height:340px}
  .subnav__inner{flex-direction:column;align-items:flex-start;gap:8px;padding:14px 20px 18px}
  .subnav__title{padding-bottom:2px}
  .tag{width:100%;justify-content:flex-start;padding:10px 12px;font-size:13px}

  .statusline__inner{gap:8px 18px;padding-top:8px;padding-bottom:8px}
  .statusline__hint{display:none}
  .stat__v{font-size:12px}

  .indexpanel{padding:72px 14px 18px}
  .indexpanel__item{grid-template-columns:36px minmax(0,1fr);gap:10px;padding:12px 14px}
  .indexpanel__hint{display:none}

  .revisit__inner{padding:12px 20px}
  .footer__legal-inner{padding-bottom:24px}
}

@media (max-width:600px){
  :root{--pad:16px}
  body{font-size:16px}
  .cmdbar__actions .btn--gold{display:none}
  .indexbtn{padding:8px 10px}
  .kbd{display:none}
  .brand__meta{display:none}
  .display{font-size:clamp(32px,9vw,48px)}
  .footer__index{grid-template-columns:1fr}
  .rail{gap:6px 12px;padding:8px 12px}
  .rail__links a{padding:8px 10px;font-size:12px}
  .rail__label{font-size:10px}
  .totop{left:12px}
}

/* ---------- 动效偏好 ---------- */
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{
    transition-duration:.01ms !important;
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
    scroll-behavior:auto !important;
  }
  [data-reveal]{opacity:1 !important}
  .band__rule{transform:none !important}
  .btn:hover,.card:hover,.tag:hover,.indexbtn:hover,.totop:hover,.rail__links a:hover{transform:none}
}
