/* ═══════════ 考研英语真题精练 ═══════════ */
:root{
  --paper-w: 860px;
  --fs-base: 15px;
  --ink: #1a1a1a;
  --accent: #b42318;
  --hl: #fff3bf;
  --pop-bg: #fffdf5;
  --line: #d8d2c4;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  background:#6b6b6b url('') ;
  background:#78716c;
  font-family:"Times New Roman","SimSun",serif;
  color:var(--ink);
  font-size:var(--fs-base);
}

/* ── 顶部工具栏 ── */
#topbar{
  position:fixed;top:0;left:0;right:0;height:46px;z-index:100;
  display:flex;align-items:center;justify-content:space-between;
  background:#2b2b28;color:#f5f2ea;
  box-shadow:0 2px 8px rgba(0,0,0,.35);
  font-family:"Microsoft YaHei","PingFang SC",sans-serif;font-size:13px;
  padding:0 10px;
}
.tb-left,.tb-right{display:flex;align-items:center;gap:8px;min-width:0}
#tb-title{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:40vw}
.tb-btn{
  background:#44423c;color:#f5f2ea;border:1px solid #6a675e;border-radius:6px;
  padding:5px 10px;cursor:pointer;font-size:13px;font-family:inherit;
  display:inline-flex;align-items:center;gap:5px;white-space:nowrap;
}
.tb-btn:hover{background:#57544c}
.tb-btn.active{background:var(--accent);border-color:var(--accent)}
.tb-btn.small{padding:3px 8px;font-size:12px}
.badge{background:#e8b339;color:#3a2c00;border-radius:9px;padding:0 6px;font-size:11px;font-weight:700}
.mode-btn{font-weight:600}

/* ── 抽屉 ── */
#settings-drawer,#vocab-drawer{
  position:fixed;top:46px;right:0;bottom:0;width:330px;max-width:92vw;z-index:99;
  background:#fffdf6;border-left:3px solid #8a857a;box-shadow:-4px 0 16px rgba(0,0,0,.25);
  padding:16px;overflow-y:auto;font-family:"Microsoft YaHei",sans-serif;font-size:14px;
}
#settings-drawer h3,#vocab-drawer h3{margin:0 0 12px;font-size:16px}
.set-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:12px 0}
.set-row label{display:flex;gap:8px;align-items:center;cursor:pointer}
.set-tip{color:#777;font-size:12px;line-height:1.6;border-top:1px dashed #ccc;padding-top:10px}
.seg{display:inline-flex;border:1px solid #bbb;border-radius:6px;overflow:hidden}
.seg button{border:0;background:#f1ede2;padding:4px 10px;cursor:pointer;font-size:12px}
.seg button.active{background:#2b2b28;color:#fff}
.vd-head{display:flex;justify-content:space-between;align-items:center}
.vd-filter{display:flex;justify-content:space-between;align-items:center;margin:8px 0;color:#555}
.vd-empty{color:#999;text-align:center;margin-top:60px;line-height:2}
#vocab-list{list-style:none;margin:0;padding:0}
#vocab-list li{
  border:1px solid #e4ddcc;border-radius:8px;padding:8px 10px;margin-bottom:8px;background:#fff;
}
#vocab-list .vw{font-family:"Times New Roman";font-size:16px;font-weight:700;color:#222}
#vocab-list .vp{color:#888;font-size:12px;margin-left:6px}
#vocab-list .vs{font-size:12.5px;color:#555;margin:3px 0;font-family:"Microsoft YaHei"}
#vocab-list .vctx{font-size:12px;color:#999;font-style:italic;font-family:"Times New Roman"}
#vocab-list .vops{margin-top:5px;display:flex;gap:6px}
#vocab-list .vops button{font-size:11px;padding:2px 8px;border:1px solid #ccc;border-radius:5px;background:#faf8f0;cursor:pointer}
#vocab-list .mastered{opacity:.5}
#vocab-list .mastered .vw{text-decoration:line-through}

/* ── 主区域 ── */
#app{padding:62px 12px 60px}

/* 首页 */
#page-home{max-width:980px;margin:0 auto;font-family:"Microsoft YaHei",sans-serif}
.home-hero{text-align:center;color:#f5f2ea;padding:34px 10px 10px}
.home-hero h1{font-size:30px;margin:0 0 8px;letter-spacing:2px}
.home-hero p{margin:4px 0;color:#d8d3c8}
.hero-sub{font-size:13.5px;color:#bdb7aa !important}
.continue-bar{display:flex;justify-content:center;margin:14px 0 4px}
#btn-continue{
  background:linear-gradient(135deg,#c9a227,#e8b339);border:0;border-radius:10px;
  padding:12px 26px;font-size:15px;font-weight:700;cursor:pointer;color:#3a2c00;
  box-shadow:0 4px 14px rgba(0,0,0,.3);font-family:inherit;
}
.year-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(215px,1fr));gap:14px;margin-top:22px}
.year-card{
  background:#fffdf6;border-radius:10px;padding:14px 16px;cursor:pointer;
  border:2px solid transparent;box-shadow:0 3px 10px rgba(0,0,0,.25);
  transition:transform .12s, border-color .12s;position:relative;
}
.year-card:hover{transform:translateY(-3px);border-color:var(--accent)}
.year-card h2{margin:0;font-size:22px;font-family:"Times New Roman"}
.year-card .yc-sub{color:#888;font-size:12px;margin-top:2px}
.year-card .yc-prog{margin-top:8px;font-size:12px;color:#555}
.year-card .yc-bar{height:5px;background:#eee6d4;border-radius:3px;margin-top:5px;overflow:hidden}
.year-card .yc-bar i{display:block;height:100%;background:linear-gradient(90deg,#c9a227,#7aa643)}
.year-card .yc-graded{position:absolute;top:10px;right:12px;font-size:11px;color:#7aa643;font-weight:700}
.year-card .yc-voc{position:absolute;top:10px;right:12px;font-size:11px;color:#b42318;font-weight:700}

/* 试卷页布局 */
#page-paper{position:relative}
#sec-nav{
  position:fixed;left:10px;top:70px;width:132px;z-index:50;
  font-family:"Microsoft YaHei",sans-serif;font-size:12px;
}
#sec-nav a{
  display:block;padding:6px 8px;margin-bottom:4px;color:#e8e3d6;text-decoration:none;
  background:rgba(0,0,0,.25);border-radius:6px;border-left:3px solid transparent;
}
#sec-nav a.cur{border-left-color:var(--accent);background:rgba(0,0,0,.5);color:#fff}
@media (max-width:1160px){#sec-nav{display:none}}

/* ═══════════ 考卷本体 ═══════════ */
#paper-wrap{display:flex;justify-content:center}
#paper{
  background:#fdfcf7;width:100%;max-width:var(--paper-w);
  min-height:60vh;padding:46px 52px 70px;
  box-shadow:0 6px 30px rgba(0,0,0,.45);
  line-height:1.75;
}
#paper.zoom-s{--fs-base:13.5px;font-size:13.5px}
#paper.zoom-m{--fs-base:15px;font-size:15px}
#paper.zoom-l{--fs-base:17px;font-size:17px}

.exam-secret{font-family:"SimHei","Microsoft YaHei";font-weight:700;letter-spacing:2px;font-size:15px}
.exam-title{text-align:center;font-family:"SimHei","Microsoft YaHei";font-weight:700;font-size:21px;margin:18px 0 6px;letter-spacing:1px}
.exam-subtitle{text-align:center;font-family:"SimHei","Microsoft YaHei";font-weight:700;font-size:16px;letter-spacing:6px;margin-bottom:4px}
.exam-code{text-align:center;font-family:"SimHei","Microsoft YaHei";font-size:14px;margin-bottom:14px}
.exam-notice{
  border:1.6px solid #333;padding:10px 16px;margin:14px 0;font-size:13px;line-height:1.8;
  font-family:"SimSun","Microsoft YaHei";
}
.exam-notice h4{text-align:center;margin:2px 0 8px;font-size:14px;letter-spacing:2px}
.exam-notice p{margin:3px 0}
.exam-name-row{
  display:flex;gap:24px;justify-content:center;font-family:"SimHei";font-size:13.5px;
  border:1.6px solid #333;border-top:0;padding:8px 10px;flex-wrap:wrap;
}

.exam-section{margin-top:34px}
.exam-sec-head{
  font-family:"Times New Roman","SimHei";font-weight:700;font-size:16.5px;
  text-align:center;margin-bottom:14px;letter-spacing:.5px;
}
.exam-part-head{
  font-family:"Times New Roman","SimHei";font-weight:700;font-size:15px;margin:22px 0 8px;
}
.directions{
  font-family:"Times New Roman";font-size:.95em;margin:8px 0 14px;
}
.directions b{letter-spacing:1px}
.passage p{margin:0 0 2px;text-align:justify;text-indent:2.2em}
.passage p.noindent{text-indent:0}

/* 完形空位 */
.blank{
  display:inline-block;min-width:34px;border-bottom:1.4px solid #333;
  text-align:center;font-weight:700;color:var(--accent);
  font-family:"Times New Roman";padding:0 4px;line-height:1.2;cursor:default;
}
.blank.choice{cursor:pointer}
.blank.choice:hover{background:var(--hl)}
.blank.answered{color:#0a6b3d}
.blank.wrong{color:var(--accent);background:#ffe3de}

/* 完形选项区（真卷格式：1. [A]… [B]…） */
.cloze-options{columns:2;column-gap:34px;margin:18px 0 6px;font-family:"Times New Roman";font-size:.95em}
.cloze-options .copt{
  break-inside:avoid;margin-bottom:9px;
}
.copt .n{font-weight:700}
.opt-word{cursor:pointer;padding:0 2px;border-radius:3px}
.opt-word:hover{background:var(--hl)}
.mode-practice .opt-word{cursor:pointer}
.opt-word.picked{background:#ffe9a8;font-weight:700}
.opt-word.picked.right{background:#c9efc4}
.opt-word.picked.wrongx{background:#ffcdc7;text-decoration:line-through}

/* 阅读题 */
.rq{margin:14px 0 18px;font-family:"Times New Roman"}
.rq .rq-stem{font-weight:400;margin-bottom:4px}
.ropt{display:block;margin:2px 0 2px 1.6em;padding:1px 4px;cursor:pointer;border-radius:3px}
.ropt:hover{background:var(--hl)}
.ropt.picked{background:#ffe9a8;font-weight:700}
.ropt.picked.right{background:#c9efc4}
.ropt.picked.wrongx{background:#ffcdc7}
.ropt .key{font-weight:700}

/* 新题型选项区 */
.partb-options{margin:14px 0;font-family:"Times New Roman"}
.partb-options .pbo{margin:8px 0;cursor:pointer;padding:2px 4px;border-radius:3px}
.partb-options .pbo:hover{background:var(--hl)}
.partb-options .pbo.picked{background:#ffe9a8;font-weight:700}
.partb-options .pbo.used{opacity:.45}

/* Part C 划线句 */
.underline-seg{border-bottom:1.2px solid #333;cursor:pointer}
.underline-seg:hover{background:var(--hl)}
.trans-ref{background:#f4f8ff;border:1px solid #d5e2f7;border-radius:6px;padding:8px 12px;margin:6px 0 14px;font-family:"SimSun";font-size:.92em;line-height:1.9}
.trans-ref b{font-family:"SimHei"}

/* 写作 */
.writing-prompt{font-family:"Times New Roman";margin:6px 0 12px}
.writing-prompt p{text-indent:2.2em;margin:0 0 2px}
.answer-area{
  border:1.6px solid #555;height:190px;margin:6px 0 22px;position:relative;
  background:repeating-linear-gradient(transparent,transparent 27px,#d9d2bf 27px,#d9d2bf 28px);
}
.answer-area textarea{
  width:100%;height:100%;border:0;background:transparent;resize:none;
  font-family:"Times New Roman";font-size:inherit;line-height:28px;padding:6px 10px;outline:none;
}

/* 解析 */
.explain{
  margin-top:6px;background:#f7f5ec;border-left:3px solid #c9a227;
  padding:6px 10px;font-family:"Microsoft YaHei";font-size:13px;color:#444;line-height:1.8;
  white-space:pre-wrap;
}
.ans-key-btn{
  font-family:"Microsoft YaHei";font-size:12px;border:1px solid #bbb;background:#faf8f0;
  border-radius:5px;padding:2px 8px;cursor:pointer;margin-top:6px;
}

/* 答题卡 & 判分条 */
.practice-bar{
  position:sticky;top:46px;z-index:40;display:flex;gap:10px;align-items:center;
  background:#2f4f3e;color:#fff;padding:8px 14px;border-radius:0 0 10px 10px;
  font-family:"Microsoft YaHei";font-size:13px;margin-bottom:18px;flex-wrap:wrap;
}
.practice-bar .score{font-weight:700;color:#ffd765}
.pb-btn{background:#4a735d;border:0;color:#fff;border-radius:6px;padding:5px 12px;cursor:pointer;font-size:13px}
.pb-btn:hover{background:#5b8a70}
.answer-sheet{
  background:#fffdf4;border:1.6px solid #333;padding:10px 14px;margin:16px 0;
  font-family:"Microsoft YaHei";font-size:13px;
}
.answer-sheet h4{margin:0 0 8px;text-align:center;font-size:14px;letter-spacing:2px}
.as-grid{display:flex;flex-wrap:wrap;gap:6px 12px}
.as-item{display:flex;align-items:center;gap:4px}
.as-item .n{font-weight:700;font-family:"Times New Roman"}
.as-item button{
  border:1px solid #999;background:#fff;border-radius:4px;min-width:26px;height:22px;
  cursor:pointer;font-family:"Times New Roman";font-size:12px;padding:0 3px;
}
.as-item button.sel{background:#2f4f3e;color:#fff;border-color:#2f4f3e}
.as-item button.right{background:#3f8f4f;color:#fff}
.as-item button.wrongx{background:#c0392b;color:#fff}

/* ── 查词气泡 ── */
#pop{
  position:absolute;z-index:200;max-width:340px;
  background:var(--pop-bg);border:1px solid #b9ad8f;border-radius:8px;
  box-shadow:0 6px 24px rgba(0,0,0,.3);font-family:"Microsoft YaHei";
  padding:10px 12px;font-size:13.5px;line-height:1.65;
}
#pop-body .pw{font-family:"Times New Roman";font-size:18px;font-weight:700}
#pop-body .pp{color:#999;font-family:"Times New Roman";font-size:12.5px;margin-left:6px}
#pop-body .pc{color:#c0392b;margin-top:3px}
#pop-body .pc i{color:#555;font-style:normal;font-family:"Times New Roman"}
#pop-body .online-line{color:#333}
#pop-body .loading{color:#999}
#pop-actions{display:flex;gap:6px;margin-top:8px}
#pop-actions button{
  border:1px solid #c6bda4;background:#fff;border-radius:5px;font-size:12px;
  padding:3px 8px;cursor:pointer;font-family:inherit;
}
#pop-actions button:hover{background:#f4eedd}
#pop-actions button.on{background:#2f4f3e;color:#fff;border-color:#2f4f3e}

/* ═══════════ 行内批注（人类阅读式注释） ═══════════ */
/* 被标注的词：荧光笔高亮 */
.anno-mark, .anno-mark-more{
  background:linear-gradient(transparent 55%, #ffe58a 55%, #ffe58a 92%, transparent 92%);
  border-radius:2px;
}
.anno-mark-more{cursor:help}

/* 词注释块：紧跟词后，行内小字（像铅笔小注）——精简版：词+首义项 */
.anno{
  display:inline-block;vertical-align:baseline;
  font-family:"Microsoft YaHei","PingFang SC",sans-serif;
  font-size:.76em;line-height:1.4;
  color:#8a5a00;background:#fff8dc;
  border:1px solid #e8d48a;border-left:2.5px solid #d4a017;
  border-radius:4px;padding:0 5px;margin:0 2px;
  cursor:pointer;white-space:nowrap;break-inside:avoid;
  box-shadow:1px 1px 3px rgba(140,100,20,.10);
  transition:box-shadow .12s;
}
.anno:hover{box-shadow:1px 2px 6px rgba(140,100,20,.25)}
.anno .anno-w{font-family:"Times New Roman";font-weight:700;color:#5a3e00}
.anno .anno-body{color:#6b4e00}
.anno .anno-pos{color:#997722;font-style:normal;font-family:"Times New Roman"}
.anno .anno-lemma{color:#a08850;font-size:.9em;margin-left:3px}
.anno.pend{opacity:.65;border-style:dashed}

/* 句注释块：段尾整行（像页边译文） */
.anno.anno-sentence{
  display:block;margin:6px 0 2px;padding:4px 10px;
  background:#f2f7ff;border:1px solid #c9dcf5;border-left:3px solid #5b8ac9;
  color:#2c4a75;
}
.anno.anno-sentence .anno-tag{
  display:inline-block;background:#5b8ac9;color:#fff;border-radius:4px;
  font-size:.85em;padding:0 5px;margin-right:7px;font-weight:700;
}
.anno.anno-sentence .anno-body{color:#2c4a75;font-size:1.05em}

/* 打印时保留批注（像打印批注版试卷） */
@media print{
  .anno{box-shadow:none}
}
/* 生词标记 */
.vocab-mark{border-bottom:2px dotted #d17a00;background:rgba(255,214,90,.14);cursor:pointer}
.word{cursor:pointer;border-radius:2px}
.word:hover{background:var(--hl)}
.word.core-mark::after{content:"";display:inline-block;width:4px;height:4px;border-radius:50%;background:#e08a00;vertical-align:super;margin-left:1px}

/* Toast */
#toast{
  position:fixed;bottom:34px;left:50%;transform:translateX(-50%);z-index:300;
  background:#222;color:#fff;padding:9px 18px;border-radius:8px;font-size:13.5px;
  font-family:"Microsoft YaHei";box-shadow:0 4px 16px rgba(0,0,0,.4);
}

/* ── 自测模式 ── */
#review-mask{
  position:fixed;inset:0;z-index:250;background:rgba(20,18,12,.72);
  display:flex;align-items:center;justify-content:center;
}
.review-card{
  background:#fffdf6;border-radius:14px;padding:26px 30px;max-width:520px;width:92vw;
  font-family:"Microsoft YaHei";box-shadow:0 10px 40px rgba(0,0,0,.5);text-align:center;
}
.review-card .rw{font-family:"Times New Roman";font-size:30px;font-weight:700}
.review-card .rp{color:#999;font-family:"Times New Roman";margin:2px 0 10px}
.review-card .rs{font-size:15px;color:#333;margin-bottom:16px}
.review-card .rb{display:flex;gap:10px;justify-content:center}

/* ═══════════ 打印 ═══════════ */
@media print{
  body{background:#fff}
  #topbar,#sec-nav,#settings-drawer,#vocab-drawer,#pop,#toast,.practice-bar,.answer-sheet,.ans-key-btn,#review-mask{display:none !important}
  #app{padding:0}
  #paper{box-shadow:none;max-width:100%;padding:10mm 12mm}
  .answer-area{border-color:#999}
}

/* ═══════════ 双栏排版（真卷还原） ═══════════
   真实试卷正文为双栏。宽屏下 passage/题目区域启用 column-count:2，
   窄屏自动退回单栏。标题、Directions、选项区保持通栏。 */
@media (min-width:900px){
  #paper{--paper-w:980px;padding:46px 56px 70px}
  .passage{column-count:2;column-gap:44px;column-rule:0}
  .passage p{break-inside:avoid}
  .rq{break-inside:avoid}
  .partb-options{column-count:2;column-gap:44px}
  .partb-options .pbo{break-inside:avoid}
  .writing-prompt{column-count:1}
}
@media (min-width:1400px){
  #paper{--paper-w:1080px}
}

/* 英二卡片角标（首页区分英一/英二） */
.year-card.en2{border-left:4px solid #1d6fa5}
.year-card.en2 h2::after{
  content:"英二";font-size:10px;color:#fff;background:#1d6fa5;
  border-radius:4px;padding:1px 5px;margin-left:7px;vertical-align:3px;
  font-family:"Microsoft YaHei";font-weight:400;letter-spacing:1px;
}
.year-card:not(.en2) h2::after{
  content:"英一";font-size:10px;color:#fff;background:#b42318;
  border-radius:4px;padding:1px 5px;margin-left:7px;vertical-align:3px;
  font-family:"Microsoft YaHei";font-weight:400;letter-spacing:1px;
}

/* 英二 Part B 题干行（人名列表） */
.partb-q{font-family:"Times New Roman";font-weight:700;margin:4px 0}

/* 图表数据（写作 B prompt 里的数字行） */
.writing-prompt .chart-data{
  font-family:"Microsoft YaHei";font-size:.9em;color:#333;
  background:#f7f5ec;border:1px dashed #c6bda4;border-radius:6px;
  padding:8px 12px;margin:6px 0;text-indent:0 !important;
}
