/* Distinct, clearly disclosed map placements — deliberately secondary to reviews. */
.promotion-chip{display:inline-block;padding:5px 9px;border-radius:999px;background:#fff1df;color:#87410e;font-size:12px;font-weight:800;margin-bottom:8px}
.promotion-chip-ad{background:#f0e7f7;color:#5b2d72;border:1px solid #b28bc4}
.promotion-list-card{border-left:4px solid #b65b19}
.promotion-list-card.promotion-paid{border-left-color:#723c91}
.promotion-legend-dot,.promotion-legend-ad{display:inline-block;width:13px;height:13px;border-radius:50%;background:#b65b19;vertical-align:middle}
.promotion-legend-ad{background:#723c91}
.promotion-hero-img{display:block;max-width:100%;width:100%;max-height:340px;object-fit:cover;border-radius:12px;margin:12px 0 20px}
.promotion-form{max-width:830px;margin:0 auto}
.promotion-form .form-columns{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
.promotion-form .field{margin-bottom:16px}
.promotion-form .field input,.promotion-form .field select,.promotion-form .field textarea{width:100%}
.promotion-form .promotion-address-results{margin:8px 0}
.promotion-form small{display:block;margin-top:5px;color:var(--muted)}
.promotion-form .check-line{display:flex;align-items:start;gap:10px;margin:14px 0}
.promotion-form .check-line input{width:auto;margin-top:4px}
@media(max-width:640px){.promotion-form .form-columns{grid-template-columns:1fr}.map-legend{font-size:11px}}

/* Contextual explanations keep the form approachable without taking over the page. */
.promotion-label-row{position:relative;display:flex;align-items:center;gap:7px;margin-bottom:6px}
.promotion-label-row label{margin:0}
.promotion-help{position:static;display:inline-block;line-height:1;flex-shrink:0}
.promotion-help summary{list-style:none;display:grid;place-items:center;width:20px;height:20px;border:1px solid #91a29a;border-radius:50%;color:#36564b;background:#f7faf8;cursor:pointer;font-size:12px;font-weight:700}
.promotion-help summary::-webkit-details-marker{display:none}
.promotion-help summary:hover,.promotion-help summary:focus-visible{background:#e1ece6;outline-offset:2px}
.promotion-help-popover{position:absolute;top:calc(100% + 9px);left:0;z-index:35;width:min(340px,calc(100vw - 48px));padding:14px 16px;background:#fff;color:#233d32;border:1px solid #cfdad2;border-radius:12px;box-shadow:0 14px 35px rgba(22,44,32,.18);line-height:1.5;font-size:13px;max-height:360px;overflow-y:auto}
.promotion-help-popover p{margin:9px 0 0}
.promotion-help-popover strong{font-size:14px}
.promotion-form #promotionNewCategoryFields{margin-top:10px}
.promotion-form #promotionNewCategoryFields label{display:block;margin-bottom:5px}
.promotion-form #promotionPublicContactFields{margin-top:10px}
@media(max-width:640px){.promotion-help-popover{left:0;width:min(320px,calc(100vw - 72px))}}

