:root {
  --page: #f3f6f5;
  --surface: #ffffff;
  --surface-muted: #eef2f1;
  --ink: #18232b;
  --muted: #5d6970;
  --border: #d7dfdc;
  --border-strong: #aebbb7;
  --brand: #155766;
  --brand-dark: #103f4b;
  --brand-soft: #e3f0f1;
  --success: #2e6a4b;
  --success-soft: #e7f2eb;
  --warning: #90571c;
  --warning-soft: #fff1dc;
  --danger: #963848;
  --danger-soft: #fbe9ec;
  --focus: #277e91;
  --shadow: 0 8px 24px rgba(27, 45, 49, 0.08);
  color-scheme: light;
}

* {
  box-sizing: border-box;
  letter-spacing: 0;
}

[hidden]:not(.amplify-liveness-freshness-canvas) {
  display: none !important;
}

html {
  min-width: 320px;
  background: var(--page);
}

body {
  min-height: 100vh;
  margin: 0;
  display: flex;
  flex-direction: column;
  background: var(--page);
  color: var(--ink);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 16px;
  line-height: 1.5;
}

button,
input,
select,
textarea {
  font: inherit;
}

button,
a {
  -webkit-tap-highlight-color: transparent;
}

a {
  color: var(--brand);
  text-underline-offset: 3px;
}

a:hover {
  color: var(--brand-dark);
}

svg {
  width: 1.15rem;
  height: 1.15rem;
  flex: 0 0 auto;
}

.skip-link {
  position: fixed;
  top: 8px;
  left: 8px;
  z-index: 100;
  padding: 8px 12px;
  transform: translateY(-160%);
  border-radius: 4px;
  background: var(--ink);
  color: #fff;
  visibility: hidden;
}

.skip-link:focus-visible {
  transform: translateY(0);
  visibility: visible;
}

:focus-visible {
  outline: 3px solid rgba(39, 126, 145, 0.35);
  outline-offset: 2px;
}

.app-header {
  width: 100%;
  min-height: 68px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 12px clamp(20px, 5vw, 64px);
  border-bottom: 1px solid var(--border);
  background: rgba(255, 255, 255, 0.96);
}

.brand {
  display: inline-block;
  color: var(--ink);
  font-size: 1.25rem;
  font-weight: 760;
  text-decoration: none;
}

.brand:hover {
  color: var(--ink);
}

.header-actions {
  display: flex;
  align-items: center;
  gap: 18px;
}

.header-actions form {
  margin: 0;
}

.staff-customer-view-banner {
  width: 100%;
  min-height: 54px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 8px clamp(20px, 5vw, 64px);
  border-bottom: 1px solid #9a7416;
  background: #fff4ce;
  color: #49370c;
}

.staff-customer-view-banner > svg {
  width: 20px;
  height: 20px;
}

.staff-customer-view-banner strong,
.staff-customer-view-banner span {
  display: block;
}

.staff-customer-view-banner span {
  margin-top: 1px;
  font-size: 0.78rem;
}

.staff-customer-view-banner form {
  margin: 0;
}

.text-link {
  font-weight: 650;
  text-decoration: none;
}

.button,
.icon-button,
.input-action,
.text-button {
  border: 0;
  cursor: pointer;
}

.button {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  padding: 10px 16px;
  border: 1px solid transparent;
  border-radius: 5px;
  font-weight: 700;
  line-height: 1.2;
  text-decoration: none;
  transition: background-color 120ms ease, border-color 120ms ease, color 120ms ease;
}

.button-primary,
.button:not(.button-secondary) {
  background: var(--brand);
  color: #fff;
}

.button-primary:hover,
.button:not(.button-secondary):hover {
  background: var(--brand-dark);
  color: #fff;
}

.button-secondary {
  border-color: var(--border-strong);
  background: var(--surface);
  color: var(--ink);
}

.button-secondary:hover:not(:disabled) {
  border-color: var(--brand);
  background: var(--brand-soft);
}

.button:disabled,
.button[aria-disabled='true'] {
  cursor: not-allowed;
  opacity: 0.58;
  pointer-events: none;
}

.button-small {
  min-height: 38px;
  padding: 8px 13px;
  font-size: 0.9rem;
}

.button-full {
  width: 100%;
}

.icon-button,
.input-action {
  width: 40px;
  height: 40px;
  display: inline-grid;
  place-items: center;
  padding: 0;
  border-radius: 5px;
  background: transparent;
  color: var(--muted);
}

.icon-button:hover,
.input-action:hover {
  background: var(--surface-muted);
  color: var(--ink);
}

.auth-main {
  width: min(100% - 32px, 500px);
  margin: 0 auto;
  padding: 48px 0 44px;
}

.auth-heading,
.page-heading {
  margin-bottom: 20px;
}

.auth-heading h1,
.page-heading h1,
.dashboard-heading h1,
.error-main h1 {
  margin: 0 0 7px;
  font-size: 2rem;
  line-height: 1.16;
}

.auth-heading p,
.page-heading p,
.error-main p {
  margin: 0;
  color: var(--muted);
}

.eyebrow {
  display: flex;
  align-items: center;
  gap: 7px;
  color: var(--brand);
  font-size: 0.78rem;
  font-weight: 780;
  text-transform: uppercase;
}

.eyebrow svg {
  width: 15px;
  height: 15px;
}

.auth-card,
.verification-card,
.account-card {
  border: 1px solid var(--border);
  border-radius: 6px;
  background: var(--surface);
  box-shadow: var(--shadow);
}

.auth-card {
  padding: 26px;
}

form {
  margin: 0;
}

.field-group {
  min-width: 0;
  margin: 0 0 20px;
  padding: 0;
  border: 0;
}

.field-group label,
.field-group legend,
.verification-card form > label {
  display: block;
  margin: 0 0 7px;
  color: var(--ink);
  font-size: 0.9rem;
  font-weight: 700;
}

.input-with-icon {
  position: relative;
}

.input-with-icon > svg {
  position: absolute;
  top: 50%;
  left: 13px;
  z-index: 1;
  width: 18px;
  height: 18px;
  transform: translateY(-50%);
  color: var(--muted);
  pointer-events: none;
}

input[type="email"],
input[type="tel"],
input[type="password"],
input[type="text"],
input[type="url"],
input[type="date"],
input[type="number"],
select,
textarea {
  width: 100%;
  padding: 10px 12px;
  border: 1px solid var(--border-strong);
  border-radius: 5px;
  background: #fff;
  color: var(--ink);
}

input[type="email"],
input[type="tel"],
input[type="password"],
input[type="text"],
input[type="url"],
input[type="date"],
input[type="number"],
select {
  min-height: 46px;
}

textarea {
  min-height: 92px;
  resize: vertical;
}

.input-with-icon input {
  padding-left: 42px;
}

.input-with-action input {
  padding-right: 48px;
}

.input-action {
  position: absolute;
  top: 3px;
  right: 3px;
}

input:hover,
select:hover,
textarea:hover {
  border-color: #7d918b;
}

input:focus,
select:focus,
textarea:focus {
  border-color: var(--focus);
  outline: 3px solid rgba(39, 126, 145, 0.15);
}

.field-hint {
  margin: 6px 0 0;
  color: var(--muted);
  font-size: 0.8rem;
}

.phone-entry-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
  gap: 10px;
}

.phone-entry-grid label {
  min-width: 0;
  margin: 0;
}

.phone-entry-grid label > span {
  display: block;
  margin-bottom: 7px;
}

.phone-entry-grid input,
.phone-entry-grid select {
  min-width: 0;
}

.sms-program-notice {
  line-height: 1.5;
}

.verification-sms-notice {
  margin-top: 16px;
  line-height: 1.5;
}

.sms-program-notice a,
.verification-sms-notice a,
.consent-section a,
.legal-copy a {
  color: var(--brand);
  font-weight: 700;
}

.consent-section {
  margin: 0 0 22px;
  padding: 18px 0 0;
  border-top: 1px solid var(--border);
}

.consent-section h2 {
  margin: 0 0 10px;
  font-size: 0.95rem;
}

.consent-section .check-row {
  margin-bottom: 0;
  line-height: 1.5;
}

.registration-consents {
  display: grid;
  gap: 14px;
}

.legal-page {
  width: min(760px, calc(100% - 32px));
}

.legal-copy {
  margin-top: 28px;
  border-top: 1px solid var(--border);
}

.legal-copy section {
  padding: 22px 0;
  border-bottom: 1px solid var(--border);
}

.legal-copy h2 {
  margin: 0 0 8px;
  font-size: 1rem;
}

.legal-copy p {
  margin: 0;
  color: var(--muted);
  line-height: 1.65;
}

.legal-copy p + p {
  margin-top: 12px;
}

.segmented-control {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 6px;
  padding: 5px;
  border: 1px solid var(--border);
  border-radius: 6px;
  background: var(--surface-muted);
}

.segmented-control label {
  min-width: 0;
  margin: 0;
  cursor: pointer;
}

.segmented-control input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.segmented-control span {
  min-height: 43px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  padding: 8px;
  border: 1px solid transparent;
  border-radius: 4px;
  color: var(--muted);
  font-size: 0.84rem;
  text-align: center;
}

.segmented-control input:checked + span {
  border-color: var(--border-strong);
  background: var(--surface);
  color: var(--ink);
  box-shadow: 0 2px 5px rgba(27, 45, 49, 0.06);
}

.segmented-control input:focus-visible + span {
  outline: 3px solid rgba(39, 126, 145, 0.35);
  outline-offset: 1px;
}

.segmented-control-three {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.check-row {
  display: grid;
  grid-template-columns: 19px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  margin: 4px 0 22px;
  color: var(--muted);
  font-size: 0.86rem;
  cursor: pointer;
}

.check-row input {
  width: 18px;
  height: 18px;
  margin: 2px 0 0;
  accent-color: var(--brand);
}

.captcha-row {
  min-height: 66px;
  margin: 0 0 20px;
  overflow: hidden;
}

.auth-switch {
  margin: 22px 0 0;
  color: var(--muted);
  text-align: center;
}

.auth-switch a {
  font-weight: 700;
}

.alert {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-bottom: 20px;
  padding: 12px 14px;
  border: 1px solid;
  border-radius: 5px;
  font-size: 0.9rem;
}

.alert svg {
  margin-top: 1px;
}

.alert-error {
  border-color: #e7acb5;
  background: var(--danger-soft);
  color: #702533;
}

.alert-success {
  border-color: #afd0bd;
  background: var(--success-soft);
  color: #225139;
}

.alert-info {
  border-color: #b7d5dc;
  background: #edf7f8;
  color: var(--brand-dark);
}

.page-main {
  width: min(100% - 40px, 1180px);
  margin: 0 auto;
  padding: 40px 0 52px;
}

.narrow-page {
  max-width: 900px;
}

.verification-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.verification-card {
  min-width: 0;
  padding: 22px;
}

.verification-card.is-complete {
  border-color: #b4d0c0;
  box-shadow: none;
}

.verification-title {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  gap: 11px;
  align-items: center;
  margin-bottom: 24px;
}

.verification-icon,
.account-kind-icon,
.error-icon {
  display: inline-grid;
  place-items: center;
  border-radius: 5px;
  background: var(--brand-soft);
  color: var(--brand);
}

.verification-icon {
  width: 42px;
  height: 42px;
}

.verification-title h2,
.verification-title p {
  overflow-wrap: anywhere;
}

.verification-title h2 {
  margin: 0;
  font-size: 1rem;
}

.verification-title p {
  margin: 2px 0 0;
  color: var(--muted);
  font-size: 0.82rem;
}

.status-badge {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 4px 8px;
  border: 1px solid;
  border-radius: 4px;
  font-size: 0.72rem;
  font-weight: 780;
  text-transform: capitalize;
  white-space: nowrap;
}

.status-success {
  border-color: #9ec5af;
  background: var(--success-soft);
  color: var(--success);
}

.status-pending {
  border-color: #dfbb8d;
  background: var(--warning-soft);
  color: var(--warning);
}

.status-neutral {
  border-color: var(--border-strong);
  background: var(--surface-muted);
  color: var(--muted);
}

.status-danger {
  border-color: #e2a5af;
  background: var(--danger-soft);
  color: var(--danger);
}

.button.button-danger {
  border-color: var(--danger);
  background: var(--danger);
  color: #fff;
}

.button.button-danger:hover:not(:disabled) {
  border-color: #762a37;
  background: #762a37;
  color: #fff;
}

.code-input {
  margin-bottom: 12px;
  font-variant-numeric: tabular-nums;
  font-weight: 750;
  text-align: center;
}

.resend-form {
  margin-top: 10px;
  text-align: center;
}

.phone-change {
  margin-top: 15px;
  padding-top: 14px;
  border-top: 1px solid var(--border);
}

.phone-change summary {
  cursor: pointer;
  color: var(--brand);
  font-size: 0.85rem;
  font-weight: 700;
  text-align: center;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.phone-change[open] summary {
  margin-bottom: 16px;
}

.phone-change .verification-sms-notice {
  margin: 12px 0;
}

.phone-entry-grid-stacked {
  grid-template-columns: 1fr;
}

.text-button {
  padding: 6px;
  background: transparent;
  color: var(--brand);
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.dashboard-page {
  max-width: 1240px;
}

.account-create-page {
  max-width: 820px;
}

.account-create-panel {
  margin-top: 0;
}

.dashboard-heading,
.section-heading,
.account-card-header,
.schedule-band,
.legal-notice {
  display: flex;
  align-items: center;
}

.dashboard-heading {
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 22px;
}

.dashboard-heading h1 {
  margin-bottom: 0;
}

.legal-notice {
  align-items: flex-start;
  gap: 13px;
  margin-bottom: 18px;
  padding: 16px 18px;
  border-left: 4px solid var(--brand);
  background: var(--brand-soft);
}

.legal-notice > svg {
  width: 21px;
  height: 21px;
  margin-top: 1px;
  color: var(--brand);
}

.legal-notice strong {
  display: block;
  margin-bottom: 2px;
}

.legal-notice p {
  margin: 0;
  color: #415a60;
  font-size: 0.88rem;
}

.schedule-band {
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 34px;
  padding: 18px 20px;
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
  background: var(--surface);
}

.band-label {
  display: block;
  margin-bottom: 2px;
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 700;
  text-transform: uppercase;
}

.schedule-band strong {
  font-size: 1.05rem;
}

.schedule-rule {
  display: flex;
  align-items: center;
  gap: 9px;
  color: var(--muted);
  font-size: 0.88rem;
}

.schedule-rule svg {
  color: var(--success);
}

.section-heading {
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 14px;
}

.section-heading h2 {
  margin: 0;
  font-size: 1.1rem;
}

.section-heading span {
  color: var(--muted);
  font-size: 0.85rem;
}

.profile-identity-section {
  margin-bottom: 30px;
}

.profile-section-heading {
  align-items: end;
}

.profile-section-heading > div > p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 0.86rem;
}

.profile-link-label {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  font-weight: 700;
}

.profile-link-label svg {
  width: 16px;
  height: 16px;
  color: var(--brand);
}

.identity-profile-actions {
  display: grid;
  justify-items: end;
  gap: 10px;
}

.royalty-account-empty {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 20px;
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
  background: var(--surface);
}

.royalty-account-empty h3,
.royalty-account-empty p {
  margin: 0;
}

.royalty-account-empty h3 {
  font-size: 0.96rem;
}

.royalty-account-empty p {
  margin-top: 3px;
  color: var(--muted);
  font-size: 0.84rem;
}

.account-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.account-card {
  min-width: 0;
  padding: 20px;
}

.account-card-header {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  gap: 12px;
  margin-bottom: 22px;
}

.account-kind-icon {
  width: 42px;
  height: 42px;
}

.account-name {
  min-width: 0;
}

.account-name h3 {
  margin: 0;
  overflow: hidden;
  font-size: 1rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.account-name > span {
  color: var(--muted);
  font-size: 0.8rem;
  text-transform: capitalize;
}

.balance-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(120px, 0.45fr);
  gap: 12px;
  padding: 18px 0;
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
}

.primary-balance span,
.secondary-balance span {
  display: block;
  color: var(--muted);
  font-size: 0.77rem;
}

.primary-balance strong,
.secondary-balance strong {
  display: block;
  margin-top: 2px;
  font-variant-numeric: tabular-nums;
}

.primary-balance strong {
  font-size: 1.65rem;
}

.secondary-balance {
  padding-left: 14px;
  border-left: 1px solid var(--border);
}

.secondary-balance strong {
  font-size: 1rem;
}

.account-facts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin: 17px 0;
}

.account-facts div {
  min-width: 0;
}

.account-facts dt {
  color: var(--muted);
  font-size: 0.75rem;
}

.account-facts dd {
  margin: 2px 0 0;
  overflow-wrap: anywhere;
  font-size: 0.86rem;
  font-weight: 700;
  text-transform: capitalize;
}

.text-danger {
  color: var(--danger);
}

.account-card-footer {
  margin-top: 4px;
}

.account-detail-page {
  max-width: 1040px;
}

.account-detail-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 24px;
}

.account-detail-heading h1 {
  margin: 0;
}

.account-detail-heading p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 0.88rem;
  text-transform: capitalize;
}

.account-detail-actions {
  display: flex;
  align-items: center;
  gap: 10px;
}

.account-balance-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-bottom: 34px;
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
  background: var(--surface);
}

.account-balance-summary > div {
  min-width: 0;
  padding: 20px;
}

.account-balance-summary > div + div {
  border-left: 1px solid var(--border);
}

.account-balance-summary span,
.account-balance-summary strong {
  display: block;
}

.account-balance-summary span {
  color: var(--muted);
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
}

.account-balance-summary strong {
  margin-top: 5px;
  overflow-wrap: anywhere;
  font-size: 1.15rem;
  font-variant-numeric: tabular-nums;
}

.account-balance-summary .account-balance-primary strong {
  font-size: 1.55rem;
}

.account-payout-section {
  margin-bottom: 36px;
}

.payout-account-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
  background: var(--surface);
}

.payout-account-summary > div {
  min-width: 0;
  padding: 16px 18px;
}

.payout-account-summary > div + div {
  border-left: 1px solid var(--border);
}

.payout-account-summary span,
.payout-account-summary strong,
.payout-account-summary small {
  display: block;
  overflow-wrap: anywhere;
}

.payout-account-summary span {
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 700;
  text-transform: uppercase;
}

.payout-account-summary strong {
  margin-top: 4px;
  font-size: 0.92rem;
}

.payout-account-summary small {
  margin-top: 3px;
  color: var(--muted);
  font-size: 0.74rem;
}

.payout-blockers,
.payout-inline-status {
  display: flex;
  gap: 11px;
  align-items: flex-start;
  padding: 13px 16px;
  border-bottom: 1px solid var(--border);
  background: var(--warning-soft);
}

.payout-blockers svg,
.payout-inline-status svg {
  width: 18px;
  height: 18px;
  flex: 0 0 auto;
  margin-top: 1px;
}

.payout-blockers ul {
  margin: 4px 0 0;
  padding-left: 18px;
  color: var(--muted);
  font-size: 0.8rem;
}

.payout-inline-status {
  align-items: center;
  color: var(--muted);
  font-size: 0.82rem;
  background: var(--surface-muted);
}

.early-payout-form {
  display: grid;
  grid-template-columns: minmax(170px, 1fr) minmax(150px, 190px) minmax(150px, 190px) auto;
  gap: 14px 18px;
  align-items: end;
  padding: 18px;
  border-bottom: 1px solid var(--border);
  background: var(--surface-muted);
}

.early-payout-form h3,
.payout-history-heading h3 {
  margin: 0;
}

.early-payout-form h3,
.payout-history-heading h3 {
  font-size: 0.92rem;
}

.early-payout-form h3 {
  padding-bottom: 10px;
}

.early-payout-amount > span,
.early-payout-estimate > span,
.early-payout-estimate > strong {
  display: block;
}

.early-payout-estimate {
  min-height: 67px;
  padding: 10px 12px;
  border: 1px solid var(--border);
  background: var(--surface);
}

.early-payout-estimate > span {
  color: var(--muted);
  font-size: 0.7rem;
  font-weight: 700;
}

.early-payout-estimate > strong {
  margin-top: 6px;
  font-size: 0.92rem;
  font-variant-numeric: tabular-nums;
}

.withholding-rate-list {
  display: grid;
  gap: 0.25rem;
  margin: 0.2rem 0 0;
  padding: 0;
  list-style: none;
}

.withholding-rate-list li {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 0.5rem;
  font-size: 0.75rem;
}

.withholding-rate-list li > span {
  min-width: 0;
  overflow-wrap: anywhere;
}

.withholding-rate-list li > strong {
  flex: 0 0 auto;
  font-size: inherit;
}

.payout-account-summary .withholding-rate-list li {
  align-items: flex-start;
  flex-direction: column;
  gap: 0;
}

.payout-account-summary .withholding-rate-list li > strong {
  margin-top: 1px;
}

.withholding-detail-band {
  margin-top: 12px;
  padding: 12px 0;
  border-block: 1px solid var(--border);
}

.withholding-detail-band > strong {
  font-size: 0.78rem;
}

.early-payout-amount > span {
  margin-bottom: 5px;
  font-size: 0.75rem;
  font-weight: 700;
}

.payout-history-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-top: 24px;
  margin-bottom: 9px;
}

.payout-history-heading span {
  color: var(--muted);
  font-size: 0.75rem;
}

.payout-history-list {
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
  background: var(--surface);
}

.payout-history-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(100px, auto) minmax(120px, auto);
  gap: 16px;
  align-items: center;
  min-height: 66px;
  padding: 12px 16px;
}

.payout-history-row + .payout-history-row {
  border-top: 1px solid var(--border);
}

.payout-history-row strong,
.payout-history-row small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.payout-history-row > div > strong {
  font-size: 0.86rem;
}

.payout-history-row small {
  margin-top: 3px;
  color: var(--muted);
  font-size: 0.72rem;
}

.payout-history-amount {
  font-size: 0.88rem;
  font-variant-numeric: tabular-nums;
  text-align: right;
}

.payout-history-empty {
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
  background: var(--surface);
}

.account-activity-controls {
  display: grid;
  grid-template-columns: minmax(220px, 300px) 90px auto;
  gap: 12px;
  align-items: end;
  justify-content: end;
  margin-bottom: 12px;
}

.account-activity-controls label {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.account-activity-controls label > span {
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 700;
}

.account-activity-controls select {
  width: 100%;
}

.account-activity-list {
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
  background: var(--surface);
}

.account-activity-row {
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr) minmax(110px, auto);
  gap: 14px;
  align-items: center;
  min-height: 74px;
  padding: 14px 18px;
}

.account-activity-row + .account-activity-row {
  border-top: 1px solid var(--border);
}

.account-activity-icon {
  display: inline-flex;
  width: 40px;
  height: 40px;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--border);
  border-radius: 6px;
  color: var(--brand);
  background: var(--brand-soft);
}

.account-activity-icon svg {
  width: 18px;
  height: 18px;
}

.account-activity-copy {
  min-width: 0;
}

.account-activity-copy h3,
.account-activity-copy p {
  margin: 0;
  overflow-wrap: anywhere;
}

.account-activity-copy h3 {
  font-size: 0.92rem;
}

.account-activity-copy p {
  margin-top: 3px;
  color: var(--muted);
  font-size: 0.8rem;
}

.account-activity-amount {
  justify-self: end;
  font-size: 0.93rem;
  font-variant-numeric: tabular-nums;
  text-align: right;
  white-space: nowrap;
}

.account-activity-amount.is-credit {
  color: var(--success);
}

.account-activity-amount.is-debit {
  color: var(--danger);
}

.account-activity-amount.is-transfer {
  color: var(--muted);
  font-size: 0.8rem;
}

.account-activity-empty {
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
  background: var(--surface);
}

.account-activity-pagination {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr) auto 36px;
  gap: 10px;
  align-items: center;
  margin-top: 14px;
}

.account-pagination-pages {
  display: flex;
  min-width: 0;
  align-items: center;
  justify-content: center;
  gap: 5px;
}

.account-pagination-step,
.account-pagination-page,
.account-pagination-gap {
  display: inline-flex;
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
  align-items: center;
  justify-content: center;
}

.account-pagination-step,
.account-pagination-page {
  border: 1px solid var(--border-strong);
  border-radius: 4px;
  color: var(--ink);
  background: var(--surface);
  font-size: 0.8rem;
  font-weight: 700;
  text-decoration: none;
}

.account-pagination-step:hover,
.account-pagination-page:hover {
  border-color: var(--brand);
  color: var(--brand);
  background: var(--brand-soft);
}

.account-pagination-step svg {
  width: 17px;
  height: 17px;
}

.account-pagination-step.is-disabled {
  color: var(--muted);
  background: var(--surface-muted);
  opacity: 0.55;
}

.account-pagination-page.is-current {
  border-color: var(--brand);
  color: var(--surface);
  background: var(--brand);
}

.account-pagination-gap {
  color: var(--muted);
  font-size: 0.8rem;
}

.account-pagination-position {
  color: var(--muted);
  font-size: 0.78rem;
  white-space: nowrap;
}

.onboarding-page {
  max-width: 1180px;
}

.breadcrumb {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 18px;
  color: var(--muted);
  font-size: 0.84rem;
}

.breadcrumb a {
  font-weight: 700;
  text-decoration: none;
}

.breadcrumb svg {
  width: 14px;
  height: 14px;
}

.onboarding-layout {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(260px, 0.8fr);
  gap: 22px;
  align-items: start;
}

.setup-panel,
.progress-panel {
  border: 1px solid var(--border);
  border-radius: 6px;
  background: var(--surface);
}

.setup-panel {
  min-width: 0;
  padding: 22px;
}

.setup-panel-heading {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  gap: 12px;
  align-items: start;
  margin-bottom: 22px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--border);
}

.step-number {
  width: 36px;
  height: 36px;
  display: inline-grid;
  place-items: center;
  border-radius: 5px;
  background: var(--brand);
  color: #fff;
  font-weight: 800;
}

.setup-panel-heading h2,
.progress-panel h2 {
  margin: 0;
  font-size: 1.05rem;
}

.setup-panel-heading p {
  margin: 3px 0 0;
  color: var(--muted);
  font-size: 0.84rem;
}

.profile-fields {
  margin: 0 0 24px;
  padding: 22px 0 2px;
  border: 0;
  border-top: 1px solid var(--border);
}

.profile-fields[hidden] {
  display: none;
}

.profile-fields h3 {
  margin: 0 0 16px;
  font-size: 0.94rem;
}

.profile-fields h3:not(:first-child) {
  margin-top: 8px;
  padding-top: 20px;
  border-top: 1px solid var(--border);
}

.profile-section-heading {
  min-height: 38px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 16px;
}

.profile-section-heading h3 {
  margin: 0;
}

.form-action-status {
  display: block;
  min-height: 20px;
  margin: -8px 0 8px;
  color: var(--success);
  font-size: 0.82rem;
}

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

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

.field-span-two {
  grid-column: span 2;
}

.address-fields {
  margin-top: 4px;
}

.form-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  padding-top: 4px;
}

.progress-panel {
  position: sticky;
  top: 20px;
  padding: 22px;
}

.progress-list {
  margin: 20px 0;
  padding: 0;
  list-style: none;
}

.progress-list li {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  padding: 10px 0;
  color: var(--muted);
}

.progress-list li + li {
  border-top: 1px solid var(--border);
}

.progress-list li > svg {
  margin-top: 2px;
}

.progress-list strong,
.progress-list small {
  display: block;
}

.progress-list strong {
  color: var(--ink);
  font-size: 0.86rem;
}

.progress-list small {
  margin-top: 1px;
  font-size: 0.76rem;
  text-transform: capitalize;
}

.progress-list .is-complete > svg {
  color: var(--success);
}

.progress-list .is-current > svg {
  color: var(--brand);
}

.setup-next-actions {
  display: grid;
  gap: 8px;
}

.setup-next-action {
  width: 100%;
}

.draft-account-delete {
  display: flex;
  justify-content: flex-end;
  margin-top: 16px;
}

.tax-onboarding-notice {
  margin-top: 20px;
}

.tipalti-onboarding-frame {
  border: 1px solid var(--border);
  background: var(--surface);
}

.tipalti-onboarding-frame > header {
  padding: 20px 22px;
  border-bottom: 1px solid var(--border);
}

.tipalti-onboarding-frame h2,
.tipalti-onboarding-frame p {
  margin: 0;
}

.tipalti-onboarding-frame h2 {
  font-size: 1.05rem;
}

.tipalti-onboarding-frame p {
  margin-top: 4px;
  color: var(--muted);
  font-size: 0.82rem;
}

.tipalti-onboarding-frame iframe {
  display: block;
  width: 100%;
  height: 760px;
  border: 0;
  background: #fff;
}

.tipalti-onboarding-frame > footer {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: center;
  min-height: 48px;
  padding: 10px 16px;
  border-top: 1px solid var(--border);
  color: var(--muted);
  font-size: 0.76rem;
}

.tipalti-onboarding-frame > footer span,
.tipalti-onboarding-frame > footer a {
  display: inline-flex;
  gap: 6px;
  align-items: center;
}

.tipalti-onboarding-frame > footer svg {
  width: 15px;
  height: 15px;
}

.tax-review-confirmation {
  display: grid;
  gap: 16px;
  padding: 18px;
  border: 1px solid var(--border);
  background: var(--surface);
}

.security-note {
  display: flex;
  gap: 9px;
  align-items: flex-start;
  padding: 12px;
  border-left: 3px solid var(--brand);
  background: var(--brand-soft);
  color: #415a60;
}

.security-note svg {
  margin-top: 1px;
}

.security-note p {
  margin: 0;
  font-size: 0.78rem;
}

.security-status {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
  padding: 22px 0;
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
}

.security-status-icon {
  width: 48px;
  height: 48px;
  display: inline-grid;
  place-items: center;
  border-radius: 6px;
  background: var(--success-soft);
  color: var(--success);
}

.security-status-icon.is-muted {
  background: var(--surface-muted);
  color: var(--muted);
}

.security-status-icon svg {
  width: 23px;
  height: 23px;
}

.security-status h2,
.compact-heading h2 {
  margin: 0;
  font-size: 1.02rem;
}

.security-status p,
.compact-heading p {
  margin: 3px 0 0;
  color: var(--muted);
  font-size: 0.84rem;
}

.security-settings-page {
  max-width: 720px;
}

.security-settings-section {
  padding: 24px 0;
  border-top: 1px solid var(--border);
}

.security-settings-section:last-child {
  border-bottom: 1px solid var(--border);
}

.security-settings-section > h2 {
  margin: 0 0 18px;
  font-size: 1.05rem;
}

.security-setting-heading {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
}

.security-setting-heading h2 {
  margin: 0;
  font-size: 1.02rem;
}

.security-setting-heading span {
  color: var(--muted);
  font-size: 0.84rem;
}

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

.pending-security-change {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 18px;
  padding: 12px 0;
  border-bottom: 1px solid var(--border);
  color: var(--muted);
  font-size: 0.88rem;
}

.pending-security-change strong {
  color: var(--ink);
}

.settings-divider {
  margin: 24px 0;
  border: 0;
  border-top: 1px solid var(--border);
}

.mfa-setup,
.recovery-code-panel {
  padding: 24px;
  border: 1px solid var(--border);
  border-radius: 6px;
  background: var(--surface);
  box-shadow: var(--shadow);
}

.mfa-enrollment-grid {
  display: grid;
  grid-template-columns: 240px minmax(0, 1fr);
  gap: 28px;
  align-items: center;
}

.qr-frame {
  width: 240px;
  height: 240px;
  overflow: hidden;
  border: 1px solid var(--border);
  border-radius: 5px;
  background: #fff;
}

.qr-frame img {
  width: 240px;
  height: 240px;
  display: block;
}

.mfa-confirmation {
  min-width: 0;
}

.manual-secret {
  margin-bottom: 22px;
  padding: 12px 14px;
  border-left: 3px solid var(--brand);
  background: var(--brand-soft);
}

.manual-secret span {
  display: block;
  margin-bottom: 4px;
  color: var(--muted);
  font-size: 0.76rem;
  font-weight: 700;
  text-transform: uppercase;
}

.manual-secret code,
.recovery-code-grid code {
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-variant-numeric: tabular-nums;
}

.manual-secret code {
  overflow-wrap: anywhere;
  color: var(--ink);
  font-size: 0.9rem;
  font-weight: 700;
}

.icon-text-button {
  min-height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  padding: 7px 10px;
  border: 1px solid var(--border-strong);
  border-radius: 5px;
  background: var(--surface);
  color: var(--ink);
  cursor: pointer;
  font: inherit;
  font-size: 0.82rem;
  font-weight: 700;
}

.icon-text-button:hover {
  border-color: var(--brand);
  background: var(--brand-soft);
}

.recovery-code-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--border);
  border-radius: 5px;
  background: var(--border);
}

.recovery-code-grid code {
  min-width: 0;
  padding: 11px 14px;
  overflow-wrap: anywhere;
  background: var(--surface-muted);
  color: var(--ink);
  font-size: 0.9rem;
  font-weight: 700;
  text-align: center;
}

.copy-status {
  min-height: 20px;
  margin: 10px 0 0;
  color: var(--success);
  font-size: 0.8rem;
  text-align: right;
}

.form-actions.align-end {
  justify-content: flex-end;
  margin-top: 18px;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.operations-page {
  max-width: 1240px;
}

.role-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 6px;
}

.operations-summary {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  margin-bottom: 26px;
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
  background: var(--surface);
}

.operations-summary div {
  min-width: 0;
  padding: 17px 18px;
}

.operations-summary div + div {
  border-left: 1px solid var(--border);
}

.operations-summary span,
.operations-summary strong {
  display: block;
}

.operations-summary span {
  overflow-wrap: anywhere;
  color: var(--muted);
  font-size: 0.74rem;
  font-weight: 700;
  text-transform: uppercase;
}

.operations-summary strong {
  margin-top: 2px;
  font-size: 1.35rem;
  font-variant-numeric: tabular-nums;
}

.operations-workspace {
  display: grid;
  grid-template-columns: minmax(0, 760px) minmax(280px, 1fr);
  gap: clamp(24px, 4vw, 48px);
  align-items: end;
}

.staff-side-tools {
  min-width: 0;
  display: grid;
  gap: 34px;
  align-self: stretch;
}

.staff-customer-view-form {
  display: grid;
  gap: 14px;
  padding: 18px;
  border: 1px solid var(--border);
  border-radius: 6px;
  background: var(--surface);
}

.staff-customer-view-form label,
.staff-customer-view-form label > span {
  display: block;
}

.staff-customer-view-form label > span {
  margin-bottom: 6px;
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 700;
}

.staff-customer-view-form textarea {
  resize: vertical;
}

.operations-section,
.staff-developer-review {
  min-width: 0;
}

.staff-developer-review {
  justify-self: end;
  width: min(100%, 360px);
}

.operation-list {
  display: grid;
  gap: 7px;
}

.operations-section .section-heading p {
  margin: 3px 0 0;
  color: var(--muted);
  font-size: 0.84rem;
}

.operation-row {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr) auto 20px;
  gap: 13px;
  align-items: center;
  padding: 13px 16px;
  border: 1px solid var(--border);
  border-radius: 6px;
  background: var(--surface);
  color: var(--ink);
  text-decoration: none;
}

.operation-row:hover {
  border-color: var(--brand);
  background: var(--brand-soft);
  color: var(--ink);
}

.operation-icon {
  width: 42px;
  height: 42px;
  display: inline-grid;
  place-items: center;
  border-radius: 5px;
  background: var(--brand-soft);
  color: var(--brand);
}

.operation-row strong,
.operation-row small {
  display: block;
}

.operation-row small,
.document-list small {
  margin-top: 2px;
  color: var(--muted);
  font-size: 0.78rem;
}

.operation-count {
  min-width: 34px;
  font-size: 1.2rem;
  font-weight: 780;
  text-align: right;
}

.queue-heading {
  margin-bottom: 18px;
}

.queue-total {
  color: var(--muted);
  font-size: 0.84rem;
}

.queue-total strong {
  color: var(--ink);
  font-size: 1.1rem;
}

.queue-tabs {
  display: flex;
  gap: 2px;
  margin-bottom: 12px;
  overflow-x: auto;
  border-bottom: 1px solid var(--border);
}

.queue-tabs a {
  flex: 0 0 auto;
  padding: 9px 12px;
  border-bottom: 3px solid transparent;
  color: var(--muted);
  font-size: 0.84rem;
  font-weight: 700;
  text-decoration: none;
}

.queue-tabs a:hover,
.queue-tabs a.is-active {
  border-bottom-color: var(--brand);
  color: var(--ink);
}

.queue-surface {
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
  border: 1px solid var(--border);
  border-radius: 6px;
  background: var(--surface);
}

.table-scroll {
  max-width: 100%;
  overflow-x: auto;
}

.operations-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.84rem;
  text-align: left;
}

.operations-table th,
.operations-table td {
  padding: 13px 14px;
  border-bottom: 1px solid var(--border);
  vertical-align: middle;
}

.operations-table th {
  background: var(--surface-muted);
  color: var(--muted);
  font-size: 0.72rem;
  text-transform: uppercase;
  white-space: nowrap;
}

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

.operations-table tbody tr:hover {
  background: #f8faf9;
}

.operations-table td strong,
.operations-table td small {
  display: block;
}

.operations-table td small {
  margin-top: 2px;
  color: var(--muted);
  font-size: 0.74rem;
  text-transform: capitalize;
}

.operations-table td:last-child {
  width: 54px;
  padding: 6px;
}

.operations-table .mobile-case-meta,
.operations-table .mobile-case-stage,
.approval-mobile-meta,
.operations-table .mobile-payout-meta {
  display: none;
}

.finance-section {
  margin-top: 32px;
}

.payout-cycle-band,
.authorization-band {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 18px 20px;
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
  background: var(--surface);
}

.payout-cycle-band h2,
.authorization-band h2 {
  margin: 0;
  font-size: 1rem;
}

.payout-cycle-band p,
.authorization-band p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 0.82rem;
}

.cycle-form {
  display: flex;
  align-items: flex-end;
  gap: 10px;
}

.cycle-form label > span,
.payout-action-panel label > span {
  display: block;
  margin-bottom: 6px;
  font-size: 0.8rem;
  font-weight: 700;
}

.cycle-form input {
  min-width: 168px;
}

.batch-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-bottom: 22px;
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
  background: var(--surface);
}

.batch-summary div {
  min-width: 0;
  padding: 17px 18px;
}

.batch-summary div + div {
  border-left: 1px solid var(--border);
}

.batch-summary span,
.batch-summary strong {
  display: block;
}

.batch-summary span {
  color: var(--muted);
  font-size: 0.74rem;
  font-weight: 700;
  text-transform: uppercase;
}

.batch-summary strong {
  margin-top: 3px;
  overflow-wrap: anywhere;
  font-size: 1.1rem;
}

.payout-manual-notice {
  margin: 0;
}

.payout-amount {
  font-size: 1.3rem;
  font-weight: 780;
  font-variant-numeric: tabular-nums;
}

.case-content {
  min-width: 0;
  border-top: 1px solid var(--border);
}

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

.case-section-heading h2 {
  margin: 0;
  font-size: 1rem;
}

.case-section-heading p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 0.82rem;
}

.payout-review-fields span,
.payout-review-fields strong,
.payout-review-fields small {
  display: block;
}

.payout-review-fields span {
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 700;
  text-transform: uppercase;
}

.payout-review-fields strong {
  margin-top: 4px;
  overflow-wrap: anywhere;
  font-size: 0.88rem;
}

.payout-review-fields small {
  margin-top: 3px;
  color: var(--muted);
  font-size: 0.76rem;
  text-transform: capitalize;
}

.payout-action-panel form + form {
  margin-top: 14px;
}

.payout-action-panel label {
  display: block;
  margin-bottom: 14px;
}

.payout-action-panel hr {
  margin: 20px 0;
  border: 0;
  border-top: 1px solid var(--border);
}

.approval-progress {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 14px;
  padding: 11px 12px;
  border: 1px solid var(--border);
  border-radius: 5px;
  background: var(--surface-muted);
  font-size: 0.8rem;
}

.approval-progress a {
  flex: 0 0 auto;
  font-weight: 700;
}

.decision-blockers,
.manual-payment-warning {
  margin-bottom: 16px;
  padding: 12px 14px;
  border-left: 3px solid var(--warning);
  background: var(--warning-soft);
  color: #694316;
  font-size: 0.8rem;
}

.decision-blockers strong {
  display: block;
}

.decision-blockers ul {
  margin: 7px 0 0;
  padding-left: 18px;
}

.manual-payment-warning {
  display: flex;
  gap: 9px;
  align-items: flex-start;
}

.manual-payment-warning svg {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
}

.manual-payment-warning p {
  margin: 0;
}

.settlement-summary {
  margin-bottom: 16px;
  border-top: 1px solid var(--border);
  border-left: 1px solid var(--border);
}

.settlement-summary div {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 14px;
  padding: 10px 12px;
  border-right: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
  background: var(--surface);
}

.settlement-summary span {
  color: var(--muted);
  font-size: 0.76rem;
  font-weight: 700;
}

.settlement-summary strong {
  flex: 0 0 auto;
  font-size: 0.88rem;
  font-variant-numeric: tabular-nums;
}

.settlement-summary .settlement-summary-total {
  background: var(--surface-muted);
}

.settlement-summary-total strong {
  font-size: 1rem;
}

.settlement-balance-status {
  min-height: 38px;
  margin: 2px 0 14px;
  padding: 9px 11px;
  border-left: 3px solid var(--warning);
  background: var(--warning-soft);
  color: #694316;
  font-size: 0.78rem;
  font-weight: 650;
}

.settlement-balance-status.is-balanced {
  border-left-color: var(--success);
  background: var(--success-soft);
  color: #22593f;
}

.settlement-balance-status.is-unbalanced {
  border-left-color: var(--warning);
}

.checkbox-row {
  display: grid !important;
  grid-template-columns: 18px minmax(0, 1fr);
  gap: 9px;
  align-items: start;
  color: var(--muted);
  font-size: 0.82rem;
  cursor: pointer;
}

.checkbox-row input {
  width: 18px;
  height: 18px;
  margin: 1px 0 0;
  accent-color: var(--brand);
}

.checkbox-row span {
  margin: 0 !important;
  font-weight: 600 !important;
}

.sensitive-note {
  max-width: 760px;
  white-space: pre-wrap;
}

.operations-table .mobile-tax-meta {
  display: none;
}

.tax-area-tabs {
  display: flex;
  gap: 22px;
  margin: 4px 0 20px;
  overflow-x: auto;
  border-bottom: 1px solid var(--border);
}

.tax-area-tabs a {
  display: inline-flex;
  flex: 0 0 auto;
  gap: 7px;
  align-items: center;
  padding: 10px 2px 9px;
  border-bottom: 3px solid transparent;
  color: var(--muted);
  font-size: 0.84rem;
  font-weight: 700;
  text-decoration: none;
}

.tax-area-tabs a:hover,
.tax-area-tabs a.is-active {
  border-bottom-color: var(--brand);
  color: var(--ink);
}

.tax-area-tabs svg {
  width: 16px;
  height: 16px;
}

.tax-section {
  padding: 28px 0;
  border-top: 1px solid var(--border);
}

.tax-section + .tax-section {
  margin-top: 8px;
}

.tax-section .section-heading p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 0.82rem;
}

.tax-comparison-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
  background: var(--surface);
}

.tax-comparison-group {
  min-width: 0;
}

.tax-comparison-group + .tax-comparison-group {
  border-left: 1px solid var(--border);
}

.tax-comparison-heading {
  display: flex;
  gap: 12px;
  align-items: center;
  justify-content: space-between;
  min-height: 56px;
  padding: 12px 18px;
  border-bottom: 1px solid var(--border);
}

.tax-comparison-heading h3 {
  margin: 0;
  font-size: 0.94rem;
}

.tax-detail-list,
.tax-provider-detail-grid {
  margin: 0;
}

.tax-detail-list > div {
  display: grid;
  grid-template-columns: minmax(118px, 0.42fr) minmax(0, 1fr);
  gap: 14px;
  align-items: start;
  padding: 10px 18px;
}

.tax-detail-list > div + div {
  border-top: 1px solid var(--border);
}

.tax-detail-list dt,
.tax-provider-detail-grid dt {
  color: var(--muted);
  font-size: 0.74rem;
  font-weight: 700;
  text-transform: uppercase;
}

.tax-detail-list dd,
.tax-provider-detail-grid dd {
  min-width: 0;
  margin: 0;
  overflow-wrap: anywhere;
  font-size: 0.84rem;
  font-weight: 650;
}

.identifier-value {
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 0.78rem !important;
}

.multiline-value {
  white-space: pre-line;
}

.verified-detail {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  align-items: center;
}

.tax-provider-detail-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-bottom: 20px;
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
  background: var(--surface);
}

.tax-provider-detail-grid > div {
  min-width: 0;
  padding: 14px 16px;
  border-left: 1px solid var(--border);
}

.tax-provider-detail-grid > div:nth-child(3n + 1) {
  border-left: 0;
}

.tax-provider-detail-grid > div:nth-child(n + 4) {
  border-top: 1px solid var(--border);
}

.tax-provider-detail-grid dd {
  margin-top: 4px;
}

.tax-evidence-form {
  padding: 20px;
  border: 1px solid var(--border);
  background: var(--surface);
}

.tax-evidence-form label,
.year-end-create-form label,
.tax-form-action label:not(.checkbox-row) {
  display: block;
}

.tax-evidence-form label > span,
.year-end-create-form label > span,
.tax-form-action label:not(.checkbox-row) > span {
  display: block;
  margin-bottom: 6px;
  font-size: 0.8rem;
  font-weight: 700;
}

.tax-authorization-band {
  margin-bottom: 16px;
}

.tax-history {
  margin-top: 18px;
}

.year-end-create-form {
  display: grid;
  grid-template-columns: 140px minmax(180px, 240px) auto;
  gap: 10px;
  align-items: end;
  margin-bottom: 18px;
  padding: 16px 18px;
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
  background: var(--surface);
}

.year-end-create-form .button {
  justify-self: start;
}

.tax-form-list {
  border-top: 1px solid var(--border);
}

.tax-form-row {
  display: grid;
  grid-template-columns: minmax(170px, 0.32fr) minmax(210px, 0.35fr) minmax(280px, 1fr);
  gap: 18px;
  align-items: center;
  padding: 18px 0;
  border-bottom: 1px solid var(--border);
}

.tax-form-identity {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.tax-form-identity > span:first-child {
  color: var(--muted);
  font-variant-numeric: tabular-nums;
}

.tax-form-dates {
  display: grid;
  gap: 5px;
  color: var(--muted);
  font-size: 0.78rem;
}

.tax-form-dates strong {
  display: block;
  color: var(--ink);
  font-weight: 650;
}

.tax-form-action form {
  display: flex;
  gap: 10px;
  align-items: end;
  justify-content: flex-end;
}

.tax-form-action form > label:not(.checkbox-row) {
  flex: 1 1 210px;
  margin: 0;
}

.tax-form-action .checkbox-row {
  flex: 1 1 240px;
  margin: 0;
}

.tax-form-action .approval-progress {
  margin-bottom: 10px;
}

.tax-empty-state {
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
}

.identity-collection-page {
  max-width: 980px;
}

.identity-collection-heading {
  margin-bottom: 24px;
}

.case-heading.identity-collection-heading p {
  margin: 4px 0 0;
  color: var(--muted);
  font-family: inherit;
  font-size: 0.85rem;
}

.identity-status-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-bottom: 24px;
  border: 1px solid var(--border);
  background: var(--surface);
}

.identity-status-strip-two {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.identity-status-strip-four {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.identity-status-strip div {
  min-width: 0;
  padding: 18px 20px;
}

.identity-status-strip div + div {
  border-left: 1px solid var(--border);
}

.identity-status-strip span,
.identity-status-strip strong {
  display: block;
}

.identity-status-strip span {
  margin-bottom: 5px;
  color: var(--muted);
  font-size: 0.72rem;
  text-transform: uppercase;
}

.identity-status-strip strong {
  overflow-wrap: anywhere;
  font-weight: 650;
  text-transform: capitalize;
}

.identity-action-panel {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 15px;
  align-items: center;
  padding: 20px;
  border: 1px solid var(--border);
  background: var(--surface);
}

.identity-action-panel h2,
.identity-action-panel p {
  margin: 0;
}

.identity-action-panel h2 {
  font-size: 1.05rem;
}

.identity-action-panel p {
  margin-top: 4px;
  color: var(--muted);
  font-size: 0.85rem;
}

.identity-action-icon {
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border: 1px solid #b7d5dc;
  border-radius: 5px;
  background: var(--brand-soft);
  color: var(--brand);
}

.identity-action-icon svg {
  width: 21px;
  height: 21px;
}

.identity-action-success .identity-action-icon {
  border-color: #afd0bd;
  background: var(--success-soft);
  color: var(--success);
}

.identity-consent-panel {
  align-items: start;
}

.identity-consent-panel form {
  display: grid;
  max-width: 390px;
  gap: 12px;
}

.identity-consent-panel form small {
  color: var(--muted);
  font-size: 0.72rem;
}

.identity-consent-panel .checkbox-row {
  align-items: start;
  margin: 0;
}

.identity-document-panel {
  align-items: start;
  grid-template-columns: auto minmax(0, 1fr);
}

.identity-document-form {
  display: grid;
  width: min(100%, 390px);
  gap: 12px;
}

.identity-document-workspace {
  grid-column: 2;
  width: min(100%, 410px);
}

.identity-upload-modes {
  margin-bottom: 14px;
}

.identity-mobile-handoff {
  display: grid;
  gap: 13px;
}

.identity-mobile-handoff-heading {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
}

.identity-mobile-handoff-heading > svg {
  width: 24px;
  height: 24px;
  color: var(--brand);
}

.identity-mobile-handoff-heading strong,
.identity-mobile-handoff-heading span {
  display: block;
}

.identity-mobile-handoff-heading strong {
  font-size: 0.88rem;
}

.identity-mobile-handoff-heading span,
.identity-mobile-handoff small,
.identity-handoff-status {
  color: var(--muted);
  font-size: 0.76rem;
  line-height: 1.5;
}

.identity-mobile-handoff small a {
  color: var(--brand);
}

.identity-mobile-qr {
  width: min(100%, 312px);
  padding: 11px;
  border: 1px solid var(--border);
  border-radius: 6px;
  background: #fff;
}

.identity-mobile-qr img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1;
}

.identity-handoff-status {
  min-height: 1.2rem;
  margin: 0;
}

.identity-mobile-page {
  width: min(560px, calc(100% - 32px));
}

.identity-mobile-heading {
  padding: 20px 0;
  border-bottom: 1px solid var(--border);
}

.identity-mobile-heading h1 {
  margin: 8px 0 4px;
  font-size: 1.65rem;
}

.identity-mobile-heading p {
  margin: 0;
  color: var(--muted);
  font-size: 0.86rem;
}

.identity-mobile-capture {
  padding: 24px 0;
}

.identity-mobile-document-form {
  width: 100%;
}

.identity-mobile-file-field input {
  min-height: 48px;
}

.identity-mobile-exchange,
.identity-mobile-complete {
  min-height: 320px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 12px;
  text-align: center;
}

.identity-mobile-exchange p,
.identity-mobile-complete h1,
.identity-mobile-complete p {
  margin: 0;
}

.identity-mobile-exchange > svg {
  width: 30px;
  height: 30px;
  color: var(--brand);
  animation: mobile-capture-spin 1s linear infinite;
}

.identity-mobile-complete .identity-action-icon {
  width: 52px;
  height: 52px;
  border-color: #afd0bd;
  background: var(--success-soft);
  color: var(--success);
}

.identity-mobile-complete h1 {
  font-size: 1.5rem;
}

.identity-mobile-complete p {
  max-width: 420px;
  color: var(--muted);
  line-height: 1.55;
}

@keyframes mobile-capture-spin {
  to { transform: rotate(360deg); }
}

.identity-document-form label,
.identity-document-form label > span {
  display: block;
}

.identity-document-form label > span {
  margin-bottom: 6px;
  font-size: 0.8rem;
  font-weight: 700;
}

.identity-document-form input[type="file"] {
  width: 100%;
  padding: 9px;
  border: 1px solid var(--border-strong);
  border-radius: 4px;
  background: var(--surface);
  color: var(--ink);
  font-size: 0.8rem;
}

.identity-upload-error {
  margin: 0;
}

.identity-synthetic-document-note {
  display: flex;
  gap: 8px;
  align-items: flex-start;
  padding: 10px 12px;
  border-left: 3px solid #cf706a;
  background: #f8eeee;
  color: #643b3e;
  font-size: 0.78rem;
}

.identity-provider-notice {
  margin-bottom: 0;
}

.identity-live-camera-panel {
  border: 1px solid #cbd5df;
  border-radius: 6px;
  overflow: hidden;
}

.identity-live-camera-panel > header {
  align-items: center;
  background: #f5f8fa;
  border-bottom: 1px solid #d9e1e7;
  display: flex;
  gap: 0.9rem;
  padding: 1rem 1.1rem;
}

.identity-live-camera-panel h2,
.identity-live-camera-panel p {
  margin: 0;
}

.identity-live-camera-panel h2 {
  font-size: 1rem;
}

.identity-live-camera-panel p {
  color: #566572;
  font-size: 0.82rem;
  margin-top: 0.2rem;
}

.identity-live-camera-root {
  min-height: 28rem;
}

.identity-development-capture {
  display: grid;
  grid-template-columns: minmax(190px, 0.8fr) minmax(280px, 1.2fr) minmax(190px, 0.8fr);
  gap: 24px;
  align-items: center;
  padding: 24px;
  border: 1px solid var(--border);
  background: var(--surface);
}

.identity-capture-copy h2,
.identity-capture-copy p,
.identity-capture-controls p {
  margin: 0;
}

.identity-capture-copy h2 {
  margin-top: 8px;
  font-size: 1.05rem;
}

.identity-capture-copy p,
.identity-capture-controls p {
  margin-top: 6px;
  color: var(--muted);
  font-size: 0.8rem;
}

.identity-capture-stage {
  position: relative;
  width: 100%;
  aspect-ratio: 4 / 3;
  display: grid;
  place-items: center;
  overflow: hidden;
  border: 1px solid #47585d;
  border-radius: 5px;
  background: #202a2d;
  color: #b5d5d8;
}

.identity-capture-stage svg {
  width: 42%;
  height: 42%;
  stroke-width: 1.2;
}

.identity-scan-line {
  position: absolute;
  top: 22%;
  right: 12%;
  left: 12%;
  height: 2px;
  background: #d56a66;
}

.identity-development-capture.is-capturing .identity-scan-line {
  animation: identity-scan 1.2s ease-in-out infinite alternate;
}

.identity-capture-controls {
  min-width: 0;
}

.identity-capture-controls .button {
  width: 100%;
  margin-top: 14px;
}

.identity-capture-error {
  margin: 12px 0 0;
}

@keyframes identity-scan {
  from { transform: translateY(0); }
  to { transform: translateY(130px); }
}

.identity-privacy-note {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  margin-top: 20px;
  color: var(--muted);
  font-size: 0.8rem;
}

.identity-privacy-note p {
  margin: 0;
}

.table-primary-link {
  color: var(--ink);
  font-weight: 750;
  text-decoration: none;
}

.table-primary-link:hover {
  color: var(--brand);
  text-decoration: underline;
}

.approval-table td:last-child {
  width: auto;
  min-width: 190px;
  padding: 9px 12px;
}

.approval-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
}

.danger-icon-button {
  color: var(--danger);
}

.danger-icon-button:hover {
  background: var(--danger-soft);
  color: #762a37;
}

.risk-standard {
  border-color: #9ec5af;
  background: var(--success-soft);
  color: var(--success);
}

.risk-elevated {
  border-color: #dfbb8d;
  background: var(--warning-soft);
  color: var(--warning);
}

.risk-high {
  border-color: #e2a5af;
  background: var(--danger-soft);
  color: var(--danger);
}

.empty-state {
  min-height: 190px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 8px;
  color: var(--muted);
}

.empty-state svg {
  width: 28px;
  height: 28px;
}

.case-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 22px;
}

.case-heading h1 {
  margin: 0 0 3px;
  font-size: 1.8rem;
  line-height: 1.2;
}

.case-heading p {
  margin: 0;
  color: var(--muted);
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 0.76rem;
}

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

.review-overview {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-bottom: 22px;
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
  background: var(--surface);
}

.review-overview-item {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  gap: 11px;
  min-width: 0;
  padding: 15px 16px;
  border-right: 1px solid var(--border);
}

.review-overview-item:last-child {
  border-right: 0;
}

.review-overview-icon {
  display: inline-grid;
  place-items: center;
  width: 36px;
  height: 36px;
  border-radius: 6px;
  background: var(--surface-muted);
  color: var(--muted);
}

.review-overview-icon.status-success {
  background: var(--success-soft);
  color: var(--success);
}

.review-overview-icon.status-pending {
  background: var(--warning-soft);
  color: var(--warning);
}

.review-overview-icon.status-danger {
  background: var(--danger-soft);
  color: var(--danger);
}

.review-overview-icon svg {
  width: 18px;
  height: 18px;
}

.review-overview-item small,
.review-overview-item strong,
.review-overview-item em {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.review-overview-item small {
  color: var(--muted);
  font-size: 0.68rem;
  font-weight: 750;
  text-transform: uppercase;
}

.review-overview-item strong {
  margin-top: 2px;
  font-size: 0.88rem;
}

.review-overview-item em {
  margin-top: 2px;
  color: var(--muted);
  font-size: 0.73rem;
  font-style: normal;
  line-height: 1.35;
}

.review-overview-compact .review-overview-item {
  align-items: center;
  padding-block: 12px;
}

.review-overview-compact .review-overview-item strong {
  font-size: 0.9rem;
}

.case-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 0.36fr);
  gap: 22px;
  align-items: start;
}

.case-primary {
  min-width: 0;
  border-top: 1px solid var(--border);
}

.case-section {
  padding: 22px 0;
  border-bottom: 1px solid var(--border);
}

.case-section .section-heading {
  margin-bottom: 16px;
}

.review-fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0;
  margin: 0;
  border-top: 1px solid var(--border);
  border-left: 1px solid var(--border);
}

.review-fields div {
  min-width: 0;
  padding: 13px 14px;
  border-right: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
  background: var(--surface);
}

.review-fields dt {
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 700;
  text-transform: uppercase;
}

.review-fields dd {
  margin: 4px 0 0;
  overflow-wrap: anywhere;
  font-size: 0.88rem;
  font-weight: 650;
  white-space: pre-line;
}

.review-fields-compact div {
  padding: 10px 12px;
}

.review-fields-compact dt {
  font-size: 0.67rem;
}

.review-fields-compact dd {
  margin-top: 2px;
  font-size: 0.82rem;
}

.compact-table th,
.compact-table td {
  padding: 10px 11px;
}

.verification-check-notice {
  display: flex;
  gap: 11px;
  align-items: flex-start;
  margin-bottom: 16px;
  padding: 12px 14px;
  border-left: 3px solid var(--focus);
  background: var(--brand-soft);
  color: var(--brand-dark);
}

.verification-check-notice svg {
  width: 18px;
  height: 18px;
  margin-top: 2px;
}

.verification-check-notice p,
.verification-check-notice strong,
.verification-check-notice span {
  display: block;
}

.verification-check-notice p {
  min-width: 0;
  margin: 0;
  font-size: 0.83rem;
}

.verification-check-notice span {
  margin-top: 2px;
}

.verification-check-list {
  border-top: 1px solid var(--border);
}

.verification-check-group + .verification-check-group {
  margin-top: 20px;
}

.verification-check-group-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 8px;
  color: var(--muted);
  font-size: 0.73rem;
  text-transform: uppercase;
  cursor: pointer;
  list-style: none;
}

.verification-check-group-heading::-webkit-details-marker {
  display: none;
}

.verification-check-group-heading.status-danger {
  color: var(--danger);
}

.verification-check-group-heading.status-success {
  color: var(--success);
}

.verification-check-group-heading span {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  min-width: 24px;
  height: 22px;
  padding: 0 6px;
  border: 1px solid currentColor;
  border-radius: 4px;
  font-size: 0.7rem;
}

.verification-check-group-heading svg {
  width: 14px;
  height: 14px;
  transition: transform 160ms ease;
}

.verification-check-group[open] .verification-check-group-heading svg {
  transform: rotate(180deg);
}

.verification-check-row {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 12px;
  padding: 17px 0;
  border-bottom: 1px solid var(--border);
}

.verification-check-icon {
  width: 38px;
  height: 38px;
  display: inline-grid;
  place-items: center;
  border: 1px solid var(--border);
  border-radius: 6px;
  background: var(--surface-muted);
  color: var(--brand);
}

.verification-check-icon.status-success {
  border-color: color-mix(in srgb, var(--success) 38%, var(--border));
  background: var(--success-soft);
  color: var(--success);
}

.verification-check-icon.status-danger {
  border-color: color-mix(in srgb, var(--danger) 38%, var(--border));
  background: var(--danger-soft);
  color: var(--danger);
}

.verification-check-icon.status-pending {
  border-color: color-mix(in srgb, var(--warning) 38%, var(--border));
  background: var(--warning-soft);
  color: var(--warning);
}

.verification-check-icon svg {
  width: 19px;
  height: 19px;
}

.verification-check-body {
  min-width: 0;
}

.verification-check-heading {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  justify-content: space-between;
}

.verification-check-heading small {
  display: block;
  color: var(--muted);
  font-size: 0.69rem;
  font-weight: 750;
  text-transform: uppercase;
}

.verification-check-heading h3 {
  margin: 2px 0 0;
  overflow-wrap: anywhere;
  font-size: 0.98rem;
  line-height: 1.3;
}

.verification-check-description {
  margin: 5px 0 0;
  color: var(--muted);
  font-size: 0.82rem;
}

.verification-check-outcome {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  gap: 9px;
  margin-top: 11px;
  padding: 10px 12px;
  border-left: 3px solid var(--warning);
  background: var(--warning-soft);
}

.verification-check-outcome-success {
  border-left-color: var(--success);
  background: var(--success-soft);
}

.verification-check-outcome-danger {
  border-left-color: var(--danger);
  background: var(--danger-soft);
}

.verification-check-outcome svg {
  width: 17px;
  height: 17px;
  margin-top: 2px;
}

.verification-check-outcome p,
.verification-check-outcome strong,
.verification-check-outcome span {
  display: block;
}

.verification-check-outcome p {
  min-width: 0;
  margin: 0;
  overflow-wrap: anywhere;
  font-size: 0.8rem;
}

.verification-check-outcome strong {
  font-size: 0.72rem;
  text-transform: uppercase;
}

.verification-check-outcome span {
  margin-top: 2px;
}

.verification-check-action,
.duplicate-screening-interpretation {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  gap: 9px;
  margin-top: 10px;
  padding: 10px 12px;
  border-left: 3px solid var(--ink);
  background: var(--surface-muted);
}

.verification-check-action svg,
.duplicate-screening-interpretation svg {
  width: 17px;
  height: 17px;
  margin-top: 2px;
}

.verification-check-action p,
.verification-check-action strong,
.verification-check-action span,
.duplicate-screening-interpretation p,
.duplicate-screening-interpretation strong,
.duplicate-screening-interpretation span {
  display: block;
}

.verification-check-action p,
.duplicate-screening-interpretation p {
  min-width: 0;
  margin: 0;
  overflow-wrap: anywhere;
  font-size: 0.8rem;
}

.verification-check-action strong,
.duplicate-screening-interpretation strong {
  font-size: 0.72rem;
  text-transform: uppercase;
}

.verification-check-action span,
.duplicate-screening-interpretation span {
  margin-top: 2px;
}

.duplicate-screening-interpretation.status-success {
  border-left-color: var(--success);
  background: var(--success-soft);
}

.duplicate-screening-interpretation.status-danger,
.duplicate-administrator-action {
  border-left-color: var(--danger);
  background: var(--danger-soft);
}

.duplicate-screening-interpretation.status-pending {
  border-left-color: var(--warning);
  background: var(--warning-soft);
}

.verification-check-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 5px 18px;
  margin-top: 9px;
  color: var(--muted);
  font-size: 0.74rem;
}

.verification-check-meta strong {
  color: var(--ink);
  font-weight: 650;
}

.verification-check-blocker {
  display: inline-flex;
  gap: 5px;
  align-items: center;
  color: var(--danger);
}

.verification-check-blocker strong {
  color: currentColor;
}

.verification-check-blocker svg {
  width: 14px;
  height: 14px;
}

.document-list {
  border-top: 1px solid var(--border);
}

.document-list > div {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto auto;
  gap: 11px;
  align-items: center;
  padding: 13px 0;
  border-bottom: 1px solid var(--border);
}

.document-list strong,
.document-list small {
  display: block;
  text-transform: capitalize;
}

.evidence-review-list {
  border-top: 1px solid var(--border);
}

.evidence-review-item {
  padding: 16px 0;
  border-bottom: 1px solid var(--border);
}

.evidence-review-heading {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  gap: 11px;
  align-items: center;
}

.evidence-review-heading strong,
.evidence-review-heading small {
  display: block;
}

.evidence-review-heading strong {
  text-transform: capitalize;
}

.evidence-review-heading small,
.evidence-review-result {
  color: var(--muted);
  font-size: 0.78rem;
}

.evidence-source-status {
  display: inline-flex;
  gap: 5px;
  align-items: center;
  margin-top: 4px;
  color: var(--muted);
  font-size: 0.75rem;
}

.evidence-source-status.status-success {
  color: var(--success);
}

.evidence-source-status.status-danger {
  color: var(--danger);
}

.evidence-source-status.status-pending {
  color: var(--warning);
}

.evidence-source-status svg {
  width: 14px;
  height: 14px;
}

.evidence-assets {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 12px 0 0 53px;
}

.evidence-asset-label {
  display: inline-flex;
  gap: 7px;
  align-items: center;
  min-height: 34px;
  color: var(--muted);
  font-size: 0.8rem;
}

.evidence-asset-label svg {
  width: 16px;
  height: 16px;
}

.evidence-inspection-guidance {
  margin: 14px 0 0 53px;
  color: var(--muted);
  font-size: 0.78rem;
}

.evidence-review-controls {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 16px;
  margin: 16px 0 0 53px;
  padding-top: 16px;
  border-top: 1px solid var(--border);
}

.evidence-review-controls form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: end;
}

.evidence-review-controls form:nth-child(2) {
  grid-template-columns: minmax(130px, 0.65fr) minmax(0, 1fr) auto;
}

.evidence-review-controls.uniqueness-review-controls {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.evidence-review-controls.uniqueness-review-controls form,
.evidence-review-controls.uniqueness-review-controls form:nth-child(2) {
  grid-template-columns: minmax(0, 1fr);
}

.uniqueness-review-controls .button {
  width: 100%;
}

.evidence-review-controls .field-group {
  margin: 0;
}

.evidence-review-controls input,
.evidence-review-controls select {
  width: 100%;
}

.evidence-review-result {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  justify-content: space-between;
  margin: 12px 0 0 53px;
  text-transform: capitalize;
}

.evidence-task-list {
  border-top: 0;
}

.evidence-task {
  padding: 15px;
  border: 1px solid var(--border);
  background: var(--surface);
}

.evidence-task + .evidence-task {
  margin-top: 10px;
}

.evidence-task .evidence-assets {
  margin-top: 10px;
}

.identity-document-preview {
  width: min(760px, calc(100% - 53px));
  margin: 14px 0 0 53px;
}

.identity-document-preview-stage {
  position: relative;
  display: grid;
  width: 100%;
  aspect-ratio: 4 / 3;
  place-items: center;
  overflow: hidden;
  border: 1px solid var(--border-strong);
  border-radius: 6px 6px 0 0;
  background: #11191d;
}

.identity-document-preview.is-pdf .identity-document-preview-stage {
  height: clamp(520px, 68vh, 760px);
  aspect-ratio: auto;
  place-items: start center;
  overflow: auto;
  background: #e8ecee;
}

.identity-document-preview img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.identity-document-preview.is-pdf img {
  height: auto;
  object-fit: initial;
  background: #ffffff;
}

.identity-document-preview-state {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 10px;
  padding: 20px;
  color: #f6f8f9;
  font-size: 0.8rem;
  text-align: center;
}

.identity-document-preview-state .button {
  width: fit-content;
}

.identity-document-preview.is-pdf .identity-document-preview-state {
  color: var(--muted);
}

.identity-document-preview-toolbar {
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: space-between;
  min-height: 42px;
  padding: 5px 6px 5px 12px;
  border: 1px solid var(--border-strong);
  border-top: 0;
  border-radius: 0 0 6px 6px;
  background: var(--surface-muted);
}

.identity-document-preview-toolbar > span {
  display: inline-flex;
  gap: 7px;
  align-items: center;
  color: var(--muted);
  font-size: 0.78rem;
}

.identity-document-preview-toolbar > span svg {
  width: 16px;
  height: 16px;
}

.identity-document-preview-toolbar .icon-button {
  width: 32px;
  height: 32px;
  min-height: 32px;
}

[data-protected-evidence],
[data-protected-evidence] img {
  -webkit-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
}

[data-protected-evidence] img {
  pointer-events: none;
  -webkit-user-drag: none;
}

body.has-evidence-expanded {
  overflow: hidden;
}

.identity-document-preview.is-expanded {
  position: fixed;
  inset: 16px;
  z-index: 1200;
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto;
  width: auto;
  max-width: none;
  margin: 0;
  padding: 12px;
  border: 1px solid var(--border-strong);
  border-radius: 6px;
  background: var(--surface);
  box-shadow: 0 18px 60px rgb(0 0 0 / 32%);
}

.identity-document-preview.is-expanded .identity-document-preview-stage,
.identity-document-preview.is-expanded.is-pdf .identity-document-preview-stage {
  width: 100%;
  height: auto;
  min-height: 0;
  aspect-ratio: auto;
  overflow: auto;
  border-radius: 4px 4px 0 0;
}

.identity-document-preview.is-expanded img {
  width: 100%;
  height: auto;
  max-height: none;
}

.evidence-slideshow {
  width: min(640px, calc(100% - 53px));
  margin: 14px 0 0 53px;
}

.evidence-slideshow-stage {
  position: relative;
  overflow: hidden;
  border: 1px solid var(--border-strong);
  border-radius: 6px;
  background: var(--surface-muted);
}

.evidence-slideshow figure {
  margin: 0;
}

.evidence-slide-media {
  position: relative;
  display: grid;
  width: 100%;
  aspect-ratio: 4 / 3;
  place-items: center;
  overflow: hidden;
  background: #11191d;
}

.evidence-slide-media img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.evidence-slide-state {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 20px;
  color: #f6f8f9;
  font-size: 0.8rem;
  text-align: center;
}

.evidence-slideshow figcaption {
  min-height: 36px;
  padding: 9px 44px 9px 12px;
  color: var(--muted);
  font-size: 0.78rem;
}

.evidence-slide-expand {
  position: absolute;
  right: 7px;
  bottom: 4px;
  width: 30px;
  height: 30px;
  min-height: 30px;
  border: 0;
  background: transparent;
}

.evidence-slideshow-controls {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  margin-top: 8px;
}

.evidence-slideshow-controls > .icon-button {
  width: 34px;
  height: 34px;
  min-height: 34px;
}

.evidence-slide-dots {
  display: flex;
  flex: 1 1 80px;
  gap: 8px;
  align-items: center;
  justify-content: center;
  min-height: 34px;
}

.evidence-slide-dots button {
  width: 10px;
  height: 10px;
  padding: 0;
  border: 1px solid var(--border-strong);
  border-radius: 50%;
  background: var(--surface);
  cursor: pointer;
}

.evidence-slide-dots button.is-viewed {
  border-color: var(--success);
  background: var(--success-soft);
}

.evidence-slide-dots button[aria-current="true"] {
  border-color: var(--brand);
  background: var(--brand);
  box-shadow: 0 0 0 3px var(--brand-soft);
}

.evidence-slide-counter,
.evidence-slide-progress {
  color: var(--muted);
  font-size: 0.75rem;
  white-space: nowrap;
}

.evidence-slide-counter {
  min-width: 42px;
  text-align: center;
}

.evidence-slide-progress {
  margin-left: auto;
}

.evidence-slide-progress.is-complete {
  color: var(--success);
}

.evidence-task-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 14px 0 0 53px;
}

.evidence-task-actions form {
  margin: 0;
}

.button.button-quiet {
  border-color: var(--border-strong);
  background: transparent;
  color: var(--ink);
}

.button.button-quiet:hover {
  border-color: var(--danger);
  background: var(--danger-soft);
  color: var(--danger);
}

.evidence-rejection {
  min-width: 108px;
}

.evidence-rejection > summary,
.case-rejection > summary {
  list-style: none;
}

.evidence-rejection > summary::-webkit-details-marker,
.case-rejection > summary::-webkit-details-marker {
  display: none;
}

.evidence-rejection[open] {
  flex: 1 1 100%;
}

.evidence-rejection[open] > summary {
  width: fit-content;
}

.evidence-rejection > form {
  display: grid;
  grid-template-columns: minmax(130px, 0.65fr) minmax(0, 1fr) auto;
  gap: 10px;
  align-items: end;
  margin-top: 12px;
  padding: 12px;
  border: 1px solid var(--border);
  background: var(--surface-muted);
}

.evidence-rejection .field-group {
  margin: 0;
}

.evidence-open-reminder {
  display: block;
  margin: 8px 0 0 53px;
  color: var(--muted);
  font-size: 0.72rem;
}

.review-exception-list {
  border-top: 1px solid var(--border);
}

.review-exception {
  border-bottom: 1px solid var(--border);
}

.review-exception > summary,
.duplicate-exception > summary,
.passed-checks > summary {
  list-style: none;
  cursor: pointer;
}

.review-exception > summary::-webkit-details-marker,
.duplicate-exception > summary::-webkit-details-marker,
.passed-checks > summary::-webkit-details-marker {
  display: none;
}

.review-exception > summary {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) auto 18px;
  gap: 11px;
  align-items: center;
  padding: 13px 0;
}

.review-exception > summary > svg,
.duplicate-exception > summary > svg:last-child,
.passed-checks > summary > svg:last-child {
  width: 16px;
  height: 16px;
  color: var(--muted);
  transition: transform 160ms ease;
}

.review-exception[open] > summary > svg,
.duplicate-exception[open] > summary > svg:last-child,
.passed-checks[open] > summary > svg:last-child {
  transform: rotate(180deg);
}

.review-exception-body {
  margin: -2px 0 14px 49px;
}

.review-exception-body > p {
  margin: 0;
  color: var(--muted);
  font-size: 0.82rem;
}

.review-exception-body .review-next-step {
  margin-top: 8px;
  padding: 9px 11px;
  border-left: 3px solid var(--warning);
  background: var(--warning-soft);
  color: var(--ink);
}

.review-exception-body > .check-override-controls {
  margin-left: 0;
}

.check-override-controls form,
.check-override-controls form:nth-child(2) {
  grid-template-columns: minmax(0, 1fr) auto;
}

.inline-duplicate-detail {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid var(--border);
}

.inline-duplicate-detail > p {
  margin: 0 0 10px;
  color: var(--muted);
  font-size: 0.8rem;
}

.inline-duplicate-detail .evidence-assets,
.inline-duplicate-detail .evidence-review-controls {
  margin-left: 0;
}

.duplicate-exception-list {
  margin-top: 18px;
}

.duplicate-exception {
  border: 1px solid var(--border);
  background: var(--surface);
}

.duplicate-exception + .duplicate-exception {
  margin-top: 8px;
}

.duplicate-exception > summary {
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr) auto 18px;
  gap: 9px;
  align-items: center;
  padding: 12px;
}

.duplicate-exception > summary > svg:first-child {
  width: 18px;
  height: 18px;
  color: var(--danger);
}

.duplicate-exception-body {
  padding: 0 12px 14px 41px;
}

.duplicate-exception-body > p {
  margin: 0 0 10px;
  color: var(--muted);
  font-size: 0.8rem;
}

.duplicate-exception-body .evidence-assets,
.duplicate-exception-body .evidence-review-controls {
  margin-left: 0;
}

.compact-success-row,
.compact-danger-row {
  display: flex;
  gap: 9px;
  align-items: center;
  padding: 11px 12px;
  border-left: 3px solid var(--success);
  background: var(--success-soft);
  color: var(--success);
  font-size: 0.82rem;
  font-weight: 650;
}

.compact-danger-row {
  margin-top: 10px;
  border-left-color: var(--danger);
  background: var(--danger-soft);
  color: var(--danger);
}

.compact-success-row svg,
.compact-danger-row svg {
  width: 18px;
  height: 18px;
}

.passed-checks {
  margin-top: 16px;
  border-top: 1px solid var(--border);
}

.passed-checks > summary {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr) 18px;
  gap: 9px;
  align-items: center;
  padding: 12px 0;
  color: var(--success);
  font-size: 0.82rem;
}

.passed-checks > summary > svg:first-child {
  width: 17px;
  height: 17px;
}

.passed-checks > div {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  border: 1px solid var(--border);
  background: var(--border);
}

.passed-checks > div > span {
  display: grid;
  grid-template-columns: 16px minmax(0, 1fr) auto;
  gap: 7px;
  align-items: center;
  padding: 9px 10px;
  background: var(--surface);
  font-size: 0.78rem;
}

.passed-checks > div svg {
  width: 15px;
  height: 15px;
  color: var(--success);
}

.passed-checks > div small {
  color: var(--muted);
}

.decision-panel {
  position: sticky;
  top: 20px;
  padding: 20px;
  border: 1px solid var(--border);
  border-radius: 6px;
  background: var(--surface);
  box-shadow: var(--shadow);
}

.decision-panel > h2 {
  margin: 0 0 18px;
  font-size: 1.02rem;
}

.decision-readiness,
.authorization-requirement {
  display: grid;
  grid-template-columns: 19px minmax(0, 1fr);
  gap: 9px;
  margin-bottom: 16px;
  padding: 11px 12px;
  border-left: 3px solid var(--warning);
  background: var(--warning-soft);
}

.decision-readiness.status-success {
  border-left-color: var(--success);
  background: var(--success-soft);
}

.decision-readiness.status-danger {
  border-left-color: var(--danger);
  background: var(--danger-soft);
}

.decision-readiness svg,
.authorization-requirement svg {
  width: 18px;
  height: 18px;
  margin-top: 1px;
}

.decision-readiness p,
.decision-readiness strong,
.decision-readiness span,
.authorization-requirement p,
.authorization-requirement strong,
.authorization-requirement span {
  display: block;
}

.decision-readiness p,
.authorization-requirement p {
  min-width: 0;
  margin: 0;
  overflow-wrap: anywhere;
  font-size: 0.8rem;
}

.decision-readiness span,
.authorization-requirement span {
  margin-top: 2px;
}

.authorization-requirement {
  border-left-color: var(--focus);
  background: var(--brand-soft);
  color: var(--brand-dark);
}

.decision-state {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  color: var(--muted);
}

.decision-state p {
  margin: 0;
  font-size: 0.84rem;
}

.blocker-list {
  margin-bottom: 18px;
  padding: 12px 14px;
  border-left: 3px solid var(--warning);
  background: var(--warning-soft);
  color: #694316;
  font-size: 0.8rem;
}

.blocker-list strong {
  display: block;
}

.blocker-list ul {
  margin: 7px 0 0;
  padding-left: 18px;
}

.blocker-list-collapsible {
  padding: 0;
}

.blocker-list-collapsible > summary {
  padding: 11px 12px;
  cursor: pointer;
  font-weight: 700;
  list-style-position: inside;
}

.blocker-list-collapsible ul {
  margin: 0;
  padding: 0 14px 12px 31px;
}

.decision-panel-compact .authorization-requirement {
  align-items: center;
  padding-block: 9px;
}

.decision-panel-compact .authorization-requirement p {
  margin: 0;
}

.case-rejection {
  margin-top: 10px;
}

.case-rejection .rejection-form {
  margin-top: 12px;
  padding-top: 14px;
}

.decision-form .field-group {
  margin-bottom: 13px;
}

.rejection-form {
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid var(--border);
}

.authorization-control {
  margin: -4px 0 18px;
}

.authorization-progress {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 11px 12px;
  border: 1px solid var(--border);
  border-radius: 5px;
  background: var(--surface-muted);
  font-size: 0.8rem;
}

.authorization-progress a {
  flex: 0 0 auto;
  font-weight: 700;
}

.simple-review-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 320px);
  gap: 24px;
  align-items: start;
}

.simple-review-content {
  min-width: 0;
  border-top: 1px solid var(--border);
}

.simple-review-content .case-section:first-child {
  padding-top: 20px;
}

.simple-evidence-list,
.simple-check-list {
  border-top: 1px solid var(--border);
}

.simple-review-checks .section-heading {
  padding-right: 12px;
}

.simple-evidence-item {
  padding: 16px 0 20px;
  border-bottom: 1px solid var(--border);
}

.simple-evidence-item > header {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  margin-bottom: 12px;
}

.simple-evidence-item .operation-icon {
  width: 36px;
  height: 36px;
}

.simple-evidence-item .identity-document-preview {
  width: min(760px, 100%);
  margin: 0;
}

.simple-face-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.simple-face-grid figure {
  min-width: 0;
  margin: 0;
  overflow: hidden;
  border: 1px solid var(--border-strong);
  border-radius: 6px;
  background: var(--surface-muted);
}

.simple-face-grid img {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: contain;
  background: #11191d;
}

.simple-face-grid figcaption {
  padding: 7px 9px;
  color: var(--muted);
  font-size: 0.72rem;
}

.simple-check-row {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) minmax(112px, 34%);
  gap: 12px;
  align-items: center;
  min-height: 62px;
  padding: 11px 14px;
  border-bottom: 1px solid var(--border);
}

.simple-check-row > div,
.simple-check-result {
  min-width: 0;
  max-width: 100%;
  overflow: visible;
}

.simple-check-row > div > strong,
.simple-check-row > div > small,
.simple-check-result strong,
.simple-check-result small {
  display: block;
  max-width: 100%;
  overflow: visible;
  line-height: 1.35;
  overflow-wrap: anywhere;
  text-overflow: clip;
  white-space: normal;
  word-break: normal;
}

.simple-check-row > div > strong {
  font-size: 0.84rem;
}

.simple-check-row > div > small,
.simple-check-result small {
  margin-top: 2px;
  color: var(--muted);
  font-size: 0.7rem;
}

.simple-check-result {
  width: 100%;
  justify-self: stretch;
  color: var(--text);
  font-size: 0.76rem;
  text-align: right;
}

.simple-check-row.status-success .simple-check-result strong {
  color: var(--success);
}

.simple-check-row.status-danger .simple-check-result strong {
  color: var(--danger);
}

.simple-check-row.status-pending .simple-check-result strong {
  color: var(--warning);
}

.simple-approval-progress {
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr);
  gap: 9px;
  align-items: center;
  margin-bottom: 16px;
  padding: 10px 11px;
  border-left: 3px solid var(--focus);
  background: var(--brand-soft);
  color: var(--brand-dark);
}

.simple-approval-progress svg {
  width: 18px;
  height: 18px;
}

.simple-approval-progress strong,
.simple-approval-progress small {
  display: block;
}

.simple-approval-progress strong {
  font-size: 0.8rem;
}

.simple-approval-progress small {
  margin-top: 2px;
  font-size: 0.7rem;
}

.completed-review-summary {
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr);
  gap: 9px;
  align-items: start;
  padding: 11px 12px;
  border-left: 3px solid var(--border-strong);
  background: var(--surface-muted);
}

.completed-review-summary.status-success {
  border-left-color: var(--success);
  background: var(--success-soft);
  color: var(--success);
}

.completed-review-summary.status-danger {
  border-left-color: var(--danger);
  background: var(--danger-soft);
  color: var(--danger);
}

.completed-review-summary svg {
  width: 18px;
  height: 18px;
  margin-top: 1px;
}

.completed-review-summary strong,
.completed-review-summary time,
.completed-review-summary small {
  display: block;
}

.completed-review-summary strong {
  color: currentColor;
  font-size: 0.82rem;
}

.completed-review-summary time,
.completed-review-summary small {
  margin-top: 3px;
  color: var(--muted);
  font-size: 0.7rem;
}

.completed-review-summary small {
  text-transform: capitalize;
}

.completed-review-note {
  margin-top: 14px;
  padding-top: 12px;
  border-top: 1px solid var(--border);
}

.completed-review-note small {
  color: var(--muted);
  font-size: 0.68rem;
  font-weight: 750;
  text-transform: uppercase;
}

.completed-review-note p {
  margin: 5px 0 0;
  overflow-wrap: anywhere;
  font-size: 0.8rem;
  white-space: pre-line;
}

.simple-decision-form .field-group {
  margin-bottom: 14px;
}

.simple-decision-form textarea {
  width: 100%;
  resize: vertical;
}

.field-optional {
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 500;
}

.simple-decision-actions {
  display: grid;
  gap: 9px;
}

.simple-decision-actions .button-danger {
  border-color: var(--danger);
  background: var(--danger);
  color: #fff;
}

.simple-decision-actions .button-danger:hover:not(:disabled) {
  border-color: #762a37;
  background: #762a37;
  color: #fff;
}

.account-closure-status {
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr);
  gap: 9px;
  align-items: start;
  margin-bottom: 14px;
  padding: 11px 12px;
  border-left: 3px solid var(--danger);
  background: var(--danger-soft);
  color: var(--danger);
}

.account-closure-status svg {
  width: 18px;
  height: 18px;
  margin-top: 1px;
}

.account-closure-status strong,
.account-closure-status small {
  display: block;
}

.account-closure-status strong {
  font-size: 0.8rem;
}

.account-closure-status small {
  margin-top: 3px;
  color: var(--text);
  font-size: 0.72rem;
  line-height: 1.4;
}

.account-closure-confirm-form {
  margin-top: 16px;
}

.account-closure-confirm-form .button-danger,
.account-closure-control .button-danger {
  border-color: var(--danger);
  background: var(--danger);
  color: #fff;
}

.account-closure-confirm-form .button-danger:hover:not(:disabled),
.account-closure-control .button-danger:hover:not(:disabled) {
  border-color: #762a37;
  background: #762a37;
  color: #fff;
}

.account-closure-control {
  margin-top: 20px;
  padding-top: 14px;
  border-top: 1px solid var(--border);
}

.account-closure-control summary {
  display: flex;
  gap: 7px;
  align-items: center;
  color: var(--danger);
  cursor: pointer;
  font-size: 0.78rem;
  font-weight: 700;
  list-style: none;
}

.account-closure-control summary::-webkit-details-marker {
  display: none;
}

.account-closure-control summary svg {
  width: 16px;
  height: 16px;
}

.account-closure-control form {
  margin-top: 14px;
}

.account-closure-control textarea {
  width: 100%;
  resize: vertical;
}

.account-closure-control .checkbox-row {
  margin: 12px 0;
}

.muted-copy {
  margin: 0;
  color: var(--muted);
  font-size: 0.86rem;
}

.error-main {
  width: min(100% - 40px, 520px);
  margin: auto;
  padding: 72px 0;
  text-align: center;
}

.error-icon {
  width: 58px;
  height: 58px;
  margin-bottom: 10px;
  background: var(--danger-soft);
  color: var(--danger);
}

.error-icon svg {
  width: 28px;
  height: 28px;
}

.error-main p {
  margin-bottom: 24px;
}

.app-footer {
  width: 100%;
  margin-top: auto;
  padding: 24px clamp(20px, 5vw, 64px);
  border-top: 1px solid var(--border);
  background: var(--surface);
  color: var(--muted);
  font-size: 0.76rem;
}

.app-footer p {
  max-width: 960px;
  margin: 0;
}

.app-footer p + p {
  margin-top: 6px;
}

@media (max-width: 760px) {
  .app-header {
    min-height: 62px;
    padding: 10px 16px;
  }

  .header-actions {
    gap: 11px;
  }

  .auth-main {
    padding-top: 38px;
  }

  .auth-heading h1,
  .page-heading h1,
  .dashboard-heading h1,
  .error-main h1 {
    font-size: 1.7rem;
  }

  .page-main {
    width: min(100% - 28px, 1180px);
    padding-top: 34px;
  }

  .verification-grid,
  .account-grid,
  .onboarding-layout,
  .mfa-enrollment-grid,
  .case-layout,
  .simple-review-layout {
    grid-template-columns: 1fr;
  }

  .review-overview {
    grid-template-columns: 1fr;
  }

  .review-overview-item {
    border-right: 0;
    border-bottom: 1px solid var(--border);
  }

  .review-overview-item:last-child {
    border-bottom: 0;
  }

  .phone-entry-grid {
    grid-template-columns: 1fr;
  }

  .security-form-grid {
    grid-template-columns: 1fr;
    gap: 0;
  }

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

  .operations-workspace {
    grid-template-columns: 1fr;
    gap: 34px;
  }

  .staff-developer-review {
    justify-self: stretch;
    width: 100%;
  }

  .staff-customer-view-banner {
    grid-template-columns: auto minmax(0, 1fr);
    padding: 10px 16px;
  }

  .staff-customer-view-banner form {
    grid-column: 1 / -1;
  }

  .staff-customer-view-banner .button {
    width: 100%;
  }

  .operations-summary div + div {
    border-left: 0;
  }

  .operations-summary div:nth-child(even) {
    border-left: 1px solid var(--border);
  }

  .operations-summary div:last-child:nth-child(odd) {
    grid-column: 1 / -1;
    border-left: 0;
  }

  .identity-status-strip {
    grid-template-columns: 1fr;
  }

  .identity-status-strip div + div {
    border-top: 1px solid var(--border);
    border-left: 0;
  }

  .identity-action-panel {
    grid-template-columns: auto minmax(0, 1fr);
    align-items: start;
    padding: 20px;
  }

  .identity-action-panel > :last-child:not(div) {
    grid-column: 1 / -1;
    width: 100%;
  }

  .profile-section-heading {
    align-items: start;
  }

  .profile-link-label {
    display: none;
  }

  .identity-profile-actions {
    grid-column: 1 / -1;
    width: 100%;
    justify-items: start;
  }

  .identity-profile-actions .button {
    width: 100%;
  }

  .identity-document-workspace {
    grid-column: 1 / -1;
    width: 100%;
  }

  .identity-consent-panel form {
    max-width: none;
  }

  .tipalti-onboarding-frame > header {
    grid-template-columns: 1fr;
    padding: 18px;
  }

  .tipalti-onboarding-frame > header form,
  .tipalti-onboarding-frame > header button {
    width: 100%;
  }

  .tipalti-onboarding-frame iframe {
    height: 680px;
  }

  .tipalti-onboarding-frame > footer {
    align-items: flex-start;
    flex-direction: column;
  }

  .identity-development-capture {
    grid-template-columns: 1fr;
    padding: 20px;
  }

  .identity-capture-stage {
    width: min(100%, 420px);
    justify-self: center;
  }

  .operations-summary div:nth-child(n + 3) {
    border-top: 1px solid var(--border);
  }

  .decision-panel {
    position: static;
  }

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

  .simple-check-row {
    grid-template-columns: 36px minmax(0, 1fr);
  }

  .simple-check-result {
    grid-column: 2;
    width: 100%;
    justify-self: start;
    text-align: left;
  }

  .identity-queue-table th:nth-child(3),
  .identity-queue-table th:nth-child(4),
  .identity-queue-table th:nth-child(5),
  .identity-queue-table td:nth-child(3),
  .identity-queue-table td:nth-child(4),
  .identity-queue-table td:nth-child(5),
  .identity-queue-table .desktop-case-kind {
    display: none;
  }

  .identity-queue-table .mobile-case-meta,
  .identity-queue-table .mobile-case-stage {
    display: block;
  }

  .identity-queue-table th,
  .identity-queue-table td {
    padding: 12px;
  }

  .identity-queue-table th:first-child,
  .identity-queue-table td:first-child {
    width: 100%;
  }

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

  .approval-table thead,
  .approval-table td:nth-child(3),
  .approval-table td:nth-child(4) {
    display: none;
  }

  .approval-table tr {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 12px;
    padding: 16px;
    border-bottom: 1px solid var(--border);
  }

  .approval-table tbody tr:last-child {
    border-bottom: 0;
  }

  .approval-table td,
  .approval-table td:last-child {
    min-width: 0;
    padding: 0;
    border: 0;
  }

  .approval-table td:nth-child(2) {
    width: auto;
    text-align: right;
  }

  .approval-table .approval-actions-cell {
    grid-column: 1 / -1;
    padding-top: 12px;
    border-top: 1px solid var(--border);
  }

  .approval-mobile-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 3px 12px;
    margin-top: 9px;
    color: var(--muted);
    font-size: 0.75rem;
  }

  .payout-cycle-band,
  .authorization-band {
    align-items: stretch;
    flex-direction: column;
    gap: 14px;
  }

  .cycle-form {
    align-items: stretch;
    flex-direction: column;
  }

  .batch-summary {
    grid-template-columns: 1fr;
  }

  .batch-summary div + div {
    border-top: 1px solid var(--border);
    border-left: 0;
  }

  .payout-batch-table th:nth-child(3),
  .payout-batch-table th:nth-child(4),
  .payout-batch-table th:nth-child(5),
  .payout-batch-table td:nth-child(3),
  .payout-batch-table td:nth-child(4),
  .payout-batch-table td:nth-child(5),
  .payout-request-table th:nth-child(2),
  .payout-request-table th:nth-child(3),
  .payout-request-table th:nth-child(4),
  .payout-request-table td:nth-child(2),
  .payout-request-table td:nth-child(3),
  .payout-request-table td:nth-child(4),
  .batch-payment-table th:nth-child(3),
  .batch-payment-table td:nth-child(3) {
    display: none;
  }

  .payout-batch-table .mobile-payout-meta,
  .payout-request-table .mobile-payout-meta,
  .batch-payment-table .mobile-payout-meta {
    display: block;
  }

  .payout-batch-table th,
  .payout-batch-table td,
  .payout-request-table th,
  .payout-request-table td,
  .batch-payment-table th,
  .batch-payment-table td {
    padding: 12px;
  }

  .payout-batch-table th:first-child,
  .payout-batch-table td:first-child,
  .payout-request-table th:first-child,
  .payout-request-table td:first-child,
  .batch-payment-table th:first-child,
  .batch-payment-table td:first-child {
    width: 100%;
  }

  .case-section-heading {
    align-items: stretch;
    flex-direction: column;
  }

  .verification-check-heading {
    align-items: flex-start;
    flex-direction: column;
    gap: 8px;
  }

  .tax-account-table th:nth-child(2),
  .tax-account-table th:nth-child(3),
  .tax-account-table th:nth-child(4),
  .tax-account-table th:nth-child(5),
  .tax-account-table td:nth-child(2),
  .tax-account-table td:nth-child(3),
  .tax-account-table td:nth-child(4),
  .tax-account-table td:nth-child(5) {
    display: none;
  }

  .tax-account-table .mobile-tax-meta {
    display: block;
  }

  .tax-account-table th,
  .tax-account-table td {
    padding: 12px;
  }

  .tax-account-table th:first-child,
  .tax-account-table td:first-child {
    width: 100%;
  }

  .year-end-account-table th:nth-child(2),
  .year-end-account-table th:nth-child(3),
  .year-end-account-table th:nth-child(4),
  .year-end-account-table td:nth-child(2),
  .year-end-account-table td:nth-child(3),
  .year-end-account-table td:nth-child(4) {
    display: none;
  }

  .year-end-account-table th:first-child,
  .year-end-account-table td:first-child {
    width: 100%;
  }

  .tax-comparison-grid,
  .tax-provider-detail-grid {
    grid-template-columns: 1fr;
  }

  .tax-comparison-group + .tax-comparison-group {
    border-top: 1px solid var(--border);
    border-left: 0;
  }

  .tax-provider-detail-grid > div,
  .tax-provider-detail-grid > div:nth-child(3n + 1) {
    border-left: 0;
  }

  .tax-provider-detail-grid > div + div {
    border-top: 1px solid var(--border);
  }

  .tax-detail-list > div {
    grid-template-columns: 1fr;
    gap: 3px;
  }

  .year-end-create-form,
  .tax-form-row {
    grid-template-columns: 1fr;
  }

  .year-end-create-form .button {
    width: 100%;
  }

  .tax-form-action form {
    align-items: stretch;
    flex-direction: column;
  }

  .tax-form-action form > label:not(.checkbox-row),
  .tax-form-action .checkbox-row {
    flex: none;
    width: 100%;
  }

  .case-heading {
    align-items: flex-start;
    flex-direction: column;
  }

  .case-heading-actions {
    justify-content: flex-start;
  }

  .qr-frame {
    justify-self: center;
  }

  .progress-panel {
    position: static;
  }

  .field-grid,
  .field-grid-three {
    grid-template-columns: 1fr;
  }

  .field-span-two {
    grid-column: span 1;
  }

  .form-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .dashboard-heading {
    align-items: flex-end;
  }

  .account-detail-heading {
    align-items: flex-start;
    flex-direction: column;
    gap: 14px;
  }

  .account-balance-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .account-balance-summary > div:nth-child(odd) {
    border-left: 0;
  }

  .account-balance-summary > div:nth-child(n + 3) {
    border-top: 1px solid var(--border);
  }

  .payout-account-summary {
    grid-template-columns: 1fr;
  }

  .payout-account-summary > div + div {
    border-top: 1px solid var(--border);
    border-left: 0;
  }

  .early-payout-form {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .early-payout-form h3,
  .early-payout-form .button {
    grid-column: 1 / -1;
  }

  .early-payout-form h3 {
    padding-bottom: 0;
  }

  .schedule-band {
    align-items: flex-start;
    flex-direction: column;
    gap: 10px;
  }
}

@media (max-width: 480px) {
  .simple-face-grid {
    grid-template-columns: 1fr;
  }

  .auth-main {
    width: min(100% - 24px, 500px);
  }

  .auth-card,
  .verification-card,
  .account-card,
  .setup-panel,
  .progress-panel {
    padding: 18px;
  }

  .segmented-control {
    grid-template-columns: 1fr;
  }

  .verification-title,
  .account-card-header {
    grid-template-columns: 40px minmax(0, 1fr);
  }

  .security-status {
    grid-template-columns: 44px minmax(0, 1fr);
  }

  .security-status > .status-badge,
  .security-status > form {
    grid-column: 2;
    justify-self: start;
  }

  .security-setting-heading {
    grid-template-columns: 44px minmax(0, 1fr);
  }

  .security-setting-heading > .button {
    grid-column: 2;
    justify-self: start;
  }

  .mfa-setup,
  .recovery-code-panel {
    padding: 18px;
  }

  .recovery-code-grid {
    grid-template-columns: 1fr;
  }

  .review-fields {
    grid-template-columns: 1fr;
  }

  .document-list > div {
    grid-template-columns: 40px minmax(0, 1fr);
  }

  .document-list .status-badge {
    grid-column: 2;
    justify-self: start;
  }

  .evidence-review-heading {
    grid-template-columns: 40px minmax(0, 1fr);
  }

  .evidence-review-heading .status-badge {
    grid-column: 2;
    justify-self: start;
  }

  .evidence-assets,
  .evidence-inspection-guidance,
  .evidence-review-controls,
  .evidence-review-result {
    margin-left: 51px;
  }

  .evidence-task-actions,
  .evidence-open-reminder {
    margin-left: 51px;
  }

  .identity-document-preview {
    width: 100%;
    margin-left: 0;
  }

  .identity-document-preview.is-pdf .identity-document-preview-stage {
    height: 520px;
  }

  .evidence-slideshow {
    width: 100%;
    margin-left: 0;
  }

  .evidence-slide-progress {
    flex-basis: 100%;
    text-align: right;
  }

  .evidence-rejection > form {
    grid-template-columns: 1fr;
  }

  .review-exception > summary {
    grid-template-columns: 38px minmax(0, 1fr) 18px;
  }

  .review-exception > summary .status-badge {
    grid-column: 2;
    justify-self: start;
  }

  .review-exception > summary > svg {
    grid-column: 3;
    grid-row: 1;
  }

  .duplicate-exception > summary {
    grid-template-columns: 20px minmax(0, 1fr) 18px;
  }

  .duplicate-exception > summary .status-badge {
    grid-column: 2;
    justify-self: start;
  }

  .duplicate-exception > summary > svg:last-child {
    grid-column: 3;
    grid-row: 1;
  }

  .duplicate-exception-body {
    padding-left: 12px;
  }

  .passed-checks > div {
    grid-template-columns: 1fr;
  }

  .evidence-review-controls,
  .evidence-review-controls.uniqueness-review-controls,
  .evidence-review-controls form,
  .evidence-review-controls form:nth-child(2) {
    grid-template-columns: 1fr;
  }

  .verification-title .status-badge,
  .account-card-header .status-badge {
    grid-column: 2;
    justify-self: start;
  }

  .balance-layout {
    grid-template-columns: 1fr;
  }

  .account-balance-summary > div {
    padding: 16px;
  }

  .account-balance-summary .account-balance-primary strong {
    font-size: 1.3rem;
  }

  .account-activity-controls {
    grid-template-columns: minmax(0, 1fr) 84px;
    justify-content: stretch;
  }

  .account-activity-controls .button {
    grid-column: 1 / -1;
    width: 100%;
  }

  .account-activity-row {
    grid-template-columns: 36px minmax(0, 1fr);
    gap: 11px;
    padding: 14px;
  }

  .account-activity-icon {
    width: 36px;
    height: 36px;
  }

  .account-activity-amount {
    grid-column: 2;
    justify-self: start;
    text-align: left;
  }

  .account-activity-pagination {
    grid-template-columns: 36px minmax(0, 1fr) 36px;
  }

  .account-activity-pagination > .account-pagination-step:first-child {
    grid-column: 1;
    grid-row: 1;
  }

  .account-pagination-pages {
    grid-column: 2;
    grid-row: 1;
    justify-content: flex-start;
    overflow-x: auto;
    scrollbar-width: thin;
  }

  .account-activity-pagination > .account-pagination-step:last-child {
    grid-column: 3;
    grid-row: 1;
  }

  .account-pagination-position {
    grid-column: 1 / -1;
    grid-row: 2;
    justify-self: center;
  }

  .early-payout-form {
    grid-template-columns: 1fr;
  }

  .early-payout-form h3,
  .early-payout-form .button {
    grid-column: 1;
    grid-row: auto;
  }

  .early-payout-form .button {
    width: 100%;
  }

  .draft-account-delete .button {
    width: 100%;
  }

  .payout-history-row {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px 12px;
  }

  .payout-history-row .status-badge {
    grid-column: 1 / -1;
    justify-self: start;
  }

  .secondary-balance {
    padding: 10px 0 0;
    border-top: 1px solid var(--border);
    border-left: 0;
  }

  .dashboard-heading .button {
    width: 42px;
    min-width: 42px;
    padding: 0;
    font-size: 0;
  }
}

.finance-control-summary {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.finance-control-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 28px;
  align-items: start;
}

.finance-control-section {
  min-width: 0;
  padding: 22px 0;
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
}

.finance-control-form {
  display: grid;
  gap: 14px;
}

.finance-control-form label > span {
  display: block;
  margin-bottom: 6px;
  color: var(--muted);
  font-size: 0.76rem;
  font-weight: 700;
}

.finance-control-form .button {
  justify-self: start;
}

.finance-approval-list {
  display: grid;
}

.finance-approval-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(310px, auto);
  gap: 18px;
  align-items: center;
  padding: 14px 16px;
}

.finance-approval-row + .finance-approval-row {
  border-top: 1px solid var(--border);
}

.finance-approval-copy > div {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.finance-approval-copy p {
  margin: 3px 0 0;
  color: var(--muted);
  font-size: 0.76rem;
}

.finance-approval-amount {
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.finance-approval-form {
  display: grid;
  grid-template-columns: minmax(120px, 1fr) auto auto;
  gap: 7px;
  align-items: center;
}

.identifier-value {
  font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
  font-size: 0.78rem !important;
}

.narrow-operations-page {
  max-width: 820px;
}

.api-status-list {
  margin: 28px 0 0;
  border-top: 1px solid var(--border);
}

.api-status-list > div {
  display: grid;
  grid-template-columns: minmax(130px, 0.4fr) minmax(0, 1fr);
  gap: 18px;
  padding: 12px 0;
  border-bottom: 1px solid var(--border);
}

.api-status-list dt {
  color: var(--muted);
  font-size: 0.76rem;
  font-weight: 700;
}

.api-status-list dd {
  margin: 0;
  overflow-wrap: anywhere;
  font-size: 0.84rem;
  font-weight: 650;
}

.danger-action-row {
  display: flex;
  gap: 18px;
  align-items: center;
  justify-content: space-between;
  margin-top: 28px;
  padding: 16px 0;
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
}

@media (max-width: 900px) {
  .finance-control-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .finance-control-grid {
    grid-template-columns: 1fr;
  }

  .finance-approval-row {
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .finance-approval-form {
    grid-column: 1 / -1;
  }
}

@media (max-width: 620px) {
  .finance-control-summary {
    grid-template-columns: 1fr;
  }

  .finance-control-summary div + div {
    border-top: 1px solid var(--border);
    border-left: 0;
  }

  .finance-approval-row {
    grid-template-columns: 1fr;
  }

  .finance-approval-form {
    grid-column: auto;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .finance-approval-form input {
    grid-column: 1 / -1;
  }

  .api-status-list > div {
    grid-template-columns: 1fr;
    gap: 4px;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }
}
.profile-editor-fieldset {
  border: 0;
  margin: 0;
  min-inline-size: 0;
  padding: 0;
}

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

.alert-warning {
  border-color: #dfbb8d;
  background: var(--warning-soft);
  color: #704216;
}

.developer-page {
  max-width: 980px;
}

.developer-profile-form,
.developer-section,
.developer-profile-details,
.staff-developer-summary {
  border-top: 1px solid var(--border);
}

.developer-form-section,
.developer-section,
.staff-developer-summary {
  padding: 24px 0;
}

.developer-form-section:first-of-type {
  padding-top: 22px;
}

.developer-form-section h2,
.developer-section > h2,
.staff-developer-summary > h2 {
  margin: 0 0 18px;
  font-size: 1.05rem;
}

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

.developer-app-list {
  display: grid;
  gap: 7px;
}

.developer-app-row {
  min-width: 0;
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr) auto 20px;
  gap: 13px;
  align-items: center;
  padding: 13px 16px;
  border: 1px solid var(--border);
  border-radius: 6px;
  background: var(--surface);
  color: var(--ink);
  text-decoration: none;
}

.developer-app-row:hover {
  border-color: var(--brand);
  background: var(--brand-soft);
  color: var(--ink);
}

.developer-app-name {
  min-width: 0;
}

.developer-app-name strong,
.developer-app-name small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.developer-app-name small {
  margin-top: 2px;
  color: var(--muted);
  font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
  font-size: 0.74rem;
}

.developer-empty,
.queue-empty {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 92px;
  color: var(--muted);
  font-size: 0.88rem;
  text-align: center;
}

.developer-create-app,
.developer-profile-details {
  margin-top: 18px;
}

.developer-create-app > summary,
.developer-profile-details > summary {
  display: flex;
  align-items: center;
  gap: 8px;
  width: fit-content;
  padding: 8px 0;
  color: var(--brand);
  font-weight: 750;
  cursor: pointer;
}

.developer-create-app > form,
.developer-profile-details > form {
  max-width: 760px;
  padding: 20px 0 4px;
}

.developer-profile-details {
  padding: 15px 0 24px;
  border-bottom: 1px solid var(--border);
}

.developer-scope-picker .check-row {
  margin-bottom: 12px;
}

.developer-scope-picker strong,
.developer-scope-picker small {
  display: block;
}

.developer-scope-picker strong {
  color: var(--ink);
  font-size: 0.86rem;
}

.developer-scope-picker small {
  margin-top: 2px;
  color: var(--muted);
  font-size: 0.78rem;
}

.developer-endpoints {
  margin: 0;
  border-top: 1px solid var(--border);
}

.developer-endpoints > div {
  display: grid;
  grid-template-columns: 110px minmax(0, 1fr);
  gap: 14px;
  padding: 11px 0;
  border-bottom: 1px solid var(--border);
}

.developer-endpoints dt {
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 700;
}

.developer-endpoints dd {
  min-width: 0;
  margin: 0;
}

.developer-endpoints code,
.credential-inline code,
.staff-developer-app code {
  overflow-wrap: anywhere;
  font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
  font-size: 0.78rem;
}

.developer-credentials-page {
  max-width: 720px;
}

.credential-surface {
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
}

.credential-row {
  padding: 16px 0;
}

.credential-row + .credential-row {
  border-top: 1px solid var(--border);
}

.credential-row > span,
.credential-row > label {
  display: block;
  margin-bottom: 7px;
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 700;
}

.credential-row > strong {
  text-transform: capitalize;
}

.copy-value {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 40px;
  gap: 6px;
}

.copy-value input {
  min-width: 0;
  font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
  font-size: 0.8rem;
}

.copy-status {
  min-height: 24px;
  margin: 8px 0;
  color: var(--muted);
  font-size: 0.82rem;
}

.credential-inline {
  display: grid;
  grid-template-columns: 90px minmax(0, 1fr);
  gap: 14px;
  margin-bottom: 22px;
  padding: 12px 0;
  border-bottom: 1px solid var(--border);
}

.credential-inline span {
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 700;
}

.developer-danger-section {
  border-bottom: 1px solid var(--border);
}

.developer-security-actions,
.oauth-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.developer-production-form {
  max-width: 760px;
}

.oauth-consent-page {
  max-width: 660px;
}

.oauth-app-heading {
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
  margin-bottom: 24px;
}

.oauth-app-icon {
  width: 52px;
  height: 52px;
  display: inline-grid;
  place-items: center;
  border-radius: 6px;
  background: var(--brand);
  color: #fff;
}

.oauth-app-icon svg {
  width: 25px;
  height: 25px;
}

.oauth-app-heading h1 {
  margin: 0;
  font-size: 1.45rem;
}

.oauth-app-heading a {
  display: inline-block;
  margin-top: 2px;
  font-size: 0.84rem;
}

.oauth-permissions,
.oauth-test-subject,
.oauth-royalty-target {
  padding: 21px 0;
  border-top: 1px solid var(--border);
}

.oauth-permissions h2 {
  margin: 0 0 14px;
  font-size: 1rem;
}

.oauth-permissions ul {
  display: grid;
  gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.oauth-permissions li {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr);
  gap: 9px;
}

.oauth-permissions li > svg {
  margin-top: 2px;
  color: var(--success);
}

.oauth-permissions strong,
.oauth-permissions small {
  display: block;
}

.oauth-permissions small {
  margin-top: 2px;
  color: var(--muted);
  font-size: 0.8rem;
}

.oauth-test-subject label,
.oauth-royalty-target label {
  display: block;
  margin-bottom: 7px;
  font-size: 0.88rem;
  font-weight: 700;
}

.oauth-royalty-target .alert {
  margin: 0;
}

.oauth-boundary {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr);
  gap: 9px;
  margin: 0 0 22px;
  padding: 13px 0;
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
  color: var(--muted);
  font-size: 0.82rem;
}

.oauth-boundary svg {
  color: var(--brand);
}

.oauth-policy-links {
  display: flex;
  gap: 16px;
  margin-top: 18px;
  font-size: 0.82rem;
}

.review-detail-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px 26px;
  margin: 0;
}

.review-detail-grid div,
.staff-developer-app dl div {
  min-width: 0;
}

.review-detail-grid dt,
.staff-developer-app dt,
.review-long-value > span {
  color: var(--muted);
  font-size: 0.75rem;
  font-weight: 700;
}

.review-detail-grid dd,
.staff-developer-app dd {
  margin: 3px 0 0;
  overflow-wrap: anywhere;
  font-size: 0.86rem;
  font-weight: 650;
}

.review-long-value {
  margin-top: 22px;
  padding-top: 18px;
  border-top: 1px solid var(--border);
}

.review-long-value p {
  margin: 5px 0 0;
  white-space: pre-wrap;
}

.staff-developer-app {
  padding: 16px 0;
  border-top: 1px solid var(--border);
}

.staff-developer-app > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.staff-developer-app dl {
  display: grid;
  grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
  gap: 16px;
  margin: 13px 0 0;
}

.staff-developer-app code {
  display: block;
  margin-bottom: 4px;
}

.optional-label {
  color: var(--muted);
  font-size: 0.75rem;
  font-weight: 500;
}

.security-empty-state {
  margin: 0;
  color: var(--muted);
  font-size: 0.86rem;
}

.security-connection-list {
  display: grid;
  gap: 8px;
}

.security-connection-row {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 12px 0;
  border-top: 1px solid var(--border);
}

.security-connection-row:first-child {
  border-top: 0;
}

.security-connection-row strong,
.security-connection-row span,
.security-connection-row small {
  display: block;
}

.dashboard-developer-section {
  margin-top: 36px;
  padding-top: 24px;
  border-top: 1px solid var(--border);
}

.developer-entry-link {
  margin-top: 24px;
  text-align: right;
}

.developer-entry-link a {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: var(--muted);
  font-size: 0.8rem;
  font-weight: 650;
  text-decoration: none;
}

.developer-entry-link a:hover {
  color: var(--brand);
}

.security-connection-row span,
.security-connection-row small {
  margin-top: 2px;
  color: var(--muted);
  font-size: 0.76rem;
}

@media (max-width: 720px) {
  .developer-form-grid,
  .review-detail-grid,
  .staff-developer-app dl {
    grid-template-columns: 1fr;
  }

  .developer-app-row {
    grid-template-columns: 42px minmax(0, 1fr) 20px;
  }

  .developer-app-row .status-badge {
    grid-column: 2;
    justify-self: start;
  }

  .developer-app-row > svg:last-child {
    grid-column: 3;
    grid-row: 1;
  }

  .developer-endpoints > div,
  .credential-inline {
    grid-template-columns: 1fr;
    gap: 4px;
  }

  .security-connection-row {
    grid-template-columns: 42px minmax(0, 1fr);
  }

  .security-connection-row form {
    grid-column: 2;
    justify-self: start;
  }
}

@media (max-width: 480px) {
  .oauth-app-heading {
    grid-template-columns: 46px minmax(0, 1fr);
  }

  .oauth-app-heading .status-badge {
    grid-column: 2;
    justify-self: start;
  }

  .oauth-actions .button,
  .oauth-actions form {
    width: 100%;
  }
}
