/* เงื่อนไขการจอง ยกเลิก และคืนเงิน (to-do 4, user 24 ต.ค.) — loads after about.css + kinsta.css */
#page-policy .pol-hero { margin: 40px 0 22px; padding: 32px 34px; border-radius: 28px; border: 1px solid var(--line);
  background: radial-gradient(120% 140% at 0% 0%, rgba(143, 227, 184, .13), transparent 55%), radial-gradient(90% 120% at 100% 100%, rgba(31, 127, 85, .18), transparent 60%), var(--panel); }
#page-policy .pol-hero .eyebrow { margin-bottom: 10px; font-size: 14px; }
#page-policy .pol-hero h1 { font-size: clamp(28px, 4vw, 46px); line-height: 1.2; margin: 0 0 10px; }
#page-policy .pol-hero h1 .accent { color: var(--accent); }
#page-policy .pol-hero p { margin: 0; color: var(--muted); }
#page-policy .pol-jump { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 18px; }
#page-policy .pol-jump a { display: inline-flex; align-items: center; min-height: 38px; padding: 6px 14px; border-radius: 999px; border: 1px solid var(--line); background: rgba(0, 0, 0, .25); color: var(--cream); font-size: 14px; text-decoration: none; transition: border-color .2s, color .2s; }
#page-policy .pol-jump a:hover { border-color: rgba(143, 227, 184, .45); color: var(--accent); }
#page-policy .pol-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-bottom: 24px; }
#page-policy .pol-card { padding: 24px; border-radius: 22px; scroll-margin-top: 96px; }
#page-policy .pol-card.wide { grid-column: 1 / -1; }
#page-policy .pol-card > .icon-tile { margin-bottom: 12px; }
#page-policy .pol-card h2 { font-size: 21px; margin: 0 0 12px; }
#page-policy .pol-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
#page-policy .pol-list li { display: flex; gap: 10px; align-items: flex-start; line-height: 1.6; color: var(--cream); }
#page-policy .pol-list .ico, #page-policy .pol-case h3 .ico { width: 18px; height: 18px; flex: none; margin-top: 4px; fill: none; stroke: currentColor; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; }
#page-policy .pol-list li.yes .ico { color: #4CC38A; }
#page-policy .pol-list li.no .ico { color: #F07A6E; }
#page-policy .pol-cases { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
#page-policy .pol-case { padding: 18px 20px; border-radius: 16px; border: 1px solid; }
#page-policy .pol-case.yes { border-color: rgba(76, 195, 138, .4); background: rgba(76, 195, 138, .07); }
#page-policy .pol-case.no { border-color: rgba(240, 122, 110, .4); background: rgba(240, 122, 110, .07); }
#page-policy .pol-case h3 { display: flex; align-items: center; gap: 8px; margin: 0 0 8px; font-size: 17px; }
#page-policy .pol-case.yes h3 { color: #6FCF9F; }
#page-policy .pol-case.no h3 { color: #F0A091; }
#page-policy .pol-case p, #page-policy .pol-case li { margin: 0 0 6px; line-height: 1.6; }
#page-policy .pol-case ul { margin: 0 0 8px; padding-left: 20px; }
#page-policy .pol-need { padding-top: 8px; border-top: 1px dashed rgba(255, 255, 255, .15); color: var(--muted); font-size: 14px; }
#page-policy .contact-box { margin-bottom: 80px; scroll-margin-top: 96px; }
@media (max-width: 760px) {
  #page-policy .pol-hero { margin-top: 20px; padding: 24px 16px; border-radius: 22px; }
  #page-policy .pol-grid, #page-policy .pol-cases { grid-template-columns: minmax(0, 1fr); }
  #page-policy .pol-card { padding: 18px 16px; }
}
/* "ร้านรับผิดชอบ" (29 ต.ค.): amber, not a red "no" */
#page-policy .pol-case.shop { border-color: rgba(245, 197, 91, .4); background: rgba(245, 197, 91, .06); }
#page-policy .pol-case.shop h3 { color: #F5C55B; }
#page-policy #contact-pick-wrap .fine { display: block; margin-top: 4px; font-size: 13px; color: var(--muted); font-weight: 400; }

/* evidence pictures (067) */
#page-policy .attach { display: grid; gap: 8px; }
#page-policy .att-label { font-weight: 600; font-size: 14px; color: var(--cream); }
#page-policy .att-label small { margin-left: 6px; font-weight: 400; color: var(--muted); }
#page-policy .att-row { display: flex; flex-wrap: wrap; gap: 10px; }
#page-policy .att-row[hidden], #page-policy .att-add[hidden] { display: none; }
#page-policy .att-add, #page-policy .att-pic { position: relative; width: 104px; height: 104px; border-radius: 14px; }
#page-policy .att-add { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; border: 2px dashed rgba(143, 227, 184, .4); background: rgba(143, 227, 184, .05); color: #8FE3B8; font-size: 13px; font-weight: 600; cursor: pointer; }
#page-policy .att-add:hover { background: rgba(143, 227, 184, .1); }
#page-policy .att-add:focus-within { outline: 2px solid #8FE3B8; outline-offset: 2px; }
#page-policy .att-add .ico { width: 26px; height: 26px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
#page-policy .att-add input { position: absolute; inset: 0; opacity: 0; cursor: pointer; }
#page-policy .att-pic img { width: 100%; height: 100%; object-fit: cover; border-radius: 14px; border: 1px solid var(--line); }
#page-policy .att-x { position: absolute; top: -8px; right: -8px; width: 30px; height: 30px; border-radius: 50%; border: 1px solid rgba(255, 255, 255, .2); background: #2A2520; color: #F3EEE7; font-size: 18px; line-height: 1; cursor: pointer; }
#page-policy .att-x:hover { background: #B23B2E; }
