:root {
  color-scheme: light;
  --ink: #0c1e41;
  --muted: #60708b;
  --line: #d8e3f0;
  --paper: #f6f9fd;
  --card: #ffffff;
  --forest: #0178fd;
  --mint: #ddf8f3;
  --lime: #02d4ba;
  --amber: #b96b0e;
  --red: #bd3f46;
  --navy: #0c1e41;
  --blue: #0178fd;
  --cyan: #02a9ef;
  --aqua: #02d4ba;
  --soft-blue: #edf5ff;
  --soft-aqua: #ebfbf8;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--paper); color: var(--ink); }
.sidebar { position: fixed; inset: 0 auto 0 0; width: 240px; padding: 28px 20px; background: var(--navy); color: white; display: flex; flex-direction: column; z-index: 2; box-shadow: 12px 0 34px #0c1e4114; }
.brand { display: flex; align-items: center; gap: 10px; color: white; text-decoration: none; font-weight: 760; letter-spacing: -.035em; }
.brand-symbol { flex: 0 0 42px; width: 42px; height: 34px; overflow: visible; }
.brand-word { display: flex; font-size: 19px; line-height: 1; }
.brand-word b { font-weight: 780; }.brand-word b:last-child { color: #4da1ff; }
nav { display: grid; gap: 7px; margin-top: 54px; }
nav a { color: #aebdd4; text-decoration: none; padding: 11px 13px; border-radius: 9px; font-size: 14px; }
nav a:hover, nav a.active { background: #173660; color: white; }
nav a.active { box-shadow: inset 3px 0 0 var(--aqua); }
.mode-card { margin-top: auto; padding: 14px; border: 1px solid #294569; border-radius: 12px; font-size: 13px; }
.mode-card small { display: block; color: #91a5c2; margin: 5px 0 0 15px; }
.dot { width: 8px; height: 8px; display: inline-block; background: var(--lime); border-radius: 50%; margin-right: 7px; }
main { margin-left: 240px; padding: 44px clamp(28px, 5vw, 76px) 90px; max-width: 1600px; }
.topbar { display: flex; justify-content: space-between; align-items: end; gap: 30px; margin-bottom: 32px; }
.ai-refresh-control { display: flex; align-items: center; justify-content: flex-end; gap: 10px; }
.ai-refresh-status { max-width: 300px; color: var(--muted); font-size: 10px; line-height: 1.35; text-align: right; }
.ai-refresh-status.updated, .ai-refresh-status.up_to_date { color: var(--forest); }
.ai-refresh-status.fallback, .ai-refresh-status.cooldown, .ai-refresh-status.limit_reached { color: #805016; }
h1 { font: 760 clamp(28px, 4vw, 45px)/1.05 Inter, ui-sans-serif, system-ui, sans-serif; margin: 6px 0 0; letter-spacing: -.045em; }
h2 { font: 740 27px/1.12 Inter, ui-sans-serif, system-ui, sans-serif; letter-spacing: -.035em; margin: 4px 0; }
h3 { margin: 0; font-size: 15px; }
p { line-height: 1.58; }
.eyebrow { color: var(--blue); font-size: 11px; font-weight: 780; letter-spacing: .14em; margin: 0; }
button { border: 0; border-radius: 10px; padding: 12px 17px; background: linear-gradient(135deg, var(--cyan), var(--blue)); color: white; font-weight: 720; cursor: pointer; box-shadow: 0 8px 18px #0178fd1c; }
button:disabled { opacity: .55; }
button.secondary { background: white; color: var(--blue); border: 1px solid #9bbce7; box-shadow: none; }
.connection-bar { margin-top: 0; background: white; border: 1px solid var(--line); border-radius: 14px; padding: 15px 17px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.connection-bar > div:first-child { display: flex; align-items: center; gap: 11px; }
.connection-bar small { display: block; color: var(--muted); margin-top: 3px; }
.connection-dot { width: 10px; height: 10px; border-radius: 50%; background: #d59a44; box-shadow: 0 0 0 5px #f8ecd9; }
.connection-dot.connected { background: var(--aqua); box-shadow: 0 0 0 5px #dff9f4; }
.connection-actions { display: flex; gap: 8px; }
.source-connection { margin-top: 10px; }
.source-connection[hidden] { display: none !important; }
.connection-actions select { min-width: 220px; border: 1px solid #9bbce7; border-radius: 10px; padding: 10px 12px; background: white; color: var(--ink); }
.loading { padding: 60px; text-align: center; color: var(--muted); }
.page-load-state { display: flex; align-items: center; gap: 11px; margin: 0 0 18px; padding: 13px 16px; border: 1px solid #bfd7f3; border-radius: 12px; background: #f0f7ff; color: var(--muted); font-size: 12px; }
.page-load-state i { width: 15px; height: 15px; flex: 0 0 15px; border: 2px solid #b5d3f3; border-top-color: var(--blue); border-radius: 50%; animation: page-load-spin .8s linear infinite; }
.page-load-state.error { align-items: flex-start; flex-direction: column; gap: 3px; border-color: #ecc6c1; background: #fff7f5; color: var(--red); }
.page-load-state.error strong { color: var(--ink); }
@keyframes page-load-spin { to { transform: rotate(360deg); } }
.hero-card { min-height: 285px; padding: clamp(28px, 5vw, 52px); background: linear-gradient(135deg, var(--navy) 0%, #103971 58%, #075eae 100%); color: white; border-radius: 22px; display: grid; grid-template-columns: 1.5fr 1fr; align-items: center; overflow: hidden; box-shadow: 0 22px 50px #0c1e4120; }
.hero-card h2 { font-size: clamp(29px, 4vw, 48px); max-width: 760px; margin: 18px 0 10px; }
.hero-card p { max-width: 790px; color: #d7e7fb; }
.period { font-size: 12px; color: #9fc7ef !important; }
.health-row { display: flex; align-items: center; gap: 10px; }
.health, .confidence { border-radius: 99px; padding: 7px 11px; font-size: 11px; font-weight: 750; letter-spacing: .04em; }
.health { background: var(--aqua); color: var(--navy); }
.health.needs_attention { background: #ffd9ad; color: #7b3e05; }
.health.insufficient_data { background: #f2d2cf; color: #7e2e29; }
.confidence { border: 1px solid #4f79aa; color: #d7e7fb; }
.signal { height: 165px; display: flex; align-items: end; justify-content: center; gap: 11px; transform: rotate(-4deg); opacity: .9; }
.signal span { width: 15%; background: linear-gradient(#72e5d3, #19aaf0); border-radius: 9px 9px 2px 2px; }
.signal span:nth-child(1) { height: 42%; }.signal span:nth-child(2) { height: 66%; }.signal span:nth-child(3) { height: 57%; }.signal span:nth-child(4) { height: 80%; }.signal span:nth-child(5) { height: 69%; }
.ai-daily-report { padding: 24px; border: 1px solid #b8d5f7; border-radius: 18px; background: linear-gradient(145deg, #ffffff 0%, #f0f7ff 100%); }
.ai-daily-report .section-heading { margin-bottom: 14px; }
.daily-change { padding: 18px 20px; border-radius: 13px; background: var(--navy); color: white; }
.daily-change > span, .daily-panel-label { color: var(--aqua); font-size: 9px; font-weight: 800; letter-spacing: .12em; }
.daily-situation-copy { margin-top: 7px; color: #d7e7fb; font-size: 14px; line-height: 1.5; }
.daily-situation-copy p { margin: 0; }
.daily-situation-copy p + p { margin-top: 8px; }
.daily-diagnoses { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 11px; margin-top: 12px; }
.daily-diagnosis { min-width: 0; padding: 17px; border: 1px solid var(--line); border-radius: 13px; background: white; }
.daily-diagnosis.action { border-color: #e8c7c2; background: #fff8f6; }
.daily-diagnosis.watch { border-color: #ead6b8; background: #fffaf1; }
.daily-diagnosis.stable { border-color: #a8e8dc; background: var(--soft-aqua); }
.daily-diagnosis.unavailable { background: #f4f7fb; }
.daily-diagnosis header { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.daily-diagnosis header span { color: var(--blue); font-size: 9px; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
.daily-diagnosis header em { padding: 4px 7px; border-radius: 99px; background: #e9eff7; color: var(--muted); font-size: 8px; font-style: normal; font-weight: 800; text-transform: uppercase; }
.daily-diagnosis.action header em { background: #f6dfdc; color: var(--red); }
.daily-diagnosis.watch header em { background: #f8e7cd; color: #805016; }
.daily-diagnosis.stable header em { background: var(--mint); color: var(--forest); }
.daily-diagnosis h3 { margin-top: 12px; font-size: 16px; }
.daily-diagnosis p { margin: 8px 0 12px; color: var(--muted); font-size: 12px; line-height: 1.5; }
.daily-diagnosis small { color: var(--muted); font-size: 9px; }
.daily-priorities { display: grid; grid-template-columns: 1fr; gap: 0; margin-top: 12px; padding: 0; border: 1px solid #b8d5f7; border-radius: 13px; background: white; overflow: hidden; }
.daily-meaning-panel, .daily-action-panel { min-width: 0; padding: 18px 20px; }
.daily-meaning-panel { border-bottom: 1px solid var(--line); }
.daily-meaning-panel > strong { display: block; margin-top: 6px; font-size: 15px; line-height: 1.35; }
.daily-meaning-panel > p { max-width: 1100px; margin: 7px 0 0; color: var(--muted); font-size: 12px; line-height: 1.55; }
.daily-context-role { display: block; margin-top: 9px; color: var(--muted); font-size: 8px; font-weight: 800; letter-spacing: .11em; }
.daily-context-clarifiers { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-top: 14px; }
.daily-context-item { min-width: 0; padding: 12px 14px; border: 1px solid var(--line); border-radius: 10px; background: #f8fbff; }
.daily-context-item[hidden] { display: none; }
.daily-context-item > span { color: var(--blue); font-size: 8px; font-weight: 800; letter-spacing: .1em; }
.daily-context-item > strong { display: block; margin-top: 5px; font-size: 11px; }
.daily-context-item > p { margin: 5px 0 0; color: var(--muted); font-size: 10px; line-height: 1.45; }
.daily-context-item.guardrail { border-color: #ead6b8; background: #fffaf1; }
.daily-context-item.merchant-rule { border-color: #a8e8dc; background: var(--soft-aqua); }
.daily-context-item.merchant-rule small { display: block; margin-top: 6px; color: var(--muted); font-size: 9px; }
.daily-action-panel .daily-panel-label { display: block; margin-bottom: 10px; }
#daily-intelligence { margin-top: 18px; }
.daily-priorities > small { padding: 0 20px 14px; color: var(--muted); font-size: 9px; }
#daily-priority-list { display: grid; gap: 8px; }
#daily-priority-list > div { display: grid; grid-template-columns: 27px 1fr; gap: 9px; align-items: start; }
#daily-priority-list > div > b { display: grid; place-items: center; height: 27px; border-radius: 50%; background: linear-gradient(135deg, var(--aqua), var(--blue)); color: white; font-size: 11px; }
#daily-priority-list span strong, #daily-priority-list span small { display: block; }
#daily-priority-list span strong { font-size: 11px; }
#daily-priority-list span small { margin-top: 3px; color: var(--muted); font-size: 9px; line-height: 1.4; }
.daily-secondary-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 11px; margin-top: 12px; }
.daily-secondary-grid > article { min-width: 0; padding: 18px; border: 1px solid var(--line); border-radius: 13px; background: white; }
.daily-panel-label { color: var(--blue); }
.daily-list > div { padding: 11px 0; border-bottom: 1px solid var(--line); }
.daily-list > div:last-child { border-bottom: 0; padding-bottom: 0; }
.daily-list strong { font-size: 12px; }
.daily-list p { margin: 4px 0 0; color: var(--muted); font-size: 11px; line-height: 1.45; }
.briefing-priorities { display: flex; align-items: center; gap: 9px; margin-top: 18px; padding: 10px; border: 1px solid var(--line); border-radius: 14px; background: white; }
.briefing-priorities > span { padding: 0 7px; color: var(--muted); font-size: 9px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.briefing-priorities button { display: flex; align-items: center; gap: 8px; min-width: 0; padding: 9px 12px; border-radius: 9px; background: var(--soft-blue); color: var(--ink); box-shadow: none; text-align: left; font-size: 10px; font-weight: 700; }
.briefing-priorities button b { display: grid; place-items: center; flex: 0 0 22px; height: 22px; border-radius: 50%; background: linear-gradient(135deg, var(--aqua), var(--blue)); color: white; font-size: 9px; }
.briefing-priorities p { margin: 0; color: var(--muted); font-size: 11px; }
.commercial-snapshot-context { margin: -3px 0 14px; padding: 0 2px; }
.commercial-snapshot-context p { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.55; }
.commercial-order-context { display: grid; gap: 4px; margin-top: 10px; padding: 11px 13px; border: 1px solid var(--line); border-radius: 10px; background: var(--card); font-size: 11px; line-height: 1.5; }
.commercial-order-context strong { color: var(--navy); }
.commercial-order-context span { color: var(--muted); }
.commercial-order-context.watch { border-color: #ead6b8; background: #fff8ed; }
.commercial-order-context.info { border-color: #bfe7df; background: #effbf8; }
.section-analysis { margin-bottom: 14px; padding: 18px 20px; border: 1px solid #b8d5f7; border-left: 4px solid var(--blue); border-radius: 13px; background: linear-gradient(135deg, #fff, var(--soft-blue)); }
.section-analysis.action { border-color: #e8c7c2; border-left-color: var(--red); background: #fff8f6; }
.section-analysis.watch { border-color: #ead6b8; border-left-color: #d79337; background: #fffaf1; }
.section-analysis.stable { border-color: #a8e8dc; border-left-color: var(--aqua); background: var(--soft-aqua); }
.section-analysis.unavailable { border-left-color: #9aa9bd; background: #f4f7fb; }
.section-analysis > div { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.section-analysis > div span { color: var(--blue); font-size: 9px; font-weight: 800; letter-spacing: .12em; }
.section-analysis > div em { padding: 5px 8px; border-radius: 99px; background: #e9eff7; color: var(--muted); font-size: 8px; font-style: normal; font-weight: 800; text-transform: uppercase; }
.section-analysis.action > div em { background: #f6dfdc; color: var(--red); }
.section-analysis.watch > div em { background: #f8e7cd; color: #805016; }
.section-analysis.stable > div em { background: var(--mint); color: #087d6b; }
.section-analysis h3 { margin-top: 10px; font-size: 18px; }
.section-analysis p { margin: 6px 0 9px; color: var(--muted); font-size: 12px; line-height: 1.55; }
.section-analysis small { color: var(--muted); font-size: 9px; }
.briefing-health-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.section-recommendations { margin-top: 13px; }
.section-recommendations .recommendation { grid-column: 1 / -1; }
.briefing-email-overview { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 11px; }
.briefing-email-overview > article { padding: 19px; border: 1px solid var(--line); border-radius: 13px; background: white; }
.briefing-email-overview span, .briefing-email-overview small { display: block; color: var(--muted); font-size: 10px; }
.briefing-email-overview strong { display: block; margin: 9px 0 6px; font-size: 23px; }
.briefing-empty { grid-column: 1 / -1; }
.briefing-evidence-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.briefing-evidence-grid > article { min-width: 0; padding: 20px; border: 1px solid var(--line); border-radius: 14px; background: white; }
.briefing-evidence-grid .data-quality-strip { grid-template-columns: 1fr; margin-top: 8px; }
.health.watch { background: #f8e7cd; color: #805016; }
section { margin-top: 52px; }
.section-heading { display: flex; justify-content: space-between; align-items: end; margin-bottom: 17px; }
.section-heading > span { color: var(--muted); font-size: 12px; }
.kpi-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(155px, 1fr)); gap: 12px; }
.kpi-card { background: var(--card); border: 1px solid var(--line); border-radius: 15px; padding: 20px; }
.kpi-card > span { color: var(--muted); font-size: 12px; }
.kpi-card strong { display: block; font: 740 27px/1.15 Inter, ui-sans-serif, system-ui, sans-serif; margin: 15px 0 8px; letter-spacing: -.035em; }
.kpi-card small { color: var(--muted); font-size: 10px; }
.kpi-card footer { border-top: 1px solid var(--line); margin-top: 13px; padding-top: 11px; color: var(--muted); font-size: 11px; }
.delta { font-size: 11px; padding: 4px 6px; border-radius: 5px; }
.delta.up { background: var(--mint); color: var(--forest); }.delta.down { background: #f6dfdc; color: var(--red); }
.delta.neutral { background: #e9eff7; color: var(--muted); }
.unavailable { color: var(--muted); font-size: 11px; }
.topbar-actions { display: flex; gap: 9px; }
.page-links { display: flex; justify-content: flex-end; gap: 10px; margin-top: 34px; padding-top: 20px; border-top: 1px solid var(--line); }
.dashboard-window-control { margin: 0 0 16px; }
.dashboard-period-copy { display: grid; gap: 4px; }
.dashboard-period-copy small { display: block; color: var(--muted); font-size: 11px; font-weight: 500; }
.dashboard-summary-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 11px; }
.dashboard-summary-card { margin: 0; padding: 18px; border: 1px solid var(--line); border-radius: 15px; background: var(--card); }
.dashboard-summary-card > span { color: var(--muted); font-size: 11px; }
.dashboard-summary-card strong { display: block; margin: 13px 0 10px; font: 740 24px/1.15 Inter, ui-sans-serif, system-ui, sans-serif; letter-spacing: -.03em; overflow-wrap: anywhere; }
.dashboard-summary-card small { color: var(--muted); font-size: 9px; }
.dashboard-feature-grid { display: grid; grid-template-columns: 1.55fr 1fr; gap: 14px; margin-top: 16px; }
.dashboard-panel { margin: 0; padding: 22px; border: 1px solid var(--line); border-radius: 16px; background: var(--card); }
.panel-heading { display: flex; justify-content: space-between; align-items: end; gap: 15px; margin-bottom: 18px; }
.panel-heading h2 { font-size: 22px; }
.panel-heading > span { color: var(--muted); font-size: 10px; }
.trend-chart { height: 220px; display: grid; grid-template-columns: repeat(14, minmax(14px, 1fr)); align-items: end; gap: 6px; padding: 14px 4px 0; border-bottom: 1px solid var(--line); background: linear-gradient(to top, #d8e3f055 1px, transparent 1px); background-size: 100% 25%; overflow-x: auto; }
.trend-day { height: 100%; min-width: 0; display: grid; grid-template-rows: 1fr auto; gap: 7px; align-items: end; }
.trend-bars { height: 100%; display: flex; align-items: end; justify-content: center; gap: 2px; }
.trend-bars i { width: 42%; min-height: 2px; border-radius: 4px 4px 1px 1px; }
.revenue-bar { background: linear-gradient(var(--cyan), var(--blue)); }.spend-bar { background: var(--aqua); }
.trend-day > span { color: var(--muted); font-size: 8px; text-align: center; white-space: nowrap; }
.chart-legend { display: flex; gap: 15px; margin-top: 14px; color: var(--muted); font-size: 10px; }
.chart-legend i { width: 8px; height: 8px; display: inline-block; margin-right: 5px; border-radius: 2px; }
.revenue-key { background: var(--blue); }.spend-key { background: var(--aqua); }
.channel-spend { display: grid; gap: 16px; }
.channel-row > div:first-child { display: flex; justify-content: space-between; gap: 10px; }
.channel-row strong { font-size: 12px; }.channel-row span { color: var(--muted); font-size: 10px; }.channel-row > b { display: block; margin: 6px 0; font: 740 21px Inter, ui-sans-serif, system-ui, sans-serif; letter-spacing: -.025em; }
.share-track { height: 6px; border-radius: 99px; background: #e6eef8; overflow: hidden; }.share-track i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--aqua), var(--blue)); }
.top-products-list { display: grid; gap: 5px; }
.top-product-row { display: grid; grid-template-columns: 24px minmax(0, 1fr) auto; align-items: center; gap: 10px; padding: 10px 0; border-bottom: 1px solid var(--line); }
.top-product-row:last-child { border-bottom: 0; }
.top-product-row > span { display: grid; place-items: center; width: 23px; height: 23px; border-radius: 50%; background: var(--soft-blue); color: var(--blue); font-size: 9px; font-weight: 800; }
.top-product-row strong, .top-product-row small { display: block; }
.top-product-row strong { overflow: hidden; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.top-product-row small, .dashboard-empty small { margin-top: 4px; color: var(--muted); font-size: 9px; }
.top-product-row > b { font-size: 12px; }
.dashboard-empty { padding: 24px 8px; text-align: center; }
.dashboard-empty strong, .dashboard-empty small { display: block; }
.dashboard-health-panel { margin-top: 16px; }
.metric-table-wrap { width: 100%; overflow-x: auto; border: 1px solid var(--line); border-radius: 15px; background: var(--card); }
.metric-table { width: 100%; min-width: 850px; border-collapse: collapse; font-variant-numeric: tabular-nums; }
.metric-table th, .metric-table td { padding: 13px 15px; border-bottom: 1px solid var(--line); text-align: right; font-size: 11px; white-space: nowrap; }
.metric-table thead th { background: var(--soft-blue); color: #415779; font-size: 9px; text-transform: uppercase; letter-spacing: .04em; }
.metric-table th:first-child { position: sticky; left: 0; z-index: 1; text-align: left; background: var(--card); }
.metric-table thead th:first-child { background: var(--soft-blue); }
.metric-table tbody tr:last-child th, .metric-table tbody tr:last-child td { border-bottom: 0; }
.metric-table tbody tr:hover { background: #f8fbff; }
.metric-table tfoot th, .metric-table tfoot td { border-top: 2px solid #b9cbe4; border-bottom: 0; background: #edf4ff; font-weight: 800; }
.metric-table tfoot th:first-child { background: #edf4ff; }
.metric-table.compact { min-width: 760px; }
.metric-table tr.sales-opening th, .metric-table tr.sales-opening td { padding-top: 17px; }
.metric-table tr.sales-deduction th { padding-left: 32px; color: var(--muted); }
.metric-table tr.sales-deduction td { color: var(--red); }
.metric-table tr.sales-total th, .metric-table tr.sales-total td { border-top: 2px solid #b9cbe4; background: #f7faff; font-weight: 800; }
.metric-table tr.sales-total th:first-child { background: #f7faff; }
.dashboard-metric-explanation { display: block; max-width: 310px; margin-top: 4px; color: var(--muted); font-size: 9px; font-weight: 500; line-height: 1.35; white-space: normal; }
.dashboard-detail-grid { grid-template-columns: 1.4fr 1fr; margin-top: 52px; }
.funnel-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; }
.funnel-grid > div { padding: 12px; border-radius: 11px; background: var(--soft-blue); }
.funnel-grid span, .funnel-grid small { display: block; color: var(--muted); font-size: 9px; }.funnel-grid strong { display: block; margin: 8px 0 4px; font: 740 20px Inter, ui-sans-serif, system-ui, sans-serif; letter-spacing: -.025em; }
.funnel-source-note { margin: 10px 2px 0; color: var(--muted); font-size: 10px; line-height: 1.45; }
.source-health-list { display: grid; gap: 3px; }
.source-health-list > div { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 9px; padding: 10px 0; border-bottom: 1px solid var(--line); }
.source-health-list > div:last-child { border-bottom: 0; }.source-health-list strong, .source-health-list small { display: block; }.source-health-list strong { font-size: 11px; }.source-health-list small { color: var(--muted); font-size: 9px; margin-top: 3px; }.source-health-list b { color: var(--muted); font-size: 9px; text-transform: uppercase; }
.source-state { width: 9px; height: 9px; border-radius: 50%; background: #aeb7c8; }.source-state.live { background: var(--aqua); box-shadow: 0 0 0 4px #dff9f4; }.source-state.stale { background: #d59a44; box-shadow: 0 0 0 4px #f8ecd9; }
.driver-card { background: var(--card); border: 1px solid var(--line); border-radius: 18px; padding: 24px; }
.driver-intro { position: relative; display: flex; justify-content: space-between; gap: 28px; }
.driver-intro p { color: var(--muted); font-size: 13px; max-width: 850px; margin-bottom: 22px; }
.driver-intro .status { position: static; flex: 0 1 auto; max-width: 100%; text-align: center; white-space: normal; overflow-wrap: anywhere; }
#profit-driver-form { display: grid; grid-template-columns: repeat(4, minmax(155px, 1fr)); gap: 14px; padding-top: 20px; border-top: 1px solid var(--line); }
#profit-driver-form label { color: var(--ink); font-size: 12px; font-weight: 700; }
#profit-driver-form input, #profit-driver-form select { display: block; width: 100%; margin-top: 7px; padding: 11px 12px; border: 1px solid #b8cae2; border-radius: 9px; background: white; color: var(--ink); font: inherit; font-weight: 500; }
#profit-driver-form label small { display: block; min-height: 28px; margin-top: 5px; color: var(--muted); font-size: 10px; font-weight: 500; }
.advertising-channels { grid-column: span 3; display: flex; flex-wrap: wrap; gap: 9px 18px; margin: 0; padding: 12px 14px; border: 1px solid #b8cae2; border-radius: 9px; }
.advertising-channels legend { padding: 0 6px; color: var(--ink); font-size: 12px; font-weight: 700; }
#profit-driver-form .advertising-channels label { display: flex; align-items: center; gap: 7px; }
#profit-driver-form .advertising-channels input { display: inline-block; width: auto; margin: 0; padding: 0; accent-color: var(--forest); }
.advertising-channels .no-paid-advertising { flex-basis: 100%; border-top: 1px solid var(--line); padding-top: 9px; }
.advertising-channels small { flex-basis: 100%; color: var(--muted); font-size: 10px; font-weight: 500; }
#profit-driver-form button { align-self: start; margin-top: 22px; }
.driver-footer { display: flex; justify-content: space-between; gap: 30px; border-top: 1px solid var(--line); margin-top: 20px; padding-top: 13px; }
.driver-footer p { margin: 0; color: var(--muted); font-size: 11px; }
.resolved-costs { margin-top: 22px; padding-top: 20px; border-top: 1px solid var(--line); }
.resolved-costs-heading { display: flex; justify-content: space-between; align-items: start; gap: 20px; margin-bottom: 13px; }
.resolved-costs-heading p { margin: 5px 0 0; color: var(--muted); font-size: 11px; }
.calculation-status { flex: 0 0 auto; border-radius: 99px; padding: 6px 9px; font-size: 9px; text-transform: uppercase; font-weight: 800; }
.calculation-status.complete { background: var(--mint); color: var(--forest); }
.calculation-status.pending { background: #f8ecd9; color: #805016; }
.resolved-cost-grid { display: grid; grid-template-columns: repeat(4, minmax(155px, 1fr)); gap: 10px; }
.resolved-cost-grid article { min-width: 0; padding: 14px; border: 1px solid var(--line); border-radius: 11px; background: #f8fbff; }
.resolved-cost-grid span, .resolved-cost-grid small { display: block; color: var(--muted); font-size: 10px; }
.resolved-cost-grid strong { display: block; margin: 8px 0 5px; font: 740 19px/1.2 Inter, ui-sans-serif, system-ui, sans-serif; letter-spacing: -.025em; overflow-wrap: anywhere; }
.resolved-cost-grid .contribution-result { background: var(--soft-aqua); border-color: #a8e8dc; }
.platform-cost-card { margin-top: 18px; }
.platform-cost-card .section-heading p { margin: 5px 0 0; color: var(--muted); font-size: 11px; }
.platform-cost-status-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; margin: 16px 0; }
.platform-cost-status-grid article { padding: 15px; border: 1px solid var(--line); border-radius: 11px; background: #f8fbff; }
.platform-cost-status-grid strong, .platform-cost-status-grid span, .platform-cost-status-grid small { display: block; }
.platform-cost-status-grid span { margin: 6px 0; color: var(--blue); font-size: 10px; font-weight: 800; }
.platform-cost-status-grid small { color: var(--muted); line-height: 1.45; }
.platform-cost-columns { display: grid; grid-template-columns: 1.15fr .85fr; gap: 16px; }
.platform-cost-form, .billing-import-panel { padding: 17px; border: 1px solid var(--line); border-radius: 12px; background: #f9fbfe; }
.platform-cost-form { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.platform-cost-form h3, .platform-cost-form button, .platform-cost-form .wide { grid-column: 1 / -1; }
.platform-cost-form label, .billing-import-panel label { display: grid; gap: 5px; color: var(--muted); font-size: 10px; }
.platform-cost-form .check-label { display: flex; align-items: center; gap: 8px; }
.platform-cost-form .check-label input { width: auto; }
.billing-import-panel h3 { margin-top: 0; }
.billing-import-panel p, .billing-import-panel li { color: var(--muted); font-size: 11px; line-height: 1.5; }
.billing-import-panel button, .billing-import-panel label { margin-top: 12px; }
.billing-ingestion-setup { margin-top: 14px; padding: 12px; border-radius: 9px; background: var(--soft-aqua); color: var(--muted); font-size: 10px; line-height: 1.45; }
.platform-cost-history { margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--line); }
.platform-cost-history-list { display: grid; gap: 8px; }
.platform-cost-history-list article { display: grid; grid-template-columns: minmax(180px,1fr) repeat(3,minmax(100px,.5fr)) auto; align-items: center; gap: 10px; padding: 12px; border: 1px solid var(--line); border-radius: 10px; }
.platform-cost-history-list small { color: var(--muted); }
.platform-cost-history-list .status { position: static; justify-self: start; max-width: 100%; white-space: normal; text-align: center; overflow-wrap: anywhere; }
@media (max-width: 1100px) { .platform-cost-columns, .platform-cost-status-grid { grid-template-columns: 1fr; }.platform-cost-history-list article { grid-template-columns: 1fr 1fr; } }
.profit-withheld-reason { margin: 11px 0 0; padding: 11px 13px; border-radius: 9px; background: #fff5e7; color: #805016; font-size: 11px; }
.two-column { display: grid; grid-template-columns: 1.4fr 1fr; gap: 30px; }
.stack { display: grid; gap: 11px; }
.finding, .warning, .attention-card, .recommendation, .integration { background: var(--card); border: 1px solid var(--line); border-radius: 14px; padding: 20px; }
.finding > div:first-child { display: flex; align-items: center; gap: 9px; }
.finding em { margin-left: auto; color: var(--muted); font-size: 10px; font-style: normal; text-transform: uppercase; }
.finding p, .warning p, .integration p { color: var(--muted); font-size: 13px; margin-bottom: 8px; }
.finding details { font-size: 12px; color: #126ea9; }
.finding li, .attention-card li { margin: 7px 0; color: var(--muted); }
.severity { width: 8px; height: 8px; border-radius: 50%; background: var(--cyan); }.severity.watch { background: #e3a34c; }.severity.critical { background: var(--red); }
.warning { display: flex; gap: 13px; }
.warning > span { flex: 0 0 27px; height: 27px; display: grid; place-items: center; border-radius: 50%; background: #f8e7cd; color: var(--amber); font-weight: 800; }
.warning.critical > span { background: #f6dfdc; color: var(--red); }
.attention-card { margin-top: 11px; background: var(--soft-blue); }
.attention-card ul { padding-left: 20px; margin-bottom: 0; font-size: 13px; }
.recommendations { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: start; gap: 13px; max-width: 100%; overflow: hidden; }
.recommendation { display: block; min-width: 0; width: 100%; overflow: hidden; }
.recommendation header { display: flex; align-items: center; gap: 9px; margin-bottom: 14px; }
.recommendation-priority { display: grid; place-items: center; flex: 0 0 31px; height: 31px; border-radius: 50%; background: linear-gradient(135deg, var(--aqua), var(--blue)); color: white; font: 740 14px Inter, ui-sans-serif, system-ui, sans-serif; }
.recommendation-area { border-radius: 99px; padding: 6px 9px; background: var(--soft-blue); color: var(--blue); font-size: 9px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.recommendation.email .recommendation-area { background: var(--soft-aqua); color: #08786a; }
.recommendation.profit-costs .recommendation-area { background: #fff3df; color: #8a5515; }
.recommendation-copy { min-width: 0; }
.recommendation h3, .recommendation p, .recommendation small, .recommendation details { max-width: 100%; overflow-wrap: anywhere; word-break: normal; }
.recommendation p { font-size: 13px; margin: 8px 0; }.recommendation small { color: var(--muted); line-height: 1.4; display: block; }
.recommendation details { margin-top: 13px; padding-top: 11px; border-top: 1px solid var(--line); color: var(--muted); font-size: 11px; }
.recommendation details summary { cursor: pointer; color: var(--blue); font-weight: 750; }
.recommendation details p { margin: 8px 0 0; font-size: 11px; line-height: 1.45; }
.recommendation-item-list { display: grid; gap: 8px; margin-top: 11px; }
.recommendation-item-list article { min-width: 0; padding: 10px; border: 1px solid var(--line); border-radius: 9px; background: #f8fbff; }
.recommendation-item-list strong, .recommendation-item-list span, .recommendation-item-list b { display: block; overflow-wrap: anywhere; }
.recommendation-item-list span { margin: 4px 0 7px; color: var(--muted); font-size: 9px; }
.recommendation-item-list b { color: var(--ink); font-size: 10px; }
.recommendation-item-list p { color: var(--muted); }
.recommendation-overflow { font-weight: 700; color: var(--blue); }
.recommendation-link { margin-top: 13px; padding: 9px 12px; font-size: 10px; }
.hierarchy-filter { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.hierarchy-filter button { padding: 7px 10px; border: 1px solid var(--line); border-radius: 8px; background: var(--card); color: var(--muted); font-size: 10px; font-weight: 750; }
.hierarchy-filter button.active { border-color: var(--blue); background: var(--soft-blue); color: var(--blue); }
.hierarchy-filter label { display: flex; align-items: center; gap: 7px; color: var(--muted); font-size: 10px; font-weight: 750; }
.hierarchy-filter select { min-width: 190px; padding: 7px 30px 7px 10px; border: 1px solid var(--blue); border-radius: 8px; background: var(--card); color: var(--ink); font: inherit; }
.advertising-action-notice { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 0 0 14px; padding: 14px 16px; border: 1px solid #e8c7c2; border-radius: 12px; background: #fff7f5; }
.advertising-action-notice strong, .advertising-action-notice span { display: block; }
.advertising-action-notice strong { color: #8b3832; font-size: 13px; }
.advertising-action-notice span { margin-top: 3px; color: var(--muted); font-size: 11px; line-height: 1.45; }
.advertising-action-notice button { flex: 0 0 auto; padding: 8px 12px; border: 1px solid #d99d95; border-radius: 8px; background: var(--card); color: #8b3832; font-weight: 750; }
.advertising-watch-notice { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 0 0 14px; padding: 14px 16px; border: 1px solid #e7c678; border-radius: 12px; background: #fffaf0; }
.advertising-watch-notice strong, .advertising-watch-notice span { display: block; }
.advertising-watch-notice strong { color: #815317; font-size: 13px; }
.advertising-watch-notice span { margin-top: 3px; color: var(--muted); font-size: 11px; line-height: 1.45; }
.advertising-watch-notice button { flex: 0 0 auto; padding: 8px 12px; border: 1px solid #d9b65f; border-radius: 8px; background: var(--card); color: #815317; font-weight: 750; }
.business-health-summary { display: grid; grid-template-columns: minmax(260px, .8fr) minmax(0, 2.2fr); gap: 13px; }
.health-diagnosis { min-width: 0; padding: 22px; border: 1px solid #a8e8dc; border-radius: 15px; background: var(--soft-aqua); }
.health-diagnosis.constraint { border-color: #ead6b8; background: #fff8ed; }
.health-diagnosis > span { color: var(--blue); font-size: 9px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.health-diagnosis h3 { margin: 8px 0; font: 750 22px/1.12 Inter, ui-sans-serif, system-ui, sans-serif; letter-spacing: -.025em; }
.health-diagnosis p { margin: 0 0 14px; color: var(--ink); font-size: 13px; line-height: 1.5; }
.health-diagnosis small { display: block; color: var(--muted); font-size: 10px; line-height: 1.45; }
.health-metric-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.health-metric { position: relative; min-width: 0; padding: 16px; border: 1px solid var(--line); border-radius: 13px; background: var(--card); }
.health-metric > span, .health-metric small { display: block; color: var(--muted); font-size: 10px; line-height: 1.35; }
.health-metric strong { display: block; margin: 9px 0 7px; font: 750 21px/1.1 Inter, ui-sans-serif, system-ui, sans-serif; letter-spacing: -.025em; }
.health-metric em { display: inline-block; margin-bottom: 8px; padding: 4px 7px; border-radius: 99px; background: #e9eff7; color: var(--muted); font-size: 8px; font-style: normal; font-weight: 800; text-transform: uppercase; }
.health-metric.constraint em { background: #f6dfdc; color: var(--red); }
.health-metric.watch em { background: #f8e7cd; color: #805016; }
.health-metric.strong em, .health-metric.within_range em { background: var(--mint); color: var(--forest); }
.integration-grid { display: grid; gap: 22px; }
.integration-catalog-group > header { display: flex; align-items: start; justify-content: space-between; gap: 16px; margin-bottom: 10px; }
.integration-catalog-group > header h3 { margin: 0; font-size: 15px; }
.integration-catalog-group > header p { margin: 4px 0 0; color: var(--muted); font-size: 10px; }
.integration-catalog-group > header > span { display: grid; place-items: center; min-width: 24px; height: 24px; border-radius: 99px; background: var(--soft-blue); color: var(--blue); font-size: 10px; font-weight: 800; }
.integration-card-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.platform-logo { display: grid; place-items: center; flex: 0 0 36px; width: 36px; height: 36px; }
.integration-logo { display: block; width: 100%; height: 100%; }
.connection-bar .platform-logo { flex-basis: 34px; width: 34px; height: 34px; }
.connection-readiness { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; margin-bottom: 12px; }
.connection-readiness article { padding: 18px; border: 1px solid #c9dcf5; border-radius: 14px; background: var(--soft-blue); }
.connection-readiness article > div { display: flex; align-items: center; gap: 10px; }
.connection-readiness p { margin: 12px 0 0; color: var(--muted); font-size: 11px; }
.connection-readiness strong { display: block; color: var(--ink); margin-bottom: 4px; }
.connection-readiness code { display: block; overflow-wrap: anywhere; color: #126ea9; font-size: 10px; }
.integration { position: relative; }.integration > div { display: flex; align-items: center; gap: 10px; padding-right: 90px; }
.source-icon { display: grid; place-items: center; width: 31px; height: 31px; border-radius: 8px; background: var(--soft-blue); color: var(--blue); font-size: 10px; font-weight: 800; }
.status { position: absolute; right: 15px; top: 17px; border-radius: 99px; padding: 5px 8px; font-size: 9px; text-transform: uppercase; font-weight: 800; background: #edece7; color: #6f6d62; }
.status.functional { background: var(--mint); color: #087d6b; }.status.functional_needs_credentials { background: #e5f2ff; color: #126ea9; }

.app-page { margin-top: 0; }
.report-tabs, .platform-tabs { display: inline-flex; gap: 5px; margin: 0 0 28px; padding: 5px; border: 1px solid var(--line); border-radius: 13px; background: var(--soft-blue); }
.report-tabs button, .platform-tabs button { min-width: 105px; padding: 10px 16px; border: 0; border-radius: 9px; background: transparent; color: var(--muted); box-shadow: none; }
.report-tabs button.active, .platform-tabs button.active { background: var(--card); color: var(--blue); box-shadow: 0 4px 12px #0c1e4112, inset 0 -2px 0 var(--aqua); }
.report-heading { position: relative; margin-bottom: 17px; padding-right: 220px; }
.report-heading h2 { margin: 5px 0 0; font: 750 30px/1.08 Inter, ui-sans-serif, system-ui, sans-serif; letter-spacing: -.04em; }
.report-heading > span { position: absolute; right: 0; bottom: 3px; color: var(--muted); font-size: 12px; }
.report-kpis { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.meta-overview { display: grid; grid-template-columns: repeat(5, minmax(118px, 1fr)); gap: 10px; margin-bottom: 12px; }
.meta-overview.platform-only { grid-template-columns: repeat(4, minmax(140px, 1fr)); }
.meta-overview article, .meta-overview > p, .meta-empty { margin: 0; padding: 16px; border: 1px solid var(--line); border-radius: 12px; background: var(--card); }
.meta-overview span, .meta-overview small { display: block; color: var(--muted); font-size: 10px; }
.meta-overview strong { display: block; margin-top: 7px; font: 740 21px/1.15 Inter, ui-sans-serif, system-ui, sans-serif; letter-spacing: -.03em; overflow-wrap: anywhere; }
.meta-overview > p { grid-column: 1 / -1; display: flex; align-items: center; color: var(--muted); font-size: 11px; line-height: 1.5; background: var(--soft-blue); }
.meta-overview > p.warning { color: #74520a; border-color: #e7c678; background: #fff7df; }
.meta-overview > p.critical { color: #8b2d25; border-color: #e3a59e; background: #fff0ee; }
.decision-threshold { display: block; margin-top: 14px; color: var(--muted); line-height: 1.45; }
.meta-table th:first-child { min-width: 210px; }
.meta-table th small, .meta-table td small { display: block; margin-top: 5px; color: var(--muted); font-size: 9px; font-weight: 500; line-height: 1.4; }
.meta-table td:nth-child(3) { min-width: 220px; }
.performance-status { display: inline-block; padding: 6px 8px; border-radius: 99px; font-size: 9px; font-weight: 800; text-transform: uppercase; white-space: nowrap; }
.performance-status.leading { background: #d9f8f1; color: #087d6b; }
.performance-status.supporting { background: #e2f5ff; color: #126ea9; }
.performance-status.monitoring { background: #fff0d8; color: #815317; }
.performance-status.inefficient { background: #f6dfdc; color: #8b3832; }
.performance-status.needs-action { background: #f6dfdc; color: #8b3832; box-shadow: inset 0 0 0 1px #e8aaa3; }
.performance-status.watch { background: #fff0d8; color: #815317; box-shadow: inset 0 0 0 1px #e7c678; }
.performance-status.delivery-off { background: #e9eef5; color: #52647e; }
.ad-row.delivery-off { background: #f8fafc; }
.ad-row.needs-action { box-shadow: inset 3px 0 0 #cf5f54; }
.ad-row.watch { box-shadow: inset 3px 0 0 #d3a23b; }
.ad-row.delivery-off > p { color: #52647e; }
.sending-identity { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(320px, .8fr); gap: 28px; align-items: center; margin: 0 0 18px; padding: 22px; border: 1px solid #efc77a; border-radius: 16px; background: #fff8e7; }
.sending-identity.configured { border-color: #9edfd5; background: #effbf8; }
.sending-identity h2 { margin: 4px 0 8px; }
.sending-identity p:not(.eyebrow) { margin: 0 0 5px; }
.sending-identity small { display: block; color: #5d6f8c; }
.sending-identity dl { display: grid; gap: 8px; margin: 0; }
.sending-identity dl div { display: grid; grid-template-columns: 72px 1fr; gap: 12px; }
.sending-identity dt { color: #6b7b95; }
.sending-identity dd { margin: 0; font-weight: 700; overflow-wrap: anywhere; }
.adset-role { display: inline-block; padding: 6px 8px; border: 1px solid var(--line); border-radius: 99px; background: #fff; color: var(--muted); font-size: 9px; font-weight: 800; text-transform: uppercase; white-space: nowrap; }
.adset-role.leader { border-color: #93ded2; color: #087d6b; }
.adset-role.historical-leader { border-color: #93ded2; background: #eefbf8; color: #087d6b; }
.adset-role.challenger { border-color: #9fc9f3; color: #126ea9; }
.adset-role.underperforming { border-color: #e3a59e; color: #8b3832; }
.meta-empty p { margin: 6px 0 0; color: var(--muted); font-size: 12px; }
.meta-empty button { margin-top: 14px; }
.meta-decision-summary { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.meta-decision-summary > *, .decision-card, .decision-card-heading > div, .decision-list > div { min-width: 0; }
.decision-card { margin: 0; padding: 20px; border: 1px solid var(--line); border-radius: 15px; background: var(--card); overflow: hidden; }
.decision-card.winner { border-color: #93ded2; background: linear-gradient(145deg, #ffffff, var(--soft-aqua)); }
.decision-card.attention { border-color: #ead2ce; }
.decision-card-heading, .ad-identity > div { display: flex; align-items: start; justify-content: space-between; gap: 15px; }
.ad-badges { display: inline-flex; flex: 0 0 auto; flex-wrap: wrap; justify-content: flex-end; gap: 5px; }
.decision-card-heading .performance-status { flex: 0 0 auto; }
.decision-card-heading span:first-child { color: var(--muted); font-size: 10px; text-transform: uppercase; letter-spacing: .08em; }
.decision-card h3 { max-width: 100%; margin: 5px 0 0; font-size: 17px; line-height: 1.3; overflow-wrap: anywhere; word-break: break-word; }
.decision-name { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 3; line-clamp: 3; }
.decision-card > p, .decision-card > small, .decision-card footer { color: var(--muted); font-size: 11px; line-height: 1.5; }
.decision-metrics { display: flex; flex-wrap: wrap; gap: 18px; margin: 15px 0; }
.decision-metrics span { color: var(--muted); font-size: 10px; }
.decision-metrics b { display: block; color: var(--ink); font-size: 14px; }
.decision-list { display: grid; gap: 9px; margin-top: 14px; }
.decision-list > div { padding-top: 9px; border-top: 1px solid var(--line); }
.decision-list strong, .decision-list span, .decision-list small { display: block; }
.decision-list strong { display: -webkit-box; max-width: 100%; overflow: hidden; font-size: 12px; line-height: 1.35; overflow-wrap: anywhere; word-break: break-word; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-clamp: 2; }
.decision-list span, .decision-list small { margin-top: 3px; color: var(--muted); font-size: 9px; line-height: 1.4; overflow-wrap: anywhere; word-break: break-word; }
.decision-card footer { margin-top: 14px; }
.section-action { display: flex; justify-content: flex-end; margin-top: 12px; }
.advertising-toolbar { display: flex; justify-content: space-between; align-items: center; gap: 20px; margin-bottom: 16px; padding: 15px 17px; border: 1px solid var(--line); border-radius: 13px; background: var(--card); }
.advertising-toolbar strong, .advertising-toolbar span { display: block; }
.advertising-toolbar span { margin-top: 3px; color: var(--muted); font-size: 10px; }
.window-tabs { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 5px; }
.window-tabs button { padding: 8px 12px; border: 1px solid var(--line); background: transparent; color: var(--muted); box-shadow: none; }
.window-tabs button.active { border-color: var(--blue); background: linear-gradient(135deg, var(--cyan), var(--blue)); color: white; }
.advertising-hierarchy { display: grid; gap: 11px; }
.email-overview { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 10px; margin-bottom: 28px; }
.email-overview > article { min-width: 0; padding: 17px; border: 1px solid var(--line); border-radius: 13px; background: var(--card); }
.email-overview article span, .email-overview article small { display: block; color: var(--muted); }
.email-overview article span { font-size: 11px; }
.email-overview article strong { display: block; margin-top: 10px; overflow-wrap: anywhere; font-family: var(--display); font-size: clamp(20px, 2vw, 29px); line-height: 1; }
.email-overview article small { margin-top: 6px; font-size: 10px; }
.email-attribution-note { grid-column: 1 / -1; margin: 0; padding: 14px 17px; border: 1px solid #b8cae2; border-radius: 11px; background: var(--soft-blue); color: var(--muted); font-size: 11px; }
.email-attribution-note.needs_attention { border-color: #efc9c2; background: #fff6f4; }
.email-analysis-section { margin: 26px 0 32px; }
.email-analysis-section .recommendations { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.email-current-reviews { display: grid; gap: 10px; margin: 28px 0 22px; }
#email-current-reviews { margin-bottom: 0; }
#email-review-library { margin-top: 28px; }
.campaign-learning-heading { margin-top: 14px; border-color: #b8cae2; background: var(--soft-blue); }
.campaign-learning-heading > b { color: var(--blue); }
.campaign-learning-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.campaign-learning { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 14px; padding: 17px; border: 1px solid var(--line); border-left: 4px solid var(--blue); border-radius: 12px; background: white; }
.campaign-learning span { color: var(--blue); font-size: 9px; font-weight: 800; letter-spacing: .08em; }
.campaign-learning h3 { margin: 7px 0 5px; font-size: 15px; }
.campaign-learning p { margin: 0; color: var(--muted); font-size: 10px; line-height: 1.45; }
.campaign-import-diagnostic { display: block; margin-top: 7px; color: #7c4a21; font-size: 9px; line-height: 1.4; }
.campaign-learning > div:last-child { display: flex; align-items: flex-end; flex-direction: column; gap: 8px; text-align: right; }
.campaign-learning b { color: #087d6b; font-size: 9px; text-transform: uppercase; }
.campaign-learning button, .email-message button { padding: 7px 10px; font-size: 9px; }
.campaign-learning i, .flow-sequence-badge { display: inline-flex; width: fit-content; margin-top: 7px; padding: 4px 7px; border-radius: 999px; background: var(--soft-blue); color: var(--navy); font-size: 9px; font-style: normal; font-weight: 800; }
.email-enriched-evidence { grid-column: 1 / -1; }
.email-enriched-evidence h4 { margin: 14px 0 5px; font-size: 11px; }
.email-enriched-evidence ul { display: grid; gap: 5px; padding: 0; list-style: none; }
.email-enriched-evidence li { display: flex; justify-content: space-between; gap: 14px; }
.email-enriched-evidence li span { overflow-wrap: anywhere; text-align: right; }
.email-creative-review { margin: 18px 0 26px; padding: 22px; border: 1px solid #9bc4ef; border-radius: 15px; background: white; box-shadow: 0 15px 45px rgba(12, 42, 84, .08); }
.email-creative-review-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.email-creative-review-header h2 { margin: 5px 0; font-size: 22px; }
.email-creative-review-header p:not(.eyebrow) { margin: 0; color: var(--muted); font-size: 11px; }
.email-preview-grid { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(280px, .55fr); gap: 18px; margin-top: 20px; }
.email-preview-grid article > strong { display: block; margin-bottom: 8px; font-size: 11px; }
.email-preview-frame { height: 520px; overflow: hidden; border: 1px solid var(--line); border-radius: 11px; background: #eef3f8; }
.email-preview-frame iframe { width: 100%; height: 100%; border: 0; background: white; }
.email-preview-frame.mobile { max-width: 390px; margin: 0 auto; }
.email-review-result { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 18px; }
.email-review-result section, .email-review-outcome, .email-review-limitation { padding: 16px; border: 1px solid var(--line); border-radius: 11px; background: #f9fbfe; }
.email-review-outcome, .email-review-limitation { grid-column: 1 / -1; }
.email-review-outcome span { color: var(--blue); font-size: 9px; font-weight: 800; text-transform: uppercase; }
.email-review-outcome h3, .email-review-result section h3 { margin: 7px 0; }
.email-review-result p, .email-review-result li { color: var(--muted); font-size: 11px; line-height: 1.5; }
.email-review-result ul { margin: 8px 0 0; padding-left: 18px; }
.email-review-result small { margin-left: 5px; color: #8799b1; }
.email-reusable-lesson { border-color: #8bdfd1 !important; background: var(--mint) !important; }
.email-review-loading { padding: 30px; color: var(--muted); text-align: center; }
.email-review-loading strong { display: block; color: var(--ink); }
.email-review-loading p { margin: 7px auto 0; max-width: 620px; font-size: 11px; line-height: 1.5; }
.email-message-metrics-heading { margin: 24px 0 10px; }
.email-review-message-metrics { margin-bottom: 0; }
.email-current-review-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 14px 17px; border: 1px solid #efc3bd; border-radius: 12px; background: #fff7f5; }
.email-current-review-heading strong, .email-current-review-heading span { display: block; }
.email-current-review-heading strong { color: var(--ink); font-size: 13px; }
.email-current-review-heading span { margin-top: 3px; color: var(--muted); font-size: 10px; }
.email-current-review-heading > b { flex: 0 0 auto; color: var(--red); font-size: 11px; }
.email-current-review { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 18px; padding: 18px; border: 1px solid #efc3bd; border-left: 4px solid var(--red); border-radius: 12px; background: white; }
.email-current-review.testing { border-color: #ebd3aa; border-left-color: #d79337; background: #fffaf1; }
.email-current-review.acknowledged { border-color: #cbd6e5; border-left-color: #8799b1; background: #f7f9fc; }
.email-current-review > div:first-child > span { color: var(--blue); font-size: 9px; font-weight: 800; letter-spacing: .1em; }
.email-current-review h3 { margin: 7px 0 5px; font-size: 16px; }
.email-current-review p { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.5; }
.email-current-review small { display: block; margin-top: 8px; color: var(--muted); font-size: 9px; }
.email-review-state { min-width: 220px; text-align: right; }
.email-review-state > b { display: block; margin-bottom: 12px; color: var(--red); font-size: 10px; text-transform: uppercase; }
.email-current-review.testing .email-review-state > b { color: #936019; }
.email-current-review.acknowledged .email-review-state > b { color: var(--muted); }
.email-review-state > div { display: flex; justify-content: flex-end; flex-wrap: wrap; gap: 7px; }
.email-review-state button { padding: 8px 11px; font-size: 10px; }
.email-intervention-form { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin: 14px 0 24px; padding: 22px; border: 1px solid #9bc4ef; border-radius: 14px; background: var(--soft-blue); }
.email-intervention-form:not([hidden]) { display: grid; }
.email-intervention-form h2 { margin: 5px 0; font-size: 20px; }
.email-intervention-form p { color: var(--muted); font-size: 11px; line-height: 1.5; }
.email-intervention-form label { display: grid; gap: 6px; color: var(--ink); font-size: 10px; font-weight: 700; }
.email-intervention-form label small { color: var(--muted); font-size: 9px; font-weight: 400; }
.email-intervention-form select, .email-intervention-form input, .email-intervention-form textarea { width: 100%; border: 1px solid #9bbce7; border-radius: 9px; padding: 10px 11px; background: white; color: var(--ink); font: inherit; }
.email-intervention-form textarea { min-height: 82px; resize: vertical; }
.email-intervention-form .wide { grid-column: 1 / -1; }
.email-intervention-form .form-actions { display: flex; gap: 8px; }
.email-test-disclosure { margin: 0; }
.briefing-email-review.needs_attention { border-color: #efc3bd; border-left: 4px solid var(--red); background: #fff7f5; }
.briefing-email-review.testing { border-color: #ebd3aa; border-left: 4px solid #d79337; background: #fffaf1; }
.email-clear.current-context { border-color: #ebd3aa; background: #fffaf1; }
.email-clear, .email-empty { padding: 22px; border: 1px solid var(--line); border-radius: 13px; background: var(--card); }
.email-clear p, .email-empty p { margin: 7px 0 0; color: var(--muted); }
.email-empty { grid-column: 1 / -1; }
.email-empty button { margin-top: 13px; }
.email-hierarchy { display: grid; gap: 11px; }
.email-benchmark-note { display: grid; gap: 3px; padding: 13px 16px; border: 1px solid #b8cae2; border-radius: 11px; background: var(--soft-blue); color: var(--muted); font-size: 10px; }
.email-benchmark-note strong { color: var(--ink); font-size: 11px; }
.email-group { overflow: hidden; border: 1px solid var(--line); border-radius: 13px; background: var(--card); }
.email-group > summary { display: grid; grid-template-columns: minmax(240px, 1fr) minmax(460px, 1.25fr); align-items: center; gap: 20px; padding: 17px 20px; cursor: pointer; list-style: none; }
.email-group > summary::-webkit-details-marker { display: none; }
.email-group > summary > div span, .email-group > summary > div small { display: block; color: var(--muted); }
.email-group > summary > div span { margin-bottom: 4px; color: var(--accent); font-size: 9px; font-weight: 800; letter-spacing: .11em; text-transform: uppercase; }
.email-group > summary > div strong { display: block; overflow-wrap: anywhere; }
.email-group > summary > div small { margin-top: 4px; font-size: 10px; }
.email-benchmark-signal { display: flex !important; align-items: flex-start; gap: 7px; max-width: 620px; line-height: 1.45; }
.email-benchmark-signal .status { position: static; flex: 0 0 auto; margin-top: 1px; }
.email-benchmark-signal .status.leading, .email-benchmark-signal .status.healthy { background: var(--mint); color: #087d6b; }
.email-benchmark-signal .status.watch { background: #fff0d6; color: #936019; }
.email-benchmark-signal .status.needs_attention { background: #f8ddda; color: var(--red); }
.email-benchmark-signal .status.insufficient_data { background: #edf1f7; color: var(--muted); }
.email-benchmark-signal .status.testing { background: #fff0d6; color: #936019; }
.email-benchmark-signal .status.acknowledged { background: #edf1f7; color: var(--muted); }
.email-group dl, .email-message dl { display: grid; margin: 0; }
.email-group > summary dl { grid-template-columns: repeat(4, 1fr); gap: 10px; }
.email-group dt, .email-message dt { color: var(--muted); font-size: 9px; }
.email-group dd, .email-message dd { margin: 2px 0 0; font-weight: 800; }
.email-group dl small { display: block; margin-top: 2px; color: var(--muted); font-size: 8px; }
.email-message-list { border-top: 1px solid var(--line); }
.email-message { display: grid; grid-template-columns: minmax(220px, 1fr) minmax(600px, 2fr); align-items: center; gap: 20px; padding: 16px 20px; }
.email-message + .email-message { border-top: 1px solid var(--line); }
.email-message > div strong, .email-message > div small { display: block; overflow-wrap: anywhere; }
.email-message > div small { margin-top: 4px; color: var(--muted); font-size: 10px; }
.email-message .flow-sequence-badge { margin: 0 0 7px; color: var(--navy); }
.email-message dl { grid-template-columns: repeat(6, 1fr); gap: 10px; }
.email-method { margin-top: 22px; }
.decision-method { margin: 18px 0 0; border: 1px solid #9bded5; border-radius: 15px; background: linear-gradient(135deg, #f6fffd, #eef5ff); }
.decision-method details > summary { position: relative; padding: 18px 54px 18px 18px; cursor: pointer; list-style: none; }
.decision-method details > summary::-webkit-details-marker { display: none; }
.decision-method details > summary::after { content: "+"; position: absolute; top: 50%; right: 20px; transform: translateY(-50%); color: var(--blue); font-size: 24px; font-weight: 500; }
.decision-method details[open] > summary::after { content: "−"; }
.decision-method summary > span { color: var(--blue); font-size: 11px; font-weight: 800; letter-spacing: .1em; }
.decision-method summary > strong { display: block; margin-top: 5px; color: var(--navy); font-size: 18px; }
.decision-method summary > small { display: block; margin-top: 5px; }
.decision-method-content { padding: 0 18px 18px; border-top: 1px solid rgba(1,120,253,.12); }
.decision-method p, .decision-method small { color: var(--muted); line-height: 1.55; }
.decision-method dl { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; margin: 15px 0; }
.decision-method dl div { min-width: 0; padding: 12px; border: 1px solid var(--line); border-radius: 11px; background: rgba(255,255,255,.85); }
.decision-method dt { color: var(--muted); font-size: 10px; text-transform: uppercase; letter-spacing: .06em; }
.decision-method dd { margin: 5px 0 0; color: var(--ink); font-size: 12px; font-weight: 700; line-height: 1.4; }
.ai-diagnostic { grid-column: 1 / -1; }
.ai-cadence-status { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 9px; margin: 14px 0; }
.ai-cadence-status div { padding: 11px 12px; border: 1px solid var(--line); border-radius: 10px; background: #f8fbff; }
.ai-cadence-status strong, .ai-cadence-status span { display: block; }
.ai-cadence-status strong { color: var(--navy); font-size: 13px; }
.ai-cadence-status span { margin-top: 4px; color: var(--muted); font-size: 12px; line-height: 1.4; }
.decision-signals { display: flex; flex-wrap: wrap; gap: 6px; margin: 8px 0 0; }
.decision-signals span { padding: 4px 8px; border-radius: 999px; background: var(--soft-aqua); color: var(--navy); font-size: 9px; font-weight: 700; }
.guardrails { margin-top: 8px; color: var(--muted); font-size: 10px; }
.guardrails summary { color: var(--blue); cursor: pointer; font-weight: 700; }
.guardrails ul { margin: 7px 0 0; padding-left: 18px; line-height: 1.5; }
.platform-summary-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 11px; }
.platform-summary-grid article { min-width: 0; padding: 17px; border: 1px solid var(--line); border-radius: 13px; background: var(--card); }
.platform-summary-grid article > div { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.platform-summary-grid article > div strong { font-size: 14px; }
.channel-state { flex: 0 0 auto; padding: 5px 8px; border-radius: 99px; font-size: 8px; font-weight: 800; text-transform: uppercase; }
.channel-state.connected { color: #087d6b; background: var(--mint); }
.channel-state.disconnected { color: #74520a; background: #fff0d8; }
.platform-summary-grid dl { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin: 16px 0 0; }
.platform-summary-grid dt { color: var(--muted); font-size: 8px; }
.platform-summary-grid dd { margin: 4px 0 0; font-size: 12px; font-weight: 750; }
.hierarchy-intro { display: flex; justify-content: space-between; align-items: end; padding: 4px 2px; color: var(--muted); font-size: 10px; }
.hierarchy-intro strong, .hierarchy-intro span { display: block; }
.hierarchy-intro strong { color: var(--ink); font: 740 21px/1.15 Inter, ui-sans-serif, system-ui, sans-serif; letter-spacing: -.03em; }
.campaign-group, .adset-group { border: 1px solid var(--line); border-radius: 14px; background: var(--card); overflow: clip; }
.campaign-group > summary, .adset-group > summary { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 20px; padding: 18px 20px; cursor: pointer; list-style-position: inside; }
.campaign-group > summary { background: var(--soft-blue); }
.campaign-group[open] > summary { border-bottom: 1px solid var(--line); }
.campaign-content { display: grid; gap: 10px; padding: 12px; }
.adset-group > summary { padding: 14px 16px; }
.adset-group[open] > summary { border-bottom: 1px solid var(--line); }
.hierarchy-name { min-width: 0; }
.hierarchy-name strong, .hierarchy-name span { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.hierarchy-name span { margin: 4px 0 0 18px; color: var(--muted); font-size: 9px; }
.hierarchy-name > div { display: flex; align-items: center; gap: 8px; min-width: 0; }
.hierarchy-name > div strong { min-width: 0; }
.hierarchy-name > div .performance-status { display: inline-block; flex: 0 0 auto; margin: 0; }
.hierarchy-name > span { margin-left: 18px; }
.hierarchy-metrics { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(76px, auto); gap: 15px; }
.hierarchy-metrics span { color: var(--muted); font-size: 9px; }
.hierarchy-metrics b { display: block; color: var(--ink); font-size: 12px; }
.ad-list { display: grid; }
.ad-row { margin: 0; padding: 16px; border: 0; border-bottom: 1px solid var(--line); border-radius: 0; background: #fff; }
.ad-row:last-child { border-bottom: 0; }
.ad-identity strong { font-size: 12px; overflow-wrap: anywhere; }
.ad-identity > span { display: block; margin-top: 4px; color: var(--forest); font-size: 10px; font-weight: 700; }
.selected-window-context { margin-top: 7px !important; padding: 8px 10px; border-left: 3px solid var(--blue); background: var(--soft-blue); }
.ad-row-metrics { display: grid; grid-template-columns: repeat(auto-fit, minmax(75px, 1fr)); gap: 10px; margin-top: 13px; }
.ad-row-metrics span { color: var(--muted); font-size: 9px; }
.ad-row-metrics b { display: block; color: var(--ink); font-size: 11px; }
.primary-result { padding-left: 8px; border-left: 2px solid var(--aqua); }
.ad-row p { margin: 11px 0 0; color: var(--muted); font-size: 10px; line-height: 1.5; }
.ad-interpretation { margin-top: 13px; padding: 12px 14px; border: 1px solid #cfe0f6; border-left: 4px solid var(--blue); border-radius: 11px; background: #f7faff; }
.ad-interpretation.ai-assisted { border-color: #9bded5; border-left-color: var(--aqua); background: #f3fffc; }
.ad-interpretation > div { display: flex; align-items: center; gap: 9px; flex-wrap: wrap; }
.ad-interpretation > div span { padding: 4px 7px; border-radius: 999px; background: #e4efff; color: var(--blue); font-size: 8px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }
.ad-interpretation.ai-assisted > div span { background: var(--mint); color: #087d6b; }
.ad-interpretation > div strong { color: var(--ink); font-size: 11px; }
.ad-interpretation p { margin-top: 7px; color: var(--muted); font-size: 10px; }
.ad-interpretation p b { color: var(--ink); }
.ad-interpretation .panel-heading { margin: 0 0 8px; color: var(--blue); font-size: 8px; font-weight: 900; letter-spacing: .11em; text-transform: uppercase; }
.data-quality-strip { display: grid; grid-template-columns: repeat(3, 1fr); gap: 11px; }
.quality-item { display: flex; gap: 11px; padding: 16px; border: 1px solid var(--line); border-radius: 12px; background: var(--card); }
.quality-item > span { display: grid; place-items: center; flex: 0 0 25px; height: 25px; border-radius: 50%; background: #f8e7cd; color: var(--amber); font-weight: 800; }
.quality-item.info > span { background: var(--mint); color: #087d6b; }
.quality-item small { display: block; margin-top: 5px; color: var(--muted); font-size: 10px; line-height: 1.45; }
.page-header { display: flex; justify-content: space-between; align-items: end; gap: 28px; margin-bottom: 30px; }
.page-header > div { max-width: 820px; }
.page-header h1 { margin-top: 7px; }
.page-header p:not(.eyebrow) { margin: 10px 0 0; color: var(--muted); }
.page-header > span { color: var(--muted); font-size: 12px; }
.setup-progress { flex: 0 0 auto; padding: 8px 11px; border-radius: 99px; background: var(--mint); color: var(--forest) !important; font-weight: 750; }
.setup-guide { display: grid; gap: 12px; }
.setup-step { margin-top: 0; display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 18px; padding: 22px; border: 1px solid var(--line); border-radius: 16px; background: var(--card); }
.setup-step.complete { background: var(--soft-aqua); border-color: #a8e8dc; }
.setup-step h2 { font: 700 17px/1.3 Inter, sans-serif; letter-spacing: -.015em; }
.setup-step p { margin: 5px 0 0; color: var(--muted); font-size: 13px; }
.step-number { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: #e9eff7; color: var(--blue); font-weight: 800; }
.setup-step.complete .step-number { background: var(--forest); color: white; }
.step-state { display: inline-block; margin-top: 8px; padding: 4px 7px; border-radius: 99px; background: #e9eff7; color: var(--muted); font-size: 9px; font-weight: 800; text-transform: uppercase; }
.setup-step.complete .step-state { background: var(--mint); color: var(--forest); }
.setup-finish { display: flex; justify-content: space-between; align-items: center; gap: 20px; margin-top: 18px; padding: 18px 20px; border-radius: 14px; background: var(--soft-blue); }
.setup-finish p { margin: 0; color: var(--muted); font-size: 13px; }
.support-controls { position: fixed; z-index: 20; right: 24px; bottom: max(22px, calc(env(safe-area-inset-bottom, 0px) + 14px)); display: flex; gap: 7px; padding: 7px; border: 1px solid var(--line); border-radius: 13px; background: rgba(255,255,255,.95); box-shadow: 0 12px 30px #0c1e4124; backdrop-filter: blur(10px); }
.support-controls button { padding: 9px 12px; font-size: 10px; }
.global-ask-launcher { position: fixed; z-index: 19; top: 18px; right: 24px; padding: 9px 13px; background: rgba(255,255,255,.97) !important; box-shadow: 0 8px 22px #0c1e4117 !important; font-size: 10px; }
.sr-only { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; white-space: nowrap !important; border: 0 !important; }
.ask-page { --ask-panel: #f8fbff; }
.ask-header { margin-bottom: 18px; }
.ask-context-bar { display: flex; flex-wrap: wrap; gap: 7px; margin-bottom: 12px; }
.ask-context-bar span { padding: 7px 10px; border: 1px solid #c7daef; border-radius: 999px; background: white; color: var(--muted); font-size: 9px; font-weight: 730; }
.ask-context-bar span:last-child { border-color: #9bded5; background: var(--soft-aqua); color: #087d6b; }
.ask-selected-context { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-top: 16px; padding: 11px 13px; border: 1px solid #9bded5; border-radius: 11px; background: var(--soft-aqua); }
.ask-selected-context[hidden] { display: none; }
.ask-selected-context div { display: grid; gap: 2px; min-width: 0; }
.ask-selected-context span { color: #087d6b; font-size: 9px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.ask-selected-context strong { overflow-wrap: anywhere; font-size: 11px; }
.ask-workspace { display: grid; grid-template-columns: minmax(170px, .42fr) minmax(0, 2.35fr); gap: 12px; margin-top: 12px; }
.ask-history, .ask-analysis { border: 1px solid var(--line); border-radius: 16px; background: white; }
.ask-history { min-width: 0; padding: 18px; }
.ask-history h2 { font-size: 18px; }
#ask-conversation-list { display: grid; gap: 7px; margin-top: 16px; }
#ask-conversation-list > p { color: var(--muted); font-size: 11px; }
#ask-conversation-list article { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 5px; border: 1px solid transparent; border-radius: 10px; background: var(--ask-panel); }
#ask-conversation-list article.active { border-color: #9bbce7; background: var(--soft-blue); }
#ask-conversation-list article > button:first-child { min-width: 0; padding: 10px; background: transparent; color: var(--ink); box-shadow: none; text-align: left; }
#ask-conversation-list article > button:first-child strong, #ask-conversation-list article > button:first-child small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
#ask-conversation-list article > button:first-child strong { font-size: 10px; }
#ask-conversation-list article > button:first-child small { margin-top: 4px; color: var(--muted); font-size: 8px; }
#ask-conversation-list article > .text-button { padding: 7px; color: var(--red); font-size: 8px; }
.ask-analysis { min-width: 0; padding: clamp(15px, 2.4vw, 22px); }
.ask-empty { padding: 26px 16px 16px; text-align: center; }
.ask-empty h2 { margin-top: 8px; font-size: 25px; }
.ask-empty p:not(.eyebrow) { max-width: 690px; margin: 9px auto 0; color: var(--muted); font-size: 12px; }
.ask-suggestions, .ask-followups { display: flex; flex-wrap: wrap; gap: 6px; margin: 9px 0 12px; }
.ask-suggestions button, .ask-followups button { padding: 8px 10px; font-size: 9px; }
.ask-messages { display: grid; gap: 9px; }
.ask-message { min-width: 0; overflow-wrap: anywhere; }
.ask-message.merchant { margin-left: clamp(20px, 10%, 80px); padding: 11px 14px; border-radius: 13px 13px 3px 13px; background: var(--navy); color: white; }
.ask-message.merchant span { color: #9fc7ef; font-size: 8px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.ask-message.merchant p { margin: 4px 0 0; font-size: 12px; }
.ask-message.metriccue { padding: 15px 16px; border: 1px solid #b8d5f7; border-left: 4px solid var(--blue); border-radius: 13px; background: linear-gradient(135deg, #fff, var(--soft-blue)); }
.ask-message.metriccue.insufficient { border-color: #ead6b8; border-left-color: #d79337; background: #fffaf1; }
.ask-message.metriccue > header, .ask-message.metriccue > footer { display: flex; align-items: center; justify-content: space-between; gap: 10px; flex-wrap: wrap; }
.ask-message.metriccue > header > span { color: var(--blue); font-size: 8px; font-weight: 850; letter-spacing: .12em; }
.ask-message.metriccue > header > div { display: flex; flex-wrap: wrap; gap: 5px; }
.ask-message.metriccue > header b { padding: 4px 7px; border-radius: 999px; background: #e4efff; color: var(--blue); font-size: 8px; text-transform: uppercase; }
.ask-message.metriccue h3 { margin: 11px 0 0; font-size: 16px; line-height: 1.38; }
.ask-message.metriccue section { margin-top: 10px; }
.ask-message.metriccue h4 { margin: 0; font-size: 10px; letter-spacing: .04em; }
.ask-message.metriccue section p, .ask-message.metriccue details li { color: var(--muted); font-size: 11px; line-height: 1.55; }
.ask-message.metriccue section p { margin: 5px 0 0; }
.ask-message.metriccue section li { margin-top: 5px; color: var(--muted); font-size: 11px; line-height: 1.5; }
.ask-message.metriccue section ol, .ask-message.metriccue section ul { margin: 7px 0 0; padding-left: 19px; }
.ask-finding { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: start; gap: 8px; border-bottom: 1px solid #e7eef7; }.ask-finding:last-child { border-bottom: 0; }.ask-finding button { padding: 5px; font-size: 8px; }
.ask-message.metriccue details { margin-top: 10px; }
.ask-message.metriccue summary, .ask-evidence-drawer summary, .ask-credit-panel summary { color: var(--blue); cursor: pointer; font-size: 10px; font-weight: 750; }
.ask-message.metriccue > footer { align-items: center; margin-top: 11px; padding-top: 10px; border-top: 1px solid var(--line); }

.ask-response { padding: 10px 12px; border-radius: 10px; background: rgba(2,212,186,.08); }
.ask-response h4 { color: var(--ink); }
.ask-response p { color: var(--ink) !important; font-weight: 650; }
.ask-reasoning { padding: 9px 11px; border: 1px solid #d8e5f4; border-radius: 10px; background: rgba(255,255,255,.62); }
.ask-reasoning > summary { list-style-position: inside; }
.ask-reasoning[open] > summary { margin-bottom: 4px; }
.ask-answer-links { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.ask-evidence-link { font-weight: 750; }
.ask-feedback { display: flex; align-items: center; gap: 5px; color: var(--muted); font-size: 9px; }
.ask-feedback button { padding: 4px; font-size: 9px; }
.ask-processing { display: flex; align-items: center; gap: 12px; margin: 12px 0; padding: 13px; border-radius: 11px; background: var(--soft-aqua); }
.ask-processing > span { width: 16px; height: 16px; border: 2px solid #9bded5; border-top-color: var(--blue); border-radius: 50%; animation: none; flex: 0 0 auto; }
.ask-processing.active > span { animation: page-load-spin .8s linear infinite; }
.ask-processing.complete > span { width: 18px; height: 18px; border: 0; border-radius: 0; display: grid; place-items: center; }
.ask-processing.complete > span::before { content: "✓"; font-size: 16px; font-weight: 800; line-height: 1; color: var(--blue); }
.ask-processing.error > span { animation: none; border-color: currentColor; border-top-color: currentColor; opacity: .55; }
.ask-processing strong, .ask-processing small { display: block; }
.ask-processing strong { font-size: 11px; }.ask-processing small { margin-top: 3px; color: var(--muted); font-size: 9px; }
.ask-navigator-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 10px; }
.ask-navigator-toolbar span, .ask-navigator-period { color: var(--muted); font-size: 10px; }
.ask-navigator-period { margin-bottom: 10px; }
.ask-record-search { display: grid; gap: 5px; margin: 10px 0; font-size: 10px; font-weight: 700; }
.ask-record-search input { width: 100%; }
.ask-record-filters { display: flex; flex-wrap: wrap; gap: 7px; margin-bottom: 12px; }
.ask-record-filters .active { box-shadow: inset 0 0 0 2px var(--blue); }
.ask-record-group { display: grid; gap: 7px; margin-top: 13px; }
.ask-record-group h3 { margin: 0; color: var(--muted); font-size: 10px; text-transform: uppercase; letter-spacing: .05em; }
.ask-navigator-empty { display: grid; gap: 7px; padding: 14px; border: 1px dashed var(--line); border-radius: 10px; }
.ask-navigator-empty small { color: var(--muted); }
.ask-form { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 8px; margin-top: 17px; padding: 8px; border: 1px solid #9bbce7; border-radius: 13px; background: white; box-shadow: 0 10px 24px #0c1e410d; }
.ask-form:focus-within { outline: 3px solid #02d4ba40; border-color: var(--blue); }
.ask-form textarea { width: 100%; max-height: 180px; min-height: 48px; padding: 9px; resize: vertical; border: 0; outline: 0; color: var(--ink); font: inherit; font-size: 12px; line-height: 1.5; }
.ask-form button { min-width: 80px; }
.ask-credit-rule { margin: 7px 3px 0; color: var(--muted); font-size: 9px; }
.ask-evidence-drawer { margin-top: 14px; padding: 17px; border: 1px solid var(--line); border-radius: 14px; background: white; }
#ask-evidence-content { display: grid; gap: 8px; margin-top: 13px; }
#ask-evidence-content article { padding: 14px; border: 1px solid var(--line); border-radius: 10px; background: var(--ask-panel); }
#ask-evidence-content article header { display: flex; justify-content: space-between; gap: 12px; }
#ask-evidence-content article header span { color: var(--blue); font-size: 9px; font-weight: 750; }
#ask-evidence-content article p { margin: 7px 0; color: var(--muted); font-size: 10px; }
#ask-evidence-content article small { color: var(--muted); font-size: 9px; }
.ask-credit-panel { display: grid; grid-template-columns: minmax(220px, 1.5fr) auto minmax(190px, 1fr); align-items: center; gap: 18px; margin-top: 14px; padding: 20px; border: 1px solid var(--line); border-radius: 14px; background: white; }
.ask-credit-panel h2 { font-size: 18px; }.ask-credit-panel p { margin: 5px 0 0; color: var(--muted); font-size: 10px; }
#ask-credit-balance { display: flex; gap: 8px; }
#ask-credit-balance article { min-width: 80px; padding: 11px; border-radius: 10px; background: var(--soft-aqua); text-align: center; }
#ask-credit-balance span, #ask-credit-balance strong { display: block; }
#ask-credit-balance span { color: var(--muted); font-size: 8px; text-transform: uppercase; }#ask-credit-balance strong { margin-top: 3px; font-size: 20px; }
#ask-credit-packs { display: flex; flex-wrap: wrap; gap: 6px; }#ask-credit-packs button { padding: 8px; font-size: 8px; }
#ask-credit-history { display: grid; gap: 6px; margin-top: 10px; }
#ask-credit-history > div { display: grid; grid-template-columns: 1fr auto auto; gap: 9px; color: var(--muted); font-size: 9px; }
button:focus-visible, a:focus-visible, summary:focus-visible, textarea:focus-visible, input:focus-visible, select:focus-visible { outline: 3px solid #02d4ba80; outline-offset: 2px; }
.help-guide { position: fixed; z-index: 50; inset: 0 0 0 auto; width: min(520px, 100vw); overflow-y: auto; padding: 26px; border-left: 1px solid var(--line); background: white; box-shadow: -18px 0 45px #0c1e4128; }
.help-guide header, .feedback-modal header { display: flex; align-items: start; justify-content: space-between; gap: 18px; }
.guide-header-actions { display: flex; flex-wrap: wrap; gap: 8px; justify-content: flex-end; }
.guide-index { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 7px; margin: 24px 0 18px; }
.guide-search { display: grid; gap: 6px; margin-top: 22px; color: var(--muted); font-size: 10px; font-weight: 700; }
.guide-search input { width: 100%; padding: 11px 12px; border: 1px solid #b8cae2; border-radius: 9px; color: var(--ink); font: inherit; }
.guide-index button { background: var(--soft-blue); color: var(--ink); box-shadow: none; text-align: left; }
.guide-content { margin-top: 0; padding: 20px; border: 1px solid var(--line); border-radius: 13px; background: #f8fbff; }
.guide-content p { color: var(--muted); }
.app-tour, .feedback-modal, .ask-context-picker { position: fixed; z-index: 70; inset: 0; display: grid; place-items: center; padding: 22px; background: #07162d99; }
.app-tour[hidden], .feedback-modal[hidden], .ask-context-picker[hidden] { display: none; }
.tour-card, .feedback-modal form { width: min(560px,100%); padding: 28px; border-radius: 18px; background: white; box-shadow: 0 28px 70px #07162d55; }
.tour-card p:not(.eyebrow), .feedback-modal p { color: var(--muted); }
.tour-actions { display: flex; justify-content: space-between; gap: 10px; margin-top: 22px; }
.tour-highlight { position: relative; z-index: 60; outline: 4px solid var(--aqua); outline-offset: 5px; }
.feedback-modal form { display: grid; gap: 14px; }
.feedback-modal label { display: grid; gap: 6px; color: var(--muted); font-size: 11px; }
.feedback-modal select, .feedback-modal textarea, .feedback-modal input, .brand-profile-panel input, .brand-profile-panel textarea { width: 100%; padding: 11px 12px; border: 1px solid #b8cae2; border-radius: 9px; background: white; color: var(--ink); font: inherit; }
.feedback-modal label small { color: var(--muted); font-size: 11px; }
.feedback-modal textarea { min-height: 150px; resize: vertical; }
.ask-context-picker > section { width: min(760px,100%); max-height: min(82vh, 760px); overflow: auto; padding: 28px; border-radius: 18px; background: white; box-shadow: 0 28px 70px #07162d55; }
.ask-context-picker header { display: flex; align-items: start; justify-content: space-between; gap: 18px; }
.ask-context-picker header h2 { margin: 5px 0 7px; }
.ask-context-picker header p:not(.eyebrow) { margin: 0; color: var(--muted); font-size: 12px; }
.ask-context-options { display: grid; gap: 9px; margin-top: 20px; }
.ask-context-option { display: grid; gap: 4px; width: 100%; padding: 14px 15px; border: 1px solid #b8d5f7; border-radius: 11px; background: #f7fbff; color: var(--ink); box-shadow: none; text-align: left; }
.ask-context-option:hover, .ask-context-option:focus-visible { border-color: var(--blue); background: var(--soft-blue); }
.ask-context-option strong { font-size: 12px; }
.ask-context-option small { color: var(--muted); font-size: 10px; font-weight: 500; line-height: 1.4; }
.brand-profile-panel { padding: 24px; border: 1px solid #a8e8dc; border-radius: 16px; background: linear-gradient(135deg,#fff,var(--soft-aqua)); }
.brand-profile-panel form { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 13px; margin-top: 20px; }
.brand-profile-panel label { display: grid; gap: 6px; color: var(--muted); font-size: 10px; }
.brand-profile-panel textarea { min-height: 100px; resize: vertical; }
.brand-profile-panel .wide { grid-column: 1 / -1; }
.brand-profile-panel label > small { color: var(--muted); font-size: 9px; line-height: 1.45; }
.business-rules-field textarea { min-height: 150px; }
#brand-profile-evidence { display: grid; gap: 8px; margin-top: 9px; }
#brand-profile-evidence article { display: grid; grid-template-columns: minmax(0,1fr) 130px auto; align-items: center; gap: 12px; padding: 12px; border: 1px solid var(--line); border-radius: 10px; background: white; }
#brand-profile-evidence p { margin: 4px 0; color: var(--ink); font-size: 11px; }
#brand-profile-evidence small { color: var(--muted); font-size: 9px; }
#brand-profile-evidence a { color: var(--blue); font-size: 10px; }
.connection-manager { display: grid; gap: 10px; }
.connection-manager .source-connection { margin-top: 0; }
.integration-catalog-heading { margin-top: 42px; }
.advertising-derived { grid-column: span 3; align-self: stretch; display: flex; flex-direction: column; justify-content: center; gap: 5px; padding: 12px 14px; border: 1px solid #b8cae2; border-radius: 9px; background: #f8fbff; }
.advertising-derived strong { font-size: 12px; }
.advertising-derived small { color: var(--muted); font-size: 10px; line-height: 1.45; }
.text-button { width: max-content; padding: 0; border: 0; border-radius: 0; background: transparent; color: var(--forest); font-size: 11px; text-decoration: underline; text-underline-offset: 3px; }
.inline-notice { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 12px; margin: 0 0 18px; padding: 13px 15px; border: 1px solid #ead6b8; border-radius: 12px; background: #fff8ed; color: #805016; font-size: 12px; }
.inline-notice[hidden] { display: none; }
.inline-notice strong { color: #6f430f; }
.inline-notice .text-button { color: inherit; }
.inline-notice.critical { border-color: #e8c3bf; background: #fff2f0; color: #8b3832; }
.settings-summary-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 13px; margin-bottom: 18px; }
.settings-summary-grid article { min-width: 0; margin-top: 0; padding: 18px 20px; border: 1px solid var(--line); border-radius: 14px; background: var(--card); }
.settings-summary-grid h2 { margin: 0 0 7px; font: 700 14px/1.3 Inter, sans-serif; letter-spacing: -.015em; }
.settings-summary-grid p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.5; }
.settings-tabs { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; margin: 0 0 18px; padding: 5px; border: 1px solid var(--line); border-radius: 14px; background: #edf3fb; }
.settings-tabs button { min-width: 0; min-height: 42px; padding: 9px 12px; border: 0; border-radius: 10px; background: transparent; color: #60718c; font-size: 12px; font-weight: 800; line-height: 1.25; box-shadow: none; }
.settings-tabs button:hover { background: rgba(255,255,255,.65); color: var(--navy); }
.settings-tabs button[aria-selected="true"] { background: #fff; color: var(--blue); box-shadow: 0 1px 3px rgba(8,35,76,.08); }
.settings-tabs button:focus-visible { outline: 2px solid var(--blue); outline-offset: 2px; }
.settings-tab-panels { min-width: 0; }
.settings-panel[hidden] { display: none; }
.settings-panel-heading { display: flex; align-items: start; justify-content: space-between; gap: 18px; margin: 4px 0 14px; }
.settings-panel-heading h2 { margin: 3px 0 6px; }
.settings-panel-heading p:not(.eyebrow) { max-width: 780px; margin: 0; color: var(--muted); font-size: 12px; line-height: 1.5; }
.settings-card { margin-top: 0; padding: 22px; border: 1px solid var(--line); border-radius: 15px; background: var(--card); }
.settings-card + .settings-card { margin-top: 13px; }
.settings-card h2 { font: 700 16px/1.3 Inter, sans-serif; letter-spacing: -.015em; }
.settings-card p { color: var(--muted); font-size: 13px; }
.settings-card > small { display: block; margin-top: 10px; color: var(--muted); }
.settings-diagnostic-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 13px; }
#settings-business-context-editor:empty { display: none; }
#settings-business-context-editor > .brand-profile-panel { margin-top: 14px; }
.nav-badge, .button-badge { display: inline-grid; place-items: center; min-width: 20px; height: 20px; padding: 0 6px; border-radius: 999px; background: #02d4ba; color: #08234c; font-size: 11px; font-weight: 800; }
.sidebar .nav-badge { margin-left: auto; }
.sidebar nav a { display: flex; align-items: center; gap: 8px; }
.notification-button { display: inline-flex; align-items: center; gap: 8px; }
.notification-centre { margin: -12px 0 28px; padding: 22px; border: 1px solid var(--line); border-radius: 16px; background: var(--card); box-shadow: 0 18px 40px rgba(11, 33, 72, .08); }
.notification-centre-heading { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 14px; }
.notification-centre-heading h2 { margin: 3px 0 0; }
.notification-list { display: grid; gap: 8px; }
.notification-item { display: grid; grid-template-columns: 12px 1fr auto; gap: 12px; align-items: start; padding: 14px; border: 1px solid var(--line); border-radius: 12px; background: #fff; cursor: pointer; }
.notification-item.unread { background: #f0f7ff; border-color: #b9d5f7; }
.notification-item .unread-dot { width: 9px; height: 9px; margin-top: 6px; border-radius: 50%; background: transparent; }
.notification-item.unread .unread-dot { background: #087ff5; }
.notification-item strong, .notification-item small { display: block; }
.notification-item p { margin: 4px 0 0; color: var(--muted); font-size: 13px; }
.notification-item small { color: var(--muted); white-space: nowrap; }
.notification-settings, .delivery-history { margin-top: 14px; padding: 24px; border: 1px solid var(--line); border-radius: 16px; background: var(--card); }
.notification-settings > p { margin-top: -8px; color: var(--muted); }
.recipient-form { display: grid; grid-template-columns: 1.1fr 1.5fr repeat(3, 1fr); gap: 12px; align-items: end; padding: 18px; border-radius: 13px; background: #f4f8fd; }
.recipient-form label { display: grid; gap: 6px; color: var(--muted); font-size: 12px; font-weight: 700; }
.recipient-form input, .recipient-form select { width: 100%; min-height: 42px; padding: 9px 10px; border: 1px solid var(--line); border-radius: 8px; background: #fff; color: var(--ink); }
.recipient-form .privacy-toggle { grid-column: 1 / span 3; display: flex; align-items: center; gap: 9px; }
.recipient-form .privacy-toggle input { width: 17px; min-height: 17px; }
.recipient-form-action { grid-column: 5; justify-self: end; }
.form-message { min-height: 20px; margin: 9px 0; color: var(--muted); font-size: 13px; }
.form-message.error { color: #b53b3b; }
.recipient-list { display: grid; gap: 10px; }
.recipient-card { padding: 17px; border: 1px solid var(--line); border-radius: 13px; }
.recipient-card-head { display: flex; justify-content: space-between; gap: 18px; margin-bottom: 14px; }
.recipient-card-head strong, .recipient-card-head small { display: block; }
.recipient-card-head small { margin-top: 3px; color: var(--muted); }
.recipient-state { align-self: start; padding: 5px 9px; border-radius: 999px; background: #fff1d7; color: #855a0b; font-size: 10px; font-weight: 800; text-transform: uppercase; }
.recipient-state.active { background: #dff8f2; color: #087965; }
.recipient-preferences { display: grid; grid-template-columns: repeat(3, minmax(140px, 1fr)); gap: 9px; align-items: end; }
.recipient-preferences label { display: grid; gap: 5px; color: var(--muted); font-size: 11px; font-weight: 700; }
.recipient-preferences select { min-height: 38px; padding: 7px; border: 1px solid var(--line); border-radius: 8px; background: white; }
.recipient-preferences button { min-height: 38px; }
.push-ready { display: flex; align-items: center; justify-content: space-between; margin-top: 16px; padding: 16px; border: 1px dashed #b9cbe3; border-radius: 13px; background: #f7faff; }
.push-ready p { margin: 3px 0 0; color: var(--muted); font-size: 13px; }
.push-ready span { padding: 6px 10px; border-radius: 999px; background: #e9eff8; color: var(--muted); font-size: 11px; font-weight: 800; }
.delivery-history table { width: 100%; border-collapse: collapse; font-size: 12px; }
.delivery-history th, .delivery-history td { padding: 11px 9px; border-bottom: 1px solid var(--line); text-align: left; }
.delivery-history th { color: var(--muted); font-size: 10px; text-transform: uppercase; }
.delivery-table { width: 100%; border-collapse: collapse; font-size: 13px; }
.delivery-table th, .delivery-table td { padding: 11px 8px; border-bottom: 1px solid var(--line); text-align: left; }
.delivery-table th { color: var(--muted); font-size: 11px; text-transform: uppercase; }
.delivery-status { font-weight: 800; text-transform: capitalize; }
.delivery-status.sent { color: #087965; }.delivery-status.failed { color: #b53b3b; }.delivery-status.skipped { color: #855a0b; }
.business-profile-card { grid-column: 1 / -1; }
.profile-control { display: flex; align-items: end; gap: 10px; margin-top: 16px; }
.profile-control label { flex: 1; color: var(--muted); font-size: 11px; font-weight: 700; }
.profile-control select { display: block; width: 100%; margin-top: 6px; }
.website-view { margin-top: 22px; }
.website-kpi-grid, .website-commercial-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 10px; }
.website-kpi-grid article, .website-commercial-grid article { min-width: 0; padding: 18px; border: 1px solid var(--line); border-radius: 14px; background: var(--card); }
.website-kpi-grid span, .website-kpi-grid small, .website-commercial-grid span, .website-commercial-grid small { display: block; color: var(--muted); }
.website-kpi-grid span, .website-commercial-grid span { font-size: 10px; }
.website-kpi-grid strong, .website-commercial-grid strong { display: block; margin: 11px 0 7px; font-size: 22px; line-height: 1.1; overflow-wrap: anywhere; }
.website-kpi-grid small, .website-commercial-grid small { font-size: 9px; line-height: 1.4; }
.website-bottleneck { margin-top: 14px; }
.website-bottleneck article { padding: 25px; border: 1px solid #a8e8dc; border-radius: 17px; background: linear-gradient(135deg, var(--soft-aqua), var(--soft-blue)); }
.website-bottleneck article.constraint { border-color: #efc9c2; background: linear-gradient(135deg, #fff8f6, var(--soft-blue)); }
.website-bottleneck article.insufficient_data { border-color: #ead6b8; background: #fff8ed; }
.website-bottleneck article > div { display: flex; justify-content: space-between; gap: 20px; }
.website-bottleneck article > div span { color: var(--blue); font-size: 9px; font-weight: 800; letter-spacing: .1em; }
.website-bottleneck article > div strong { font-size: 11px; text-transform: uppercase; }
.website-bottleneck h2 { margin-top: 15px; }
.website-bottleneck p { max-width: 900px; margin: 8px 0 0; color: var(--muted); font-size: 12px; }
.website-data-note { display: block; margin-top: 18px; border-color: #b8cae2; background: var(--soft-blue); color: var(--muted); }
.website-data-note strong { color: var(--ink); }
.source-attribution-notice { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 18px; margin: 16px 0 12px; padding: 15px 17px; border: 1px solid #b8cae2; border-radius: 12px; background: var(--soft-blue); }
.source-attribution-notice[hidden] { display: none; }
.source-attribution-notice.warning { border-color: #e4bc75; background: #fff8e9; }
.source-attribution-notice strong, .source-attribution-notice span, .source-attribution-notice small { display: block; }
.source-attribution-notice strong { color: var(--ink); font-size: 12px; }
.source-attribution-notice > div > span { margin-top: 4px; color: var(--muted); font-size: 10px; }
.source-attribution-notice > div > small { margin-top: 6px; color: #715124; font-size: 9px; line-height: 1.45; }
.source-attribution-mix { display: grid; grid-template-columns: repeat(3, auto); gap: 8px; }
.source-attribution-mix span { min-width: 90px; padding: 8px 10px; border: 1px solid rgba(40, 76, 127, .13); border-radius: 9px; background: rgba(255,255,255,.72); color: var(--muted); font-size: 8px; }
.source-attribution-mix b { display: block; margin-bottom: 2px; color: var(--ink); font-size: 13px; }
.website-breakdown-grid { display: grid; grid-template-columns: 1fr; gap: 42px; }
.website-breakdown-grid section { min-width: 0; margin-top: 0; }
.website-page-table { min-width: 1120px; }
.website-page-table th:first-child { max-width: 310px; white-space: normal; }
.website-page-table td:last-child { min-width: 245px; max-width: 300px; white-space: normal; text-align: left; }
.website-page-table small, .website-segment-table small { display: block; margin-top: 5px; color: var(--muted); font-size: 8px; line-height: 1.35; white-space: normal; }
.website-review-page-action { display: block; width: max-content; margin-top: 9px; padding: 7px 10px; font-size: 9px; }
.metric-table.website-segment-table { min-width: 0; table-layout: fixed; }
.website-segment-table th, .website-segment-table td { white-space: normal; vertical-align: top; }
.website-segment-table th:first-child { width: 15%; }
.website-segment-table th:nth-child(2) { width: 18%; }
.website-segment-table th:nth-child(3), .website-segment-table th:nth-child(4), .website-segment-table th:nth-child(5) { width: 11%; }
.website-segment-table th:last-child { width: 34%; }
.website-assessment-detail { max-width: 430px; line-height: 1.5 !important; }
.website-signal { display: inline-block !important; width: max-content; padding: 5px 7px; border-radius: 99px; background: var(--soft-blue); color: var(--blue) !important; font-size: 8px !important; font-weight: 800; text-transform: uppercase; }
.website-signal.leading, .website-signal.healthy { background: var(--soft-aqua); color: #047568 !important; }
.website-signal.watch { background: #fff0d8; color: #8a570f !important; }
.website-signal.needs_attention { background: #f8ddda; color: var(--red) !important; }
.website-signal.insufficient_data { background: #edf1f7; color: var(--muted) !important; }
.website-funnel { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.website-funnel article { position: relative; display: flex; gap: 12px; min-width: 0; padding: 19px; border: 1px solid var(--line); border-radius: 14px; background: var(--card); }
.website-funnel article:not(:last-child)::after { content: "→"; position: absolute; right: -10px; top: 50%; z-index: 1; transform: translateY(-50%); color: var(--blue); font-weight: 800; }
.funnel-step { display: grid; place-items: center; flex: 0 0 27px; height: 27px; border-radius: 50%; background: var(--soft-blue); color: var(--blue); font-size: 11px; font-weight: 800; }
.website-funnel small, .website-funnel p, .website-funnel em { display: block; color: var(--muted); font-size: 9px; font-style: normal; }
.website-funnel strong { display: block; margin-top: 7px; font-size: 23px; }
.website-funnel p { margin: 5px 0; }
.website-commercial-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.website-change-toolbar { display: flex; justify-content: space-between; align-items: end; gap: 25px; padding: 24px; border: 1px solid var(--line); border-radius: 16px; background: var(--card); }
.website-change-toolbar p:not(.eyebrow), .form-heading p { margin: 6px 0 0; color: var(--muted); font-size: 11px; }
.website-change-form { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 13px; margin-top: 13px; padding: 22px; border: 1px solid #9bded5; border-radius: 16px; background: var(--soft-aqua); }
.website-change-form .form-heading { grid-column: 1 / -1; display: flex; justify-content: space-between; align-items: start; padding-bottom: 13px; border-bottom: 1px solid #a8e8dc; }
.website-change-form label, .website-guardrail-form label, .inline-status { color: var(--ink); font-size: 10px; font-weight: 700; }
.website-change-form input, .website-change-form select, .website-change-form textarea, .website-guardrail-form input, .inline-status select { display: block; width: 100%; margin-top: 6px; padding: 10px 11px; border: 1px solid #b8cae2; border-radius: 9px; background: white; color: var(--ink); font: inherit; font-weight: 500; }
.website-change-form textarea { min-height: 78px; resize: vertical; }
.website-change-form label.wide { grid-column: span 2; }
.website-change-form label small { display: block; margin-top: 5px; color: var(--muted); font-weight: 500; }
.website-change-form > button { grid-column: 1 / -1; justify-self: end; }
.website-change-list { display: grid; gap: 12px; margin-top: 18px; }
.website-change-empty, .website-change-card { margin: 0; padding: 22px; border: 1px solid var(--line); border-radius: 15px; background: var(--card); }
.website-change-empty p, .website-change-card > p, .website-change-card details p { color: var(--muted); font-size: 11px; }
.website-change-card.likely_positive { border-color: #9bded5; }
.website-change-card.likely_negative { border-color: #efc9c2; }
.change-card-heading { display: flex; justify-content: space-between; align-items: start; gap: 20px; }
.change-card-heading > div { min-width: 0; }
.change-card-heading span:first-child, .change-card-heading small { display: block; color: var(--muted); font-size: 9px; }
.change-card-heading h3 { margin: 5px 0; overflow-wrap: anywhere; }
.change-outcome { flex: 0 0 auto; padding: 6px 9px; border-radius: 99px; background: var(--soft-blue); color: var(--blue) !important; font-weight: 800; text-transform: uppercase; }
.change-comparison { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 9px; margin: 16px 0; }
.change-comparison div { padding: 12px; border-radius: 10px; background: var(--soft-blue); }
.change-comparison span, .change-comparison strong { display: block; }
.change-comparison span { color: var(--muted); font-size: 9px; }
.change-comparison strong { margin-top: 5px; font-size: 15px; }
.website-change-card details summary { color: var(--blue); cursor: pointer; font-size: 10px; font-weight: 700; }
.website-review-intro { padding: 24px; border: 1px solid #9bc4ef; border-radius: 16px; background: linear-gradient(135deg, var(--soft-blue), white); }
.website-review-intro > p { max-width: 880px; color: var(--muted); font-size: 11px; line-height: 1.55; }
.website-review-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px; margin-top: 18px; }
.website-review-form label { color: var(--ink); font-size: 10px; font-weight: 700; }
.website-review-form input, .website-review-form select { display: block; width: 100%; margin-top: 6px; padding: 11px; border: 1px solid #b8cae2; border-radius: 9px; background: white; color: var(--ink); font: inherit; font-weight: 500; }
.website-review-form label.wide, .website-review-form > button { grid-column: 1 / -1; }
.website-review-form label small { display: block; margin-top: 5px; color: var(--muted); font-weight: 500; line-height: 1.45; }
.website-review-form > button { justify-self: end; }
.website-screenshot-fallback { grid-column: 1 / -1; padding: 17px; border: 1px solid #e5b45f; border-radius: 12px; background: #fffaf0; }
.website-screenshot-fallback h3 { margin: 5px 0; }
.website-screenshot-fallback > div > p:not(.eyebrow), .website-screenshot-privacy { margin: 0; color: var(--muted); font-size: 10px; line-height: 1.5; }
.website-screenshot-inputs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 13px; }
.website-screenshot-inputs input[type="file"] { padding: 9px; background: white; }
.website-screenshot-privacy { margin-top: 12px; }
.website-catalogue-status { grid-column: 1 / -1; }
.website-review-job-status { margin-top: 14px; padding: 16px 18px; border: 1px solid #c9dbf1; border-radius: 12px; background: #f7fbff; }
.website-review-job-status > div { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.website-review-job-status span { color: var(--muted); font-size: 10px; font-weight: 800; letter-spacing: .1em; }
.website-review-job-status strong { color: var(--navy); }
.website-review-job-status p { margin: 8px 0 0; color: var(--muted); font-size: 11px; }
.website-review-job-status.awaiting_screenshots { border-color: #e5b45f; background: #fffaf0; }
.website-review-job-status.complete { border-color: #8bd8c4; background: #f0fcf8; }
.website-review-job-status.failed { border-color: #e8a5a5; background: #fff5f5; }
.website-visual-gallery { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(240px, .7fr); gap: 16px; margin-top: 18px; }
.website-device-preview { min-width: 0; }
.website-device-preview > header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 8px; }
.website-device-preview > header strong { color: var(--navy); }
.website-device-preview > header span { color: var(--muted); font-size: 10px; }
.website-device-canvas { display: grid; gap: 5px; max-height: 720px; padding: 10px; overflow: auto; border: 1px solid #d7e2ef; border-radius: 12px; background: #edf2f7; }
.website-device-canvas.mobile { max-width: 390px; margin-inline: auto; }
.website-visual-tile { display: block; width: 100%; padding: 0; overflow: hidden; border: 0; border-radius: 4px; background: white; color: var(--navy); cursor: zoom-in; text-align: left; }
.website-visual-tile span { display: block; padding: 6px 8px; background: #0c2145; color: white; font-size: 9px; }
.website-visual-tile img { display: block; width: 100%; height: auto; min-height: 80px; background: linear-gradient(90deg,#eef3f8,#fff,#eef3f8); }
.website-visual-tile.expanded { position: fixed; inset: 18px; z-index: 100; width: auto; overflow: auto; border: 1px solid #c9d9eb; border-radius: 12px; box-shadow: 0 24px 80px #06152f66; cursor: zoom-out; }
.website-visual-tile.expanded img { max-width: 1440px; margin: auto; }
.website-visual-tile.unavailable { opacity: .55; cursor: default; }
.website-review-result { margin: 18px 0 34px; padding: 23px; border: 1px solid #9bded5; border-radius: 16px; background: white; box-shadow: 0 15px 45px rgba(12, 42, 84, .07); }
.website-review-heading, .website-review-history-card { display: flex; justify-content: space-between; align-items: flex-start; gap: 18px; }
.website-review-heading h2 { margin: 5px 0; font-size: 22px; }
.website-review-heading p:not(.eyebrow), .website-review-history-card small { display: block; margin: 0; color: var(--muted); font-size: 9px; overflow-wrap: anywhere; }
.website-review-heading > div:last-child { display: flex; align-items: flex-end; flex-direction: column; gap: 6px; }
.review-mode { color: var(--muted); font-size: 9px; }
.website-review-scope-note { display: flex; justify-content: space-between; gap: 20px; margin-top: 17px; padding: 14px 16px; border-radius: 11px; background: var(--soft-aqua); }
.website-review-scope-note strong { font-size: 11px; }
.website-review-scope-note span { max-width: 720px; color: var(--muted); font-size: 10px; line-height: 1.45; text-align: right; }
.website-review-outcome { margin-top: 14px; padding: 18px; border: 1px solid var(--line); border-radius: 12px; background: #f9fbfe; }
.website-review-outcome span, .website-review-recommendations article > span { color: var(--blue); font-size: 9px; font-weight: 800; letter-spacing: .08em; }
.website-review-outcome h3 { margin: 7px 0; }
.website-review-outcome p, .website-review-grid p { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.5; }
.website-review-performance { display: grid; grid-template-columns: repeat(4, 1fr); gap: 9px; margin-top: 14px; }
.website-review-performance article { padding: 13px; border-radius: 10px; background: var(--soft-blue); }
.website-review-performance span, .website-review-performance strong { display: block; }
.website-review-performance span { color: var(--muted); font-size: 9px; }
.website-review-performance strong { margin-top: 5px; font-size: 16px; }
.website-visual-evidence { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(330px, .75fr); gap: 14px; margin-top: 14px; padding: 17px; border: 1px solid #9adfd5; border-radius: 11px; background: #f0fffc; }
.website-visual-evidence h3 { margin: 3px 0 7px; }
.website-visual-evidence p { margin: 0; color: var(--muted); font-size: 10px; line-height: 1.5; }
.website-visual-viewports { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.website-visual-viewports article { padding: 11px; border-radius: 9px; background: white; }
.website-visual-viewports span, .website-visual-viewports strong, .website-visual-viewports small { display: block; }
.website-visual-viewports span { color: #087d6b; font-size: 8px; font-weight: 800; text-transform: uppercase; }
.website-visual-viewports strong { margin-top: 5px; font-size: 14px; }
.website-visual-viewports small { margin-top: 4px; color: var(--muted); font-size: 8px; }
.website-review-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 14px; }
.website-review-grid > section { padding: 17px; border: 1px solid var(--line); border-radius: 11px; background: #f9fbfe; }
.website-review-grid .section-heading, .website-review-result .section-heading { margin-bottom: 10px; }
.website-review-grid ul, .website-review-limitations ul { margin: 8px 0 0; padding-left: 18px; }
.website-review-grid li, .website-review-limitations li, .website-layout-order li { color: var(--muted); font-size: 10px; line-height: 1.5; }
.website-structure-facts { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; margin: 0; }
.website-structure-facts div { padding: 10px; border-radius: 9px; background: white; }
.website-structure-facts dt { color: var(--muted); font-size: 8px; }
.website-structure-facts dd { margin: 4px 0 0; font-weight: 800; }
.website-review-findings, .website-review-recommendations, .website-review-list { display: grid; gap: 10px; }
.website-review-findings { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.website-review-findings article, .website-review-recommendations article, .website-review-history-card { padding: 16px; border: 1px solid var(--line); border-radius: 11px; background: #f9fbfe; }
.website-review-findings article > div { display: flex; justify-content: space-between; gap: 8px; color: var(--muted); font-size: 8px; }
.finding-type { font-weight: 800; text-transform: uppercase; }
.finding-type.data { color: #087d6b; }.finding-type.visual { color: #087d6b; }.finding-type.page { color: var(--blue); }.finding-type.interpretation { color: #936019; }
.website-review-findings h4 { margin: 9px 0 6px; }
.website-review-findings p, .website-review-findings small, .website-review-recommendations p, .website-review-recommendations small { display: block; color: var(--muted); font-size: 10px; line-height: 1.5; }
.website-review-recommendations { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.website-review-recommendations article { display: flex; align-items: flex-start; flex-direction: column; }
.website-review-recommendations article.merchant-dismissed { background: #f3f6f8; opacity: .78; }
.website-review-recommendations h3 { margin: 8px 0 4px; }
.website-review-recommendations button { margin-top: auto; padding-top: 9px; }
.website-review-correction-note { margin-bottom: 16px; }
.website-verification-warning, .website-merchant-correction { display: grid; gap: 4px; width: 100%; margin: 12px 0; padding: 10px 12px; border-radius: 8px; font-size: 10px; line-height: 1.45; }
.website-verification-warning { color: #714b00; background: #fff5d8; border: 1px solid #efd28b; }
.website-merchant-correction { color: #24533a; background: #eaf7ef; border: 1px solid #b9ddc6; }
.website-merchant-correction.dismissed { color: #4d5964; background: #eef2f5; border-color: #d7dfe5; }
.website-correction-control { width: 100%; margin-top: 12px; border-top: 1px solid var(--line); padding-top: 10px; }
.website-correction-control summary { color: var(--blue); cursor: pointer; font-size: 9px; font-weight: 800; }
.website-correction-control form { display: grid; gap: 8px; margin-top: 10px; }
.website-correction-control label { display: grid; gap: 4px; color: var(--muted); font-size: 9px; font-weight: 700; }
.website-correction-control input, .website-correction-control select { width: 100%; }
.website-layout-order, .website-review-limitations { margin-top: 13px; padding: 13px 16px; border: 1px solid var(--line); border-radius: 10px; }
.website-layout-order summary, .website-review-limitations summary { color: var(--blue); cursor: pointer; font-size: 10px; font-weight: 800; }
.website-review-list { margin-top: 12px; }
.website-review-history-card > div:first-child { min-width: 0; }
.website-review-history-card span { color: var(--blue); font-size: 9px; font-weight: 800; text-transform: uppercase; }
.website-review-history-card h3 { margin: 6px 0 4px; overflow-wrap: anywhere; }
.website-review-history-card > div:last-child { display: flex; align-items: flex-end; flex-direction: column; gap: 8px; }
.inline-status { display: block; max-width: 240px; margin-top: 12px; }
.creative-coverage { margin: 12px 18px 0; padding: 15px 17px; border: 1px solid #cfe3dd; border-radius: 11px; background: #f4fbf8; }
.creative-coverage h4 { margin: 3px 0; }
.creative-coverage > div:first-child { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.creative-coverage > p { margin: 9px 0 0; color: var(--muted); font-size: 10px; line-height: 1.5; }
.ad-title-with-creative { display: flex !important; align-items: center !important; justify-content: flex-start !important; gap: 11px !important; min-width: 0; }
.ad-title-with-creative > div { min-width: 0; }
.ad-creative-thumbnail { position: relative; flex: 0 0 76px; width: 76px; height: 58px; overflow: hidden; padding: 0; border: 1px solid #bdd1e7; border-radius: 9px; background: #edf3f8; box-shadow: none; }
.ad-creative-thumbnail img { width: 100%; height: 100%; object-fit: cover; }
.ad-creative-thumbnail > span { color: var(--blue); font-size: 8px; font-weight: 800; }
.ad-creative-thumbnail i { position: absolute; right: 5px; bottom: 5px; display: grid; place-items: center; width: 19px; height: 19px; border-radius: 50%; background: rgba(5,28,59,.82); color: white; font-size: 8px; font-style: normal; }
.meta-creative-review { margin: 18px 0; padding: 22px; border: 1px solid #9bc4ef; border-radius: 15px; background: white; box-shadow: 0 15px 45px rgba(12,42,84,.08); }
.meta-creative-review-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.meta-creative-review-header h2 { margin: 5px 0; font-size: 22px; }
.meta-creative-review-header p:not(.eyebrow) { margin: 0; color: var(--muted); font-size: 11px; }
.meta-creative-detail-grid { display: grid; grid-template-columns: minmax(260px,.72fr) minmax(0,1.28fr); gap: 18px; margin-top: 20px; }
.meta-creative-preview { position: relative; display: grid; place-items: center; min-height: 310px; overflow: hidden; border: 1px solid var(--line); border-radius: 12px; background: #edf3f8; }
.meta-creative-preview img { width: 100%; height: 100%; max-height: 520px; object-fit: contain; background: #eef3f8; }
.meta-creative-preview.thumbnail-only { padding: 24px; }
.meta-creative-preview.thumbnail-only img { width: auto; height: auto; max-width: 240px; max-height: 240px; image-rendering: auto; }
.meta-creative-preview > span { position: absolute; left: 9px; bottom: 9px; padding: 5px 8px; border-radius: 99px; background: rgba(5,28,59,.84); color: white; font-size: 8px; font-weight: 800; letter-spacing: .06em; }
.meta-creative-preview.unavailable { align-content: center; gap: 6px; color: var(--muted); text-align: center; }
.meta-creative-preview.unavailable span { position: static; background: transparent; color: var(--muted); font-weight: 400; }
.meta-creative-copy, .meta-creative-performance, .meta-creative-review-start, .meta-learning-library { margin-top: 12px; padding: 16px; border: 1px solid var(--line); border-radius: 11px; background: #f9fbfe; }
.meta-creative-copy:first-child { margin-top: 0; }
.meta-creative-copy h3, .meta-creative-performance h3, .meta-creative-review-start h3, .meta-learning-library h3 { margin: 0 0 10px; }
.meta-creative-copy dl { display: grid; gap: 9px; margin: 0; }
.meta-creative-copy dt { color: var(--muted); font-size: 9px; text-transform: uppercase; }
.meta-creative-copy dd { margin: 3px 0 0; color: var(--ink); font-size: 11px; line-height: 1.5; white-space: pre-line; }
.meta-creative-performance > p, .meta-creative-review-start p { color: var(--muted); font-size: 11px; line-height: 1.5; }
.meta-creative-review-result { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; margin-top: 16px; }
.meta-creative-review-result > section, .meta-creative-review-outcome, .meta-creative-review-limitation { padding: 16px; border: 1px solid var(--line); border-radius: 11px; background: #f9fbfe; }
.meta-creative-review-outcome, .meta-creative-review-limitation, .meta-next-test, .meta-causality-note { grid-column: 1 / -1; }
.meta-creative-review-outcome > span, .meta-next-test > span { color: var(--blue); font-size: 9px; font-weight: 800; letter-spacing: .08em; }
.meta-creative-review-result h3 { margin: 7px 0; }
.meta-creative-review-result h4 { margin: 8px 0 4px; }
.meta-creative-review-result p, .meta-creative-review-result li, .meta-creative-review-result small { color: var(--muted); font-size: 11px; line-height: 1.5; }
.meta-creative-review-result ul { margin: 8px 0 0; padding-left: 18px; }
.meta-creative-findings { display: grid; gap: 9px; }
.meta-creative-findings article { padding-top: 9px; border-top: 1px solid var(--line); }
.meta-creative-findings article > span { color: var(--blue); font-size: 8px; font-weight: 800; text-transform: uppercase; }
.meta-next-test { border-color: #9bc4ef !important; background: var(--soft-blue) !important; }
.meta-reusable-learning { border-color: #8bdfd1 !important; background: var(--mint) !important; }
.meta-causality-note { border-color: #ebd3aa !important; background: #fffaf1 !important; }
.meta-learning-library article { display: grid; gap: 4px; padding: 9px 0; border-top: 1px solid var(--line); }
.meta-learning-library article span { color: var(--muted); font-size: 9px; }
.meta-creative-loading { padding: 35px; color: var(--muted); text-align: center; }
.creative-inventory { margin-top: 10px; color: var(--muted); font-size: 10px; }
.creative-inventory summary { color: var(--blue); cursor: pointer; font-weight: 750; }
.creative-inventory ul { display: grid; gap: 6px; margin: 8px 0 0; padding: 0; list-style: none; }
.creative-inventory li { display: flex; justify-content: space-between; gap: 12px; padding-top: 6px; border-top: 1px solid #dcebe6; }
.creative-inventory li strong { color: var(--ink); overflow-wrap: anywhere; }
.refresh-creative-data { margin-top: 10px; }
.meta-diagnosis { border-left: 3px solid #087d6b; }
.meta-diagnosis details { margin-top: 10px; }
.meta-diagnosis details summary { cursor: pointer; color: var(--blue); font-size: 10px; font-weight: 800; }
.meta-diagnosis button { margin-top: 10px; }
.constraint-unavailable { display: flex; align-items: center; gap: 10px; margin-top: 10px; padding: 9px 12px; border-left: 3px solid #8aa0b8; border-radius: 8px; background: #f3f6fa; color: var(--muted); font-size: 10px; }
.constraint-unavailable strong { color: var(--ink); font-size: 9px; letter-spacing: .04em; text-transform: uppercase; }
.google-health-grid, .google-diagnosis-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-bottom: 18px; }
.google-diagnosis { padding: 16px; border: 1px solid var(--line); border-left: 3px solid #087d6b; border-radius: 11px; background: var(--card); }
.google-diagnosis.attention { border-left-color: #d86a55; background: #fffaf8; }
.google-diagnosis > span, .google-diagnosis small { color: var(--muted); font-size: 9px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.google-diagnosis h3 { margin: 6px 0; font-size: 15px; }.google-diagnosis p { margin: 5px 0 10px; color: var(--muted); font-size: 11px; line-height: 1.55; }.google-diagnosis > strong { display: block; font-size: 11px; }.google-diagnosis details { margin-top: 10px; font-size: 10px; }
.google-intent { margin: 22px 0; }.google-intent-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }.google-intent-grid article { padding: 14px; border: 1px solid var(--line); border-radius: 11px; background: var(--card); }.google-intent-grid span, .google-intent-grid strong, .google-intent-grid small { display: block; }.google-intent-grid span { color: var(--blue); font-size: 9px; font-weight: 800; }.google-intent-grid strong { margin: 5px 0; }.google-intent-grid small { color: var(--muted); }
.google-campaign { margin-bottom: 12px; }.google-campaign > summary > div { display: flex; flex-direction: column; gap: 3px; }.google-campaign > summary > div:last-child { text-align: right; }.google-campaign-body { padding: 16px; }.google-campaign-metrics { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; margin-bottom: 14px; }.google-campaign-metrics article { padding: 12px; border-radius: 9px; background: var(--soft-blue); }.google-campaign-metrics span, .google-campaign-metrics strong, .google-campaign-metrics small { display: block; }.google-campaign-metrics span, .google-campaign-metrics small { color: var(--muted); font-size: 9px; }.google-landing-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 0; border-top: 1px solid var(--line); }.google-landing-row small { display: block; color: var(--muted); }.google-pmax { margin-top: 16px; padding: 16px; border: 1px solid #cfe3dd; border-radius: 11px; background: #f4fbf8; }.google-pmax-summary { display: flex; gap: 8px; flex-wrap: wrap; }.google-pmax-summary span { padding: 5px 8px; border-radius: 999px; background: white; font-size: 9px; }
.website-method { margin-top: 38px; }
.website-guardrail-form { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 11px; margin-top: 16px; }
.website-guardrail-form button { grid-column: 1 / -1; justify-self: end; }
@media (max-width: 1200px) { .dashboard-summary-grid { grid-template-columns: repeat(3, 1fr); }.funnel-grid { grid-template-columns: repeat(3, 1fr); }.report-kpis { grid-template-columns: repeat(3, 1fr); }.recommendations { grid-template-columns: repeat(2, minmax(0, 1fr)); }.meta-overview, .meta-overview.platform-only { grid-template-columns: repeat(2, 1fr); }.meta-overview > p { grid-column: 1 / -1; } }
@media (max-width: 1100px) { .kpi-grid { grid-template-columns: repeat(3, 1fr); }.integration-card-grid, .resolved-cost-grid { grid-template-columns: repeat(2, 1fr); }.hero-card { grid-template-columns: 1fr; }.signal { display: none; } #profit-driver-form { grid-template-columns: repeat(2, 1fr); }.advertising-derived { grid-column: span 2; }.settings-summary-grid, .settings-diagnostic-grid { grid-template-columns: 1fr; }.dashboard-feature-grid, .dashboard-detail-grid, .meta-decision-summary, .business-health-summary { grid-template-columns: 1fr; }.daily-diagnoses { grid-template-columns: repeat(2, minmax(0, 1fr)); }.decision-method dl { grid-template-columns: repeat(2, 1fr); }.email-overview { grid-template-columns: repeat(3, 1fr); }.email-group > summary, .email-message { grid-template-columns: 1fr; }.email-message dl { grid-template-columns: repeat(3, 1fr); }.recipient-form { grid-template-columns: repeat(2, 1fr); }.recipient-form .privacy-toggle, .recipient-form-action { grid-column: auto; }.recipient-preferences { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 760px) { .sidebar { position: static; width: auto; padding: 16px 18px 10px; display: block; }.sidebar nav { display: flex; gap: 5px; margin-top: 14px; padding-bottom: 5px; overflow-x: auto; }.sidebar nav a { flex: 0 0 auto; padding: 8px 10px; font-size: 12px; }.mode-card { display: none; } main { margin-left: 0; padding: 26px 18px 100px; }.topbar, .page-header { align-items: start; flex-direction: column; }.topbar-actions { width: 100%; flex-wrap: wrap; }.topbar-actions button { flex: 1; }.report-tabs { display: grid; grid-template-columns: repeat(3, 1fr); width: 100%; }.platform-tabs { display: grid; grid-template-columns: repeat(2, 1fr); width: 100%; }.report-tabs button, .platform-tabs button { min-width: 0; }.report-heading { padding-right: 0; }.report-heading > span { position: static; display: block; margin-top: 7px; }.connection-bar { align-items: start; flex-direction: column; }.connection-actions { width: 100%; flex-wrap: wrap; }.connection-actions button, .connection-actions select { flex: 1; }.hero-card { padding: 27px 22px; }.ai-daily-report { padding: 17px; }.kpi-grid, .two-column, .recommendations, .integration-card-grid, .connection-readiness, .resolved-cost-grid, #profit-driver-form, .settings-summary-grid, .settings-diagnostic-grid, .dashboard-summary-grid, .meta-overview, .meta-decision-summary, .data-quality-strip, .platform-summary-grid, .health-metric-grid, .daily-diagnoses, .daily-secondary-grid, .daily-priorities, .briefing-email-overview, .briefing-evidence-grid, .brand-profile-panel form { grid-template-columns: 1fr; }.brand-profile-panel .wide { grid-column: auto; }.daily-priorities > small { grid-column: auto; } .daily-context-clarifiers { grid-template-columns: 1fr; }.meta-overview > p { grid-column: auto; }.funnel-grid { grid-template-columns: repeat(2, 1fr); }.advertising-derived { grid-column: auto; }.driver-intro { padding-right: 0; padding-top: 36px; }.driver-footer, .resolved-costs-heading, .advertising-toolbar, .profile-control { align-items: stretch; flex-direction: column; gap: 8px; }.briefing-priorities { align-items: stretch; flex-direction: column; }.briefing-priorities button { width: 100%; }.window-tabs { display: grid; grid-template-columns: repeat(3, 1fr); width: 100%; }.window-tabs button { min-width: 0; }.campaign-campaign-group > summary, .adset-group > summary { grid-template-columns: 1fr; gap: 10px; }.hierarchy-metrics { grid-template-columns: repeat(3, 1fr); gap: 8px; padding-left: 18px; }.ad-row-metrics { grid-template-columns: repeat(3, 1fr); }.section-heading > span { display: none; }.setup-step { grid-template-columns: auto 1fr; }.setup-step button { grid-column: 1 / -1; }.setup-finish, .inline-notice, .source-attribution-notice { align-items: start; grid-template-columns: 1fr; flex-direction: column; }.source-attribution-mix { width: 100%; grid-template-columns: repeat(3, 1fr); }.trend-day:nth-child(even) > span { visibility: hidden; }.page-links { justify-content: stretch; flex-direction: column; }.page-links button { width: 100%; }.decision-method dl { grid-template-columns: 1fr; }.support-controls { right: 10px; bottom: 10px; left: 10px; justify-content: center; }.support-controls button { flex: 1; }.guide-index, #brand-profile-evidence article { grid-template-columns: 1fr; } }
@media (max-width: 760px) { .ask-workspace { grid-template-columns: minmax(0, 1fr); }.ask-history { max-height: 210px; overflow-y: auto; }.ask-credit-panel { grid-template-columns: 1fr; align-items: start; }.ask-form { grid-template-columns: 1fr; }.ask-form button { width: 100%; }.ask-message.merchant { margin-left: 20px; }.ask-context-bar span { max-width: 100%; overflow-wrap: anywhere; }.ask-message.metriccue > header, .ask-message.metriccue > footer { align-items: flex-start; flex-direction: column; } }
@media (max-width: 760px) { .email-analysis-section .recommendations { grid-template-columns: minmax(0, 1fr); overflow: visible; }.email-analysis-section .recommendation, .email-analysis-section .email-clear { min-width: 0; width: 100%; overflow-wrap: anywhere; }.driver-intro { padding-top: 0; }.dashboard-window-control { align-items: stretch; flex-direction: column; }.dashboard-period-copy { width: 100%; } }
@media (max-width: 760px) { .ai-cadence-status { grid-template-columns: 1fr; }.advertising-action-notice, .advertising-watch-notice { align-items: stretch; flex-direction: column; }.advertising-action-notice button, .advertising-watch-notice button { width: 100%; } }
@media (max-width: 1200px) { .website-kpi-grid { grid-template-columns: repeat(3, 1fr); }.website-guardrail-form { grid-template-columns: repeat(2, 1fr); }.website-breakdown-grid { grid-template-columns: 1fr; } }
@media (max-width: 900px) { .website-funnel, .website-commercial-grid { grid-template-columns: repeat(2, 1fr); }.website-funnel article:nth-child(2)::after { display: none; }.website-change-form { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 900px) { .website-review-findings, .website-review-recommendations { grid-template-columns: 1fr; } }
@media (max-width: 760px) { .website-kpi-grid, .website-funnel, .website-commercial-grid, .change-comparison, .website-change-form, .website-guardrail-form, .website-review-form, .website-review-grid, .website-review-performance, .website-screenshot-inputs { grid-template-columns: 1fr; }.website-funnel article::after { display: none; }.website-change-toolbar, .website-review-heading, .website-review-history-card, .website-review-scope-note { align-items: stretch; flex-direction: column; }.website-change-toolbar button { width: 100%; }.website-change-form label.wide, .website-review-form label.wide, .website-review-form > button, .website-screenshot-fallback { grid-column: auto; }.website-change-form > button, .website-change-form .form-heading, .website-guardrail-form button { grid-column: auto; }.change-card-heading { flex-direction: column; }.website-tabs { grid-template-columns: repeat(3, 1fr); }.website-review-heading > div:last-child, .website-review-history-card > div:last-child { align-items: flex-start; }.website-review-scope-note span { text-align: left; }.website-structure-facts { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 760px) { .email-current-review-heading, .email-current-review { align-items: start; grid-template-columns: 1fr; flex-direction: column; }.email-review-state { min-width: 0; text-align: left; }.email-review-state > div { justify-content: flex-start; }.email-intervention-form { grid-template-columns: 1fr; }.email-intervention-form .wide { grid-column: auto; } }
@media (max-width: 900px) { .campaign-learning-grid, .email-preview-grid, .email-review-result { grid-template-columns: 1fr; }.email-review-outcome, .email-review-limitation { grid-column: auto; } }
@media (max-width: 760px) { .campaign-group > summary, .adset-group > summary { grid-template-columns: 1fr; gap: 10px; } }
@media (max-width: 760px) { .sending-identity { grid-template-columns: 1fr; } }
@media (max-width: 900px) { .meta-creative-detail-grid, .meta-creative-review-result { grid-template-columns: 1fr; }.meta-creative-review-outcome, .meta-creative-review-limitation, .meta-next-test, .meta-causality-note { grid-column: auto; } }
@media (max-width: 760px) { .google-health-grid, .google-diagnosis-grid, .google-intent-grid, .google-campaign-metrics { grid-template-columns: 1fr; }.google-landing-row { align-items: stretch; flex-direction: column; } }
@media (max-width: 760px) { .website-visual-evidence { grid-template-columns: 1fr; }.website-visual-viewports { grid-template-columns: 1fr 1fr; } }
@media (max-width: 760px) { .website-visual-gallery { grid-template-columns: 1fr; }.website-review-job-status > div { align-items: flex-start; flex-direction: column; }.website-visual-tile.expanded { inset: 6px; } }
@media (max-width: 760px) { .ai-refresh-control { width: 100%; align-items: stretch; flex-direction: column-reverse; }.ai-refresh-control button { width: 100%; }.ai-refresh-status { max-width: none; text-align: left; } }
@media (max-width: 760px) { .recipient-form, .recipient-preferences { grid-template-columns: 1fr; }.recipient-form .privacy-toggle, .recipient-form-action { grid-column: auto; justify-self: stretch; }.recipient-form-action button, .recipient-preferences button { width: 100%; }.recipient-card-head, .notification-centre-heading, .push-ready { align-items: flex-start; flex-direction: column; }.notification-item { grid-template-columns: 12px 1fr; }.notification-item > small { grid-column: 2; }.delivery-history { overflow-x: auto; } }
@media (max-width: 760px) { .support-controls { bottom: max(78px, calc(env(safe-area-inset-bottom, 0px) + 18px)); }.page { scroll-margin-bottom: 180px; } main { padding-bottom: calc(180px + env(safe-area-inset-bottom, 0px)); } }
@media (max-width: 760px) { .global-ask-launcher { top: 12px; right: 12px; } }

/* v0.71.9 website review evidence recovery */
.website-referral-context { display: block; margin: 0; min-width: 0; }
.website-referral-context > div { min-width: 0; }
.website-referral-context strong, .website-referral-context .website-referral-name, .website-referral-context small { display: block; }
.website-referral-context .website-referral-name { margin-top: 4px; color: #6f430f; font-size: 10px; font-weight: 700; line-height: 1.4; overflow-wrap: anywhere; }
.website-referral-context p { margin: 4px 0; color: #805016; font-size: 10px; line-height: 1.45; overflow-wrap: anywhere; }
.website-referral-context small { color: #8d6736; font-size: 9px; line-height: 1.45; }
.website-evidence-rerun { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 18px; margin-top: 14px; padding: 17px; border: 1px solid #e5b45f; border-radius: 11px; background: #fffaf0; }
.website-evidence-rerun h3 { margin: 4px 0 7px; }
.website-evidence-rerun > div > p:not(.eyebrow) { margin: 0; color: var(--muted); font-size: 10px; line-height: 1.5; }
.website-evidence-rerun form { min-width: 0; }
.website-evidence-rerun .website-screenshot-inputs { margin-top: 0; }
.website-evidence-rerun label { color: var(--ink); font-size: 10px; font-weight: 700; }
.website-evidence-rerun input[type="file"] { display: block; width: 100%; margin-top: 6px; padding: 9px; border: 1px solid #d7c39e; border-radius: 9px; background: white; color: var(--ink); font: inherit; font-weight: 500; }
.website-evidence-rerun label small { display: block; margin-top: 5px; color: var(--muted); font-size: 9px; font-weight: 500; line-height: 1.4; }
.website-evidence-rerun button { margin-top: 11px; }
.website-evidence-rerun-error { margin: 9px 0 0; padding: 9px 10px; border-radius: 8px; background: #fff1ef; color: #8b3832; font-size: 10px; font-weight: 700; }
.website-evidence-rerun-error[hidden] { display: none; }
@media (max-width: 760px) { .website-evidence-rerun { grid-template-columns: 1fr; } }

/* v0.72.0 external beta readiness and issue reporting */
.feedback-modal form { max-height: min(880px, calc(100vh - 36px)); overflow: auto; }
.feedback-modal textarea#beta-feedback-expected { min-height: 96px; }
.optional-label { font-weight: 500; color: #8392aa; }
.feedback-context-toggle { display: flex !important; grid-template-columns: auto 1fr; align-items: start; gap: 9px !important; padding: 11px 12px; border: 1px solid #dce7f6; border-radius: 10px; background: #f7fbff; color: var(--ink) !important; }
.feedback-context-toggle input { width: auto !important; margin-top: 2px; }
.feedback-privacy-note { margin: 0; font-size: 11px; }
.beta-feedback-history { border-top: 1px solid var(--line); padding-top: 12px; }
.beta-feedback-history summary { cursor: pointer; font-weight: 700; color: var(--ink); }
#beta-feedback-history-list { display: grid; gap: 8px; margin-top: 10px; }
.beta-feedback-history-row { padding: 11px 12px; border: 1px solid #dce7f6; border-radius: 10px; background: #fbfdff; }
.beta-feedback-history-row > div { display: flex; justify-content: space-between; gap: 12px; }
.beta-feedback-history-row strong { font-size: 12px; }
.beta-feedback-history-row span, .beta-feedback-history-row small { color: var(--muted); font-size: 10px; }
.beta-feedback-history-row p { margin: 7px 0 5px !important; color: var(--ink) !important; font-size: 11px; }
.beta-readiness-card { grid-column: 1 / -1; }
.beta-readiness-checks { display: grid; gap: 7px; margin-top: 14px; }
.beta-readiness-row { display: grid; grid-template-columns: 10px minmax(0,1fr) auto; align-items: center; gap: 10px; padding: 10px 11px; border: 1px solid #dce7f6; border-radius: 10px; background: #fbfdff; }
.beta-readiness-row > span { width: 8px; height: 8px; border-radius: 50%; background: #91a1b7; }
.beta-readiness-row.ready > span { background: #00b894; }
.beta-readiness-row.attention > span { background: #f0a11a; }
.beta-readiness-row.blocked > span { background: #d84b4b; }
.beta-readiness-row.optional > span { background: #8fa6c7; }
.beta-readiness-row div { display: grid; gap: 2px; }
.beta-readiness-row strong { font-size: 12px; }
.beta-readiness-row small { color: var(--muted); font-size: 10px; overflow-wrap: anywhere; }
.beta-readiness-row b { color: #51657f; font-size: 9px; text-transform: uppercase; letter-spacing: .07em; }
@media (max-width: 760px) { .beta-readiness-row { grid-template-columns: 10px 1fr; }.beta-readiness-row b { grid-column: 2; } }

.continue-setup { position: fixed; z-index: 19; top: 18px; right: 130px; padding: 9px 13px; background: #fff !important; box-shadow: 0 8px 22px #0c1e4117 !important; font-size: 10px; }
.setup-samples { display:flex; flex-wrap:wrap; gap:8px; align-items:center; margin-top:10px; }
.setup-samples strong { width:100%; font-size:11px; }
.setup-samples span { display:inline-flex; padding:6px 9px; border:1px solid #d7e4f5; border-radius:999px; background:#fff; }
.ask-workspace.pre-evidence .ask-history, .ask-workspace.pre-evidence #ask-suggestions, .ask-workspace.pre-evidence #ask-messages, .ask-workspace.pre-evidence #ask-processing { display:none !important; }
.ask-workspace.pre-evidence { grid-template-columns:1fr; }
@media (max-width:760px){.continue-setup{top:12px;right:118px;}}

@media (max-width: 760px) {
  .settings-tabs { display: flex; overflow-x: auto; scroll-snap-type: x proximity; }
  .settings-tabs button { flex: 0 0 auto; min-width: 132px; scroll-snap-align: start; }
  .settings-panel-heading { flex-direction: column; }
}
