/* Be Vietnam Pro — sinh bằng tai_vendor.py, đừng sửa tay. */
/* vietnamese */
@font-face {
  font-family: 'Be Vietnam Pro';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(font-dc085e2fba34.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Be Vietnam Pro';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(font-f7a2811e471c.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Be Vietnam Pro';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(font-03d1b589cff1.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Be Vietnam Pro';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(font-86341610cbe9.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Be Vietnam Pro';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(font-947d592eb767.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Be Vietnam Pro';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(font-b621f77d35f7.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Be Vietnam Pro';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(font-97658c6f9a38.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Be Vietnam Pro';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(font-20cc75daeaaa.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Be Vietnam Pro';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(font-9503dec2a7c5.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Be Vietnam Pro';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(font-4f58af2d1c3e.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Be Vietnam Pro';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(font-33d57e5bd840.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Be Vietnam Pro';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(font-a193dd87699b.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Be Vietnam Pro';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(font-26b241d1d5f4.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Be Vietnam Pro';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(font-85a2008e6d5f.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Be Vietnam Pro';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(font-7c5d0871188c.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* Bàn in — CSS bố cục bản in màu. Bê từ bo_dung_ban_mau/build2.py (v4 sau Việc A), bỏ phần chỉ dành cho bản mẫu.
   Mọi màu của phần / lời giải / mục tiêu là biến CSS; máy dựng (ban_in_dung.js) ghi đè theo giao diện của từng bài.
   Khoảng cách giữa các khối là margin DỌC của chính khối (cột là flex nên margin không dồn nhau): máy ngắt trang
   cộng đúng các số này, nên đừng đổi margin của .blk mà không chạy lại phép đo. */
:root{--ink:#1d2233;--navy:#1a1f4d;--mut:#5d6479;--line:#dde2ee;
--c1:#0040BE;--c1d:#003B99;--c1t:#E8EEFB;--c1p:#B9CBEF;
--c2:#F7C800;--c2d:#1a1f4d;--c2t:#FFF7D6;--c2p:#FBE89A;
--c3:#FF7800;--c3d:#E24500;--c3t:#FFF0E2;--c3p:#FFD2AB;
--g:#18B45A;--gd:#0C7F3D;--gt:#E5F8EC;
--v:#7B3FE4;--vd:#5A27B8;--vt:#F1EAFD;
--tfd:#4CDA65;--tfs:#E5484D;--y:#F7C800;--yt:#FFF7D6;--no:#E5484D;
--hf:'Be Vietnam Pro',system-ui,sans-serif;--bf:'Palatino Linotype',Palatino,'Book Antiqua',Georgia,serif;
--fs5:10pt;--fs4:9.8pt;--gay:14mm;--bien:11mm}
*{box-sizing:border-box}
body{margin:0;background:#e6e9f2;color:var(--ink);font:16px/1.55 var(--hf)}
body.xuat{padding:16px 0}
#to{display:flex;flex-direction:column;align-items:center;gap:18px}
#to.chon-bat [data-muc]{cursor:pointer}

/* màu theo phần: mỗi khối mang style="--c:..;--d:..;--t:..;--pt:..;--on:..;--b:.." do máy dựng ghi */
.p1{--c:var(--c1);--d:var(--c1d);--t:var(--c1t);--pt:var(--c1p);--on:#fff;--b:var(--c1)}
.p2{--c:var(--c2);--d:var(--c2d);--t:var(--c2t);--pt:var(--c2p);--on:var(--navy);--b:var(--navy)}
.p3{--c:var(--c3);--d:var(--c3d);--t:var(--c3t);--pt:var(--c3p);--on:#fff;--b:var(--c3)}
.p0{--c:var(--navy);--d:var(--navy);--t:#ECEEF8;--pt:#C9CDE6;--on:#fff;--b:var(--navy)}

/* ---- tờ giấy ---- */
.sheet{background:#fff;box-shadow:0 6px 28px rgba(26,31,77,.16);position:relative;overflow:hidden;color:var(--ink);flex:none;
  display:flex;flex-direction:column;-webkit-print-color-adjust:exact;print-color-adjust:exact;text-align:left}
.sheet.a5{width:148mm;height:210mm;padding:8mm var(--pr) 17mm var(--pl);font:var(--fs5)/1.45 var(--bf);--pl:var(--gay);--pr:var(--bien)}
.sheet.a5.even{--pl:var(--bien);--pr:var(--gay)}
.sheet.a4{width:210mm;height:297mm;padding:10mm var(--pr) 19mm var(--pl);font:var(--fs4)/1.42 var(--bf);--pl:calc(var(--gay) + 4mm);--pr:calc(var(--bien) + 3mm)}
.sheet.a4.even{--pl:calc(var(--bien) + 3mm);--pr:calc(var(--gay) + 4mm)}
.sheet p{margin:0 0 1.6mm;text-align:justify}
.sheet mjx-container[jax=SVG]{font-size:100%;max-width:100%}
/* công thức dài hơn cột thì thu nhỏ theo tỉ lệ thay vì bị cắt */
.sheet mjx-container[jax=SVG]>svg{max-width:100%;height:auto}
.sheet mjx-container[display=true]{margin:1.2mm 0!important}
.nb{white-space:nowrap}
.bd{flex:1;min-height:0;display:flex;flex-direction:column}
.bd>.blk:first-child,.col>.blk:first-child{margin-top:0!important}
.wd{flex:none;display:flex;flex-direction:column}
.cols{flex:1;min-height:0;display:flex}
.col{flex:1;min-width:0;display:flex;flex-direction:column;padding:0 3.5mm}
.col:first-child{padding-left:0;border-right:.6pt solid var(--line)}
.col:last-child{padding-right:0}
.blk{flex:none}
.math-block{overflow:hidden}
.content-item{display:flex;gap:2mm;margin:0 0 1.2mm}
.content-bullet{flex:none;width:1.2mm;height:1.2mm;border-radius:50%;background:var(--mut);margin-top:1.9mm}
.theory-table{border-collapse:collapse;margin:1mm 0 2mm;font-size:.92em}
.theory-table th,.theory-table td{border:.7pt solid var(--line);padding:.8mm 2mm}
.sheet h3{font:700 1em var(--hf);margin:1mm 0 1mm}

/* đầu trang: tên sách phía gáy, thanh tiến trình các phần phía mép ngoài */
.rh{flex:none;display:flex;align-items:center;gap:2.4mm;min-height:5mm;margin:0 0 3.4mm;font:500 6.6pt var(--hf);letter-spacing:.03em;color:var(--mut)}
.rh .sp{flex:1}
.rh .rt,.rh .teacher{white-space:nowrap}
.even .rh{flex-direction:row-reverse}
.prog{display:flex;align-items:center;gap:1mm}
.pill{font:800 5.6pt/1 var(--hf);letter-spacing:.1em;text-transform:uppercase;padding:1.1mm 2.2mm;border-radius:99px;border:.7pt solid #cfd4e3;color:#a9afc2;background:#fff;white-space:nowrap}
.pill.on{background:var(--c);border-color:var(--c);color:var(--on)}
.prog .dash{width:1.6mm;border-top:.9pt solid #cfd4e3}
.a4 .rh{font-size:7pt;margin-bottom:4mm}
.a4 .pill{font-size:6pt;padding:1.2mm 2.6mm}
.teacher{display:inline-flex;align-items:center;gap:1.5mm;font:800 6.4pt var(--hf);letter-spacing:.12em;color:#fff;background:var(--no);padding:.7mm 2.4mm;border-radius:99px}

/* chân trang: logo giữa; trang lẻ chữ trái, số phải; trang chẵn số trái, chữ phải */
.pf{position:absolute;left:var(--pl);right:var(--pr);bottom:5mm;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:3mm;font:500 6pt/1.45 var(--hf);color:#8a90a6;white-space:nowrap}
.pf .flogo{height:8mm;width:auto;display:block}
.pf .fr{display:flex;justify-content:flex-end;text-align:right}
.pf .pg{width:7mm;height:7mm;border-radius:50% 50% 0 50%;background:var(--navy);color:#fff;display:grid;place-items:center;font:800 8.5pt var(--hf)}
.pf .pg.l{border-radius:50% 50% 50% 0}
.a4 .pf{bottom:6mm;font-size:7pt;gap:5mm}
.a4 .pf .flogo{height:9.5mm}
.a4 .pf .pg{width:8mm;height:8mm;font-size:9.5pt}

/* nền đề bài theo màu phần: chỉ bọc phần chữ của đề. .de luôn là một cột riêng (flow-root) nên nút nền chỉ đổi màu */
.de{display:flow-root}
[data-nen="1"] .de{background:var(--t);border-radius:2.5mm;padding:1.6mm 2.4mm 1.8mm}
[data-nen="1"] .de>*:last-child{margin-bottom:0}
[data-nen="1"] .ans{padding-top:.6mm}

/* hero kiểu Basic IELTS trên nền xanh: nhãn lớp, chữ BÀI + số thật to, tiêu đề, linh vật lớn bên phải */
.hero{position:relative;height:56mm;margin:0 0 5mm;border-radius:4mm;background:var(--navy);color:#fff;overflow:hidden}
.hero .ht{position:absolute;left:6mm;top:5mm;bottom:5.4mm;width:60%;display:flex;flex-direction:column;z-index:2}
.hero .dc{position:absolute;border-radius:50%}
.hero .dc.a{width:76mm;height:76mm;right:-16mm;top:-14mm;background:var(--c1)}
.hero .dc.b{width:34mm;height:34mm;right:44mm;bottom:-24mm;background:#1E85EB;opacity:.5}
.hero .dots{position:absolute;left:49%;top:6mm;width:19.9mm;height:11.1mm;background-image:radial-gradient(circle,var(--y) .42mm,transparent .5mm);background-size:2.2mm 2.2mm;opacity:.85}
.hero .br{display:flex;align-items:center;gap:2mm;font:800 7.4pt var(--hf);color:#fff;letter-spacing:.01em}
.hero .br img{height:6.6mm;width:auto;background:#fff;border-radius:1.6mm;padding:.7mm 1.3mm}
.hero .no{margin-top:auto;display:flex;align-items:baseline;gap:2.6mm;font:800 8.5pt var(--hf);letter-spacing:.36em;color:#fff}
.hero .no b{font:800 40pt/.82 var(--hf);letter-spacing:-.02em;color:var(--y)}
.hero h1{margin:2.6mm 0 0;font:800 15pt/1.15 var(--hf);text-wrap:balance;color:#fff}
.hero .hm{position:absolute;right:8mm;bottom:1.4mm;height:47mm;width:auto;z-index:3}
.a4 .hero{height:58mm}
.a4 .hero .ht{left:8mm;width:60%}
.a4 .hero h1{font-size:19pt}
.a4 .hero .no b{font-size:44pt}
.a4 .hero .hm{height:50mm;right:16mm}
.a4 .hero .dc.a{width:96mm;height:96mm;right:-14mm;top:-22mm}
/* hero kiểu ảnh bìa: ảnh phủ kín + lớp phủ xanh đậm chuyển dần từ trái để chữ đọc được */
.hero.anh .bia{position:absolute;inset:0;overflow:hidden}
.hero.anh .bia img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero.anh .bia::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--navy) 0,rgba(26,31,77,var(--lp,.94)) 32%,rgba(26,31,77,0) 60%)}
.hero.anh .ht{top:50%;bottom:auto;transform:translateY(-50%);width:54%;display:block}
.hero .kk{display:inline-flex;align-items:center;gap:1.6mm;font:700 6.4pt var(--hf);letter-spacing:.14em;color:var(--navy);text-transform:uppercase;background:var(--y);border-radius:99px;padding:.7mm 2.6mm}
.hero .sub{display:block;font:600 6.6pt var(--hf);letter-spacing:.16em;color:#c3c9f3;text-transform:uppercase;margin-top:2.6mm}
.hero.anh h1{margin-top:1.2mm;font-size:17pt;line-height:1.14}
.hero.anh .hm{right:5mm;bottom:-3.6mm;height:auto;width:20mm}
.a4 .hero.anh h1{font-size:21pt}
.a4 .hero.anh .hm{width:22mm;right:7mm;height:auto}
/* mục lục dạng thẻ dưới hero */
.toc{display:grid;grid-template-columns:repeat(var(--nt,3),1fr);gap:2mm;margin:-1.6mm 0 4mm}
.toc>div{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:2mm;padding:1.5mm 2.4mm 1.5mm 1.8mm;border-radius:2.5mm;background:var(--t);border:.7pt solid var(--pt)}
.toc i{width:6.2mm;height:6.2mm;border-radius:1.7mm;background:var(--c);color:var(--on);display:grid;place-items:center}
.toc i svg{width:3.6mm;height:3.6mm}
.toc small{display:block;font:800 5.6pt/1.3 var(--hf);letter-spacing:.12em;color:var(--d);text-transform:uppercase}
.toc b{display:block;font:700 7.3pt/1.2 var(--hf);color:var(--navy)}
.toc em{font:800 8pt var(--hf);font-style:normal;color:var(--mut)}

/* đề thi: dòng Họ tên + khung mục tiêu */
.form{display:grid;grid-template-columns:minmax(0,1fr) 16mm 21mm 21mm;border:1pt solid var(--line);border-radius:2.5mm;margin:0 0 2.4mm;overflow:hidden}
.form>div{padding:1.2mm 2.2mm;min-height:9.5mm;font:600 6.2pt var(--hf);color:var(--mut);text-transform:uppercase;letter-spacing:.06em}
.form>div+div{border-left:1pt solid var(--line)}
.form .score{background:var(--yt);color:var(--navy)}
.form .score span{display:block;text-align:right;font:700 8.5pt var(--hf);letter-spacing:0;margin-top:.8mm;text-transform:none}
.know{background:var(--vt);border-radius:2.5mm;padding:2.2mm 3mm 2.4mm;margin:0 0 3mm;font:500 7.8pt/1.45 var(--hf);color:var(--ink)}
.know .kh{display:flex;align-items:center;gap:1.4mm;font:800 6.6pt var(--hf);letter-spacing:.13em;color:var(--vd);text-transform:uppercase;margin-bottom:.8mm}
.know .kh svg{width:3.4mm;height:3.4mm}
.know p{margin:0 0 1.6mm;text-align:left;font:500 7.8pt/1.45 var(--hf)}
.k3{display:flex;flex-wrap:wrap;gap:1.6mm}
.k3 span{display:flex;align-items:center;gap:1.5mm;background:#fff;border-radius:2mm;padding:1mm 1.8mm;font:600 6.9pt/1.25 var(--hf);color:var(--navy)}
.k3 b{flex:none;width:4.4mm;height:4.4mm;border-radius:50%;background:var(--v);color:#fff;display:grid;place-items:center;font:800 7pt var(--hf)}

/* tiêu đề khối lớn (A · Lí thuyết, B · Bài tập) */
.khoi{display:flex;align-items:baseline;gap:2.4mm;margin:3mm 0 2.4mm;font-family:var(--hf);color:var(--navy);border-bottom:1.2pt solid var(--navy);padding-bottom:1mm}
.khoi b{font:800 17pt/1 var(--hf)}
.khoi span{font:800 9pt var(--hf);letter-spacing:.14em;text-transform:uppercase}

/* dải phần */
.part{display:flex;align-items:center;gap:3mm;margin:3.4mm 0 2.6mm;padding-right:3mm;border-radius:2.5mm;background:var(--t);font-family:var(--hf)}
.part .no{background:var(--c);color:var(--on);font:800 7.8pt var(--hf);padding:1.5mm 3mm;border-radius:2.5mm;letter-spacing:.08em;display:flex;align-items:center;gap:1.4mm}
.part .no svg{width:3.3mm;height:3.3mm}
.part .nm{font:700 9.2pt var(--hf);color:var(--d)}
.a4 .part{margin-top:2.6mm}
.a4 .part .no{padding:1.3mm 2.6mm;font-size:7.5pt}
.a4 .part .nm{font-size:8.6pt}

/* câu hỏi */
.q{display:flow-root;margin:0 0 3.2mm}
.qh{display:flex;align-items:center;gap:1.8mm;margin:0 0 1.5mm}
.qn{background:var(--c);color:var(--on);font:800 8pt/1 var(--hf);padding:1.3mm 2.6mm;border-radius:1.8mm;letter-spacing:.02em;white-space:nowrap}
.lv{display:inline-flex;gap:.8mm}
.lv i{width:1.6mm;height:1.6mm;border-radius:50%;border:.7pt solid var(--b)}
.lv i.on{background:var(--c)}
.fig{margin:0}
.fig img{display:block;margin:0 auto;border-radius:2mm;height:auto;max-width:100%}
.fig.catk img{width:100%;height:100%;object-fit:cover}
/* hình minh hoạ tỉ lệ dưới 1,7: hai cột, đề bên trái, hình bên phải, rộng tối đa nửa phần chữ */
.fig.minh{--mh:40mm;float:right;width:min(calc(50% - 2mm),calc(var(--mh)*var(--ar,1.4)));margin:.6mm 0 1.6mm 4mm}
.fig.minh.rg{width:calc(var(--rg) - 2mm)}
.fig.minh img{width:100%}
/* hình dẹt từ 1,7 trở lên hoặc ép xuống dưới: dưới đề, trên phần trả lời, hết bề ngang */
.fig.duoi{clear:both;margin:1.4mm 0 2mm}
.fig.duoi img{width:100%;max-height:var(--mh,62mm);object-fit:contain}
.fig.duoi.rg{width:var(--rg);margin-left:auto;margin-right:auto}
.ans{clear:both}
/* sơ đồ, đồ thị có kí hiệu: hết bề ngang, cao tới nửa trang */
.fig.sodo{clear:both;margin:1.4mm 0 2.4mm}
.fig.sodo img{max-width:100%;max-height:var(--sh,80mm)}
.fig.sodo.rg{width:var(--rg);margin-left:auto;margin-right:auto}
.a4 .q{display:flex;flex-direction:column}
.a4 .q>.qh{order:0}.a4 .q>.de{order:1}.a4 .q>.fig{order:2}.a4 .q>.ans{order:3}
.a4 .fig.minh{--mh:36mm;float:none;width:min(62mm,calc(var(--mh)*var(--ar,1.4)));margin:.6mm auto 1.2mm}
.a4 .fig.minh.rg{width:var(--rg)}
.a4 .fig.sodo{--sh:50mm}
.mc{list-style:none;margin:1.4mm 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:1.6mm 4mm}
.mc.k4{grid-template-columns:repeat(4,1fr)}
.mc.k1{grid-template-columns:minmax(0,1fr)}
.mc li{display:flex;align-items:center;gap:2mm;line-height:1.3}
.mc li p{margin:0}
.bub{flex:none;width:5.6mm;height:5.6mm;border-radius:50%;background:var(--c);color:var(--on);font:800 8.2pt/1 var(--hf);display:grid;place-items:center}
.bub.pick{background:var(--no);color:#fff;box-shadow:0 0 0 .5mm #fff,0 0 0 1mm var(--no)}
.tf{width:100%;border-collapse:separate;border-spacing:0;border:1pt solid var(--c);border-radius:2.2mm;overflow:hidden;margin:1.2mm 0 0;font-size:9.5pt;line-height:1.3}
.a4 .tf{font-size:9.3pt}
.tf th{background:var(--t);color:var(--d);font:700 6.6pt var(--hf);text-transform:uppercase;letter-spacing:.07em;padding:1.1mm 2mm;text-align:center}
.tf th.c,.tf td.c{width:8mm;text-align:center;padding-left:0;padding-right:0}
.tf td{padding:.8mm 2mm;border-top:.7pt solid var(--c);vertical-align:middle;text-align:left}
.a4 .tf td{padding:.8mm 1.6mm}
.tf td p{margin:0;text-align:left}
.tf td.k{width:7mm;padding-right:0}
.kb{display:grid;place-items:center;width:4.8mm;height:4.8mm;border-radius:1.3mm;background:var(--c);color:var(--on);font:800 7.8pt/1 var(--hf)}
.bx{display:inline-block;width:4.3mm;height:4.3mm;border:1pt solid var(--b);border-radius:1.1mm;vertical-align:middle;position:relative}
.tf th.c:nth-last-child(2){color:var(--tfd)}.tf th.c:last-child{color:var(--tfs)}
.tf td.c:nth-last-child(2) .bx{border-color:var(--tfd)}.tf td.c:last-child .bx{border-color:var(--tfs)}
.tf td.c:nth-last-child(2) .bx.on{background:var(--tfd)}.tf td.c:last-child .bx.on{background:var(--tfs)}
.bx.on::after{content:"";position:absolute;left:1.2mm;top:.3mm;width:1mm;height:2.1mm;border:solid #fff;border-width:0 .5mm .5mm 0;transform:rotate(45deg)}
.duoi-y{margin:1.2mm 0 0}
.sa{display:flex;align-items:center;gap:2.4mm;margin-top:1.6mm;font-family:var(--hf);flex-wrap:wrap}
.sa .l{font:700 7pt var(--hf);color:var(--d);text-transform:uppercase;letter-spacing:.07em}
.cells{display:flex}
.cells i{width:6.4mm;height:7.4mm;border:1pt solid var(--b);margin-left:-1pt;display:grid;place-items:center;font:700 10.5pt var(--hf);font-style:normal;color:var(--no);background:#fff}
.cells i:first-child{border-radius:1.6mm 0 0 1.6mm;margin-left:0}
.cells i:last-child{border-radius:0 1.6mm 1.6mm 0}
.a4 .cells i{width:6mm;height:7mm;font-size:10pt}
.sa .w{font:700 9.5pt var(--hf);color:var(--no)}

/* lời giải: màu xanh lá. Mỗi đoạn là một khối riêng để cắt được giữa các bước; s-first / s-mid / s-last ghép lại thành một khung */
.sol{margin:0;padding:0 3mm 0 3.4mm;background:var(--gt);border-left:3pt solid var(--g);font-size:9.4pt;line-height:1.42}
.sol.s-first{margin-top:-1.2mm;padding-top:2mm;border-radius:0 2.5mm 0 0}
.sol.s-last{margin-bottom:3.2mm;padding-bottom:1.2mm;border-radius:0 0 2.5mm 0}
.sol.s-first.s-last{border-radius:0 2.5mm 2.5mm 0}
.sol.s-mid,.sol.s-first{margin-bottom:0}
.sol .sol-h{display:flex;align-items:center;gap:1.4mm;font:800 6.6pt var(--hf);letter-spacing:.13em;color:var(--gd);margin:0 0 1.5mm}
.sol .sol-h svg{width:3.3mm;height:3.3mm}
.sol p{text-align:left}
.sol .sh{font:700 7.8pt var(--hf);color:var(--gd);margin:.6mm 0 .8mm}
.sol .sh strong{font-weight:700}
.sol h3{color:var(--gd)}
.sol .content-item{margin-bottom:.8mm}
.final{display:inline-flex;gap:2mm;align-items:center;margin-top:.4mm;padding:.8mm 3mm;border-radius:99px;background:var(--y);font:700 8.4pt var(--hf);color:var(--navy)}
.final small{font:800 6.4pt var(--hf);letter-spacing:.1em;color:var(--navy)}
.cs-h{display:flex;align-items:center;gap:1.6mm;margin:0 0 1mm;font-family:var(--hf)}
.cs-h .qn{font-size:7.4pt;padding:1mm 2.2mm}
.cs-h .ds{font:700 7.8pt var(--hf);color:var(--no)}
.sol.cs{background:none;border-left:0;border-bottom:.7pt dashed var(--line);padding:0 0 1.2mm;font-size:9.3pt;border-radius:0}
.sol.cs.s-first{margin-top:0;padding-top:0}
.sol.cs.s-last{margin-bottom:2.4mm}

/* bảng đáp án nhanh */
.ksec{display:flex;align-items:center;gap:2mm;font:800 7.2pt var(--hf);letter-spacing:.12em;color:var(--navy);margin:0 0 1.8mm;text-transform:uppercase}
.ksec::after{content:"";flex:1;border-top:.9pt dotted #b9c0d6}
.keys{display:grid;grid-template-columns:repeat(var(--kc,7),1fr);border:1pt solid var(--line);border-radius:2.5mm;overflow:hidden;margin:0 0 3mm}
.keys>div{border-right:.7pt solid var(--line);border-bottom:.7pt solid var(--line);text-align:center;font:700 7.3pt/1.3 var(--hf);color:var(--navy);min-width:0;overflow-wrap:anywhere}
.keys b{display:block;font:700 6.2pt var(--hf);color:var(--on);background:var(--c);padding:.5mm 0;letter-spacing:.06em}
.keys span{display:block;padding:.9mm .4mm}
.keys .empty{background:repeating-linear-gradient(45deg,#fafbfd 0 2mm,#f1f3f8 2mm 4mm)}

/* lí thuyết */
.lt{margin:0 0 2.6mm}
.lt.ct{text-align:center}
.lt.ct p,.lt.ct .math-block{text-align:center}
.lt.gn{background:var(--vt);border-radius:2.5mm;padding:2.2mm 3mm 2.2mm;border-left:3pt solid var(--v)}
.lt .tag{display:flex;align-items:center;gap:1.4mm;font:800 6.6pt var(--hf);letter-spacing:.13em;color:var(--vd);text-transform:uppercase;margin-bottom:.8mm}
.lt .tag svg{width:3.4mm;height:3.4mm}
.lt.vd{border:1pt solid var(--pt);border-radius:2.5mm;padding:2.2mm 3mm}
.lt.vd .tag{color:var(--d)}
.lt.vd .vdg{margin-top:1.4mm;padding:1.4mm 0 0;border-top:.7pt dashed var(--line);font-size:.96em}

/* trang mở chương (sách nhiều chương): khối navy cao gần hết tờ */
.chuong{position:relative;height:158mm;margin:6mm 0 0;border-radius:4mm;background:var(--navy);color:#fff;overflow:hidden;display:flex;align-items:flex-end;font-family:var(--hf)}
.a4 .chuong{height:236mm}
.chuong .dc{position:absolute;border-radius:50%}
.chuong .dc.a{width:112mm;height:112mm;right:-34mm;top:-30mm;background:var(--c1)}
.chuong .dc.b{width:50mm;height:50mm;left:-16mm;bottom:70mm;background:#1E85EB;opacity:.45}
.chuong .ct{position:relative;z-index:2;padding:0 9mm 12mm}
.chuong small{display:block;font:800 8.5pt var(--hf);letter-spacing:.42em;text-transform:uppercase;color:#fff}
.chuong b{display:block;font:800 78pt/.9 var(--hf);color:var(--y);margin:2mm 0 4mm;letter-spacing:-.02em}
.chuong h2{margin:0 0 3mm;font:800 20pt/1.18 var(--hf);color:#fff;text-wrap:balance}
.chuong p{margin:0 0 4mm;text-align:left;font:500 9.4pt/1.5 var(--hf);color:#d5d9f5}
.chuong .cs{display:inline-block;font:800 7.4pt var(--hf);letter-spacing:.14em;text-transform:uppercase;color:var(--navy);background:var(--y);border-radius:99px;padding:1.2mm 3.4mm}

@page{size:A5;margin:0}
@page a4{size:A4;margin:0}
.sheet.a4{page:a4}
@media print{
  body,body.xuat{background:#fff;padding:0}
  #to{display:block;gap:0}
  .sheet{margin:0;box-shadow:none;break-after:page}
  .chon{outline:none!important}
}
/* chỉ có ở bản xem trước, bản xuất bỏ */
[data-chon]{outline:2px solid #1E85EB;outline-offset:1px}
.canh-bao-tran{outline:2px dashed #E5484D}

@font-face{font-family:'Unbounded';font-style:normal;font-weight:600;font-display:block;src:url(font-3752321af579.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;}
@font-face{font-family:'Unbounded';font-style:normal;font-weight:600;font-display:block;src:url(font-42cebe48e87b.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Unbounded';font-style:normal;font-weight:600;font-display:block;src:url(font-616878858361.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Unbounded';font-style:normal;font-weight:700;font-display:block;src:url(font-555c025f3b62.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;}
@font-face{font-family:'Unbounded';font-style:normal;font-weight:700;font-display:block;src:url(font-886ac002ab58.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Unbounded';font-style:normal;font-weight:700;font-display:block;src:url(font-477fa2300251.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Unbounded';font-style:normal;font-weight:800;font-display:block;src:url(font-f581d893c27c.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;}
@font-face{font-family:'Unbounded';font-style:normal;font-weight:800;font-display:block;src:url(font-c62371809866.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Unbounded';font-style:normal;font-weight:800;font-display:block;src:url(font-fe6d4ea7ed96.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Manrope';font-style:normal;font-weight:500;font-display:block;src:url(font-33f057ea61fa.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;}
@font-face{font-family:'Manrope';font-style:normal;font-weight:500;font-display:block;src:url(font-40787d0c2ff6.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Manrope';font-style:normal;font-weight:500;font-display:block;src:url(font-198743187471.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Manrope';font-style:normal;font-weight:600;font-display:block;src:url(font-bce46331a745.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;}
@font-face{font-family:'Manrope';font-style:normal;font-weight:600;font-display:block;src:url(font-ff679412842f.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Manrope';font-style:normal;font-weight:600;font-display:block;src:url(font-f7ac6258da20.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Manrope';font-style:normal;font-weight:700;font-display:block;src:url(font-36c3f8e0a1c5.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;}
@font-face{font-family:'Manrope';font-style:normal;font-weight:700;font-display:block;src:url(font-dc7c46d7eb26.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Manrope';font-style:normal;font-weight:700;font-display:block;src:url(font-d2a12c85a831.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Manrope';font-style:normal;font-weight:800;font-display:block;src:url(font-00842d448a57.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;}
@font-face{font-family:'Manrope';font-style:normal;font-weight:800;font-display:block;src:url(font-262536c3018a.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Manrope';font-style:normal;font-weight:800;font-display:block;src:url(font-74c161dbcbce.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}

/* ===== A4 · thêm cho v4 (05/10/2026) ===== */
/* tự luận: không chừa chỗ trả lời */
.q.IV .sa{display:none}

/* A4 một cột, và vùng hết bề ngang trong A4 hai cột: đề chạy ngang 178mm,
   hình tỉ lệ dưới 1,7 quay về đứng bên phải như A5 */
.sheet.a4.k1 .q,.sheet.a4 .wd .q{display:flow-root}
.sheet.a4.k1 .fig.minh,.sheet.a4 .wd .fig.minh{--mh:50mm;float:right;width:min(calc(45% - 2mm),calc(var(--mh)*var(--ar,1.4)));margin:.6mm 0 1.6mm 5mm}
.sheet.a4.k1 .fig.sodo{--sh:64mm}
/* hai hình liền nhau: đặt cạnh nhau khi trang đủ rộng */
.sheet.a4.k1 .q>.fig:has(+.fig),.sheet.a4.k1 .q>.fig+.fig,
.sheet.a4 .wd .q>.fig:has(+.fig),.sheet.a4 .wd .q>.fig+.fig{display:inline-block;width:calc(50% - 2.5mm);vertical-align:bottom;margin:1.4mm 0 2mm}
.sheet.a4.k1 .q>.fig:has(+.fig),.sheet.a4 .wd .q>.fig:has(+.fig){margin-right:4.6mm}
.sheet.a4.k1 .q>.fig:has(+.fig) img,.sheet.a4.k1 .q>.fig+.fig img,
.sheet.a4 .wd .q>.fig:has(+.fig) img,.sheet.a4 .wd .q>.fig+.fig img{width:100%;max-height:58mm;object-fit:contain}

/* A4 hai cột: trang là chuỗi đoạn — đoạn hai cột (.cols.seg) và đoạn hết bề ngang (.wd) */
.bd>.cols.seg{flex:none}
.bd>.wd{flex:none}
.bd>.cols.seg+.wd,.bd>.wd+.cols.seg{margin-top:1.4mm;padding-top:3mm;border-top:.6pt solid var(--line)}
.bd>.wd>.blk:first-child,.col>.blk:first-child{margin-top:0}
.bd>.wd>.blk:last-child,.col>.blk:last-child{margin-bottom:0}
.col>.part{margin-top:3.4mm}
/* cột hẹp 84mm: căn trái để công thức không kéo giãn khoảng trắng giữa các chữ */
.col p{text-align:left}


/* ===== A4 1 cột · nhãn câu treo bên trái (05/10/2026) =====
   --lbl: rộng lề treo chứa nhãn "Câu n"; đề, hình, phần trả lời lùi vào đúng bằng --lbl.
   --pad: lề trong của ô nền đề; nhãn A và ô đáp án ngắn lùi thêm --pad để thẳng với chữ đề. */
.sheet.a4.k1{--lbl:18mm;--pad:0mm}
[data-nen="1"] .sheet.a4.k1{--pad:2.4mm}
.sheet.a4.k1 .q{position:relative;padding-left:var(--lbl)}
.sheet.a4.k1 .q>.qh{position:absolute;left:0;top:-.15mm;margin:0}
[data-nen="1"] .sheet.a4.k1 .q>.qh{top:1.35mm}
.sheet.a4.k1 .lv{display:none}
.sheet.a4.k1 .q>.qh .qn{display:inline-block;min-width:15.5mm;text-align:center}
.sheet.a4.k1 .mc,.sheet.a4.k1 .sa{padding-left:var(--pad)}
/* Phần: to hơn ở A4 1 cột */
.sheet.a4.k1 .part{margin:5mm 0 3.6mm;border-radius:3mm;padding-right:4mm;gap:4mm}
.sheet.a4.k1 .bd>.part:first-child{margin-top:0}
.sheet.a4.k1 .part .no{font-size:10.5pt;padding:2mm 4.2mm;border-radius:3mm;gap:2mm}
.sheet.a4.k1 .part .no svg{width:4.4mm;height:4.4mm}
.sheet.a4.k1 .part .nm{font-size:12.5pt}


/* ===== Hero theo brand Cá Chép (05/10/2026) =====
   Nền xanh chủ đạo #0040BE · mảng tròn azure #1E85EB có speed lines toả tròn · mảng nhỏ sky #3C9EEF
   chấm halftone hổ phách #FFA806 · số đề vàng #F7C800 · chữ Unbounded (tiêu đề) + Manrope (nhãn) */
.blk.hero{background:#0040BE}
.blk.hero .dc.a{background:repeating-conic-gradient(from 0deg,#1E85EB 0deg 5deg,#3592EE 5deg 7.5deg)}
.blk.hero .dc.b{background:#3C9EEF;opacity:.55}
.blk.hero .dots{background-image:radial-gradient(circle,#FFA806 .42mm,transparent .5mm);opacity:1}
.blk.hero .br{font-family:'Manrope',var(--hf);font-weight:700;letter-spacing:0}
.blk.hero .no{font-family:'Unbounded',var(--hf);font-weight:700;letter-spacing:.12em}
.blk.hero .no b{font-family:'Unbounded',var(--hf);font-weight:800;color:#F7C800;letter-spacing:-.03em}
.blk.hero h1{font-family:'Unbounded',var(--hf);font-weight:700;letter-spacing:-.01em;line-height:1.18}
.blk.hero .tg{margin:1.8mm 0 0;font:500 7pt/1.3 'Manrope',var(--hf);color:rgba(255,255,255,.85)}
.a4 .blk.hero .tg{font-size:8pt}

/* ===== Font của dải Phần theo brand: Unbounded ===== */
.part .no{font-family:'Unbounded',var(--hf);font-weight:700;letter-spacing:.02em}
.part .nm{font-family:'Unbounded',var(--hf);font-weight:600;letter-spacing:0}

/* ===== Lời giải: bỏ các dòng kẻ ngang ===== */
.sol.cs{border-bottom:0}
.sol.cs.s-last{margin-bottom:3.4mm}


/* ===== Lời giải v2 (05/10/2026) =====
   Nhãn câu treo trong lề trái như phần đề; đáp án là một dòng riêng đầu lời giải;
   mỗi phần có dải tên nhỏ; ý đúng sai có chip Đúng/Sai; câu "Vậy ..." tô nền vàng nhạt. */
.sheet{--sg:16mm}
.sheet.a4.k1{--sg:18mm}
.sol.cs{position:relative;padding:0 0 0 var(--sg);font-size:9.4pt;line-height:1.45}
.sol.cs.s-first{padding-top:.4mm}
.sol.cs .cs-h{position:absolute;left:0;top:.4mm;margin:0;z-index:1}
.sol.cs .cs-h .qn{display:inline-block;min-width:calc(var(--sg) - 2.6mm);text-align:center;font-size:7.4pt;padding:1mm 0}
.sol.cs p{margin:0 0 1.3mm;text-align:left}
.sol.cs.s-last{margin-bottom:4.2mm}
.sol.cs.s-last>:last-child{margin-bottom:0}
.sol .kq{display:flex;align-items:center;gap:1.8mm;margin:0 0 1.4mm;font:700 7pt var(--hf);color:var(--mut);text-transform:uppercase;letter-spacing:.07em;min-height:4.8mm}
.sol .kq .kv{font:800 8.4pt var(--hf);letter-spacing:0;color:var(--navy);background:var(--y);border-radius:99px;padding:.6mm 2.6mm}
.sol .ds4{display:inline-flex;gap:.8mm}
.sol .ds4 i{width:4.6mm;height:4.6mm;border-radius:1.2mm;display:grid;place-items:center;font:800 7.2pt var(--hf);font-style:normal;letter-spacing:0}
.sol .ds4 i.d{background:var(--tfd);color:var(--navy)}
.sol .ds4 i.s{background:var(--tfs);color:#fff}
.sol .ab{padding-left:13.6mm;text-indent:-13.6mm}
.sol .ab b{display:inline-block;width:12mm;text-align:center;text-indent:0;font:800 7pt/1.5 var(--hf);border-radius:99px;margin-right:1.6mm;vertical-align:.2mm}
.sol .ab b.vd{background:var(--tfd);color:var(--navy)}
.sol .ab b.vs{background:var(--tfs);color:#fff}
.sol .kl{width:fit-content;max-width:100%;background:var(--yt);border-radius:1.8mm;padding:.5mm 2.2mm .7mm;margin-left:-2.2mm}
.solp{display:flex;align-items:center;gap:2.4mm;margin:4.6mm 0 3mm}
.bd>.solp:first-child,.col>.solp:first-child,.wd>.solp:first-child{margin-top:0}
.solp .no{background:var(--c);color:var(--on);font:700 7.2pt 'Unbounded',var(--hf);padding:1.2mm 2.8mm;border-radius:99px;letter-spacing:.02em}
.solp .nm{font:600 8.4pt 'Unbounded',var(--hf);color:var(--d)}
.a4.k1 .solp .no{font-size:8.4pt}.a4.k1 .solp .nm{font-size:10pt}
/* bảng đáp án nhanh: mỗi phần một hàng ô màu, không kẻ khung */
.keys2{display:grid;gap:1.8mm;margin:0 0 5mm}
.keys2 .kr{display:grid;grid-template-columns:16mm minmax(0,1fr);align-items:start;gap:2.4mm}
.keys2 .kp{background:var(--c);color:var(--on);font:700 6.8pt 'Unbounded',var(--hf);border-radius:99px;text-align:center;padding:1.4mm 0;margin-top:.4mm}
.keys2 .kc{display:grid;grid-template-columns:repeat(auto-fill,minmax(12mm,1fr));gap:1.2mm}
.keys2 .kc span{background:var(--t);border-radius:1.8mm;text-align:center;padding:.6mm .4mm .9mm}
.keys2 small{display:block;font:700 6pt var(--hf);color:var(--d);opacity:.75}
.keys2 em{display:block;font:800 8.2pt/1.25 var(--hf);font-style:normal;color:var(--navy)}
.keys2 em:empty::after{content:"–";color:#b9c0d6;font-weight:600}

/* ===== A4 2 cột: bỏ các đường kẻ xám ===== */
.sheet.a4:not(.k1) .col:first-child{border-right:0}
.sheet.a4:not(.k1) .col{padding:0 4mm}
.sheet.a4:not(.k1) .col:first-child{padding-left:0}.sheet.a4:not(.k1) .col:last-child{padding-right:0}
.sheet.a4:not(.k1) .bd>.cols.seg+.wd,.sheet.a4:not(.k1) .bd>.wd+.cols.seg{border-top:0;padding-top:0;margin-top:4.4mm}
.sheet.a4:not(.k1) .ksec::after{display:none}

/* ===== Hero: 3 lựa chọn (data-hero = "" nổi · "gon" gọn · "toi" tối giản) ===== */
/* Gọn: nền xanh trơn, một mảng tròn sky sau linh vật, bỏ tia, chấm, mảng nhỏ */
:root[data-hero="gon"] .blk.hero{height:40mm}
:root[data-hero="gon"] .blk.hero .dc.b,:root[data-hero="gon"] .blk.hero .dots{display:none}
:root[data-hero="gon"] .blk.hero .dc.a{background:#1E85EB;width:52mm;height:52mm;right:2mm;top:-6mm}
:root[data-hero="gon"] .blk.hero .ht{top:4.6mm;bottom:4.6mm}
:root[data-hero="gon"] .blk.hero .no b{font-size:30pt}
:root[data-hero="gon"] .blk.hero h1{font-size:13pt;margin-top:2mm}
:root[data-hero="gon"] .blk.hero .hm{height:36mm;right:9mm;bottom:1.6mm}
:root[data-hero="gon"] .a4 .blk.hero{height:44mm}
:root[data-hero="gon"] .a4 .blk.hero .dc.a{width:60mm;height:60mm;right:8mm;top:-8mm}
:root[data-hero="gon"] .a4 .blk.hero .no b{font-size:34pt}
:root[data-hero="gon"] .a4 .blk.hero h1{font-size:16pt}
:root[data-hero="gon"] .a4 .blk.hero .hm{height:40mm;right:16mm}
/* Tối giản: không nền, chữ xanh trên giấy trắng, số đề trong huy hiệu vàng; tiết kiệm mực */
:root[data-hero="toi"] .blk.hero{height:34mm;background:none;border-radius:0;overflow:visible;color:#003B99;margin-bottom:6.4mm}
:root[data-hero="toi"] .blk.hero .dc,:root[data-hero="toi"] .blk.hero .dots{display:none}
:root[data-hero="toi"] .blk.hero .ht{left:0;top:0;bottom:0;width:72%}
:root[data-hero="toi"] .blk.hero .br{color:#0040BE}
:root[data-hero="toi"] .blk.hero .br img{padding:0;background:none;border-radius:0}
:root[data-hero="toi"] .blk.hero .no{color:#0040BE}
:root[data-hero="toi"] .blk.hero .no b{font-size:24pt;line-height:1;color:#003B99;background:#F7C800;border-radius:2.2mm;padding:.6mm 2.4mm .9mm}
:root[data-hero="toi"] .blk.hero h1{color:#003B99;font-size:14pt;margin-top:2mm}
:root[data-hero="toi"] .blk.hero .tg{color:var(--mut)}
:root[data-hero="toi"] .blk.hero .hm{height:34mm;right:2mm;bottom:0}
:root[data-hero="toi"] .a4 .blk.hero{height:38mm}
:root[data-hero="toi"] .a4 .blk.hero .ht{left:0}
:root[data-hero="toi"] .a4 .blk.hero .no b{font-size:28pt}
:root[data-hero="toi"] .a4 .blk.hero h1{font-size:17pt}
:root[data-hero="toi"] .a4 .blk.hero .hm{height:38mm;right:6mm}


/* ===== Thanh tiến độ đầu trang (trả lại theo v4) =====
   Một viên cho mỗi phần, viên của phần có mặt trên trang được tô màu phần; nằm ở mép ngoài của trang. */
.rh .prog{flex:none}
.a4 .pill{font-size:6.4pt}

/* ===== Lề dưới v2 =====
   Lề dưới A4 19 → 16 mm, A5 17 → 14,5 mm; chữ một dòng (A4), xám đậm hơn để in rõ; logo nhỏ lại;
   ô số trang giữ hình giọt nước, chỉ ghi số trang hiện tại. */
.sheet.a5{padding-bottom:14.5mm}
.sheet.a4{padding-bottom:16mm}
.pf{bottom:4.4mm;gap:4mm;font:600 6.6pt/1.35 'Manrope',var(--hf);color:#5d6479}
.a4 .pf{bottom:4.6mm;font-size:7.2pt;gap:5mm}
.pf .fl>span:not(.pg),.pf .fr>span:not(.pg){display:block}
.a4 .pf .fl>span:not(.pg),.a4 .pf .fr>span:not(.pg){display:inline}
.a4 .pf .fl>span:not(.pg)+span::before,.a4 .pf .fr>span:not(.pg)+span::before{content:"\00a0·\00a0"}
.pf .flogo{height:6.4mm}
.a4 .pf .flogo{height:7.4mm}
.pf .pg{width:auto;min-width:7mm;height:7mm;padding:0 1.9mm;border-radius:3.5mm 3.5mm 0 3.5mm;display:inline-flex;align-items:center;justify-content:center;gap:.25mm}
.pf .pg.l{border-radius:3.5mm 3.5mm 3.5mm 0}
.pf .pg b{font:800 8.2pt/1 'Unbounded',var(--hf)}
.pf .pg small{font:700 6.4pt/1 'Manrope',var(--hf);opacity:.72;margin-top:.5mm}
.a4 .pf .pg{min-width:8mm;height:8mm;border-radius:4mm 4mm 0 4mm;padding:0 2.2mm}
.a4 .pf .pg.l{border-radius:4mm 4mm 4mm 0}
.a4 .pf .pg b{font-size:9pt}

/* ===== Font: Manrope thay Be Vietnam Pro (nhãn) và Palatino (chữ đề) ===== */
:root{--hf:'Manrope','Be Vietnam Pro',system-ui,sans-serif;--bf:'Manrope','Be Vietnam Pro',system-ui,sans-serif}

/* icon phần kiểu phím PS5 */
.toc i svg.ps{width:3.8mm;height:3.8mm}
.part .no svg.ps{width:3.3mm;height:3.3mm}
.a4.k1 .part .no svg.ps{width:4.2mm;height:4.2mm}

/* thanh chọn khổ (chỉ trên màn hình) */
.optbar{position:fixed;right:16px;bottom:16px;z-index:50;display:flex;flex-wrap:wrap;gap:6px;align-items:center;background:#fff;padding:8px 12px;border-radius:14px;box-shadow:0 4px 18px rgba(26,31,77,.22);font:600 13px var(--hf);color:var(--navy);max-width:calc(100vw - 32px)}
.optbar button{min-height:40px;padding:0 12px;border:2px solid var(--line);border-radius:10px;background:#fff;font:inherit;color:inherit;cursor:pointer}
.optbar button[aria-pressed=true]{border-color:var(--navy);background:#eef0fa}
.optbar button:focus-visible{outline:3px solid #1E85EB;outline-offset:2px}
.optbar .dem{font-weight:500;color:var(--mut);margin-left:4px}
#to{zoom:var(--z,1)}
@media print{.optbar{display:none!important}#to{zoom:1!important}}


/* ===================== Duo · flat (A4 1 cột) =====================
   Cảm hứng Duolingo: khối bo tròn lớn, viền đều màu nhạt của phần, nút tròn đánh số, ô đáp án dạng thẻ.
   Phẳng hoàn toàn: không bóng đổ, không viền dưới dày, không hiệu ứng nổi. */
:root:not([data-theme="duo"]) .duoh{display:none}
/* viền thẻ: pha 42% màu phần với trắng (vàng nhạt sẵn nên pha đậm hơn) để in ra vẫn thấy */
:root[data-theme="duo"] .sheet.a4.k1 .q,:root[data-theme="duo"] .sheet.a4.k1 .sol.cs{--bd:color-mix(in srgb,var(--c) 42%,#fff)}
:root[data-theme="duo"] .sheet.a4.k1 .q.II,:root[data-theme="duo"] .sheet.a4.k1 .sol.cs.ph2{--bd:color-mix(in srgb,var(--c) 85%,#fff)}
:root[data-theme="duo"] .v4h{display:none}
:root[data-theme="duo"] .qw{display:none}
:root:not([data-theme="duo"]) .qw{display:inline}
:root[data-theme="duo"] .sheet.a4.k1{--lbl:17.5mm;--sg:17.5mm;--pad:0mm;--duoline:#B9CBEF;font-family:'Manrope',var(--hf);font-size:10pt;line-height:1.5}
:root[data-theme="duo"] .sheet.a4.k1 p{text-align:left}
:root[data-theme="duo"] .sheet.a4.k1 .rh{font-family:'Manrope',var(--hf);font-weight:700;color:#5d6479}
:root[data-theme="duo"] .sheet.a4.k1 .pf{font-family:'Manrope',var(--hf);font-weight:600;color:#5d6479}
:root[data-theme="duo"] .sheet.a4.k1 .pf .pg{border-radius:99px;background:#0040BE}
:root[data-theme="duo"] .sheet.a4.k1 .pill{font:800 7pt/1 'Manrope',var(--hf);letter-spacing:.02em;text-transform:none;padding:1.3mm 3mm;border:1.2pt solid #dfe4ee;color:#9aa1b6;background:#fff}
:root[data-theme="duo"] .sheet.a4.k1 .pill.on{background:var(--c);border-color:var(--c);color:var(--on)}
:root[data-theme="duo"] .sheet.a4.k1 .prog{gap:1.2mm}
:root[data-theme="duo"] .sheet.a4.k1 .prog .dash{width:3mm;border-top:1.4pt dashed #dfe4ee}

/* hero: linh vật + bong bóng thoại, nền xanh nhạt phẳng */
:root[data-theme="duo"] .blk.hero.duoh{height:auto;background:#E8EEFB;color:#003B99;border-radius:5mm;padding:4.6mm 6mm 5mm;overflow:visible;margin:0 0 6mm}
.duoh .dh-top{display:flex;align-items:center;gap:2.2mm;font:700 8pt 'Manrope',var(--hf);color:#0040BE}
.duoh .dh-logo{height:7mm;width:auto;display:block}
.duoh .dh-main{display:grid;grid-template-columns:46mm minmax(0,1fr);gap:7mm;align-items:end;margin-top:1mm}
.duoh .dh-masc{width:46mm;height:auto;display:block}
.duoh .dh-bub{position:relative;display:inline-block;background:#fff;border:1.4pt solid var(--duoline,#B9CBEF);border-radius:4mm;padding:2.2mm 4.2mm;font:800 9.5pt/1.35 'Manrope',var(--hf);color:#003B99;margin:0 0 4.6mm}
.duoh .dh-bub::before{content:"";position:absolute;left:-2.15mm;bottom:3.4mm;width:3.6mm;height:3.6mm;background:#fff;border-left:1.4pt solid var(--duoline,#B9CBEF);border-bottom:1.4pt solid var(--duoline,#B9CBEF);transform:rotate(45deg)}
.duoh .dh-de b{display:inline-block;background:#F7C800;color:#003B99;font:800 10pt 'Unbounded',var(--hf);border-radius:99px;padding:1.2mm 3.8mm}
:root[data-theme="duo"] .blk.hero.duoh h1{margin:2.4mm 0 0;font:800 25pt/1.08 'Unbounded',var(--hf);color:#0040BE;letter-spacing:-.015em}
.duoh .dh-chips{display:flex;flex-wrap:wrap;gap:2mm;margin-top:3.4mm}
.duoh .dh-chips span{background:#fff;color:#0040BE;font:800 8pt 'Manrope',var(--hf);border-radius:99px;padding:1.1mm 3.4mm;border:1.2pt solid var(--duoline,#B9CBEF)}

/* mục lục: con đường các nút tròn như bản đồ bài học */
:root[data-theme="duo"] .toc{display:flex;gap:0;margin:0 0 6mm;padding:0 2mm;counter-reset:ph}
:root[data-theme="duo"] .toc>div{flex:1;display:flex;flex-direction:column;align-items:center;text-align:center;background:none;border:0;padding:0;position:relative;gap:1.2mm;counter-increment:ph}
:root[data-theme="duo"] .toc>div:not(:last-child)::after{content:"";position:absolute;top:5.6mm;left:calc(50% + 8mm);right:calc(-50% + 8mm);border-top:1.8pt dashed var(--pt)}
:root[data-theme="duo"] .toc i{width:11.5mm;height:11.5mm;border-radius:50%;background:var(--c);color:var(--on)}
:root[data-theme="duo"] .toc i svg{display:none}
:root[data-theme="duo"] .toc i::before{content:counter(ph,upper-roman);font:800 11pt 'Unbounded',var(--hf)}
:root[data-theme="duo"] .toc span{display:flex;flex-direction:column-reverse;gap:.3mm}
:root[data-theme="duo"] .toc b{font:800 8.5pt 'Manrope',var(--hf);color:var(--navy)}
:root[data-theme="duo"] .toc small{font:600 7pt 'Manrope',var(--hf);letter-spacing:0;text-transform:none;color:#5d6479}
:root[data-theme="duo"] .toc em{font:700 7pt 'Manrope',var(--hf);color:var(--d);background:var(--t);border-radius:99px;padding:.4mm 2.4mm}
:root[data-theme="duo"] .toc em::before{content:"tr. "}

/* ô họ tên: từng ô bo tròn riêng */
:root[data-theme="duo"] .form{border:0;border-radius:0;overflow:visible;gap:2.4mm;grid-template-columns:minmax(0,1fr) 22mm 28mm 26mm;margin:0 0 6mm}
:root[data-theme="duo"] .form>div,:root[data-theme="duo"] .form>div+div{border:1.4pt solid var(--duoline,#B9CBEF);border-radius:3mm;min-height:11mm;font:700 7.5pt 'Manrope',var(--hf);letter-spacing:0;text-transform:none;color:#5d6479}
:root[data-theme="duo"] .form .score{border-color:#F7C800!important;background:#FFF7D6}
:root[data-theme="duo"] .form .score span{font:800 10pt 'Unbounded',var(--hf);color:#003B99}

/* dải phần: biểu ngữ màu đặc như đầu mỗi chặng */
:root[data-theme="duo"] .sheet.a4.k1 .part{display:flex;flex-direction:column;align-items:flex-start;gap:.6mm;background:var(--c);border-radius:4.6mm;padding:3.4mm 5.2mm 3.8mm;margin:6.4mm 0 4.2mm}
:root[data-theme="duo"] .sheet.a4.k1 .bd>.part:first-child{margin-top:0}
:root[data-theme="duo"] .sheet.a4.k1 .part .no{background:none;padding:0;border-radius:0;color:var(--on);font:800 7.6pt 'Manrope',var(--hf);letter-spacing:.12em;text-transform:uppercase;opacity:.82}
:root[data-theme="duo"] .sheet.a4.k1 .part .no svg{display:none}
:root[data-theme="duo"] .sheet.a4.k1 .part .nm{color:var(--on);font:800 15pt/1.15 'Unbounded',var(--hf)}

/* câu hỏi: thẻ bo tròn, nút số tròn treo bên trái */
:root[data-theme="duo"] .sheet.a4.k1 .q{border:1.4pt solid var(--bd);border-radius:4.6mm;padding:4.2mm 5mm 4.4mm var(--lbl);margin:0 0 3.8mm;background:#fff}
:root[data-theme="duo"] .sheet.a4.k1 .q>.qh,:root[data-theme="duo"] [data-nen="1"] .sheet.a4.k1 .q>.qh{left:4.6mm;top:2.6mm}
:root[data-theme="duo"] .sheet.a4.k1 .q>.qh .qn{width:9.6mm;height:9.6mm;min-width:0;padding:0;border-radius:50%;display:grid;place-items:center;font:800 11.5pt 'Unbounded',var(--hf);letter-spacing:-.02em}
:root[data-theme="duo"] [data-nen] .sheet.a4.k1 .de,:root[data-theme="duo"] .sheet.a4.k1 .de{background:none;padding:0;border-radius:0}
:root[data-theme="duo"] [data-nen] .sheet.a4.k1 .ans{padding-top:0}
/* phương án: thẻ viền, chữ cái trong ô vuông bo */
:root[data-theme="duo"] .sheet.a4.k1 .mc{gap:2.4mm 4mm;margin-top:2.6mm}
:root[data-theme="duo"] .sheet.a4.k1 .mc li{gap:2.4mm;line-height:1.35}
:root[data-theme="duo"] .sheet.a4.k1 .bub{width:6.2mm;height:6.2mm;border-radius:1.8mm;background:var(--t);color:var(--d);font:800 8.6pt 'Manrope',var(--hf)}
:root[data-theme="duo"] .sheet.a4.k1 .bub.pick{background:#18B45A;color:#fff;box-shadow:none}
/* đúng sai: mỗi mệnh đề một thẻ nền nhạt, chọn Đ hoặc S bằng nút tròn */
:root[data-theme="duo"] .sheet.a4.k1 .tf{border:0;border-radius:0;overflow:visible;border-collapse:separate;border-spacing:0 1.6mm;margin:1.2mm 0 -1.6mm;font-size:10pt;line-height:1.4}
:root[data-theme="duo"] .sheet.a4.k1 .tf thead{display:none}
:root[data-theme="duo"] .sheet.a4.k1 .tf td{border:0;background:var(--t);padding:1.6mm 1.4mm;vertical-align:middle}
:root[data-theme="duo"] .sheet.a4.k1 .tf td:first-child{border-radius:3mm 0 0 3mm;padding-left:2mm;width:9mm}
:root[data-theme="duo"] .sheet.a4.k1 .tf td:last-child{border-radius:0 3mm 3mm 0;padding-right:2.4mm}
:root[data-theme="duo"] .sheet.a4.k1 .tf td.c{width:9.4mm}
:root[data-theme="duo"] .sheet.a4.k1 .kb{width:6.2mm;height:6.2mm;border-radius:1.8mm;background:#fff;color:var(--d);font:800 8.6pt 'Manrope',var(--hf)}
:root[data-theme="duo"] .sheet.a4.k1 .tf .bx{width:7mm;height:7mm;border-radius:50%;background:#fff;border:1.4pt solid;display:inline-grid;place-items:center}
:root[data-theme="duo"] .sheet.a4.k1 .tf td.c:nth-last-child(2) .bx{border-color:#18B45A;color:#0C7F3D}
:root[data-theme="duo"] .sheet.a4.k1 .tf td.c:last-child .bx{border-color:#E5484D;color:#E5484D}
:root[data-theme="duo"] .sheet.a4.k1 .tf td.c:nth-last-child(2) .bx::before{content:"Đ"}
:root[data-theme="duo"] .sheet.a4.k1 .tf td.c:last-child .bx::before{content:"S"}
:root[data-theme="duo"] .sheet.a4.k1 .tf .bx::before{font:800 8pt 'Manrope',var(--hf)}
:root[data-theme="duo"] .sheet.a4.k1 .tf .bx.on::after{display:none}
:root[data-theme="duo"] .sheet.a4.k1 .tf td.c:nth-last-child(2) .bx.on{background:#18B45A;color:#fff}
:root[data-theme="duo"] .sheet.a4.k1 .tf td.c:last-child .bx.on{background:#E5484D;color:#fff}
/* trả lời ngắn: giữ nguyên ô đáp án kiểu v4 */

/* phần đáp án */
:root[data-theme="duo"] .sheet.a4.k1 .teacher{background:#0040BE;color:#fff;font-family:'Manrope',var(--hf);letter-spacing:.06em}
:root[data-theme="duo"] .sheet.a4.k1 .ksec{font:800 11pt 'Unbounded',var(--hf);color:#0040BE;letter-spacing:0;text-transform:none;margin-bottom:3mm}
:root[data-theme="duo"] .sheet.a4.k1 .ksec::after{display:none}
:root[data-theme="duo"] .sheet.a4.k1 .keys2 .kc span{border-radius:2.6mm;padding:1mm .4mm 1.2mm}
:root[data-theme="duo"] .sheet.a4.k1 .keys2 .kp{border-radius:99px;font-size:7pt}
:root[data-theme="duo"] .sheet.a4.k1 .solp{display:flex;flex-direction:column;align-items:flex-start;gap:.4mm;background:var(--c);border-radius:4mm;padding:2.6mm 4.6mm 3mm;margin:6mm 0 3.6mm}
:root[data-theme="duo"] .sheet.a4.k1 .bd>.solp:first-child{margin-top:0}
:root[data-theme="duo"] .sheet.a4.k1 .solp .no{background:none;padding:0;color:var(--on);font:800 7pt 'Manrope',var(--hf);letter-spacing:.12em;text-transform:uppercase;opacity:.82}
:root[data-theme="duo"] .sheet.a4.k1 .solp .nm{color:var(--on);font:800 12pt 'Unbounded',var(--hf)}
:root[data-theme="duo"] .sheet.a4.k1 .sol.cs{background:#fff;border-left:1.4pt solid var(--bd);border-right:1.4pt solid var(--bd);padding:0 5mm 0 var(--sg);font:500 9.6pt/1.5 'Manrope',var(--hf)}
:root[data-theme="duo"] .sheet.a4.k1 .sol.cs.s-first{border-top:1.4pt solid var(--bd);border-radius:4.6mm 4.6mm 0 0;padding-top:3.6mm}
:root[data-theme="duo"] .sheet.a4.k1 .sol.cs.s-last{border-bottom:1.4pt solid var(--bd);border-radius:0 0 4.6mm 4.6mm;padding-bottom:3.6mm;margin-bottom:3.8mm}
:root[data-theme="duo"] .sheet.a4.k1 .sol.cs.s-first.s-last{border-radius:4.6mm}
:root[data-theme="duo"] .sheet.a4.k1 .sol.cs .cs-h{left:4.6mm;top:2.4mm}
:root[data-theme="duo"] .sheet.a4.k1 .sol.cs .cs-h .qn{width:8.8mm;height:8.8mm;min-width:0;padding:0;border-radius:50%;display:grid;place-items:center;font:800 10.5pt 'Unbounded',var(--hf)}
:root[data-theme="duo"] .sheet.a4.k1 .sol .kq{color:#0C7F3D;font-family:'Manrope',var(--hf)}
:root[data-theme="duo"] .sheet.a4.k1 .sol .ds4 i{border-radius:50%;width:5.4mm;height:5.4mm}
:root[data-theme="duo"] .sheet.a4.k1 .sol .kl{border-radius:2.4mm;font-weight:700}
/* lời giải Phần I: gom chung một khung; mỗi câu là một hàng, cách nhau bằng khoảng trắng */
:root[data-theme="duo"] .sheet.a4.k1 .sol.cs.g1.g1.g1{margin:0;border-radius:0;border-top:0;border-bottom:0;padding-top:0;padding-bottom:0}
:root[data-theme="duo"] .sheet.a4.k1 .sol.cs.g1.g1.g1.s-first{--it:1.7mm;padding-top:var(--it);min-height:calc(var(--it) + 7.6mm)}
:root[data-theme="duo"] .sheet.a4.k1 .sol.cs.g1.g1.g1.s-last{padding-bottom:1.7mm}
:root[data-theme="duo"] .sheet.a4.k1 .sol.cs.g1.g1.g1 .cs-h{top:calc(var(--it,1.7mm) - 1mm)}
:root[data-theme="duo"] .sheet.a4.k1 .sol.cs.g1.g1.g1 .cs-h .qn{width:7.4mm;height:7.4mm;font-size:9pt}
:root[data-theme="duo"] .sheet.a4.k1 .sol.cs.g1.g1.g1.gf,:root[data-theme="duo"] .sheet.a4.k1 .bd>.sol.cs.g1.g1.g1:first-child{border-top:1.4pt solid var(--bd);border-top-left-radius:4.6mm;border-top-right-radius:4.6mm}
:root[data-theme="duo"] .sheet.a4.k1 .sol.cs.g1.g1.g1.gf.s-first,:root[data-theme="duo"] .sheet.a4.k1 .bd>.sol.cs.g1.g1.g1.s-first:first-child{--it:4mm}
:root[data-theme="duo"] .sheet.a4.k1 .sol.cs.g1.g1.g1.gl,:root[data-theme="duo"] .sheet.a4.k1 .bd>.sol.cs.g1.g1.g1:last-child{border-bottom:1.4pt solid var(--bd);border-bottom-left-radius:4.6mm;border-bottom-right-radius:4.6mm;padding-bottom:4mm}
:root[data-theme="duo"] .sheet.a4.k1 .sol.cs.g1.g1.g1.gl{margin-bottom:3.8mm}


.screenbar{max-width:1000px;margin:0 auto 18px;padding:14px 18px;display:flex;gap:10px;align-items:center;flex-wrap:wrap;font:600 14px/1.5 'Manrope',sans-serif}.screenbar a{color:#0040BE}.screenbar button{font:inherit;cursor:pointer;padding:9px 14px;border:1px solid #B9CBEF;border-radius:12px;background:white;color:#003B99;min-height:44px}.screenbar .save{margin-left:auto;color:#5d6479}.mc li{border:1px solid transparent;border-radius:2mm;padding:.8mm;cursor:pointer}.mc li:focus-visible,.tf button:focus-visible{outline:2pt solid #0040BE;outline-offset:2px}.mc li.chosen{border-color:#0040BE;background:#E8EEFB}.mc li.chosen .bub{background:#0040BE!important;color:white!important}.tf button.bx{font:inherit;padding:0;cursor:pointer;min-width:7mm;min-height:7mm}.tf button.chosen{box-shadow:0 0 0 .8mm #0040BE}.response{display:block;min-width:25mm;max-width:100%;width:50mm;padding:1.2mm 2mm;border:1.2pt solid var(--b);border-radius:2mm;background:white;font:700 10pt 'Manrope',sans-serif;color:#003B99}.response:focus{outline:2pt solid #0040BE}.work{margin-top:3mm;height:12mm;background:repeating-linear-gradient(transparent 0 5.7mm,#dfe4ee 5.7mm 6mm)}.q .formname{font:600 7pt 'Manrope',sans-serif;color:#5d6479;margin-bottom:2mm}.source-note{font-size:7.5pt;color:#5d6479;margin-top:2mm!important}.teacherkeys{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:2mm;margin:0 0 4mm}.teacherkeys div{border:1pt solid #B9CBEF;border-radius:2mm;padding:2mm;font:600 8pt 'Manrope',sans-serif;overflow-wrap:anywhere}.teacherkeys b{display:block}.sol.cs{overflow-wrap:anywhere}.sol.cs .cs-h{position:static!important;margin-bottom:2mm}.sol.cs.s-first.s-last{padding-left:5mm!important}.sol.cs .cs-h .qn{width:auto!important;min-width:9mm!important;padding:1mm 2mm!important;font-size:9pt!important}.sol.cs .answer-text{font-weight:800;color:#0C7F3D}.sheet:last-child{break-after:auto}.no-export{display:none}
@media screen and (max-width:800px){body.mobile.xuat{padding:10px 0}body.mobile .screenbar{padding:10px;font-size:13px}body.mobile .screenbar .save{width:100%;margin:0}body.mobile #to{align-items:stretch;margin:0 8px;gap:12px;zoom:1!important}body.mobile .sheet.a4.k1,body.mobile .sheet.a5{width:auto!important;height:auto!important;min-height:0!important;padding:16px 12px 16px!important;font-size:16px!important;zoom:1!important}body.mobile .bd{min-height:0!important}body.mobile .de{overflow-x:auto}body.mobile .de p{overflow-wrap:anywhere}body.mobile .rh{flex-wrap:wrap;gap:6px;margin-bottom:12px!important}body.mobile .prog{flex-wrap:wrap}body.mobile .pf{position:static!important;margin-top:20px!important;white-space:normal!important;font-size:10px!important}body.mobile .pf .flogo{height:22px!important}body.mobile .q{padding-left:48px!important;padding-right:12px!important}body.mobile .q>.qh{left:10px!important}body.mobile .q>.qh .qn{width:30px!important;height:30px!important;font-size:14px!important}body.mobile .mc{grid-template-columns:1fr!important}body.mobile .mc .bub{width:30px!important;height:30px!important}body.mobile .tf{font-size:14px!important}body.mobile .tf td{padding:8px 5px!important}body.mobile .tf td.c{width:34px!important}body.mobile .tf button.bx{min-width:32px;min-height:32px}body.mobile .dh-main{grid-template-columns:70px minmax(0,1fr)!important;gap:12px!important}body.mobile .duoh .dh-masc{width:70px!important}body.mobile .duoh h1{font-size:24px!important}body.mobile .duoh .dh-bub{font-size:12px!important;padding:8px!important}body.mobile .duoh .dh-chips span{font-size:10px!important}body.mobile .duoh .dh-logo{height:22px!important}body.mobile .form{grid-template-columns:1fr 60px!important}body.mobile .form>div{font-size:10px!important}body.mobile .toc b{font-size:11px!important}body.mobile .toc small{font-size:10px!important}body.mobile .toc em{font-size:10px!important}body.mobile .part .nm{font-size:21px!important}body.mobile .teacherkeys{grid-template-columns:repeat(2,minmax(0,1fr))}body.mobile .sol.cs{font-size:14px!important}body.mobile .response{font-size:16px;width:100%}body.mobile .work{height:20px}body.mobile .optbar{display:none!important}}
@media print{.screenbar,.optbar{display:none!important}.sheet{zoom:1!important}.response{color:var(--ink);padding:1mm;min-height:7mm}.work{print-color-adjust:exact}.mc li{cursor:default}.tf button{cursor:default}.teacherkeys{break-inside:avoid}*{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
