.advertiser-view {
  background: #f5f7fb;
  min-height: calc(100vh - 74px);
  padding: 0 !important;
}

.advertiser-root,
.advertiser-root * {
  box-sizing: border-box;
}

.advertiser-root {
  --ads-blue: #155eef;
  --ads-blue-dark: #0b4bd4;
  --ads-blue-soft: #eef4ff;
  --ads-ink: #101828;
  --ads-copy: #344054;
  --ads-muted: #667085;
  --ads-border: #e4e7ec;
  --ads-green: #12a150;
  --ads-warning: #eaaa08;
  color: var(--ads-ink);
  font-family: Inter, system-ui, sans-serif;
}

.advertiser-shell {
  margin: 0 auto;
  max-width: 1360px;
  min-width: 0;
  padding: 24px 30px 52px;
  width: 100%;
}

.advertiser-shell.is-wide {
  max-width: 1420px;
}

.advertiser-subnav {
  align-items: center;
  border-bottom: 1px solid var(--ads-border);
  display: flex;
  gap: 4px;
  margin: -8px 0 28px;
  overflow-x: auto;
  scrollbar-width: none;
}

.advertiser-subnav::-webkit-scrollbar { display: none; }

.advertiser-subnav button {
  align-items: center;
  background: transparent;
  border: 0;
  border-bottom: 2px solid transparent;
  color: var(--ads-muted);
  cursor: pointer;
  display: inline-flex;
  font: 600 12px/1 Inter, sans-serif;
  gap: 7px;
  margin-bottom: -1px;
  min-height: 44px;
  padding: 0 12px;
  white-space: nowrap;
}

.advertiser-subnav button svg { height: 16px; width: 16px; }
.advertiser-subnav button:hover { color: var(--ads-blue); }
.advertiser-subnav button.active { border-bottom-color: var(--ads-blue); color: var(--ads-blue); }

.advertiser-page-head {
  align-items: flex-start;
  display: flex;
  gap: 24px;
  justify-content: space-between;
  margin-bottom: 24px;
}

.advertiser-eyebrow,
.wizard-heading > span {
  color: var(--ads-blue);
  display: block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .08em;
  margin-bottom: 7px;
  text-transform: uppercase;
}

.advertiser-page-head h1,
.wizard-heading h1,
.review-heading h1,
.campaign-success h1 {
  color: var(--ads-ink);
  font-family: Inter, sans-serif;
  font-size: clamp(24px, 2.2vw, 34px);
  letter-spacing: -.035em;
  line-height: 1.16;
  margin: 0;
}

.advertiser-page-head p,
.wizard-heading p,
.review-heading p {
  color: var(--ads-muted);
  font-size: 14px;
  line-height: 1.6;
  margin: 7px 0 0;
  max-width: 720px;
}

.advertiser-primary,
.advertiser-secondary {
  align-items: center;
  border-radius: 9px;
  cursor: pointer;
  display: inline-flex;
  font: 650 13px/1 Inter, sans-serif;
  gap: 8px;
  justify-content: center;
  min-height: 42px;
  padding: 0 17px;
  transition: border-color .2s, background .2s, box-shadow .2s, transform .2s;
}

.advertiser-primary {
  background: var(--ads-blue);
  border: 1px solid var(--ads-blue);
  box-shadow: 0 3px 9px rgba(21, 94, 239, .16);
  color: white;
}

.advertiser-primary:hover { background: var(--ads-blue-dark); box-shadow: 0 5px 14px rgba(21, 94, 239, .22); transform: translateY(-1px); }
.advertiser-primary:disabled { cursor: wait; opacity: .7; transform: none; }
.advertiser-secondary { background: white; border: 1px solid #d0d5dd; color: var(--ads-copy); }
.advertiser-secondary:hover { background: #f9fafb; border-color: #98a2b3; }
.advertiser-secondary.compact { min-height: 34px; padding: 0 12px; white-space: nowrap; }
.advertiser-primary.full { width: 100%; }
.advertiser-primary svg,
.advertiser-secondary svg { height: 16px; width: 16px; }

.advertiser-link {
  align-items: center;
  background: transparent;
  border: 0;
  color: var(--ads-blue);
  cursor: pointer;
  display: inline-flex;
  font: 650 12px/1.3 Inter, sans-serif;
  gap: 6px;
  padding: 6px 0;
}

.advertiser-link svg { height: 15px; width: 15px; }

.advertiser-alert {
  align-items: center;
  border: 1px solid;
  border-radius: 10px;
  display: flex;
  font-size: 12px;
  gap: 10px;
  margin-bottom: 20px;
  padding: 11px 14px;
}

.advertiser-alert.warning { background: #fffaeb; border-color: #fedf89; color: #854a0e; }
.advertiser-alert.success { background: #ecfdf3; border-color: #abefc6; color: #067647; }
.advertiser-alert > svg { height: 18px; width: 18px; }
.advertiser-alert span { flex: 1; }
.advertiser-alert button { background: transparent; border: 0; color: inherit; cursor: pointer; padding: 0; }
.advertiser-alert button svg { height: 16px; width: 16px; }

.advertiser-metrics {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-bottom: 20px;
}

.advertiser-metric {
  align-items: center;
  background: white;
  border: 1px solid var(--ads-border);
  border-radius: 13px;
  display: flex;
  gap: 13px;
  min-height: 118px;
  padding: 18px;
}

.advertiser-metric > span {
  align-items: center;
  background: var(--ads-blue-soft);
  border-radius: 10px;
  color: var(--ads-blue);
  display: flex;
  height: 42px;
  justify-content: center;
  width: 42px;
}

.advertiser-metric > span svg { height: 20px; width: 20px; }
.advertiser-metric div { display: flex; flex-direction: column; min-width: 0; }
.advertiser-metric small { color: var(--ads-muted); font-size: 11px; font-style: normal; }
.advertiser-metric strong { color: var(--ads-ink); font-size: 23px; letter-spacing: -.04em; margin: 4px 0; }
.advertiser-metric em { color: #98a2b3; font-size: 10px; font-style: normal; }

.advertiser-panel {
  background: white;
  border: 1px solid var(--ads-border);
  border-radius: 14px;
}

.advertiser-panel-head {
  align-items: center;
  border-bottom: 1px solid #eef0f3;
  display: flex;
  gap: 18px;
  justify-content: space-between;
  min-height: 72px;
  padding: 15px 20px;
}

.advertiser-panel-head h2 { font: 700 15px/1.3 Inter, sans-serif; margin: 0; }
.advertiser-panel-head p { color: var(--ads-muted); font-size: 11px; margin: 4px 0 0; }
.advertiser-panel-head select { background: white; border: 1px solid var(--ads-border); border-radius: 8px; color: var(--ads-copy); font-size: 11px; padding: 8px 28px 8px 10px; }

.campaign-list { display: flex; flex-direction: column; }
.campaign-row {
  align-items: center;
  display: grid;
  gap: 16px;
  grid-template-columns: minmax(210px, 1.5fr) repeat(3, minmax(72px, .5fr)) minmax(130px, .8fr) auto auto;
  min-height: 86px;
  padding: 14px 20px;
}

.campaign-row + .campaign-row { border-top: 1px solid #eef0f3; }
.campaign-row > div:not(.campaign-name, .campaign-progress) { display: flex; flex-direction: column; gap: 5px; }
.campaign-row small { color: var(--ads-muted); font-size: 10px; }
.campaign-row strong { font-size: 12px; }
.campaign-name { align-items: center; display: flex; gap: 11px; min-width: 0; }
.campaign-name > div { display: flex; flex-direction: column; gap: 7px; min-width: 0; }
.campaign-name > div > strong { font-size: 13px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.campaign-name > div > span { align-items: center; color: var(--ads-muted); display: flex; font-size: 10px; gap: 7px; }
.campaign-channel-icon { align-items: center; background: var(--ads-blue-soft); border-radius: 9px; color: var(--ads-blue); display: flex; flex: 0 0 auto; height: 38px; justify-content: center; width: 38px; }
.campaign-channel-icon svg { height: 18px; width: 18px; }
.provider-marks { display: inline-flex; }
.provider-mark { align-items: center; background: white; border: 1.5px solid white; border-radius: 50%; display: inline-flex; font: 750 10px/1 Inter, sans-serif; height: 18px; justify-content: center; margin-left: -3px; width: 18px; }
.provider-mark.google { color: #4285f4; }
.provider-mark.instagram { background: linear-gradient(135deg, #7c3aed, #ec4899, #f59e0b); color: white; }
.provider-mark.facebook { background: #1877f2; color: white; }
.campaign-progress { display: flex; flex-direction: column; gap: 7px; }
.campaign-progress span { color: var(--ads-muted); font-size: 10px; }
.campaign-progress i,
.ranking-row i { background: #eaecf0; border-radius: 100px; display: block; height: 5px; overflow: hidden; }
.campaign-progress b { background: var(--ads-blue); border-radius: inherit; display: block; height: 100%; }

.advertiser-status {
  align-items: center;
  background: #f2f4f7;
  border-radius: 100px;
  color: #475467;
  display: inline-flex;
  font-size: 10px;
  font-weight: 650;
  gap: 6px;
  padding: 6px 9px;
  white-space: nowrap;
  width: max-content;
}

.advertiser-status i { background: currentColor; border-radius: 50%; height: 6px; width: 6px; }
.advertiser-status.active { background: #ecfdf3; color: #067647; }
.advertiser-status.in_review { background: #fffaeb; color: #b54708; }
.advertiser-status.paused { background: #f2f4f7; color: #475467; }
.advertiser-status.rejected { background: #fef3f2; color: #b42318; }
.advertiser-status.ended { background: #f2f4f7; color: #667085; }
.advertiser-status.draft { background: #eff8ff; color: #175cd3; }

.advertiser-recommendation {
  align-items: center;
  background: linear-gradient(105deg, #f5f9ff, white);
  border: 1px solid #cddcff;
  border-radius: 14px;
  display: grid;
  gap: 17px;
  grid-template-columns: auto 1fr auto;
  margin-top: 18px;
  padding: 20px 22px;
}

.recommendation-icon { align-items: center; background: #fff4cc; border-radius: 11px; color: #c88a04; display: flex; height: 46px; justify-content: center; width: 46px; }
.recommendation-icon svg { height: 22px; width: 22px; }
.advertiser-recommendation div > span { color: var(--ads-blue); font-size: 10px; font-weight: 750; letter-spacing: .06em; text-transform: uppercase; }
.advertiser-recommendation h3 { font-size: 14px; margin: 5px 0 3px; }
.advertiser-recommendation p { color: var(--ads-muted); font-size: 11px; line-height: 1.5; margin: 0; }

.advertiser-toolbar {
  align-items: center;
  display: flex;
  gap: 10px;
  margin-bottom: 14px;
}

.advertiser-toolbar label {
  align-items: center;
  background: white;
  border: 1px solid var(--ads-border);
  border-radius: 9px;
  display: flex;
  flex: 1;
  gap: 8px;
  max-width: 380px;
  padding: 0 11px;
}

.advertiser-toolbar svg { color: var(--ads-muted); height: 16px; width: 16px; }
.advertiser-toolbar input { background: transparent; border: 0; font: 12px Inter, sans-serif; outline: 0; padding: 11px 0; width: 100%; }
.advertiser-toolbar select { background: white; border: 1px solid var(--ads-border); border-radius: 9px; color: var(--ads-copy); font: 12px Inter, sans-serif; padding: 11px 32px 11px 12px; }
.advertiser-empty { align-items: center; color: var(--ads-muted); display: flex; flex-direction: column; padding: 70px 20px; text-align: center; }
.advertiser-empty > svg { color: #98a2b3; height: 34px; width: 34px; }
.advertiser-empty h2 { color: var(--ads-ink); font-size: 16px; margin: 15px 0 4px; }
.advertiser-empty p { font-size: 12px; margin: 0 0 18px; }

.advertiser-wizard {
  background: white;
  border: 1px solid var(--ads-border);
  border-radius: 15px;
  box-shadow: 0 8px 28px rgba(16, 24, 40, .035);
  min-height: calc(100vh - 190px);
  min-width: 0;
  overflow: hidden;
  width: 100%;
}

.wizard-top {
  align-items: center;
  border-bottom: 1px solid var(--ads-border);
  display: flex;
  justify-content: space-between;
  min-height: 58px;
  padding: 10px 24px;
}

.wizard-top > div { align-items: center; display: flex; gap: 9px; }
.wizard-top > div span { color: var(--ads-muted); font-size: 11px; }
.wizard-top > div span::after { content: "/"; margin-left: 9px; }
.wizard-top > div strong { font-size: 12px; }
.wizard-top > small,
.wizard-footer > span { align-items: center; color: var(--ads-muted); display: flex; font-size: 10px; gap: 6px; }
.wizard-top > small svg,
.wizard-footer > span svg { color: var(--ads-green); height: 15px; width: 15px; }
.spin { animation: advertiser-spin 1s linear infinite; }
@keyframes advertiser-spin { to { transform: rotate(360deg); } }

.advertiser-stepper-wrap { border-bottom: 1px solid #eef0f3; padding: 0 28px; }
.advertiser-stepper {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  list-style: none;
  margin: 0;
  padding: 18px 0 16px;
}

.advertiser-stepper li {
  align-items: center;
  color: #98a2b3;
  display: flex;
  gap: 8px;
  min-width: 0;
  position: relative;
}

.advertiser-stepper li:not(:last-child)::after { background: #e4e7ec; content: ""; height: 1px; left: 88px; position: absolute; right: 12px; top: 13px; }
.advertiser-stepper li > span { align-items: center; background: #f2f4f7; border: 1px solid #e4e7ec; border-radius: 50%; display: flex; flex: 0 0 auto; font-size: 10px; font-weight: 700; height: 26px; justify-content: center; width: 26px; z-index: 1; }
.advertiser-stepper li > span svg { height: 13px; width: 13px; }
.advertiser-stepper li small { font-size: 10px; font-weight: 600; }
.advertiser-stepper li.active { color: var(--ads-blue); }
.advertiser-stepper li.active > span { background: var(--ads-blue); border-color: var(--ads-blue); color: white; box-shadow: 0 0 0 4px var(--ads-blue-soft); }
.advertiser-stepper li.done { color: var(--ads-green); }
.advertiser-stepper li.done > span { background: #ecfdf3; border-color: #6ce9a6; }
.advertiser-step-mobile { display: none; }

.wizard-body { margin: 0 auto; max-width: 1120px; padding: 30px 34px 38px; }
.wizard-heading { margin-bottom: 26px; }
.wizard-heading h1 { font-size: 25px; }

.platform-grid { display: grid; gap: 14px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.platform-card { background: white; border: 1px solid var(--ads-border); border-radius: 14px; cursor: pointer; min-height: 245px; padding: 24px 20px 20px; position: relative; text-align: left; transition: border-color .2s, box-shadow .2s, transform .2s; }
.platform-card:hover { border-color: #a7c1ff; box-shadow: 0 8px 24px rgba(21,94,239,.08); transform: translateY(-2px); }
.platform-card.selected { background: #f8faff; border-color: var(--ads-blue); box-shadow: inset 0 0 0 1px var(--ads-blue); }
.platform-card > em { background: #ecfdf3; border-radius: 100px; color: #067647; font-size: 8px; font-style: normal; font-weight: 750; padding: 5px 8px; position: absolute; right: 16px; text-transform: uppercase; top: 16px; }
.platform-logo { align-items: center; background: #f2f4f7; border-radius: 12px; color: var(--ads-blue); display: inline-flex; font: 750 24px/1 Inter, sans-serif; height: 54px; justify-content: center; margin-bottom: 20px; width: 54px; }
.platform-logo.meta { background: linear-gradient(135deg, #f1ebff, #ffe8f3); color: #7c3aed; }
.platform-logo.combined { background: var(--ads-blue-soft); }
.platform-logo svg { height: 24px; width: 24px; }
.platform-card h2 { font-size: 16px; margin: 0 0 8px; }
.platform-card p { color: var(--ads-muted); font-size: 10px; line-height: 1.55; margin: 0 0 15px; min-height: 47px; }
.platform-card small { align-items: center; color: var(--ads-copy); display: flex; font-size: 9px; gap: 6px; margin-top: 8px; }
.platform-card small svg { color: var(--ads-green); height: 12px; width: 12px; }
.platform-card > .choice-check { position: absolute; right: 16px; top: 16px; }
.platform-card > em + .platform-logo ~ .choice-check { top: 48px; }
.provider-configuration { align-items: center; background: #f8faff; border: 1px solid #dbe6ff; border-radius: 12px; display: grid; gap: 13px; grid-template-columns: auto 1fr auto; margin-bottom: 17px; padding: 13px 16px; }
.provider-configuration .platform-logo { height: 39px; margin: 0; width: 39px; }
.provider-configuration .platform-logo svg { height: 18px; width: 18px; }
.provider-configuration div { display: flex; flex-direction: column; gap: 3px; }
.provider-configuration small { color: var(--ads-blue); font-size: 8px; font-weight: 750; text-transform: uppercase; }
.provider-configuration strong { font-size: 11px; }
.provider-configuration p { color: var(--ads-muted); font-size: 9px; margin: 0; }
.provider-configuration > svg { color: var(--ads-blue); height: 16px; width: 16px; }

.objective-grid { display: grid; gap: 14px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.objective-card {
  align-items: center;
  background: white;
  border: 1px solid var(--ads-border);
  border-radius: 12px;
  cursor: pointer;
  display: grid;
  gap: 16px;
  grid-template-columns: auto 1fr auto;
  min-height: 128px;
  padding: 22px;
  position: relative;
  text-align: left;
  transition: border-color .2s, background .2s, box-shadow .2s;
}

.objective-card:hover { border-color: #a7c1ff; box-shadow: 0 4px 16px rgba(21, 94, 239, .06); }
.objective-card.selected { background: #f8faff; border-color: var(--ads-blue); box-shadow: inset 0 0 0 1px var(--ads-blue); }
.objective-card > em { background: #ecfdf3; border-radius: 100px; color: #067647; font-size: 9px; font-style: normal; font-weight: 700; padding: 5px 8px; position: absolute; right: 15px; top: 13px; }
.objective-card > span { align-items: center; background: #f2f4f7; border-radius: 11px; color: var(--ads-copy); display: flex; height: 50px; justify-content: center; width: 50px; }
.objective-card.selected > span { background: var(--ads-blue-soft); color: var(--ads-blue); }
.objective-card > span svg { height: 25px; width: 25px; }
.objective-card h3 { font-size: 14px; margin: 0 0 6px; }
.objective-card p { color: var(--ads-muted); font-size: 11px; line-height: 1.5; margin: 0; max-width: 300px; }
.choice-check { align-items: center; background: var(--ads-blue); border-radius: 50%; color: white; display: none; height: 21px; justify-content: center; width: 21px; }
.selected > .choice-check { display: flex; }
.choice-check svg { height: 13px; width: 13px; }

.selection-switch { background: #f2f4f7; border-radius: 10px; display: grid; gap: 3px; grid-template-columns: 1fr 1fr; margin-bottom: 18px; padding: 4px; }
.selection-switch button { align-items: center; background: transparent; border: 0; border-radius: 8px; color: var(--ads-muted); cursor: pointer; display: flex; font: 650 11px Inter, sans-serif; gap: 7px; justify-content: center; min-height: 38px; }
.selection-switch button.active { background: white; box-shadow: 0 1px 3px rgba(16, 24, 40, .08); color: var(--ads-blue); }
.selection-switch svg { height: 15px; width: 15px; }
.smart-selection { align-items: center; background: linear-gradient(110deg, #f1f6ff, #fbfdff); border: 1px solid #cddcff; border-radius: 12px; display: grid; gap: 15px; grid-template-columns: auto 1fr auto; margin-bottom: 18px; padding: 17px 19px; }
.smart-selection > span { align-items: center; background: white; border: 1px solid #dbe6ff; border-radius: 10px; color: var(--ads-blue); display: flex; height: 43px; justify-content: center; width: 43px; }
.smart-selection > span svg { height: 20px; width: 20px; }
.smart-selection small { color: var(--ads-blue); font-size: 9px; font-weight: 750; text-transform: uppercase; }
.smart-selection h3 { font-size: 14px; margin: 3px 0; }
.smart-selection p { color: var(--ads-muted); font-size: 10px; margin: 0 0 8px; }
.smart-selection div > div { display: flex; flex-wrap: wrap; gap: 8px; }
.smart-selection div > div i { align-items: center; color: var(--ads-copy); display: flex; font-size: 9px; font-style: normal; gap: 4px; }
.smart-selection div > div svg { color: var(--ads-blue); height: 12px; width: 12px; }

.vehicle-filters { display: grid; gap: 8px; grid-template-columns: repeat(3, minmax(110px, .6fr)) minmax(170px, 1fr); margin-bottom: 14px; }
.vehicle-filters select,
.vehicle-filters label { background: white; border: 1px solid var(--ads-border); border-radius: 8px; color: var(--ads-copy); font: 10px Inter, sans-serif; min-height: 38px; padding: 0 10px; }
.vehicle-filters label { align-items: center; display: flex; gap: 6px; }
.vehicle-filters label svg { color: var(--ads-muted); height: 14px; width: 14px; }
.vehicle-filters input { border: 0; font: inherit; outline: 0; width: 100%; }
.vehicle-grid { display: grid; gap: 10px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.vehicle-card { align-items: center; background: white; border: 1px solid var(--ads-border); border-radius: 10px; cursor: pointer; display: grid; gap: 12px; grid-template-columns: auto 110px 1fr; min-height: 118px; padding: 10px; position: relative; text-align: left; }
.vehicle-card:hover { border-color: #a7c1ff; }
.vehicle-card.selected { background: #fbfcff; border-color: var(--ads-blue); }
.vehicle-checkbox { align-items: center; align-self: flex-start; border: 1.5px solid #98a2b3; border-radius: 4px; color: white; display: flex; height: 17px; justify-content: center; margin-top: 2px; width: 17px; }
.vehicle-card.selected .vehicle-checkbox { background: var(--ads-blue); border-color: var(--ads-blue); }
.vehicle-checkbox svg { height: 11px; width: 11px; }
.vehicle-photo,
.preview-car { align-items: center; background: linear-gradient(140deg, #d5dae2, #697586); border-radius: 8px; color: white; display: flex; flex-direction: column; height: 88px; justify-content: center; overflow: hidden; position: relative; }
.vehicle-photo::after,
.preview-car::after { background: rgba(255,255,255,.18); border-radius: 50%; content: ""; height: 100px; position: absolute; right: -40px; top: -35px; width: 100px; }
.vehicle-photo.silver { background: linear-gradient(140deg, #e7eaee, #87909d); }
.vehicle-photo.pearl { background: linear-gradient(140deg, #f2f2ee, #9ca3af); color: #344054; }
.vehicle-photo.navy { background: linear-gradient(140deg, #8492a9, #172e57); }
.vehicle-photo.blue { background: linear-gradient(140deg, #7ca6cf, #1c4a76); }
.vehicle-photo.green { background: linear-gradient(140deg, #8ba59a, #26493d); }
.vehicle-photo.red { background: linear-gradient(140deg, #d98787, #7b2633); }
.vehicle-photo.black { background: linear-gradient(140deg, #7c828c, #1d2939); }
.vehicle-photo img { height: 100%; object-fit: cover; width: 100%; }
.vehicle-photo span,
.preview-car > span { z-index: 1; }
.vehicle-photo span svg { height: 38px; width: 38px; }
.vehicle-photo small { font-size: 9px; font-weight: 700; letter-spacing: .12em; margin-top: 3px; text-transform: uppercase; z-index: 1; }
.vehicle-copy { min-width: 0; }
.vehicle-copy h3 { font-size: 12px; margin: 0 0 5px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.vehicle-copy p { color: var(--ads-muted); font-size: 9px; margin: 0 0 8px; }
.vehicle-copy > strong { font-size: 14px; }
.vehicle-copy > div { align-items: center; display: flex; flex-wrap: wrap; gap: 7px; justify-content: space-between; margin-top: 8px; }
.vehicle-copy > div span { color: var(--ads-muted); font-size: 9px; }
.vehicle-copy > div em { background: #f2f4f7; border-radius: 100px; color: #475467; font-size: 8px; font-style: normal; font-weight: 650; padding: 4px 6px; }
.vehicle-copy > div em.high { background: #fff4ed; color: #b93815; }
.vehicle-copy > div em.medium { background: #fffaeb; color: #b54708; }
.vehicle-selection-summary { align-items: center; background: #f8faff; border: 1px solid #dbe6ff; border-radius: 10px; display: flex; justify-content: space-between; margin-top: 12px; padding: 12px 15px; }
.vehicle-selection-summary div { display: flex; flex-direction: column; gap: 3px; }
.vehicle-selection-summary strong { font-size: 11px; }
.vehicle-selection-summary span { color: var(--ads-muted); font-size: 9px; }
.vehicle-selection-summary > span { align-items: center; color: var(--ads-green); display: flex; gap: 5px; }
.vehicle-selection-summary svg { height: 15px; width: 15px; }

.region-layout,
.budget-layout,
.creative-layout,
.review-layout,
.detail-grid { display: grid; gap: 22px; grid-template-columns: minmax(0, .85fr) minmax(430px, 1.15fr); }
.region-config { min-width: 0; }
.location-search { align-items: end; display: grid; gap: 8px; grid-template-columns: 1fr auto; }
.location-search .advertiser-primary { min-height: 40px; }
.location-search-error { align-items: center; background: #fff7ed; border: 1px solid #fed7aa; border-radius: 8px; color: #9a3412; display: flex; font-size: 9px; gap: 6px; margin-top: 8px; padding: 9px; }
.location-search-error svg { height: 14px; width: 14px; }
.location-results { background: white; border: 1px solid var(--ads-border); border-radius: 9px; box-shadow: 0 10px 24px rgba(16,24,40,.1); margin-top: 7px; max-height: 220px; overflow-y: auto; }
.location-results button { align-items: center; background: white; border: 0; cursor: pointer; display: grid; gap: 9px; grid-template-columns: auto 1fr auto; min-height: 54px; padding: 8px 11px; text-align: left; width: 100%; }
.location-results button + button { border-top: 1px solid var(--ads-border); }
.location-results button:hover { background: #f8faff; }
.location-results button > span, .location-results button > svg { color: var(--ads-blue); }
.location-results button svg { height: 15px; width: 15px; }
.location-results button div { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.location-results strong { font-size: 10px; }
.location-results small { color: var(--ads-muted); font-size: 8px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.advertiser-field { display: flex; flex-direction: column; gap: 7px; position: relative; }
.advertiser-field > span,
.radius-control > span { color: var(--ads-copy); font-size: 10px; font-weight: 650; }
.advertiser-field > div { align-items: center; border: 1px solid var(--ads-border); border-radius: 8px; display: flex; gap: 8px; padding: 0 10px; }
.advertiser-field > div svg { color: var(--ads-blue); height: 15px; width: 15px; }
.advertiser-field input,
.advertiser-field textarea,
.advertiser-field select { background: white; border: 1px solid var(--ads-border); border-radius: 8px; color: var(--ads-ink); font: 11px Inter, sans-serif; outline: 0; padding: 11px; width: 100%; }
.advertiser-field > div input { border: 0; padding-left: 0; }
.advertiser-field input:focus,
.advertiser-field textarea:focus,
.advertiser-field select:focus { border-color: var(--ads-blue); box-shadow: 0 0 0 3px var(--ads-blue-soft); }
.advertiser-field > small { bottom: 10px; color: #98a2b3; font-size: 8px; position: absolute; right: 10px; }
.advertiser-field textarea { min-height: 130px; resize: vertical; }
.radius-control { margin-top: 19px; }
.radius-control > div { display: grid; gap: 6px; grid-template-columns: repeat(3, 1fr); margin-top: 8px; }
.radius-control button { background: white; border: 1px solid var(--ads-border); border-radius: 7px; color: var(--ads-copy); cursor: pointer; font: 10px Inter, sans-serif; min-height: 34px; }
.radius-control button.active { background: var(--ads-blue); border-color: var(--ads-blue); color: white; }
.add-location { margin: 14px 0 8px; }
.location-list { border: 1px solid var(--ads-border); border-radius: 9px; overflow: hidden; }
.location-list article { align-items: center; cursor: pointer; display: grid; gap: 9px; grid-template-columns: auto 1fr auto; min-height: 54px; padding: 8px 11px; }
.location-list article.active { background: #f8faff; box-shadow: inset 3px 0 var(--ads-blue); }
.location-list article + article { border-top: 1px solid var(--ads-border); }
.location-list article > span { color: var(--ads-blue); }
.location-list article > span svg { height: 16px; width: 16px; }
.location-list article div { display: flex; flex-direction: column; gap: 3px; }
.location-list strong { font-size: 10px; }
.location-list small { color: var(--ads-muted); font-size: 8px; }
.location-list button { background: transparent; border: 0; color: #98a2b3; cursor: pointer; }
.location-list button svg { height: 14px; width: 14px; }
.location-empty { align-items: center; color: var(--ads-muted); display: flex; font-size: 9px; gap: 7px; justify-content: center; min-height: 70px; padding: 12px; }
.location-empty svg { height: 17px; width: 17px; }
.potential-reach { align-items: center; background: #f8faff; border: 1px solid #dbe6ff; border-radius: 9px; display: grid; gap: 9px; grid-template-columns: auto 1fr auto; margin-top: 12px; padding: 11px; }
.potential-reach > svg:first-child { color: var(--ads-blue); height: 18px; width: 18px; }
.potential-reach > svg:last-child { color: #98a2b3; height: 14px; width: 14px; }
.potential-reach div { display: flex; flex-direction: column; gap: 2px; }
.potential-reach small { color: var(--ads-muted); font-size: 8px; }
.potential-reach strong { font-size: 10px; }
.advertiser-map { background: #eef1e9; border: 1px solid #dde3da; border-radius: 12px; min-height: 420px; overflow: hidden; position: relative; }
.advertiser-map::before { display: none; }
.advertiser-map .leaflet-control-attribution { font-size: 8px; }
.advertiser-map .leaflet-tooltip { border: 0; border-radius: 7px; box-shadow: 0 3px 12px rgba(16,24,40,.15); color: var(--ads-copy); font: 650 9px Inter, sans-serif; }
.map-loading, .map-unavailable { align-items: center; color: var(--ads-muted); display: flex; flex-direction: column; gap: 8px; inset: 0; justify-content: center; position: absolute; }
.map-loading svg, .map-unavailable svg { color: var(--ads-blue); height: 22px; width: 22px; }
.map-unavailable strong { color: var(--ads-copy); font-size: 12px; }
.map-unavailable span { font-size: 9px; max-width: 260px; text-align: center; }
.map-road { background: rgba(255,255,255,.85); border: 1px solid #d7ddcf; height: 7px; position: absolute; width: 130%; }
.road-one { left: -15%; top: 47%; transform: rotate(-18deg); }
.road-two { left: -10%; top: 61%; transform: rotate(22deg); }
.road-three { left: -15%; top: 28%; transform: rotate(4deg); }
.map-radius { background: rgba(21,94,239,.11); border: 2px solid rgba(21,94,239,.42); border-radius: 50%; position: absolute; }
.radius-large { height: 220px; left: 26%; top: 36%; width: 220px; }
.radius-medium { height: 130px; width: 130px; }
.radius-medium.one { left: 21%; top: 13%; }
.radius-medium.two { right: 13%; top: 46%; }
.map-city { color: #344054; font-size: 9px; font-weight: 700; position: absolute; z-index: 2; }
.map-city i { background: var(--ads-blue); border: 3px solid white; border-radius: 50%; box-shadow: 0 2px 6px rgba(16,24,40,.18); display: block; height: 16px; margin: 0 auto 4px; width: 16px; }
.city-uberlandia { left: 30%; top: 23%; }
.city-uberaba { left: 44%; top: 57%; }
.city-araxa { right: 23%; top: 57%; }
.map-legend { align-items: center; background: rgba(255,255,255,.94); border: 1px solid var(--ads-border); border-radius: 8px; bottom: 14px; color: var(--ads-copy); display: flex; font-size: 9px; gap: 6px; left: 14px; padding: 8px 10px; position: absolute; }
.map-legend svg { color: var(--ads-blue); height: 14px; width: 14px; }

.recommended-channel { align-items: center; background: #fbfcff; border: 1px solid #b8ccff; border-radius: 12px; cursor: pointer; display: grid; gap: 15px; grid-template-columns: auto 1fr auto; min-height: 150px; padding: 24px; position: relative; text-align: left; width: 100%; }
.recommended-channel.selected { background: #f7f9ff; border-color: var(--ads-blue); box-shadow: inset 0 0 0 1px var(--ads-blue); }
.recommend-label { align-items: center; color: var(--ads-blue); display: flex; font-size: 9px; font-weight: 750; gap: 5px; left: 21px; position: absolute; text-transform: uppercase; top: 13px; }
.recommend-label svg { height: 12px; width: 12px; }
.recommended-channel > div { display: flex; margin-top: 12px; }
.big-provider { align-items: center; background: white; border: 1px solid var(--ads-border); border-radius: 11px; display: inline-flex; font: 750 19px/1 Inter, sans-serif; height: 45px; justify-content: center; width: 45px; }
.big-provider + .big-provider { margin-left: -6px; }
.big-provider.google { color: #4285f4; }
.big-provider.instagram { background: linear-gradient(135deg, #6d28d9, #db2777, #f59e0b); color: white; }
.big-provider.facebook { background: #1877f2; color: white; }
.big-provider.meta { color: #0969da; }
.recommended-channel section { margin-top: 12px; }
.recommended-channel h2 { font-size: 16px; margin: 0 0 6px; }
.recommended-channel p { color: var(--ads-muted); font-size: 11px; margin: 0 0 12px; }
.provider-benefits { display: flex; flex-wrap: wrap; gap: 8px; }
.provider-benefits span { align-items: center; background: white; border: 1px solid var(--ads-border); border-radius: 100px; color: var(--ads-copy); display: flex; font-size: 8px; gap: 4px; padding: 5px 7px; }
.provider-benefits svg { color: var(--ads-blue); height: 11px; width: 11px; }
.manual-channel-title { align-items: center; color: var(--ads-muted); display: flex; font-size: 9px; gap: 10px; margin: 18px 0 10px; text-transform: uppercase; }
.manual-channel-title i { background: var(--ads-border); height: 1px; flex: 1; }
.manual-channel-grid { display: grid; gap: 12px; grid-template-columns: 1fr 1fr; }
.manual-channel-card { align-items: center; background: white; border: 1px solid var(--ads-border); border-radius: 10px; cursor: pointer; display: grid; gap: 13px; grid-template-columns: auto 1fr auto; min-height: 100px; padding: 16px; text-align: left; }
.manual-channel-card.selected { background: #f8faff; border-color: var(--ads-blue); }
.manual-channel-card h3 { font-size: 13px; margin: 0 0 5px; }
.manual-channel-card p { color: var(--ads-muted); font-size: 9px; line-height: 1.5; margin: 0; }
.channel-checkbox { align-items: center; border: 1px solid #98a2b3; border-radius: 4px; display: flex; height: 18px; justify-content: center; width: 18px; }
.manual-channel-card.selected .channel-checkbox { background: var(--ads-blue); border-color: var(--ads-blue); color: white; }
.channel-checkbox svg { height: 11px; width: 11px; }
.advanced-link { margin-top: 15px; }

.budget-layout { grid-template-columns: minmax(0, 1fr) 330px; }
.budget-options { display: grid; gap: 8px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.budget-options button { align-items: center; background: white; border: 1px solid var(--ads-border); border-radius: 9px; color: var(--ads-copy); cursor: pointer; display: flex; flex-direction: column; font: 11px Inter, sans-serif; justify-content: center; min-height: 68px; position: relative; }
.budget-options button.selected { background: #f8faff; border-color: var(--ads-blue); box-shadow: inset 0 0 0 1px var(--ads-blue); color: var(--ads-blue); }
.budget-options strong { font-size: 14px; }
.budget-options small { background: var(--ads-blue); border-radius: 100px; color: white; font-size: 7px; padding: 3px 6px; position: absolute; right: 6px; top: 6px; text-transform: uppercase; }
.duration-field { margin-top: 20px; max-width: 260px; }
.daily-average { align-items: center; background: #f8faff; border: 1px solid #dbe6ff; border-radius: 10px; display: grid; gap: 10px; grid-template-columns: auto auto 1fr; margin-top: 14px; padding: 12px; }
.daily-average > span { align-items: center; background: white; border-radius: 8px; color: var(--ads-blue); display: flex; height: 34px; justify-content: center; width: 34px; }
.daily-average > span svg { height: 16px; width: 16px; }
.daily-average > div { display: flex; flex-direction: column; gap: 2px; }
.daily-average small { color: var(--ads-muted); font-size: 8px; }
.daily-average strong { font-size: 13px; }
.daily-average em { color: var(--ads-muted); font-size: 8px; font-style: normal; justify-self: end; max-width: 230px; text-align: right; }
.budget-tip { align-items: flex-start; background: #fffbeb; border: 1px solid #fde68a; border-radius: 10px; display: flex; gap: 10px; margin-top: 15px; padding: 12px; }
.budget-tip > svg { color: #d39105; flex: 0 0 auto; height: 18px; width: 18px; }
.budget-tip strong { color: #713b12; display: block; font-size: 9px; line-height: 1.5; }
.budget-tip .advertiser-link { color: #9a5b08; font-size: 9px; margin-top: 3px; }
.estimate-card { align-self: start; background: #fbfcfe; border: 1px solid var(--ads-border); border-radius: 12px; overflow: hidden; padding: 18px; }
.estimate-card > div:first-child { align-items: center; display: flex; gap: 9px; margin-bottom: 14px; }
.estimate-card > div:first-child > span { align-items: center; background: var(--ads-blue-soft); border-radius: 8px; color: var(--ads-blue); display: flex; height: 33px; justify-content: center; width: 33px; }
.estimate-card > div:first-child svg { height: 16px; width: 16px; }
.estimate-card h2 { font-size: 13px; margin: 0; }
.estimate-card dl { align-items: center; display: flex; gap: 15px; justify-content: space-between; margin: 0; min-height: 38px; }
.estimate-card dt { color: var(--ads-muted); font-size: 9px; }
.estimate-card dd { font-size: 10px; font-weight: 650; margin: 0; text-align: right; }
.estimate-card dd.highlight { color: var(--ads-blue); font-size: 13px; }
.estimate-card hr { border: 0; border-top: 1px solid var(--ads-border); margin: 8px 0; }
.estimate-card > p { align-items: flex-start; background: #f2f4f7; border-radius: 7px; color: var(--ads-muted); display: flex; font-size: 8px; gap: 6px; line-height: 1.5; margin: 13px -4px -4px; padding: 9px; }
.estimate-card > p svg { flex: 0 0 auto; height: 13px; width: 13px; }

.creative-layout { grid-template-columns: minmax(0, .85fr) minmax(390px, 1.15fr); }
.creative-form { display: flex; flex-direction: column; gap: 16px; }
.instagram-picker { align-items: center; background: linear-gradient(120deg, #fbf7ff, #fff8fb); border: 1px solid #ead8ff; border-radius: 11px; display: grid; gap: 12px; grid-template-columns: auto 1fr auto; padding: 13px; }
.instagram-picker-logo { align-items: center; background: linear-gradient(135deg, #6d28d9, #db2777, #f59e0b); border-radius: 10px; color: white; display: flex; font-size: 22px; font-weight: 750; height: 42px; justify-content: center; width: 42px; }
.instagram-picker > div { min-width: 0; }
.instagram-picker small { color: #7c3aed; font-size: 8px; font-weight: 750; }
.instagram-picker h3 { font-size: 11px; margin: 3px 0; }
.instagram-picker p { color: var(--ads-muted); font-size: 8px; line-height: 1.45; margin: 0; }
.instagram-picker.post-library { display: block; }
.instagram-picker > header { align-items: center; display: flex; justify-content: space-between; margin-bottom: 10px; }
.instagram-picker > header > div { min-width: 0; }
.instagram-picker > header > svg { color: #7c3aed; height: 19px; width: 19px; }
.instagram-post-skeletons, .instagram-post-grid { display: grid; gap: 8px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.instagram-post-skeletons i { animation: advertiser-pulse 1.4s infinite; aspect-ratio: 1; background: linear-gradient(90deg,#f1e9fb 25%,#fff 50%,#f1e9fb 75%); background-size: 200% 100%; border-radius: 8px; }
.instagram-post { background: white; border: 1px solid #ead8ff; border-radius: 9px; cursor: pointer; min-width: 0; overflow: hidden; padding: 0; position: relative; text-align: left; }
.instagram-post.selected { border-color: var(--ads-blue); box-shadow: inset 0 0 0 1px var(--ads-blue); }
.instagram-post > img, .instagram-post > span { align-items: center; aspect-ratio: 1; background: #f3eef8; display: flex; justify-content: center; object-fit: cover; width: 100%; }
.instagram-post > span svg { color: #7c3aed; height: 25px; width: 25px; }
.instagram-post > i { color: white; filter: drop-shadow(0 1px 2px rgba(0,0,0,.35)); position: absolute; right: 7px; top: 7px; }
.instagram-post > i svg { height: 15px; width: 15px; }
.instagram-post > div { padding: 7px; }
.instagram-post strong { display: -webkit-box; font-size: 8px; line-height: 1.35; min-height: 22px; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.instagram-post > div small { color: var(--ads-muted); display: block; font-size: 7px; margin-top: 4px; }
.instagram-post > em { align-items: center; background: #f8faff; color: var(--ads-blue); display: flex; font-size: 7px; font-style: normal; font-weight: 700; gap: 3px; justify-content: center; min-height: 24px; }
.instagram-post > em svg { height: 10px; width: 10px; }
.ai-button { align-self: flex-end; color: var(--ads-blue); }
.destination-options { border: 0; display: flex; flex-direction: column; gap: 8px; margin: 5px 0 0; padding: 0; }
.destination-options legend { color: var(--ads-copy); font-size: 10px; font-weight: 650; margin-bottom: 9px; }
.destination-option { align-items: center; background: white; border: 1px solid var(--ads-border); border-radius: 9px; cursor: pointer; display: grid; gap: 10px; grid-template-columns: auto 1fr auto auto; min-height: 62px; padding: 10px 12px; position: relative; }
.destination-option.selected { background: #f8faff; border-color: var(--ads-blue); }
.destination-option input { opacity: 0; pointer-events: none; position: absolute; }
.destination-option > span { align-items: center; background: #f2f4f7; border-radius: 8px; color: var(--ads-copy); display: flex; height: 34px; justify-content: center; width: 34px; }
.destination-option.selected > span { background: var(--ads-blue-soft); color: var(--ads-blue); }
.destination-option > span svg { height: 16px; width: 16px; }
.destination-option div { display: flex; flex-direction: column; gap: 4px; }
.destination-option strong { font-size: 10px; }
.destination-option small { color: var(--ads-muted); font-size: 8px; }
.destination-option em { background: #ecfdf3; border-radius: 100px; color: #067647; font-size: 7px; font-style: normal; font-weight: 700; padding: 4px 6px; text-transform: uppercase; }
.destination-option > i { align-items: center; background: var(--ads-blue); border-radius: 50%; color: white; display: none; height: 18px; justify-content: center; width: 18px; }
.destination-option.selected > i { display: flex; }
.destination-option > i svg { height: 11px; width: 11px; }
.creative-preview-wrap { background: #f2f4f7; border: 1px solid var(--ads-border); border-radius: 12px; padding: 16px; }
.creative-preview-wrap > nav { background: #e4e7ec; border-radius: 8px; display: grid; gap: 3px; grid-template-columns: repeat(var(--preview-count, 3), 1fr); margin: 0 auto 14px; max-width: 390px; padding: 3px; }
.creative-preview-wrap > nav button { background: transparent; border: 0; border-radius: 6px; color: var(--ads-muted); cursor: pointer; font: 600 9px Inter, sans-serif; min-height: 30px; }
.creative-preview-wrap > nav button.active { background: white; color: var(--ads-blue); }
.social-preview { background: white; border: 1px solid #d0d5dd; border-radius: 10px; box-shadow: 0 7px 24px rgba(16,24,40,.08); margin: 0 auto; max-width: 390px; overflow: hidden; }
.social-preview > header { align-items: center; display: grid; gap: 8px; grid-template-columns: auto 1fr auto; padding: 10px; }
.store-avatar { align-items: center; background: #102a4c; border-radius: 50%; color: white; display: flex; font-size: 8px; font-weight: 750; height: 32px; justify-content: center; width: 32px; }
.social-preview header div { display: flex; flex-direction: column; gap: 3px; }
.social-preview header strong { font-size: 9px; }
.social-preview header small { align-items: center; color: var(--ads-muted); display: flex; font-size: 7px; gap: 3px; }
.social-preview header svg { color: var(--ads-muted); height: 13px; width: 13px; }
.social-preview > p { font-size: 8px; line-height: 1.45; margin: 0; padding: 0 11px 10px; }
.social-preview .preview-car { border-radius: 0; height: 218px; }
.preview-instagram-media { background: #101828; height: 218px; overflow: hidden; }
.preview-instagram-media img { height: 100%; object-fit: cover; width: 100%; }
.preview-car > span svg { height: 105px; stroke-width: 1.2; width: 105px; }
.preview-car > small { font-size: 10px; font-weight: 750; letter-spacing: .18em; text-transform: uppercase; z-index: 1; }
.social-preview > section { align-items: center; background: #f6f7f9; display: grid; gap: 8px; grid-template-columns: 1fr auto; padding: 10px 11px; }
.social-preview section div { display: flex; flex-direction: column; gap: 3px; }
.social-preview section small { color: var(--ads-muted); font-size: 6px; }
.social-preview section h3 { font-size: 10px; margin: 0; }
.social-preview section strong { font-size: 11px; }
.social-preview section span { color: var(--ads-muted); font-size: 7px; }
.social-preview section button,
.google-preview button { background: white; border: 1px solid #cbd5e1; border-radius: 5px; color: var(--ads-blue); font: 650 8px Inter, sans-serif; min-height: 28px; padding: 0 8px; }
.social-preview footer { align-items: center; display: flex; gap: 12px; padding: 10px; }
.social-preview footer svg { height: 16px; width: 16px; }
.social-preview footer span { flex: 1; }
.google-preview { background: white; border: 1px solid var(--ads-border); border-radius: 10px; box-shadow: 0 7px 24px rgba(16,24,40,.08); margin: 50px auto 0; max-width: 470px; padding: 22px; }
.google-preview > small { color: #067647; font-size: 9px; }
.google-preview h3 { color: #1a0dab; font-size: 17px; font-weight: 500; margin: 7px 0; }
.google-preview p { color: #4d5156; font-size: 10px; line-height: 1.5; }
.google-preview > div { display: flex; flex-direction: column; gap: 3px; margin: 12px 0; }
.google-preview > div span { color: var(--ads-muted); font-size: 9px; }

.wizard-footer,
.review-footer {
  align-items: center;
  background: white;
  border-top: 1px solid var(--ads-border);
  bottom: 0;
  display: flex;
  gap: 12px;
  justify-content: flex-end;
  min-height: 70px;
  padding: 12px 24px;
  position: sticky;
  z-index: 5;
}

.wizard-footer > span { flex: 1; justify-content: center; }
.review-shell .advertiser-stepper li:last-child { color: var(--ads-green); }
.review-heading { align-items: center; display: flex; gap: 13px; margin: 30px auto 22px; max-width: 1070px; padding: 0 20px; }
.review-heading > div { min-width: 0; }
.review-heading > span { align-items: center; background: #ecfdf3; border-radius: 50%; color: var(--ads-green); display: flex; height: 46px; justify-content: center; width: 46px; }
.review-heading > span svg { height: 24px; width: 24px; }
.review-heading h1 { font-size: 24px; }
.review-layout { grid-template-columns: 1fr 310px; margin: 0 auto 32px; max-width: 1070px; padding: 0 20px; }
.review-card { border: 1px solid var(--ads-border); border-radius: 12px; overflow: hidden; }
.review-card article { align-items: center; display: grid; gap: 12px; grid-template-columns: auto minmax(0, 1fr) auto; min-height: 70px; padding: 12px 16px; }
.review-card article + article { border-top: 1px solid var(--ads-border); }
.review-card article > span { align-items: center; background: var(--ads-blue-soft); border-radius: 8px; color: var(--ads-blue); display: flex; height: 34px; justify-content: center; width: 34px; }
.review-card article > span svg { height: 16px; width: 16px; }
.review-card article div { display: flex; flex-direction: column; gap: 4px; }
.review-card article small { color: var(--ads-muted); font-size: 8px; }
.review-card article strong { font-size: 10px; line-height: 1.45; }
.review-card article button { background: transparent; border: 0; color: var(--ads-blue); cursor: pointer; font: 650 9px Inter, sans-serif; }
.review-estimate { background: #fbfcfe; }
.review-footer .publish { min-width: 190px; }

.campaign-success { align-items: center; display: flex; flex-direction: column; margin: 65px auto; max-width: 600px; text-align: center; }
.success-check { align-items: center; background: var(--ads-green); border: 8px solid #d1fadf; border-radius: 50%; color: white; display: flex; height: 72px; justify-content: center; margin-bottom: 22px; width: 72px; }
.success-check svg { height: 31px; stroke-width: 2.5; width: 31px; }
.campaign-success h1 { font-size: 29px; }
.campaign-success > p { color: var(--ads-muted); font-size: 13px; line-height: 1.6; margin: 9px 0 23px; }
.publication-status { border: 1px solid var(--ads-border); border-radius: 12px; margin-bottom: 15px; overflow: hidden; width: min(100%, 450px); }
.publication-status > div { align-items: center; display: grid; gap: 12px; grid-template-columns: auto 1fr auto; min-height: 62px; padding: 9px 15px; text-align: left; }
.publication-status > div + div { border-top: 1px solid var(--ads-border); }
.publication-status .big-provider { border-radius: 8px; font-size: 15px; height: 34px; width: 34px; }
.publication-status strong { font-size: 11px; }
.publication-status em { align-items: center; color: #b54708; display: flex; font-size: 9px; font-style: normal; gap: 6px; }
.publication-status em i { background: var(--ads-warning); border-radius: 50%; height: 6px; width: 6px; }
.campaign-success > small { align-items: center; color: var(--ads-muted); display: flex; font-size: 9px; gap: 6px; margin-bottom: 22px; }
.campaign-success > small svg { height: 14px; width: 14px; }

.detail-actions { display: flex; gap: 8px; }
.detail-status-line { align-items: center; display: flex; gap: 10px; margin: -12px 0 19px; }
.detail-status-line > span:last-child { color: var(--ads-muted); font-size: 9px; }
.detail-metrics .advertiser-metric { min-height: 106px; }
.detail-grid { grid-template-columns: minmax(0, 1.5fr) minmax(300px, .7fr); margin-bottom: 18px; }
.leads-chart { min-width: 0; }
.chart-wrap { height: 300px; padding: 25px 24px 12px 42px; position: relative; }
.chart-y { bottom: 42px; color: #98a2b3; display: flex; flex-direction: column; font-size: 8px; justify-content: space-between; left: 17px; position: absolute; top: 28px; }
.chart-wrap svg { height: 225px; overflow: visible; width: 100%; }
.chart-wrap svg::before { content: ""; }
.chart-wrap svg polyline { fill: none; stroke: var(--ads-blue); stroke-linejoin: round; stroke-width: 3; }
.chart-wrap svg .area { fill: url(#leadArea); stroke: none; }
.chart-wrap svg circle { fill: white; stroke: var(--ads-blue); stroke-width: 2; }
.chart-x { color: #98a2b3; display: flex; font-size: 8px; justify-content: space-between; margin-top: 4px; }
.funnel-card { min-width: 0; }
.funnel { display: flex; flex-direction: column; gap: 8px; padding: 20px; }
.funnel > div { display: flex; justify-content: center; }
.funnel > div > span { align-items: center; background: linear-gradient(90deg, var(--ads-blue), #4f80f2); border-radius: 6px; color: white; display: grid; gap: 6px; grid-template-columns: auto 1fr; min-height: 42px; padding: 7px 10px; }
.funnel > div > span svg { grid-row: 1/3; height: 15px; width: 15px; }
.funnel strong { font-size: 11px; }
.funnel small { color: rgba(255,255,255,.76); font-size: 7px; }
.vehicle-ranking { margin-bottom: 18px; }
.vehicle-ranking > article { align-items: center; display: grid; gap: 13px; grid-template-columns: auto auto minmax(150px, .8fr) minmax(160px, 1fr) minmax(90px, auto); min-height: 68px; padding: 10px 20px; }
.vehicle-ranking > article + article { border-top: 1px solid var(--ads-border); }
.vehicle-ranking > article > span { align-items: center; background: #f2f4f7; border-radius: 50%; display: flex; font-size: 9px; font-weight: 700; height: 25px; justify-content: center; width: 25px; }
.rank-vehicle { align-items: center; background: var(--ads-blue-soft); border-radius: 8px; color: var(--ads-blue); display: flex; height: 36px; justify-content: center; width: 44px; }
.rank-vehicle svg { height: 19px; width: 19px; }
.vehicle-ranking article > div { display: flex; flex-direction: column; gap: 4px; }
.vehicle-ranking strong { font-size: 10px; }
.vehicle-ranking small { color: var(--ads-muted); font-size: 8px; }
.vehicle-ranking article > i { background: #eaecf0; border-radius: 100px; height: 5px; overflow: hidden; }
.vehicle-ranking article > i b { background: var(--ads-blue); display: block; height: 100%; }

.tracking-card { align-items: center; background: #102a4c; border-radius: 14px; color: white; display: grid; gap: 16px; grid-template-columns: auto 1fr auto; padding: 20px 22px; }
.tracking-card > span { align-items: center; background: rgba(255,255,255,.1); border-radius: 10px; display: flex; height: 44px; justify-content: center; width: 44px; }
.tracking-card > span svg { height: 21px; width: 21px; }
.tracking-card small { color: #8fb5eb; font-size: 8px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.tracking-card h3 { font-size: 13px; margin: 3px 0; }
.tracking-card p { color: #b7c8dd; font-size: 9px; line-height: 1.5; margin: 0; max-width: 620px; }
.tracking-card > div:last-child { display: flex; flex-wrap: wrap; gap: 6px; justify-content: flex-end; }
.tracking-card > div:last-child span { align-items: center; background: rgba(255,255,255,.08); border-radius: 100px; color: #d8e4f3; display: flex; font-size: 8px; gap: 4px; padding: 5px 7px; }
.tracking-card > div:last-child svg { color: #6ce9a6; height: 10px; width: 10px; }

.integration-intro { align-items: center; background: #f0f9ff; border: 1px solid #b9e6fe; border-radius: 10px; color: #026aa2; display: flex; gap: 11px; margin-bottom: 17px; padding: 12px 15px; }
.integration-intro > svg { height: 20px; width: 20px; }
.integration-intro div { display: flex; flex-direction: column; gap: 3px; }
.integration-intro strong { font-size: 10px; }
.integration-intro span { font-size: 9px; }
.integration-grid { display: grid; gap: 16px; grid-template-columns: 1fr 1fr; }
.integration-card { background: white; border: 1px solid var(--ads-border); border-radius: 13px; padding: 22px; }
.integration-card header { align-items: center; display: flex; gap: 12px; }
.integration-logo { align-items: center; border: 1px solid var(--ads-border); border-radius: 11px; display: flex; font: 750 24px Inter, sans-serif; height: 52px; justify-content: center; width: 52px; }
.integration-logo.google { color: #4285f4; }
.integration-logo.meta { color: #0969da; }
.integration-card header > div { align-items: flex-start; display: flex; flex-direction: column; gap: 5px; }
.integration-card h2 { font-size: 15px; margin: 0; }
.integration-card > p { color: var(--ads-muted); font-size: 10px; line-height: 1.6; margin: 15px 0; }
.integration-card ul { border-bottom: 1px solid var(--ads-border); border-top: 1px solid var(--ads-border); display: flex; flex-direction: column; gap: 9px; list-style: none; margin: 0 0 17px; padding: 14px 0; }
.integration-card li { align-items: center; color: var(--ads-copy); display: flex; font-size: 9px; gap: 7px; }
.integration-card li svg { color: var(--ads-green); height: 13px; width: 13px; }
.connected-account { background: #f8faff; border-radius: 8px; display: flex; flex-direction: column; gap: 3px; margin-bottom: 10px; padding: 10px; }
.connected-account small { color: var(--ads-muted); font-size: 8px; }
.connected-account strong { font-size: 10px; }
.integration-tracking { margin-top: 18px; }

.secondary-feature { align-items: center; background: linear-gradient(110deg, #f1f6ff, white); border: 1px solid #cddcff; border-radius: 14px; display: flex; gap: 16px; margin-bottom: 18px; padding: 22px; }
.secondary-feature > span { align-items: center; background: white; border: 1px solid #dbe6ff; border-radius: 11px; color: var(--ads-blue); display: flex; height: 49px; justify-content: center; width: 49px; }
.secondary-feature > span svg { height: 24px; width: 24px; }
.secondary-feature small { color: var(--ads-blue); font-size: 8px; font-weight: 700; text-transform: uppercase; }
.secondary-feature h2 { font-size: 17px; margin: 4px 0; }
.secondary-feature p { color: var(--ads-muted); font-size: 10px; margin: 0; }
.leads-chart.mini { max-width: 820px; }
.simple-records { overflow: hidden; }
.simple-records article { align-items: center; display: grid; gap: 12px; grid-template-columns: auto 1fr auto auto; min-height: 68px; padding: 10px 17px; }
.simple-records article + article { border-top: 1px solid var(--ads-border); }
.simple-records article > span { align-items: center; background: var(--ads-blue-soft); border-radius: 8px; color: var(--ads-blue); display: flex; height: 36px; justify-content: center; width: 36px; }
.simple-records article > span svg { height: 17px; width: 17px; }
.simple-records article div { display: flex; flex-direction: column; gap: 4px; }
.simple-records strong { font-size: 11px; }
.simple-records small { color: var(--ads-muted); font-size: 8px; }
.simple-records b { font-size: 15px; }
.simple-records > article > svg { color: #98a2b3; height: 15px; width: 15px; }
.creative-library { display: grid; gap: 14px; grid-template-columns: repeat(3, 1fr); }
.creative-library article { background: white; border: 1px solid var(--ads-border); border-radius: 12px; overflow: hidden; }
.library-cover { align-items: center; background: linear-gradient(135deg, #cddcff, #edf3ff); color: var(--ads-blue); display: flex; height: 145px; justify-content: center; }
.library-cover.tone-2 { background: linear-gradient(135deg, #d1fadf, #ecfdf3); color: #079455; }
.library-cover.tone-3 { background: linear-gradient(135deg, #fee4e2, #fff4ed); color: #d92d20; }
.library-cover svg { height: 50px; width: 50px; }
.creative-library article > div:last-child { padding: 16px; }
.creative-library small { color: var(--ads-blue); font-size: 8px; font-weight: 700; text-transform: uppercase; }
.creative-library h3 { font-size: 13px; margin: 5px 0; }
.creative-library p { color: var(--ads-muted); font-size: 9px; line-height: 1.5; min-height: 42px; }
.billing-grid { display: grid; gap: 14px; grid-template-columns: 1fr 1fr 2fr; }
.billing-history { grid-column: 3; grid-row: 1 / span 2; overflow: hidden; }
.billing-history > div:not(.advertiser-panel-head) { align-items: center; display: grid; gap: 10px; grid-template-columns: auto 1fr auto auto; min-height: 58px; padding: 9px 15px; }
.billing-history > div + div { border-top: 1px solid var(--ads-border); }
.billing-history > div > span { align-items: center; background: #f2f4f7; border-radius: 8px; color: var(--ads-copy); display: flex; height: 32px; justify-content: center; width: 32px; }
.billing-history svg { height: 15px; width: 15px; }
.billing-history strong { font-size: 9px; }
.billing-history b { font-size: 10px; }
.billing-history small { color: var(--ads-muted); font-size: 8px; }

.advertiser-skeleton { animation: advertiser-pulse 1.35s ease-in-out infinite; background: linear-gradient(90deg, #eef0f3, #f8f9fa, #eef0f3); background-size: 200% 100%; border-radius: 12px; }
.advertiser-skeleton.metric { min-height: 118px; }
.advertiser-skeleton.table { height: 280px; }
@keyframes advertiser-pulse { 0% { background-position: 200% 0; } 100% { background-position: -200% 0; } }

@media (max-width: 1180px) {
  .campaign-row { grid-template-columns: minmax(200px, 1.4fr) repeat(3, .5fr) minmax(120px, .7fr) auto; }
  .campaign-row > .advertiser-secondary { display: none; }
  .advertiser-stepper li:not(:last-child)::after { left: 75px; }
  .vehicle-card { grid-template-columns: auto 88px 1fr; }
  .billing-grid { grid-template-columns: 1fr 1fr; }
  .billing-history { grid-column: 1 / -1; grid-row: auto; }
}

@media (max-width: 900px) {
  .advertiser-shell { padding: 18px 18px 45px; }
  .advertiser-metrics { grid-template-columns: repeat(2, 1fr); }
  .campaign-row { align-items: start; grid-template-columns: minmax(200px, 1fr) repeat(3, .45fr) auto; }
  .campaign-progress { display: none; }
  .advertiser-recommendation { grid-template-columns: auto 1fr; }
  .advertiser-recommendation .advertiser-secondary { grid-column: 2; justify-self: start; }
  .advertiser-stepper { display: none; }
  .advertiser-step-mobile { display: block; padding: 14px 0; }
  .advertiser-step-mobile span { color: var(--ads-blue); display: block; font-size: 10px; font-weight: 700; margin-bottom: 8px; }
  .advertiser-step-mobile i { background: #e4e7ec; border-radius: 100px; display: block; height: 5px; overflow: hidden; }
  .advertiser-step-mobile b { background: var(--ads-blue); display: block; height: 100%; }
  .region-layout,
  .budget-layout,
  .creative-layout,
  .review-layout,
  .detail-grid { grid-template-columns: 1fr; }
  .advertiser-map { min-height: 340px; }
  .platform-grid { grid-template-columns: 1fr; }
  .platform-card { min-height: 180px; }
  .creative-preview-wrap { min-height: 520px; }
  .review-estimate { width: 100%; }
  .detail-grid { gap: 18px; }
  .integration-grid { grid-template-columns: 1fr; }
  .tracking-card { align-items: start; grid-template-columns: auto 1fr; }
  .tracking-card > div:last-child { grid-column: 2; justify-content: flex-start; }
  .creative-library { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 680px) {
  .advertiser-view { min-height: calc(100vh - 58px); }
  .advertiser-shell { max-width: 100%; overflow-x: hidden; padding: 12px 12px 88px; }
  .advertiser-subnav { margin-bottom: 20px; }
  .advertiser-subnav button { min-height: 42px; padding: 0 10px; }
  .advertiser-page-head { align-items: stretch; flex-direction: column; gap: 14px; }
  .advertiser-page-head .advertiser-primary { width: 100%; }
  .advertiser-page-head h1,
  .wizard-heading h1 { font-size: 23px; }
  .advertiser-metrics { gap: 9px; }
  .advertiser-metric { align-items: flex-start; flex-direction: column; gap: 8px; min-height: 135px; padding: 14px; }
  .advertiser-metric > span { height: 34px; width: 34px; }
  .advertiser-metric > span svg { height: 17px; width: 17px; }
  .advertiser-metric strong { font-size: 19px; }
  .advertiser-panel-head { align-items: flex-start; min-height: 64px; padding: 13px 14px; }
  .campaign-row { gap: 10px; grid-template-columns: 1fr auto; padding: 14px; }
  .campaign-row > div:not(.campaign-name),
  .campaign-row > .advertiser-status { display: none; }
  .campaign-row > .advertiser-secondary { display: inline-flex; }
  .advertiser-recommendation { grid-template-columns: 1fr; padding: 17px; }
  .advertiser-recommendation .advertiser-secondary { grid-column: 1; width: 100%; }
  .advertiser-wizard { border-radius: 11px; min-height: calc(100vh - 150px); overflow: visible; }
  .wizard-top { padding: 9px 13px; }
  .wizard-top > small { display: none; }
  .advertiser-stepper-wrap { padding: 0 14px; }
  .wizard-body { padding: 22px 14px 100px; }
  .platform-card { min-height: 0; padding: 18px; }
  .platform-card p { min-height: 0; }
  .provider-configuration { align-items: start; grid-template-columns: auto 1fr; }
  .provider-configuration > svg { display: none; }
  .objective-grid,
  .vehicle-grid,
  .manual-channel-grid { grid-template-columns: 1fr; }
  .objective-card { min-height: 116px; padding: 17px; }
  .selection-switch button { font-size: 9px; }
  .smart-selection { grid-template-columns: auto 1fr; padding: 14px; }
  .smart-selection .advertiser-primary { grid-column: 1 / -1; width: 100%; }
  .vehicle-filters { grid-template-columns: 1fr 1fr; }
  .vehicle-filters label { grid-column: 1 / -1; }
  .vehicle-card { grid-template-columns: auto 82px 1fr; }
  .vehicle-selection-summary { align-items: flex-start; flex-direction: column; gap: 8px; }
  .advertiser-map { min-height: 300px; }
  .location-search { grid-template-columns: 1fr; }
  .location-search .advertiser-primary { width: 100%; }
  .recommended-channel { grid-template-columns: auto 1fr; padding: 26px 15px 17px; }
  .recommended-channel .choice-check { position: absolute; right: 13px; top: 13px; }
  .budget-options { grid-template-columns: 1fr 1fr; }
  .daily-average { grid-template-columns: auto 1fr; }
  .daily-average em { grid-column: 2; justify-self: start; text-align: left; }
  .creative-preview-wrap { min-height: 0; padding: 10px; }
  .instagram-picker { align-items: start; grid-template-columns: auto 1fr; }
  .instagram-picker > button { grid-column: 1 / -1; width: 100%; }
  .instagram-post-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .social-preview .preview-car { height: 190px; }
  .wizard-footer,
  .review-footer { bottom: 0; box-shadow: 0 -6px 18px rgba(16,24,40,.08); left: 0; min-height: 68px; padding: 10px 12px; position: fixed; right: 0; }
  .wizard-footer > span { display: none; }
  .wizard-footer > button { flex: 1; }
  .review-heading { align-items: flex-start; margin-top: 23px; }
  .review-heading h1 { font-size: 20px; line-height: 1.22; overflow-wrap: anywhere; white-space: normal; }
  .review-heading p,
  .review-card article strong { overflow-wrap: anywhere; }
  .review-layout { padding: 0 13px 80px; }
  .review-footer { display: grid; grid-template-columns: .7fr 1.3fr; }
  .review-footer [data-save-only] { display: none; }
  .review-footer .publish { min-width: 0; }
  .campaign-success { margin: 35px auto 10px; padding: 0 8px; }
  .detail-actions { width: 100%; }
  .detail-actions button { flex: 1; }
  .vehicle-ranking > article { grid-template-columns: auto auto 1fr auto; padding: 10px 13px; }
  .vehicle-ranking article > i { display: none; }
  .tracking-card { grid-template-columns: 1fr; padding: 17px; }
  .tracking-card > div:last-child { grid-column: 1; }
  .chart-wrap { height: 260px; overflow: hidden; padding-left: 35px; }
  .chart-wrap svg { height: 190px; width: 620px; }
  .creative-library { grid-template-columns: 1fr; }
  .billing-grid { grid-template-columns: 1fr; }
  .billing-history { grid-column: 1; }
  .advertiser-toolbar { align-items: stretch; flex-direction: column; }
  .advertiser-toolbar label { max-width: none; }
}

@media (prefers-reduced-motion: reduce) {
  .advertiser-root *,
  .advertiser-root *::before,
  .advertiser-root *::after { scroll-behavior: auto !important; transition: none !important; }
}
