/* SportBMS (v2) — คืนค่า default ของเบราว์เซอร์ที่ Tailwind preflight รีเซ็ตไป (ของเดิมไม่มี preflight) + จุดที่ต่างจากระบบเดิม */
/*
 * scope = กล่องราก div.pmj-root.pmj-legacy (ทำหน้าที่ body ของเดิม) · <html> มีแค่ .pmj-legacy-root (font-size 18px ของเดิม)
 * โมดัล/ป๊อปอัพของระบบ v2 อยู่นอกกล่อง (Radix portal ไป body) → ไม่โดน CSS เดิม หน้าตาเหมือน layout SPORT ปกติ
 * ค่าพื้นฐานของหน้า = ของเดิม (ตัวอักษรดำ · line-height normal · พื้น --surface-ground #f9fafb) — v2 ตั้งเทา/1.5/ขาวไว้
 */
.pmj-legacy:not(.sbms-v2-island *){font-family:var(--font-family,'Kanit',sans-serif);color:#000;line-height:normal}
/* sport/index.scss ตั้ง body.sport-layout{background-color:...!important} — พื้นนอกกล่องใช้ --surface-ground ของ theme เดิม */
html.pmj-legacy-root body.sport-layout{background-color:var(--surface-ground,#f9fafb)!important}
/* default ของเบราว์เซอร์ที่ Tailwind preflight ลบทิ้ง — :where() = ไม่เพิ่ม specificity ให้ .p-reset / class ของแบรนด์ชนะได้เหมือนของเดิม */
:where(.pmj-legacy) h1:not(.sbms-v2-island *),:where(.pmj-legacy) h2:not(.sbms-v2-island *),:where(.pmj-legacy) h3:not(.sbms-v2-island *),:where(.pmj-legacy) h4:not(.sbms-v2-island *),:where(.pmj-legacy) h5:not(.sbms-v2-island *),:where(.pmj-legacy) h6:not(.sbms-v2-island *){font-weight:bold;margin-block:.67em}
:where(.pmj-legacy) h1:not(.sbms-v2-island *){font-size:2em}
:where(.pmj-legacy) h2:not(.sbms-v2-island *){font-size:1.5em;margin-block:.83em}
:where(.pmj-legacy) h3:not(.sbms-v2-island *){font-size:1.17em;margin-block:1em}
:where(.pmj-legacy) h4:not(.sbms-v2-island *){font-size:1em;margin-block:1.33em}
:where(.pmj-legacy) h5:not(.sbms-v2-island *){font-size:.83em;margin-block:1.67em}
:where(.pmj-legacy) h6:not(.sbms-v2-island *){font-size:.67em;margin-block:2.33em}
:where(.pmj-legacy) p:not(.sbms-v2-island *){margin-block:1em}
:where(.pmj-legacy) ul:not(.sbms-v2-island *),:where(.pmj-legacy) ol:not(.sbms-v2-island *){padding-inline-start:40px;margin-block:1em}
:where(.pmj-legacy) ul:not(.sbms-v2-island *){list-style:disc}
:where(.pmj-legacy) ol:not(.sbms-v2-island *){list-style:decimal}
:where(.pmj-legacy) img:not(.sbms-v2-island *),:where(.pmj-legacy) video:not(.sbms-v2-island *),:where(.pmj-legacy) canvas:not(.sbms-v2-island *){display:inline;vertical-align:baseline;max-width:none;height:auto}
:where(.pmj-legacy) svg:not(.sbms-v2-island *){display:inline;vertical-align:baseline}
/* .p-reset ของ PrimeVue 3 (อยู่ใน primevue.css เดิม ไม่อยู่ใน style ที่ component ฉีด) — ul จุดแบนเนอร์ไม่มี margin */
:where(.pmj-legacy) .p-reset:not(.sbms-v2-island *){margin:0;padding:0;border:0;outline:0;text-decoration:none;font-size:100%;list-style:none}
:where(.pmj-legacy) hr:not(.sbms-v2-island *){border-top:1px solid #dee2e6;margin:1rem 0}
:where(.pmj-legacy) a:not(.sbms-v2-island *){color:LinkText;color:-webkit-link;text-decoration:underline}
:where(.pmj-legacy) small:not(.sbms-v2-island *){font-size:smaller}
:where(.pmj-legacy) b:not(.sbms-v2-island *),:where(.pmj-legacy) strong:not(.sbms-v2-island *){font-weight:bold}
:where(.pmj-legacy) table:not(.sbms-v2-island *){border-collapse:separate}
:where(.pmj-legacy) button:not(.sbms-v2-island *),:where(.pmj-legacy) input:not(.sbms-v2-island *),:where(.pmj-legacy) textarea:not(.sbms-v2-island *),:where(.pmj-legacy) select:not(.sbms-v2-island *){font-family:inherit;font-size:13.3333px;line-height:normal;color:inherit}
.pmj-legacy .p-inputtext:not(.sbms-v2-island *)::placeholder{color:#6c757d}
/* PrimeVue 3.4x ปุ่มโหลด */
.pmj-legacy .p-button-loading-icon:not(.sbms-v2-island *){margin-right:.5rem}
.pmj-legacy .p-button.p-button-icon-only.p-button-loading .p-button-loading-icon:not(.sbms-v2-island *){margin:0}
/* mask ไดอะล็อกของเดิม (primevue core) */
.pmj-legacy .p-component-overlay:not(.sbms-v2-island *){background-color:rgba(0,0,0,.4);transition-duration:.2s}
.pmj-legacy .p-dialog-mask:not(.sbms-v2-island *){padding:0 .75rem}
/* .grid ของ primeflex ชนะ tailwind (display:grid) — ระบุซ้ำเผื่อ tailwind มาทีหลัง */
.pmj-legacy .grid:not(.sbms-v2-island *){display:flex;flex-wrap:wrap;margin-right:-.5rem;margin-left:-.5rem;margin-top:-.5rem}
.pmj-legacy .grid-nogutter:not(.sbms-v2-island *){margin-right:0;margin-left:0;margin-top:0}
.pmj-legacy .grid-nogutter>.col:not(.sbms-v2-island *),.pmj-legacy .grid-nogutter>[class*=col-]:not(.sbms-v2-island *){padding:0}
/* ของระบบ v2 ที่ไม่มีในของเดิม — ซ่อน/ปรับให้กลืนกับดีไซน์เดิม */
.pmj-legacy .sport-layout .sport-loader:not(.sbms-v2-island *),.pmj-legacy #loading-overlay:not(.sbms-v2-island *){display:none!important}
.pmj-root.pmj-legacy:not(.sbms-v2-island *){min-height:100svh;background:var(--surface-ground,#eff3f8)}
/* หน้า auth ของเดิมสูงเต็มจอ */
.pmj-legacy #login-page.layout-wrapper:not(.sbms-v2-island *),.pmj-legacy #register-page.layout-wrapper:not(.sbms-v2-island *){display:flex;flex-direction:column;min-height:100svh}
/* ทำให้ dropdown ที่ทำจาก <select> ดูเหมือน p-dropdown */
.pmj-legacy select.p-dropdown-native:not(.sbms-v2-island *){appearance:none;-webkit-appearance:none;width:100%;border:0;background:transparent;font:inherit;color:inherit;padding:.75rem 2.5rem .75rem .75rem;cursor:pointer;outline:none}
/* Turnstile/แคปช่า ของ v2 จัดกลาง */
.pmj-legacy .cf-turnstile:not(.sbms-v2-island *),.pmj-legacy .captcha-field:not(.sbms-v2-island *){display:flex;justify-content:center}
/* เกาะ v2 (.sbms-v2-island): CSS เดิมไม่แตะของข้างใน (:not(.sbms-v2-island *) ทุก rule — ดู scope-legacy) แต่ค่าที่ "สืบทอด"
   จากกล่อง .pmj-legacy (ฟอนต์ theme เดิม · สีดำ · line-height normal) ยังไหลเข้า → คืนเป็นค่าของ v2 (body: Prompt · 1.5 · --text-primary) */
.pmj-legacy .sbms-v2-island{font-family:var(--font-prompt),sans-serif;line-height:1.5;color:var(--text-primary,inherit)}

/* กันหน้าเด้งยืดตอนลากเลื่อนเลยขอบบน (rubber-band ของ macOS/Android) — ส่วนหัวจะเลื่อนลงมาเห็นพื้นเทาเหนือเว็บ (ผู้ใช้เจอ 2026-09-30) */
html.pmj-legacy-root,
html.pmj-legacy-root body {
  overscroll-behavior-y: none;
}

/* จุด indicator ของแบนเนอร์หน้าแรก: กล่องเนื้อหายกทับแบนเนอร์ (--bms-home-overlap จาก layout) → ดันจุดขึ้นพ้นส่วนที่ถูกทับ */
.pmj-legacy .layout-topbar-main-gallery .p-galleria-indicator-onitem .p-galleria-indicators:not(.sbms-v2-island *) { padding-bottom: calc(1rem + var(--bms-home-overlap, 0px)); }

/* ป้ายเมนูจากหลังบ้าน (จัดการหน้าเว็บ → ป้ายเมนู) บนการ์ดเมนูหน้าแรก — เอฟเฟคเดียวกับ _menu-badge.scss ของธีมอื่น */
/* ริบบิ้นเดิมใช้ฟอนต์ Lato (ไม่มีอักษรไทย → ข้อความไทยหลุดฟอนต์) → ใช้ฟอนต์เว็บ (Kanit) แทน · ตัวหนา ขนาดพอดีริบบิ้น */
.pmj-legacy .pmj-ribbon-box .ribbon span:not(.sbms-v2-island *) { font-family: var(--font-family, 'Kanit', sans-serif); font-size: 11px; line-height: 1.4; letter-spacing: .3px; }
.pmj-legacy .pmj-ribbon-box .pmj-menu-badge-img { position: absolute; top: 4px; left: 4px; width: 36px; height: auto; z-index: 2; pointer-events: none; }
.pmj-legacy .ribbon span.-blink, .pmj-legacy .pmj-menu-badge-img.-blink { animation: bms-badge-blink 1s step-end infinite; }
.pmj-legacy .ribbon span.-pulse, .pmj-legacy .pmj-menu-badge-img.-pulse { animation: bms-badge-pulse 1.2s ease-in-out infinite; }
.pmj-legacy .ribbon span.-shake, .pmj-legacy .pmj-menu-badge-img.-shake { animation: bms-badge-shake .8s ease-in-out infinite; }
.pmj-legacy .ribbon span.-bounce, .pmj-legacy .pmj-menu-badge-img.-bounce { animation: bms-badge-bounce 1s ease-in-out infinite; }
.pmj-legacy .ribbon span.-glow, .pmj-legacy .pmj-menu-badge-img.-glow { animation: bms-badge-glow 1.4s ease-in-out infinite; }
.pmj-legacy .ribbon span.-fade, .pmj-legacy .pmj-menu-badge-img.-fade { animation: bms-badge-fade 1.6s ease-in-out infinite; }
.pmj-legacy .ribbon span.-wobble, .pmj-legacy .pmj-menu-badge-img.-wobble { animation: bms-badge-wobble 1s ease-in-out infinite; }
.pmj-legacy .ribbon span.-flip, .pmj-legacy .pmj-menu-badge-img.-flip { animation: bms-badge-flip 2s linear infinite; }
.pmj-legacy .ribbon span.-heartbeat, .pmj-legacy .pmj-menu-badge-img.-heartbeat { animation: bms-badge-heartbeat 1.4s ease-in-out infinite; }
.pmj-legacy .ribbon span.-ring, .pmj-legacy .pmj-menu-badge-img.-ring { animation: bms-badge-ring 1.6s ease-in-out infinite; }
@keyframes bms-badge-blink { 50% { opacity: 0; } }
@keyframes bms-badge-pulse { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.12); } }
@keyframes bms-badge-shake { 0%, 100% { transform: translateX(0); } 25% { transform: translateX(-2px); } 75% { transform: translateX(2px); } }
@keyframes bms-badge-bounce { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-3px); } }
@keyframes bms-badge-glow { 0%, 100% { filter: drop-shadow(0 0 0 rgba(255,255,255,0)); } 50% { filter: drop-shadow(0 0 6px rgba(255,255,255,.9)); } }
@keyframes bms-badge-fade { 0%, 100% { opacity: 1; } 50% { opacity: .35; } }
@keyframes bms-badge-wobble { 0%, 100% { transform: rotate(0); } 25% { transform: rotate(-4deg); } 75% { transform: rotate(4deg); } }
@keyframes bms-badge-flip { 0% { transform: rotateY(0); } 50% { transform: rotateY(180deg); } 100% { transform: rotateY(360deg); } }
@keyframes bms-badge-heartbeat { 0%, 100% { transform: scale(1); } 14% { transform: scale(1.15); } 28% { transform: scale(1); } 42% { transform: scale(1.15); } }
@keyframes bms-badge-ring { 0%, 100% { box-shadow: 0 0 0 0 rgba(255,255,255,.7); } 50% { box-shadow: 0 0 0 4px rgba(255,255,255,0); } }

/* หน้าแนะนำเพื่อน: กล่องลิงก์ + ปุ่มคัดลอกในแถวเดียว (แทน h4.link-truncate ของเดิมที่กว้าง 80% เยื้องซ้าย) */
.pmj-legacy .pmj-refer-link { display: flex; align-items: center; gap: 10px; width: 100%; padding: 5px 5px 5px 14px; border-radius: 999px; background: #fff; border: 1px solid color-mix(in srgb, var(--primary-color, #2196f3) 28%, transparent); box-shadow: 0 2px 10px rgba(0, 0, 0, .06); cursor: pointer; -webkit-tap-highlight-color: transparent; transition: box-shadow .15s ease, transform .1s ease; }
.pmj-legacy .pmj-refer-link:active { transform: scale(.99); box-shadow: 0 1px 4px rgba(0, 0, 0, .08); }
.pmj-legacy .pmj-refer-link:focus-visible { outline: 2px solid var(--primary-color, #2196f3); outline-offset: 2px; }
.pmj-legacy .pmj-refer-link__icon { flex: 0 0 auto; font-size: 15px; color: var(--primary-color, #2196f3); }
.pmj-legacy .pmj-refer-link__text { flex: 1 1 auto; min-width: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; text-align: left; font-size: 14px; font-weight: 600; line-height: 1.4; color: #333; }
.pmj-legacy .pmj-refer-link .p-button { flex: 0 0 auto; margin: 0; padding: 7px 14px; font-size: 13px; line-height: 1.2; white-space: nowrap; }
.pmj-legacy .pmj-refer-link .p-button .p-button-icon { font-size: 13px; }
.pmj-legacy .pmj-refer-link.-empty { cursor: default; }
.pmj-legacy .pmj-refer-link.-empty .pmj-refer-link__text { font-weight: 400; color: #999; }

/* หน้าตรวจรับเครดิตฟรี: ตารางรายชื่อ (แปลงจากรายการคั่น tab ที่แอดมินวางในบทความ) */
.pmj-legacy .pmj-free-credit-table { width: 100%; border-collapse: collapse; white-space: normal; font-size: 13px; }
.pmj-legacy .pmj-free-credit-table td { padding: 8px 10px; text-align: left; vertical-align: middle; word-break: break-word; border-bottom: 1px solid rgba(0, 0, 0, .06); }
.pmj-legacy .pmj-free-credit-table tr:nth-child(odd) td { background: color-mix(in srgb, var(--primary-color, #2196f3) 6%, transparent); }
.pmj-legacy .pmj-free-credit-table tr:last-child td { border-bottom: 0; }
.pmj-legacy .pmj-free-credit-table td.-amount { text-align: right; font-weight: 600; white-space: nowrap; color: var(--primary-color, #2196f3); font-variant-numeric: tabular-nums; }
.pmj-legacy .pmj-free-credit-table tr td:first-child { border-radius: 8px 0 0 8px; }
.pmj-legacy .pmj-free-credit-table tr td:last-child { border-radius: 0 8px 8px 0; }

/* บทความ (SportBMS — ของเดิมไม่มีหน้านี้): รายการการ์ด + หน้าอ่าน */
.pmj-legacy .pmj-blog-list { display: grid; gap: 14px; margin-top: 12px; }
.pmj-legacy .pmj-blog-card { display: block; overflow: hidden; border-radius: 15px; background: #fff; color: inherit; text-decoration: none; box-shadow: 0 2px 12px rgba(0, 0, 0, .08); border: 1px solid rgba(0, 0, 0, .05); -webkit-tap-highlight-color: transparent; transition: transform .1s ease, box-shadow .15s ease; }
.pmj-legacy .pmj-blog-card:active { transform: scale(.99); box-shadow: 0 1px 5px rgba(0, 0, 0, .1); }
.pmj-legacy .pmj-blog-card__img { display: block; width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }
.pmj-legacy .pmj-blog-card__body { padding: 12px 14px 12px; text-align: left; }
.pmj-legacy .pmj-blog-card__title { margin: 0 0 4px; font-size: 16px; font-weight: 700; line-height: 1.35; color: #222; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.pmj-legacy .pmj-blog-card__desc { margin: 0 0 8px; font-size: 13px; line-height: 1.5; color: #777; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.pmj-legacy .pmj-blog-card__meta { display: flex; align-items: center; justify-content: space-between; gap: 10px; font-size: 12px; color: #999; }
.pmj-legacy .pmj-blog-card__meta .pi { font-size: 11px; }
.pmj-legacy .pmj-blog-card__more { color: var(--primary-color, #2196f3); font-weight: 600; }
.pmj-legacy .pmj-blog-back { display: inline-flex; align-items: center; gap: 4px; margin-bottom: 8px; font-size: 13px; font-weight: 600; color: var(--primary-color, #2196f3); text-decoration: none; }
.pmj-legacy .pmj-blog-title { margin: 0 0 6px; font-size: 22px; line-height: 1.3; text-align: left; }
.pmj-legacy .pmj-blog-cover { display: block; width: 100%; border-radius: 12px; margin-bottom: 14px; }
.pmj-legacy .pmj-blog-content { text-align: left; font-size: 14px; line-height: 1.75; color: #333; overflow-wrap: anywhere; }
.pmj-legacy .pmj-blog-content p { margin: 0 0 12px; }
.pmj-legacy .pmj-blog-content h2, .pmj-legacy .pmj-blog-content h3, .pmj-legacy .pmj-blog-content h4 { margin: 18px 0 8px; line-height: 1.35; color: #222; }
.pmj-legacy .pmj-blog-content h2 { font-size: 18px; } .pmj-legacy .pmj-blog-content h3 { font-size: 16px; } .pmj-legacy .pmj-blog-content h4 { font-size: 15px; }
.pmj-legacy .pmj-blog-content img, .pmj-legacy .pmj-blog-content video, .pmj-legacy .pmj-blog-content iframe { max-width: 100%; height: auto; border-radius: 10px; }
.pmj-legacy .pmj-blog-content ul, .pmj-legacy .pmj-blog-content ol { margin: 0 0 12px; padding-left: 22px; }
.pmj-legacy .pmj-blog-content ul { list-style: disc; } .pmj-legacy .pmj-blog-content ol { list-style: decimal; }
.pmj-legacy .pmj-blog-content a { color: var(--primary-color, #2196f3); text-decoration: underline; }
.pmj-legacy .pmj-blog-content table { display: block; max-width: 100%; overflow-x: auto; border-collapse: collapse; }
.pmj-legacy .pmj-blog-content td, .pmj-legacy .pmj-blog-content th { padding: 6px 8px; border: 1px solid rgba(0, 0, 0, .1); }
.pmj-legacy .pmj-blog-nav { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 20px; padding-top: 14px; border-top: 1px solid rgba(0, 0, 0, .08); }
.pmj-legacy .pmj-blog-nav__item { display: grid; gap: 2px; min-width: 0; padding: 10px 12px; border-radius: 12px; background: color-mix(in srgb, var(--primary-color, #2196f3) 7%, transparent); color: inherit; text-decoration: none; text-align: left; }
.pmj-legacy .pmj-blog-nav__item.-next { text-align: right; }
.pmj-legacy .pmj-blog-nav__item small { font-size: 11px; color: var(--primary-color, #2196f3); font-weight: 600; }
.pmj-legacy .pmj-blog-nav__item span { font-size: 13px; font-weight: 600; color: #333; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.pmj-legacy .pmj-blog-count { margin: -4px 0 0; font-size: 12px; color: #999; }
.pmj-legacy .pmj-blog-paginator { margin-top: 18px; }
.pmj-legacy .pmj-blog-paginator .p-paginator { display: flex; flex-wrap: nowrap; align-items: center; justify-content: center; gap: 2px; padding: 0; }
.pmj-legacy .pmj-blog-paginator .p-paginator-pages { display: flex; align-items: center; gap: 2px; }
.pmj-legacy .pmj-blog-paginator a.p-link { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; min-width: 38px; width: 38px; height: 38px; margin: 0; font-size: 15px; text-decoration: none; }
