.ow-workspace {
  --ow-ink: #102137; --ow-muted: #617085; --ow-line: #dce3e9; --ow-navy: #102137;
  margin: 24px 0 8px; padding: clamp(18px, 3vw, 32px); border: 1px solid #d5dfdf;
  border-radius: 24px; background: linear-gradient(150deg, #f8fbfd, #fbfaf2);
  color: var(--ow-ink); font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  text-align: left; font-size: 14px; line-height: 1.6; min-width: 0; color-scheme: light;
}
.ow-workspace *, .ow-workspace *::before, .ow-workspace *::after { box-sizing: border-box; }
.ow-workspace [hidden] { display: none !important; }
.ow-workspace h4, .ow-workspace h5, .ow-workspace p, .ow-workspace dl { margin: 0; }
.ow-workspace h4 { font-size: clamp(23px, 3vw, 31px); line-height: 1.16; letter-spacing: -.04em; font-weight: 850; }
.ow-workspace h5 { font-size: 19px; line-height: 1.3; letter-spacing: -.025em; font-weight: 780; }
.ow-workspace button, .ow-workspace input, .ow-workspace select, .ow-workspace textarea { font: inherit; }
.ow-workspace button { cursor: pointer; }
.ow-workspace :focus-visible { outline: 3px solid #4c8ad8; outline-offset: 3px; }
.ow-header { display: flex; gap: 16px; justify-content: space-between; align-items: flex-start; }
.ow-kicker { display: block; font-size: 10px; text-transform: uppercase; letter-spacing: .16em; font-weight: 800; color: #537e91; }
.ow-header .ow-kicker { margin-bottom: 8px; }
.ow-intro { max-width: 55ch; color: var(--ow-muted); margin-top: 10px !important; font-size: 14px; }
.ow-source-badge { white-space: nowrap; color: #315f53; background: #e9f3ec; border: 1px solid #cfe3d5; padding: 5px 9px; border-radius: 7px; font-size: 10px; font-weight: 750; }
.ow-overview { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 23px !important; padding: 17px 0; border-top: 1px solid var(--ow-line); border-bottom: 1px solid var(--ow-line); }
.ow-metric { min-width: 0; }
.ow-metric dt { color: var(--ow-muted); font-size: 11px; font-weight: 500; line-height: 1.4; }
.ow-metric dd { margin: 4px 0 0; color: var(--ow-ink); font-size: 16px; font-weight: 760; line-height: 1.3; overflow-wrap: anywhere; }
.ow-overview .ow-metric { padding: 0 16px; border-right: 1px solid var(--ow-line); }
.ow-overview .ow-metric:first-child { padding-left: 0; }
.ow-overview .ow-metric:last-child { border-right: 0; }
.ow-overview .ow-metric dd { font-size: 27px; letter-spacing: -.04em; }
.ow-provenance { display: flex; flex-wrap: wrap; gap: 4px 14px; color: var(--ow-muted); font-size: 11px; padding: 12px 0 0; }
.ow-coverage { margin-top: 7px !important; color: #6b6040; font-size: 11px; }
.ow-tabs { display: flex; gap: 4px; background: #e8edf0; border-radius: 12px; padding: 5px; margin: 22px 0; }
.ow-workspace .ow-tab { flex: 1 1 0; border: 0; border-radius: 8px; color: #586778; background: transparent; min-height: 44px; padding: 9px 8px; line-height: 1.2; font-size: 12px; font-weight: 720; box-shadow: none; }
.ow-workspace .ow-tab[aria-selected="true"] { background: var(--ow-navy); color: #fff; box-shadow: 0 3px 7px #0d22381c; }
.ow-panel { min-width: 0; }
.ow-section-note { color: var(--ow-muted); font-size: 12px; max-width: 80ch; margin-bottom: 16px !important; }
.ow-opportunity-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 15px; align-items: start; }
.ow-opportunity { background: #fff; border: 1px solid var(--ow-line); border-radius: 16px; padding: 20px; overflow: hidden; min-width: 0; box-shadow: 0 4px 14px #10213703; }
.ow-opportunity-top { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 14px; flex-wrap: wrap; }
.ow-chip { display: inline-flex; padding: 3px 7px; border: 1px solid #dce6e5; color: #536f6a; background: #f2f7f5; border-radius: 5px; font-size: 9px; font-weight: 650; line-height: 1.3; }
.ow-description { font-size: 13px; line-height: 1.55; color: var(--ow-muted); margin-top: 9px !important; }
.ow-reference { font-size: 11px; font-weight: 650; color: #527166; margin: 17px 0 9px !important; overflow-wrap: anywhere; }
.ow-card-metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 9px; padding: 12px 0; border-top: 1px solid #edf0f3; border-bottom: 1px solid #edf0f3; }
.ow-card-metrics .ow-metric dd { font-size: 15px; }
.ow-card-metrics .ow-metric dt { font-size: 10px; }
.ow-reasons { margin: 13px 0; padding-left: 17px; color: #526273; font-size: 12px; }
.ow-reasons li { margin: 6px 0; padding-left: 2px; }
.ow-details { border-top: 1px solid var(--ow-line); margin-top: 13px; }
.ow-details > summary { padding: 12px 0; font-size: 12px; cursor: pointer; font-weight: 700; color: #354b60; }
.ow-details > summary::marker { color: #71899a; }
.ow-details[open] > summary { margin-bottom: 4px; }
.ow-card-extra { padding-bottom: 4px; }
.ow-caption, .ow-muted { font-size: 11px; line-height: 1.6; color: var(--ow-muted); }
.ow-caption { margin-top: 10px !important; }
.ow-small-heading { display: block; font-size: 12px; margin-top: 15px; }
.ow-card-footer { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 13px; }
.ow-workspace .ow-button { appearance: none; display: inline-flex; align-items: center; justify-content: center; width: auto; min-height: 43px; border: 1px solid #cbd7e0; color: #223d55; background: #fff; padding: 10px 16px; border-radius: 9px; font-weight: 700; line-height: 1.3; box-shadow: none; font-size: 12px; }
.ow-workspace .ow-button:hover { border-color: #9ab0c0; background: #f2f6f9; }
.ow-workspace .ow-button-small { min-height: 37px; padding: 8px 11px; font-size: 11px; }
.ow-workspace .ow-button-quiet { background: transparent; border-color: transparent; }
.ow-workspace .ow-button-primary { background: var(--ow-navy); color: #fff; border-color: var(--ow-navy); }
.ow-workspace .ow-button-primary:hover { background: #203c59; }
.ow-workspace .ow-button:disabled { cursor: default; opacity: .48; }
.ow-toolbar { display: grid; grid-template-columns: minmax(160px, 1.2fr) minmax(0, 1fr) minmax(0, 1fr); gap: 9px; margin-top: 20px; }
.ow-workspace .ow-input, .ow-workspace .ow-select { display: block; width: 100%; min-width: 0; min-height: 46px; color: var(--ow-ink); background: #fff; border: 1px solid #cbd5df; padding: 10px 12px; border-radius: 9px; font-size: 13px; line-height: 1.4; font-weight: 500; box-shadow: none; }
.ow-workspace textarea.ow-input { min-height: 104px; resize: vertical; }
.ow-workspace .ow-input::placeholder { color: #8794a2; opacity: 1; }
.ow-workspace .ow-select { padding-right: 24px; }
.ow-term-list { list-style: none; margin: 13px 0 0; padding: 0; display: grid; gap: 9px; }
.ow-term { padding: 16px; background: #fff; border: 1px solid var(--ow-line); border-radius: 12px; min-width: 0; }
.ow-term-main { display: grid; grid-template-columns: minmax(0, 1fr) minmax(260px, 1.2fr); align-items: center; gap: 18px; }
.ow-term-name { display: flex; gap: 10px; align-items: baseline; min-width: 0; }
.ow-term-name strong { font-size: 13px; line-height: 1.45; overflow-wrap: anywhere; }
.ow-rank { color: #8796a6; font-size: 10px; min-width: 24px; }
.ow-term-metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.ow-term-metrics .ow-metric dd { font-size: 13px; }
.ow-term-details { margin-top: 10px; border-top-color: #edf0f3; }
.ow-term-details > summary { font-size: 10px; padding: 8px 0 0; }
.ow-row-detail { padding-top: 12px; }
.ow-detail-metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; padding: 12px; border-radius: 10px; background: #f4f7fa; }
.ow-metric-note { font-size: 10px; color: #738092; display: block; margin-top: 5px; line-height: 1.4; }
.ow-history { margin-top: 12px; }
.ow-months { list-style: none; display: grid; grid-auto-flow: column; grid-auto-columns: minmax(42px, 1fr); gap: 5px; padding: 5px 0 3px; margin: 0; overflow-x: auto; scrollbar-width: thin; }
.ow-month { min-width: 0; display: flex; flex-direction: column; align-items: center; font-size: 8px; gap: 5px; color: #637386; }
.ow-month strong { font-size: 9px; font-weight: 600; color: #243d55; }
.ow-month-track { width: min(75%, 35px); height: 66px; border-bottom: 1px solid #b9ccda; position: relative; background: #f5f8fa; }
.ow-month-bar { position: absolute; bottom: 0; width: 100%; height: 0; background: #5d879b; border-radius: 3px 3px 0 0; }
.ow-month-missing .ow-month-track { background: repeating-linear-gradient(135deg, #f1f4f6, #f1f4f6 3px, #e6ebee 3px, #e6ebee 4px); }
.ow-simulator-form { margin-top: 20px; }
.ow-plan-section { margin-top: 20px; padding: 17px; border: 1px solid var(--ow-line); border-radius: 13px; background: #fff; }
.ow-plan-section h6 { margin: 0; font-size: 14px; line-height: 1.4; }
.ow-plan-context { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; padding: 15px 17px; border: 1px solid #bad8c7; border-radius: 13px; background: #f3fbf6; }
.ow-plan-context.is-incomplete { border-color: #e8c985; background: #fff8e7; }
.ow-plan-context strong { display: block; color: var(--ow-ink); font-size: 13px; }
.ow-context-status { flex: 0 0 auto; padding: 5px 9px; border-radius: 999px; background: #dbefe3; color: #245b40; font-size: 9px; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; }
.ow-plan-context.is-incomplete .ow-context-status { background: #f6e6bd; color: #805b16; }
.ow-plan-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 15px; margin-top: 16px; }
.ow-plan-grid .ow-field:first-child, .ow-plan-grid .ow-field:nth-child(2), .ow-plan-grid .ow-field:nth-child(3), .ow-plan-grid .ow-field:last-child { grid-column: 1 / -1; }
.ow-selected-terms { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 12px; }
.ow-workspace .ow-term-chip { appearance: none; width: auto; border: 1px solid #c9dfd5; color: #2f6150; background: #edf7f1; border-radius: 999px; padding: 7px 10px; font-size: 11px; font-weight: 700; }
.ow-workspace .ow-term-chip:hover { background: #e2f0e8; }
.ow-field { display: block; min-width: 0; }
.ow-field-label { display: block; font-size: 12px; font-weight: 650; color: #40536a; margin-bottom: 7px; letter-spacing: 0; text-transform: none; }
.ow-input-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 15px; margin-top: 16px; }
.ow-scenario-output { background: #edf3f3; border: 1px solid #d5e2e0; padding: 20px; border-radius: 13px; margin-top: 20px; }
.ow-scenario-metrics { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin-top: 12px !important; }
.ow-scenario-metrics .ow-metric dd { font-size: 25px; letter-spacing: -.03em; }
.ow-simulator-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px; }
.ow-status { font-size: 12px; color: #476353; margin-top: 10px !important; min-height: 19px; }
.ow-empty { font-size: 13px; padding: 12px 0; color: var(--ow-muted); }
.ow-flag { margin-top: 10px !important; font-size: 11px; color: #8a642c; padding: 9px 12px; background: #fff4df; border-radius: 7px; }
.ow-glossary > .ow-details { margin-top: 9px; background: #fff; border: 1px solid var(--ow-line); border-radius: 10px; padding: 0 15px; }
.ow-glossary > .ow-details p { padding-bottom: 14px; color: var(--ow-muted); font-size: 12px; }
.ow-glossary .ow-caption a { font-weight: 600; }
.ow-future { margin-top: 25px; padding-top: 20px; border-top: 1px solid var(--ow-line); }
.ow-future-source { display: grid; grid-template-columns: 140px minmax(0, 1fr); gap: 15px; font-size: 12px; color: var(--ow-muted); margin-top: 12px !important; }
.ow-future-source strong { color: #3e596f; font-size: 12px; }
.ow-source-card { border: 1px solid var(--ow-line); border-radius: 10px; padding: 14px; margin-top: 11px; background: #fff; }
.ow-source-card .ow-opportunity-top { margin-bottom: 0; }
.ow-source-card strong { font-size: 12px; }
.ow-source-metrics { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin-top: 14px !important; }
.ow-forecast { border: 1px solid #d3e0e8; background: #f2f7fb; border-radius: 13px; padding: 19px; margin-bottom: 26px; }
.ow-forecast h5 { margin-top: 5px; }
.ow-forecast-card { margin-top: 16px; padding-top: 14px; border-top: 1px solid #d7e3ea; }
.ow-forecast-card > strong { font-size: 12px; }
.ow-forecast-insight { margin-top: 14px !important; padding: 12px; border-radius: 8px; background: #e2eeec; color: #315d52; font-size: 12px; }
.ow-forecast-comparison { display: grid; gap: 6px; padding: 4px 0 8px; }
.ow-forecast-line { display: grid; grid-template-columns: minmax(90px, 1fr) minmax(70px, .75fr) minmax(100px, 1fr); gap: 8px; padding: 8px 0; border-bottom: 1px solid #e1e8ed; color: #5c6d7e; font-size: 10px; }
.ow-forecast-line:last-child { border-bottom: 0; }
.ow-forecast-line strong { color: #2d465d; }
.ow-score-explanation { padding: 0 0 12px; }
.ow-score-total { margin-top: 12px !important; padding: 12px; background: #eef4f7; border-radius: 9px; }
.ow-score-components { margin-top: 12px; }
.ow-score-component { border-bottom: 1px solid var(--ow-line); padding: 11px 0; }
.ow-score-component-title { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; font-size: 12px; }
.ow-score-component-title > span { color: #3b687b; white-space: nowrap; font-weight: 700; }
.ow-score-component .ow-caption { margin-top: 5px !important; }
.ow-score-equation { margin-top: 12px !important; font-size: 12px; font-weight: 650; color: #315567; }
.ow-score-order { margin-top: 12px !important; padding: 10px 12px; font-size: 12px; color: #315567; background: #f3f7f8; border-radius: 8px; }
.ow-observation-state { padding: 10px 12px; border-radius: 8px; background: #edf4f7; color: #35576b; font-size: 12px; }
.ow-commercial-records { display: grid; gap: 12px; margin: 14px 0; }
.ow-commercial-record { padding: 14px; border: 1px solid #dce5ec; border-radius: 11px; background: #fbfcfd; }
.ow-commercial-record .ow-plan-grid { margin-top: 12px; }
.ow-commercial-grid .ow-field:first-child { grid-column: 1 / -1; }
.ow-decision-card { border: 1px solid #b8d0e7; border-radius: 15px; background: linear-gradient(145deg, #f4f9ff, #fff); padding: 17px; box-shadow: 0 8px 26px #17324f0a; }
.ow-decision-title { display: block; color: #112f4d; font-size: 15px; line-height: 1.35; }
.ow-decision-copy { margin-top: 7px !important; color: #526b82; font-size: 11px; line-height: 1.55; }
.ow-decision-evidence { display: grid; gap: 0; margin-top: 13px !important; }
.ow-decision-evidence .ow-metric { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; padding: 8px 0; border-top: 1px solid #e3edf6; }
.ow-decision-evidence .ow-metric dd { margin: 0; text-align: right; font-size: 12px; }
.ow-builder-heading { max-width: 760px; }
.ow-builder-steps { list-style: none; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; margin: 22px 0 0; padding: 0; }
.ow-builder-steps li { display: flex; align-items: center; gap: 8px; color: #718092; font-size: 11px; font-weight: 700; }
.ow-builder-steps li::after { content: ''; height: 1px; background: #d7e0e7; flex: 1; margin-left: 3px; }
.ow-builder-steps li:last-child::after { display: none; }
.ow-builder-steps li > span { display: inline-grid; place-items: center; width: 27px; height: 27px; border-radius: 50%; background: #e7edf2; color: #506378; }
.ow-builder-steps li.is-current { color: #174f91; }
.ow-builder-steps li.is-current > span { background: #1769d2; color: #fff; box-shadow: 0 4px 12px #1769d22e; }
.ow-builder-steps li.is-complete { color: #2f6d56; }
.ow-builder-steps li.is-complete > span { background: #dff1e7; color: #256047; }
.ow-builder-steps li.is-complete::after { background: #a9d0bc; }
.ow-builder-layout { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(285px, .78fr); gap: 20px; align-items: start; }
.ow-builder-main, .ow-builder-summary { min-width: 0; }
.ow-builder-summary { position: sticky; top: 18px; display: grid; gap: 14px; }
.ow-step-label { display: block; color: #44758d; font-size: 10px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; margin-bottom: 4px; }
.ow-section-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; }
.ow-selection-count { display: inline-flex; align-items: center; min-height: 28px; padding: 4px 9px; border-radius: 999px; background: #edf3f7; color: #33546e; font-size: 11px; font-weight: 750; white-space: nowrap; }
.ow-picker-actions { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 13px; }
.ow-builder-keywords { margin-top: 13px; max-height: 430px; overflow: auto; border: 1px solid var(--ow-line); border-radius: 11px; background: #fbfcfd; scrollbar-width: thin; }
.ow-negative-suggestions { border-color: #d9c98b; background: linear-gradient(145deg, #fffdf5, #fff); }
.ow-negative-list { display: grid; gap: 9px; margin: 13px 0; }
.ow-negative-option { align-items: flex-start; background: #fff; border: 1px solid var(--ow-line); border-radius: 11px; cursor: pointer; display: flex; gap: 10px; padding: 12px; }
.ow-negative-option.action-add { border-color: #b9d9c7; }
.ow-negative-option input { accent-color: #173b2a; flex: 0 0 auto; height: 18px; margin-top: 2px; width: 18px; }
.ow-negative-option span { display: grid; gap: 4px; min-width: 0; }
.ow-negative-option strong { color: var(--ow-ink); overflow-wrap: anywhere; }
.ow-negative-option small { color: var(--ow-muted); line-height: 1.4; }
.ow-protected-details { margin-top: 12px; }
.ow-builder-keyword { display: grid; grid-template-columns: auto minmax(155px, 1fr) minmax(250px, 1.2fr); align-items: center; gap: 12px; min-height: 58px; padding: 10px 12px; border-bottom: 1px solid #e8edf1; cursor: pointer; }
.ow-builder-keyword:last-child { border-bottom: 0; }
.ow-builder-keyword:has(input:checked) { background: #f1f7ff; box-shadow: inset 3px 0 #2776d3; }
.ow-builder-keyword input { width: 18px; height: 18px; accent-color: #1769d2; }
.ow-builder-keyword-name { min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.ow-builder-keyword-name strong { overflow-wrap: anywhere; font-size: 12px; }
.ow-builder-keyword-name small { color: #8391a0; font-size: 9px; }
.ow-builder-keyword-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; align-items: center; color: #526478; font-size: 10px; }
.ow-builder-keyword-facts > span { min-width: 0; }
.ow-competition { justify-self: start; border-radius: 999px; padding: 3px 7px; font-weight: 700; }
.ow-competition-high { background: #fff0ed; color: #9b4738; }
.ow-competition-medium { background: #fff4d8; color: #84651d; }
.ow-competition-low { background: #e8f6ee; color: #27694d; }
.ow-competition-unknown { background: #edf1f4; color: #5f6c79; }
.ow-mode-group { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin-top: 15px; }
.ow-mode-option { position: relative; display: flex; align-items: flex-start; gap: 9px; min-height: 86px; padding: 12px; border: 1px solid #cfd9e2; border-radius: 10px; background: #fff; cursor: pointer; }
.ow-mode-option:has(input:checked) { border-color: #4a8bd9; background: #f1f7ff; box-shadow: 0 0 0 1px #4a8bd9; }
.ow-mode-option input { margin: 3px 0 0; accent-color: #1769d2; }
.ow-mode-option > span { display: flex; flex-direction: column; gap: 4px; }
.ow-mode-option strong { color: #1d334b; font-size: 11px; line-height: 1.35; }
.ow-mode-option small { color: #6c7b8c; font-size: 9px; line-height: 1.45; }
.ow-allocation-table { margin-top: 14px; border: 1px solid var(--ow-line); border-radius: 11px; overflow: hidden; }
.ow-allocation-row { display: grid; grid-template-columns: minmax(145px, 1.35fr) minmax(70px, .65fr) minmax(75px, .7fr) minmax(82px, .72fr) minmax(95px, .8fr); align-items: center; gap: 9px; min-height: 48px; padding: 8px 11px; border-bottom: 1px solid #e7ecef; font-size: 11px; }
.ow-allocation-row:last-child { border-bottom: 0; }
.ow-allocation-row strong { overflow-wrap: anywhere; }
.ow-allocation-row > span { color: #526478; }
.ow-allocation-header { min-height: 38px; background: #f2f5f7; color: #596b7d; font-size: 9px; font-weight: 750; }
.ow-allocation-header > span { color: inherit; }
.ow-workspace .ow-budget-input { min-height: 36px; padding: 6px 8px; font-size: 11px; }
.ow-advanced-details { margin-top: 15px; border: 1px solid var(--ow-line); border-radius: 12px; background: #fff; padding: 0 16px; }
.ow-advanced-details > summary { padding: 15px 0; }
.ow-advanced-content { padding-bottom: 16px; }
.ow-summary-card { border: 1px solid #cfdae3; border-radius: 15px; background: #fff; padding: 17px; box-shadow: 0 8px 26px #17324f0a; }
.ow-summary-card h6 { margin: 0; font-size: 15px; }
.ow-summary-metrics { display: grid; gap: 0; margin-top: 14px !important; }
.ow-summary-metrics .ow-metric { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; padding: 9px 0; border-bottom: 1px solid #edf0f2; }
.ow-summary-metrics .ow-metric:last-child { border-bottom: 0; }
.ow-summary-metrics .ow-metric dd { margin: 0; text-align: right; font-size: 14px; }
.ow-summary-notice { margin-top: 13px !important; padding: 11px 12px; border-radius: 9px; background: #eef5f8; color: #3d6072; font-size: 10px; line-height: 1.55; }
.ow-builder-summary .ow-forecast { margin: 0; padding: 16px; }
.ow-builder-summary .ow-forecast h5 { font-size: 16px; }
.ow-builder-summary .ow-forecast .ow-card-metrics { grid-template-columns: minmax(0, 1fr); gap: 8px; }
.ow-builder-summary .ow-forecast .ow-metric { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; }
.ow-builder-summary .ow-forecast .ow-metric dd { margin: 0; white-space: nowrap; }
.ow-builder-summary .ow-scenario-output { margin: 0; padding: 16px; }
.ow-builder-summary .ow-simulator-actions { margin: 0; display: grid; }
.ow-builder-summary .ow-simulator-actions .ow-button { width: 100%; }
@media (max-width: 850px) {
  .ow-header { flex-direction: column; gap: 12px; }
  .ow-opportunity-grid { grid-template-columns: minmax(0, 1fr); }
  .ow-toolbar { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ow-toolbar > input { grid-column: 1 / -1; }
  .ow-term-main { grid-template-columns: minmax(0, 1fr); gap: 13px; }
  .ow-builder-layout { grid-template-columns: minmax(0, 1fr); }
  .ow-builder-summary { position: static; }
  .ow-mode-group { grid-template-columns: minmax(0, 1fr); }
  .ow-mode-option { min-height: 0; }
}
@media (max-width: 520px) {
  .ow-workspace { margin: 16px -7px 6px; padding: 17px 13px; border-radius: 18px; }
  .ow-tabs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 5px; }
  .ow-workspace .ow-tab { min-height: 43px; font-size: 11px; }
  .ow-overview .ow-metric { padding: 0 9px; }
  .ow-overview .ow-metric dd { font-size: 24px; }
  .ow-overview .ow-metric dt { font-size: 10px; }
  .ow-opportunity { padding: 16px; border-radius: 13px; }
  .ow-detail-metrics { grid-template-columns: minmax(0, 1fr); gap: 12px; }
  .ow-detail-metrics .ow-metric { display: grid; grid-template-columns: minmax(0, 1fr) auto; column-gap: 12px; }
  .ow-detail-metrics .ow-metric-note { grid-column: 1 / -1; }
  .ow-detail-metrics .ow-metric dd { margin: 0; font-size: 14px; }
  .ow-input-grid { grid-template-columns: minmax(0, 1fr); }
  .ow-plan-grid { grid-template-columns: minmax(0, 1fr); }
  .ow-plan-grid .ow-field { grid-column: auto !important; }
  .ow-plan-context { flex-direction: column; gap: 9px; }
  .ow-context-status { align-self: flex-start; }
  .ow-workspace .ow-input, .ow-workspace .ow-select { font-size: 16px; }
  .ow-toolbar .ow-select { font-size: 12px; }
  .ow-toolbar { grid-template-columns: minmax(0, 1fr); }
  .ow-toolbar .ow-select { font-size: 16px; }
  .ow-scenario-output { padding: 15px; }
  .ow-scenario-metrics .ow-metric dd { font-size: 21px; }
  .ow-forecast .ow-card-metrics { grid-template-columns: minmax(0, 1fr); gap: 9px; }
  .ow-forecast .ow-metric { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; }
  .ow-forecast .ow-metric dd { margin: 0; white-space: nowrap; overflow-wrap: normal; }
  .ow-score-component-title { flex-direction: column; gap: 3px; }
  .ow-future-source { grid-template-columns: minmax(0, 1fr); gap: 2px; }
  .ow-builder-steps { gap: 4px; }
  .ow-builder-steps li { flex-direction: column; align-items: flex-start; gap: 4px; font-size: 9px; }
  .ow-builder-steps li::after { display: none; }
  .ow-builder-keyword { grid-template-columns: auto minmax(0, 1fr); }
  .ow-builder-keyword-facts { grid-column: 2; grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .ow-allocation-table { border: 0; display: grid; gap: 9px; overflow: visible; }
  .ow-allocation-header { display: none; }
  .ow-allocation-row { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px 12px; border: 1px solid var(--ow-line); border-radius: 10px; padding: 12px; }
  .ow-allocation-row > strong { grid-column: 1 / -1; }
  .ow-allocation-row > :nth-child(2)::before { content: 'Buscas: '; color: #82909d; }
  .ow-allocation-row > :nth-child(3)::before { content: 'CPC: '; color: #82909d; }
  .ow-allocation-row > :nth-child(4)::before { content: 'Valor: '; color: #82909d; }
  .ow-allocation-row > :nth-child(5)::before { content: 'Cliques: '; color: #82909d; }
  .ow-builder-summary { padding-bottom: env(safe-area-inset-bottom, 0); }
}
@media (prefers-reduced-motion: reduce) { .ow-workspace * { scroll-behavior: auto; } }
