/* Lolool — Kết quả siêu âm ở phòng khám (08/09/2026). Kế thừa biến màu của style.css.
   Fix round 1 (09/09/2026): --card KHÔNG tồn tại trong repo (token nền là --surface) —
   thẻ phiếu từng vẽ nền trắng cứng #fff trong khi theme mặc định là TỐI (css/nen-toi.css,
   --text-primary sáng), khiến số đo/kết luận/đề nghị mất chữ. Đổi sang --surface +
   --text-primary, và gắn color tường minh cho mọi khối không tự có màu chữ riêng — không
   dựa vào kế thừa màu chữ đối lập nền cứng.
   Fix round 2 (09/09/2026): badge width:fit-content (khỏi kéo dài hết chiều rộng .ld-link khi
   display:block) + lưới số đo 1 cột dưới 420px. */
.kpk{margin:0 0 1.25rem}
.kpk-trong{padding:.9rem 1rem;border:1px dashed var(--border,rgba(128,128,128,.3));border-radius:14px;font-size:.95rem;line-height:1.5;color:var(--text-primary,inherit)}
.kpk-dau{color:var(--text-primary,inherit)}
.kpk-dau p{margin:0 0 .75rem;font-size:.9rem;opacity:.8}
.kpk-banner{background:#fff4e5;color:#7a3e00;border-radius:12px;padding:.7rem .9rem;margin:0 0 .75rem;font-size:.92rem;line-height:1.45}
.kpk-the{border:1px solid var(--border,rgba(128,128,128,.25));border-radius:16px;padding:.9rem 1rem;margin:0 0 .85rem;background:var(--surface,#fff);color:var(--text-primary,inherit)}
.kpk-the header{display:flex;flex-wrap:wrap;gap:.35rem .5rem;align-items:baseline;font-size:.95rem;margin-bottom:.4rem}
.kpk-bs{margin-left:auto;font-size:.82rem;opacity:.75}
.kpk-dusinh{margin:0 0 .4rem;font-size:.9rem;opacity:.85}
.kpk-sodo{margin:.35rem 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:.25rem .75rem;color:var(--text-primary,inherit)}
.kpk-sodo>div{display:flex;justify-content:space-between;gap:.5rem;font-size:.88rem;border-bottom:1px solid var(--border,rgba(128,128,128,.15));padding:.2rem 0;min-width:0}
.kpk-sodo dt{opacity:.8}.kpk-sodo dd{margin:0;font-weight:600;text-align:right;white-space:nowrap}
.kpk-sodo dd small{font-weight:400;opacity:.7}
.kpk-nhom{grid-column:1/-1;font-weight:700;margin-top:.35rem;color:var(--primary,inherit)}
.kpk-kl,.kpk-dn{margin:.5rem 0 0;font-size:.92rem;line-height:1.5;white-space:pre-line}
.kpk-anh{display:grid;grid-template-columns:repeat(3,1fr);gap:.4rem;margin:.6rem 0 .4rem}
.kpk-anh-o{position:relative;padding:0;border:0;background:#000;border-radius:10px;aspect-ratio:4/3;overflow:hidden}
.kpk-anh-o img{width:100%;height:100%;object-fit:cover;display:block}
.kpk-anh-o[hidden]{display:none}
.kpk-4d{position:absolute;top:4px;left:4px;font:700 10px/1 sans-serif;padding:3px 5px;border-radius:6px;background:rgba(30,90,60,.85);color:#fff;pointer-events:none}
.kpk-han{font-size:.85rem;line-height:1.45;padding:.45rem .6rem;border-radius:10px;background:rgba(128,128,128,.08);color:var(--text-primary,inherit)}
.kpk-han-sap{background:#fff4e5;color:#7a3e00}.kpk-han-gap{background:#ffe3e3;color:#8a1c1c;font-weight:600}
.kpk-han-da_xoa,.kpk-han-het{opacity:.8}
.kpk-nut{display:flex;gap:.5rem;margin:.5rem 0 0}
.kpk-nut button,.kpk-xem-nut button{border:1px solid var(--primary,#c2185b);color:var(--primary,#c2185b);background:transparent;border-radius:999px;padding:.45rem .9rem;font-size:.9rem}
.kpk-ghichu{margin:.6rem 0 0;font-size:.82rem;opacity:.75}
.kpk-xem{position:fixed;inset:0;background:rgba(0,0,0,.92);z-index:9999;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:1rem}
.kpk-xem img{max-width:100%;max-height:75vh;object-fit:contain;border-radius:8px}
.kpk-xem-nut{display:flex;gap:.6rem}.kpk-xem-nut button{color:#fff;border-color:#fff}
.kpk-badge{display:block;width:fit-content;margin:.35rem 0 0;padding:.1rem .5rem;border-radius:999px;background:#ffe3e3;color:#8a1c1c;font-size:.78rem;font-weight:600}
.kpk-toast{position:fixed;left:50%;bottom:5.5rem;transform:translateX(-50%);background:#222;color:#fff;padding:.55rem .9rem;border-radius:999px;font-size:.88rem;z-index:10000}
/* Fix round 2 (09/09/2026): lưới số đo 2 cột bọc chữ nhãn ở màn hẹp (390px, xem ảnh chụp
   review) — dưới 420px chuyển về 1 cột. */
@media (max-width:420px){.kpk-sodo{grid-template-columns:1fr}}

/* ── Kết quả NIPT (11/09/2026) ── */
.kpk-nipt-khoi{margin:0 0 .5rem}
.kpk-nipt-kl{margin:.2rem 0 .5rem;font-weight:700;font-size:1.05rem;padding:.35rem .7rem;border-radius:10px;display:inline-block}
.kpk-nipt-kl-thap{background:#e6f6ec;color:#1b6b3a}
.kpk-nipt-kl-cao{background:#fdeaea;color:#a12626}
.kpk-nipt-kl-khong{background:#fff5d6;color:#8a5a00}
.kpk-nipt-kl-chuaro{background:#eeeeee;color:#555}
.kpk-nipt-muc dd.kpk-nipt-thap{color:#1b6b3a}.kpk-nipt-muc dd.kpk-nipt-cao{color:#a12626}.kpk-nipt-muc dd.kpk-nipt-khong_ket_luan{color:#8a5a00}
.kpk-nipt-lienhe,.kpk-nipt-duyet{margin:.3rem 0;font-size:.85rem;opacity:.85}
.kpk-nipt-sangloc{margin:.5rem 0 0;font-size:.8rem;opacity:.7}
.kpk-nipt-xemkhung{position:fixed;inset:0;background:rgba(0,0,0,.85);z-index:9999;display:flex;flex-direction:column}
.kpk-nipt-xemkhung object,.kpk-nipt-xemkhung iframe{flex:1;width:100%;border:0;background:#fff}
.kpk-nipt-xemkhung .kpk-nipt-thanh{display:flex;gap:.5rem;padding:.5rem;background:#111}
.kpk-nipt-xemkhung .kpk-nipt-thanh a,.kpk-nipt-xemkhung .kpk-nipt-thanh button{color:#fff;background:#333;border:0;border-radius:8px;padding:.5rem .8rem;text-decoration:none;font-weight:600}
.kpk-nipt-xemkhung .kpk-nipt-khongxem{color:#fff;padding:1.2rem;text-align:center;line-height:1.5}

/* ── 13/09/2026: danh sách NGÀY gập/mở + thẻ khám thai (anh Tú: "hiện ngày siêu âm, ấn vào ngày
   mới hiện kết quả, cho cả kết quả khám thai lên luôn"). Mỗi ngày một <details>; thẻ siêu âm rồi
   thẻ khám nằm trong .kpk-ngay-than. Không đổi kiểu thẻ .kpk-the. ── */
.kpk-ngay{border:1px solid var(--border,rgba(128,128,128,.25));border-radius:14px;margin:0 0 .6rem;background:var(--surface,#fff);color:var(--text-primary,inherit)}
.kpk-ngay>summary{list-style:none;cursor:pointer;display:flex;flex-wrap:wrap;align-items:center;gap:.3rem .5rem;padding:.8rem 2.2rem .8rem 1rem;position:relative;font-size:.95rem;line-height:1.35}
.kpk-ngay>summary::-webkit-details-marker{display:none}
.kpk-ngay>summary::after{content:"";position:absolute;right:1rem;top:50%;width:.55rem;height:.55rem;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-70%) rotate(45deg);opacity:.55;transition:transform .2s}
.kpk-ngay[open]>summary::after{transform:translateY(-30%) rotate(-135deg)}
.kpk-ngay[open]>summary{border-bottom:1px solid var(--border,rgba(128,128,128,.15))}
.kpk-ngay>summary b{font-size:1.02rem}
.kpk-tomtat{opacity:.8}
.kpk-chip{font-size:.74rem;font-weight:600;padding:.1rem .5rem;border-radius:999px;background:#e6f6ec;color:#1b6b3a}
.kpk-ngay-than{padding:.6rem .6rem 0}
.kpk-ngay-than .kpk-the{border:0;border-radius:0;padding:.4rem .4rem .9rem;margin:0}
.kpk-ngay-than .kpk-the+.kpk-the{border-top:1px dashed var(--border,rgba(128,128,128,.25));padding-top:.9rem}
.kpk-kham header b{color:var(--primary,#1b6b3a)}
.kpk-muc{margin:.6rem 0 0}
.kpk-muc h4{margin:0 0 .25rem;font-size:.9rem;color:var(--primary,inherit)}
.kpk-dongchu{margin:.15rem 0;font-size:.92rem;line-height:1.5;white-space:pre-line}
.kpk-sinhcon{margin:.15rem 0;padding-left:1.1rem;font-size:.92rem;line-height:1.5}
.kpk-kham-cho{padding:.5rem .6rem;font-size:.88rem;opacity:.75}
/* Lịch hẹn sắp tới + nút điền trước khám (21/09/2026) */
.kpk-lich-hen{border:1px solid var(--border-light,#E7E0D2);border-radius:14px;padding:.8rem .9rem;margin:0 0 1rem;background:var(--surface-warm,#F7F3EA)}
.kpk-lich-hen h3{margin:0 0 .5rem;font-size:1rem}
.kpk-lh-dong{display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:.4rem 0;border-top:1px solid var(--border-light,#E7E0D2)}
.kpk-lh-dong:first-of-type{border-top:0}
.kpk-lh-dien{min-height:38px;padding:0 .8rem;border-radius:999px;border:0;background:var(--primary,#469F4C);color:#fff;font-weight:600;font-size:.85rem;white-space:nowrap;cursor:pointer}
.kpk-lh-chu{margin:.5rem 0 0;font-size:.8rem;color:var(--text-secondary,#5E6B77)}
