/* ===== PDPA cookie banner & settings (js/pdpa.js) ===== */
.pdpa-banner{
	position:fixed; left:18px; bottom:18px; z-index:1060; max-width:560px;
	display:flex; flex-wrap:wrap; gap:12px 14px; align-items:flex-start;
	padding:18px 20px; border-radius:16px; background:#fff; color:#1f2937;
	box-shadow:0 18px 50px rgba(15,23,42,.22); border:1px solid rgba(15,23,42,.06);
	font-family:'Prompt',sans-serif; animation:pdpaUp .35s ease both;
}
.pdpa-banner-icon{width:42px; height:42px; flex:0 0 42px; border-radius:12px; background:#fff4e5; color:#ff8800; display:flex; align-items:center; justify-content:center; font-size:20px;}
.pdpa-banner-text{flex:1 1 300px; min-width:0;}
.pdpa-banner-text strong{display:block; font-size:16px; margin-bottom:4px;}
.pdpa-banner-text p{margin:0; font-size:13.5px; line-height:1.6; color:#4b5563;}
.pdpa-banner a,.pdpa-modal a{color:#ff8800; text-decoration:underline;}
.pdpa-banner-actions{display:flex; flex-wrap:wrap; gap:8px; justify-content:flex-end; width:100%;}
.pdpa-btn{
	border:1px solid transparent; border-radius:999px; padding:8px 18px; font-size:14px; font-family:inherit;
	cursor:pointer; line-height:1.3; transition:background .15s ease, color .15s ease, border-color .15s ease;
}
.pdpa-btn-primary{background:#ff8800; color:#fff;}
.pdpa-btn-primary:hover{background:#e67a00;}
.pdpa-btn-outline{background:#fff; color:#1f2937; border-color:#d1d5db;}
.pdpa-btn-outline:hover{border-color:#9ca3af;}
.pdpa-btn-ghost{background:#f3f4f6; color:#1f2937;}
.pdpa-btn-ghost:hover{background:#e5e7eb;}
.pdpa-btn:focus-visible,.pdpa-close:focus-visible,.pdpa-switch input:focus-visible+span{outline:2px solid #ff8800; outline-offset:2px;}

.pdpa-modal{
	position:fixed; inset:0; z-index:1070; background:rgba(15,23,42,.5);
	display:flex; align-items:center; justify-content:center; padding:16px;
	font-family:'Prompt',sans-serif; opacity:0; transition:opacity .2s ease;
}
.pdpa-modal.is-open{opacity:1;}
.pdpa-modal-box{background:#fff; color:#1f2937; border-radius:18px; width:100%; max-width:560px; max-height:calc(100vh - 32px); overflow:auto; padding:22px 22px 18px; box-shadow:0 24px 60px rgba(15,23,42,.3);}
.pdpa-modal-head{display:flex; align-items:center; justify-content:space-between; gap:12px;}
.pdpa-modal-head h3{margin:0; font-size:20px; font-weight:600; color:#1f2937; letter-spacing:0;}
.pdpa-close{border:0; background:#f3f4f6; width:34px; height:34px; border-radius:50%; font-size:22px; line-height:1; cursor:pointer; color:#4b5563;}
.pdpa-modal-intro{font-size:13.5px; color:#4b5563; margin:8px 0 6px; line-height:1.6;}
.pdpa-row{display:flex; gap:16px; align-items:center; justify-content:space-between; padding:14px 0; border-top:1px solid #f0f0f0;}
.pdpa-row-text strong{font-size:15px;}
.pdpa-row-text p{margin:2px 0 0; font-size:13px; color:#6b7280; line-height:1.55;}
.pdpa-switch{position:relative; flex:0 0 46px; width:46px; height:26px; margin:0; cursor:pointer;}
.pdpa-switch input{position:absolute; opacity:0; width:100%; height:100%; margin:0; cursor:pointer;}
.pdpa-switch span{position:absolute; inset:0; border-radius:999px; background:#d1d5db; transition:background .2s ease; pointer-events:none;}
.pdpa-switch span:after{content:""; position:absolute; top:3px; left:3px; width:20px; height:20px; border-radius:50%; background:#fff; box-shadow:0 1px 3px rgba(0,0,0,.25); transition:transform .2s ease;}
.pdpa-switch input:checked+span{background:#ff8800;}
.pdpa-switch input:checked+span:after{transform:translateX(20px);}
.pdpa-switch.is-locked{cursor:not-allowed; opacity:.6;}
.pdpa-modal-actions{display:flex; flex-wrap:wrap; gap:8px; justify-content:flex-end; padding-top:14px; border-top:1px solid #f0f0f0;}
@keyframes pdpaUp{from{opacity:0; transform:translateY(16px)} to{opacity:1; transform:none}}

@media (max-width:767px){
	/* อยู่เหนือแถบปุ่มติดต่อด้านล่าง (css/fab.css) */
	.pdpa-banner{left:10px; right:10px; bottom:78px; max-width:none; padding:16px;}
	.pdpa-banner-actions .pdpa-btn{flex:1 1 auto;}
	.pdpa-modal-actions .pdpa-btn{flex:1 1 100%;}
}
@media (prefers-reduced-motion:reduce){ .pdpa-banner,.fab-item{animation:none;} }

/* หน้านโยบาย */
.policy-content{font-size:16px; line-height:1.85; color:#374151;}
.policy-content h2{font-size:22px; margin:28px 0 10px; color:#1f2937;}
.policy-content h3{font-size:18px; margin:20px 0 8px; color:#1f2937;}
.policy-content ul{padding-left:22px;}
.policy-content table{width:100%; border-collapse:collapse; margin:10px 0 18px; font-size:14.5px;}
.policy-content th,.policy-content td{border:1px solid #e5e7eb; padding:8px 10px; vertical-align:top; text-align:left;}
.policy-content th{background:#f9fafb;}
.policy-table-wrap{overflow-x:auto;}

/* ลิงก์นโยบายส่วนท้าย */
.footer-policy-links{display:inline-flex; flex-wrap:wrap; gap:4px 16px; margin-left:12px;}
.footer-policy-links a{color:inherit; opacity:.85; text-decoration:underline;}
.footer-policy-links a:hover{opacity:1;}
@media (max-width:767px){ .footer-policy-links{display:flex; margin:8px 0 0;} }
