/* ============================================================
   用数学的方式认识数学 —— 站点共享样式（大学网站外壳）
   navy + gold + 暖米底 · 学院/典籍气质
   ============================================================ */
:root{
  --navy:#1a2a4a; --navy-d:#0f1a30; --navy-l:#2c4a7c;
  --gold:#c8a96e; --gold-l:#e8d4a8; --gold-ink:#9a7b3c;
  --bg:#fbfaf7; --parch:#f6f2ea; --card:#fff;
  --ink:#23262e; --muted:#6b6b6b; --slate:#8c96af; --line:#e6dfd0;
  --serif:'Noto Serif SC','Songti SC',serif;
  --sans:'Noto Sans SC',system-ui,-apple-system,sans-serif;
  --gara:'EB Garamond',Georgia,serif;
  --maxw:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);line-height:1.85;-webkit-font-smoothing:antialiased}
a{color:var(--navy-l);text-decoration:none}
img{max-width:100%}
::selection{background:rgba(200,169,110,.3)}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 clamp(1rem,4vw,3rem)}

/* ===== 顶栏导航 ===== */
.site-nav{position:sticky;top:0;z-index:100;background:linear-gradient(90deg,#15233c,#1a2a4a 55%,#15233c);
  border-top:2px solid var(--gold);border-bottom:1px solid rgba(200,169,110,.28);box-shadow:0 2px 16px rgba(15,26,48,.16)}
.site-nav .nav-in{max-width:var(--maxw);margin:0 auto;padding:.66rem clamp(1rem,4vw,3rem);display:flex;align-items:center;justify-content:space-between;gap:1rem}
.brand{display:flex;align-items:center;gap:.55rem;color:#f1ece1;font-family:var(--serif);font-weight:600;letter-spacing:.02em;font-size:.95rem;white-space:nowrap}
.brand .dot{width:8px;height:8px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 3px rgba(200,169,110,.16);align-self:center}
.brand small{font-family:var(--sans);font-weight:400;color:rgba(241,236,225,.5);font-size:.66rem;letter-spacing:.18em}
.site-nav .nav-links{display:flex;gap:.2rem;overflow-x:auto;scrollbar-width:none}
.site-nav .nav-links::-webkit-scrollbar{display:none}
.site-nav .nav-links a{color:rgba(241,236,225,.82);font-size:.82rem;letter-spacing:.06em;padding:.4rem .7rem;border-radius:7px;white-space:nowrap;transition:color .2s,background .2s;position:relative}
.site-nav .nav-links a:hover{color:#fff;background:rgba(255,255,255,.06)}
.site-nav .nav-links a.current{color:var(--gold)}
.site-nav .nav-links a.current::after{content:'';position:absolute;left:.7rem;right:.7rem;bottom:.05rem;height:1.5px;background:var(--gold)}

/* ===== 面包屑 ===== */
.crumb{max-width:var(--maxw);margin:0 auto;padding:.9rem clamp(1rem,4vw,3rem) 0;font-size:.76rem;color:var(--slate);letter-spacing:.04em}
.crumb a{color:var(--slate)}
.crumb a:hover{color:var(--navy)}
.crumb .sep{margin:0 .45rem;color:#cfc7b6}

/* ===== 页面题版 masthead ===== */
.masthead{position:relative;text-align:center;max-width:820px;margin:0 auto;padding:clamp(2rem,5vw,3.6rem) 1rem 1.3rem;overflow:hidden}
.masthead::before{content:'';position:absolute;inset:0;z-index:0;pointer-events:none;
  background:radial-gradient(ellipse at 50% -12%,rgba(200,169,110,.14),transparent 56%)}
.masthead>*{position:relative;z-index:1}
.masthead .eyebrow{font-size:.72rem;letter-spacing:.26em;text-transform:uppercase;color:var(--gold-ink);font-weight:700;margin-bottom:.6rem}
.masthead h1{font-family:var(--serif);font-weight:600;color:var(--navy);font-size:clamp(1.6rem,3.4vw,2.4rem);line-height:1.3;letter-spacing:.02em;margin:.1rem 0 .4rem}
.masthead .dek{font-family:var(--gara);font-style:italic;color:var(--navy-l);font-size:clamp(1rem,1.8vw,1.18rem)}
.masthead .orn{display:flex;align-items:center;justify-content:center;gap:.7rem;margin-top:1rem;color:var(--gold);font-size:.6rem}
.masthead .orn::before,.masthead .orn::after{content:'';display:block;width:34px;height:1px}
.masthead .orn::before{background:linear-gradient(90deg,transparent,rgba(200,169,110,.75))}
.masthead .orn::after{background:linear-gradient(90deg,rgba(200,169,110,.75),transparent)}

/* ===== 区段 ===== */
.section{padding:clamp(2.4rem,6vw,4.4rem) 0}
.section-head{text-align:center;max-width:680px;margin:0 auto 2.2rem}
.section-head .eyebrow{font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-ink);font-weight:700;margin-bottom:.55rem}
.section-head h2{font-family:var(--serif);font-size:clamp(1.4rem,2.8vw,2rem);font-weight:600;color:var(--navy);margin:0 0 .5rem}
.section-head p{color:var(--muted);font-size:.95rem;line-height:1.8}

/* ===== 入口卡片 ===== */
.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(248px,1fr));gap:1.2rem}
.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:1.45rem 1.55rem;text-decoration:none;color:inherit;position:relative;transition:box-shadow .3s,transform .3s,border-color .3s;display:block}
.card::before{content:'';position:absolute;left:0;top:1.4rem;bottom:1.4rem;width:3px;border-radius:0 3px 3px 0;background:var(--gold);opacity:.85;transition:top .3s,bottom .3s}
.card:hover{box-shadow:0 12px 30px rgba(26,42,74,.1);transform:translateY(-2px);border-color:#ddd3bf}
.card:hover::before{top:1rem;bottom:1rem}
.card .kicker{font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-ink);font-weight:700;margin-bottom:.5rem;display:flex;align-items:center;gap:.5rem}
.card .kicker::before{content:'';width:16px;height:1px;background:var(--gold)}
.card h3{font-family:var(--serif);font-size:1.12rem;font-weight:600;color:var(--navy);margin:0 0 .4rem;line-height:1.4}
.card p{font-size:.84rem;color:var(--muted);line-height:1.75;margin:0}
.card .go{margin-top:.9rem;font-size:.82rem;font-weight:600;color:var(--navy)}
.card .go .arr{color:var(--gold);transition:transform .3s;display:inline-block;margin-left:.3rem}
.card:hover .go .arr{transform:translateX(4px)}

/* ===== 页脚 ===== */
.site-foot{background:linear-gradient(135deg,var(--navy),var(--navy-d));color:rgba(255,255,255,.6);text-align:center;padding:3rem 1rem 3.2rem;margin-top:4rem}
.site-foot .q{font-family:var(--serif);font-size:1.18rem;color:var(--gold);letter-spacing:.06em;margin-bottom:1rem}
.site-foot .r{display:block;width:36px;height:1px;background:rgba(200,169,110,.45);margin:0 auto 1.1rem}
.site-foot .foot-links{display:flex;gap:1.3rem;justify-content:center;flex-wrap:wrap;margin-bottom:1rem}
.site-foot .foot-links a{color:rgba(255,255,255,.62);font-size:.8rem;letter-spacing:.04em}
.site-foot .foot-links a:hover{color:var(--gold-l)}
.site-foot .tag{font-size:.72rem;letter-spacing:.18em;color:rgba(255,255,255,.4)}

/* ===== 占位（骨架页） ===== */
.placeholder{max-width:720px;margin:2rem auto 0;background:var(--card);border:1px dashed #d8d0bf;border-radius:14px;padding:2rem;text-align:center;color:var(--muted)}
.placeholder b{color:var(--navy)}

/* ===== 页间串联（上一页 / 下一页） ===== */
.pager{max-width:var(--maxw);margin:3.4rem auto 0;padding:1.5rem clamp(1rem,4vw,3rem) 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.pager a{display:flex;flex-direction:column;gap:.25rem;text-decoration:none;color:var(--navy);max-width:47%}
.pager a.next{text-align:right;margin-left:auto;align-items:flex-end}
.pager .pl{font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-ink);font-weight:700}
.pager .pt{font-family:var(--serif);font-weight:600;font-size:1.02rem;line-height:1.3}
.pager a:hover .pt{color:var(--navy-l)}

/* ===== 打印辅助类 ===== */
.print-only{display:none}

/* ============================================================
   打印 / 导出 PDF —— 剥掉外壳，只留干净内容（线下答题用）
   约定：.no-print 不打印；.print-only 仅打印时现；
        .solution / [data-solution] 默认不打印 → 打出来即是一张答题纸。
   ============================================================ */
@media print{
  *{-webkit-print-color-adjust:exact;print-color-adjust:exact;box-shadow:none !important}
  html,body{background:#fff !important}
  /* 外壳与交互件一律不打印 */
  .site-nav,.crumb,.pager,.site-foot,#toTop,#dsxPrint,#dsxEdit,.dsx-toast,
  .back-read,.back-dojo,.home-hero .pattern,.home-hero .glow,.home-hero .scroll,
  .no-print{display:none !important}
  .print-only{display:block !important}
  /* 题库 / 副本：解析默认不打印 */
  .solution,[data-solution]{display:none !important}
  /* 内容铺满纸面 */
  .wrap{max-width:none;padding:0}
  .section{padding:0}
  .masthead{padding:.2rem 0 .6rem}
  .masthead::before{display:none}
  /* 首页 hero：去大色块，留可读标题 */
  .home-hero{background:#fff !important;color:#1a2a4a !important;min-height:auto;padding:.5rem 0 1rem;display:block}
  .home-hero h1{-webkit-text-fill-color:#1a2a4a !important;color:#1a2a4a !important;background:none !important}
  .home-hero .qs{color:#333 !important}
  .home-hero .cta,.home-hero .badge{display:none !important}
  /* 深色块 → 描边浅色：省墨、黑白可读 */
  .bridge,.recon{background:#fff !important;border:1px solid var(--gold) !important;border-radius:6px}
  .bridge,.bridge *,.recon,.recon *{color:#1a2a4a !important}
  .bridge .bk,.recon .rk{color:var(--gold-ink) !important}
  .bridge::before,.recon::before{display:none}
  .law-seals .seal .ring{box-shadow:none !important;background:#fff !important}
  /* 不在跨页处断开 */
  .move,.claim,.five-el .el,.read-row,.passage,.keyline,.law-seals,.seal,
  .contrast .work,.telos,.bridge,.recon,tr,.modules .mod{break-inside:avoid;page-break-inside:avoid}
  .move .mh,.section-head h2,.masthead{break-after:avoid;page-break-after:avoid}
  a{color:#1a2a4a !important;text-decoration:none}
  @page{margin:1.8cm 1.6cm}
}
