
:root{--bg:#ffffff;--ink:#111;--mut:#9a968f;--line:#111;
  --acc:#D4A59A;--paper:#f7f4ee;--mono:'Space Mono',ui-monospace,monospace;
  --sans:'Inter',system-ui,-apple-system,sans-serif}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--ink);font-family:var(--sans);
  -webkit-font-smoothing:antialiased;line-height:1.6;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}

/* 档案编号牌（左上固定） */
.plate{position:fixed;top:24px;left:24px;z-index:50;
  border:1px solid var(--line);background:var(--bg);padding:8px 14px;
  font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;
  box-shadow:4px 4px 0 var(--line)}
.plate b{color:var(--acc)}

/* 右侧索引标签条 */
.indextabs{position:fixed;top:50%;right:0;transform:translateY(-50%);z-index:50;
  display:flex;flex-direction:column;gap:4px}
.itab{position:relative;writing-mode:vertical-rl;padding:14px 8px;border:1px solid var(--line);
  border-right:none;background:var(--bg);font-family:var(--mono);font-size:11px;
  letter-spacing:.2em;text-transform:uppercase;cursor:pointer;transition:.25s}
.itab:hover{background:var(--ink);color:var(--bg);padding-right:14px}
.itab__pop{position:absolute;right:100%;top:0;width:230px;writing-mode:horizontal-tb;
  background:var(--ink);color:var(--bg);padding:14px 16px;opacity:0;visibility:hidden;
  transform:translateX(8px);transition:.25s;pointer-events:none}
.itab:hover .itab__pop{opacity:1;visibility:visible;transform:translateX(0)}
.itab__pop b{color:var(--acc);font-family:var(--mono);font-size:10px;letter-spacing:.2em}
.itab__pop span{display:block;font-family:var(--sans);font-size:13px;margin-top:6px;line-height:1.4}

/* Hero */
.hero{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;
  text-align:center;padding:0 6vw;position:relative}
.hero__title{font-weight:300;font-size:clamp(38px,8vw,120px);letter-spacing:-.02em;
  line-height:.95;min-height:1em}
.hero__title .cur{color:var(--acc);animation:blink 1s steps(1) infinite}
@keyframes blink{50%{opacity:0}}
.hero__sub{margin-top:26px;font-family:var(--mono);font-size:12px;letter-spacing:.3em;
  text-transform:uppercase;color:var(--mut)}
.hero__tags{display:flex;gap:18px;margin-top:64px;flex-wrap:wrap;justify-content:center}
.htag{font-family:var(--mono);font-size:12px;letter-spacing:.18em;text-transform:uppercase;
  border:1px solid var(--line);padding:14px 22px;cursor:pointer;transition:.3s;background:var(--paper)}
.htag:hover{background:var(--ink);color:var(--bg);transform:translateY(-6px)}
.htag b{color:var(--acc)}

/* 档案柜网格 */
.archive{padding:120px 6vw 60px}
.archive__head{display:flex;justify-content:space-between;align-items:flex-end;
  border-bottom:2px solid var(--line);padding-bottom:18px;margin-bottom:18px}
.archive__head h2{font-weight:400;font-size:clamp(24px,4vw,44px);letter-spacing:-.01em}
.archive__head span{font-family:var(--mono);font-size:11px;letter-spacing:.2em;color:var(--mut);
  text-transform:uppercase}
.grid{display:grid;grid-template-columns:repeat(5,1fr);column-gap:28px;row-gap:120px}
.acard{display:block;cursor:pointer}
.acard__img{aspect-ratio:3/4;overflow:hidden;border:1px solid var(--line);background:var(--paper);
  transition:border-color .3s}
.acard__img img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.8,.2,1)}
.acard:hover .acard__img{border-color:var(--acc)}
.acard:hover .acard__img img{transform:scale(1.05)}
.acard__stamp{font-family:var(--mono);font-size:11px;color:var(--acc);letter-spacing:.1em;margin-top:14px}
.acard__t{font-family:var(--sans);font-weight:500;font-size:16px;line-height:1.3;margin-top:8px}
.acard__no{font-family:var(--mono);font-size:10px;letter-spacing:.15em;color:var(--mut);
  text-align:right;margin-top:10px}

/* 借阅登记簿（页脚） */
.ledger{border-top:2px solid var(--line);margin-top:120px;padding:70px 6vw 40px;
  display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:start}
.ledger__col h3{font-family:var(--mono);font-size:11px;letter-spacing:.25em;text-transform:uppercase;
  color:var(--mut);margin-bottom:22px}
.lede{display:block;padding:14px 0;border-bottom:1px solid rgba(17,17,17,.12);transition:.25s}
.lede:hover{padding-left:10px;color:var(--acc)}
.lede b{font-family:var(--mono);font-size:10px;color:var(--acc);margin-right:10px}
.randombtn{display:inline-block;margin-top:24px;border:1px solid var(--line);background:var(--ink);
  color:var(--bg);font-family:var(--mono);font-size:12px;letter-spacing:.2em;text-transform:uppercase;
  padding:16px 30px;cursor:pointer;transition:.3s}
.randombtn:hover{background:var(--acc);color:var(--ink)}
.footmark{font-family:var(--mono);font-size:10px;letter-spacing:.2em;color:var(--mut);
  text-align:center;padding:30px 6vw;border-top:1px solid rgba(17,17,17,.12)}

/* 详情页 */
.detail{padding:140px 6vw 100px;position:relative;max-width:1200px;margin:0 auto}
.dplate{font-family:var(--mono);font-size:11px;letter-spacing:.25em;text-transform:uppercase;
  border:1px solid var(--line);display:inline-block;padding:8px 14px;margin-bottom:30px}
.dplate b{color:var(--acc)}
.backbar{position:fixed;top:24px;left:24px;z-index:50;font-family:var(--mono);font-size:11px;
  letter-spacing:.2em;text-transform:uppercase;border:1px solid var(--line);background:var(--bg);
  padding:8px 14px;transition:.25s}
.backbar:hover{background:var(--ink);color:var(--bg)}
.dgrid{display:grid;grid-template-columns:70% 30%;gap:50px}
.dbody{font-size:16px;line-height:1.9}
.dbody h2{font-weight:400;font-size:30px;margin:40px 0 16px;letter-spacing:-.01em}
.dnotes{border-left:2px solid var(--line);padding-left:24px}
.dnotes h4{font-family:var(--mono);font-size:10px;letter-spacing:.25em;text-transform:uppercase;
  color:var(--mut);margin-bottom:18px}
.note{border-bottom:1px solid rgba(17,17,17,.12);padding:12px 0}
.note b{display:block;font-size:14px}
.note span{font-size:13px;color:var(--mut);line-height:1.5}
.dhero{margin:34px 0 0}
.dhero img{width:100%;max-height:560px;object-fit:cover;border:1px solid var(--line);background:var(--paper)}
.progress{position:fixed;left:0;top:0;width:3px;height:0;background:#c0392b;z-index:60}
.dfoot{display:flex;justify-content:space-between;margin-top:70px;padding-top:24px;
  font-family:var(--mono);font-size:11px;letter-spacing:.1em}
.dfoot a:hover{color:var(--acc)}
.foot{margin-top:80px;border-top:1px solid var(--line);padding-top:26px}
.footnav{display:flex;justify-content:center;gap:30px;flex-wrap:wrap;margin-bottom:20px}
.footnav a{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--ink);text-decoration:none;border-bottom:1px solid transparent;padding-bottom:3px}
.footnav a:hover{color:var(--acc);border-bottom-color:var(--acc)}
@media(max-width:1100px){.grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.grid{grid-template-columns:1fr;row-gap:48px}
  .ledger{grid-template-columns:1fr;gap:34px}.dgrid{grid-template-columns:1fr}
  .indextabs{display:none}.archive{padding:110px 5vw 40px}
  .hero{padding:0 5vw}.hero__tags{gap:10px;margin-top:44px}
  .htag{padding:12px 16px}.detail{padding:120px 5vw 80px}
  .dhero img{max-height:380px}.plate{top:14px;left:14px;padding:6px 10px;font-size:10px}
  .footnav{gap:18px}.foot{margin-top:54px;padding-top:22px}}
@media(max-width:480px){.hero__title{font-size:clamp(30px,11vw,52px)}.plate{display:none}}
