/* เปลวฟ้า เติมเกม — สไตล์หน้าร้าน */
:root {
	--pf-primary: #a855f7;
	--pf-accent: #f472b6;
	--pf-font: "Kanit";
	--pf-bg: #120a1f;
	--pf-bg2: #1a1030;
	--pf-panel: #21153b;
	--pf-line: #3b2a60;
	--pf-text: #f6f0ff;
	--pf-muted: #b5a8d6;
	--pf-ok: #2fd08a;
	--pf-err: #ff5d6c;
	--pf-warn: #ffc24b;
	--pf-radius: 16px;
	--pf-grad: linear-gradient(120deg, var(--pf-primary), var(--pf-accent));
	--pf-tint: color-mix(in srgb, var(--pf-primary) 14%, transparent);
	--pf-glow: color-mix(in srgb, var(--pf-primary) 32%, transparent);
}

body.pf-body {
	margin: 0;
	background: radial-gradient(1200px 600px at 85% -10%, color-mix(in srgb, var(--pf-accent) 20%, transparent), transparent 60%),
		radial-gradient(900px 500px at 0% 0%, color-mix(in srgb, var(--pf-primary) 22%, transparent), transparent 55%), var(--pf-bg);
	background-attachment: fixed;
	color: var(--pf-text);
	font-family: var(--pf-font), "Kanit", "Noto Sans Thai", "Leelawadee UI", "Thonburi", system-ui, -apple-system, "Segoe UI", sans-serif;
	font-size: 16px;
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
}
.pf-body *, .pf-body *::before, .pf-body *::after { box-sizing: border-box; }
.pf-body a { color: var(--pf-accent); text-decoration: none; }
.pf-body a:hover { text-decoration: underline; }
.pf-body h1, .pf-body h2, .pf-body h3 { margin: 0 0 .6em; line-height: 1.25; font-weight: 600; }
.pf-body h1 { font-size: clamp(1.5rem, 3.5vw, 2rem); }
.pf-body h2 { font-size: 1.2rem; }
.pf-body h3 { font-size: 1.05rem; }
.pf-body p { margin: 0 0 .8em; }
.pf-body img { max-width: 100%; height: auto; }
.pf-body [hidden] { display: none !important; }

.pf-wrap { width: min(1120px, 100% - 32px); margin-inline: auto; }
.pf-content { padding: 28px 0 56px; min-height: 60vh; }
.pf-muted { color: var(--pf-muted); font-size: .92rem; }
.pf-center { text-align: center; }
.pf-narrow { max-width: 760px; margin-inline: auto; }

/* แถบประกาศ + หัวเว็บ */
.pf-announce { background: var(--pf-grad); color: #fff; text-align: center; padding: 8px 16px; font-size: .9rem; font-weight: 500; }
.pf-header { position: sticky; top: 0; z-index: 50; background: color-mix(in srgb, var(--pf-bg) 86%, transparent); backdrop-filter: blur(10px); border-bottom: 1px solid var(--pf-line); }
.pf-header-in { display: flex; align-items: center; gap: 16px; min-height: 64px; }
.pf-logo { display: inline-flex; align-items: center; gap: 10px; font-weight: 700; font-size: 1.15rem; color: var(--pf-text) !important; text-decoration: none !important; margin: 0; }
.pf-logo img { height: 36px; width: auto; }
.pf-flame { width: 30px; height: 30px; flex: none; }
.pf-nav { margin-left: auto; display: flex; align-items: center; gap: 4px; flex-wrap: wrap; }
.pf-nav a { color: var(--pf-muted); padding: 8px 12px; border-radius: 10px; font-size: .95rem; text-decoration: none !important; }
.pf-nav a:hover, .pf-nav a.is-on { color: var(--pf-text); background: rgba(255, 255, 255, .06); }
.pf-nav .pf-chip { background: var(--pf-tint); color: var(--pf-text); border: 1px solid var(--pf-primary); font-weight: 600; }
.pf-nav .pf-chip b { color: var(--pf-accent); }
.pf-burger { display: none; margin-left: auto; background: none; border: 1px solid var(--pf-line); color: var(--pf-text); border-radius: 10px; font-size: 1.2rem; width: 42px; height: 42px; cursor: pointer; }

/* ปุ่มและฟอร์ม */
.pf-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 12px 22px; border-radius: 12px; border: 1px solid var(--pf-line); background: var(--pf-bg2); color: var(--pf-text) !important; font: inherit; font-weight: 600; cursor: pointer; text-decoration: none !important; transition: transform .12s ease, filter .12s ease; }
.pf-btn:hover { transform: translateY(-1px); filter: brightness(1.08); }
.pf-btn:disabled { opacity: .55; cursor: not-allowed; transform: none; }
.pf-btn-primary { background: var(--pf-grad); border-color: transparent; color: #fff !important; box-shadow: 0 8px 24px var(--pf-glow); }
.pf-btn-ghost { background: transparent; }
.pf-btn-block { width: 100%; }
.pf-form label, .pf-game-form label { display: block; margin-bottom: 14px; font-size: .92rem; color: var(--pf-muted); }
.pf-form small, .pf-game-form small { display: block; margin-top: 4px; font-size: .8rem; color: var(--pf-muted); }
.pf-input { display: block; width: 100%; margin-top: 6px; padding: 12px 14px; border-radius: 12px; border: 1px solid var(--pf-line); background: var(--pf-bg); color: var(--pf-text); font: inherit; }
.pf-input:focus { outline: 2px solid var(--pf-accent); outline-offset: 1px; border-color: transparent; }
.pf-input:disabled { opacity: .6; }
.pf-check { display: flex !important; gap: 8px; align-items: flex-start; }
.pf-hp { position: absolute !important; left: -9999px; }

.pf-panel { background: var(--pf-panel); border: 1px solid var(--pf-line); border-radius: var(--pf-radius); padding: 22px; margin-bottom: 18px; }
.pf-alert { padding: 12px 16px; border-radius: 12px; margin-bottom: 14px; font-size: .95rem; border: 1px solid; }
.pf-alert-ok { background: rgba(47, 208, 138, .12); border-color: rgba(47, 208, 138, .5); color: #b6f3d6; }
.pf-alert-err { background: rgba(255, 93, 108, .12); border-color: rgba(255, 93, 108, .5); color: #ffc9ce; }

/* หน้าแรก */
.pf-hero { text-align: center; padding: 56px 16px 40px; }
.pf-hero-kicker { display: inline-block; padding: 6px 14px; border-radius: 999px; border: 1px solid var(--pf-line); color: var(--pf-muted); font-size: .85rem; margin-bottom: 18px; }
.pf-hero h1 { font-size: clamp(1.9rem, 5.2vw, 3.2rem); font-weight: 700; background: var(--pf-grad); -webkit-background-clip: text; background-clip: text; color: transparent; margin-bottom: 14px; }
.pf-body .pf-hero-sub { color: var(--pf-muted); max-width: 640px; margin: 0 auto 26px; text-wrap: balance; }
.pf-hero h1 { text-wrap: balance; }
.pf-hero-cta { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }
.pf-account .pf-hero-cta { justify-content: flex-start; }
.pf-feats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; margin-bottom: 40px; }
.pf-feats div { background: var(--pf-panel); border: 1px solid var(--pf-line); border-radius: var(--pf-radius); padding: 18px; }
.pf-feats b { display: block; margin-bottom: 4px; }
.pf-feats span { color: var(--pf-muted); font-size: .88rem; }
.pf-section { margin-bottom: 44px; }
.pf-section-head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-bottom: 18px; }
.pf-section-head h1, .pf-section-head h2 { margin: 0; }

/* การ์ดเกม */
.pf-search { max-width: 360px; margin-bottom: 18px; }
.pf-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(158px, 1fr)); gap: 16px; }
.pf-card { display: flex; flex-direction: column; background: var(--pf-panel); border: 1px solid var(--pf-line); border-radius: var(--pf-radius); padding: 10px 10px 14px; color: var(--pf-text) !important; text-decoration: none !important; transition: transform .15s ease, border-color .15s ease, box-shadow .15s ease; }
.pf-card:hover { transform: translateY(-4px); border-color: var(--pf-primary); box-shadow: 0 14px 30px rgba(0, 0, 0, .35); }
.pf-card-media { position: relative; display: block; aspect-ratio: 1; border-radius: 12px; overflow: hidden; background: var(--pf-bg2); margin-bottom: 10px; }
.pf-card-img { width: 100%; height: 100%; object-fit: cover; display: block; }
.pf-card-ph { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; font-size: 2.4rem; font-weight: 700; color: #fff; background: var(--pf-grad); letter-spacing: .04em; }
.pf-grid .pf-card:nth-child(3n+2) .pf-card-ph { filter: hue-rotate(-28deg); }
.pf-grid .pf-card:nth-child(3n+3) .pf-card-ph { filter: hue-rotate(28deg); }
.pf-card-badge { position: absolute; top: 8px; left: 8px; background: var(--pf-primary); color: #fff; font-size: .72rem; font-weight: 600; padding: 2px 10px; border-radius: 999px; }
.pf-card-title { font-weight: 600; font-size: .98rem; line-height: 1.3; }
.pf-card-sub { color: var(--pf-muted); font-size: .82rem; margin-top: 2px; }

/* ขั้นตอน */
.pf-steps { list-style: none; margin: 0 0 18px; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.pf-steps li { background: var(--pf-panel); border: 1px solid var(--pf-line); border-radius: var(--pf-radius); padding: 18px; display: flex; flex-direction: column; gap: 4px; }
.pf-steps li span:last-child { color: var(--pf-muted); font-size: .88rem; }
.pf-step-no { display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; border-radius: 50%; background: var(--pf-grad); color: #fff; font-weight: 700; font-size: .95rem; flex: none; margin-right: 6px; }
.pf-body details { border-top: 1px solid var(--pf-line); padding: 12px 0; }
.pf-body summary { cursor: pointer; font-weight: 500; }
.pf-body details p { color: var(--pf-muted); margin: 8px 0 0; }
.pf-prose h2 { margin-top: 1.2em; }
.pf-prose p { color: var(--pf-muted); }

/* เข้าสู่ระบบ */
.pf-auth { max-width: 440px; margin-inline: auto; }
.pf-tabs { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; background: var(--pf-bg2); border: 1px solid var(--pf-line); border-radius: 14px; padding: 6px; margin-bottom: 14px; }
.pf-tabs button { border: 0; background: transparent; color: var(--pf-muted); font: inherit; font-weight: 600; padding: 10px; border-radius: 10px; cursor: pointer; }
.pf-tabs button.is-on { background: var(--pf-panel); color: var(--pf-text); box-shadow: inset 0 0 0 1px var(--pf-line); }

/* หน้าเกม */
.pf-crumb { margin-bottom: 14px; font-size: .92rem; }
.pf-game-cols { display: grid; grid-template-columns: 300px 1fr; gap: 20px; align-items: start; }
.pf-game-info { position: sticky; top: 84px; }
.pf-game-info h1 { font-size: 1.4rem; margin-top: 4px; }
.pf-ticks { list-style: none; padding: 0; margin: 12px 0 0; font-size: .9rem; }
.pf-ticks li { padding-left: 24px; position: relative; margin-bottom: 6px; }
.pf-ticks li::before { content: "✓"; position: absolute; left: 0; color: var(--pf-ok); font-weight: 700; }
.pf-game-form h2 { display: flex; align-items: center; }
.pf-packs { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 12px; }
.pf-pack { position: relative; display: flex !important; flex-direction: column; gap: 4px; margin: 0 !important; padding: 14px; border: 1px solid var(--pf-line); border-radius: 14px; background: var(--pf-bg); cursor: pointer; transition: border-color .12s ease, background .12s ease; }
.pf-pack input { position: absolute; opacity: 0; pointer-events: none; }
.pf-pack:hover { border-color: var(--pf-accent); }
.pf-pack.is-on, .pf-pack:has(input:checked) { border-color: var(--pf-primary); background: var(--pf-tint); box-shadow: 0 0 0 1px var(--pf-primary) inset; }
.pf-pack:has(input:focus-visible) { outline: 2px solid var(--pf-accent); outline-offset: 2px; }
.pf-pack-name { color: var(--pf-text); font-weight: 600; font-size: .95rem; }
.pf-pack-price { color: var(--pf-accent); font-weight: 700; }
.pf-kv { display: flex; justify-content: space-between; gap: 16px; padding: 8px 0; border-bottom: 1px dashed var(--pf-line); margin: 0 !important; }
.pf-kv span { color: var(--pf-muted); }
.pf-kv b { text-align: right; font-weight: 600; }
.pf-summary .pf-btn { margin-top: 16px; }
.pf-summary .pf-alert { margin-top: 12px; margin-bottom: 0; }
.pf-price { color: var(--pf-accent); font-size: 1.25rem; }

/* บัญชีของฉัน */
.pf-account { display: grid; grid-template-columns: 250px 1fr; gap: 20px; align-items: start; }
.pf-side-name { font-weight: 600; font-size: 1.05rem; margin-bottom: 8px; }
.pf-side-bal { background: var(--pf-bg); border: 1px solid var(--pf-line); border-radius: 12px; padding: 12px; }
.pf-side-bal span { display: block; color: var(--pf-muted); font-size: .82rem; }
.pf-side-bal b { font-size: 1.35rem; color: var(--pf-accent); }
.pf-side nav { display: flex; flex-direction: column; gap: 2px; }
.pf-side nav a { padding: 9px 12px; border-radius: 10px; color: var(--pf-muted); text-decoration: none !important; }
.pf-side nav a:hover, .pf-side nav a.is-on { background: rgba(255, 255, 255, .06); color: var(--pf-text); }
.pf-main { min-width: 0; }
.pf-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.pf-stats span { display: block; color: var(--pf-muted); font-size: .86rem; }
.pf-stats b { font-size: 1.5rem; }
.pf-bank { background: var(--pf-bg); border: 1px solid var(--pf-line); border-radius: 12px; padding: 6px 14px; margin-bottom: 18px; }
.pf-bank .pf-kv:last-child { border-bottom: 0; }
.pf-copy { background: transparent; border: 1px solid var(--pf-line); color: var(--pf-accent); border-radius: 8px; font: inherit; font-size: .78rem; padding: 2px 8px; cursor: pointer; margin-left: 6px; }
.pf-table-wrap { overflow-x: auto; }
.pf-table { width: 100%; border-collapse: collapse; font-size: .9rem; }
.pf-table th, .pf-table td { text-align: left; padding: 10px 8px; border-bottom: 1px solid var(--pf-line); vertical-align: top; white-space: nowrap; }
.pf-table th { color: var(--pf-muted); font-weight: 500; font-size: .82rem; }
.pf-table td small { display: block; color: var(--pf-muted); white-space: normal; }
.pf-num { text-align: right !important; font-variant-numeric: tabular-nums; }
.pf-pos { color: var(--pf-ok); }
.pf-neg { color: var(--pf-err); }
.pf-status { display: inline-block; padding: 2px 10px; border-radius: 999px; font-size: .78rem; font-weight: 600; background: rgba(255, 255, 255, .08); }
.pf-status-pending { background: rgba(255, 194, 75, .16); color: var(--pf-warn); }
.pf-status-processing { background: rgba(96, 165, 250, .18); color: #7cb8ff; }
.pf-status-success, .pf-status-approved { background: rgba(47, 208, 138, .16); color: var(--pf-ok); }
.pf-status-refunded, .pf-status-rejected { background: rgba(255, 93, 108, .16); color: var(--pf-err); }

/* คำโปรย + บทความ */
.pf-promos { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.pf-promo { position: relative; background: var(--pf-panel); border: 1px solid var(--pf-line); border-radius: var(--pf-radius); padding: 22px; overflow: hidden; }
.pf-promo::before { content: ""; position: absolute; inset: 0 0 auto 0; height: 3px; background: var(--pf-grad); }
.pf-promo p { color: var(--pf-muted); margin: 0; font-size: .93rem; }
.pf-about { border-top: 1px solid var(--pf-line); padding-top: 28px; }
.pf-about p { color: var(--pf-muted); max-width: 820px; }
.pf-articles { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.pf-article-card { display: flex; flex-direction: column; gap: 6px; background: var(--pf-panel); border: 1px solid var(--pf-line); border-radius: var(--pf-radius); padding: 20px; color: var(--pf-text) !important; text-decoration: none !important; transition: transform .15s ease, border-color .15s ease; }
.pf-article-card:hover { transform: translateY(-3px); border-color: var(--pf-accent); }
.pf-article-card img { border-radius: 10px; margin-bottom: 6px; aspect-ratio: 16 / 9; object-fit: cover; width: 100%; }
.pf-article-card strong { font-size: 1.02rem; line-height: 1.4; font-weight: 600; }
.pf-article-card span { color: var(--pf-muted); font-size: .9rem; }
.pf-article-card .pf-article-date { font-size: .78rem; }
.pf-article-card em { font-style: normal; color: var(--pf-accent); font-size: .88rem; margin-top: auto; padding-top: 6px; }
.pf-article h1 { font-size: clamp(1.5rem, 4vw, 2.1rem); }
.pf-prose h2 { font-size: 1.15rem; margin-top: 1.4em; color: var(--pf-text); }
.pf-prose h2:first-child, .pf-prose h3:first-child { margin-top: 0; }
.pf-prose h3 { margin-top: 1.2em; }
.pf-prose ul, .pf-prose ol { color: var(--pf-muted); padding-left: 1.3em; margin: 0 0 1em; }
.pf-prose li { margin-bottom: .35em; }
.pf-prose strong { color: var(--pf-text); font-weight: 600; }
.pf-cta { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.pf-cta h3, .pf-cta p { margin: 0; }
.pf-game-desc { margin-top: 20px; }

/* เติมเครดิต */
.pf-pay-grid { display: grid; grid-template-columns: 340px 1fr; gap: 24px; align-items: start; }
.pf-bankcard { position: relative; display: flex; flex-direction: column; gap: 6px; min-height: 200px; padding: 24px; border-radius: 20px; color: #fff; background: linear-gradient(135deg, #0f7a3d, #19b35b 60%, #7ddc9a); box-shadow: 0 18px 40px rgba(0, 0, 0, .4); overflow: hidden; }
.pf-bankcard::after { content: ""; position: absolute; right: -60px; top: -60px; width: 200px; height: 200px; border-radius: 50%; background: rgba(255, 255, 255, .12); }
.pf-bankcard-tmn { background: linear-gradient(135deg, #e8590c, #ff922b 60%, #ffc078); }
.pf-bankcard-bank { font-weight: 600; font-size: 1.05rem; }
.pf-bankcard-no { font-size: 1.75rem; font-weight: 700; letter-spacing: .04em; margin-top: auto; font-variant-numeric: tabular-nums; }
.pf-bankcard-name { font-size: .98rem; opacity: .95; }
.pf-bankcard-pp { font-size: .82rem; opacity: .9; }
.pf-bankcard-copy { position: relative; z-index: 1; align-self: flex-start; margin-top: 8px; background: rgba(255, 255, 255, .22); color: #fff; border: 0; border-radius: 999px; padding: 6px 16px; font: inherit; font-size: .85rem; font-weight: 600; cursor: pointer; }
.pf-bankcard-copy:hover { background: rgba(255, 255, 255, .34); }
.pf-paysteps { margin: 0 0 16px; padding-left: 1.3em; color: var(--pf-muted); font-size: .92rem; }
.pf-paysteps li { margin-bottom: 4px; }

/* วงล้อ + คูปอง */
.pf-wheel-box { display: grid; grid-template-columns: 1fr 320px; gap: 24px; align-items: center; }
.pf-wheel-wrap { position: relative; width: 300px; height: 300px; margin-inline: auto; }
.pf-wheel { position: relative; width: 100%; height: 100%; border-radius: 50%; border: 6px solid var(--pf-line); box-shadow: 0 0 0 4px var(--pf-bg), 0 0 40px var(--pf-glow); transition: transform 4s cubic-bezier(.15, .85, .2, 1); }
.pf-wheel-label { position: absolute; left: 50%; top: 0; width: 0; height: 50%; transform-origin: 50% 100%; }
.pf-wheel-label i { position: absolute; top: 66px; left: 0; transform: translate(-50%, -50%) rotate(-90deg); font-style: normal; font-size: .74rem; font-weight: 600; color: #fff; white-space: nowrap; max-width: 112px; overflow: hidden; text-overflow: ellipsis; text-shadow: 0 1px 3px rgba(0, 0, 0, .6); }
.pf-wheel-pin { position: absolute; z-index: 2; left: 50%; top: -12px; transform: translateX(-50%); width: 0; height: 0; border-left: 14px solid transparent; border-right: 14px solid transparent; border-top: 26px solid #fff; filter: drop-shadow(0 3px 4px rgba(0, 0, 0, .5)); }
.pf-wheel-box .pf-side-bal { max-width: 220px; margin-bottom: 14px; }
.pf-tickets { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 12px; margin-top: 16px; }
.pf-ticket { display: flex; flex-direction: column; align-items: center; gap: 4px; padding: 14px 10px; border: 1px dashed var(--pf-line); border-radius: 14px; background: var(--pf-bg); text-align: center; }
.pf-ticket b { font-size: 1.9rem; letter-spacing: .14em; background: var(--pf-grad); -webkit-background-clip: text; background-clip: text; color: transparent; line-height: 1.2; }
.pf-ticket span { font-size: .78rem; color: var(--pf-muted); }
.pf-ticket-lost { opacity: .55; }
.pf-ticket-won3, .pf-ticket-won2 { border-style: solid; border-color: var(--pf-ok); }

/* Affiliate */
.pf-reflink { display: flex; gap: 10px; align-items: stretch; flex-wrap: wrap; margin: 0 !important; }
.pf-reflink .pf-input { flex: 1 1 260px; margin-top: 0; }
.pf-aff-tool { display: grid; grid-template-columns: 300px 1fr; gap: 24px; align-items: start; }
.pf-aff-tool canvas { width: 100%; max-width: 440px; height: auto; border-radius: 16px; border: 1px solid var(--pf-line); justify-self: center; }
.pf-aff-colors input { width: 48px; height: 36px; padding: 0; border: 1px solid var(--pf-line); border-radius: 8px; background: none; vertical-align: middle; }

/* โดเนท */
.pf-donate { max-width: 980px; margin-inline: auto; }
.pf-donate-head { display: flex; align-items: center; gap: 16px; margin-bottom: 20px; }
.pf-donate-head h1 { margin: 0; background: var(--pf-grad); -webkit-background-clip: text; background-clip: text; color: transparent; }
.pf-donate-head p { margin: 0; }
.pf-donate-avatar img { width: 76px; height: 76px; border-radius: 50%; border: 3px solid var(--pf-primary); display: block; }
.pf-donate-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; align-items: start; }
.pf-donate-pay { display: grid; grid-template-columns: auto 1fr; gap: 18px; align-items: center; margin-bottom: 16px; }
.pf-qr { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; width: 210px; min-height: 210px; padding: 10px; background: #fff; border-radius: 16px; text-align: center; }
.pf-qr svg { width: 100%; height: auto; display: block; }
.pf-qr .pf-muted { color: #666; padding: 0 12px; }
.pf-qr-amt { color: #1a1030; font-weight: 600; font-size: .9rem; }
.pf-chips { display: flex; flex-wrap: wrap; gap: 8px; margin: -4px 0 14px; }
.pf-chips button { background: var(--pf-bg); border: 1px solid var(--pf-line); color: var(--pf-text); border-radius: 999px; padding: 6px 14px; font: inherit; font-size: .88rem; cursor: pointer; }
.pf-chips button:hover { border-color: var(--pf-accent); }
.pf-body textarea.pf-input { resize: vertical; min-height: 84px; }
.pf-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0 18px; }
.pf-form h2 { margin-top: 1.2em; }
.pf-form h2:first-child { margin-top: 0; }

/* ท้ายเว็บ */
.pf-footer { border-top: 1px solid var(--pf-line); background: color-mix(in srgb, var(--pf-bg) 70%, transparent); padding: 36px 0 18px; font-size: .92rem; }
.pf-footer-in { display: grid; grid-template-columns: 2fr 1fr 1fr; gap: 28px; margin-bottom: 20px; }
.pf-footer p { margin: 0 0 6px; }
.pf-footer a { color: var(--pf-muted); }
.pf-copy-line { border-top: 1px solid var(--pf-line); padding-top: 16px; color: var(--pf-muted); font-size: .8rem; }

@media (max-width: 860px) {
	.pf-burger { display: block; }
	.pf-nav { display: none; position: absolute; top: 64px; left: 0; right: 0; flex-direction: column; align-items: stretch; background: var(--pf-bg2); border-bottom: 1px solid var(--pf-line); padding: 10px 16px 16px; }
	.pf-nav.is-open { display: flex; }
	.pf-feats, .pf-steps { grid-template-columns: repeat(2, 1fr); }
	.pf-promos, .pf-articles { grid-template-columns: 1fr; }
	.pf-game-cols, .pf-account, .pf-pay-grid, .pf-wheel-box, .pf-aff-tool, .pf-donate-grid, .pf-form-grid { grid-template-columns: 1fr; }
	.pf-game-info { position: static; }
	.pf-game-info .pf-card-media { max-width: 180px; }
	.pf-footer-in { grid-template-columns: 1fr; }
	.pf-hero { padding: 36px 8px 28px; }
}
@media (max-width: 520px) {
	.pf-feats, .pf-steps, .pf-stats { grid-template-columns: 1fr; }
	.pf-grid { grid-template-columns: repeat(2, 1fr); gap: 12px; }
	.pf-panel { padding: 16px; }
	.pf-donate-pay { grid-template-columns: 1fr; justify-items: center; }
}
@media (prefers-reduced-motion: reduce) {
	.pf-body * { transition: none !important; }
}
