/* ==========================================================================
   判卷纸 · 前端 v4（2026-10-24）
   只覆盖「学习面」（考点卡 / 长卷卡 / 单卡页），法条页、搜索、地图、首页沿用 v3。
   方向：朱批。纸 → 朱红笔迹；三个节奏 = 遮关键词 / 填关键词 / 全遮。
   ========================================================================== */

:root{
  --v4-bg:#F6F2E9;
  --v4-paper:#FFFDF7;
  --v4-ink:#17150F;
  --v4-ink2:#4A4438;
  --v4-muted:#8C8371;
  --v4-dim:#B5AB95;
  --v4-line:#DCD3BF;
  --v4-meta:#6F6757;
  --v4-line2:#EAE3D2;
  --v4-stamp:#A32E22;
  --v4-stamp-soft:#F6E6E1;
  --v4-wash:#F5EDDA;
  --v4-ok:#2E6B4F;
  --v4-rule:#6F6757;
  --v4-near:#8A6D1F;
  --v4-near-line:#C9A85F;
  --v4-serif:"Songti SC","Source Han Serif SC","Noto Serif SC","SimSun",serif;
}
/* 深色：只换令牌，不改结构（v4 覆盖层原来没做深色，深色下填空线几乎看不见） */
@media (prefers-color-scheme: dark){
  :root{
    --v4-bg:#16150F;
    --v4-paper:#1E1C16;
    --v4-ink:#EDE7D8;
    --v4-ink2:#C6BFAC;
    --v4-muted:#8E8778;
    --v4-dim:#6F695B;
    --v4-line:#3A362B;
    --v4-meta:#A9A08C;
    --v4-line2:#2B2820;
    --v4-stamp:#C7573F;
    --v4-stamp-soft:#2E1D19;
    --v4-wash:#25231B;
    --v4-ok:#6FAE8C;
    --v4-rule:#9C9382;
    --v4-near:#D2AE62;
    --v4-near-line:#8A6D1F;
  }
  .stem em{background:linear-gradient(transparent 62%,#3A3320 62%)}
  .v4-cover{background:var(--v4-paper)}
}

/* ---------- 卡片外壳 ---------- */
.kcard{padding:24px 22px 26px;border:1px solid var(--v4-line);background:var(--v4-paper);border-radius:0}
@media (max-width:560px){.kcard{padding:20px 16px 22px}}
.kc-head{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px;margin-bottom:8px}
.kc-head .code{font-family:var(--v4-serif);font-size:12.5px;color:var(--v4-meta);letter-spacing:.1em}
.kc-title{font-family:var(--v4-serif);font-size:22px;line-height:1.4;font-weight:700;margin:0;color:var(--v4-ink)}
.kc-pos{font-size:12.5px;color:var(--v4-meta);margin-left:auto;font-variant-numeric:tabular-nums}
.badge.freq{font-size:12px;padding:2px 7px;border:1px solid var(--v4-line);color:var(--v4-ink2);background:transparent}
.badge.freq[class*="必考"],.badge.freq.must{border-color:var(--v4-stamp);color:var(--v4-stamp)}

/* ---------- 题干 ---------- */
.stem{font-size:16px;line-height:1.9;color:var(--v4-ink2);margin:0 0 12px}
.stem em{font-style:normal;background:linear-gradient(transparent 62%,var(--v4-wash) 62%)}

/* 选择题：选项各起一行 */
.opts{list-style:none;margin:0 0 14px;padding:0}
.opts li{position:relative;padding-left:23px;margin-bottom:7px;font-size:16px;line-height:1.8;color:var(--v4-ink2)}
.opts li:last-child{margin-bottom:0}
.opts li b{position:absolute;left:0;top:0;font-family:var(--v4-serif);font-weight:700;color:var(--v4-ink)}

/* ---------- 三档条（题干与答案之间） ---------- */
.modes-bar{display:flex;align-items:center;gap:12px;margin:0 0 10px;
  border-bottom:1px solid var(--v4-line2);padding-bottom:9px}
.modes{display:flex;gap:2px;flex:1;flex-wrap:wrap}
.modes button{background:none;border:0;border-bottom:2px solid transparent;
  font-size:13.5px;line-height:1;color:var(--v4-muted);padding:8px 11px 7px;margin-bottom:-10px;
  display:inline-flex;align-items:center;gap:4px;letter-spacing:.02em;white-space:nowrap;cursor:pointer}
.modes button i{font-family:var(--v4-serif);font-style:normal;font-size:11.5px;opacity:.55}
.modes button.on{color:var(--v4-ink);font-weight:600;border-bottom-color:var(--v4-stamp)}
.modes button.on i{color:var(--v4-stamp);opacity:1;font-weight:700}
.kc-acts{display:flex;gap:8px;margin-left:auto}
.kc-bar .act,.kc-acts .act{height:36px;padding:0 15px;font-size:13.5px;letter-spacing:.04em;
  border:1px solid var(--v4-stamp);color:var(--v4-stamp);background:transparent;cursor:pointer}
.kc-bar .act.primary,.kc-acts .act.primary{background:var(--v4-stamp);color:#FDF6F0}

/* ---------- 答案区 ---------- */
.answer{background:var(--v4-paper);border:1px solid var(--v4-line);border-left:3px solid var(--v4-stamp);
  padding:18px 18px 15px;font-size:16px;line-height:1.95;color:var(--v4-ink2);border-radius:0}
.answer p{margin:0 0 10px}
.answer p:last-child{margin-bottom:0}

/* 列表型答案：每条各起一行 */
.anslist{list-style:none;margin:0 0 10px;padding:0;counter-reset:v4li}
.anslist li{position:relative;padding-left:22px;margin-bottom:7px;counter-increment:v4li;line-height:1.9}
.anslist li:last-child{margin-bottom:0}
.anslist li::before{content:counter(v4li);position:absolute;left:0;top:2px;
  font-family:var(--v4-serif);font-size:12.5px;color:var(--v4-stamp)}

/* 空位与紧随的句读绑成一组：避免「。」被挤到下一行行首 */
.blk-pair{white-space:nowrap}

/* ---------- 一档：遮关键词（卷子式空位） ---------- */
.answer[data-mode="mask"] .blk{display:inline-block;min-width:3em;vertical-align:baseline;cursor:pointer;
  border-bottom:1.5px solid var(--v4-rule);margin:0 2px;padding:0 4px;border-radius:2px 2px 0 0;
  transition:background .12s ease,border-color .12s ease}
.answer[data-mode="mask"] .blk .blk-a{visibility:hidden}
.answer[data-mode="mask"] .blk:hover{background:var(--v4-wash);border-bottom-width:2px;border-bottom-color:var(--v4-ink)}
.answer[data-mode="mask"] .blk.open{background:transparent;border-bottom:1.5px solid var(--v4-stamp)}
.answer[data-mode="mask"] .blk.open .blk-a{visibility:visible;color:var(--v4-stamp);
  font-family:var(--v4-serif);font-weight:700;font-size:16px}

/* ---------- 二档：填关键词（真输入，空宽＝词长） ---------- */
.answer[data-mode="fill"] .fb{position:relative;display:inline-block;vertical-align:baseline;margin:0 2px}
.answer[data-mode="fill"] .fb .fb-a{visibility:hidden;font-family:var(--v4-serif);font-size:16px;padding:0 4px}
.answer[data-mode="fill"] .fb .fb-i{position:absolute;left:0;top:0;width:100%;height:100%;
  border:0;border-bottom:1.5px solid var(--v4-rule);background:transparent;border-radius:2px 2px 0 0;
  font-family:var(--v4-serif);font-size:16px;color:var(--v4-ink);text-align:left;
  padding:0 4px;outline:none;cursor:text}
.answer[data-mode="fill"] .fb .fb-i:hover{background:var(--v4-wash);border-bottom:2px solid var(--v4-ink)}
.answer[data-mode="fill"] .fb .fb-i:focus{background:var(--v4-wash);border-bottom:2px solid var(--v4-stamp)}

/* 判对：朱红宋体下划线 + 圈勾 */
.answer[data-mode="fill"] .fb.ok .fb-i{color:var(--v4-stamp);border-bottom:1.5px solid var(--v4-stamp);
  font-family:var(--v4-serif);font-weight:700}
.answer[data-mode="fill"] .fb.ok::after{content:"✓";position:absolute;right:-15px;top:50%;transform:translateY(-52%);
  width:15px;height:15px;line-height:14px;text-align:center;font-size:10px;border-radius:50%;
  border:1.2px solid var(--v4-stamp);color:var(--v4-stamp);background:transparent}
/* 判错：划掉 + 灰圈叉 */
.answer[data-mode="fill"] .fb.bad-keep .fb-i{color:var(--v4-stamp);border-bottom:1.5px solid var(--v4-line);
  text-decoration:line-through;text-decoration-thickness:1.5px;text-decoration-color:var(--v4-stamp)}
.answer[data-mode="fill"] .fb.bad-keep::after{content:"×";position:absolute;right:-15px;top:50%;transform:translateY(-52%);
  width:15px;height:15px;line-height:14px;text-align:center;font-size:11px;border-radius:50%;
  border:1.2px solid var(--v4-dim);color:var(--v4-dim)}
/* Esc 看答案：红字原地出现 */
.answer[data-mode="fill"] .fb.reveal .fb-i{color:var(--v4-stamp);border-bottom:1.5px dotted var(--v4-stamp);
  background:var(--v4-wash)}
.answer[data-mode="fill"] .fb.reveal::after{content:"看";position:absolute;right:-15px;top:50%;transform:translateY(-52%);
  width:15px;height:15px;line-height:14px;text-align:center;font-size:9px;border-radius:50%;
  border:1px solid var(--v4-dim);color:var(--v4-muted)}

/* 交卷后：漏答 / 接近 / 判错三种态都要在空位本身看出来（不靠 tooltip） */
.answer[data-mode="fill"] .fb.bad .fb-i,
.answer[data-mode="fill"] .fb.miss .fb-i,
.answer[data-mode="fill"] .fb.near .fb-i{visibility:hidden}
.answer[data-mode="fill"] .fb.bad .fb-a{visibility:visible;color:var(--v4-stamp);font-weight:700;
  border-bottom:1.5px solid var(--v4-stamp)}
.answer[data-mode="fill"] .fb.bad::after{content:"×";position:absolute;right:-15px;top:50%;transform:translateY(-52%);
  width:15px;height:15px;line-height:14px;text-align:center;font-size:11px;border-radius:50%;
  border:1.2px solid var(--v4-stamp);color:var(--v4-stamp)}
/* 漏答：虚线空位 + 「未填」小签，红色标准答案直接补上 */
.answer[data-mode="fill"] .fb.miss .fb-a{visibility:visible;color:var(--v4-stamp);font-weight:700;
  border-bottom:1.5px dashed var(--v4-stamp)}
.answer[data-mode="fill"] .fb.miss::after{content:"未填";position:absolute;left:0;top:-12px;
  font-size:10.5px;line-height:10px;letter-spacing:.02em;padding:0;
  color:var(--v4-stamp);background:transparent;font-family:var(--v4-sans);opacity:.9}
/* 接近：赭黄 △，提示自己再核对（否定词不同也走这一档，不当场判错） */
.answer[data-mode="fill"] .fb.near .fb-a{visibility:visible;color:var(--v4-near);font-weight:700;
  border-bottom:1.5px dashed var(--v4-near-line)}
.answer[data-mode="fill"] .fb.near::after{content:"△";position:absolute;right:-15px;top:50%;transform:translateY(-52%);
  width:15px;height:15px;line-height:14px;text-align:center;font-size:10px;border-radius:50%;
  border:1.2px solid var(--v4-near-line);color:var(--v4-near)}

/* ---------- 三档：全遮（虚线框 + 批注 + 小印） ---------- */
.answer.ans-hidden{display:none}
.v4-cover{display:none}
.answer.ans-hidden + .v4-cover{display:flex;align-items:center;justify-content:space-between;gap:14px;
  border:1px dashed var(--v4-line);border-left:3px solid var(--v4-stamp);background:var(--v4-paper);
  height:138px;padding:0 18px;cursor:pointer;user-select:none;transition:background .12s ease,border-color .12s ease}
.answer.ans-hidden + .v4-cover:hover{background:var(--v4-wash);border-color:var(--v4-stamp)}
.answer.ans-hidden + .v4-cover:focus-visible{outline:2px solid var(--v4-stamp);outline-offset:2px}
.v4-cover:active{transform:none}
.v4-cover-txt{min-width:0}
.v4-cover-txt .v4-cover-line{font-family:var(--v4-serif);font-size:15.5px;color:var(--v4-ink2);line-height:1.9}
.v4-cover-line span{white-space:nowrap}
.v4-cover-txt .v4-cover-line b{color:var(--v4-stamp);font-weight:700}
.v4-show{display:inline-block;margin-top:9px;border-bottom:1px solid var(--v4-stamp);
  color:var(--v4-stamp);font-size:13.5px;letter-spacing:.04em;padding:2px 0;pointer-events:none}
.v4-seal{width:58px;height:58px;flex:0 0 auto;border:2px solid var(--v4-stamp);color:var(--v4-stamp);
  font-family:var(--v4-serif);font-size:15px;font-weight:700;line-height:1.15;border-radius:2px;
  display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(-4deg)}

/* ---------- 提示 / 脚注 ---------- */
.kcard .hint{font-size:13.5px;color:var(--v4-meta);margin:14px 0 0;line-height:1.75}
.kcard .hint kbd{font-family:inherit;font-size:12px;border:1px solid var(--v4-line);
  background:var(--v4-paper);padding:2px 5px;color:var(--v4-ink2);margin:0 3px}
.kc-foot{display:flex;align-items:center;gap:12px;margin-top:12px;font-size:13px;color:var(--v4-meta)}
.kf-redo{background:none;border:1px solid var(--v4-line);color:var(--v4-ink2);
  font-size:13px;padding:4px 10px;cursor:pointer}
.answer .k{color:var(--v4-stamp)}
.answer .l{color:var(--law)}
.answer .t{color:var(--v4-near)}
.answer .m{color:var(--muted)}

/* ---------- 桌面 ---------- */
@media (min-width:760px){
  .stem,.opts li{font-size:16px}
  .answer{padding:20px 20px 18px;font-size:16px;line-height:2}
  .modes button{font-size:13.5px;padding:8px 11px 7px}
  .v4-cover{height:var(--v4-coverh,220px);align-items:flex-start;padding-top:18px}
  .v4-cover.p-tall{--v4-coverh:286px}
  .v4-cover.p-taller{--v4-coverh:294px}
}

/* v4:reset —— 清掉 v3 遗留的底纹/内边距，让空位就是一条线 */
.answer[data-mode="mask"] .blk{background:transparent!important;padding:0 4px!important;
  border:0!important;border-bottom:1.5px solid var(--v4-rule)!important;border-radius:2px!important;
  box-shadow:none!important}
.answer[data-mode="mask"] .blk .blk-a{background:transparent!important}
.answer[data-mode="mask"] .blk.open{border-bottom:1.5px solid var(--v4-stamp)!important}
.answer[data-mode="fill"] .fb{background:transparent!important;border:0!important;padding:0!important}
.answer[data-mode="fill"] .fb .fb-i{box-shadow:none!important}
.answer[data-mode="fill"] .fb .fb-a{background:transparent!important;border:0!important}
.answer .verdict-para{font-size:13.5px;color:var(--v4-muted);line-height:1.85;margin:12px 0 0;
  padding-top:10px;border-top:1px solid var(--v4-line2)}

/* ---------- v4+主线合并（2026-10-24） ----------
   v3 的 .modes 容器自带边框与「黑底白字」的 .on 态，会把 v4 的三档条顶成黑药丸；
   这里按 v4 的朱批语言压掉，保留 v3/v4 共用的按钮 DOM。 */
.modes-bar .modes,.kc-bar .modes{margin:0!important;border:0!important;border-radius:0!important;
  overflow:visible!important;gap:2px!important;flex-wrap:wrap}
.modes-bar .modes button,.kc-bar .modes button{padding:7px 10px 6px!important;min-width:0!important;
  border:0!important;border-bottom:2px solid transparent!important;background:transparent!important;
  color:var(--v4-muted)!important;margin-bottom:-10px!important;font-size:13.5px!important}
.modes-bar .modes button.on,.kc-bar .modes button.on{background:transparent!important;color:var(--v4-ink)!important;
  border-bottom-color:var(--v4-stamp)!important;font-weight:600!important}
.modes-bar .modes button.on i,.kc-bar .modes button.on i{color:var(--v4-stamp)!important;opacity:1!important}
/* 听稿条：放在提示行与卡脚之间，跟随 v4 的发丝线语言 */
.kcard .kaudio,.card .kaudio{margin:12px 0 0;padding:8px 0 2px;border-top:1px solid var(--v4-line2)}
.kcard .kaudio .ka-btn,.card .kaudio .ka-btn{border-color:var(--v4-line);color:var(--v4-ink2)}
.kcard .kaudio .ka-btn:hover,.card .kaudio .ka-btn:hover{border-color:var(--v4-stamp);color:var(--v4-stamp)}

/* ==========================================================================
   纸笔克制风 · 单卡页（2026-10-25）
   六条规则：① 一张纸 ② 一行排版信息 ③ 38 字测度 ④ 边注替代盒子
             ⑤ 红色只用三处 ⑥ 印章只出现一次
   只在 body.page-card 生效，首页 / 列表 / 地图 / 法条页不受影响。
   ========================================================================== */

/* 版面：660 正文 + 220 边注，间距 56 */
.page-card{background:var(--v4-bg)}
.page-card .wrap{max-width:1000px}
.page-card .detail{grid-template-columns:minmax(0,1fr) 220px;gap:56px;padding:8px 0 64px}
.page-card .crumbs{padding-top:18px;font-size:12.5px}
.page-card .narrow{max-width:1000px}

/* ① 一张纸：整页只有这一个带边框的容器 */
.page-card .card{background:var(--v4-paper);border:1px solid var(--v4-line);border-radius:0;
  box-shadow:none;padding:46px 48px 38px}
.page-card .card h1{font-family:var(--v4-serif);font-size:34px;line-height:1.35;margin:0 0 10px;letter-spacing:0}

/* ② 一行排版信息，替代五枚药丸 */
.page-card .meta-line{font-size:13px;color:var(--v4-meta);letter-spacing:.04em;line-height:1.9;
  margin:0 0 26px;padding-bottom:16px;border-bottom:1px solid var(--v4-line2)}

/* 小标题只靠字号与间距分层，不拉横线 */
.page-card .sec-label{font-size:12px;letter-spacing:.18em;color:var(--v4-meta);margin:30px 0 12px;font-weight:600}
.page-card .sec-label::after{display:none}

/* ③ 阅读测度：中文约 33–36 字/行（sheet 内宽 564px） */
.page-card .stem,.page-card .answer{max-width:38em;font-family:var(--v4-serif)}
.page-card .stem{color:var(--v4-ink2);line-height:1.95;font-size:17px}
.page-card .answer{border:0!important;padding:0!important;background:transparent!important;
  color:var(--v4-ink2);line-height:1.95;font-size:17px}

/* 列表型答案：条目本身已带「第一、第二」，不再叠一层数字，只留段间距 */
.page-card .anslist{padding-left:0}
.page-card .anslist li{padding-left:0;margin-bottom:9px}
.page-card .anslist li::before{content:none}

/* 模式条：字距拉开，当前项朱红下划线 */
.page-card .modes-bar{border-bottom:1px solid var(--v4-line2);padding-bottom:0;margin-bottom:18px}
.page-card .modes-bar .modes button{font-size:14.5px!important;padding:9px 0 8px!important;
  margin:0 26px -1px 0!important;letter-spacing:.03em!important}
.page-card .modes-bar .modes button.on i{color:var(--v4-stamp)!important}
/* 主操作：朱红细框小章，不用整块实心红 */
.page-card .kc-acts .act{height:32px;padding:0 15px;font-size:13px;letter-spacing:.06em;border-radius:0}
.page-card .kc-acts .act.primary{background:transparent;color:var(--v4-stamp);border:1px solid var(--v4-stamp)}
.page-card .kc-acts .act.primary:hover{background:var(--v4-stamp);color:#FDF6F0}

/* 全遮：去掉虚线框与红左线，回到纸面，只留一条上下游细线 */
.page-card .answer.ans-hidden + .v4-cover{border:0;border-top:1px solid var(--v4-line2);
  border-bottom:1px solid var(--v4-line2);background:transparent;padding:22px 2px 20px}
.page-card .answer.ans-hidden + .v4-cover:hover{background:var(--v4-wash);border-color:var(--v4-line)}
.page-card .v4-cover-txt .v4-cover-line{font-size:15px}

/* ④ 边注：无底色、无边框，只用发丝线分段 */
.page-card .side{position:sticky;top:80px;padding-top:6px}
.page-card .side .box{background:transparent;border:0;border-top:1px solid var(--v4-line);
  border-radius:0;padding:14px 0 16px;margin:0}
.page-card .side h5{font-size:12px;letter-spacing:.16em;color:var(--v4-meta);margin:0 0 10px;
  font-family:var(--v4-serif);font-weight:600}
.page-card .side ul{font-size:13.5px;line-height:1.85;padding-left:16px;color:var(--v4-ink2)}
.page-card .side li{margin-bottom:4px}
.page-card .side a{color:var(--v4-ink2);text-decoration:none;border-bottom:1px solid transparent}
.page-card .side a:hover{color:var(--v4-stamp);border-bottom-color:var(--v4-stamp)}
.page-card .side .btn.wide{background:transparent;border:1px solid var(--v4-line);color:var(--v4-ink2);
  font-size:13px;padding:8px 10px;letter-spacing:.04em}
.page-card .side .btn.wide:hover{background:transparent;border-color:var(--v4-ink);color:var(--v4-ink)}
.page-card .free-note{font-size:12.5px;color:var(--v4-muted);line-height:1.7;margin-bottom:12px}
.page-card .paid-line{border-top:1px solid var(--v4-line2);padding-top:10px;margin-top:12px;
  font-size:12.5px;color:var(--v4-muted)}
.page-card .stat{border-bottom:1px solid var(--v4-line2);font-size:13px;padding:7px 0}
.page-card .stat:last-child{border-bottom:0}
.page-card .lawrefs{font-size:13.5px;gap:4px}

/* 卡脚：发丝线上移，回到纸的语汇 */
.page-card .kc-foot{border-top:1px solid var(--v4-line2);padding-top:12px;margin-top:16px;
  font-size:12.5px;color:var(--v4-meta)}
.page-card .hint{font-size:12.5px;color:var(--v4-muted);margin-top:14px}
.page-card .hint kbd{border:0;background:none;padding:0;margin:0 2px;color:var(--v4-ink2);font-weight:600}

/* 正文里的法条引用：纸面上用墨色 + 发丝下划线，悬停才见法蓝 */
.page-card .stem a.lawlink,.page-card .answer a.lawlink{color:var(--v4-ink2);
  border-bottom:1px solid var(--v4-line);background:none}
.page-card .stem a.lawlink:hover,.page-card .answer a.lawlink:hover{color:var(--law);border-bottom-color:var(--law)}

/* 章导航：和正文同宽，只留上下发丝线 */
.page-card .chnav{max-width:956px;margin:32px auto 0;border:0;border-top:1px solid var(--v4-line);
  border-bottom:1px solid var(--v4-line);border-radius:0;background:transparent}
.page-card .chnav-row{border-bottom:1px solid var(--v4-line2)}
.page-card .chstep{border-right:1px solid var(--v4-line2)}
.page-card .chstep.right{border-right:0}
.page-card .chstep:hover{background:var(--v4-wash)}
.page-card .chitem.on{background:var(--v4-wash);color:var(--v4-stamp);font-weight:600}

/* ---------- 平板：单栏、去掉纸的边框，直接铺在底色上 ---------- */
@media (max-width:959px){
  .page-card .wrap{padding:0 18px}
  .page-card .detail{grid-template-columns:1fr;gap:0;max-width:720px;margin:0 auto;
    padding:6px 0 48px}
  .page-card .card{border:0;background:transparent;padding:20px 0 6px}
  .page-card .card h1{font-size:30px;line-height:1.4}
  .page-card .side{position:static;margin-top:34px;border-top:1px solid var(--v4-line);padding-top:6px}
  .page-card .side .box{border-top:0;padding:12px 0 14px}
  .page-card .side .box + .box{border-top:1px solid var(--v4-line2)}
  .page-card .chnav{max-width:720px}
}

/* ---------- 手机 ---------- */
@media (max-width:620px){
  .page-card .card h1{font-size:26px}
  .page-card .stem,.page-card .answer{max-width:none}
  .page-card .meta-line{margin-bottom:20px;padding-bottom:14px}
  .page-card .modes-bar .modes button{margin-right:20px!important;font-size:14px!important}
  .page-card .chnav{max-width:none;margin:24px 18px 0}
}

/* ==========================================================================
   纸笔克制风 · 编长卷页（2026-10-25）
   一编是一沓纸：每题不再是盒子，而是纸上的「一题」，靠发丝线与留白分段。
   与单卡页共用同一套字号、测度、红色配额。
   ========================================================================== */
.page-scroll{background:var(--v4-bg)}
.page-scroll .narrow{max-width:720px}
.page-scroll .crumbs{padding-top:18px;font-size:12.5px}

/* 顶部一条说明，替代每张卡重复一遍 */
.page-scroll .scroll-note{margin:14px 0 0;font-size:12.5px;color:var(--v4-muted);line-height:1.8}
.page-scroll .kcard .hint{display:none}

/* 章标题：宋体 + 发丝线 */
.page-scroll .vol-ch{margin:46px 0 0}
.page-scroll .vol-ch-head{font-family:var(--v4-serif);font-size:22px;color:var(--v4-ink);
  border-bottom:1px solid var(--v4-line);padding-bottom:10px;margin:0 0 4px}
.page-scroll .vol-ch-head span{font-size:12.5px;color:var(--v4-meta);font-family:var(--sans)}

/* 一题：无边框、无底色 */
.page-scroll .kcard{border:0;background:transparent;padding:0;margin:34px 0 0}
.page-scroll .kcard + .kcard{border-top:1px solid var(--v4-line2);padding-top:30px;margin-top:42px}

/* 题头：编号 / 标题 / 频次 / 位置全部排版化，频次不再是小框 */
.page-scroll .kc-head{border-bottom:0;padding-bottom:0;margin-bottom:10px;gap:6px 10px}
.page-scroll .kc-head .code{font-family:var(--v4-serif);font-size:12.5px;color:var(--v4-meta);letter-spacing:.1em}
.page-scroll .kc-title{font-family:var(--v4-serif);font-size:24px;line-height:1.4;letter-spacing:0}
.page-scroll .badge.freq{border:0;padding:0;background:none;font-size:12.5px;color:var(--v4-meta);letter-spacing:.08em}
.page-scroll .badge.freq.must,.page-scroll .badge.freq[class*="必考"]{color:var(--v4-stamp)}
.page-scroll .kc-pos{font-size:12.5px;color:var(--v4-meta)}

/* 题干：去掉灰底盒子 */
.page-scroll .kcard .stem{background:transparent;padding:0;border:0;font-family:var(--v4-serif);
  font-size:17px;line-height:1.95;color:var(--v4-ink2);max-width:38em;margin:0 0 14px}

/* 法条引用：墨色 + 发丝线，悬停才见法蓝（与单卡页一致） */
.page-scroll .stem a.lawlink,.page-scroll .answer a.lawlink{color:var(--v4-ink2);
  border-bottom:1px solid var(--v4-line);background:none}
.page-scroll .stem a.lawlink:hover,.page-scroll .answer a.lawlink:hover{color:var(--law);border-bottom-color:var(--law)}

/* 模式条：与单卡页同一条朱红下划线 */
.page-scroll .modes-bar{border-bottom:1px solid var(--v4-line2);padding-bottom:0;margin:0 0 18px}
.page-scroll .modes-bar .modes button{font-size:14.5px!important;padding:9px 0 8px!important;
  margin:0 26px -1px 0!important;letter-spacing:.03em!important}
.page-scroll .kc-acts .act{height:32px;padding:0 15px;font-size:13px;letter-spacing:.06em;border-radius:0}
.page-scroll .kc-acts .act.primary{background:transparent;color:var(--v4-stamp);border:1px solid var(--v4-stamp)}
.page-scroll .kc-acts .act.primary:hover{background:var(--v4-stamp);color:#FDF6F0}

/* 答案：去掉边框 / 底色 / 红左线 */
.page-scroll .kcard .answer{border:0;padding:0;background:transparent!important;margin-top:0;
  font-family:var(--v4-serif);font-size:17px;line-height:1.95;color:var(--v4-ink2);max-width:38em}
.page-scroll .anslist{padding-left:0}
.page-scroll .anslist li{padding-left:0;margin-bottom:9px}
.page-scroll .anslist li::before{content:none}

/* 全遮：同样去掉虚线框 */
.page-scroll .answer.ans-hidden + .v4-cover{border:0;border-top:1px solid var(--v4-line2);
  border-bottom:1px solid var(--v4-line2);background:transparent;padding:22px 2px 20px;
  height:auto;min-height:138px}
.page-scroll .answer.ans-hidden + .v4-cover:hover{background:var(--v4-wash);border-color:var(--v4-line)}
.page-scroll .v4-cover-txt .v4-cover-line{font-size:15px}

/* 卡脚 / 听稿 */
.page-scroll .kc-foot{border-top:1px solid var(--v4-line2);padding-top:12px;margin-top:16px;font-size:12.5px}
.page-scroll .kcard .kaudio{margin-top:14px}

/* 手机：标题降一档，其余不变 */
@media (max-width:620px){
  .page-scroll .kcard .stem,.page-scroll .kcard .answer{max-width:none}
  .page-scroll .kc-title{font-size:21px}
  .page-scroll .vol-ch-head{font-size:20px}
  .page-scroll .modes-bar .modes button{margin-right:20px!important;font-size:14px!important}
}

/* ============================================================
   纸笔克制风 · 列表页（body.page-list）
   1594 个考点不再平铺成卡片墙，改成两栏「目录行」：
   编号·频次·采分点一行，标题一行，摘要一行，行间只用发丝线。
   ============================================================ */
.page-list{background:var(--v4-bg)}
.page-list .wrap{max-width:1000px}
.page-list .list-sec{padding:30px 0 44px}
.page-list .listhead{margin:0 0 8px;padding-bottom:12px;border-bottom:1px solid var(--v4-line)}
.page-list .listhead h2{font-family:var(--v4-serif);font-size:26px;font-weight:400;letter-spacing:.02em}
.page-list .listhead span{font-size:12.5px;color:var(--v4-meta);letter-spacing:.06em;font-variant-numeric:tabular-nums}

/* 筛选：文字页签，替换圆角药丸 */
.page-list .filters{display:flex;flex-wrap:wrap;gap:24px;margin:0;padding:0;border-bottom:1px solid var(--v4-line2)}
.page-list .chip{
  border:0;border-radius:0;background:none;padding:11px 0 9px;margin-bottom:-1px;
  border-bottom:2px solid transparent;font-size:14px;color:var(--v4-meta);
  letter-spacing:.04em;transition:color .15s,border-color .15s;
}
.page-list .chip:hover{border-color:transparent;border-bottom-color:var(--v4-line);color:var(--v4-ink)}
.page-list .chip.on{background:none;border-color:transparent;border-bottom-color:var(--v4-stamp);
  color:var(--v4-ink);font-weight:600}

/* 目录行本体 */
.page-list .grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 56px;margin:0}
.page-list .item{
  display:block;min-width:0;background:none;border:0;border-radius:0;border-bottom:1px solid var(--v4-line2);
  padding:13px 0 12px;transition:background .15s;
}
.page-list .item:hover{background:var(--v4-wash);border-color:var(--v4-line2);text-decoration:none}
.page-list .row-top{display:flex;align-items:baseline;gap:10px;margin-bottom:3px;
  font-size:11.5px;line-height:1.4;color:var(--v4-meta);letter-spacing:.07em}
.page-list .row-code{font-family:var(--v4-serif);letter-spacing:.1em}
.page-list .row-freq{letter-spacing:.08em}
.page-list .row-freq.f-high{color:var(--v4-stamp)}
.page-list .row-tail{margin-left:auto;white-space:nowrap;font-variant-numeric:tabular-nums}
.page-list .item h3{margin:0 0 2px;font-family:var(--v4-serif);font-size:17px;font-weight:400;
  line-height:1.5;color:var(--v4-ink);letter-spacing:0}
.page-list .item p{margin:0;font-family:var(--v4-serif);font-size:12.5px;line-height:1.65;
  color:var(--v4-meta);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* 桌面：筛选条吸顶（顶栏 + 科目条共 112px），长列表不必回滚换科目 */
@media (min-width:760px){
  .page-list .filters{position:sticky;top:112px;z-index:20;background:var(--v4-bg)}
}
/* 平板/手机：单栏；筛选一行横滑 */
@media (max-width:899px){
  .page-list .grid{grid-template-columns:minmax(0,1fr);gap:0}
}
@media (max-width:759px){
  .page-list .wrap{padding:0 18px}
  .page-list .list-sec{padding:20px 0 34px}
  .page-list .listhead h2{font-size:22px}
  .page-list .filters{gap:18px;flex-wrap:nowrap;overflow-x:auto;white-space:nowrap;
    scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .page-list .filters::-webkit-scrollbar{display:none}
  .page-list .chip{flex:0 0 auto;font-size:13.5px;padding:10px 0 8px}
  .page-list .item{padding:12px 0 11px}
  .page-list .item h3{font-size:16px}
  /* 窄屏一行放不下 43 字的摘要：放宽到两行，仍不换行撑破 */
  .page-list .item p{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;
    -webkit-box-orient:vertical;overflow:hidden}
}
