.promotion-shell{--promo-ink:var(--foreground,#183e36);--promo-muted:var(--muted-foreground,#5f7167);--promo-line:var(--border,#e0e7e2);--promo-card:var(--municipal-card,#fdfdfc);--promo-accent:#183e36;--promo-lime:#c8fb4d;--promo-soft:color-mix(in srgb, var(--promo-accent) 7%, var(--promo-card));--promo-warn:#ad381c}.promotion-header{justify-content:space-between;align-items:flex-start;gap:16px;padding-bottom:20px;display:flex}.promotion-header h1{letter-spacing:-.035em;margin:6px 0 4px;font-size:clamp(1.5rem,2.8vw,2rem);line-height:1.2}.promotion-header p{color:var(--promo-muted);margin:0;font-size:14px}.promotion-rules-link{color:var(--promo-ink);text-underline-offset:3px;font-size:14px;font-weight:600}.promotion-tabs{border:1px solid var(--promo-line);background:var(--promo-card);border-radius:999px;gap:4px;max-width:100%;padding:4px;display:inline-flex;overflow-x:auto}.promotion-tabs button{min-height:40px;color:var(--promo-ink);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:999px;flex:none;padding:8px 16px;font-size:14px;font-weight:600}.promotion-tabs button[aria-selected=true]{background:var(--promo-accent);color:#fff}.promotion-tabs button:focus-visible{outline-offset:2px;outline:3px solid #7ca189}.promotion-panel{padding-top:20px}.promotion-wizard{gap:16px;display:grid}.promotion-step,.promotion-card-step,.promotion-confirmation{border:1px solid var(--promo-line);background:var(--promo-card);border-radius:20px;min-width:0;padding:clamp(18px,3vw,26px)}.promotion-step h3,.promotion-card-step h3{letter-spacing:-.01em;align-items:center;gap:10px;margin:0 0 16px;font-size:17px;display:flex}.promotion-step h3 span,.promotion-card-step h3 span{background:var(--promo-accent);color:#fff;border-radius:50%;flex:none;place-items:center;width:26px;height:26px;font-size:13px;display:inline-grid}.promotion-choices{gap:8px;min-width:0;display:grid}.promotion-choices label{border:1px solid var(--promo-line);cursor:pointer;border-radius:14px;align-items:center;gap:12px;min-height:48px;padding:10px 14px;display:flex}.promotion-choices label.is-selected{border-color:var(--promo-accent);background:var(--promo-soft)}.promotion-choices label span{overflow-wrap:anywhere;gap:2px;min-width:0;display:grid}.promotion-choices small{color:var(--promo-muted);font-size:13px}.promotion-choices input{accent-color:var(--promo-accent);flex:none;width:18px;height:18px}.promotion-slot-grid{grid-template-columns:minmax(0,1fr) 220px;align-items:start;gap:20px;display:grid}.promotion-positions,.promotion-weeks{flex-wrap:wrap;gap:8px;display:flex}.promotion-positions button,.promotion-weeks button{border:1px solid var(--promo-line);min-height:44px;color:var(--promo-ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border-radius:14px;gap:2px;padding:8px 16px;font-size:14px;font-weight:600;display:grid}.promotion-positions button small{color:var(--promo-muted);font-size:12px;font-weight:400}.promotion-positions button.is-selected,.promotion-weeks button.is-selected{border-color:var(--promo-accent);background:var(--promo-soft)}.promotion-positions button:disabled,.promotion-weeks button:disabled{opacity:.45;cursor:not-allowed}:is(.promotion-positions button:focus-visible,.promotion-weeks button:focus-visible,.promotion-choices label:focus-within){outline-offset:2px;outline:3px solid #7ca189}.promotion-preview{justify-items:center;gap:8px;margin:0;display:grid}.promotion-preview figcaption{color:var(--promo-muted);text-align:center;font-size:12px}.promotion-phone{background:#f6f8f6;border:6px solid #1d2a26;border-radius:28px;gap:6px;width:180px;padding:14px 10px 18px;display:grid}.promotion-phone-title{color:#183e36;font-size:12px;font-weight:800}.promotion-phone-label{color:#5f7167;letter-spacing:.1em;text-transform:uppercase;font-size:9px;font-weight:800}.promotion-phone-row{background:#fff;border-radius:9px;min-height:30px;padding:6px 8px;display:grid}.promotion-phone-row i{background:#dfe7e3;border-radius:3px;height:6px;margin-top:6px;display:block}.promotion-phone-row.is-sponsored{color:#fff;box-shadow:0 0 0 2px var(--promo-lime);background:#183e36}.promotion-phone-row small{color:var(--promo-lime);text-overflow:ellipsis;white-space:nowrap;font-size:8px;font-weight:700;overflow:hidden}.promotion-phone-row b{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.promotion-price{gap:8px;display:grid}.promotion-price>strong{letter-spacing:-.02em;font-size:clamp(18px,2.4vw,22px)}.promotion-price>span{color:var(--promo-muted);font-size:14px}.promotion-price label{font-size:14px;font-weight:600}.promotion-bid{align-items:center;gap:8px;max-width:260px;display:flex}.promotion-bid input{background:var(--promo-card);width:100%;min-height:44px;color:var(--promo-ink);font:inherit;border:1px solid #b5c4ba;border-radius:12px;padding:10px 12px;font-size:16px}.promotion-bid input[aria-invalid=true]{border-color:var(--promo-warn)}.promotion-bid span{color:var(--promo-muted);flex:none;font-size:14px}.promotion-note,.promotion-audience{color:var(--promo-muted);align-items:flex-start;gap:8px;margin:10px 0 0;font-size:13px;line-height:1.5;display:flex}.promotion-note svg,.promotion-audience svg{flex:none;margin-top:2px}.promotion-warning{background:color-mix(in srgb, var(--promo-warn) 9%, var(--promo-card));color:var(--promo-warn);border-radius:12px;margin:10px 0 0;padding:10px 12px;font-size:14px}.promotion-warning:focus{outline-offset:2px;outline:3px solid #7ca189}.promotion-empty{color:var(--promo-muted);margin:0;font-size:14px}.promotion-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.promotion-actions small{color:var(--promo-muted);font-size:13px}.promotion-stripe{min-height:120px;margin:16px 0}.promotion-confirmation{justify-items:start;gap:10px;display:grid}.promotion-confirmation>svg{color:#3f7d3a}.promotion-confirmation h3{margin:0;font-size:22px}.promotion-confirmation p,.promotion-confirmation ul{margin:0}.promotion-confirmation ul{padding-left:18px;line-height:1.7}.promotion-campaigns{gap:24px;display:grid}.promotion-campaigns h3{align-items:center;gap:8px;margin:0 0 10px;font-size:16px;display:flex}.promotion-campaigns h3 small{background:var(--promo-soft);border-radius:999px;padding:1px 8px;font-size:12px}.promotion-table-wrap{border:1px solid var(--promo-line);background:var(--promo-card);border-radius:16px;overflow-x:auto}.promotion-table{border-collapse:collapse;width:100%;min-width:760px;font-size:13px}.promotion-table th,.promotion-table td{border-bottom:1px solid var(--promo-line);text-align:left;vertical-align:top;padding:10px 12px}.promotion-table thead th{color:var(--promo-muted);white-space:nowrap;font-weight:600}.promotion-table :is(th,td){overflow-wrap:normal;word-break:normal;-webkit-hyphens:none;hyphens:none}.promotion-table tbody th{min-width:180px;font-weight:600}.promotion-table td{white-space:nowrap}.promotion-table tbody tr:last-child>*{border-bottom:0}.promotion-link-button{border:1px solid var(--promo-line);min-height:36px;color:var(--promo-warn);font:inherit;cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:6px;padding:6px 10px;font-size:13px;display:inline-flex}.promotion-link-button.is-neutral{color:var(--promo-ink)}.promotion-confirm-row{gap:6px;display:inline-flex}.promotion-spin{animation:1s linear infinite promotion-spin}@keyframes promotion-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.promotion-spin{animation:none}}@media (max-width:720px){.promotion-slot-grid{grid-template-columns:minmax(0,1fr)}.promotion-header{flex-direction:column}}@media (max-width:480px){.promotion-tabs{width:100%;display:flex}.promotion-tabs button{white-space:normal;flex:1 1 0;min-width:0;padding:8px 10px;line-height:1.2}}.promotion-terms{color:#23423a;align-items:flex-start;gap:10px;margin:4px 0 14px;font-size:14px;line-height:1.5;display:flex}.promotion-terms input{accent-color:#183e36;flex:none;width:24px;height:24px;margin:0}.promotion-terms input:focus-visible{outline-offset:2px;outline:3px solid #4f7a5e}.promotion-terms a{color:#183e36;text-underline-offset:3px;font-weight:650;text-decoration:underline}
