.promote-page{max-width:800px;margin:26px auto 50px;padding:0 16px}
.promote-page h1{font-size:clamp(32px,6vw,50px);line-height:1.1;letter-spacing:-1px}
.promote-progress{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;list-style:none;padding:0;margin:20px 0}
.promote-progress li{padding:7px 3px;border-bottom:2px solid var(--border);text-align:center;color:var(--muted);font-size:13px}
.promote-progress [aria-current]{color:var(--gold);border-color:var(--gold)}
.promote-step{padding:clamp(14px,3vw,22px);border:1px solid var(--border);border-radius:12px;background:var(--panel)}
.promote-step h2{margin:0 0 14px;font-size:22px}
.promote-step label{display:grid;gap:6px;margin:12px 0}
.promote-step input:not([type=radio]),.promote-step select,.promote-step textarea{width:100%;min-height:42px;padding:8px 10px;color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:7px;font:inherit}
.promote-step textarea{resize:vertical}
.promote-step .creative-options label{display:flex;align-items:center}
.promote-packages{display:grid;gap:8px;margin:12px 0}
.promote-packages label{display:flex;align-items:center;gap:10px;margin:0;padding:12px;border:1px solid var(--border);border-radius:8px;cursor:pointer}
.promote-packages label:has(:checked){border-color:var(--gold);background:#ffd45d12}
.promote-packages small,.promote-step small{display:block;color:var(--muted)}
.promote-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
#promotion-token-details,#campaign-preview{padding:12px;border:1px solid var(--border);border-radius:8px;margin:12px 0}
#promotion-token-details a{color:var(--gold);text-decoration:underline}
#promotion-token-details p{overflow-wrap:anywhere}
.promote-token-image{width:42px;height:42px;object-fit:cover;border-radius:7px;vertical-align:middle;margin-right:8px}
#campaign-preview .custom-banner{display:block;width:100%;max-height:150px;object-fit:cover;border-radius:6px;margin-bottom:8px}
