
:root{
  --bg:#f6f7fb; --card:#ffffff; --ink:#1c2333; --muted:#5b6472; --line:#e4e8f0;
  --brand:#0f4c81; --brand2:#1f7a8c; --accent:#e07b39; --accent2:#c44536;
  --teal:#0e7c66; --purple:#6b4e9e; --gold:#b8860b;
  --tip:#eaf4ff; --tipb:#cfe4ff; --real:#eefaf4; --realb:#bfe9d2; --warn:#fff6e6; --warnb:#ffdca8;
  --exam:#fbeef0; --examb:#f3c1c6;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",Roboto,Helvetica,Arial,sans-serif;background:var(--bg);color:var(--ink);line-height:1.6;font-size:16px}
a{color:var(--brand);text-decoration:none}
.app{display:grid;grid-template-columns:280px 1fr;min-height:100vh}
.sidebar{background:#101a2e;color:#dbe3f0;padding:0;position:sticky;top:0;height:100vh;overflow-y:auto;z-index:50}
.sidebar-inner{padding:22px 18px 40px}
.sidebar h1{font-size:15px;font-weight:700;color:#fff;line-height:1.35;margin-bottom:4px}
.sidebar .sub{font-size:12px;color:#8fa1bd;margin-bottom:18px}
.nav-items{display:block;padding-left:0;margin-top:8px}
.nav-items a{display:block;color:#9fb0cb;font-size:12.5px;padding:5px 10px;border-radius:6px;margin:1px 0;border-left:3px solid transparent}
.nav-items a:hover{background:#1b2740;color:#fff}
.nav-items a.cur{background:#1b2740;color:#fff;border-left-color:var(--accent);font-weight:700}
.nav-items a.sechead{color:#6f819f;font-size:10.5px;text-transform:uppercase;letter-spacing:.07em;font-weight:800;padding:10px 10px 3px}
.homelink a{display:block;font-size:12.5px;color:#9fb0cb;padding:6px 10px;border-radius:6px;background:#1b2740;margin-bottom:12px}
.homelink a:hover{color:#fff}
.main{padding:28px 34px 80px;max-width:1000px}
.topbar{display:flex;align-items:center;gap:10px;margin-bottom:6px}
.crumb{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-weight:700}
h2.sec{font-size:26px;font-weight:800;margin:6px 0 4px;letter-spacing:-.01em}
h2.sec .part{font-size:15px;font-weight:700;color:var(--muted)}
p.lede{color:var(--muted);font-size:15px;margin-bottom:20px;max-width:72ch}
.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:20px 22px;margin-bottom:16px}
.card h3{font-size:17px;font-weight:700;margin-bottom:10px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.card h4{color:var(--brand);font-size:15px;font-weight:800;margin:18px 0 6px}
.card b{color:var(--brand);font-weight:700}
.pghead{background:#fff;border:1px solid var(--line);border-left:6px solid var(--brand);border-radius:14px;padding:18px 22px;margin:0 0 18px}
.pghead.alt{border-left-color:var(--teal)}
.pghead .k{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.pghead h3{font-size:19px;font-weight:800;margin:3px 0 6px}
.pghead p{font-size:14px;color:var(--muted)}
.tag{font-size:10.5px;font-weight:700;padding:2px 8px;border-radius:20px;text-transform:uppercase;letter-spacing:.04em}
.tag.c101{background:#e3edfb;color:#0f4c81}.tag.c102{background:#e5f4ee;color:#0e7c66}
.tag.c103{background:#efe8fb;color:#6b4e9e}.tag.cT01{background:#fdeee9;color:#c44536}
ul,ol{padding-left:22px;margin:8px 0}
li{margin:5px 0}
.tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:12px 0}
table{width:100%;border-collapse:collapse;margin:0;font-size:14px;min-width:520px}
th,td{border:1px solid var(--line);padding:8px 10px;text-align:left;vertical-align:top}
th{background:#f0f3f9;font-weight:700;font-size:13px}
tr:nth-child(even) td{background:#fafbfe}
.callout{border-radius:10px;padding:12px 14px;margin:12px 0;font-size:14px}
.callout .t{font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:.05em;display:block;margin-bottom:4px}
.callout.real{background:var(--real);border:1px solid var(--realb)}
.callout.real .t{color:var(--teal)}
.callout.tip{background:var(--tip);border:1px solid var(--tipb)}
.callout.tip .t{color:var(--brand)}
.callout.exam{background:var(--exam);border:1px solid var(--examb)}
.callout.exam .t{color:var(--accent2)}
.callout.warn{background:var(--warn);border:1px solid var(--warnb)}
.callout.warn .t{color:#9a6a00}
.kw{color:var(--brand);font-weight:700}
.mn{font-size:11.5px;color:var(--muted);font-style:italic}
.divider{height:1px;background:var(--line);margin:26px 0}
.onesum{background:#101a2e;color:#dbe3f0;border-radius:10px;padding:12px 15px;margin:18px 0 2px;font-size:13.5px;line-height:1.75}
.onesum .t{font-weight:800;font-size:11px;text-transform:uppercase;letter-spacing:.07em;display:block;margin-bottom:6px;color:#8fa1bd}
.onesum b{color:#ffd9a8}

/* question bank */
.q{background:#fff;border:1px solid var(--line);border-left:5px solid var(--brand);border-radius:10px;padding:13px 16px;margin:11px 0;scroll-margin-top:14px}
.q .stem{font-size:14.8px;margin:0 0 5px;font-weight:600}
.q .src{font-size:11.5px;color:var(--muted);margin:0 0 7px}
.q .src a{color:var(--brand)}
details.ans{margin-top:6px}
details.ans summary{cursor:pointer;font-size:13px;font-weight:800;color:var(--brand);padding:6px 0;list-style:none}
details.ans summary::-webkit-details-marker{display:none}
details.ans summary:before{content:"\25B8\00a0";display:inline-block}
details.ans[open] summary:before{content:"\25BE\00a0"}
details.ans p{font-size:14.2px;color:#2b3446;margin:7px 0 0}
details.ans ul,details.ans ol{font-size:14.2px;color:#2b3446}
details.ans .bdc{background:var(--real);border:1px solid var(--realb);border-radius:9px;padding:9px 12px;margin:9px 0 0;font-size:14px}
details.ans .bdc b:first-child{color:var(--teal)}
.lv{display:inline-block;font-size:10px;font-weight:800;letter-spacing:.04em;padding:1px 6px;border-radius:5px;margin-right:6px;vertical-align:1px}
.lv.l1{background:#e6f0fb;color:#0f4c81}
.lv.l2{background:#e5f4ee;color:#0e7c66}
.lv.l3{background:#fdf0e4;color:#b0561c}
.lv.l4{background:#fbeef0;color:#c44536}
.grplegend{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0 18px;font-size:12.5px;color:var(--muted)}
.grplegend span{background:#fff;border:1px solid var(--line);border-radius:7px;padding:4px 10px}
.idxbox{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 20px;margin-bottom:14px}
.idxbox h4{font-size:15px;font-weight:800;color:var(--brand);margin-bottom:8px}
ul.idx{list-style:none;padding-left:0;margin:0}
ul.idx li{font-size:13.8px;margin:5px 0;line-height:1.5}
ul.idx a{color:#2b3446}
ul.idx a:hover{color:var(--brand);text-decoration:underline}
.pglinks{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0 22px}
.pglinks a{background:var(--brand);color:#fff;font-size:13px;font-weight:700;padding:8px 14px;border-radius:8px}
.pglinks a.alt{background:#e8eef6;color:var(--brand)}
.pglinks a.cur{background:var(--accent)}
.backtop{display:inline-block;margin-top:10px;font-size:12.5px;color:var(--brand)}
@media(max-width:860px){
  .app{grid-template-columns:1fr}
  .sidebar{position:fixed;left:-290px;transition:left .25s;width:280px;box-shadow:0 0 30px rgba(0,0,0,.3)}
  .sidebar.show{left:0}
  .main{padding:16px 12px 70px}
  table{font-size:13px;min-width:460px}
  th,td{padding:6px 8px}
  .callout{font-size:13.5px}
  h2.sec{font-size:22px}
}
:root{
  --bg:#f6f7fb; --card:#ffffff; --ink:#1c2333; --muted:#5b6472; --line:#e4e8f0;
  --brand:#0f4c81; --brand2:#1f7a8c; --accent:#e07b39; --accent2:#c44536;
  --teal:#0e7c66; --purple:#6b4e9e; --gold:#b8860b;
  --tip:#eaf4ff; --tipb:#cfe4ff; --real:#eefaf4; --realb:#bfe9d2; --warn:#fff6e6; --warnb:#ffdca8;
  --exam:#fbeef0; --examb:#f3c1c6;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",Roboto,Helvetica,Arial,sans-serif;background:var(--bg);color:var(--ink);line-height:1.6;font-size:16px}
a{color:var(--brand);text-decoration:none}
.app{display:grid;grid-template-columns:280px 1fr;min-height:100vh}
.sidebar{background:#101a2e;color:#dbe3f0;padding:0;position:sticky;top:0;height:100vh;overflow-y:auto;z-index:50}
.sidebar-inner{padding:22px 18px 40px}
.sidebar h1{font-size:15px;font-weight:700;color:#fff;line-height:1.35;margin-bottom:4px}
.sidebar .sub{font-size:12px;color:#8fa1bd;margin-bottom:18px}
.nav-items{display:block;padding-left:0;margin-top:8px}
.nav-items a{display:block;color:#9fb0cb;font-size:12.5px;padding:5px 10px;border-radius:6px;margin:1px 0;border-left:3px solid transparent}
.nav-items a:hover{background:#1b2740;color:#fff}
.nav-items a.cur{background:#1b2740;color:#fff;border-left-color:var(--accent);font-weight:700}
.nav-items a.sechead{color:#6f819f;font-size:10.5px;text-transform:uppercase;letter-spacing:.07em;font-weight:800;padding:10px 10px 3px}
.homelink a{display:block;font-size:12.5px;color:#9fb0cb;padding:6px 10px;border-radius:6px;background:#1b2740;margin-bottom:12px}
.homelink a:hover{color:#fff}
.main{padding:28px 34px 80px;max-width:1000px}
.topbar{display:flex;align-items:center;gap:10px;margin-bottom:6px}
.crumb{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-weight:700}
h2.sec{font-size:26px;font-weight:800;margin:6px 0 4px;letter-spacing:-.01em}
h2.sec .part{font-size:15px;font-weight:700;color:var(--muted)}
p.lede{color:var(--muted);font-size:15px;margin-bottom:20px;max-width:72ch}
.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:20px 22px;margin-bottom:16px}
.card h3{font-size:17px;font-weight:700;margin-bottom:10px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.card h4{color:var(--brand);font-size:15px;font-weight:800;margin:18px 0 6px}
.card b{color:var(--brand);font-weight:700}
.pghead{background:#fff;border:1px solid var(--line);border-left:6px solid var(--brand);border-radius:14px;padding:18px 22px;margin:0 0 18px}
.pghead.alt{border-left-color:var(--teal)}
.pghead .k{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.pghead h3{font-size:19px;font-weight:800;margin:3px 0 6px}
.pghead p{font-size:14px;color:var(--muted)}
.tag{font-size:10.5px;font-weight:700;padding:2px 8px;border-radius:20px;text-transform:uppercase;letter-spacing:.04em}
.tag.c101{background:#e3edfb;color:#0f4c81}.tag.c102{background:#e5f4ee;color:#0e7c66}
.tag.c103{background:#efe8fb;color:#6b4e9e}.tag.cT01{background:#fdeee9;color:#c44536}
ul,ol{padding-left:22px;margin:8px 0}
li{margin:5px 0}
.tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:12px 0}
table{width:100%;border-collapse:collapse;margin:0;font-size:14px;min-width:520px}
th,td{border:1px solid var(--line);padding:8px 10px;text-align:left;vertical-align:top}
th{background:#f0f3f9;font-weight:700;font-size:13px}
tr:nth-child(even) td{background:#fafbfe}
.callout{border-radius:10px;padding:12px 14px;margin:12px 0;font-size:14px}
.callout .t{font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:.05em;display:block;margin-bottom:4px}
.callout.real{background:var(--real);border:1px solid var(--realb)}
.callout.real .t{color:var(--teal)}
.callout.tip{background:var(--tip);border:1px solid var(--tipb)}
.callout.tip .t{color:var(--brand)}
.callout.exam{background:var(--exam);border:1px solid var(--examb)}
.callout.exam .t{color:var(--accent2)}
.callout.warn{background:var(--warn);border:1px solid var(--warnb)}
.callout.warn .t{color:#9a6a00}
.kw{color:var(--brand);font-weight:700}
.mn{font-size:11.5px;color:var(--muted);font-style:italic}
.divider{height:1px;background:var(--line);margin:26px 0}
.onesum{background:#101a2e;color:#dbe3f0;border-radius:10px;padding:12px 15px;margin:18px 0 2px;font-size:13.5px;line-height:1.75}
.onesum .t{font-weight:800;font-size:11px;text-transform:uppercase;letter-spacing:.07em;display:block;margin-bottom:6px;color:#8fa1bd}
.onesum b{color:#ffd9a8}

/* question bank */
.q{background:#fff;border:1px solid var(--line);border-left:5px solid var(--brand);border-radius:10px;padding:13px 16px;margin:11px 0;scroll-margin-top:14px}
.q .stem{font-size:14.8px;margin:0 0 5px;font-weight:600}
.q .src{font-size:11.5px;color:var(--muted);margin:0 0 7px}
.q .src a{color:var(--brand)}
details.ans{margin-top:6px}
details.ans summary{cursor:pointer;font-size:13px;font-weight:800;color:var(--brand);padding:6px 0;list-style:none}
details.ans summary::-webkit-details-marker{display:none}
details.ans summary:before{content:"\25B8\00a0";display:inline-block}
details.ans[open] summary:before{content:"\25BE\00a0"}
details.ans p{font-size:14.2px;color:#2b3446;margin:7px 0 0}
details.ans ul,details.ans ol{font-size:14.2px;color:#2b3446}
details.ans .bdc{background:var(--real);border:1px solid var(--realb);border-radius:9px;padding:9px 12px;margin:9px 0 0;font-size:14px}
details.ans .bdc b:first-child{color:var(--teal)}
.lv{display:inline-block;font-size:10px;font-weight:800;letter-spacing:.04em;padding:1px 6px;border-radius:5px;margin-right:6px;vertical-align:1px}
.lv.l1{background:#e6f0fb;color:#0f4c81}
.lv.l2{background:#e5f4ee;color:#0e7c66}
.lv.l3{background:#fdf0e4;color:#b0561c}
.lv.l4{background:#fbeef0;color:#c44536}
.grplegend{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0 18px;font-size:12.5px;color:var(--muted)}
.grplegend span{background:#fff;border:1px solid var(--line);border-radius:7px;padding:4px 10px}
.idxbox{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 20px;margin-bottom:14px}
.idxbox h4{font-size:15px;font-weight:800;color:var(--brand);margin-bottom:8px}
ul.idx{list-style:none;padding-left:0;margin:0}
ul.idx li{font-size:13.8px;margin:5px 0;line-height:1.5}
ul.idx a{color:#2b3446}
ul.idx a:hover{color:var(--brand);text-decoration:underline}
.pglinks{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0 22px}
.pglinks a{background:var(--brand);color:#fff;font-size:13px;font-weight:700;padding:8px 14px;border-radius:8px}
.pglinks a.alt{background:#e8eef6;color:var(--brand)}
.pglinks a.cur{background:var(--accent)}
.backtop{display:inline-block;margin-top:10px;font-size:12.5px;color:var(--brand)}
@media(max-width:860px){
  .app{grid-template-columns:1fr}
  .sidebar{position:fixed;left:-290px;transition:left .25s;width:280px;box-shadow:0 0 30px rgba(0,0,0,.3)}
  .sidebar.show{left:0}
  .main{padding:16px 12px 70px}
  table{font-size:13px;min-width:460px}
  th,td{padding:6px 8px}
  .callout{font-size:13.5px}
  h2.sec{font-size:22px}
}

.secttl{font-size:21px;font-weight:800;margin:30px 0 4px}
.secttl .sub{font-size:14px;font-weight:700;color:var(--muted)}
.coursehd{font-size:18px;font-weight:800;margin:24px 0 4px;padding-top:16px;border-top:1px solid var(--line)}
.pghead p.zh,.lede.zh,.callout .zh{color:#2b3446}
.pghead p.zh{border-left:3px solid var(--line);padding-left:10px}
h3 .hz{font-size:14px;font-weight:700;color:var(--muted);display:block;margin-top:2px}
p.stem.zh{font-size:14.2px;font-weight:600;color:#39445a;border-left:3px solid #d7dee9;padding-left:10px;margin:4px 0 6px}
details.ans p.zh,details.ans .bdc.zh{background:#f9fbfe;border-left:3px solid #d7dee9;border-radius:0 7px 7px 0;padding:7px 11px;margin:6px 0 0;color:#2b3446}
strong.zhl{color:var(--teal);font-weight:800;margin-right:4px}
details.ans .bdc.zh{background:#f4fbf8;border-left-color:var(--realb)}
details.ans p.anszh{font-size:14.2px;color:#6a7385;margin-top:4px}
details.toc{margin:8px 0 4px}
details.toc summary{cursor:pointer;font-size:13px;font-weight:800;color:var(--brand);padding:6px 0;list-style:none}
details.toc summary::-webkit-details-marker{display:none}
details.toc summary:before{content:"\25B8\00a0";display:inline-block}
details.toc[open] summary:before{content:"\25BE\00a0"}
ul.toc{list-style:none;padding-left:0;columns:2;column-gap:22px;margin:6px 0 0}
ul.toc li{font-size:12.6px;margin:3px 0;line-height:1.45;break-inside:avoid}
ul.toc a{color:#2b3446}
ul.toc a:hover{color:var(--brand)}
.tocnote{font-size:12px;font-weight:800;color:var(--muted);margin:10px 0 2px;text-transform:uppercase;letter-spacing:.05em}

/* ---- the exam layer: paper items nested inside a thinking question ---- */
.eqmeta .lv{margin-right:5px}
.exchip{display:inline-block;font-size:10px;font-weight:800;letter-spacing:.03em;padding:2px 7px;border-radius:20px;background:#e8eef6;color:var(--brand);vertical-align:2px;margin-left:2px;white-space:nowrap}
.exchip.none{background:#f1f3f7;color:#8d97a8;font-weight:700}
.exnone{font-size:12.5px;color:#8d97a8;margin:8px 0 0;font-style:italic}
.exnone .zh{font-style:normal}
details.examcheck{margin:10px 0 0;border-left:3px solid var(--accent);background:#fffdf9;border-radius:0 9px 9px 0;padding:2px 0 2px 11px}
details.examcheck>summary{cursor:pointer;font-size:13px;font-weight:800;color:#b0561c;padding:7px 0;list-style:none}
details.examcheck>summary::-webkit-details-marker{display:none}
details.examcheck>summary:before{content:"\25B8\00a0";display:inline-block}
details.examcheck[open]>summary:before{content:"\25BE\00a0"}
.eqspread{font-weight:700;color:var(--muted);font-size:11.5px;margin-left:7px}
.eqlist{padding:0 11px 8px 0}
.eq{background:#fff;border:1px solid var(--line);border-radius:9px;padding:10px 13px;margin:0 0 9px}
.eqmeta{font-size:11px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:5px}
.eqtag{background:var(--brand);color:#fff;border-radius:5px;padding:2px 7px;letter-spacing:.04em}
.eqtopic{color:#8d97a8;font-weight:700;text-transform:none;letter-spacing:0}
p.eqstem{font-size:14px;font-weight:600;margin:0 0 5px;color:#1c2333}
ul.eqopts{list-style:none;padding-left:0;margin:4px 0 6px}
ul.eqopts li{font-size:13.6px;margin:2px 0;color:#2b3446}
p.eqzh{font-size:12.5px;color:var(--muted);margin:4px 0 0}
details.eqans{margin-top:5px}
details.eqans summary{cursor:pointer;font-size:12.5px;font-weight:700;color:var(--teal);padding:3px 0;list-style:none}
details.eqans summary::-webkit-details-marker{display:none}
details.eqans summary:before{content:"\25B8\00a0";display:inline-block}
details.eqans[open] summary:before{content:"\25BE\00a0"}
details.eqans p{font-size:13.6px;color:#2b3446;margin:5px 0 0}

/* ---- the by-paper index: the way back into the nested exam items ---- */
.pidxwrap{display:grid;gap:10px;margin:14px 0}
.pidx{background:#fff;border:1px solid var(--line);border-left:5px solid var(--brand);border-radius:11px;padding:12px 15px}
.pidxh{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;margin-bottom:7px}
.pidxh strong{font-size:14.5px;color:var(--brand)}
.pidxm{font-size:11.5px;color:var(--muted);font-weight:700}
.pidxspread{margin-left:auto;display:flex;gap:4px}
.pidxq{display:flex;flex-wrap:wrap;gap:4px}
.pidxq a{font-size:11.5px;font-weight:700;color:#2b3446;background:#f2f5fa;border:1px solid var(--line);border-radius:6px;padding:2px 7px;min-width:26px;text-align:center}
.pidxq a:hover{color:#fff;border-color:transparent}
.pidxq a.lv1:hover{background:#0f4c81}
.pidxq a.lv2:hover{background:#0e7c66}
.pidxq a.lv3:hover{background:#b0561c}
.pidxq a.lv4:hover{background:#c44536}
/* level tint on the number itself, so a paper's shape is visible before you tap */
.pidxq a.lv1{background:#e6f0fb;color:#0f4c81;border-color:#d3e3f7}
.pidxq a.lv2{background:#e5f4ee;color:#0e7c66;border-color:#cdeade}
.pidxq a.lv3{background:#fdf0e4;color:#b0561c;border-color:#f6e0c9}
.pidxq a.lv4{background:#fbeef0;color:#c44536;border-color:#f3cdd3}
.pidxq a.orphanlink{background:var(--warn);border-color:var(--warnb);color:#9a6a00}
/* the legend's inline level chips */
.lvlb{display:inline-block;font-size:10px;font-weight:800;letter-spacing:.03em;padding:1px 6px;border-radius:5px}
.lvlb.l1{background:#e6f0fb;color:#0f4c81}
.lvlb.l2{background:#e5f4ee;color:#0e7c66}
.lvlb.l3{background:#fdf0e4;color:#b0561c}
.lvlb.l4{background:#fbeef0;color:#c44536}
.papersec .card[id]{scroll-margin-top:14px}
.papersec .q{scroll-margin-top:14px}
#orphans{scroll-margin-top:14px}
#orphans .eq{margin-bottom:10px}
@media(max-width:860px){
  /* keep the nav reachable with no JavaScript at all */
  .sidebar{position:static;left:0;width:auto;height:auto;box-shadow:none}
  .app{grid-template-columns:1fr}
  .sidebar-inner{padding:14px 14px 12px}
  .nav-items a{font-size:13px;padding:7px 10px}
  ul.toc{columns:1}
  .eq{padding:9px 11px}
  .eqtag{display:inline-block;margin-bottom:2px}
}
/* ux:css v1 */:root{--line:#d2dae6;--line2:#b7c2d4;--band:#f1f5fa;--shade:#fbfcfe;}h2.sec{border-bottom:3px solid var(--brand);padding-bottom:11px;margin-bottom:15px}h3.secttl{border-top:3px solid var(--line2);padding-top:20px;margin-top:38px}h3.coursehd{border-top:1px solid var(--line2);border-left:6px solid var(--brand);padding:12px 0 10px 15px;background:linear-gradient(90deg,var(--band),rgba(255,255,255,0));}.divider{height:2px;background:var(--line2);margin:34px 0}.card{border-color:var(--line2);box-shadow:0 1px 3px rgba(16,26,46,.06)}.pghead{border-color:var(--line2);box-shadow:0 1px 3px rgba(16,26,46,.05)}table th{background:#e6edf7;border-bottom:2px solid var(--line2)}table td{border-color:var(--line)}tr:nth-child(even) td{background:var(--shade)}details>summary{border-bottom:1px dashed var(--line);padding-bottom:7px}.onesum{border:1px solid #26364f}.callout{border-width:1px;box-shadow:0 1px 2px rgba(16,26,46,.04)}h3.coursehd#a101,h3.secttl#a101{border-left-color:#0f4c81!important}h3.coursehd#a102,h3.secttl#a102{border-left-color:#0e7c66!important}h3.coursehd#a103,h3.secttl#a103{border-left-color:#6b4e9e!important}h3.secttl#partB{border-left:6px solid #c44536;padding-left:15px;background:linear-gradient(90deg,#fdf1ee,rgba(255,255,255,0))}h3.secttl#partC{border-left:6px solid #b8860b;padding-left:15px;background:linear-gradient(90deg,#fdf6e3,rgba(255,255,255,0))}.q{box-shadow:0 1px 2px rgba(16,26,46,.05);border-left-width:6px}.q+.q{margin-top:13px}details.ans[open],details.examcheck[open]{border-top:1px solid var(--line);margin-top:9px}.exchip,.lv,.eqtag,.tag{border:1px solid rgba(16,26,46,.09)}.pidx{border-left-width:6px;box-shadow:0 1px 2px rgba(16,26,46,.05)}.pidx#t1{border-left-color:#0f4c81}.pidx#t2{border-left-color:#0e7c66}.pidx#l3{border-left-color:#6b4e9e}.pidx#pb{border-left-color:#e07b39}.pgr{display:flex;gap:9px;flex-wrap:wrap}.pgr-top{align-items:center;margin:0 0 16px;padding:0 0 11px;border-bottom:1px solid var(--line)}.pgr-b{font-size:12.5px;font-weight:700;padding:5px 11px;border-radius:7px;background:#eef1f7;color:var(--brand);white-space:nowrap}.pgr-top a.pgr-b:hover{background:var(--brand);color:#fff}.pgr-top .pgr-h{margin-left:auto;background:#101a2e;color:#fff}.pgr-top .pgr-h:hover{background:#1b2740}.pgr-b.off{opacity:.45}.pgr-bot{align-items:stretch;margin:30px 0 8px}.pgr-card{flex:1 1 200px;display:flex;flex-direction:column;gap:3px;min-width:0;padding:11px 14px;border:1px solid var(--line2);border-radius:11px;background:#fff}.pgr-card:hover{border-color:var(--brand);box-shadow:0 2px 9px rgba(16,26,46,.1)}.pgr-k{font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#6f7a8c}.pgr-t{font-size:13.5px;font-weight:700;color:var(--brand);overflow-wrap:anywhere}.pgr-r{text-align:right}.pgr-r .pgr-k,.pgr-r .pgr-t{align-self:flex-end}.pgr-bot .pgr-h{flex:0 1 150px;align-items:center;justify-content:center;background:#101a2e;border-color:#101a2e}.pgr-bot .pgr-h .pgr-t{color:#fff}.pgr-bot .pgr-h .pgr-k{color:#8fa1bd}.pgr-card.off{opacity:.4}@media(max-width:860px){.pgr-bot .pgr-h{flex:1 1 100%;order:-1}.pgr-card{flex:1 1 100%}.pgr-r{text-align:left}.pgr-r .pgr-k,.pgr-r .pgr-t{align-self:flex-start}}[id]{scroll-margin-top:16px}a:focus-visible,summary:focus-visible{outline:3px solid #e07b39;outline-offset:2px;border-radius:4px}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(max-width:860px){.pgr-b,.pgr-card{min-height:34px;display:inline-flex;align-items:center}.pgr-card{display:flex;flex-direction:column;align-items:flex-start}summary{padding:6px 0}body>table,.main>table{display:block;overflow-x:auto}}/* /ux:css v1 */

/* /ux:mobile-table v1 — narrow screens: let tables and the main column shrink
   to the viewport. Two inherited defects:
     1. `table{min-width:520px}` forced page-level horizontal scroll at 390px;
     2. `.main` is a grid item and grid items default to min-width:auto, so a
        wide child (a long English crumb / h2) could not shrink back.
   .tablewrap already has overflow-x:auto, so only the genuinely wide tables
   still scroll inside their own wrapper. */
@media(max-width:560px){
  table{min-width:auto}
  .card table{min-width:auto;font-size:13px}
  .card th,.card td{padding:6px 8px}
  .tablewrap{margin:10px 0}
  .main{min-width:0;padding:16px 12px 70px}
  .topbar,.pgr,.crumb,.lede,.card{min-width:0;max-width:100%;
    overflow-wrap:break-word;word-break:break-word}
  .crumb{font-size:12px}
  h2.sec{font-size:1.15rem}
}
