/* 初中英语语法 · 重构逆袭版 —— 手绘笔记风公共样式 */
@font-face{font-family:"Hand";src:url(fonts/zcool-kuaile.woff2) format("woff2");font-display:swap}
@font-face{font-family:"Round";src:url(fonts/fredoka.woff2) format("woff2");font-weight:300 700;font-display:swap}
@font-face{font-family:"Pen";src:url(fonts/kalam-bold.woff2) format("woff2");font-weight:700;font-display:swap}

:root{
  --paper:#fbf8f2; --ink:#1d2433; --sub:#5d6675; --line:#e8e1d3;
  --green:#1f9a6e; --green-d:#15724f; --green-s:#e3f5ec;
  --orange:#ff7a2f; --orange-s:#fff0e3;
  --blue:#2f6fde; --blue-s:#e8f0ff;
  --red:#ee4b4b; --red-s:#ffecec;
  --purple:#7a4fd8; --purple-s:#f1eaff;
  --yellow:#ffd84d; --yellow-s:#fff7d1;
  --navy:#2a3547;
  /* 旧名兼容（目录页用） */
  --pri:var(--green-d); --pri-soft:var(--green-s); --acc:var(--orange); --acc-soft:var(--orange-s);
  --ok:var(--green); --ok-soft:var(--green-s); --blue-soft:var(--blue-s); --purple-soft:var(--purple-s);
  --hl:linear-gradient(transparent 58%,#ffe46b 58%,#ffe46b 92%,transparent 92%);
  --sans:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei","Noto Sans SC",sans-serif;
  --round:"Round","Segoe UI",Arial,var(--sans);
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;color:var(--ink);font:17px/1.85 var(--sans);
  background-color:var(--paper);
  background-image:linear-gradient(rgba(120,140,170,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(120,140,170,.07) 1px,transparent 1px);
  background-size:24px 24px}
img{max-width:100%;display:block}
a{color:var(--green-d)}
.en{font-family:var(--round);font-weight:600;letter-spacing:.1px}
.pen{font-family:"Pen",var(--round);font-weight:700}
.hand{font-family:"Hand",var(--sans);font-weight:400}
.hl{background:var(--hl);padding:0 2px}
b,strong{font-weight:800}

/* ---------- 顶栏 ---------- */
.topbar{position:sticky;top:0;z-index:20;background:rgba(251,248,242,.93);backdrop-filter:blur(8px);border-bottom:1.5px dashed var(--line)}
.topbar .in{max-width:980px;margin:0 auto;padding:10px 16px;display:flex;align-items:center;gap:10px}
.topbar .brand{flex:1;text-align:center;font-family:"Hand";font-size:19px;color:var(--green-d);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pill-btn{display:inline-flex;align-items:center;gap:6px;border-radius:12px;padding:7px 14px;font:700 15px var(--sans);
  text-decoration:none;cursor:pointer;border:1.5px solid transparent;white-space:nowrap}
.pill-btn.back{background:var(--green-s);color:var(--green-d)}
.pill-btn.wb{background:var(--orange-s);color:#c9571a;border-color:#ffd2b0}
.pill-btn.pr{background:#fff;color:var(--green-d);border-color:#bfe6d4}

.wrap{max-width:980px;margin:0 auto;padding:22px 16px 70px}

/* ---------- 手绘元素 ---------- */
.tag{display:inline-block;font-family:"Hand";color:#fff;background:var(--green);padding:4px 18px 5px;font-size:22px;line-height:1.3;
  border-radius:14px 6px 16px 8px;transform:rotate(-1.5deg);box-shadow:2px 3px 0 rgba(0,0,0,.08)}
.tag.orange{background:var(--orange)} .tag.blue{background:var(--blue)} .tag.purple{background:var(--purple)} .tag.red{background:var(--red)}
.under{position:relative;display:inline-block}
.under:after{content:"";position:absolute;left:-2%;right:-2%;bottom:-.08em;height:.28em;border-radius:40% 60% 50% 45%;background:currentColor;opacity:.28;transform:rotate(-1deg)}
.chip{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1.5px solid var(--line);border-radius:12px;padding:5px 12px;font-size:15px;font-weight:600}
.lab{display:inline-block;border-radius:8px;padding:1px 9px;font-weight:800;font-size:.9em}
.lab.n{background:var(--blue-s);color:var(--blue)} .lab.v{background:var(--red-s);color:var(--red)}
.lab.a{background:var(--orange-s);color:#d65e17} .lab.d{background:var(--purple-s);color:var(--purple)}
.lab.g{background:var(--green-s);color:var(--green-d)} .lab.y{background:var(--yellow-s);color:#9a6a00}

/* ---------- 头图 ---------- */
.hero{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:10px;border-radius:28px;overflow:hidden;
  background:linear-gradient(120deg,#e6f6ee 0%,#f3fbf6 45%,#fff6e8 100%);border:2px solid #d6eee2;padding:26px 10px 22px 30px;position:relative}
.hero h1{margin:14px 0 10px;font-size:46px;line-height:1.22;font-weight:900;letter-spacing:1px}
.hero h1 .o{color:var(--orange);display:inline-block;position:relative}
.hero h1 .o:after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:9px;border-radius:50%;background:var(--orange);opacity:.35;transform:rotate(-1.2deg)}
.hero .lead{font-size:19px;font-weight:600;margin:0 0 16px}
.hero .meta{display:flex;flex-wrap:wrap;gap:8px}
.hero .pic{align-self:end;margin:-10px -10px -22px 0}

/* 两张并排小卡 */
.duo{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:18px 0}
.mini{border-radius:22px;padding:18px 20px;display:grid;grid-template-columns:118px 1fr;gap:12px;align-items:center;border:2px solid transparent}
.mini h3{margin:0 0 4px;font-size:21px;font-weight:900}
.mini p,.mini ol{margin:0;font-size:16px}
.mini ol{padding-left:0;list-style:none;counter-reset:g}
.mini ol li{counter-increment:g;margin:3px 0;padding-left:30px;position:relative}
.mini ol li:before{content:counter(g);position:absolute;left:0;top:4px;width:22px;height:22px;border-radius:50%;background:var(--orange);color:#fff;font:800 13px/22px var(--round);text-align:center}
.mini.blue{background:var(--blue-s);border-color:#d3e2ff}
.mini.peach{background:var(--orange-s);border-color:#ffdcc1}

/* ---------- 模块 ---------- */
.mod{border-radius:30px;padding:26px 26px 28px;margin:26px 0;border:2px solid transparent;position:relative}
.mod.t-yellow{background:#fff9e3;border-color:#f7e7a8}
.mod.t-green{background:#eef8f2;border-color:#cfeadc}
.mod.t-blue{background:#edf4ff;border-color:#d3e2ff}
.mod.t-peach{background:#fff3ea;border-color:#ffdcc4}
.mod.t-purple{background:#f5f0ff;border-color:#e2d6ff}
.mod-head{display:flex;align-items:center;flex-wrap:wrap;gap:6px 16px;margin-bottom:6px}
.mod-head h2{margin:0;font-size:31px;line-height:1.3;font-weight:900}
.mod-head h2 .mark{background:var(--hl)}
.mod-sub{color:var(--sub);margin:4px 0 16px;font-size:16px}
.mod p{margin:10px 0}
.card{background:#fff;border-radius:20px;padding:18px 20px;border:1.5px solid var(--line);box-shadow:0 3px 0 rgba(30,40,60,.04)}

/* 模块一：三张对比卡 */
.tri{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:12px 0 16px}
.tri .c{border-radius:22px;overflow:hidden;background:#fff;border:2px solid var(--line);text-align:center;display:flex;flex-direction:column}
.tri .c .ph{height:190px;display:flex;align-items:flex-end;justify-content:center}
.tri .c .ph img{max-height:190px;width:auto}
.tri .c.pink .ph{background:#ffeef0} .tri .c.lav .ph{background:#f1ebff} .tri .c.mint .ph{background:#e6f6ee}
.tri .zh{font-size:21px;font-weight:900;margin:12px 8px 0}
.tri .arr{color:var(--sub);line-height:1}
.tri .enl{font-family:var(--round);font-size:18px;font-weight:600;padding:0 8px}
.tri .big{font-family:"Pen";font-size:44px;line-height:1.1;display:block}
.tri .cap{margin:8px auto 16px;border-radius:999px;padding:4px 14px;font-size:15px;font-weight:700}
.pink .big{color:#ef4f6a} .pink .cap{background:#ffe3e8;color:#c93855}
.lav .big{color:var(--purple)} .lav .cap{background:#ebe2ff;color:var(--purple)}
.mint .big{color:var(--green)} .mint .cap{background:#d6f1e3;color:var(--green-d)}
.keyline{display:flex;align-items:center;gap:14px;background:var(--yellow-s);border:2px solid #f5e08c;border-radius:20px;padding:12px 20px;font-size:20px;font-weight:900}
.keyline img{width:72px;flex:none}
.keyline em{font-style:normal;color:var(--orange)}

/* 模块二：四工种 */
.roles{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:10px 0 18px}
.role{border-radius:24px;padding:20px 20px 18px;display:grid;grid-template-columns:1fr 46%;grid-template-rows:auto 1fr auto;gap:0 8px;border:2px solid transparent;min-height:250px}
.role .nm{font-size:40px;font-weight:900;line-height:1.1;grid-column:1}
.role .nm small{font-family:"Pen";font-size:30px;margin-left:6px}
.role .q{grid-column:1;font-size:17px;font-weight:600;margin-top:10px}
.role .pic{grid-column:2;grid-row:1/3;align-self:center}
.role .ex{grid-column:1/3;margin-top:12px;border-radius:14px;padding:7px 14px;font-family:var(--round);font-size:18px;font-weight:600}
.role.n{background:#eaf2ff;border-color:#cfe0ff} .role.n .nm{color:var(--blue)} .role.n .ex{background:#d9e7ff;color:#23519f}
.role.v{background:#fff0ef;border-color:#ffd6d3} .role.v .nm{color:var(--red)} .role.v .ex{background:#ffdcd9;color:#b22f2f}
.role.a{background:#fff3e6;border-color:#ffdcbc} .role.a .nm{color:var(--orange)} .role.a .ex{background:#ffe2c6;color:#b4520f}
.role.d{background:#f4eeff;border-color:#e0d3ff} .role.d .nm{color:var(--purple)} .role.d .ex{background:#e6dbff;color:#5b38ad}

/* 拆句积木 */
.build{background:#fff;border-radius:24px;border:2px solid #cfeadc;padding:18px 20px}
.build h3{margin:0 0 12px;display:inline-block;font-family:"Hand";font-weight:400;font-size:22px;background:var(--hl)}
.blocks{display:flex;flex-wrap:wrap;gap:10px}
.blk{flex:1 1 90px;text-align:center}
.blk b{display:block;font-family:var(--round);font-size:34px;font-weight:700;border-radius:14px;padding:6px 8px;line-height:1.3}
.blk i{display:inline-block;font-style:normal;font-size:14px;font-weight:700;margin-top:6px;border-radius:8px;padding:1px 8px}
.blk.x b{background:#e9f4ee;color:#274235} .blk.x i{background:#e9f4ee;color:#557263}
.blk.a b{background:#ffe7d2;color:#e2641a} .blk.a i{background:#fff0e3;color:#d65e17}
.blk.n b{background:#dde9ff;color:#1f4fb0} .blk.n i{background:#eaf1ff;color:var(--blue)}
.blk.v b{background:#ffdcdc;color:#d23737} .blk.v i{background:#ffecec;color:var(--red)}
.blk.d b{background:#ebe1ff;color:#5b34b8} .blk.d i{background:#f3edff;color:var(--purple)}
.bulb{display:flex;align-items:center;gap:10px;margin-top:14px;background:var(--yellow-s);border-radius:999px;padding:8px 18px 8px 8px;font-weight:700}
.bulb img{width:46px;flex:none}
.bulb .a{color:var(--orange)} .bulb .d{color:var(--purple)}

/* 模块三：配角列表 */
.cast{display:flex;flex-direction:column;gap:10px;margin-top:8px}
.cast .row{display:grid;grid-template-columns:78px 150px 1fr auto;align-items:center;gap:12px;background:#fff;border-radius:18px;padding:6px 16px 6px 8px;border:1.5px solid var(--line)}
.cast img{width:70px;height:62px;object-fit:contain}
.cast .nm{font-size:22px;font-weight:900}
.cast .nm small{font-family:"Pen";font-size:19px;margin-left:4px}
.cast .ex{font-family:var(--round);font-weight:600;border-radius:999px;padding:3px 16px;white-space:nowrap}
.cast .r1 .nm{color:#d8395a} .cast .r1 .ex{background:#ffe6ec;color:#b72c49}
.cast .r2 .nm{color:#c7780b} .cast .r2 .ex{background:#fff1cf;color:#8f5a00}
.cast .r3 .nm{color:var(--blue)} .cast .r3 .ex{background:#e2ecff;color:#23519f}
.cast .r4 .nm{color:var(--green)} .cast .r4 .ex{background:#dcf3e7;color:var(--green-d)}
.cast .r5 .nm{color:var(--purple)} .cast .r5 .ex{background:#ece4ff;color:#5b38ad}
.aside{margin-top:14px;color:var(--sub);font-size:16px}

/* 模块四：三招步骤卡 */
.step{display:grid;grid-template-columns:auto 1fr 250px;gap:6px 18px;align-items:center;background:#fff;border-radius:24px;border:1.5px solid var(--line);padding:18px 20px;margin:12px 0}
.step .no{font-family:"Pen";font-size:78px;line-height:.9;align-self:start}
.step.s1 .no{color:var(--orange)} .step.s2 .no{color:var(--blue)} .step.s3 .no{color:var(--green)}
.step h3{margin:0 0 6px;font-size:26px;font-weight:900;display:inline-block;background:var(--hl)}
.step ul{list-style:none;margin:0;padding:0}
.step li{margin:6px 0;font-size:17px}
.step li .to{color:var(--sub);margin:0 6px}
.step .note{margin-top:8px;background:var(--yellow-s);border-radius:12px;padding:6px 12px;font-size:15px}
.suf{display:inline-block;font-family:var(--round);font-weight:700;border-radius:10px;padding:1px 10px;margin:2px 2px}
.suf.p{background:#ffe0ea;color:#c73868} .suf.y{background:#fff0bf;color:#8f6200} .suf.b{background:#dfeaff;color:#2854a8}
.warn{display:grid;grid-template-columns:86px 1fr;gap:14px;align-items:center;background:#fff1ee;border:2px solid #ffd0c7;border-radius:22px;padding:14px 20px;margin:14px 0}
.warn img{width:80px}
.warn h4{margin:0 0 2px;font-size:20px;color:#d63a2f;font-weight:900}
.warn .words{font-family:"Pen";font-size:28px;line-height:1.3}

/* 模块五：变身卡 */
.morph{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:12px 0}
.mcard{background:#fff;border-radius:20px;border:1.5px solid var(--line);padding:14px 18px}
.mcard .rule{display:flex;align-items:center;gap:10px;font-weight:900;font-size:18px}
.mcard .rule .k{width:32px;height:32px;border-radius:50%;color:#fff;text-align:center;font:800 17px/32px var(--round);flex:none}
.mcard:nth-child(1) .k{background:var(--green)} .mcard:nth-child(2) .k{background:var(--blue)} .mcard:nth-child(3) .k{background:var(--orange)} .mcard:nth-child(4) .k{background:var(--purple)}
.mcard .rule span.d{background:var(--hl)}
.mcard .ch{font-family:var(--round);font-size:25px;font-weight:600;margin:6px 0 0 42px;line-height:1.5}
.mcard .ch em{font-style:normal;color:var(--orange);font-weight:700}
.mcard .ch .ar{color:#f39a4b;margin:0 8px}
.mcard .ch small{font-family:var(--sans);font-size:14px;color:var(--sub);font-weight:600}
.odd-title{margin:20px 0 10px}
.odd{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.odd .o{background:#fff;border-radius:20px;border:1.5px solid var(--line);text-align:center;padding:10px 8px 12px}
.odd .o img{height:92px;width:auto;margin:0 auto}
.odd .o .w{font-family:var(--round);font-size:20px;font-weight:700}
.odd .o .w em{font-style:normal;color:var(--orange)}
.odd .o .s{font-size:14px;font-weight:700;color:var(--sub);margin-top:2px}

/* 模块六：诊断单 */
.mod6grid{display:block}
.case{background:#fff;border-radius:22px;border:1.5px solid var(--line);padding:16px 20px;margin:0 0 14px}
.case .hd{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:19px;font-weight:900;margin-bottom:6px}
.case .hd .hot{margin-left:auto;font-family:"Hand";font-weight:400;color:#fff;background:var(--red);border-radius:10px 4px 10px 4px;padding:1px 12px;transform:rotate(2deg);font-size:17px}
.case .hd .hot.p{background:var(--purple)}
.line{display:flex;align-items:flex-start;gap:10px;margin:6px 0;font-size:18px}
.line .ic{flex:none;width:26px;height:26px;border-radius:50%;color:#fff;font:900 16px/26px var(--sans);text-align:center;margin-top:3px}
.line.bad .ic{background:var(--red)} .line.good .ic{background:var(--green)} .line.why .ic{background:#ffb13b}
.line.bad .s,.line.good .s{font-family:var(--round);font-size:23px;font-weight:600}
.line.bad .s .x{color:var(--red);text-decoration:line-through;text-decoration-thickness:2.5px}
.line.good .s .ok{background:#c9f0d9;border-radius:6px;padding:0 4px;color:var(--green-d)}
.line.why{background:#fff6e5;border-radius:14px;padding:8px 12px}
.line.why .s{font-size:16px}
.cmp{background:var(--green-s);border-radius:14px;padding:10px 14px;margin-top:10px;font-size:16px}

/* 模块七：练习 */
.mod7grid{display:block}
.quiz{background:#fff;border-radius:22px;border:1.5px solid var(--line);padding:18px 20px;margin:0 0 14px;position:relative}
.quiz .qt{display:inline-block;background:#efe8ff;color:var(--purple);font-weight:800;border-radius:10px;padding:2px 12px;font-size:15px}
.quiz .ask{margin:8px 0 2px;font-size:16px;color:var(--sub)}
.quiz .stem{font-family:var(--round);font-size:26px;font-weight:600;margin:6px 0 12px}
.opts{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.opt{font:600 19px var(--round);border:2px solid transparent;border-radius:14px;padding:10px 12px;cursor:pointer;text-align:center;color:var(--ink)}
.opt:nth-child(1){background:#e8f1ff} .opt:nth-child(2){background:#e5f6ec} .opt:nth-child(3){background:#f0eaff} .opt:nth-child(4){background:#fff4d8}
.opt:hover{border-color:#b8c6dc}
.opt.right{background:#c9f0d9!important;border-color:var(--green)}
.opt.wrong{background:#ffdcdc!important;border-color:var(--red);text-decoration:line-through}
.reveal{display:inline-flex;align-items:center;gap:8px;margin-top:14px;border:0;border-radius:999px;background:var(--orange);color:#fff;font:800 17px var(--sans);padding:10px 26px;cursor:pointer;box-shadow:0 4px 0 #d9601c}
.reveal:active{transform:translateY(2px);box-shadow:0 2px 0 #d9601c}
.ans{display:none;margin-top:12px;background:var(--orange-s);border-radius:16px;padding:12px 16px;font-size:16px}
.ans.show{display:block}
.ans b.k{color:var(--green-d);font-size:18px}
.cheer{align-self:end}

/* 考前小抄 */
.cheat{background:var(--navy);border-radius:28px;padding:34px 26px 26px;margin:30px 0 20px;color:#fff;position:relative;
  background-image:radial-gradient(circle at 12px 12px,#fbf8f2 5px,transparent 6px);background-size:44px 24px;background-repeat:repeat-x;background-position:10px 8px}
.cheat .top{display:flex;align-items:center;gap:14px;margin-bottom:12px}
.cheat .top img{width:78px}
.cheat h2{margin:0;font-family:"Hand";font-weight:400;font-size:40px;line-height:1.1}
.cheat h2 span{color:var(--yellow)}
.cheat .sub{opacity:.75;font-family:"Hand";font-size:18px}
.cheat .rows{display:flex;flex-direction:column;gap:9px}
.cheat .r{display:grid;grid-template-columns:120px 1fr;background:#fff;color:var(--ink);border-radius:12px;overflow:hidden}
.cheat .r>b{display:flex;align-items:center;padding:8px 12px;font-size:16px}
.cheat .r span{padding:8px 14px;font-size:16px;font-weight:600}
.cheat .r:nth-child(1)>b{background:#d6f1e3;color:var(--green-d)} .cheat .r:nth-child(2)>b{background:#ffe6c7;color:#b4520f}
.cheat .r:nth-child(3)>b{background:#dfeaff;color:#23519f} .cheat .r:nth-child(4)>b{background:#ffe0e0;color:#c23434}
.cheat .r:nth-child(5)>b{background:#ece4ff;color:#5b38ad}

/* 下一讲 */
.next{display:grid;grid-template-columns:90px 1fr 190px;gap:16px;align-items:center;border-radius:26px;padding:18px 22px;
  background:linear-gradient(110deg,#fff8dc,#eef8e8);border:2px solid #efe3a8}
.next h3{margin:0;font-size:26px;font-weight:900}
.next p{margin:4px 0 10px;color:var(--sub)}
.go{display:inline-flex;align-items:center;gap:8px;background:var(--green);color:#fff;text-decoration:none;font-weight:800;border-radius:999px;padding:8px 24px;box-shadow:0 4px 0 var(--green-d)}
.pager{display:flex;gap:12px;margin-top:18px}
.pager a{flex:1;background:#fff;border:1.5px solid var(--line);border-radius:16px;padding:12px 16px;text-decoration:none;color:var(--ink);font-size:14px}
.pager a b{font-size:16px}
.pager .r{text-align:right}
.foot{text-align:center;color:var(--sub);font-size:13px;margin-top:26px;font-family:"Hand"}

/* ---------- 手机 ---------- */
@media (max-width:760px){
  body{font-size:16px}
  .topbar .brand{display:none}
  .topbar .in{justify-content:space-between}
  .hero{grid-template-columns:1fr;padding:22px 20px 0}
  .hero h1{font-size:34px}
  .hero .pic{margin:6px -20px 0}
  .duo,.roles,.morph{grid-template-columns:1fr}
  .mini{grid-template-columns:72px 1fr;padding:14px}
  .mini h3{font-size:18px}
  .tri{grid-template-columns:1fr}
  .tri .c .ph{height:170px}
  .mod{padding:20px 16px 22px;border-radius:24px}
  .mod-head h2{font-size:24px}
  .role{min-height:0}
  .role .nm{font-size:32px}
  .cast .row{grid-template-columns:58px 1fr;grid-template-rows:auto auto}
  .cast img{width:54px;grid-row:1/3}
  .cast .ex{justify-self:start}
  .cast .ds{display:none}
  .step{grid-template-columns:auto 1fr}
  .step .pic{display:none}
  .odd{grid-template-columns:1fr 1fr}
  .mod6grid,.mod7grid{grid-template-columns:1fr}
  .mod6grid .side,.cheer{display:none}
  .next{grid-template-columns:60px 1fr}
  .next .blocks-pic{display:none}
  .cheat .r{grid-template-columns:1fr}
  .blk b{font-size:26px}
  .keyline{font-size:17px}
}

/* ---------- 了解就行（默认折叠）+ 小自测 · 9/30 统一修订 ---------- */
details.more{background:#fff;border:2px dashed #d9cfbb;border-radius:18px;padding:0 18px;margin:16px 0}
details.more>summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:10px;padding:12px 0;font-weight:800;color:var(--sub);font-size:16px}
details.more>summary::-webkit-details-marker{display:none}
details.more>summary::before{content:"＋";display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--yellow-s);color:var(--orange);font-weight:900;flex:none}
details.more[open]>summary::before{content:"－"}
details.more>summary::after{content:"低频内容，考试很少考，可以先跳过";font-weight:400;font-size:13px;color:#9aa1ad}
details.more[open]{padding-bottom:14px}
details.more>*:not(summary){font-size:16px}
.selftest{margin:22px 0 4px;border-top:2px dashed var(--line);padding-top:16px}
.selftest>.st-h{font-family:"Hand";font-size:22px;color:var(--purple);margin:0 0 10px;display:flex;align-items:center;gap:8px}
.selftest .quiz{padding:12px 16px;margin-bottom:10px;border-radius:18px}
.selftest .quiz .stem{font-size:20px;margin:4px 0 8px}
.selftest .opts{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}
@media (max-width:640px){ .selftest .opts{grid-template-columns:1fr 1fr} }
.selftest .opt{font-size:17px;padding:7px 10px}
.selftest .reveal{margin-top:10px;padding:7px 20px;font-size:15px}
@media (max-width:640px){ details.more>summary::after{display:none} .selftest .quiz .stem{font-size:18px} }

/* ---------- 打印 ---------- */
@media print{
  *{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  body{background:#fff;font-size:12pt}
  .topbar,.pager,.noprint,.reveal{display:none!important}
  .wrap{max-width:none;padding:0}
  .ans{display:block!important}
  .mod,.step,.case,.quiz,.cheat,.role,.mcard,.warn{break-inside:avoid}
  details.more{border-style:solid}
  details.more::details-content{content-visibility:visible;display:block}
  details.more>summary::before,details.more>summary::after{display:none}
}

/* 超窄手机（320px 级） */
@media (max-width:380px){
  .topbar .in{gap:6px;padding:8px 10px}
  .pill-btn{padding:6px 9px;font-size:13px;gap:3px}
  .wrap{padding-left:12px;padding-right:12px}
}
