.transcript-page {
  --tt-navy: #002357;
  --tt-blue: #0b3a6e;
  --tt-bright-blue: #1f6fd1;
  --tt-blue-soft: #eaf1f7;
  --tt-gold: #edbd43;
  --tt-gold-deep: #bc8a36;
  --tt-ink: #102234;
  --tt-muted: #53657a;
  --tt-border: #d7e0e9;
  --tt-soft: #f6f8fb;
  --tt-warn-bg: #fff7e6;
  --tt-warn-text: #6f4300;
  background: #f7f1e6;
  color: #102234;
}

body.profile-page .profile-wrapper {
  width: 100%;
}

.transcript-shell {
  width: 100%;
  max-width: min(var(--tt-page-width, 1200px), 100%);
  margin: 0 auto;
  padding: 24px var(--tt-page-gap, 24px) 42px;
}

.transcript-head,
.transcript-results-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
}

.transcript-head {
  padding: 8px 0 14px;
  border-bottom: 1px solid rgba(11, 58, 110, 0.14);
}
.transcript-head-copy {
  min-width: 0;
}

.report-head-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 8px;
}

.transcript-kicker {
  display: block;
  color: var(--tt-gold-deep);
  font-weight: 800;
  text-transform: uppercase;
  font-size: 12px;
}

.transcript-head h1 {
  margin: 2px 0 0;
  color: var(--tt-navy);
  font-size: clamp(28px, 3.2vw, 38px);
  line-height: 1.05;
}

.transcript-head p {
  margin: 8px 0 0;
  color: var(--tt-muted);
  font-weight: 700;
}

.transcript-status {
  margin: 10px 0;
  background: #fffaf0;
  border: 1px solid #dfc77c;
  border-radius: 8px;
  padding: 10px 12px;
  font-weight: 700;
  color: #5c3a07;
}

.transcript-step,
.transcript-results {
  background: transparent;
  border: 0;
  border-radius: 0;
  padding: 12px 0;
  margin: 14px 0;
  box-shadow: none;
}

.transcript-step {
  border-top: 1px solid var(--tt-border);
}

.transcript-section-title {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}

.transcript-section-title p {
  margin: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--tt-blue);
  padding: 0;
  font-size: 12px;
  font-weight: 900;
  white-space: normal;
}

.transcript-step h2,
.transcript-report h3,
.transcript-results h2 {
  font-size: 18px;
  margin: 0 0 12px;
}

.transcript-choice-row,
.transcript-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.transcript-context-grid {
  display: flex;
  grid-template-columns: minmax(0, .78fr) minmax(240px, 1fr);
  gap: 8px 20px;
  margin: 8px 0 10px;

  flex-wrap: wrap;
}
.transcript-context-grid.compact .transcript-case-context {
  max-width: 270px;
}

.transcript-context-grid > div,
.transcript-session-callout,
.transcript-review-step {
  min-width: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  padding: 4px 0;
}

.transcript-context-grid strong,
.transcript-review-grid strong {
  display: block;
  color: #0b3a6e;
  font-size: 12px;
  text-transform: uppercase;
}

.transcript-context-grid span,
.transcript-review-grid span {
  display: block;
  overflow-wrap: anywhere;
}

.transcript-session-callout {
  color: #53657a;
  font-weight: 700;
}

.transcript-session-callout.connected {
  color: #0b3a6e;
}
#personal-taxpayer-selector {
  max-width: 100%;
}
#personal-taxpayer-select {
  width: 100%;
  height: 32px;
  box-sizing: border-box;
  padding: 6px 10px;
  border-radius: 6px;
  font-size: 13px;
  white-space: nowrap;
}
#personal-add-ons {
  display: grid;
  gap: 4px;
  margin: 8px 0 10px !important;
}
#personal-add-ons[hidden] {
  display: none !important;
}
#personal-add-ons label {
  margin: 0 !important;
}
#personal-retr-years-label {
  margin-top: 4px !important;
}
#personal-retr-years {
  display: flex;
  flex-wrap: wrap;
  gap: 5px 10px;
}
#personal-retr-years label {
  margin: 0 !important;
  white-space: nowrap;
}
#personal-transcripts > .transcript-actions {
  align-items: end;
  margin-top: 8px;
}

.transcript-review-step {
  margin-top: 12px;
}

.transcript-review-step h3 {
  margin: 0 0 10px;
}

.transcript-review-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-bottom: 12px;
}

.transcript-review-grid > div {
  min-width: 0;
  border-top: 1px solid #e5edf4;
  padding-top: 8px;
}

.transcript-choice {
  border: 1px solid var(--tt-blue);
  background: #fff;
  color: var(--tt-blue);
  border-radius: 8px;
  padding: 10px 18px;
  font-weight: 800;
  cursor: pointer;
}
.transcript-request-mode {
  display: grid;
  gap: 8px;
  margin: 10px 0;
}
.transcript-request-mode h3,
#personal-add-ons legend,
#personal-response-review > strong {
  margin: 0;
  color: var(--tt-navy);
  font-size: 15px;
  font-weight: 800;
}
.transcript-mode-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}
.transcript-mode-card,
.transcript-compact-check,
#personal-add-ons label,
.transcript-year-grid label,
.transcript-review-row label {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}
.transcript-mode-card {
  min-width: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  padding: 4px 0;
  cursor: pointer;
}
.transcript-mode-card.is-selected {
  border-color: transparent;
  background: transparent;
}
.transcript-mode-card strong,
.transcript-mode-card small,
.transcript-download-options span,
.transcript-download-options small,
.transcript-caf-field span,
.transcript-caf-field small {
  display: block;
}
.transcript-mode-card strong {
  color: var(--tt-navy);
  font-size: 13px;
  line-height: 1.2;
  text-transform: uppercase;
}
.transcript-mode-card small,
.transcript-download-options small,
.transcript-caf-field small,
.transcript-note {
  color: var(--tt-muted);
  font-size: 12px;
  font-weight: 700;
}
.transcript-manual-matrix {
  border: 1px solid #d7e0e9;
  border-radius: 8px;
  background: #fff;
  overflow: hidden;
}
.transcript-matrix-row {
  display: grid;
  grid-template-columns: 92px 1fr;
  gap: 10px;
  padding: 8px 10px;
  border-bottom: 1px solid #edf1f5;
}
.transcript-matrix-row:last-child {
  border-bottom: 0;
}
.transcript-matrix-label strong,
.transcript-matrix-label small {
  display: block;
}
.transcript-matrix-label strong {
  color: var(--tt-navy);
  font-weight: 900;
}
.transcript-matrix-label small {
  color: var(--tt-muted);
  font-size: 11px;
}
.transcript-year-grid {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 5px 10px;
}
.transcript-year-grid label {
  min-height: 24px;
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
}
.transcript-download-options {
  max-width: 340px;
  margin: 10px 0 6px !important;
}
.transcript-download-options select {
  margin-top: 4px;
}
.transcript-note {
  margin: 2px 0 10px;
}
.transcript-caf-field {
  width: 180px;
  margin: 0 !important;
}
.transcript-caf-field input {
  width: 160px !important;
  height: 36px;
  margin-top: 4px;
}

.transcript-choice.active {
  background: var(--tt-blue);
  color: #fff;
}

.transcript-page .pill.blue {
  background: var(--tt-blue);
  border-color: var(--tt-blue);
  color: #fff;
}
.transcript-page .pill.bright {
  background: var(--tt-bright-blue);
  border-color: #1554a5;
  color: #fff;
}

.transcript-page .pill.gold {
  background: var(--tt-gold);
  border-color: var(--tt-gold-deep);
  color: var(--tt-blue);
}

@media (max-width: 420px) {
  .transcript-shell {
    width: calc(100% - 20px);
  }

  .transcript-context-grid,
  .transcript-mode-grid,
  .transcript-review-grid {
    grid-template-columns: 1fr;
  }

  .transcript-actions > label,
  .transcript-form label,
  .transcript-form input,
  .transcript-form select {
    min-width: 0;
    max-width: 100%;
  }
}

.transcript-actions[hidden] {
  display: none !important;
}

.transcript-form > div:not(.transcript-actions) {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.transcript-form label {
  display: grid;
  gap: 5px;
  font-weight: 700;
}

.transcript-form input,
.transcript-form select {
  width: 100%;
  box-sizing: border-box;
  border: 1px solid #c5d1de;
  border-radius: 6px;
  padding: 9px 10px;
  font: inherit;
}

.transcript-form .transcript-actions {
  margin-top: 12px;
}

.transcript-progress {
  display: grid;
  gap: 6px;
  margin: 0 0 12px;
  padding-left: 22px;
}

.transcript-progress li {
  color: #53657a;
}

.transcript-progress li.complete {
  color: #0b3a6e;
  font-weight: 700;
}

.transcript-data-input {
  display: grid;
  gap: 6px;
  margin-bottom: 12px;
  font-weight: 700;
}

.tds-product-list {
  display: grid;
  gap: 8px;
  margin: 0 0 12px;
}

.tds-product-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  border-top: 1px solid #e5edf4;
  padding-top: 8px;
}

.transcript-data-input textarea {
  width: 100%;
  box-sizing: border-box;
  border: 1px solid #c5d1de;
  border-radius: 6px;
  padding: 9px 10px;
  font: inherit;
  resize: vertical;
}

.transcript-report {
  margin-top: 16px;
}

.report-muted {
  color: #53657a;
}

.review-required {
  color: var(--tt-warn-text);
  font-weight: 800;
  margin: 12px 0;
}

.report-history,
.report-section,
.report-overview,
.report-attention,
.report-year,
.report-balance-panel,
.report-estimate,
.final-metric-grid {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;

  gap: 0;

  padding: 0;
}

.report-history,
.report-section,
.report-overview,
.report-attention,
.report-year,
.report-estimate {
  padding: 10px 0;
  margin: 10px 0;

  border-bottom: 1px solid var(--tt-border);
}
.transcript-report-page .transcript-report {
  border: 0;
  border-radius: 0;
  background: transparent;
  padding: 0;
  box-shadow: none;
}

.report-section h2,
.report-overview h2,
.report-attention h2,
.report-year h2 {
  margin: 0 0 10px;
  color: var(--tt-blue);
}

.report-section h3,
.report-table-section h3 {
  margin: 0 0 8px;
  color: #17314d;
  font-size: 15px;
}

.report-section-nav { display: flex; flex-wrap: wrap; gap: 8px; margin: 12px 0; }
.report-nav-link.active { text-decoration: underline; text-underline-offset: 3px; }

.report-compact-note {
  color: var(--tt-muted);
  font-weight: 700;
  line-height: 1.45;
}

.final-highlights {
  border-top: 3px solid var(--tt-blue);
}

.final-metric-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  padding: 14px;
}

.final-highlights-grid {
  background: transparent;
  border: 0;
  box-shadow: none;
  padding: 0;
}

.final-totals-grid {
  border-top: 3px solid var(--tt-gold);
}

.final-metric {
  min-width: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  padding: 6px 10px;

  border-bottom: 1px solid var(--tt-border);
}

.final-metric:has(small) {
  background: #fff;
}

.final-metric span,
.final-metric small,
.final-metric em,
.final-cell small {
  display: block;
  color: var(--tt-muted);
  font-size: 11px;
}

.final-metric span,
.final-cell small {
  text-transform: uppercase;
  font-weight: 800;
  letter-spacing: 0;
}

.final-metric strong,
.final-cell strong {
  display: block;
  color: var(--tt-ink);
  overflow-wrap: anywhere;
}

.final-cell strong {
  font-weight: 800;
}

.final-cell small {
  margin-top: 3px;
}

.report-badge {
  display: inline;
  color: var(--tt-blue);
  font-size: 13px;
  font-weight: 700;
}

.report-badge.attention {
  color: var(--tt-warn-text);
}

.report-attention-urgent {
  border-color: #dfc77c;
  background: #fffaf0;
}

.report-findings {
  display: grid;
  gap: 8px;
  padding-left: 18px;
}

.report-table-section {
  margin: 14px 0;
}

.report-table-scroll {
  max-width: 100%;
  overflow-x: auto;
  border: 1px solid var(--tt-border);
  border-radius: 8px;
  background: #fff;
}

.report-table-scroll table {
  width: 100%;
  border-collapse: collapse;
  table-layout: auto;
}

.report-table-scroll th,
.report-table-scroll td {
  min-width: 90px;
  border-bottom: 1px solid #e5edf4;
  padding: 7px 8px;
  text-align: left;
  vertical-align: top;
  font-size: 13px;
}

.report-table-scroll th {
  background: #eef3f8;
  color: #0b1f33;
  font-weight: 650;
}

.report-table-scroll td {
  overflow-wrap: anywhere;
}

.report-detail {
  margin: 10px 0;
  border: 1px solid #e5edf4;
  border-radius: 8px;
  padding: 10px 12px;
}

.final-table-collections-activity-timeline .report-table-scroll table {
  table-layout: auto;
}

.final-table-collections-activity-timeline td:nth-child(5),
.final-table-collections-activity-timeline td:nth-child(6) {
  min-width: 180px;
}

.final-table-wage-income td:nth-child(4),
.final-table-account-details td:nth-child(11) {
  min-width: 140px;
}

.transcript-report-launch summary {
  cursor: pointer;
  color: var(--tt-blue);
  font-size: 1.05rem;
  font-weight: 900;
}

.transcript-report-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
}

.transcript-report-button {
  justify-content: center;
  min-height: 30px;
  text-align: center;
}

.transcript-pdf-button {
  margin-left: auto;
}

.transcript-plan-summary {
  list-style: none;
  border: 1px solid rgba(11, 58, 110, 0.14);
  border-radius: 8px;
  background: var(--tt-soft);
  padding: 8px 10px;
  font-weight: 900;
  color: var(--tt-blue);
}
.transcript-plan-summary.is-clean {
  background: #fff7de;
  border-color: #dfc77c;
  color: #4f3505;
}

.transcript-plan-details {
  list-style: none;
}
.transcript-review-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  padding: 4px 0;
  border-bottom: 1px solid #edf1f5;
}
.transcript-review-row label {
  min-width: 0;
  margin: 0 !important;
}
.transcript-review-row span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.transcript-review-row .pill {
  min-height: 28px;
  padding: 4px 9px;
}
#personal-response-review {
  margin-top: 10px;
}
#personal-response-review .transcript-actions {
  margin: 6px 0;
}
#personal-results {
  display: grid;
  gap: 6px;
  padding-left: 0 !important;
}

.report-detail summary,
.report-year summary {
  cursor: pointer;
  color: #0b3a6e;
  font-weight: 800;
}

.report-meta,
.report-tools {
  display: grid;
  gap: 8px;
}

.report-meta > div {
  border: 0;
  border-radius: 0;
  padding: 2px 0;
  background: #f8fbfd;
  overflow-wrap: anywhere;
}

.report-meta span {
  display: block;
  color: #53657a;
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
}

.report-tools select {
  width: 100%;
  max-width: 420px;
  border: 1px solid #c5d1de;
  border-radius: 6px;
  padding: 8px 10px;
}


.report-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
}

.transcript-table-wrap {
  overflow-x: auto;
  border: 1px solid #d7e0e9;
  border-radius: 8px;
}

.transcript-table-wrap table {
  width: 100%;
  min-width: 720px;
  border-collapse: collapse;
}

.transcript-table-wrap th,
.transcript-table-wrap td {
  padding: 7px 8px;
  border-bottom: 1px solid #e5edf4;
  text-align: left;
  font-size: 13px;
}

.transcript-table-wrap th {
  background: #eaf1f7;
}

.report-table-scroll table {
  min-width: 100%;
}

.transcript-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.transcript-list details,
.transcript-list .transcript-empty {
  border: 1px solid #e5edf4;
  border-radius: 8px;
  padding: 10px 12px;
}

.transcript-list summary {
  cursor: pointer;
  font-weight: 800;
  color: #0b3a6e;
}

.transcript-source {
  color: #53657a;
  font-size: 12px;
  margin: 4px 0 0;
}

@media (max-width: 760px) {
  .transcript-head,
  .transcript-results-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .report-head-actions {
    justify-content: flex-start;
  }

  .transcript-form > div:not(.transcript-actions) {
    grid-template-columns: 1fr;
  }

  .transcript-context-grid,
  .transcript-mode-grid,
  .transcript-review-grid {
    grid-template-columns: 1fr;
  }

  .final-metric-grid {
    grid-template-columns: 1fr;
  }

  .transcript-workflow,
  .report-section-nav {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }


}

@media print {
  .tt-header,
  .report-screen-only,
  .report-head-actions {
    display: none !important;
  }

  .transcript-page {
    background: #fff;
  }

  .transcript-shell {
    width: 100%;
    margin: 0;
  }

  .report-section,
  .report-overview,
  .report-attention,
  .report-year,
  .final-metric-grid {
    box-shadow: none;
    break-inside: avoid;
  }

  .report-compact-note {
    display: block !important;
  }

  .report-table-scroll {
    overflow: visible;
  }

  .report-table-scroll table {
    min-width: 0;
  }
}

.irs-transcript-profile-section {
  width: 100%;
}

.profile-transcript-action {
  display: flex;
  justify-content: center;
  align-items: center;
}

.transcript-profile-meta {
  color: #53657a;
  font-weight: 700;
  margin-bottom: 12px;
}

.transcript-profile-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.transcript-profile-grid h3 {
  margin: 0 0 8px;
  font-size: 15px;
  color: #0b3a6e;
}

.transcript-profile-list {
  display: grid;
  gap: 6px;
}

.transcript-profile-line {
  border-top: 1px solid #e5edf4;
  padding-top: 6px;
  overflow-wrap: anywhere;
}

@media (max-width: 900px) {
  .transcript-profile-grid {
    grid-template-columns: 1fr;
  }
}

#personal-start { margin-left: auto; }
#personal-documents, #personal-highlights, #personal-evidence, #personal-reviewed-results { margin-top: 12px; }
#personal-highlight-values { display: flex; flex-wrap: wrap; gap: 6px 24px; }
#personal-reviewed-results > summary { cursor: pointer; font-weight: 700; }
