/* Internal tracker styles stay isolated from the broker submission experience. */
.tracking-workspace { max-width: 1440px; }
.tracking-workspace, .tracking-dialog { min-width: 0; }
.tracking-workspace h2 { margin-bottom: .75rem; }
.tracking-workspace .workspace-heading { align-items: flex-start; }
.tracking-panel { background: #fff; border: 1px solid var(--line); border-radius: var(--card-radius); padding: 1.5rem; min-width: 0; box-shadow: var(--shadow); }
.tracking-filters { margin-bottom: 1.5rem; }
.tracking-filter-grid { display: grid; grid-template-columns: minmax(200px, 1.5fr) minmax(170px, 1fr) minmax(145px, .7fr); gap: 1rem; align-items: end; }
.tracking-workspace input, .tracking-workspace select, .tracking-dialog textarea { width: 100%; min-width: 0; max-width: 100%; min-height: 2.875rem; margin: 0; border: 1px solid var(--line-strong); border-radius: var(--control-radius); padding: .625rem .75rem; background: #fff; color: var(--navy); font-size: .8125rem; }
.tracking-workspace select { text-overflow: ellipsis; }
.tracking-filter-grid > div { min-width: 0; }
.tracking-custom-dates { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 30rem; gap: 1rem; }
.tracking-filter-foot { display: flex; align-items: center; justify-content: space-between; gap: .75rem; margin-top: .375rem; color: var(--muted); font-size: .6875rem; }
.tracking-filter-foot .text-btn { flex: none; }
.tracking-list-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 1.5rem; }
.tracking-list-heading h2 { margin-bottom: .25rem; }
.tracking-list-heading p { margin-bottom: .875rem; color: var(--muted); font-size: .75rem; }
.tracking-sort { display: flex; align-items: center; gap: .625rem; flex: 0 0 auto; }
.tracking-sort label.field { white-space: nowrap; margin: 0; }
.tracking-sort select { width: 10rem; min-height: 2.5rem; }
.tracking-status-filters { border: 0; padding: 0; margin: 0 0 1.25rem; min-width: 0; }
.tracking-status-filters legend { font-size: .6875rem; color: var(--muted); margin-bottom: .5rem; padding: 0; }
.tracking-status-filters > div { display: flex; gap: .5rem; flex-wrap: wrap; }
.tracking-filter-chip { display: inline-flex; align-items: center; gap: .375rem; border: 1px solid var(--line); padding: .5rem .75rem; min-height: 2.5rem; border-radius: 2rem; color: var(--muted); font-size: .75rem; cursor: pointer; }
.tracking-filter-chip input { width: 1rem; min-height: 1rem; height: 1rem; padding: 0; margin: 0; accent-color: var(--navy); }
.tracking-filter-chip:has(input:checked) { color: var(--navy); background: #eef1fa; border-color: var(--navy); }
.tracking-filter-all { border: 1px solid var(--line); border-radius: 2rem; color: var(--muted); background: white; font-size: .75rem; min-height: 2.5rem; padding: .5rem .875rem; }
.tracking-filter-all[aria-pressed="true"] { background: var(--navy); color: #fff; border-color: var(--navy); }
.tracking-table { width: 100%; border-collapse: collapse; table-layout: fixed; }
.tracking-table th { font-size: .6875rem; text-align: left; font-weight: 600; color: var(--muted); background: #f7f8fa; border-top: 1px solid var(--line); padding: .75rem .625rem; }
.tracking-table th:nth-child(1) { width: 12%; }
.tracking-table th:nth-child(2) { width: 26%; }
.tracking-table th:nth-child(3) { width: 20%; }
.tracking-table th:nth-child(4) { width: 22%; }
.tracking-table th:nth-child(5) { width: 20%; }
.tracking-table td { border-top: 1px solid var(--line); padding: 1rem .625rem; vertical-align: top; font-size: .8125rem; color: var(--navy); overflow-wrap: anywhere; }
.tracking-table time { font-size: .75rem; }
.tracking-merchant { display: block; font-weight: 500; }
.tracking-reference { display: block; font-size: .625rem; color: var(--muted); margin-top: .3rem; overflow-wrap: anywhere; font-variant-numeric: tabular-nums; }
.tracking-status-wrap { position: relative; display: inline-flex; max-width: 100%; }
.tracking-status { display: inline-flex; align-items: center; justify-content: space-between; gap: .75rem; min-height: 2.25rem; max-width: 100%; border: 1px solid transparent; border-radius: 2rem; padding: .4rem .75rem; font-weight: 500; font-size: .75rem; white-space: nowrap; }
.tracking-status:hover { border-color: currentColor; }
.tracking-pending { color: #596273; background: #edf0f4; }
.tracking-approved { color: #07578d; background: #e7f4fc; }
.tracking-funded { color: #056338; background: #e3f4ea; }
.tracking-declined { color: #a32932; background: #fbeaec; }
.tracking-status-tip { display: none; position: absolute; z-index: 8; bottom: calc(100% + .5rem); right: 0; width: max-content; max-width: min(19rem, 70vw); padding: .625rem .75rem; border-radius: .375rem; background: #17243f; color: #fff; box-shadow: 0 3px 12px #01015820; font-size: .6875rem; font-weight: 400; line-height: 1.5; overflow-wrap: anywhere; pointer-events: none; }
.tracking-status-wrap:hover .tracking-status-tip, .tracking-status-wrap:focus-within .tracking-status-tip { display: block; }
.tracking-decline-preview { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-size: .6875rem; color: var(--muted); margin: .4rem 0 0; line-height: 1.5; }
.tracking-pagination { display: flex; align-items: center; justify-content: space-between; gap: 1rem; border-top: 1px solid var(--line); padding-top: 1.25rem; margin-top: .375rem; color: var(--muted); font-size: .75rem; }
.tracking-pagination > div { display: flex; gap: .5rem; }
.tracking-pagination .secondary { min-height: 2.5rem; padding: .5rem .75rem; font-size: .75rem; }
.tracking-empty { padding: 3rem 1rem; text-align: center; color: var(--navy); }
.tracking-empty strong { font-size: .9375rem; font-weight: 500; }
.tracking-empty p { color: var(--muted); font-size: .8125rem; margin: .5rem 0 0; }
.tracking-loading { padding: 2rem 1rem; color: var(--muted); font-size: .8125rem; }
#tracking-list[aria-busy="true"] .tracking-table, #tracking-dashboard[aria-busy="true"] > * { opacity: .55; }
.tracking-cohort-heading { display: flex; align-items: baseline; flex-wrap: wrap; justify-content: space-between; gap: .25rem 1rem; margin: 0 0 1rem; }
.tracking-cohort-heading h2 { margin: 0; overflow-wrap: anywhere; }
.tracking-cohort-heading > span { font-size: .75rem; color: var(--muted); }
.tracking-metrics { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: .75rem; }
.tracking-metric { padding: 1.125rem; border: 1px solid var(--line); border-radius: var(--card-radius); border-top: 3px solid #a1abbb; background: #fff; min-width: 0; }
.tracking-metric h3 { font-size: .6875rem; font-weight: 500; color: var(--muted); margin: 0 0 .75rem; }
.tracking-metric > strong { font-size: 1.875rem; line-height: 1.1; font-weight: 600; letter-spacing: -.06rem; color: var(--navy); font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.tracking-metric p { color: var(--muted); font-size: .625rem; margin: .5rem 0 0; line-height: 1.5; }
.tracking-metric-total { border-top-color: var(--navy); }
.tracking-metric-approved { border-top-color: var(--brand-accent); }
.tracking-metric-funded { border-top-color: #168453; }
.tracking-metric-declined { border-top-color: #bb525b; }
.tracking-metric-rate { background: var(--navy); border-color: var(--navy); }
.tracking-metric-rate h3, .tracking-metric-rate p { color: #d2d9eb; }
.tracking-metric-rate > strong { color: #fff; }
.tracking-cohort-note { font-size: .6875rem; color: var(--muted); margin: .875rem 0 1.5rem; line-height: 1.7; }
.tracking-chart-grid { display: grid; grid-template-columns: minmax(220px, .7fr) minmax(0, 1.3fr); gap: 1.25rem; margin-bottom: 1.25rem; }
.tracking-chart-grid h2 { font-size: 1rem; }
.tracking-outcome-hint { font-size: .6875rem; color: var(--muted); margin: -.25rem 0 .625rem; line-height: 1.6; }
.tracking-distribution-row { display: block; width: 100%; min-width: 0; margin-top: .5rem; border: 1px solid transparent; border-radius: .5rem; padding: .625rem .5rem; background: transparent; color: var(--navy); text-align: left; cursor: pointer; }
.tracking-distribution-row:hover { background: #f6f8fb; border-color: var(--line); }
.tracking-distribution-row[aria-pressed="true"] { background: #eef1fa; border-color: var(--navy); }
.tracking-distribution-row:focus-visible, .tracking-chart-scroll:focus-visible { outline: 2px solid var(--navy); outline-offset: 3px; }
.tracking-outcome-heading { display: flex; justify-content: space-between; gap: .5rem; align-items: center; font-size: .75rem; margin-bottom: .375rem; }
.tracking-outcome-heading > span { display: inline-flex; align-items: center; gap: .5rem; }
.tracking-distribution-row strong { font-weight: 500; font-variant-numeric: tabular-nums; }
.tracking-distribution-row small { font-size: .6875rem; font-weight: 400; color: var(--muted); margin-left: .375rem; }
.tracking-distribution-row > svg { width: 100%; height: .5rem; display: block; }
.tracking-chart-track { fill: #f0f2f6; }
.tracking-fill-pending { fill: #9ba6b8; }
.tracking-fill-approved { fill: #0399d6; }
.tracking-fill-funded { fill: #168453; }
.tracking-fill-declined { fill: #bb525b; }
.tracking-dot { display: inline-block; width: .5rem; height: .5rem; border-radius: 50%; flex: none; }
.tracking-dot.tracking-pending { background: #9ba6b8; }
.tracking-dot.tracking-approved { background: #0399d6; }
.tracking-dot-submissions { background: #010158; }
.tracking-dot.tracking-funded { background: #168453; }
.tracking-dot.tracking-declined { background: #bb525b; }
.tracking-chart-heading { display: flex; align-items: baseline; flex-wrap: wrap; justify-content: space-between; gap: .5rem; }
.tracking-chart-heading h2 { margin-bottom: 0; }
.tracking-chart-legend { display: flex; flex-wrap: wrap; gap: .75rem; color: var(--muted); font-size: .625rem; }
.tracking-chart-legend > span { display: inline-flex; align-items: center; gap: .375rem; }
.tracking-chart-description { margin: .375rem 0 .5rem; font-size: .6875rem; color: var(--muted); }
.tracking-chart-scroll { width: 100%; overflow-x: auto; overscroll-behavior-x: contain; }
.tracking-trend-chart { display: block; width: 100%; height: auto; min-height: 10rem; max-height: 16rem; overflow: visible; }
.tracking-trend-width-320 { min-width: 280px; }
.tracking-trend-width-680 { min-width: 680px; }
.tracking-trend-width-960 { min-width: 960px; }
.tracking-chart-total { fill: #010158; }
.tracking-chart-axis { stroke: #dbe1e9; stroke-width: 1; }
.tracking-chart-label, .tracking-chart-count { text-anchor: middle; fill: #626c80; font-size: 11px; }
.tracking-chart-count { font-size: 12px; fill: #010158; }
.tracking-chart-empty { color: var(--muted); padding: 2rem 0; font-size: .8125rem; margin: 0; }
.tracking-chart-data { font-size: .6875rem; color: var(--muted); }
.tracking-chart-data summary { cursor: pointer; width: fit-content; padding: .375rem 0; }
.tracking-chart-data table { width: 100%; border-collapse: collapse; font-size: .625rem; margin-top: .5rem; }
.tracking-chart-data td, .tracking-chart-data th { padding: .375rem; text-align: left; border-bottom: 1px solid var(--line); }
.tracking-comparison { margin-bottom: 1.5rem; }
.tracking-comparison h2 { font-size: 1rem; margin-bottom: .375rem; }
.tracking-comparison > p { font-size: .6875rem; color: var(--muted); margin-bottom: 1rem; }
.tracking-comparison-scroll { width: 100%; overflow-x: auto; overscroll-behavior-x: contain; }
.tracking-comparison table { width: 100%; border-collapse: collapse; font-size: .75rem; min-width: 660px; }
.tracking-comparison th, .tracking-comparison td { border-top: 1px solid var(--line); padding: .625rem; text-align: right; font-variant-numeric: tabular-nums; }
.tracking-comparison thead th { font-size: .625rem; font-weight: 500; color: var(--muted); background: #f7f8fa; }
.tracking-comparison th:first-child { text-align: left; max-width: 23rem; min-width: 10rem; }
.tracking-comparison th .text-btn { text-align: left; white-space: normal; overflow-wrap: anywhere; padding: .25rem 0; font-size: .75rem; font-weight: 500; }
.tracking-comparison td strong { font-weight: 600; color: var(--navy); }
.tracking-dialog { width: min(39rem, calc(100% - 2rem)); max-height: calc(100dvh - 2rem); overflow-y: auto; border: 1px solid var(--line); border-radius: .875rem; padding: 1.75rem; color: var(--navy); box-shadow: 0 16px 70px #01015830; }
.tracking-dialog::backdrop { background: #14213e80; }
.tracking-dialog-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; }
.tracking-dialog-heading > div { min-width: 0; }
.tracking-dialog h2 { font-size: 1.25rem; margin-bottom: .5rem; overflow-wrap: anywhere; }
.tracking-dialog .eyebrow { margin-bottom: .375rem; }
.tracking-dialog #tracking-dialog-description { font-size: .6875rem; overflow-wrap: anywhere; margin-bottom: .75rem; }
.tracking-attribution { font-size: .6875rem; background: #f5f7fa; padding: .75rem; border-radius: .375rem; overflow-wrap: anywhere; margin-bottom: 1.25rem; }
.tracking-dialog fieldset { border: 0; padding: 0; margin: 0; min-width: 0; }
.tracking-dialog fieldset legend { font-size: .8125rem; font-weight: 500; margin-bottom: .625rem; padding: 0; }
.tracking-status-options { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .5rem; }
.tracking-status-option { display: flex; align-items: center; justify-content: center; gap: .375rem; border: 1px solid var(--line-strong); border-radius: .375rem; padding: .75rem .25rem; font-size: .75rem; cursor: pointer; }
.tracking-status-option input { width: .875rem; min-height: .875rem; height: .875rem; margin: 0; padding: 0; accent-color: var(--navy); }
.tracking-status-option:has(input:checked) { border-color: var(--navy); background: #eef1fa; }
.tracking-dialog fieldset:disabled .tracking-status-option { opacity: .65; cursor: not-allowed; }
.tracking-status-explanation { margin: .625rem 0 1rem; font-size: .6875rem; color: var(--muted); }
.tracking-dialog textarea { resize: vertical; line-height: 1.6; min-height: 6rem; }
.tracking-reason-count { text-align: right; color: var(--muted); font-size: .625rem; margin: .375rem 0 .5rem; }
.tracking-dialog-actions { display: flex; justify-content: flex-end; gap: .75rem; margin-top: 1.25rem; }
.tracking-dialog #tracking-reload-deal { margin-top: .5rem; white-space: normal; }
.tracking-history { border-top: 1px solid var(--line); margin-top: 1.5rem; padding-top: 1.25rem; }
.tracking-history h3 { font-size: .8125rem; font-weight: 600; margin: 0 0 .875rem; }
.tracking-history ol { list-style: none; padding: 0; margin: 0; }
.tracking-history li { border-left: 2px solid #cdd8e8; padding: 0 0 1rem .875rem; margin-left: .25rem; position: relative; }
.tracking-history li::before { content: ''; position: absolute; background: #0399d6; border: 2px solid #fff; width: .625rem; height: .625rem; border-radius: 50%; left: -.375rem; top: .125rem; }
.tracking-history li > div { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .25rem 1rem; }
.tracking-history strong { font-size: .6875rem; font-weight: 500; }
.tracking-history time { font-size: .625rem; color: var(--muted); }
.tracking-history p { margin: .25rem 0 0; font-size: .6875rem; overflow-wrap: anywhere; }
.tracking-history .tracking-history-reason { color: var(--muted); white-space: pre-wrap; }
.tracking-history .tracking-history-baseline { color: var(--muted); font-size: .625rem; }
.tracking-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
@media (max-width: 1100px) {
  .tracking-metrics { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .tracking-chart-grid { grid-template-columns: minmax(210px, .8fr) minmax(0, 1.2fr); }
}
@media (max-width: 800px) {
  .tracking-workspace { padding: 0 1.25rem; }
  .tracking-panel { padding: 1.125rem; }
  .tracking-filter-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .tracking-search { grid-column: 1 / -1; }
  .tracking-chart-grid { grid-template-columns: minmax(0, 1fr); }
  .tracking-distribution { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 1.5rem; }
  .tracking-distribution > h2, .tracking-distribution > .tracking-outcome-hint { grid-column: 1 / -1; }
}
@media (max-width: 650px) {
  .tracking-workspace .workspace-heading { gap: .75rem; }
  .tracking-workspace .workspace-heading h1 { font-size: 1.65rem; }
  .tracking-workspace .workspace-heading > button { min-height: 2.5rem; padding: .5rem .625rem; font-size: .6875rem; }
  .tracking-filter-foot { align-items: flex-start; }
  .tracking-list-heading { display: block; }
  .tracking-sort { justify-content: space-between; margin: .25rem 0 1rem; }
  .tracking-sort select { width: 11rem; }
  .tracking-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; }
  .tracking-table, .tracking-table tbody, .tracking-table tr, .tracking-table td { display: block; width: 100%; }
  .tracking-table tr { border-top: 1px solid var(--line); padding: .75rem 0; }
  .tracking-table td { display: grid; grid-template-columns: 4.25rem minmax(0, 1fr); gap: 0 .625rem; padding: .375rem 0; border: 0; font-size: .75rem; }
  .tracking-table td::before { content: attr(data-label); color: var(--muted); font-size: .6875rem; grid-column: 1; grid-row: 1 / 4; padding-top: .1rem; }
  .tracking-table td > * { grid-column: 2; }
  .tracking-table .tracking-status-wrap { justify-self: start; }
  .tracking-status-tip { right: auto; left: -.25rem; max-width: min(15rem, 62vw); }
  .tracking-pagination { gap: .5rem; font-size: .625rem; }
  .tracking-pagination .secondary { padding: .5rem .625rem; font-size: .6875rem; }
  .tracking-pagination > div { gap: .375rem; }
  .tracking-dialog { padding: 1.25rem; }
  .tracking-status-options { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .tracking-status-option { justify-content: flex-start; padding: .75rem; }
}
@media (max-width: 390px) {
  .tracking-workspace { padding: 0 .75rem; }
  .tracking-panel { padding: 1rem .875rem; }
  .tracking-filter-grid { grid-template-columns: minmax(0, 1fr); }
  .tracking-custom-dates { gap: .5rem; }
  .tracking-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .625rem; }
  .tracking-metric { padding: 1rem; }
  .tracking-metric > strong { font-size: 1.75rem; }
  .tracking-distribution { display: block; }
  .tracking-filter-chip, .tracking-filter-all { padding: .4rem .625rem; font-size: .6875rem; }
  .tracking-dialog { padding: 1rem; width: calc(100% - 1.25rem); }
}
