:root {
  color-scheme: light;
  --cv1-bg: #f3f6fa;
  --cv1-surface: #ffffff;
  --cv1-surface-subtle: #f8fafc;
  --cv1-surface-raised: #eef3f8;
  --cv1-ink: #172033;
  --cv1-muted: #667085;
  --cv1-faint: #8792a2;
  --cv1-line: #dfe5ec;
  --cv1-line-strong: #cbd4df;
  --cv1-brand: #315ee7;
  --cv1-brand-dark: #244cc5;
  --cv1-brand-soft: #edf3ff;
  --cv1-positive: #18765b;
  --cv1-positive-soft: #ecf8f3;
  --cv1-attention: #96651f;
  --cv1-attention-soft: #fff7e8;
  --cv1-critical: #b43b45;
  --cv1-critical-soft: #fff1f2;
  --cv1-sidebar: #101a2a;
  --cv1-sidebar-muted: #aeb9ca;
  --cv1-radius-sm: 10px;
  --cv1-radius: 14px;
  --cv1-radius-lg: 18px;
  --cv1-shadow-sm: 0 1px 2px rgba(18, 31, 53, 0.04);
  --cv1-shadow-card: 0 10px 30px rgba(18, 31, 53, 0.055);
  --cv1-shadow-menu: 0 20px 60px rgba(18, 31, 53, 0.16), 0 3px 10px rgba(18, 31, 53, 0.06);
  --cv1-sidebar-width: 240px;
  --cv1-topbar-height: 72px;
  --cv1-content-width: 1240px;
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

* {
  box-sizing: border-box;
}

html {
  min-width: 320px;
  background: var(--cv1-bg);
  scroll-behavior: smooth;
}

body.cv1-body {
  margin: 0;
  min-width: 320px;
  color: var(--cv1-ink);
  background: var(--cv1-bg);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}

.cv1-body button,
.cv1-body input,
.cv1-body select,
.cv1-body textarea {
  font: inherit;
}

.cv1-body a {
  color: inherit;
  text-decoration: none;
}

.cv1-body button,
.cv1-body summary,
.cv1-body a {
  -webkit-tap-highlight-color: transparent;
}

.cv1-body summary {
  list-style: none;
}

.cv1-body summary::-webkit-details-marker {
  display: none;
}

.cv1-icon {
  flex: 0 0 auto;
  stroke: currentColor;
  stroke-width: 1.75;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.cv1-shell {
  min-height: 100vh;
}

.cv1-sidebar {
  position: fixed;
  inset: 0 auto 0 0;
  z-index: 40;
  display: flex;
  width: var(--cv1-sidebar-width);
  flex-direction: column;
  padding: 24px 16px 20px;
  color: #fff;
  background: var(--cv1-sidebar);
  border-right: 1px solid rgba(255, 255, 255, 0.06);
}

.cv1-logo {
  display: inline-flex;
  align-items: center;
  gap: 11px;
  min-height: 46px;
  padding: 0 8px;
  color: #fff;
}

.cv1-logo-mark {
  display: grid;
  width: 28px;
  height: 28px;
  place-items: center;
  color: #fff;
  background: var(--cv1-brand);
  border-radius: 10px;
  font-size: 15px;
  font-weight: 760;
  letter-spacing: -0.04em;
}

.cv1-logo-copy {
  display: grid;
  min-width: 0;
  gap: 1px;
}

.cv1-logo-copy small {
  color: #8290a6;
  font-size: 11px;
  line-height: 1.1;
}

.cv1-logo-word {
  font-size: 18px;
  font-weight: 720;
  letter-spacing: -0.025em;
}

.cv1-nav {
  display: grid;
  gap: 5px;
  margin-top: 34px;
}

.cv1-nav-label {
  padding: 0 12px 7px;
  color: #718098;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.cv1-nav-label-secondary { margin-top: 22px; }

.cv1-nav-link {
  display: flex;
  min-height: 46px;
  align-items: center;
  gap: 12px;
  padding: 0 12px;
  color: var(--cv1-sidebar-muted);
  border: 1px solid transparent;
  border-radius: 11px;
  font-size: 14px;
  font-weight: 570;
  transition: color 150ms ease, background 150ms ease, border-color 150ms ease;
}

.cv1-nav-link:hover,
.cv1-nav-link:focus-visible {
  color: #fff;
  background: rgba(255, 255, 255, 0.06);
  outline: none;
}

.cv1-nav-link.is-active {
  color: #fff;
  background: rgba(84, 126, 255, 0.16);
  border-color: rgba(120, 153, 255, 0.18);
}

.cv1-sidebar-foot {
  display: grid;
  gap: 18px;
  margin-top: auto;
  padding: 0 10px;
}

.cv1-sidebar-note {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 64px;
  padding: 11px 12px;
  color: #d5d9e0;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 12px;
}

.cv1-sidebar-note > span { display: grid; gap: 3px; }
.cv1-sidebar-note small { color: #78869a; font-size: 11px; }

.cv1-sidebar-note-label {
  max-width: 88px;
  color: var(--cv1-sidebar-muted);
  font-size: 12px;
  line-height: 1.35;
}

.cv1-sidebar-note strong {
  font-size: 22px;
  font-variant-numeric: tabular-nums;
}

.cv1-copyright {
  color: #707784;
  font-size: 11px;
}

.cv1-workspace {
  min-width: 0;
  min-height: 100vh;
  margin-left: var(--cv1-sidebar-width);
}

.cv1-topbar {
  position: sticky;
  top: 0;
  z-index: 30;
  display: flex;
  min-height: var(--cv1-topbar-height);
  align-items: center;
  justify-content: space-between;
  padding: 0 36px;
  background: #fff;
  border-bottom: 1px solid var(--cv1-line);
}

.cv1-topbar-title {
  color: #3e4a5c;
  font-size: 15px;
  font-weight: 680;
}

.cv1-topbar-actions {
  display: flex;
  align-items: center;
  gap: 10px;
}

.cv1-topbar-cta {
  display: inline-flex;
  min-height: 42px;
  align-items: center;
  gap: 8px;
  padding: 0 14px;
  color: #fff !important;
  background: var(--cv1-brand);
  border: 1px solid var(--cv1-brand);
  border-radius: 11px;
  font-size: 13px;
  font-weight: 700;
  transition: background 180ms ease, transform 180ms ease;
}

.cv1-topbar-cta:hover { background: var(--cv1-brand-dark); transform: translateY(-1px); }

.cv1-credit-pill,
.cv1-help {
  display: inline-flex;
  min-height: 42px;
  align-items: center;
  gap: 7px;
  padding: 0 11px;
  color: var(--cv1-muted);
  border: 1px solid var(--cv1-line);
  border-radius: 11px;
  background: var(--cv1-surface);
  font-size: 13px;
  transition: border-color 150ms ease, color 150ms ease;
}

.cv1-credit-pill:hover,
.cv1-help:hover {
  color: var(--cv1-ink);
  border-color: var(--cv1-line-strong);
}

.cv1-credit-pill strong {
  color: var(--cv1-ink);
  font-variant-numeric: tabular-nums;
}

.cv1-account-menu,
.cv1-overflow {
  position: relative;
}

.cv1-account-menu > summary {
  display: flex;
  min-height: 44px;
  cursor: pointer;
  align-items: center;
  gap: 8px;
  padding: 3px 8px 3px 4px;
  border: 1px solid transparent;
  border-radius: 10px;
}

.cv1-account-menu > summary:hover,
.cv1-account-menu[open] > summary {
  background: var(--cv1-surface-subtle);
  border-color: var(--cv1-line);
}

.cv1-avatar {
  display: grid;
  width: 32px;
  height: 32px;
  place-items: center;
  color: #fff;
  background: #2a313d;
  border-radius: 9px;
  font-size: 13px;
  font-weight: 700;
}

.cv1-account-name {
  max-width: 126px;
  overflow: hidden;
  font-size: 13px;
  font-weight: 620;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cv1-account-popover,
.cv1-overflow-menu {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  z-index: 50;
  width: 228px;
  padding: 7px;
  background: var(--cv1-surface);
  border: 1px solid var(--cv1-line);
  border-radius: 12px;
  box-shadow: var(--cv1-shadow-menu);
}

.cv1-account-meta {
  display: grid;
  gap: 2px;
  margin: -1px -1px 6px;
  padding: 10px 11px 12px;
  border-bottom: 1px solid var(--cv1-line);
}

.cv1-account-meta strong,
.cv1-account-meta span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cv1-account-meta strong {
  font-size: 13px;
}

.cv1-account-meta span {
  color: var(--cv1-muted);
  font-size: 11px;
}

.cv1-account-popover a,
.cv1-account-popover button,
.cv1-overflow-menu a {
  display: flex;
  width: 100%;
  min-height: 44px;
  cursor: pointer;
  align-items: center;
  gap: 9px;
  padding: 0 10px;
  color: #363c46;
  background: transparent;
  border: 0;
  border-radius: 8px;
  font-size: 13px;
  text-align: left;
}

.cv1-account-popover a:hover,
.cv1-account-popover button:hover,
.cv1-overflow-menu a:hover {
  color: var(--cv1-ink);
  background: var(--cv1-surface-subtle);
}

.cv1-account-popover form {
  margin: 4px 0 0;
  padding-top: 4px;
  border-top: 1px solid var(--cv1-line);
}

.cv1-main {
  min-width: 0;
  padding: 40px 36px 80px;
}

.cv1-result-container {
  width: min(100%, var(--cv1-content-width));
  margin: 0 auto;
}

.cv1-result-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 28px;
  margin-bottom: 24px;
}

.cv1-result-titleline {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
}

.cv1-result-header h1 {
  margin: 0;
  font-size: clamp(28px, 3vw, 38px);
  font-weight: 690;
  letter-spacing: -0.038em;
  line-height: 1.1;
}

.cv1-result-header p {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin: 10px 0 0;
  color: var(--cv1-muted);
  font-size: 14px;
}

.cv1-result-header p strong {
  color: #3b414b;
  font-weight: 620;
}

.cv1-bureau-status {
  display: inline-flex;
  min-height: 28px;
  align-items: center;
  gap: 5px;
  padding: 0 9px;
  color: var(--cv1-positive);
  background: var(--cv1-positive-soft);
  border: 1px solid #d9eee6;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 650;
  white-space: nowrap;
}

.cv1-result-actions {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 8px;
}

.cv1-button,
.cv1-icon-button {
  display: inline-flex;
  min-height: 44px;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 0 14px;
  border: 1px solid transparent;
  border-radius: 9px;
  font-size: 13px;
  font-weight: 620;
  transition: background 150ms ease, border-color 150ms ease, color 150ms ease, transform 150ms ease;
}

.cv1-button:active,
.cv1-icon-button:active {
  transform: translateY(1px);
}

.cv1-button-primary {
  color: #fff;
  background: var(--cv1-brand);
  border-color: var(--cv1-brand);
}

.cv1-button-primary:hover {
  background: var(--cv1-brand-dark);
  border-color: var(--cv1-brand-dark);
}

.cv1-button-secondary,
.cv1-icon-button {
  color: #343a44;
  background: var(--cv1-surface);
  border-color: var(--cv1-line-strong);
}

.cv1-button-secondary:hover,
.cv1-icon-button:hover {
  background: var(--cv1-surface-subtle);
}

.cv1-icon-button {
  width: 44px;
  padding: 0;
}

.cv1-overflow-menu {
  width: 202px;
}

.cv1-status {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  margin-bottom: 16px;
  padding: 20px 22px;
  background: var(--cv1-surface);
  border: 1px solid var(--cv1-line);
  border-left-width: 3px;
  border-radius: var(--cv1-radius-lg);
  box-shadow: var(--cv1-shadow-sm);
}

.cv1-status-icon {
  display: grid;
  width: 38px;
  height: 38px;
  flex: 0 0 auto;
  place-items: center;
  border-radius: 10px;
}

.cv1-status h2 {
  margin: 0;
  font-size: 18px;
  font-weight: 680;
  letter-spacing: -0.015em;
}

.cv1-status p {
  max-width: 770px;
  margin: 4px 0 0;
  color: var(--cv1-muted);
  font-size: 13px;
}

.cv1-status-stable {
  border-left-color: var(--cv1-positive);
}

.cv1-status-stable .cv1-status-icon {
  color: var(--cv1-positive);
  background: var(--cv1-positive-soft);
}

.cv1-status-attention {
  border-left-color: #c28a33;
}

.cv1-status-attention .cv1-status-icon {
  color: var(--cv1-attention);
  background: var(--cv1-attention-soft);
}

.cv1-status-risk,
.cv1-status-critical {
  border-left-color: var(--cv1-critical);
}

.cv1-status-risk .cv1-status-icon,
.cv1-status-critical .cv1-status-icon {
  color: var(--cv1-critical);
  background: var(--cv1-critical-soft);
}

.cv1-kpis {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
}

.cv1-kpi {
  position: relative;
  min-width: 0;
  min-height: 152px;
  padding: 19px 18px 16px;
  background: var(--cv1-surface);
  border: 1px solid var(--cv1-line);
  border-radius: var(--cv1-radius);
  box-shadow: var(--cv1-shadow-sm);
}

.cv1-kpi > span {
  display: block;
  min-height: 21px;
  color: var(--cv1-muted);
  font-size: 12px;
  font-weight: 600;
}

.cv1-kpi > strong {
  display: block;
  margin-top: 12px;
  overflow-wrap: anywhere;
  font-size: clamp(20px, 1.75vw, 27px);
  font-weight: 690;
  letter-spacing: -0.035em;
  line-height: 1.12;
  font-variant-numeric: tabular-nums;
}

.cv1-kpi-payment > strong {
  font-size: clamp(18px, 1.55vw, 24px);
}

.cv1-kpi > small {
  display: block;
  margin-top: 8px;
  color: var(--cv1-faint);
  font-size: 10px;
  line-height: 1.4;
}

.cv1-kpi.is-attention::before,
.cv1-kpi.is-critical::before {
  position: absolute;
  inset: 0 18px auto;
  height: 2px;
  content: "";
  background: #c28a33;
  border-radius: 0 0 3px 3px;
}

.cv1-kpi.is-critical::before {
  background: var(--cv1-critical);
}

.cv1-inline-details {
  margin-top: 7px;
}

.cv1-inline-details > summary {
  width: fit-content;
  cursor: pointer;
  color: var(--cv1-brand);
  font-size: 11px;
  font-weight: 620;
}

.cv1-inline-details dl {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2px;
  margin: 8px 0 0;
  padding-top: 8px;
  border-top: 1px solid var(--cv1-line);
}

.cv1-inline-details dt {
  color: var(--cv1-muted);
  font-size: 10px;
}

.cv1-inline-details dd {
  margin: 0 0 4px;
  font-size: 11px;
  font-weight: 630;
}

.cv1-section {
  margin-top: 16px;
  padding: 25px 26px;
  background: var(--cv1-surface);
  border: 1px solid var(--cv1-line);
  border-radius: var(--cv1-radius-lg);
  box-shadow: var(--cv1-shadow-sm);
}

.cv1-section-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 20px;
}

.cv1-section-heading-split {
  align-items: center;
}

.cv1-section h2,
.cv1-quality h2 {
  margin: 3px 0 0;
  font-size: 21px;
  font-weight: 680;
  letter-spacing: -0.025em;
}

.cv1-eyebrow {
  color: var(--cv1-faint);
  font-size: 10px;
  font-weight: 690;
  letter-spacing: 0.085em;
  text-transform: uppercase;
}

.cv1-section-count {
  display: grid;
  min-width: 34px;
  height: 34px;
  place-items: center;
  color: #4c535e;
  background: var(--cv1-surface-subtle);
  border: 1px solid var(--cv1-line);
  border-radius: 9px;
  font-weight: 690;
  font-variant-numeric: tabular-nums;
}

.cv1-findings {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 30px;
}

.cv1-finding {
  display: flex;
  min-width: 0;
  align-items: flex-start;
  gap: 11px;
  padding: 14px 0;
  border-top: 1px solid var(--cv1-line);
}

.cv1-finding:nth-child(-n + 2) {
  border-top: 0;
}

.cv1-finding > span {
  display: grid;
  width: 28px;
  height: 28px;
  flex: 0 0 auto;
  place-items: center;
  border-radius: 8px;
}

.cv1-finding-positive > span {
  color: var(--cv1-positive);
  background: var(--cv1-positive-soft);
}

.cv1-finding-info > span {
  color: var(--cv1-brand);
  background: var(--cv1-brand-soft);
}

.cv1-finding-attention > span {
  color: var(--cv1-attention);
  background: var(--cv1-attention-soft);
}

.cv1-finding-critical > span {
  color: var(--cv1-critical);
  background: var(--cv1-critical-soft);
}

.cv1-finding strong {
  display: block;
  font-size: 14px;
  font-weight: 640;
}

.cv1-finding p {
  margin: 3px 0 0;
  color: var(--cv1-muted);
  font-size: 12px;
}

.cv1-obligation-table-head,
.cv1-obligation-row {
  display: grid;
  grid-template-columns: minmax(190px, 1.7fr) 90px minmax(110px, 0.8fr) minmax(118px, 0.9fr) minmax(110px, 0.8fr) 132px 22px;
  gap: 14px;
  align-items: center;
}

.cv1-obligation-table-head {
  padding: 0 16px 10px;
  color: var(--cv1-faint);
  font-size: 10px;
  font-weight: 650;
  letter-spacing: 0.02em;
}

.cv1-obligations {
  border-top: 1px solid var(--cv1-line);
}

.cv1-obligation {
  border-bottom: 1px solid var(--cv1-line);
}

.cv1-obligation-row {
  min-height: 72px;
  cursor: pointer;
  padding: 13px 16px;
  transition: background 140ms ease;
}

.cv1-obligation-row:hover,
.cv1-obligation[open] > .cv1-obligation-row {
  background: var(--cv1-surface-subtle);
}

.cv1-obligation-creditor,
.cv1-obligation-cell {
  min-width: 0;
}

.cv1-obligation-creditor strong,
.cv1-obligation-creditor small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
}

.cv1-obligation-creditor strong {
  font-size: 13px;
  font-weight: 650;
  white-space: nowrap;
}

.cv1-obligation-creditor small {
  margin-top: 3px;
  color: var(--cv1-muted);
  font-size: 10px;
  white-space: nowrap;
}

.cv1-obligation-cell strong {
  display: block;
  overflow-wrap: anywhere;
  font-size: 12px;
  font-weight: 620;
  font-variant-numeric: tabular-nums;
}

.cv1-obligation-cell.is-unknown strong {
  color: var(--cv1-attention);
  font-weight: 590;
}

.cv1-obligation-cell.is-critical strong {
  color: var(--cv1-critical);
}

.cv1-source-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}

.cv1-source-badges > span {
  display: inline-flex;
  min-height: 22px;
  align-items: center;
  padding: 0 6px;
  color: #555d69;
  background: #f2f4f6;
  border: 1px solid #e3e6ea;
  border-radius: 6px;
  font-size: 9px;
  font-weight: 660;
}

.cv1-obligation-chevron {
  display: grid;
  color: var(--cv1-faint);
  place-items: center;
  transition: transform 160ms ease;
}

.cv1-obligation[open] .cv1-obligation-chevron {
  transform: rotate(180deg);
}

.cv1-obligation-detail {
  padding: 18px 16px 22px;
  background: #fafbfc;
  border-top: 1px solid var(--cv1-line);
}

.cv1-detail-facts {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.cv1-detail-facts > div {
  display: grid;
  gap: 3px;
  padding: 12px;
  background: var(--cv1-surface);
  border: 1px solid var(--cv1-line);
  border-radius: 9px;
}

.cv1-detail-facts span {
  color: var(--cv1-muted);
  font-size: 10px;
}

.cv1-detail-facts strong {
  overflow-wrap: anywhere;
  font-size: 12px;
}

.cv1-source-compare {
  margin-top: 18px;
}

.cv1-source-compare h4 {
  margin: 0 0 10px;
  font-size: 12px;
}

.cv1-source-compare-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 9px;
}

.cv1-source-compare-grid article {
  padding: 12px;
  background: var(--cv1-surface);
  border: 1px solid var(--cv1-line);
  border-radius: 9px;
}

.cv1-source-compare-grid article > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 10px;
}

.cv1-source-compare-grid article > div strong {
  font-size: 11px;
}

.cv1-source-compare-grid article > div span {
  color: var(--cv1-faint);
  font-size: 9px;
}

.cv1-source-compare-grid dl {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 5px 8px;
  margin: 0;
  font-size: 10px;
}

.cv1-source-compare-grid dt {
  color: var(--cv1-muted);
}

.cv1-source-compare-grid dd {
  margin: 0;
  font-weight: 620;
  text-align: right;
}

.cv1-table-note {
  margin: 12px 0 0;
  color: var(--cv1-faint);
  font-size: 10px;
}

.cv1-empty-state,
.cv1-calm-message {
  padding: 24px;
  color: var(--cv1-muted);
  background: var(--cv1-surface-subtle);
  border: 1px dashed var(--cv1-line-strong);
  border-radius: 10px;
  font-size: 13px;
  text-align: center;
}

.cv1-two-column {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.cv1-two-column .cv1-section {
  min-width: 0;
}

.cv1-activity-values {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  overflow: hidden;
  background: var(--cv1-line);
  border: 1px solid var(--cv1-line);
  border-radius: 10px;
}

.cv1-activity-values-three {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.cv1-activity-values > div {
  display: grid;
  gap: 2px;
  padding: 16px;
  background: var(--cv1-surface-subtle);
}

.cv1-activity-values strong {
  overflow-wrap: anywhere;
  font-size: 22px;
  font-weight: 690;
  letter-spacing: -0.025em;
  font-variant-numeric: tabular-nums;
}

.cv1-activity-values span {
  color: var(--cv1-muted);
  font-size: 10px;
}

.cv1-activity-card > p {
  margin: 13px 0 0;
  color: var(--cv1-muted);
  font-size: 11px;
}

.cv1-risk-list {
  display: grid;
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--cv1-line);
  border-radius: 10px;
}

.cv1-risk-item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 15px 16px;
  background: var(--cv1-surface);
}

.cv1-risk-item + .cv1-risk-item {
  border-top: 1px solid var(--cv1-line);
}

.cv1-risk-item > span {
  display: grid;
  width: 26px;
  height: 26px;
  flex: 0 0 auto;
  place-items: center;
  color: var(--cv1-attention);
  background: var(--cv1-attention-soft);
  border-radius: 7px;
}

.cv1-risk-critical > span {
  color: var(--cv1-critical);
  background: var(--cv1-critical-soft);
}

.cv1-risk-item strong {
  display: block;
  font-size: 13px;
}

.cv1-risk-item p {
  margin: 3px 0 0;
  color: var(--cv1-muted);
  font-size: 11px;
}

.cv1-quality {
  padding-top: 22px;
  padding-bottom: 22px;
}

.cv1-quality-summary {
  display: grid;
  grid-template-columns: 42px minmax(240px, 1fr) auto auto;
  align-items: center;
  gap: 14px;
}

.cv1-quality-icon {
  display: grid;
  width: 40px;
  height: 40px;
  place-items: center;
  color: #56606e;
  background: var(--cv1-surface-subtle);
  border: 1px solid var(--cv1-line);
  border-radius: 10px;
}

.cv1-quality h2 {
  font-size: 15px;
}

.cv1-quality p {
  margin: 3px 0 0;
  color: var(--cv1-muted);
  font-size: 11px;
}

.cv1-quality-summary > details {
  position: relative;
}

.cv1-quality-summary > details > summary {
  cursor: pointer;
  color: var(--cv1-brand);
  font-size: 12px;
  font-weight: 620;
}

.cv1-quality-detail {
  position: absolute;
  top: calc(100% + 12px);
  right: 0;
  z-index: 15;
  display: grid;
  width: min(520px, 75vw);
  max-height: 420px;
  overflow: auto;
  padding: 8px;
  background: var(--cv1-surface);
  border: 1px solid var(--cv1-line);
  border-radius: 12px;
  box-shadow: var(--cv1-shadow-menu);
}

.cv1-quality-detail article {
  padding: 11px;
  border-radius: 8px;
}

.cv1-quality-detail article + article {
  border-top: 1px solid var(--cv1-line);
}

.cv1-quality-detail strong {
  color: var(--cv1-attention);
  font-size: 10px;
  text-transform: uppercase;
}

.cv1-quality-detail p {
  margin: 4px 0;
  color: var(--cv1-ink);
  font-size: 12px;
}

.cv1-quality-detail small {
  color: var(--cv1-muted);
  font-size: 10px;
}

.cv1-technical {
  margin-top: 16px;
  background: #eef0f3;
  border: 1px solid #dfe2e7;
  border-radius: var(--cv1-radius);
}

.cv1-technical > summary {
  display: flex;
  min-height: 54px;
  cursor: pointer;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 0 18px;
  color: #4f5763;
  font-size: 13px;
  font-weight: 630;
}

.cv1-technical > summary > span {
  display: flex;
  align-items: center;
  gap: 9px;
}

.cv1-technical > summary > .cv1-icon {
  transition: transform 160ms ease;
}

.cv1-technical[open] > summary > .cv1-icon {
  transform: rotate(180deg);
}

.cv1-technical-content {
  display: grid;
  gap: 24px;
  padding: 4px 18px 20px;
}

.cv1-technical-content section {
  min-width: 0;
}

.cv1-technical-content h3 {
  margin: 0 0 10px;
  font-size: 12px;
}

.cv1-technical-content ul {
  margin: 0;
  padding-left: 18px;
  color: #5f6671;
  font-size: 11px;
}

.cv1-technical-table-wrap {
  overflow: hidden;
  background: var(--cv1-surface);
  border: 1px solid var(--cv1-line-strong);
  border-radius: 9px;
}

.cv1-technical-table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  font-size: 10px;
}

.cv1-technical-table th,
.cv1-technical-table td {
  padding: 9px 10px;
  overflow-wrap: anywhere;
  border-bottom: 1px solid var(--cv1-line);
  text-align: left;
  vertical-align: top;
}

.cv1-technical-table th {
  color: var(--cv1-muted);
  background: var(--cv1-surface-subtle);
  font-weight: 640;
}

.cv1-technical-table tbody tr:last-child td {
  border-bottom: 0;
}

.cv1-technical-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.cv1-technical-actions a {
  display: inline-flex;
  min-height: 36px;
  align-items: center;
  gap: 7px;
  padding: 0 11px;
  color: #3e4651;
  background: var(--cv1-surface);
  border: 1px solid var(--cv1-line-strong);
  border-radius: 8px;
  font-size: 11px;
  font-weight: 620;
}

.cv1-result-footer {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 30px;
  margin-top: 28px;
  padding: 20px 4px 0;
  color: var(--cv1-faint);
  border-top: 1px solid var(--cv1-line);
  font-size: 10px;
}

.cv1-result-footer > span {
  max-width: 720px;
}

.cv1-result-footer nav {
  display: flex;
  gap: 14px;
  white-space: nowrap;
}

.cv1-result-footer a:hover {
  color: var(--cv1-ink);
}

.cv1-mobile-nav {
  display: none;
}

@media (max-width: 1240px) {
  :root {
    --cv1-sidebar-width: 204px;
  }

  .cv1-main {
    padding-right: 22px;
    padding-left: 22px;
  }

  .cv1-kpis {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .cv1-kpi-payment,
  .cv1-kpi-debt {
    grid-column: span 1;
  }

  .cv1-obligation-table-head,
  .cv1-obligation-row {
    grid-template-columns: minmax(180px, 1.65fr) 80px minmax(105px, .8fr) minmax(112px, .9fr) minmax(105px, .8fr) 112px 20px;
    gap: 10px;
  }
}

@media (max-width: 1040px) {
  :root {
    --cv1-sidebar-width: 78px;
  }

  .cv1-sidebar {
    align-items: center;
    padding-right: 10px;
    padding-left: 10px;
  }

  .cv1-logo {
    padding: 0;
  }

  .cv1-logo-word,
  .cv1-nav-link span,
  .cv1-sidebar-note,
  .cv1-copyright {
    display: none;
  }

  .cv1-nav-link {
    width: 46px;
    justify-content: center;
    padding: 0;
  }

  .cv1-account-name {
    display: none;
  }

  .cv1-obligation-table-head {
    display: none;
  }

  .cv1-obligations {
    border: 1px solid var(--cv1-line);
    border-radius: 10px;
  }

  .cv1-obligation-row {
    grid-template-columns: minmax(220px, 1.5fr) repeat(3, minmax(110px, .8fr)) 22px;
    gap: 12px;
    padding: 16px;
  }

  .cv1-obligation-creditor {
    grid-row: span 2;
  }

  .cv1-obligation-cell::before {
    display: block;
    margin-bottom: 2px;
    color: var(--cv1-faint);
    content: attr(data-label);
    font-size: 9px;
  }

  .cv1-obligation-cell:nth-of-type(5) {
    grid-column: 2;
  }

  .cv1-obligation-sources {
    grid-column: 3 / 5;
  }

  .cv1-obligation-chevron {
    grid-column: 5;
    grid-row: 1 / 3;
  }
}

@media (max-width: 820px) {
  .cv1-topbar {
    padding: 0 18px;
  }

  .cv1-credit-pill span,
  .cv1-help span {
    display: none;
  }

  .cv1-result-header {
    display: grid;
  }

  .cv1-result-actions {
    justify-self: stretch;
  }

  .cv1-result-actions .cv1-button {
    flex: 1;
  }

  .cv1-kpis {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cv1-kpi-payment {
    grid-column: span 2;
  }

  .cv1-findings,
  .cv1-two-column {
    grid-template-columns: 1fr;
  }

  .cv1-finding:nth-child(2) {
    border-top: 1px solid var(--cv1-line);
  }

  .cv1-source-compare-grid {
    grid-template-columns: 1fr;
  }

  .cv1-quality-summary {
    grid-template-columns: 42px minmax(0, 1fr) auto;
  }

  .cv1-quality-summary > .cv1-source-badges {
    grid-column: 2;
  }

  .cv1-quality-summary > details {
    grid-column: 3;
    grid-row: 1 / 3;
  }
}

@media (max-width: 680px) {
  :root {
    --cv1-topbar-height: 58px;
  }

  body.cv1-body {
    padding-bottom: calc(64px + env(safe-area-inset-bottom));
  }

  .cv1-sidebar {
    display: none;
  }

  .cv1-workspace {
    margin-left: 0;
  }

  .cv1-topbar {
    padding: 0 14px;
  }

  .cv1-topbar-title {
    font-size: 13px;
  }

  .cv1-credit-pill {
    min-width: 36px;
    justify-content: center;
    padding: 0 8px;
  }

  .cv1-help,
  .cv1-account-menu > summary > .cv1-icon {
    display: none;
  }

  .cv1-account-menu > summary {
    padding: 2px;
  }

  .cv1-main {
    padding: 24px 14px 44px;
  }

  .cv1-result-header {
    gap: 18px;
    margin-bottom: 18px;
  }

  .cv1-result-titleline {
    display: grid;
    justify-items: start;
  }

  .cv1-result-header h1 {
    font-size: 29px;
  }

  .cv1-result-header p {
    display: grid;
    gap: 2px;
    margin-top: 9px;
  }

  .cv1-result-header p > span {
    display: none;
  }

  .cv1-result-actions {
    display: grid;
    grid-template-columns: 1fr 1fr 40px;
  }

  .cv1-result-actions .cv1-button {
    min-width: 0;
    padding: 0 10px;
    font-size: 12px;
  }

  .cv1-status {
    padding: 17px;
    border-radius: 13px;
  }

  .cv1-status-icon {
    width: 34px;
    height: 34px;
  }

  .cv1-status h2 {
    font-size: 16px;
  }

  .cv1-kpis {
    gap: 8px;
  }

  .cv1-kpi {
    min-height: 130px;
    padding: 15px 14px;
  }

  .cv1-kpi > strong {
    margin-top: 9px;
    font-size: clamp(18px, 5.3vw, 23px);
  }

  .cv1-kpi-payment > strong {
    font-size: clamp(17px, 4.9vw, 21px);
  }

  .cv1-section {
    padding: 21px 17px;
    border-radius: 13px;
  }

  .cv1-section h2 {
    font-size: 19px;
  }

  .cv1-finding {
    padding: 13px 0;
  }

  .cv1-obligations {
    display: grid;
    gap: 10px;
    background: transparent;
    border: 0;
  }

  .cv1-obligation {
    overflow: hidden;
    background: var(--cv1-surface-subtle);
    border: 1px solid var(--cv1-line);
    border-radius: 11px;
  }

  .cv1-obligation-row {
    display: grid;
    min-height: 0;
    grid-template-columns: repeat(2, minmax(0, 1fr)) 22px;
    gap: 14px 10px;
    padding: 15px;
  }

  .cv1-obligation-creditor {
    grid-column: 1 / 3;
    grid-row: auto;
  }

  .cv1-obligation-creditor strong,
  .cv1-obligation-creditor small {
    white-space: normal;
  }

  .cv1-obligation-cell:nth-of-type(4),
  .cv1-obligation-cell:nth-of-type(5) {
    grid-column: auto;
  }

  .cv1-obligation-sources {
    grid-column: 1 / 3;
  }

  .cv1-obligation-chevron {
    grid-column: 3;
    grid-row: 1;
  }

  .cv1-obligation-detail {
    padding: 15px;
  }

  .cv1-detail-facts {
    grid-template-columns: 1fr;
  }

  .cv1-activity-values > div {
    padding: 13px;
  }

  .cv1-activity-values strong {
    font-size: 19px;
  }

  .cv1-quality-summary {
    grid-template-columns: 36px minmax(0, 1fr);
  }

  .cv1-quality-icon {
    width: 34px;
    height: 34px;
  }

  .cv1-quality-summary > .cv1-source-badges {
    grid-column: 2;
  }

  .cv1-quality-summary > details {
    grid-column: 2;
    grid-row: auto;
  }

  .cv1-quality-detail {
    position: static;
    width: auto;
    max-height: none;
    margin-top: 10px;
    box-shadow: none;
  }

  .cv1-technical-content {
    padding-right: 12px;
    padding-left: 12px;
  }

  .cv1-technical-table-wrap {
    overflow: visible;
    background: transparent;
    border: 0;
  }

  .cv1-technical-table,
  .cv1-technical-table tbody,
  .cv1-technical-table tr,
  .cv1-technical-table td {
    display: block;
    width: 100%;
  }

  .cv1-technical-table thead {
    display: none;
  }

  .cv1-technical-table tr {
    margin-bottom: 8px;
    padding: 9px;
    background: var(--cv1-surface);
    border: 1px solid var(--cv1-line-strong);
    border-radius: 8px;
  }

  .cv1-technical-table td {
    display: grid;
    grid-template-columns: 96px minmax(0, 1fr);
    gap: 8px;
    padding: 4px;
    border: 0;
  }

  .cv1-technical-table td::before {
    color: var(--cv1-faint);
    content: attr(data-label);
    font-size: 12px;
  }

  .cv1-result-footer {
    display: grid;
  }

  .cv1-mobile-nav {
    position: fixed;
    inset: auto 0 0;
    z-index: 60;
    display: grid;
    min-height: calc(58px + env(safe-area-inset-bottom));
    grid-template-columns: repeat(4, 1fr);
    padding: 5px 10px env(safe-area-inset-bottom);
    background: #fff;
    border-top: 1px solid var(--cv1-line);
  }

  .cv1-mobile-nav a {
    display: grid;
    place-items: center;
    align-content: center;
    gap: 2px;
    color: var(--cv1-muted);
    font-size: 12px;
    font-weight: 590;
  }

  .cv1-mobile-nav a.is-active {
    color: var(--cv1-brand);
  }
}

@media (max-width: 420px) {
  .cv1-result-actions {
    grid-template-columns: 1fr 40px;
  }

  .cv1-result-actions .cv1-result-new-analysis {
    display: none;
  }

  .cv1-kpi {
    min-height: 124px;
  }

  .cv1-kpi > small {
    font-size: 12px;
  }

  .cv1-obligation-cell strong {
    font-size: 12px;
  }
}

@media print {
  .no-print,
  .cv1-sidebar,
  .cv1-topbar,
  .cv1-mobile-nav,
  .cv1-result-actions,
  .cv1-technical,
  .cv1-result-footer {
    display: none !important;
  }

  .cv1-workspace {
    margin-left: 0;
  }

  .cv1-main {
    padding: 0;
  }

  .cv1-section,
  .cv1-status,
  .cv1-kpi {
    break-inside: avoid;
    box-shadow: none;
  }
}

/* Commercial Flow V1 ----------------------------------------------------- */

.cv1-flow-container {
  width: min(100%, 1080px);
  margin: 0 auto;
}

.cv1-flow-container-wide {
  width: min(100%, var(--cv1-content-width));
}

.cv1-page-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 28px;
  margin-bottom: 26px;
}

.cv1-page-heading h1,
.cv1-processing-heading h1,
.cv1-auth-card h1 {
  margin: 5px 0 0;
  font-size: clamp(28px, 3.2vw, 39px);
  font-weight: 690;
  letter-spacing: -0.04em;
  line-height: 1.08;
}

.cv1-page-heading p,
.cv1-processing-heading p {
  max-width: 680px;
  margin: 10px 0 0;
  color: var(--cv1-muted);
  font-size: 14px;
}

.cv1-balance-compact {
  display: grid;
  min-width: 168px;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 1px 14px;
  padding: 14px 15px;
  background: var(--cv1-surface);
  border: 1px solid var(--cv1-line);
  border-radius: var(--cv1-radius);
  box-shadow: var(--cv1-shadow-sm);
}

.cv1-balance-compact span {
  color: var(--cv1-muted);
  font-size: 11px;
}

.cv1-balance-compact strong {
  grid-row: 1 / 3;
  grid-column: 2;
  font-size: 24px;
  font-variant-numeric: tabular-nums;
}

.cv1-balance-compact a {
  color: var(--cv1-brand);
  font-size: 11px;
  font-weight: 630;
}

.cv1-alert {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  margin-bottom: 16px;
  padding: 13px 15px;
  color: #424853;
  background: var(--cv1-surface);
  border: 1px solid var(--cv1-line);
  border-radius: 10px;
  font-size: 13px;
}

.cv1-alert-success { color: var(--cv1-positive); background: var(--cv1-positive-soft); border-color: #d7ece4; }
.cv1-alert-warning { color: var(--cv1-attention); background: var(--cv1-attention-soft); border-color: #eee2c8; }
.cv1-alert-error { color: var(--cv1-critical); background: var(--cv1-critical-soft); border-color: #f0d5d5; }

.cv1-button-large {
  min-height: 48px;
  padding: 0 20px;
  font-size: 14px;
}

.cv1-button:disabled {
  cursor: not-allowed;
  opacity: 0.46;
  transform: none;
}

.cv1-visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
}

.cv1-upload-container { width: min(100%, var(--cv1-content-width)); }
.cv1-upload-heading { align-items: flex-end; margin-bottom: 22px; }
.cv1-heading-link { display: inline-flex; min-height: 44px; align-items: center; gap: 7px; color: var(--cv1-brand) !important; font-size: 13px; font-weight: 700; white-space: nowrap; }

.cv1-upload-progress {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin: 0 0 18px;
  padding: 0;
  list-style: none;
}

.cv1-upload-progress li {
  position: relative;
  display: flex;
  min-height: 62px;
  align-items: center;
  gap: 10px;
  padding: 10px 13px;
  color: var(--cv1-faint);
  background: rgba(255, 255, 255, .55);
  border: 1px solid var(--cv1-line);
  border-radius: 12px;
}

.cv1-upload-progress li > span {
  display: grid;
  width: 30px;
  height: 30px;
  flex: 0 0 auto;
  place-items: center;
  background: var(--cv1-surface-raised);
  border-radius: 9px;
  font-size: 12px;
  font-weight: 750;
}

.cv1-upload-progress li > div { display: grid; gap: 1px; }
.cv1-upload-progress strong { color: #485467; font-size: 13px; }
.cv1-upload-progress small { font-size: 12px; }
.cv1-upload-progress li.is-active { color: var(--cv1-brand); background: var(--cv1-brand-soft); border-color: #ccdafb; }
.cv1-upload-progress li.is-active > span { color: #fff; background: var(--cv1-brand); }
.cv1-upload-progress li.is-active strong { color: var(--cv1-ink); }

.cv1-analysis-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.65fr) minmax(320px, .78fr);
  align-items: start;
  gap: 16px;
}

.cv1-upload-workspace,
.cv1-parameters-card,
.cv1-launch-card {
  min-width: 0;
  background: var(--cv1-surface);
  border: 1px solid var(--cv1-line);
  border-radius: var(--cv1-radius-lg);
  box-shadow: var(--cv1-shadow-card);
}

.cv1-upload-workspace { padding: 26px; }
.cv1-analysis-side { display: grid; gap: 16px; }
.cv1-parameters-card,
.cv1-launch-card { padding: 22px; }

.cv1-panel-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; }
.cv1-panel-heading h2 { margin: 4px 0 0; font-size: 20px; letter-spacing: -.025em; }
.cv1-panel-heading p { max-width: 610px; margin: 7px 0 0; color: var(--cv1-muted); font-size: 13px; line-height: 1.5; }
.cv1-step-label { color: var(--cv1-brand); font-size: 11px; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }
.cv1-selection-counter { display: inline-flex; min-height: 32px; flex: 0 0 auto; align-items: center; padding: 0 10px; color: var(--cv1-brand); background: var(--cv1-brand-soft); border-radius: 9px; font-size: 12px; font-weight: 750; }

.cv1-bureau-slots { display: grid; gap: 10px; margin-top: 20px; }
.cv1-bureau-slot {
  display: grid;
  min-width: 0;
  min-height: 142px;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  grid-template-rows: auto auto auto;
  align-items: center;
  gap: 4px 13px;
  padding: 17px;
  background: var(--cv1-surface-subtle);
  border: 1px dashed var(--cv1-line-strong);
  border-radius: 14px;
  transition: background 180ms ease, border-color 180ms ease, transform 180ms ease;
}

.cv1-bureau-slot:hover,
.cv1-bureau-slot.is-dragging { background: #f3f7ff; border-color: #8fa9ef; }
.cv1-bureau-slot.is-dragging { transform: scale(.997); }
.cv1-bureau-slot.has-file { background: #f8fbff; border-style: solid; border-color: #bfd0f8; }
.cv1-bureau-slot-head { display: flex; grid-column: 1 / -1; align-items: center; justify-content: space-between; margin-bottom: 6px; }
.cv1-bureau-index { color: var(--cv1-faint); font-size: 11px; font-weight: 750; letter-spacing: .08em; }
.cv1-bureau-state { display: inline-flex; min-height: 26px; align-items: center; padding: 0 8px; color: var(--cv1-faint); background: #fff; border: 1px solid var(--cv1-line); border-radius: 999px; font-size: 11px; }
.cv1-bureau-slot.has-file .cv1-bureau-state { color: var(--cv1-positive); background: var(--cv1-positive-soft); border-color: #cce8dd; }
.cv1-bureau-icon { display: grid; width: 42px; height: 42px; grid-column: 1; grid-row: 2; place-items: center; color: var(--cv1-brand); background: #fff; border: 1px solid var(--cv1-line); border-radius: 11px; }
.cv1-bureau-copy { min-width: 0; grid-column: 2; grid-row: 2; }
.cv1-bureau-copy h3 { margin: 0; font-size: 15px; }
.cv1-bureau-copy p { margin: 3px 0 0; color: var(--cv1-muted); font-size: 12px; line-height: 1.4; }
.cv1-bureau-actions { display: flex; grid-column: 3; grid-row: 2; align-items: center; gap: 5px; }
.cv1-bureau-actions .cv1-button { min-width: 112px; min-height: 44px; }
.cv1-file-remove { min-height: 44px; padding: 0 9px; cursor: pointer; color: var(--cv1-critical); background: transparent; border: 0; border-radius: 9px; font-size: 12px; font-weight: 680; }
.cv1-file-remove:hover { background: var(--cv1-critical-soft); }
.cv1-bureau-format { grid-column: 2; grid-row: 3; color: var(--cv1-faint); font-size: 11px; }
.cv1-bureau-file { display: grid; min-width: 0; grid-column: 1 / 3; grid-row: 2 / 4; grid-template-columns: 38px minmax(0, 1fr); align-items: center; gap: 10px; }
.cv1-bureau-file > span { display: grid; width: 38px; height: 38px; place-items: center; color: var(--cv1-positive); background: var(--cv1-positive-soft); border-radius: 10px; }
.cv1-bureau-file > div { display: grid; min-width: 0; gap: 2px; }
.cv1-bureau-file strong { overflow: hidden; font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }
.cv1-bureau-file small { color: var(--cv1-muted); font-size: 11px; }
.cv1-bureau-slot.has-file .cv1-bureau-icon,
.cv1-bureau-slot.has-file .cv1-bureau-copy,
.cv1-bureau-slot.has-file .cv1-bureau-format { display: none; }
.cv1-slot-error { grid-column: 1 / -1; margin: 6px 0 0; color: var(--cv1-critical); font-size: 12px; }

.cv1-partial-warning { display: flex; align-items: flex-start; gap: 10px; margin-top: 14px; padding: 13px 14px; color: #75501d; background: var(--cv1-attention-soft); border: 1px solid #eadbbd; border-radius: 12px; font-size: 12px; }
.cv1-partial-warning span { display: grid; gap: 2px; }
.cv1-partial-warning strong { font-size: 12px; }

.cv1-parameter-fields { display: grid; gap: 13px; margin-top: 18px; }
.cv1-parameter-fields label { display: grid; gap: 6px; }
.cv1-parameter-fields label > span,
.cv1-extra-parameters label > span { color: #455166; font-size: 12px; font-weight: 680; }
.cv1-parameter-fields label > div { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; background: #fff; border: 1px solid var(--cv1-line-strong); border-radius: 11px; }
.cv1-parameter-fields input { width: 100%; min-width: 0; min-height: 46px; padding: 0 12px; color: var(--cv1-ink); background: transparent; border: 0; outline: 0; }
.cv1-parameter-fields em { padding-right: 12px; color: var(--cv1-muted); font-size: 12px; font-style: normal; }
.cv1-parameter-fields small { color: var(--cv1-faint); font-size: 11px; line-height: 1.4; }
.cv1-parameter-fields label > div:focus-within { border-color: #8da8ee; box-shadow: 0 0 0 3px rgba(49, 94, 231, .1); }
.cv1-extra-parameters { margin-top: 16px; border-top: 1px solid var(--cv1-line); }
.cv1-extra-parameters summary { display: flex; min-height: 48px; cursor: pointer; align-items: center; justify-content: space-between; gap: 10px; color: var(--cv1-muted); font-size: 12px; font-weight: 680; }
.cv1-extra-parameters[open] summary .cv1-icon { transform: rotate(180deg); }
.cv1-extra-parameters > div { display: grid; gap: 10px; padding: 2px 0 4px; }
.cv1-extra-parameters label { display: grid; gap: 5px; }
.cv1-extra-parameters input { min-height: 44px; padding: 0 11px; color: var(--cv1-ink); background: #fff; border: 1px solid var(--cv1-line-strong); border-radius: 10px; }

.cv1-launch-card { border-color: #cad8fb; box-shadow: inset 0 3px 0 var(--cv1-brand), var(--cv1-shadow-card); }
.cv1-launch-summary { display: grid; gap: 0; margin: 16px 0 0; }
.cv1-launch-summary > div { display: flex; min-height: 42px; align-items: center; justify-content: space-between; gap: 14px; border-bottom: 1px solid var(--cv1-line); }
.cv1-launch-summary dt { color: var(--cv1-muted); font-size: 12px; }
.cv1-launch-summary dd { margin: 0; font-size: 12px; font-weight: 700; text-align: right; }
.cv1-security-note { display: flex; align-items: flex-start; gap: 8px; margin: 16px 0; color: var(--cv1-muted); font-size: 12px; line-height: 1.45; }
.cv1-launch-card .cv1-button { width: 100%; }
.cv1-launch-help { display: block; margin-top: 9px; color: var(--cv1-faint); font-size: 11px; line-height: 1.4; text-align: center; }
.cv1-button.is-loading { cursor: wait; }

.cv1-paywall-icon,
.cv1-empty-icon,
.cv1-settings-icon {
  display: grid;
  width: 48px;
  height: 48px;
  place-items: center;
  color: var(--cv1-brand);
  background: var(--cv1-brand-soft);
  border-radius: 12px;
}

.cv1-process-card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 10px;
}

.cv1-process-card h2 { margin: 0; font-size: 16px; font-weight: 680; }
.cv1-process-card-head > span { color: var(--cv1-faint); font-size: 12px; }

.cv1-processing-file {
  display: grid;
  min-width: 0;
  grid-template-columns: 38px minmax(0, 1fr) 32px;
  align-items: center;
  gap: 11px;
  padding: 12px;
  background: var(--cv1-surface-subtle);
  border: 1px solid var(--cv1-line);
  border-radius: 11px;
}

.cv1-processing-file-icon { display: grid; width: 36px; height: 36px; place-items: center; color: #596578; background: #fff; border: 1px solid var(--cv1-line); border-radius: 9px; }
.cv1-processing-file div { display: grid; min-width: 0; gap: 2px; }
.cv1-processing-file strong { overflow: hidden; font-size: 13px; font-weight: 680; text-overflow: ellipsis; white-space: nowrap; }
.cv1-processing-file div > span { color: var(--cv1-muted); font-size: 11px; }

.cv1-paywall {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr) auto;
  align-items: center;
  gap: 18px;
  padding: 26px;
  background: var(--cv1-surface);
  border: 1px solid var(--cv1-line);
  border-radius: var(--cv1-radius-lg);
}
.cv1-paywall h2 { margin: 0; font-size: 18px; }
.cv1-paywall p { margin: 4px 0 0; color: var(--cv1-muted); font-size: 13px; }

/* Processing */
.cv1-processing-container { width: min(100%, 920px); margin: 20px auto 0; }
.cv1-processing-heading { display: flex; align-items: flex-start; gap: 18px; margin-bottom: 26px; }
.cv1-processing-mark { display: grid; width: 48px; height: 48px; flex: 0 0 auto; place-items: center; background: var(--cv1-brand-soft); border-radius: 13px; }
.cv1-processing-mark i,
.cv1-processing-file-state i { width: 16px; height: 16px; border: 2px solid #b8c6ed; border-top-color: var(--cv1-brand); border-radius: 50%; animation: cv1-spin .85s linear infinite; }
@keyframes cv1-spin { to { transform: rotate(360deg); } }
.cv1-processing-grid { display: grid; grid-template-columns: .92fr 1.08fr; gap: 14px; }
.cv1-process-card { padding: 24px; background: var(--cv1-surface); border: 1px solid var(--cv1-line); border-radius: var(--cv1-radius-lg); box-shadow: var(--cv1-shadow-sm); }
.cv1-stage-list { display: grid; gap: 0; margin: 18px 0 0; padding: 0; list-style: none; }
.cv1-stage-list li { position: relative; display: flex; min-height: 52px; align-items: flex-start; gap: 11px; color: var(--cv1-faint); }
.cv1-stage-list li:not(:last-child)::after { position: absolute; top: 23px; bottom: 0; left: 10px; width: 1px; content: ''; background: var(--cv1-line); }
.cv1-stage-list strong { padding-top: 2px; font-size: 13px; font-weight: 610; }
.cv1-stage-indicator { z-index: 1; display: grid; width: 21px; height: 21px; flex: 0 0 auto; place-items: center; color: transparent; background: #fff; border: 1px solid var(--cv1-line-strong); border-radius: 50%; }
.cv1-stage-list li.is-complete { color: var(--cv1-ink); }
.cv1-stage-list li.is-complete .cv1-stage-indicator { color: #fff; background: var(--cv1-positive); border-color: var(--cv1-positive); }
.cv1-stage-list li.is-complete:not(:last-child)::after { background: #acd3c5; }
.cv1-process-files { min-height: 330px; }
.cv1-process-files #processing-files { display: grid; gap: 8px; }
.cv1-processing-file-state { display: grid; width: 26px; height: 26px; place-items: center; color: var(--cv1-muted); }
.cv1-processing-file-state.is-complete { color: var(--cv1-positive); background: var(--cv1-positive-soft); border-radius: 50%; font-size: 15px; }
.cv1-processing-file-state.is-failed { color: var(--cv1-critical); background: var(--cv1-critical-soft); border-radius: 50%; }
.cv1-processing-file .file-error:empty { display: none; }
.cv1-processing-file .file-error { color: var(--cv1-critical); font-size: 10px; }
.cv1-processing-note { max-width: 650px; margin: 16px auto 0; color: var(--cv1-faint); font-size: 10px; text-align: center; }
.cv1-processing-error { margin-top: 4px; padding: 14px; color: var(--cv1-critical); background: var(--cv1-critical-soft); border-radius: 9px; }
.cv1-processing-error strong { font-size: 13px; }
.cv1-processing-error p { margin: 4px 0 12px; font-size: 11px; }

/* Analyses */
.cv1-history-filters { display: flex; align-items: center; gap: 8px; margin-bottom: 13px; }
.cv1-search-field { display: flex; min-height: 40px; flex: 1 1 320px; align-items: center; gap: 8px; padding: 0 12px; color: var(--cv1-muted); background: var(--cv1-surface); border: 1px solid var(--cv1-line-strong); border-radius: 9px; }
.cv1-search-field input { width: 100%; min-width: 0; padding: 0; background: transparent; border: 0; outline: 0; font-size: 13px; }
.cv1-history-filters select { min-height: 40px; padding: 0 34px 0 11px; color: #3f4651; background: var(--cv1-surface); border: 1px solid var(--cv1-line-strong); border-radius: 9px; font-size: 12px; }
.cv1-filter-reset { color: var(--cv1-muted); font-size: 11px; }
.cv1-history-card { overflow: visible; background: var(--cv1-surface); border: 1px solid var(--cv1-line); border-radius: var(--cv1-radius-lg); box-shadow: var(--cv1-shadow-sm); }
.cv1-history-table-head,
.cv1-history-row { display: grid; grid-template-columns: minmax(190px, 1.4fr) 150px 100px 190px 140px 142px; align-items: center; gap: 14px; }
.cv1-history-table-head { min-height: 42px; padding: 0 17px; color: var(--cv1-faint); background: #fafbfc; border-bottom: 1px solid var(--cv1-line); border-radius: var(--cv1-radius-lg) var(--cv1-radius-lg) 0 0; font-size: 9px; font-weight: 670; letter-spacing: .055em; text-transform: uppercase; }
.cv1-history-row { min-height: 76px; padding: 12px 17px; border-bottom: 1px solid var(--cv1-line); }
.cv1-history-row:last-child { border-bottom: 0; }
.cv1-history-client { display: grid; min-width: 0; gap: 2px; }
.cv1-history-client strong { overflow: hidden; font-size: 13px; font-weight: 640; text-overflow: ellipsis; white-space: nowrap; }
.cv1-history-client span,
.cv1-history-row time { color: var(--cv1-muted); font-size: 10px; }
.cv1-source-count { color: var(--cv1-muted); font-size: 10px; }
.cv1-source-count i { display: inline-flex; min-height: 24px; align-items: center; margin-right: 4px; padding: 0 7px; color: #344052; background: #f0f2f5; border-radius: 7px; font-style: normal; font-weight: 680; }
.cv1-status-badge { display: inline-flex; width: fit-content; min-height: 28px; align-items: center; padding: 0 9px; border: 1px solid var(--cv1-line); border-radius: 999px; font-size: 9px; font-weight: 660; white-space: nowrap; }
.cv1-status-badge-stable { color: var(--cv1-positive); background: var(--cv1-positive-soft); border-color: #d7ece4; }
.cv1-status-badge-attention { color: var(--cv1-attention); background: var(--cv1-attention-soft); border-color: #eee2c8; }
.cv1-status-badge-critical { color: var(--cv1-critical); background: var(--cv1-critical-soft); border-color: #f0d5d5; }
.cv1-history-status { display: grid; justify-items: start; gap: 4px; }
.cv1-data-quality { color: var(--cv1-faint); font-size: 9px; line-height: 1.25; }
.cv1-history-debt { font-size: 13px; font-weight: 650; font-variant-numeric: tabular-nums; white-space: nowrap; }
.cv1-history-actions { display: flex; align-items: center; justify-content: flex-end; gap: 6px; }
.cv1-history-actions .cv1-button { min-height: 36px; }
.cv1-overflow-menu form { margin: 4px 0 0; padding-top: 4px; border-top: 1px solid var(--cv1-line); }
.cv1-overflow-menu button { display: flex; width: 100%; min-height: 38px; cursor: pointer; align-items: center; gap: 9px; padding: 0 10px; color: var(--cv1-critical); background: transparent; border: 0; border-radius: 8px; font-size: 13px; }
.cv1-overflow-menu button:hover { background: var(--cv1-critical-soft); }
.cv1-empty-commercial { display: grid; min-height: 430px; place-items: center; align-content: center; padding: 44px; background: var(--cv1-surface); border: 1px solid var(--cv1-line); border-radius: var(--cv1-radius-lg); text-align: center; }
.cv1-empty-commercial h2 { margin: 17px 0 0; font-size: 20px; }
.cv1-empty-commercial p { margin: 7px 0 0; color: var(--cv1-muted); font-size: 13px; }
.cv1-empty-commercial ol { display: flex; gap: 22px; margin: 24px 0; padding: 0; color: var(--cv1-muted); counter-reset: empty-step; list-style: none; font-size: 11px; }
.cv1-empty-commercial li { display: flex; align-items: center; gap: 7px; }
.cv1-empty-commercial li::before { display: grid; width: 22px; height: 22px; place-items: center; content: counter(empty-step); counter-increment: empty-step; color: #4d5664; background: #f0f2f5; border-radius: 7px; font-size: 9px; font-weight: 700; }
.cv1-pagination { display: flex; align-items: center; justify-content: center; gap: 14px; margin-top: 14px; }
.cv1-pagination a,
.cv1-pagination span { min-width: 64px; color: var(--cv1-muted); font-size: 11px; text-align: center; }
.cv1-pagination a { color: var(--cv1-brand); font-weight: 630; }
.cv1-pagination span { opacity: .5; }
.cv1-pagination strong { color: #4e5662; font-size: 11px; font-weight: 620; }

/* Settings */
.cv1-settings-container { width: min(100%, 1000px); }
.cv1-settings-nav { position: sticky; top: calc(var(--cv1-topbar-height) + 12px); z-index: 20; display: flex; gap: 4px; margin-bottom: 12px; padding: 5px; background: #fff; border: 1px solid var(--cv1-line); border-radius: 11px; box-shadow: var(--cv1-shadow-sm); }
.cv1-settings-nav a { min-height: 34px; padding: 8px 12px; color: var(--cv1-muted); border-radius: 7px; font-size: 11px; font-weight: 610; }
.cv1-settings-nav a:hover { color: var(--cv1-ink); background: var(--cv1-surface-subtle); }
.cv1-settings-section { display: grid; grid-template-columns: 220px minmax(0, 1fr); gap: 30px; margin-top: 12px; padding: 26px; scroll-margin-top: 132px; background: var(--cv1-surface); border: 1px solid var(--cv1-line); border-radius: var(--cv1-radius-lg); box-shadow: var(--cv1-shadow-sm); }
.cv1-settings-copy { display: flex; align-items: flex-start; gap: 11px; }
.cv1-settings-icon { width: 38px; height: 38px; flex: 0 0 auto; border-radius: 10px; }
.cv1-settings-copy h2 { margin: 0; font-size: 17px; font-weight: 670; }
.cv1-settings-copy p { margin: 5px 0 0; color: var(--cv1-muted); font-size: 10px; }
.cv1-settings-form { min-width: 0; }
.cv1-field-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px; }
.cv1-field-grid-three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.cv1-field-grid label { display: grid; gap: 6px; }
.cv1-field-grid label > span { color: #4e5561; font-size: 10px; font-weight: 620; }
.cv1-field-grid input { min-width: 0; min-height: 42px; padding: 0 12px; color: var(--cv1-ink); background: #fff; border: 1px solid var(--cv1-line-strong); border-radius: 9px; outline: 0; font-size: 13px; }
.cv1-field-grid input:focus { border-color: #8da5e7; box-shadow: 0 0 0 3px rgba(30,75,209,.08); }
.cv1-security-fields { margin-top: 24px; padding-top: 22px; border-top: 1px solid var(--cv1-line); }
.cv1-security-fields > div:first-child { margin-bottom: 13px; }
.cv1-security-fields h3 { margin: 0; font-size: 14px; }
.cv1-security-fields p { margin: 3px 0 0; color: var(--cv1-muted); font-size: 10px; }
.cv1-settings-form-actions { display: flex; justify-content: flex-end; margin-top: 17px; }
.cv1-subscription-summary { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.cv1-subscription-summary > div { display: grid; gap: 4px; padding: 13px; background: var(--cv1-surface-subtle); border: 1px solid var(--cv1-line); border-radius: 9px; }
.cv1-subscription-summary span { color: var(--cv1-muted); font-size: 9px; }
.cv1-subscription-summary strong { font-size: 13px; font-weight: 650; }
.cv1-current-plan { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-top: 10px; padding: 15px; background: var(--cv1-brand-soft); border-radius: 10px; }
.cv1-current-plan > div:first-child { display: grid; gap: 2px; }
.cv1-current-plan strong { font-size: 13px; }
.cv1-current-plan span { color: var(--cv1-muted); font-size: 10px; }
.cv1-current-plan-actions { display: flex; gap: 10px; }
.cv1-current-plan-actions button { cursor: pointer; color: var(--cv1-muted); background: transparent; border: 0; font-size: 10px; }
.cv1-plan-details,
.cv1-order-history { margin-top: 10px; border: 1px solid var(--cv1-line); border-radius: 10px; }
.cv1-plan-details > summary,
.cv1-order-history > summary { display: flex; min-height: 46px; cursor: pointer; align-items: center; justify-content: space-between; padding: 0 14px; font-size: 11px; font-weight: 630; }
.cv1-plan-details[open] > summary,
.cv1-order-history[open] > summary { border-bottom: 1px solid var(--cv1-line); }
.cv1-plan-details[open] > summary .cv1-icon,
.cv1-order-history[open] > summary .cv1-icon { transform: rotate(180deg); }
.cv1-plan-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; padding: 10px; }
.cv1-plan-card { display: grid; gap: 8px; padding: 14px; border: 1px solid var(--cv1-line); border-radius: 9px; }
.cv1-plan-card.is-featured { border-color: #9cb1e9; box-shadow: inset 0 2px 0 var(--cv1-brand); }
.cv1-plan-card span { color: var(--cv1-faint); font-size: 8px; font-weight: 690; letter-spacing: .06em; text-transform: uppercase; }
.cv1-plan-card h3 { margin: 2px 0 0; font-size: 14px; }
.cv1-plan-card > strong { font-size: 18px; }
.cv1-plan-card p { min-height: 30px; margin: 0; color: var(--cv1-muted); font-size: 9px; }
.cv1-plan-card .cv1-button { width: 100%; min-height: 34px; }
.cv1-order-history > div { padding: 0 12px; }
.cv1-order-row { display: grid; grid-template-columns: minmax(0, 1fr) auto auto auto; align-items: center; gap: 12px; padding: 11px 2px; border-bottom: 1px solid var(--cv1-line); }
.cv1-order-row:last-child { border-bottom: 0; }
.cv1-order-row > span { display: grid; gap: 1px; }
.cv1-order-row strong { font-size: 11px; }
.cv1-order-row small,
.cv1-order-row em { color: var(--cv1-muted); font-size: 9px; font-style: normal; }
.cv1-order-row b { font-size: 11px; }
.cv1-order-row a { color: var(--cv1-brand); font-size: 9px; font-weight: 630; }
.cv1-document-links { display: grid; gap: 7px; }
.cv1-document-links a { display: flex; min-height: 42px; align-items: center; justify-content: space-between; padding: 0 12px; color: #3f4651; background: var(--cv1-surface-subtle); border: 1px solid var(--cv1-line); border-radius: 9px; font-size: 11px; }
.cv1-document-links a:hover { border-color: var(--cv1-line-strong); background: #fff; }

/* Login */
.cv1-auth-page { min-height: 100vh; padding: 22px; }
.cv1-auth-shell { display: grid; width: min(100%, 1060px); min-height: min(720px, calc(100vh - 44px)); grid-template-columns: minmax(0, .92fr) minmax(420px, 1.08fr); margin: 0 auto; overflow: hidden; background: #fff; border: 1px solid var(--cv1-line); border-radius: 20px; box-shadow: 0 26px 80px rgba(20,24,32,.08); }
.cv1-auth-card { display: flex; min-width: 0; max-width: 480px; justify-self: center; flex-direction: column; justify-content: center; padding: 55px 58px; }
.cv1-auth-brand { display: inline-flex; width: fit-content; align-items: center; gap: 9px; margin-bottom: 54px; font-size: 17px; }
.cv1-auth-card header p { margin: 9px 0 0; color: var(--cv1-muted); font-size: 13px; }
.cv1-auth-form { display: grid; gap: 14px; margin-top: 28px; }
.cv1-auth-form label { display: grid; gap: 6px; }
.cv1-auth-form label span { color: #4e5561; font-size: 10px; font-weight: 620; }
.cv1-auth-form input { min-height: 46px; padding: 0 13px; border: 1px solid var(--cv1-line-strong); border-radius: 9px; outline: 0; font-size: 13px; }
.cv1-auth-form input:focus { border-color: #8da5e7; box-shadow: 0 0 0 3px rgba(30,75,209,.08); }
.cv1-auth-between { display: flex; justify-content: flex-end; margin-top: -4px; }
.cv1-auth-between a,
.cv1-auth-register a { color: var(--cv1-brand); font-size: 10px; font-weight: 630; }
.cv1-auth-register { margin: 17px 0 0; color: var(--cv1-muted); font-size: 11px; text-align: center; }
.cv1-auth-card footer { display: flex; gap: 16px; margin-top: 42px; }
.cv1-auth-card footer a { color: var(--cv1-faint); font-size: 9px; }
.cv1-auth-context { display: flex; flex-direction: column; justify-content: space-between; padding: 70px; color: #fff; background: #151922; }
.cv1-auth-context-mark { display: grid; width: 42px; height: 42px; place-items: center; color: #161a22; background: #fff; border-radius: 11px; font-size: 19px; font-weight: 740; }
.cv1-auth-context h2 { max-width: 440px; margin: 40px 0 0; font-size: clamp(34px, 4vw, 52px); font-weight: 650; letter-spacing: -.05em; line-height: 1.02; }
.cv1-auth-context p { max-width: 430px; margin: 20px 0 0; color: #abb2bf; font-size: 14px; }
.cv1-auth-context small { max-width: 390px; color: #727b8a; font-size: 10px; }

@media (max-width: 1050px) {
  .cv1-history-table-head,
  .cv1-history-row { grid-template-columns: minmax(180px, 1.4fr) 130px 88px 170px 120px 132px; gap: 10px; }
  .cv1-settings-section { grid-template-columns: 190px minmax(0, 1fr); }
  .cv1-field-grid-three { grid-template-columns: 1fr; }
}

@media (max-width: 820px) {
  .cv1-history-table-head { display: none; }
  .cv1-history-card { display: grid; gap: 9px; background: transparent; border: 0; box-shadow: none; }
  .cv1-history-list { display: grid; gap: 9px; }
  .cv1-history-row { grid-template-columns: minmax(0, 1fr) auto; gap: 12px; padding: 16px; background: #fff; border: 1px solid var(--cv1-line); border-radius: 12px; }
  .cv1-history-row time { text-align: right; }
  .cv1-source-count,
  .cv1-history-status { justify-self: start; }
  .cv1-history-debt { grid-column: 1; }
  .cv1-history-actions { grid-column: 2; grid-row: 3; }
  .cv1-settings-section { grid-template-columns: 1fr; gap: 19px; }
  .cv1-auth-shell { grid-template-columns: 1fr; min-height: calc(100vh - 44px); }
  .cv1-auth-context { display: none; }
  .cv1-auth-card { width: min(100%, 480px); max-width: none; }
}

@media (max-width: 680px) {
  .cv1-page-heading { display: grid; gap: 17px; margin-bottom: 20px; }
  .cv1-page-heading h1,
  .cv1-processing-heading h1 { font-size: 29px; }
  .cv1-balance-compact { width: 100%; }
  .cv1-dropzone { min-height: 290px; margin: 10px; padding: 35px 18px; }
  .cv1-dropzone > strong { font-size: 17px; }
  .cv1-selected-files { padding: 5px 14px 18px; }
  .cv1-upload-footer { display: grid; padding: 15px; }
  .cv1-upload-footer .cv1-button { width: 100%; }
  .cv1-paywall { grid-template-columns: 42px minmax(0,1fr); padding: 19px; }
  .cv1-paywall .cv1-button { grid-column: 1 / -1; }
  .cv1-processing-container { margin-top: 0; }
  .cv1-processing-heading { gap: 12px; }
  .cv1-processing-mark { width: 42px; height: 42px; }
  .cv1-processing-grid { grid-template-columns: 1fr; }
  .cv1-process-card { padding: 19px; }
  .cv1-history-filters { display: grid; grid-template-columns: 1fr 1fr; }
  .cv1-search-field { grid-column: 1 / -1; }
  .cv1-history-filters .cv1-button { width: 100%; }
  .cv1-filter-reset { align-self: center; justify-self: center; }
  .cv1-history-row { grid-template-columns: minmax(0, 1fr) auto; }
  .cv1-history-client { grid-column: 1 / -1; }
  .cv1-history-row time { grid-column: 1; grid-row: 2; text-align: left; }
  .cv1-source-count { grid-column: 2; grid-row: 2; }
  .cv1-history-status { grid-column: 1 / -1; grid-row: 3; }
  .cv1-history-debt { grid-row: 4; }
  .cv1-history-actions { grid-row: 4; }
  .cv1-history-actions .cv1-button { min-height: 38px; }
  .cv1-empty-commercial { min-height: 390px; padding: 30px 18px; }
  .cv1-empty-commercial ol { display: grid; gap: 9px; text-align: left; }
  .cv1-settings-nav { top: calc(var(--cv1-topbar-height) + 6px); overflow-x: auto; white-space: nowrap; }
  .cv1-settings-section { padding: 19px 16px; scroll-margin-top: 118px; }
  .cv1-field-grid,
  .cv1-subscription-summary,
  .cv1-plan-grid { grid-template-columns: 1fr; }
  .cv1-current-plan { align-items: flex-start; flex-direction: column; }
  .cv1-current-plan-actions { flex-wrap: wrap; }
  .cv1-order-row { grid-template-columns: minmax(0,1fr) auto; }
  .cv1-order-row em,
  .cv1-order-row a { grid-column: 1 / -1; }
  .cv1-auth-page { padding: 0; background: #fff; }
  .cv1-auth-shell { min-height: 100vh; border: 0; border-radius: 0; box-shadow: none; }
  .cv1-auth-card { justify-content: flex-start; padding: 36px 22px; }
  .cv1-auth-brand { margin-bottom: 64px; }
  .cv1-auth-card h1 { font-size: 34px; }
}

/* Commercial Polish / Billing Readiness V1 ------------------------------ */

.cv1-dropzone { min-height: 310px; }

.cv1-settings-container { width: min(100%, 1000px); }
.cv1-settings-nav { gap: 6px; padding: 6px; }
.cv1-settings-nav a { display: inline-flex; min-height: 38px; align-items: center; padding: 0 15px; font-size: 12px; }
.cv1-settings-nav a.is-active { color: var(--cv1-ink); background: var(--cv1-brand-soft); box-shadow: inset 0 0 0 1px #dfe7ff; }
.cv1-settings-section[hidden] { display: none !important; }
.cv1-settings-section { margin-top: 16px; padding: 30px; }
.cv1-settings-section-wide { display: block; }
.cv1-settings-section-wide > .cv1-settings-copy { margin-bottom: 22px; }
.cv1-settings-copy h2 { font-size: 19px; }
.cv1-settings-copy p { max-width: 560px; font-size: 12px; line-height: 1.55; }
.cv1-field-grid label > span { font-size: 12px; }
.cv1-field-grid input { min-height: 46px; font-size: 14px; }
.cv1-field-grid-security { grid-template-columns: 1fr; }

.cv1-local-billing-note { display: flex; align-items: center; gap: 10px; margin-bottom: 14px; padding: 11px 13px; color: #4c5564; background: #f5f7fa; border: 1px solid var(--cv1-line); border-radius: 10px; }
.cv1-local-billing-note strong { flex: 0 0 auto; color: #313843; font-size: 11px; }
.cv1-local-billing-note span { font-size: 11px; }
.cv1-subscription-overview { display: grid; grid-template-columns: minmax(260px,.85fr) minmax(0,1.15fr); gap: 12px; }
.cv1-subscription-state { padding: 18px; background: #f8f9fb; border: 1px solid var(--cv1-line); border-radius: 12px; }
.cv1-state-heading { display: flex; align-items: center; gap: 11px; }
.cv1-status-dot { width: 10px; height: 10px; flex: 0 0 auto; background: #a4aab4; border: 3px solid #eceef1; border-radius: 999px; box-sizing: content-box; }
.cv1-status-dot.is-active { background: var(--cv1-positive); border-color: #dcefe8; }
.cv1-state-heading small { color: var(--cv1-muted); font-size: 10px; }
.cv1-state-heading h3 { margin: 1px 0 0; font-size: 18px; }
.cv1-subscription-state p { margin: 13px 0 0; color: var(--cv1-muted); font-size: 12px; }
.cv1-subscription-facts { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
.cv1-subscription-facts > div { display: grid; align-content: center; gap: 4px; min-height: 74px; padding: 12px 14px; background: var(--cv1-surface); border: 1px solid var(--cv1-line); border-radius: 10px; }
.cv1-subscription-facts span { color: var(--cv1-muted); font-size: 10px; }
.cv1-subscription-facts strong { overflow: hidden; font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }
.cv1-current-plan-actions { justify-content: flex-end; margin-top: 10px; }
.cv1-current-plan-actions button { min-height: 34px; padding: 0 10px; color: #4d5664; border: 1px solid var(--cv1-line); border-radius: 8px; font-size: 11px; }
.cv1-current-plan-actions button:hover { color: var(--cv1-ink); background: #f8f9fa; }
.cv1-alert-stacked span { display: grid; gap: 1px; }
.cv1-alert-stacked strong { font-size: 12px; }
.cv1-alert-stacked small { font-size: 11px; }
.cv1-payment-method { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-top: 12px; padding: 17px 18px; background: #fff; border: 1px solid var(--cv1-line); border-radius: 12px; }
.cv1-payment-method > div:first-child { min-width: 0; }
.cv1-payment-method > div:first-child > span { color: var(--cv1-muted); font-size: 10px; }
.cv1-payment-method h3 { margin: 3px 0 0; font-size: 16px; }
.cv1-payment-method p { max-width: 590px; margin: 5px 0 0; color: var(--cv1-muted); font-size: 11px; }
.cv1-payment-method-actions { display: flex; flex: 0 0 auto; flex-wrap: wrap; justify-content: flex-end; gap: 7px; }
.cv1-payment-method-actions button { min-height: 36px; cursor: pointer; padding: 0 11px; color: #4d5664; background: #fff; border: 1px solid var(--cv1-line-strong); border-radius: 8px; font-size: 11px; font-weight: 620; }
.cv1-payment-method-actions button:hover { color: var(--cv1-ink); background: #f8f9fa; }
.cv1-renewal-status { margin-top: 10px; padding: 10px 12px; color: var(--cv1-attention); background: var(--cv1-attention-soft); border: 1px solid #eee2c8; border-radius: 9px; font-size: 11px; }
.cv1-renewal-status.is-failed { color: var(--cv1-critical); background: var(--cv1-critical-soft); border-color: #f0d5d5; }

.cv1-detach-dialog { width: min(calc(100% - 32px), 470px); padding: 0; color: var(--cv1-ink); background: transparent; border: 0; border-radius: 16px; }
.cv1-detach-dialog::backdrop { background: rgba(18, 22, 29, .52); }
.cv1-detach-dialog-card { padding: 28px; background: #fff; border: 1px solid var(--cv1-line); border-radius: 16px; box-shadow: 0 28px 90px rgba(16,20,28,.24); }
.cv1-dialog-icon { display: grid; width: 42px; height: 42px; place-items: center; color: var(--cv1-brand); background: var(--cv1-brand-soft); border-radius: 11px; }
.cv1-detach-dialog h2 { margin: 18px 0 0; font-size: 24px; letter-spacing: -.03em; }
.cv1-detach-dialog p { margin: 10px 0 0; color: var(--cv1-muted); font-size: 13px; line-height: 1.55; }
.cv1-dialog-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; margin-top: 24px; }
.cv1-button-danger { color: #fff; background: var(--cv1-critical); border-color: var(--cv1-critical); }
.cv1-button-danger:hover { background: #9d3030; border-color: #9d3030; }
.cv1-detach-dialog > form[data-detach-form] { display: none; }

.cv1-pricing-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; margin: 34px 0 14px; }
.cv1-pricing-heading h3 { margin: 4px 0 0; font-size: 22px; letter-spacing: -.025em; }
.cv1-pricing-heading p { margin: 5px 0 0; color: var(--cv1-muted); font-size: 12px; }
.cv1-period-toggle { display: flex; flex: 0 0 auto; gap: 3px; padding: 4px; background: #f1f3f6; border-radius: 9px; }
.cv1-period-toggle button { min-height: 34px; cursor: pointer; padding: 0 12px; color: var(--cv1-muted); background: transparent; border: 0; border-radius: 7px; font-size: 11px; font-weight: 640; }
.cv1-period-toggle button.is-active { color: var(--cv1-ink); background: #fff; box-shadow: var(--cv1-shadow-sm); }
.cv1-plan-grid-commercial { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; padding: 0; }
.cv1-plan-card-commercial { display: flex; min-width: 0; min-height: 390px; flex-direction: column; gap: 16px; padding: 20px 18px; border-radius: 13px; }
.cv1-plan-card-commercial.is-featured { border-color: #91a7e8; box-shadow: inset 0 3px 0 var(--cv1-brand), 0 8px 24px rgba(30,75,209,.06); }
.cv1-plan-card-head > span { color: var(--cv1-brand); font-size: 9px; }
.cv1-plan-card-head h3 { margin-top: 7px; font-size: 20px; }
.cv1-plan-card-head p { min-height: 52px; margin: 7px 0 0; color: var(--cv1-muted); font-size: 11px; line-height: 1.5; }
.cv1-plan-price { display: grid; gap: 1px; }
.cv1-plan-price strong { font-size: 24px; letter-spacing: -.025em; font-variant-numeric: tabular-nums; }
.cv1-plan-price span { color: var(--cv1-muted); font-size: 10px; letter-spacing: 0; text-transform: none; }
.cv1-plan-card-commercial ul { display: grid; gap: 8px; margin: 0; padding: 0; color: #4d5562; list-style: none; font-size: 11px; }
.cv1-plan-card-commercial li { position: relative; padding-left: 15px; }
.cv1-plan-card-commercial li::before { position: absolute; top: .55em; left: 1px; width: 5px; height: 5px; content: ''; background: #7e8998; border-radius: 999px; }
.cv1-plan-card-commercial form { display: grid; gap: 11px; margin-top: auto; }
.cv1-plan-card-commercial .cv1-button { min-height: 41px; font-size: 12px; }
.cv1-renew-consent { display: grid; grid-template-columns: 15px minmax(0,1fr); align-items: flex-start; gap: 7px; cursor: pointer; }
.cv1-renew-consent input { width: 15px; height: 15px; margin: 1px 0 0; accent-color: var(--cv1-brand); }
.cv1-renew-consent span { display: grid; gap: 5px; color: var(--cv1-muted); font-size: 9px; font-weight: 500; letter-spacing: 0; line-height: 1.4; text-transform: none; }
.cv1-renew-consent small { color: #7c8491; font-size: 8px; line-height: 1.45; }
.cv1-billing-legal { margin: 14px 2px 0; color: var(--cv1-muted); font-size: 10px; line-height: 1.55; }
.cv1-billing-legal a { color: var(--cv1-brand); font-weight: 620; }
.cv1-order-history { margin-top: 18px; }
.cv1-document-links a { min-height: 48px; padding: 0 14px; font-size: 13px; }

/* Auth and registration polish */
.cv1-auth-shell { grid-template-columns: minmax(0,1.06fr) minmax(390px,.94fr); }
.cv1-auth-context { padding: 64px; background: #222833; }
.cv1-auth-context h2 { font-size: clamp(33px,3.6vw,48px); }
.cv1-auth-context p { color: #bac0cb; }
.cv1-auth-context small { color: #8e97a6; }
.cv1-auth-form input:-webkit-autofill { box-shadow: 0 0 0 1000px #fff inset; -webkit-text-fill-color: var(--cv1-ink); }
.cv1-auth-form input:autofill { box-shadow: 0 0 0 1000px #fff inset; }
.cv1-auth-recovery-card { width: 100%; }
.cv1-auth-state { margin: 22px 0 0; }
.cv1-auth-state span { min-width: 0; }
.cv1-auth-actions { display: grid; gap: 9px; margin-top: 24px; }
.cv1-auth-actions .cv1-button { width: 100%; }
.cv1-register-shell { width: min(100%,1180px); grid-template-columns: minmax(0,1.18fr) minmax(350px,.82fr); }
.cv1-register-card { width: 100%; max-width: 690px; padding: 38px 52px; }
.cv1-register-card .cv1-auth-brand { margin-bottom: 30px; }
.cv1-register-card h1 { font-size: clamp(28px,3vw,37px); }
.cv1-register-form { margin-top: 22px; }
.cv1-register-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.cv1-consent-list { display: grid; gap: 8px; margin: 2px 0 0; padding: 0; border: 0; }
.cv1-consent-list legend { margin-bottom: 8px; color: #414955; font-size: 11px; font-weight: 680; }
.cv1-consent-row { display: grid !important; grid-template-columns: 17px minmax(0,1fr); align-items: flex-start; gap: 9px !important; padding: 10px 11px; background: #fafbfc; border: 1px solid var(--cv1-line); border-radius: 9px; }
.cv1-consent-row input { width: 16px; min-height: auto; height: 16px; margin: 1px 0 0; padding: 0; accent-color: var(--cv1-brand); box-shadow: none; }
.cv1-consent-row > span { color: #505865 !important; font-size: 10px !important; font-weight: 500 !important; line-height: 1.5; }
.cv1-consent-row a { color: var(--cv1-brand); font-weight: 630; }
.cv1-consent-row small { color: var(--cv1-faint); }
.cv1-consent-row.is-optional { background: transparent; border-style: dashed; }
.cv1-register-context { padding: 58px; }
.cv1-register-context h2 { font-size: clamp(31px,3.2vw,44px); }

/* Commercial error states */
.cv1-error-page { display: grid; min-height: 100vh; place-items: center; padding: 24px; }
.cv1-error-shell { display: grid; width: min(100%,720px); gap: 38px; padding: 36px; }
.cv1-error-card { padding: 48px; background: #fff; border: 1px solid var(--cv1-line); border-radius: 18px; box-shadow: 0 24px 70px rgba(20,24,32,.08); }
.cv1-error-code { color: var(--cv1-brand); font-size: 11px; font-weight: 720; letter-spacing: .1em; }
.cv1-error-card h1 { max-width: 560px; margin: 10px 0 0; font-size: clamp(28px,4.5vw,43px); letter-spacing: -.04em; line-height: 1.08; }
.cv1-error-card p { max-width: 530px; margin: 14px 0 0; color: var(--cv1-muted); font-size: 14px; }
.cv1-error-actions { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 28px; }
.cv1-error-shell > footer { display: flex; justify-content: center; gap: 16px; color: var(--cv1-faint); font-size: 10px; }

@media (max-width: 1240px) {
  .cv1-plan-grid-commercial { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .cv1-plan-card-commercial { min-height: 360px; }
}

@media (max-width: 820px) {
  .cv1-register-shell,
  .cv1-auth-shell { grid-template-columns: 1fr; }
  .cv1-register-context,
  .cv1-auth-context { display: none; }
  .cv1-subscription-overview { grid-template-columns: 1fr; }
}

@media (max-width: 680px) {
  .cv1-dropzone { min-height: 250px; }
  .cv1-settings-nav a { min-height: 36px; padding: 0 11px; }
  .cv1-settings-section { padding: 20px 16px; }
  .cv1-local-billing-note { align-items: flex-start; flex-direction: column; gap: 2px; }
  .cv1-subscription-facts { grid-template-columns: 1fr; }
  .cv1-payment-method { align-items: flex-start; flex-direction: column; }
  .cv1-payment-method-actions { width: 100%; justify-content: stretch; }
  .cv1-payment-method-actions form,
  .cv1-payment-method-actions button { width: 100%; }
  .cv1-dialog-actions { grid-template-columns: 1fr; }
  .cv1-pricing-heading { align-items: flex-start; flex-direction: column; }
  .cv1-period-toggle { width: 100%; }
  .cv1-period-toggle button { flex: 1; }
  .cv1-plan-grid-commercial { grid-template-columns: 1fr; }
  .cv1-plan-card-commercial { min-height: 0; }
  .cv1-plan-card-head p { min-height: 0; }
  .cv1-register-card { padding: 30px 20px; }
  .cv1-register-fields { grid-template-columns: 1fr; }
  .cv1-register-card .cv1-auth-brand { margin-bottom: 42px; }
  .cv1-error-page { padding: 0; background: #fff; }
  .cv1-error-shell { min-height: 100vh; align-content: space-between; padding: 28px 20px; }
  .cv1-error-card { padding: 0; border: 0; box-shadow: none; }
  .cv1-error-actions { display: grid; }
}

/* Commercial V2: result hierarchy, responsive flow and accessibility ------ */

.cv1-result-summary {
  padding: 28px;
  background: var(--cv1-surface);
  border: 1px solid var(--cv1-line);
  border-radius: var(--cv1-radius-lg);
  box-shadow: var(--cv1-shadow-card);
}

.cv1-result-summary-header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  margin: 0;
}

.cv1-result-summary-identity {
  min-width: 0;
}

.cv1-result-summary-identity h1,
.cv1-result-summary-identity h2 {
  margin: 4px 0 0;
  font-size: clamp(28px, 3vw, 38px);
  font-weight: 720;
  letter-spacing: -.04em;
  line-height: 1.08;
}

.cv1-result-summary-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 28px;
  margin: 18px 0 0;
}

.cv1-result-summary-meta > div {
  display: grid;
  gap: 2px;
}

.cv1-result-summary-meta dt,
.cv1-result-coverage span {
  color: var(--cv1-muted);
  font-size: 12px;
}

.cv1-result-summary-meta dd {
  margin: 0;
  font-size: 14px;
  font-weight: 680;
}

.cv1-result-coverage {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 18px;
  margin-top: 16px;
  padding-top: 16px;
  border-top: 1px solid var(--cv1-line);
}

.cv1-result-coverage > div {
  display: flex;
  align-items: baseline;
  gap: 7px;
}

.cv1-result-coverage strong {
  font-size: 13px;
}

.cv1-result-summary-actions {
  align-self: start;
}

.cv1-result-overview {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(330px, .8fr);
  align-items: stretch;
  gap: 16px;
  margin-top: 22px;
}

.cv1-result-overview-main {
  display: grid;
  min-width: 0;
  align-content: start;
  gap: 12px;
}

.cv1-result-status {
  min-height: 132px;
  margin: 0;
  box-shadow: none;
}

.cv1-result-findings-preview,
.cv1-result-kpi-panel {
  min-width: 0;
  padding: 20px;
  background: var(--cv1-surface-subtle);
  border: 1px solid var(--cv1-line);
  border-radius: var(--cv1-radius);
}

.cv1-result-findings-preview-head,
.cv1-result-kpi-heading {
  margin-bottom: 12px;
}

.cv1-result-findings-preview h2,
.cv1-result-kpi-heading h2 {
  margin: 3px 0 0;
  font-size: 18px;
  letter-spacing: -.02em;
}

.cv1-result-finding-list {
  grid-template-columns: 1fr;
}

.cv1-result-finding-list .cv1-finding {
  border-top: 1px solid var(--cv1-line);
}

.cv1-result-finding-list .cv1-finding:first-child {
  border-top: 0;
}

.cv1-result-kpi-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.cv1-result-kpi {
  min-height: 132px;
  padding: 16px;
  box-shadow: none;
}

.cv1-result-kpi > strong {
  font-size: clamp(20px, 2vw, 27px);
}

.cv1-result-kpi.cv1-kpi-payment > strong {
  overflow-wrap: normal;
  font-size: clamp(18px, 1.5vw, 22px);
  line-height: 1.18;
}

.cv1-result-findings-rest {
  padding-top: 22px;
}

.cv1-source-badges > span {
  min-height: 26px;
  padding: 0 8px;
  font-size: 12px;
}

.cv1-eyebrow,
.cv1-kpi > small,
.cv1-inline-details > summary,
.cv1-inline-details dt,
.cv1-inline-details dd,
.cv1-obligation-table-head,
.cv1-obligation-creditor small,
.cv1-detail-facts span,
.cv1-source-compare-grid article > div strong,
.cv1-source-compare-grid article > div span,
.cv1-source-compare-grid dl,
.cv1-table-note,
.cv1-activity-values span,
.cv1-activity-card > p,
.cv1-risk-item p,
.cv1-result-footer,
.cv1-processing-file .file-error,
.cv1-processing-note,
.cv1-processing-error p,
.cv1-history-table-head,
.cv1-history-row time,
.cv1-source-count,
.cv1-status-badge,
.cv1-data-quality,
.cv1-empty-commercial ol,
.cv1-auth-form label span,
.cv1-auth-between a,
.cv1-auth-register,
.cv1-auth-register a,
.cv1-auth-card footer a,
.cv1-auth-context small,
.cv1-local-billing-note strong,
.cv1-local-billing-note span,
.cv1-state-heading small,
.cv1-subscription-facts span,
.cv1-payment-method > div:first-child > span,
.cv1-payment-method p,
.cv1-renewal-status,
.cv1-period-toggle button,
.cv1-plan-card-head > span,
.cv1-plan-card-head p,
.cv1-plan-price span,
.cv1-plan-card-commercial ul,
.cv1-renew-consent span,
.cv1-renew-consent small,
.cv1-billing-legal,
.cv1-consent-list legend,
.cv1-consent-row > span,
.cv1-error-code,
.cv1-error-shell > footer,
.cv1-body small {
  font-size: 12px;
}

.cv1-settings-nav a,
.cv1-current-plan-actions button,
.cv1-payment-method-actions button,
.cv1-period-toggle button,
.cv1-plan-card-commercial .cv1-button,
.cv1-history-actions .cv1-button {
  min-height: 44px;
}

.cv1-body :where(a, button, input, select, textarea, summary):focus-visible {
  outline: 3px solid rgba(49, 94, 231, .28);
  outline-offset: 2px;
}

@media (max-width: 1150px) {
  .cv1-analysis-grid {
    grid-template-columns: 1fr;
  }

  .cv1-analysis-side {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Six readable history columns need room after the cabinet sidebar and gutters. */
@media (max-width: 1280px) {
  .cv1-history-table-head {
    display: none;
  }

  .cv1-history-card {
    display: grid;
    gap: 10px;
    background: transparent;
    border: 0;
    box-shadow: none;
  }

  .cv1-history-list {
    display: grid;
    gap: 10px;
  }

  .cv1-history-row {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 12px;
    padding: 17px;
    background: var(--cv1-surface);
    border: 1px solid var(--cv1-line);
    border-radius: 14px;
  }

  .cv1-history-row time {
    text-align: right;
  }

  .cv1-source-count,
  .cv1-history-status {
    justify-self: start;
  }

  .cv1-history-debt {
    grid-column: 1;
  }

  .cv1-history-actions {
    grid-column: 2;
    grid-row: 3;
  }
}

@media (max-width: 920px) {
  .cv1-result-summary-header,
  .cv1-result-overview {
    grid-template-columns: 1fr;
  }

  .cv1-result-summary-actions {
    justify-self: stretch;
  }

  .cv1-result-summary-actions .cv1-button {
    flex: 1;
  }
}

@media (max-width: 820px) {
  .cv1-obligations {
    display: grid;
    gap: 10px;
    background: transparent;
    border: 0;
  }

  .cv1-obligation {
    overflow: hidden;
    background: var(--cv1-surface-subtle);
    border: 1px solid var(--cv1-line);
    border-radius: 12px;
  }

  .cv1-obligation-row {
    grid-template-columns: repeat(2, minmax(0, 1fr)) 24px;
    gap: 14px 10px;
    padding: 16px;
  }

  .cv1-obligation-creditor {
    grid-column: 1 / 3;
    grid-row: auto;
  }

  .cv1-obligation-creditor strong,
  .cv1-obligation-creditor small {
    white-space: normal;
  }

  /* The narrow third track belongs only to the disclosure chevron. */
  .cv1-obligation-cell:nth-of-type(2),
  .cv1-obligation-cell:nth-of-type(4) { grid-column: 1; }
  .cv1-obligation-cell:nth-of-type(3),
  .cv1-obligation-cell:nth-of-type(5) { grid-column: 2; }

  .cv1-obligation-sources {
    grid-column: 1 / 3;
  }

  .cv1-obligation-chevron {
    grid-column: 3;
    grid-row: 1;
  }
}

@media (max-width: 720px) {
  .cv1-upload-progress {
    display: flex;
    overflow-x: auto;
    padding-bottom: 3px;
  }

  .cv1-upload-progress li {
    min-width: 190px;
  }

  .cv1-analysis-side {
    grid-template-columns: 1fr;
  }

  .cv1-upload-workspace,
  .cv1-parameters-card,
  .cv1-launch-card {
    padding: 20px;
  }

  .cv1-bureau-slot {
    min-height: 178px;
    grid-template-columns: 42px minmax(0, 1fr);
  }

  .cv1-bureau-actions {
    grid-column: 1 / -1;
    grid-row: 4;
    margin-top: 8px;
  }

  .cv1-bureau-actions .cv1-button {
    flex: 1;
  }

  .cv1-bureau-format {
    grid-column: 2;
  }

  .cv1-result-summary {
    padding: 20px;
  }

  .cv1-result-summary-actions {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 44px;
  }

  .cv1-result-kpi-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  /* Reset the legacy payment span; otherwise it creates an implicit column. */
  .cv1-result-kpi-grid > .cv1-kpi { grid-column: auto; }
}

@media (max-width: 460px) {
  .cv1-result-summary-meta,
  .cv1-result-coverage > div {
    display: grid;
  }

  .cv1-result-summary-actions {
    grid-template-columns: minmax(0, 1fr) 44px;
  }

  .cv1-result-summary-actions .cv1-result-new-analysis {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  .cv1-body *,
  .cv1-body *::before,
  .cv1-body *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}
