﻿/* ===== Force one font site-wide (safe for icons) ===== */

/* ตั้งฐานตรง ๆ ไม่พึ่งตัวแปร เผื่อบางหน้าทับ :root */
html, body {
    font-family: 'Noto Sans Thai','Noto Sans JP', system-ui,-apple-system,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif !important;
}

/* ให้ลูกทุก element สืบทอดฟ้อนจาก body
   — แต่ “ยกเว้น” ฟอนต์ของไลบรารีไอคอนยอดนิยม */
:where(body) :where(*):not(:where(
/* Font Awesome */
i[class^="fa-"], i[class*=" fa-"], .fa, .fas, .far, .fab, .fa-solid, .fa-regular, .fa-brands, [class^="fa-"], [class*=" fa-"],
/* Bootstrap Icons */
.bi, i.bi, [class^="bi-"], [class*=" bi-"],
/* Material Icons / Symbols */
.material-icons, .material-icons-outlined, .material-symbols-outlined,
/* Dev/Code fonts (ไม่บังคับ) */
code, pre, kbd, samp )) {
    font-family: inherit !important;
}

/* กัน pseudo-elements ของคลาสไอคอนไม่ให้โดนเปลี่ยนฟอนต์ */
:where( .fa, .fas, .far, .fab, .fa-solid, .fa-regular, .fa-brands, .bi, .material-icons, .material-icons-outlined, .material-symbols-outlined )::before,
:where( .fa, .fas, .far, .fab, .fa-solid, .fa-regular, .fa-brands, .bi, .material-icons, .material-icons-outlined, .material-symbols-outlined )::after {
    font-style: normal;
}
