.ad-builder { width: min(94vw, 1680px); margin: 0 auto; padding: 58px 0 100px; }
.ad-builder > h1 { max-width: 900px; margin: 14px 0 12px; font-size: clamp(44px, 6vw, 82px); line-height: .95; letter-spacing: -.06em; }
.ad-builder > h1 span { color: var(--gold); }
.ad-builder > p { max-width: 700px; color: var(--muted); font-size: 17px; }
.stepper { display: flex; gap: 6px; overflow-x: auto; margin: 40px 0 16px; padding-bottom: 4px; }
.stepper button { flex: 1 0 auto; min-width: 92px; border-radius: 4px 4px 0 0; border-color: var(--line-soft); color: var(--muted); font-size: 11px; letter-spacing: .12em; }
.stepper button.active { border-color: var(--gold); background: var(--gold); color: var(--ink); }
.ad-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, 360px); gap: 18px; align-items: start; }
.ad-panel { min-width: 0; padding: clamp(22px, 3vw, 38px); border: 1px solid var(--line-soft); border-radius: 7px; background: var(--surface); }
.ad-panel h2 { margin: 0 0 9px; font-size: clamp(24px, 3vw, 37px); letter-spacing: -.035em; }
.ad-panel h3 { margin: 30px 0 8px; color: var(--gold-bright); font-size: 13px; letter-spacing: .12em; text-transform: uppercase; }
.ad-panel p { color: var(--muted); }
.step { display: none; }
.step.active { display: block; }
.step > label { margin-top: 16px; }
.choice-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 24px 0; }
.choice { min-height: 58px; text-align: left; border-color: var(--line-soft); background: var(--surface-2); color: var(--muted); }
.choice.selected, .choice:hover { border-color: var(--gold); color: var(--text); }
.next, .next-actions { margin-top: 26px; }
.next { border-color: var(--gold); background: var(--gold); color: var(--ink); }
.next-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.next-actions button { border-color: var(--gold); }
.market-tools { display: grid; grid-template-columns: 1fr auto; gap: 9px; margin: 24px 0 15px; }
.market-results { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.market-result { width: 100%; padding: 12px; border: 1px solid var(--line-soft); border-radius: 4px; background: var(--surface-2); color: var(--text); text-align: left; }
.market-result small { display: block; margin-top: 3px; color: var(--muted); }
.chips { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 18px; }
.chip { padding: 7px 9px; border: 1px solid var(--gold); border-radius: 99px; color: var(--gold-bright); font-size: 12px; }
.inventory-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; margin-top: 25px; }
.inventory-card, .inventory-slot { padding: 13px; border: 1px solid var(--line-soft); border-radius: 4px; background: var(--surface-2); }
.inventory-card label { display: flex; grid-template-columns: none; flex-direction: row; align-items: start; gap: 10px; color: var(--text); text-transform: none; letter-spacing: 0; }
.inventory-card small { display: block; margin-top: 6px; color: var(--muted); }
.summary { position: sticky; top: 90px; }
.summary h2 { color: var(--gold-bright); font-size: 14px; letter-spacing: .13em; }
.summary-row { display: grid; grid-template-columns: 1fr 1fr; gap: 13px; padding: 14px 0; border-bottom: 1px solid var(--line-soft); }
.summary-row span { color: var(--muted); }
.summary-row strong { text-align: right; overflow-wrap: anywhere; }
.summary-note { margin-top: 25px; font-size: 12px; }
@media (max-width: 900px) { .ad-layout { grid-template-columns: 1fr; } .summary { position: static; } }
@media (max-width: 620px) { .choice-grid, .market-results, .inventory-grid { grid-template-columns: 1fr; } .ad-builder { padding-top: 40px; } }
