/* Google Ads campaign wizard (portal/google-ads-wizard.js): a dialog with a fixed head (title and the five steps) and foot
   (Back / Next / Create), the step's form scrolling between them. Kreative's own look from tokens.css, not Google's:
   neutral surfaces, one filled button, colour only where it means something (red for what must be fixed, amber for a
   warning, the ad-strength estimate from red to green). Layouts inside the body follow its width (container queries),
   so the dialog works at any size; on phones it fills the screen. Dark is the tokens' default, light overrides follow. */
.gads-wizard{
  --gw-rule:color-mix(in srgb,var(--line) 60%,var(--panel));
  --gw-hover:color-mix(in srgb,var(--text) 22%,var(--line));
  position:fixed;inset:0;width:min(880px,calc(100vw - 48px));height:min(840px,calc(100dvh - 48px));max-width:none;max-height:none;
  margin:auto;padding:0;overflow:hidden;border:1px solid var(--line);border-radius:16px;background:var(--panel);color:var(--text);
  box-shadow:0 24px 80px #0006;font-family:var(--font-body);font-size:14px;line-height:1.5;
}
:root[data-theme="light"] .gads-wizard{box-shadow:0 24px 80px rgba(24,24,24,.18)}
.gads-wizard[open]{display:flex;flex-direction:column}
.gads-wizard::backdrop{background:#111a}
.gads-wizard [hidden]{display:none!important}
.gw-form{display:flex;flex-direction:column;flex:1 1 auto;min-height:0}
.gw-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(prefers-reduced-motion:no-preference){
  .gads-wizard[open]{animation:dialog-in .22s cubic-bezier(.2,.8,.2,1)}
  .gads-wizard[open]::backdrop{animation:backdrop-in .22s ease-out}
}

/* ── Head: the title and the steps; the current step is underlined on the head's own rule ── */
.gw-head{flex:none;padding:20px 16px 0 24px;border-bottom:1px solid var(--gw-rule)}
.gw-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.gw-titles{min-width:0;padding-top:4px}
.gads-wizard h2{font-size:20px;line-height:1.2;font-weight:600;letter-spacing:-.02em;overflow-wrap:anywhere}
.gw-subtitle{margin-top:4px;color:var(--muted);font-size:13px;line-height:1.4;overflow-wrap:anywhere}
.gw-icon-button{display:inline-grid;place-items:center;flex:none;width:40px;height:40px;padding:0;border:0;border-radius:10px;background:transparent;color:var(--muted);cursor:pointer;transition:background-color .15s,color .15s}
.gw-icon-button svg{width:18px;height:18px}
.gw-icon-button.is-small{width:32px;height:32px;border-radius:8px}
.gw-icon-button.is-small svg{width:16px;height:16px}
.gw-icon-button:disabled{opacity:.4;cursor:default}
@media(hover:hover){.gw-icon-button:hover:not(:disabled){background:var(--panel-2);color:var(--text)}}
.gw-steps{margin-top:12px}
.gw-steps ol{display:flex;gap:16px;margin:0;padding:0;list-style:none}
.gw-steps-item{flex:1 1 0;min-width:0}
.gw-steps-button{position:relative;display:flex;align-items:center;gap:8px;width:100%;min-height:48px;padding:4px 0 8px;border:0;background:none;color:var(--muted);font:inherit;font-size:13px;font-weight:600;line-height:1.3;text-align:left;cursor:pointer;transition:color .15s}
.gw-steps-button::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;border-radius:2px;background:transparent;transition:background-color .15s}
.gw-steps-button:disabled,span.gw-steps-button{cursor:default}
.gw-steps-button:focus-visible{outline:none;box-shadow:none}
.gw-steps-button:focus-visible .gw-steps-mark{box-shadow:0 0 0 2px var(--panel),0 0 0 4px var(--focus)}
.gw-steps-item[data-status="todo"] .gw-steps-button{color:var(--dim)}
.gw-steps-item[data-status="current"] .gw-steps-button{color:var(--text)}
.gw-steps-item[data-status="current"] .gw-steps-button::after{background:var(--text)}
@media(hover:hover){.gw-steps-button:not(:disabled):hover{color:var(--text)}}
.gw-steps-mark{display:inline-grid;place-items:center;flex:none;width:24px;height:24px;border:1.5px solid currentColor;border-radius:50%;font-size:12px;font-weight:600;font-variant-numeric:tabular-nums;transition:background-color .15s,border-color .15s,color .15s}
.gw-steps-mark svg{width:14px;height:14px}
.gw-steps-item[data-status="current"] .gw-steps-mark{border-color:var(--text);background:var(--text);color:var(--panel)}
.gw-steps-item[data-status="done"] .gw-steps-mark{border-color:var(--panel-2);background:var(--panel-2);color:var(--text)}
.gw-steps-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* ── Body: the step's form; sections split by one quiet rule ── */
.gw-body{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain;padding:24px 24px 32px;container:gw-body / inline-size;transition:opacity .2s}
.gads-wizard[data-busy] .gw-body{opacity:.6}
.gw-step{min-width:0}
.gw-step-head{margin-bottom:24px}
.gads-wizard h3{font-size:16px;line-height:1.3;font-weight:600;letter-spacing:-.01em}
.gw-step-head h3:focus{outline:none}
.gw-lead{margin-top:4px;max-width:64ch;color:var(--muted);font-size:14px;line-height:1.5}
.gw-section{min-width:0;margin:0;padding:0;border:0}
.gw-section~.gw-section{margin-top:24px;padding-top:24px;border-top:1px solid var(--gw-rule)}
.gw-section-title{display:block;margin:0;padding:0;color:var(--text);font-size:14px;font-weight:600;line-height:1.4;letter-spacing:0}
/* A legend floats, so it sits inside its fieldset like a heading instead of on the rule above it. */
legend.gw-section-title{float:left;width:100%;margin-bottom:4px}
legend.gw-section-title+*{clear:both}
h4.gw-section-title{margin-bottom:4px}
.gw-legend-hint{margin-bottom:12px}
.gw-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px;align-items:start}
.gw-narrow{max-width:440px}

/* ── Fields ── */
.gw-field{display:grid;gap:6px;min-width:0;align-content:start}
.gw-label{display:block;color:var(--text);font-size:13px;font-weight:600;line-height:1.4}
.gw-input{display:block;width:100%;min-width:0;min-height:40px;padding:9px 12px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--text);font:inherit;font-size:14px;line-height:20px;transition:border-color .15s,box-shadow .15s}
.gw-input::placeholder{color:var(--dim);opacity:1}
@media(hover:hover){.gw-input:hover:not(:focus){border-color:var(--gw-hover)}}
.gads-wizard .gw-input:focus-visible,.gads-wizard .gw-input:focus{outline:none;border-color:var(--focus);box-shadow:0 0 0 3px var(--focus-soft)}
.gads-wizard .gw-input[aria-invalid="true"],.gads-wizard .v-control[aria-invalid="true"]{border-color:color-mix(in srgb,var(--error-text) 70%,var(--line))}
.gads-wizard .gw-input[aria-invalid="true"]:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--error-text) 22%,transparent)}
.gw-textarea{min-height:120px;resize:vertical;line-height:1.5}
.gw-hint{color:var(--muted);font-size:13px;line-height:1.45}
.gw-error{display:flex;align-items:flex-start;gap:6px;color:var(--error-text);font-size:13px;font-weight:600;line-height:1.45;white-space:pre-line}
.gw-error::before{content:"";flex:none;width:14px;height:14px;margin-top:2px;background:currentColor;-webkit-mask:var(--icon-error) center/contain no-repeat;mask:var(--icon-error) center/contain no-repeat}
.gw-unit-wrap{position:relative;display:flex;align-items:center}
.gw-unit-wrap .gw-input{padding-right:40px;font-variant-numeric:tabular-nums}
.gw-unit{position:absolute;right:12px;color:var(--muted);font-size:14px;pointer-events:none}
.gads-wizard .gw-field .v-control{display:flex;width:100%;min-height:40px;padding:9px 12px;border-radius:8px}
.gw-note{display:flex;align-items:flex-start;gap:8px;margin-top:16px;color:var(--muted);font-size:13px;line-height:1.45}
.gw-note svg{flex:none;width:16px;height:16px;margin-top:1px;color:var(--dim)}
.gw-link{padding:0;border:0;background:none;color:var(--text);font:inherit;font-size:13px;font-weight:600;text-align:left;text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:3px;cursor:pointer}
@media(hover:hover){.gw-link:hover{text-decoration-color:currentColor}}
.gw-callout{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--panel-2);color:var(--text);font-size:13px;line-height:1.5}
.gw-callout>svg{flex:none;width:16px;height:16px;margin-top:2px;color:var(--muted)}
.gw-callout p+p{margin-top:4px}
.gw-callout a{color:inherit;font-weight:600;text-decoration:underline;text-underline-offset:2px}
.gw-callout[data-tone="warning"]{border-color:var(--warning-border);background:var(--warning-bg);color:var(--warning-text)}
.gw-callout[data-tone="error"]{border-color:var(--error-border);background:var(--error-bg);color:var(--error-text)}
/* The undeclared campaigns (EU political ads) with the declaration, and the "open the campaign" action of a lost create. */
.gw-eu-block{margin-bottom:20px}
.gw-eu-actions{margin-top:10px}
.gw-eu-error{font-weight:600}
.gw-callout[data-tone="warning"]>svg,.gw-callout[data-tone="error"]>svg{color:currentColor}
.gw-callout[data-tone="error"]:focus{outline:none}
.gw-callout-title{font-weight:600}

/* Radio and tick rows: a box around each choice of a question; plain rows for the network ticks. */
.gw-choices{display:grid;gap:8px}
.gw-choice{display:flex;align-items:flex-start;gap:12px;min-width:0;padding:12px 14px;border:1px solid var(--line);border-radius:10px;cursor:pointer;transition:border-color .15s,box-shadow .15s}
.gw-choice input{flex:none;width:16px;height:16px;margin:2px 0 0;accent-color:var(--text);cursor:pointer}
.gw-choice:has(input:checked){border-color:var(--text);box-shadow:inset 0 0 0 1px var(--text)}
@media(hover:hover){.gw-choice:hover:not(:has(input:checked)){border-color:var(--gw-hover)}}
.gw-choice-text{display:grid;gap:2px;min-width:0}
.gw-choice-label{font-size:14px;line-height:1.4}
.gw-choice-hint{color:var(--muted);font-size:13px;line-height:1.45}
#gaw-networks .gw-choice{padding:4px 0;border:0;box-shadow:none}
[role="radiogroup"][aria-invalid="true"] .gw-choice{border-color:color-mix(in srgb,var(--error-text) 70%,var(--line))}
#gaw-eu .gw-callout{margin-top:12px}
#gaw-eu .gw-error,#gaw-geo .gw-error,#gaw-launch .gw-error{margin-top:8px}

/* ── Step 1: the budget beside what Google may spend, the bid strategy as cards ── */
.gw-budget{display:grid;grid-template-columns:minmax(0,240px) minmax(0,1fr);gap:12px 24px;align-items:start}
.gw-budget-note{padding-top:26px;color:var(--muted);font-size:13px;line-height:1.5}
.gw-budget-example{margin-top:4px;color:var(--text);font-variant-numeric:tabular-nums}
.gw-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.gw-card{display:flex;align-items:flex-start;gap:12px;min-width:0;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:var(--panel);cursor:pointer;transition:border-color .15s,box-shadow .15s}
.gw-card input{flex:none;width:16px;height:16px;margin:2px 0 0;accent-color:var(--text);cursor:pointer}
.gw-card:has(input:checked){border-color:var(--text);box-shadow:inset 0 0 0 1px var(--text)}
@media(hover:hover){.gw-card:hover:not(:has(input:checked)){border-color:var(--gw-hover)}}
.gw-card-text{display:grid;gap:4px;min-width:0}
.gw-card-title{display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px;font-size:14px;font-weight:600;line-height:1.35}
.gw-card-desc{color:var(--muted);font-size:13px;line-height:1.45}
.gw-badge{display:inline-flex;align-items:center;height:20px;padding:0 8px;border-radius:999px;background:var(--panel-2);color:var(--text);font-size:12px;font-weight:600;line-height:1;white-space:nowrap}
.gw-strategy-options{display:grid;gap:12px;margin-top:16px}
.gw-strategy-options>.gw-field{max-width:320px}

/* ── Step 2: locations as chips, the place search, dates ── */
.gw-chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px;padding:0;list-style:none}
.gw-chip{display:inline-flex;align-items:center;gap:6px;min-width:0;max-width:100%;min-height:32px;padding:0 4px 0 10px;border:1px solid var(--line);border-radius:999px;background:var(--panel-2);font-size:13px;line-height:1.3}
.gw-chip>svg{flex:none;width:14px;height:14px;color:var(--muted)}
.gw-chip-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gw-chip-kind{color:var(--muted)}
.gw-chip[data-negative="true"]{border-style:dashed;background:transparent}
.gw-chip[data-invalid="true"]{border-color:var(--error-text);color:var(--error-text)}
.gw-chip-remove{position:relative;display:inline-grid;place-items:center;flex:none;width:24px;height:24px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--muted);cursor:pointer;transition:background-color .15s,color .15s}
.gw-chip-remove::after{content:"";position:absolute;inset:-4px}
.gw-chip-remove svg{width:12px;height:12px}
@media(hover:hover){.gw-chip-remove:hover{background:color-mix(in srgb,var(--text) 10%,transparent);color:var(--text)}}
.gw-empty-line{display:flex;align-items:flex-start;gap:8px;margin:0 0 16px;color:var(--warning-text);font-size:13px;line-height:1.45}
.gw-empty-line svg{flex:none;width:16px;height:16px;margin-top:1px}
#gaw-locations-error{margin:-8px 0 16px}
.gw-search-field{max-width:520px}
.gw-search{position:relative}
.gw-search>svg{position:absolute;top:50%;left:12px;width:16px;height:16px;color:var(--muted);transform:translateY(-50%);pointer-events:none}
.gw-search .gw-input{padding-left:36px}
.gw-loc-status:empty{display:none}
.gw-loc-status[data-tone="error"]{color:var(--error-text)}
.gw-results{max-height:300px;margin:0;padding:4px;overflow:auto;overscroll-behavior:contain;border:1px solid var(--line);border-radius:10px;list-style:none}
.gw-result{display:flex;align-items:center;justify-content:space-between;gap:8px 12px;min-height:52px;padding:6px 6px 6px 10px;border-radius:8px}
.gw-result+.gw-result{border-top:1px solid var(--gw-rule);border-radius:0}
.gw-result-text{display:grid;gap:2px;min-width:0}
.gw-result-name{font-size:14px;font-weight:600;line-height:1.3;overflow-wrap:anywhere}
.gw-result-meta{overflow:hidden;color:var(--muted);font-size:12px;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}
.gw-result-actions{display:flex;flex:none;gap:4px}
.gw-result-added{display:inline-flex;flex:none;align-items:center;gap:4px;padding-right:6px;color:var(--muted);font-size:13px;font-weight:600;white-space:nowrap}
.gw-result-added svg{width:14px;height:14px}
.gw-mini{display:inline-flex;align-items:center;gap:4px;min-height:32px;padding:4px 10px 4px 8px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--text);font:inherit;font-size:13px;font-weight:600;white-space:nowrap;cursor:pointer;transition:background-color .15s,border-color .15s}
.gw-mini svg{width:14px;height:14px;color:var(--muted)}
@media(hover:hover){.gw-mini:hover{border-color:var(--gw-hover);background:var(--panel-2)}}
.gw-dates{max-width:560px;margin-top:12px}

/* ── Step 3: the keywords box beside what will be added, ideas, negatives ── */
.gw-keywords{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px 24px;align-items:start}
.gw-match{margin-top:10px}
.gw-match .v-control{max-width:280px}
.gw-kw-preview{min-width:0;padding:12px 8px 8px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}
.gw-kw-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:6px;padding:0 8px}
.gw-kw-head .gw-section-title{margin:0}
.gw-kw-count{color:var(--muted);font-size:12px;font-weight:400;font-variant-numeric:tabular-nums;white-space:nowrap}
.gw-kw-count[data-tone="error"]{color:var(--error-text);font-weight:600}
.gw-kw-list{display:grid;gap:2px;max-height:320px;margin:0;padding:0;overflow:auto;list-style:none}
.gw-kw{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2px 12px;min-height:32px;padding:5px 8px;border-radius:8px}
.gw-kw-text{min-width:0;overflow:hidden;font-size:14px;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}
.gw-kw-type{color:var(--muted);font-size:12px;font-weight:600;white-space:nowrap}
.gw-kw-problem{display:flex;grid-column:1 / -1;gap:6px;color:var(--error-text);font-size:12px;line-height:1.4}
.gw-kw-problem svg{flex:none;width:13px;height:13px;margin-top:2px}
.gw-kw[data-invalid="true"]{background:var(--error-bg)}
.gw-kw[data-invalid="true"] .gw-kw-text{color:var(--error-text)}
.gw-kw-list.is-inline{display:flex;flex-wrap:wrap;gap:6px;max-height:none;margin-top:4px}
.gw-kw-list.is-inline .gw-kw{grid-template-columns:auto auto;border:1px solid var(--line)}
.gw-kw-preview .gw-hint{padding:4px 8px 0}
.gw-empty{padding:6px 8px;color:var(--muted);font-size:13px;line-height:1.5}
.gw-quiet-note{display:flex;align-items:flex-start;gap:8px;flex-wrap:wrap}
.gw-quiet-note svg{flex:none;width:16px;height:16px;margin-top:2px;color:var(--dim)}
.gw-ideas-head{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:12px 24px}
.gw-ideas-head>div{min-width:0;flex:1 1 280px}
#gaw-ideas:not(:empty){margin-top:12px}
/* The ideas as a table: the column heads and every row share one grid; numbers right-aligned. */
.gw-idea-cols,.gw-idea{display:grid;grid-template-columns:16px minmax(0,1fr) 128px 104px;align-items:center;column-gap:12px}
.gw-idea-cols{padding:0 12px 6px;border-bottom:1px solid var(--gw-rule);color:var(--muted);font-size:12px;font-weight:600;line-height:1.3}
.gw-idea-cols span:nth-child(3),.gw-idea-searches{text-align:right}
.gw-idea-list{max-height:328px;margin:0;padding:4px 0 0;overflow:auto;overscroll-behavior:contain;list-style:none}
.gw-idea{width:100%;min-height:40px;padding:6px 12px;border:0;border-radius:8px;background:transparent;color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:background-color .15s}
.gw-idea-icon{display:grid;color:var(--muted)}
.gw-idea-icon svg{width:14px;height:14px}
.gw-idea-text{min-width:0;font-size:14px;line-height:1.35;overflow-wrap:anywhere}
.gw-idea-searches{font-size:14px;font-variant-numeric:tabular-nums}
.gw-idea-competition{color:var(--muted);font-size:13px}
.gw-idea[data-added]{color:var(--muted);cursor:default}
.gw-idea[data-added] .gw-idea-icon{color:var(--success-text)}
.gw-idea:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--focus)}
@media(hover:hover){.gw-idea:not([data-added]):hover{background:var(--panel-2)}}
.gw-button.is-busy svg{opacity:.4}
.gw-disclosure summary{display:flex;align-items:center;gap:8px;min-height:40px;border-radius:8px;list-style:none;cursor:pointer}
.gw-disclosure summary::-webkit-details-marker{display:none}
.gw-disclosure summary .gw-section-title{margin:0}
.gw-chevron{flex:none;width:16px;height:16px;color:var(--muted);transform:rotate(-90deg);transition:transform .18s}
.gw-disclosure[open] .gw-chevron{transform:none}
.gw-disclosure .gw-field{margin-top:8px;max-width:560px}

/* ── Step 4: the text on the left; the preview and the strength estimate stay in view on the right ── */
.gw-ad{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:32px;align-items:start}
.gw-ad-form{min-width:0}
.gw-ad-form>.gw-error{margin-top:16px}
.gw-ad-side{position:sticky;top:0;display:grid;gap:16px;min-width:0}
.gw-side-head{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:32px;margin-bottom:8px}
.gw-side-head .gw-section-title{margin:0}
.gw-paths-field{margin-top:16px}
.gw-paths{display:flex;align-items:center;gap:6px;min-width:0}
.gw-path-domain{flex:0 1 auto;min-width:0;max-width:40%;overflow:hidden;color:var(--muted);font-size:14px;text-overflow:ellipsis;white-space:nowrap}
.gw-paths .gw-input{flex:1 1 0;min-width:64px}
.gw-path-slash{flex:none;color:var(--muted)}
.gw-lines{display:grid;gap:8px}
.gw-line-row{display:flex;align-items:flex-start;gap:8px}
.gw-line-input{position:relative;flex:1 1 auto;min-width:0}
.gw-line-input .gw-input{padding-right:64px}
.gw-counter{position:absolute;top:10px;right:10px;color:var(--dim);font-size:12px;line-height:20px;font-variant-numeric:tabular-nums;pointer-events:none}
.gw-counter[data-over="true"]{color:var(--error-text);font-weight:600}
.gw-textarea.is-line{min-height:64px}
.gw-line-pin{flex:0 0 156px;min-width:0}
.gw-line-pin .v-control{width:100%;min-height:40px;padding:9px 10px;border-radius:8px}
.gw-line .gw-error{margin-top:6px}
.gw-lines+.gw-error{margin-top:8px}
.gw-add-line{display:inline-flex;align-items:center;gap:8px;min-height:36px;margin-top:10px;padding:6px 12px 6px 10px;border:1px dashed var(--line);border-radius:8px;background:transparent;color:var(--text);font:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:background-color .15s,border-color .15s}
.gw-add-line svg{width:14px;height:14px;color:var(--muted)}
.gw-add-count{color:var(--muted);font-weight:400;font-variant-numeric:tabular-nums}
@media(hover:hover){.gw-add-line:hover{border-color:var(--gw-hover);background:var(--panel-2)}}
.gw-disclose{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:6px 12px 6px 10px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--text);font:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:background-color .15s}
.gw-disclose svg{width:14px;height:14px;color:var(--muted)}
.gw-disclose[aria-expanded="true"]{background:var(--panel-2)}
@media(hover:hover){.gw-disclose:hover{background:var(--panel-2)}}
.gw-pins .gw-hint{margin-top:8px}
.gw-preview-box>.gw-hint{margin-top:8px;font-size:12px}
.gw-preview-card{display:grid;gap:4px;min-width:0;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:var(--panel);overflow-wrap:anywhere}
:root[data-theme="light"] .gw-preview-card{box-shadow:0 1px 3px rgba(24,24,24,.06)}
.gw-preview-top{display:flex;align-items:center;gap:8px;min-width:0;color:var(--muted);font-size:12px;line-height:1.4}
.gw-preview-badge{flex:none;font-weight:600;color:var(--text)}
.gw-preview-url{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gw-preview-headline{color:var(--text);font-size:16px;font-weight:600;line-height:1.35}
.gw-preview-text{color:var(--muted);font-size:13px;line-height:1.5}
.gw-preview-card .is-placeholder{color:var(--dim);font-weight:400}
.gw-strength{padding:14px 16px;border:1px solid var(--line);border-radius:12px}
.gw-estimate{color:var(--muted);font-size:12px;white-space:nowrap}
.gw-strength-level{display:flex;align-items:center;gap:12px;font-size:14px;font-weight:600}
.gw-meter{display:grid;grid-template-columns:repeat(4,24px);gap:4px}
.gw-meter span{height:6px;border-radius:3px;background:var(--panel-2)}
.gw-strength-level[data-level="POOR"] .gw-meter [data-on]{background:var(--error-text)}
.gw-strength-level[data-level="AVERAGE"] .gw-meter [data-on]{background:var(--warning-text)}
.gw-strength-level:is([data-level="GOOD"],[data-level="EXCELLENT"]) .gw-meter [data-on]{background:var(--success-text)}
.gw-tips{display:grid;gap:4px;margin:12px 0 0;padding:0 0 0 18px;font-size:13px;line-height:1.45}
.gw-strength>.gw-hint{margin-top:8px}
.gw-strength-note{font-size:12px}

/* ── Step 5: the summary of each step with Edit, the billing note, when to start ── */
.gw-review{border:1px solid var(--line);border-radius:12px}
.gw-review-section{padding:16px 20px}
.gw-review-section~.gw-review-section{border-top:1px solid var(--gw-rule)}
.gw-review-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}
.gw-review-head .gw-section-title{margin:0}
.gw-review dl{display:grid;gap:8px;margin:0}
.gw-review-row{display:grid;grid-template-columns:minmax(120px,200px) minmax(0,1fr);gap:2px 16px;font-size:14px;line-height:1.45}
.gw-review-row dt{color:var(--muted)}
.gw-review-row dd{min-width:0;margin:0;overflow-wrap:anywhere}
.gw-review-sub{display:block;color:var(--muted);font-size:13px}
.gw-review-keywords{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.gw-review-keyword{display:inline-flex;align-items:center;max-width:100%;min-height:24px;padding:2px 8px;border-radius:6px;background:var(--panel-2);font-size:13px;overflow-wrap:anywhere}
.gw-review-more{align-self:center;color:var(--muted);font-size:13px}
.gw-review-preview{max-width:520px;margin-top:12px}
.gw-review~.gw-callout{margin-top:16px}
.gw-step>.gw-callout[data-tone="error"]{margin-bottom:24px}
#gaw-launch{margin-top:24px}
.gw-launch{grid-template-columns:repeat(2,minmax(0,1fr))}
.gw-launch-budget{margin-top:12px;color:var(--text);font-size:14px;font-weight:600;font-variant-numeric:tabular-nums}

/* ── The refusal's summary above the step ── */
.gw-summary{margin-bottom:24px;padding:14px 16px;border:1px solid var(--error-border);border-left:3px solid var(--error-text);border-radius:10px;background:var(--error-bg);color:var(--text)}
.gw-summary:focus{outline:none}
.gw-summary:focus-visible{box-shadow:0 0 0 2px var(--focus)}
.gw-summary-title{display:flex;align-items:center;gap:8px;color:var(--error-text);font-size:14px;font-weight:600;line-height:1.4}
.gw-summary-title svg{flex:none;width:16px;height:16px}
.gw-summary-lead{margin-top:4px;font-size:13px;line-height:1.45}
.gw-summary ul{display:grid;gap:4px;margin:8px 0 0;padding:0 0 0 18px;font-size:13px;line-height:1.45}
.gw-summary .gw-link{font-weight:400}
.gw-summary-step{font-weight:600}
.gw-exempt{margin-top:12px;background:var(--panel)}

/* ── Foot: Back on the left, the one filled button on the right; the discard question takes its place ── */
.gw-foot{flex:none;padding:12px 16px 12px 24px;border-top:1px solid var(--gw-rule);background:var(--panel)}
.gw-foot-row{display:flex;align-items:center;gap:8px}
.gw-foot-step{margin:0 8px 0 auto;color:var(--muted);font-size:13px;font-variant-numeric:tabular-nums;white-space:nowrap}
.gw-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:8px 16px;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--text);font:inherit;font-size:14px;font-weight:600;white-space:nowrap;cursor:pointer;transition:background-color .15s,border-color .15s,transform .15s,opacity .15s;-webkit-tap-highlight-color:transparent}
.gw-button svg{flex:none;width:16px;height:16px}
@media(hover:hover){.gw-button:hover:not([aria-disabled="true"]){border-color:var(--gw-hover);background:var(--panel-2)}}
.gw-button:active:not([aria-disabled="true"]){transform:translateY(1px)}
.gw-button[aria-disabled="true"]{opacity:.6;cursor:default}
.gw-quiet{border-color:transparent;background:transparent;color:var(--muted)}
@media(hover:hover){.gw-quiet:hover:not([aria-disabled="true"]){border-color:transparent;color:var(--text)}}
.gw-primary{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}
@media(hover:hover){.gw-primary:hover:not([aria-disabled="true"]){border-color:var(--accent-2);background:var(--accent-2)}}
.gw-primary[aria-busy="true"]{cursor:progress}
.gw-danger{border-color:var(--error-border);color:var(--error-text)}
@media(hover:hover){.gw-danger:hover:not([aria-disabled="true"]){border-color:var(--error-text);background:var(--error-bg)}}
.gw-discard{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 16px}
.gw-discard-text{min-width:0;font-size:14px;line-height:1.45}
.gw-foot-actions{display:flex;gap:8px;margin-left:auto}

/* ── Narrower bodies: one column ── */
@container gw-body (max-width:760px){
  .gw-ad{grid-template-columns:minmax(0,1fr);gap:24px}
  .gw-ad-side{position:static;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));align-items:start}
}
@container gw-body (max-width:620px){
  .gw-pair,.gw-cards,.gw-keywords,.gw-launch{grid-template-columns:minmax(0,1fr)}
  .gw-budget{grid-template-columns:minmax(0,1fr)}
  .gw-budget-note{padding-top:0}
  .gw-review-row{grid-template-columns:minmax(0,1fr)}
  .gw-review-section{padding:14px 16px}
}
@container gw-body (max-width:440px){
  .gw-idea-cols,.gw-idea{grid-template-columns:16px minmax(0,1fr) 64px 64px;column-gap:8px}
  .gw-idea-cols{padding-inline:8px}
  .gw-idea{padding-inline:8px}
  .gw-result{flex-wrap:wrap}
  .gw-result-actions{width:100%}
  .gw-result-actions .gw-mini{flex:1 1 0;justify-content:center}
  .gw-line-row{flex-wrap:wrap}
  .gw-line-pin{flex:1 1 auto;order:3}
  .gw-path-domain{max-width:100%;flex-basis:100%}
  .gw-paths{flex-wrap:wrap}
}

/* ── Phones: the whole screen ── */
@media(max-width:640px){
  .gads-wizard{width:100%;height:100dvh;margin:0;border:0;border-radius:0}
  .gw-head{padding:12px 8px 0 16px}
  .gw-steps ol{gap:8px}
  .gw-steps-item{flex:0 0 auto}
  .gw-steps-item[data-status="current"]{flex:1 1 auto}
  .gw-steps-item:not([data-status="current"]) .gw-steps-label{display:none}
  .gw-body{padding:20px 16px 28px}
  .gw-foot{padding:10px 16px calc(10px + env(safe-area-inset-bottom))}
  .gw-foot-step{display:none}
  .gw-foot-row .gw-primary{flex:1 1 auto;margin-left:auto}
  .gw-discard .gw-foot-actions{width:100%}
  .gw-discard .gw-button{flex:1 1 0}
}
@media(pointer:coarse){
  .gw-input,.gads-wizard .gw-field .v-control,.gw-button{min-height:44px}
  .gw-chip-remove{width:32px;height:32px}
  .gw-mini{min-height:40px}
}
@media(prefers-reduced-motion:reduce){
  .gads-wizard *,.gads-wizard *::before,.gads-wizard *::after{transition:none!important}
}
@media(forced-colors:active){
  .gw-steps-item[data-status="current"] .gw-steps-button::after{background:Highlight}
  .gw-card:has(input:checked),.gw-choice:has(input:checked){outline:2px solid Highlight}
}
