/**
 * Invoice overview — Advanced mode polish
 * Gated on #invoicesWrap[data-invoice-overview-mode="advanced"].
 * Row-style fields, compact addresses, sidebar pay link only (KPIs live in hero).
 */

#invoicesWrap[data-invoice-overview-mode="advanced"] .invoice-overview-advanced-layout {
  gap: 14px !important;
  max-width: 1180px !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"] .invoice-overview-advanced-layout .contact-overview-left,
#invoicesWrap[data-invoice-overview-mode="advanced"] .invoice-overview-advanced-layout .contact-overview-right {
  gap: 10px !important;
}

@supports (container-type: inline-size) {
  @container detail-pane (min-width: 920px) {
    #invoicesWrap[data-invoice-overview-mode="advanced"] .invoice-overview-advanced-layout {
      grid-template-columns: minmax(0, 1fr) minmax(240px, 320px) !important;
    }

    body:not(.is-mobile)
      #invoicesWrap[data-invoice-overview-mode="advanced"]
      .invoice-overview-advanced-layout
      .contact-overview-right {
      position: sticky;
      top: clamp(12px, 2vmin, 22px);
      align-self: start;
    }
  }
}

/* Invoice details card */
#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced
  > h3 {
  padding: 12px 16px 8px !important;
  margin: 0 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase;
  color: #64748b !important;
  border-bottom: 1px solid rgba(226, 232, 240, 0.92) !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced
  .contact-field-group {
  margin: 0 !important;
  padding: 10px 16px 12px !important;
  border-bottom: none !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced
  .contact-field-group-title {
  min-height: 0 !important;
  padding: 0 0 8px !important;
  margin: 0 !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase;
  color: #94a3b8 !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced
  .contact-field-group
  + .contact-field-group,
#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced
  .invoice-ov-bill-ship-grid {
  margin-top: 0 !important;
  padding-top: 0 !important;
  border-top: 1px solid rgba(226, 232, 240, 0.88) !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced
  .invoice-ov-section-divider {
  margin: 0 16px !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced
  .invoice-ov-section-divider
  + .invoice-ov-meta-group {
  padding-top: 14px !important;
}

/* Identity + Invoice meta: label | value rows */
#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-surface
  .invoice-ov-field-grid--identity,
#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-surface
  .invoice-ov-field-grid--meta,
#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-surface
  .invoice-ov-field-grid--props {
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 0 !important;
  padding: 0 !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-surface
  .invoice-ov-field-grid
  > .invoice-ov-field {
  display: grid !important;
  grid-template-columns: minmax(108px, 34%) minmax(0, 1fr) !important;
  gap: 8px 12px !important;
  align-items: start !important;
  padding: 9px 0 !important;
  border-radius: 0 !important;
  border: none !important;
  border-bottom: 1px solid rgba(226, 232, 240, 0.92) !important;
  background: transparent !important;
  box-shadow: none !important;
  min-height: 0 !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-surface
  .invoice-ov-field-grid
  > .invoice-ov-field:last-child {
  border-bottom: none !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-surface
  .invoice-ov-field--span-2,
#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-surface
  .invoice-ov-field--span2,
#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-surface
  .invoice-ov-field--wide {
  grid-column: 1 / -1 !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-surface
  .invoice-ov-field
  .invoice-ov-label {
  margin: 0 !important;
  padding: 2px 0 0 !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  color: #64748b !important;
  line-height: 1.3 !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-surface
  .crm-contact-overview-fields:not(.editing)
  .invoice-ov-value {
  padding: 0 !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
  text-align: left !important;
  color: #0f172a !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-surface
  .crm-contact-overview-fields.editing
  .invoice-ov-value {
  padding: 0 !important;
  text-align: left !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-surface
  .invoice-ov-status-pill {
  display: inline-flex !important;
  align-items: center !important;
  padding: 3px 9px !important;
  border-radius: 999px !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
}

/* Bill / ship addresses */
#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-surface
  .invoice-ov-bill-ship-grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 0 !important;
  padding: 0 16px 12px !important;
}

@media (min-width: 720px) {
  #invoicesWrap[data-invoice-overview-mode="advanced"]
    .invoice-overview-surface
    .invoice-ov-bill-ship-grid:has(> :nth-child(2)) {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 0 20px !important;
  }

  #invoicesWrap[data-invoice-overview-mode="advanced"]
    .invoice-overview-surface
    .invoice-ov-bill-ship-grid:has(> :nth-child(2))
    > .contact-field-group
    + .contact-field-group {
    border-left: 1px solid rgba(226, 232, 240, 0.88) !important;
    padding-left: 16px !important;
    margin-top: 0 !important;
    padding-top: 10px !important;
  }

  #invoicesWrap[data-invoice-overview-mode="advanced"]
    .invoice-overview-surface
    .invoice-ov-bill-ship-grid--ship-same:has(> :nth-child(2)) {
    grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.8fr) !important;
  }
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-surface
  .invoice-ov-bill-ship-grid
  > .contact-field-group {
  padding: 10px 0 0 !important;
  margin: 0 !important;
  border-top: none !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-surface
  .invoice-ov-address-block {
  padding: 10px 12px !important;
  border-radius: 10px !important;
  border: 1px solid rgba(226, 232, 240, 0.88) !important;
  background: rgba(248, 250, 252, 0.92) !important;
  min-height: 0 !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-surface
  .invoice-ov-address-name {
  font-size: 14px !important;
  font-weight: 700 !important;
  margin: 0 0 4px !important;
  line-height: 1.3 !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-surface
  .invoice-ov-address-lines {
  font-size: 13px !important;
  line-height: 1.45 !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-surface
  .invoice-ov-address-lines
  p {
  margin: 0 0 2px !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-surface
  .invoice-ov-address-same-as {
  padding: 10px 12px !important;
  border-radius: 10px !important;
  border: 1px dashed rgba(203, 213, 225, 0.95) !important;
  background: rgba(248, 250, 252, 0.75) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #64748b !important;
  line-height: 1.35 !important;
}

/* Sidebar pay link */
#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-advanced-layout
  .contact-overview-right
  .invoice-ov-pay-link-card--qb {
  padding: 14px 14px 12px !important;
  border: 1px solid rgba(226, 232, 240, 0.95) !important;
  border-radius: 12px !important;
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%) !important;
  box-shadow: 0 1px 3px rgba(15, 23, 42, 0.06) !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-advanced-layout
  .invoice-ov-pay-link-card--qb
  .invoice-ov-pay-link-card__title {
  font-size: 13px !important;
  font-weight: 700 !important;
  margin-bottom: 4px !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-advanced-layout
  .invoice-ov-pay-link-card--qb
  .invoice-ov-pay-link-card__help {
  font-size: 12px !important;
  line-height: 1.42 !important;
  color: #64748b !important;
  margin: 0 0 10px !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-advanced-layout
  .invoice-ov-pay-link-card--qb
  .invoice-ov-pay-link-card__actions {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-advanced-layout
  .invoice-ov-pay-link-card--qb
  .invoice-ov-pay-link-card__primary {
  width: 100% !important;
  justify-content: center !important;
}

/* Editing mode: same row layout inside address blocks */
#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-surface
  .invoice-ov-address-block--editing {
  padding: 0 !important;
  border: 1px solid rgba(226, 232, 240, 0.88) !important;
  border-radius: 10px !important;
  background: rgba(248, 250, 252, 0.5) !important;
  overflow: visible !important;
  box-sizing: border-box !important;
  min-width: 0 !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-surface
  .invoice-ov-address-block--editing
  > .invoice-ov-field {
  display: grid !important;
  grid-template-columns: minmax(88px, 34%) minmax(0, 1fr) !important;
  gap: 8px 10px !important;
  padding: 8px 12px !important;
  border-radius: 0 !important;
  border: none !important;
  border-bottom: 1px solid rgba(226, 232, 240, 0.92) !important;
  background: transparent !important;
  box-shadow: none !important;
  min-width: 0 !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-surface
  .invoice-ov-address-block--editing
  > .invoice-ov-billto-actions {
  padding: 10px 12px !important;
  margin: 0 !important;
  border-bottom: 1px solid rgba(226, 232, 240, 0.85) !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-surface
  .invoice-ov-address-block--editing
  > .invoice-ov-field-grid--csz {
  grid-column: 1 / -1 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1.4fr) minmax(0, 0.8fr) minmax(0, 0.9fr) !important;
  gap: 8px !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  padding: 10px 12px 12px !important;
  margin: 0 !important;
  border: none !important;
  border-top: 1px solid rgba(226, 232, 240, 0.82) !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-surface
  .invoice-ov-address-block--editing
  .invoice-ov-field-grid--csz
  > .invoice-ov-field {
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
  padding: 0 !important;
  margin: 0 !important;
  min-width: 0 !important;
  border: none !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  border-top: none !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-surface
  .invoice-ov-address-block--editing
  .invoice-ov-field-grid--csz
  > .invoice-ov-field
  .invoice-ov-label {
  padding: 0 !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  color: #94a3b8 !important;
}

/* =============================================================================
   Edit mode — flat rows, aligned sections, contained inputs
   ============================================================================= */

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced.editing {
  overflow: visible !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced.editing
  .contact-field-group {
  padding: 14px 18px 16px !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced.editing
  .contact-field-group-title {
  padding: 2px 0 12px !important;
  margin: 0 0 2px !important;
  min-height: 0 !important;
  align-items: center !important;
  gap: 7px !important;
  line-height: 1.2 !important;
  border-bottom: none !important;
  background: transparent !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced.editing
  .contact-field-group-title
  svg {
  flex-shrink: 0 !important;
  opacity: 0.72 !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced.editing
  .invoice-ov-bill-ship-grid {
  padding: 0 18px 16px !important;
  gap: 16px !important;
  align-items: start !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced.editing
  .invoice-ov-bill-ship-grid
  > .contact-field-group {
  padding: 0 !important;
  min-width: 0 !important;
}

@media (min-width: 720px) {
  #invoicesWrap[data-invoice-overview-mode="advanced"]
    .invoice-overview-record-field-layout--advanced.editing
    .invoice-ov-bill-ship-grid:has(> :nth-child(2)) {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 18px !important;
  }

  #invoicesWrap[data-invoice-overview-mode="advanced"]
    .invoice-overview-record-field-layout--advanced.editing
    .invoice-ov-bill-ship-grid:has(> :nth-child(2))
    > .contact-field-group
    + .contact-field-group {
    padding-left: 18px !important;
    padding-top: 0 !important;
    margin-top: 0 !important;
  }
}

/* Strip card chrome from address rows while editing — identity + invoice props keep view-style cards */
#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced.editing
  .invoice-ov-address-block--editing
  > .invoice-ov-field,
#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced.editing
  .invoice-ov-field-grid:not(.invoice-ov-field-grid--identity):not(.invoice-ov-field-grid--props)
  > .invoice-ov-field {
  display: grid !important;
  grid-template-columns: minmax(108px, 32%) minmax(0, 1fr) !important;
  gap: 8px 12px !important;
  align-items: center !important;
  padding: 10px 0 !important;
  margin: 0 !important;
  min-width: 0 !important;
  border: none !important;
  border-radius: 0 !important;
  border-bottom: 1px solid rgba(226, 232, 240, 0.92) !important;
  border-top: none !important;
  background: transparent !important;
  box-shadow: none !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced.editing
  .invoice-ov-field-grid:not(.invoice-ov-field-grid--identity):not(.invoice-ov-field-grid--props)
  > .invoice-ov-field:last-child,
#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced.editing
  .invoice-ov-address-block--editing
  > .invoice-ov-field:last-of-type:not(.invoice-ov-field-grid--csz *) {
  border-bottom: none !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced.editing
  .invoice-ov-address-block--editing
  .invoice-ov-field
  .invoice-ov-label,
#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced.editing
  .invoice-ov-field-grid:not(.invoice-ov-field-grid--identity):not(.invoice-ov-field-grid--props)
  > .invoice-ov-field
  .invoice-ov-label {
  padding: 0 !important;
  margin: 0 !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  color: #64748b !important;
  line-height: 1.3 !important;
  align-self: center !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced.editing
  .invoice-ov-address-block--editing
  .invoice-ov-field
  .invoice-ov-value,
#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced.editing
  .invoice-ov-field-grid:not(.invoice-ov-field-grid--identity):not(.invoice-ov-field-grid--props)
  > .invoice-ov-field
  .invoice-ov-value {
  padding: 0 !important;
  margin: 0 !important;
  min-width: 0 !important;
  width: 100% !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced.editing
  .invoice-ov-field--readonly
  .invoice-ov-value--readonly {
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #0f172a !important;
  padding-top: 1px !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-ov-edit-input,
#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced.editing
  .searchable-dropdown-input {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  padding: 8px 10px !important;
  font-size: 13px !important;
  border: 1px solid rgba(203, 213, 225, 0.95) !important;
  border-radius: 8px !important;
  background: #fff !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced.editing
  .searchable-dropdown {
  width: 100% !important;
  min-width: 0 !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-ov-edit-actions {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  flex-wrap: wrap !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-ov-edit-checkbox {
  width: 16px !important;
  height: 16px !important;
  margin: 0 !important;
  accent-color: var(--accent, #2563eb) !important;
  flex-shrink: 0 !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-ov-edit-checkbox-label {
  cursor: pointer !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: #64748b !important;
  line-height: 1.3 !important;
  user-select: none !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-ov-edit-hint,
#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced.editing
  .overview-project-hint {
  display: block !important;
  margin-top: 6px !important;
  font-size: 12px !important;
  color: #64748b !important;
  line-height: 1.35 !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-ov-edit-footer-hint {
  margin: 0 !important;
  padding: 12px 18px 14px !important;
  font-size: 12px !important;
  color: #64748b !important;
  line-height: 1.45 !important;
  border-top: 1px solid rgba(226, 232, 240, 0.88) !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced.editing
  .invoice-ov-section-divider {
  margin: 0 18px !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced.editing
  .invoice-ov-meta-group {
  padding-top: 12px !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced.editing
  .overview-project-row {
  align-items: start !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced.editing
  .overview-project-row
  .invoice-ov-label {
  align-self: start !important;
  padding-top: 9px !important;
}

body[data-theme="momentum"]
  #invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced.editing
  .invoice-ov-field {
  border-bottom-color: rgba(226, 232, 240, 0.92) !important;
  background: transparent !important;
  box-shadow: none !important;
}

body[data-theme="momentum"]
  #invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced.editing
  .contact-field-group-title {
  min-height: 0 !important;
  padding-top: 2px !important;
}

@media (max-width: 719px) {
  #invoicesWrap[data-invoice-overview-mode="advanced"]
    .invoice-overview-advanced-layout {
    max-width: 100% !important;
  }

  #invoicesWrap[data-invoice-overview-mode="advanced"]
    .invoice-overview-surface
    .invoice-ov-field-grid
    > .invoice-ov-field,
  #invoicesWrap[data-invoice-overview-mode="advanced"]
    .invoice-overview-record-field-layout--advanced.editing
    .invoice-ov-field {
    grid-template-columns: minmax(92px, 38%) minmax(0, 1fr) !important;
  }

  #invoicesWrap[data-invoice-overview-mode="advanced"]
    .invoice-overview-record-field-layout--advanced.editing
    .invoice-ov-bill-ship-grid:has(> :nth-child(2)) {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  #invoicesWrap[data-invoice-overview-mode="advanced"]
    .invoice-overview-record-field-layout--advanced.editing
    .invoice-ov-bill-ship-grid
    > .contact-field-group
    + .contact-field-group {
    padding-left: 0 !important;
    border-left: none !important;
    padding-top: 12px !important;
    border-top: 1px solid rgba(226, 232, 240, 0.88) !important;
  }

  #invoicesWrap[data-invoice-overview-mode="advanced"]
    .invoice-overview-surface
    .invoice-ov-address-block--editing
    > .invoice-ov-field-grid--csz {
    grid-template-columns: 1fr !important;
  }
}

/* Bill / Ship edit — stacked labels, aligned columns, consistent city/state/zip row */
#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced.editing
  .invoice-ov-bill-ship-grid {
  align-items: stretch !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced.editing
  .invoice-ov-bill-ship-grid
  > .contact-field-group {
  display: flex !important;
  flex-direction: column !important;
  align-self: stretch !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced.editing
  .invoice-ov-bill-ship-grid
  > .contact-field-group
  .contact-field-group-title {
  min-height: 32px !important;
  display: flex !important;
  align-items: center !important;
  padding: 0 0 10px !important;
  margin: 0 0 8px !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced.editing
  .invoice-ov-bill-ship-grid
  > .contact-field-group
  + .contact-field-group {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced.editing
  .invoice-ov-address-block--editing {
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced.editing
  .invoice-ov-address-block--editing
  > .invoice-ov-field {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 5px !important;
  grid-template-columns: unset !important;
  padding: 9px 12px !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced.editing
  .invoice-ov-address-block--editing
  > .invoice-ov-field
  .invoice-ov-label {
  align-self: flex-start !important;
  padding: 0 !important;
  margin: 0 !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  color: #94a3b8 !important;
  line-height: 1.25 !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced.editing
  .invoice-ov-address-block--editing
  > .invoice-ov-field-grid--csz {
  display: grid !important;
  grid-template-columns: minmax(0, 1.5fr) minmax(0, 0.75fr) minmax(0, 0.85fr) !important;
  gap: 10px !important;
  padding: 10px 12px 12px !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced.editing
  .invoice-ov-address-block--editing
  .invoice-ov-field-grid--csz
  > .invoice-ov-field
  .invoice-ov-label {
  font-size: 11px !important;
}

@media (max-width: 640px) {
  #invoicesWrap[data-invoice-overview-mode="advanced"]
    .invoice-overview-record-field-layout--advanced.editing
    .invoice-ov-address-block--editing
    > .invoice-ov-field-grid--csz {
    grid-template-columns: 1fr !important;
  }
}

/* Identity — 2-column cards on view + edit (compact, less scrolling) */
#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-surface
  .crm-contact-overview-fields
  .invoice-ov-field-grid--identity {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px 12px !important;
  padding: 0 !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-surface
  .crm-contact-overview-fields
  .invoice-ov-field-grid--identity
  > .invoice-ov-field {
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
  grid-template-columns: unset !important;
  align-items: stretch !important;
  padding: 11px 13px !important;
  border: 1px solid rgba(219, 228, 238, 0.98) !important;
  border-top: 3px solid rgba(17, 24, 39, 0.5) !important;
  border-bottom: 1px solid rgba(219, 228, 238, 0.98) !important;
  border-radius: 8px !important;
  background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%) !important;
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.05), 0 2px 6px rgba(15, 23, 42, 0.025) !important;
  min-height: 0 !important;
}

/* Deal + Project stay regular 1-col cells (same row); only explicit --wide/--span-2 span full width */
#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-surface
  .crm-contact-overview-fields
  .invoice-ov-field-grid--identity
  > .invoice-ov-field--wide,
#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-surface
  .crm-contact-overview-fields
  .invoice-ov-field-grid--identity
  > .invoice-ov-field--span-2,
#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-surface
  .crm-contact-overview-fields
  .invoice-ov-field-grid--identity
  > .invoice-ov-field--span2 {
  grid-column: 1 / -1 !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-surface
  .crm-contact-overview-fields
  .invoice-ov-field-grid--identity
  > .invoice-ov-field:not(.invoice-ov-field--wide):not(.invoice-ov-field--span-2):not(.invoice-ov-field--span2) {
  grid-column: auto !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-surface
  .crm-contact-overview-fields
  .invoice-ov-field-grid--identity
  > .invoice-ov-field
  .invoice-ov-label {
  padding: 0 0 0 12px !important;
  margin: 0 !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: #8ea0b7 !important;
  line-height: 1.25 !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-surface
  .crm-contact-overview-fields
  .invoice-ov-field-grid--identity
  > .invoice-ov-field
  .invoice-ov-value {
  padding: 0 0 0 12px !important;
  font-size: 14px !important;
  font-weight: 650 !important;
  line-height: 1.35 !important;
  text-align: left !important;
  color: #0f172a !important;
}

@media (max-width: 640px) {
  #invoicesWrap[data-invoice-overview-mode="advanced"]
    .invoice-overview-surface
    .crm-contact-overview-fields:not(.editing)
    .invoice-ov-field-grid--identity {
    grid-template-columns: 1fr !important;
  }
}

/* Invoice properties — 2-column cards on view (compact, less scrolling) */
#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-surface
  .crm-contact-overview-fields
  .invoice-ov-meta-group
  .invoice-ov-field-grid--props {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px 12px !important;
  padding: 0 !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-surface
  .crm-contact-overview-fields
  .invoice-ov-meta-group
  .invoice-ov-field-grid--props
  > .invoice-ov-field {
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
  grid-template-columns: unset !important;
  align-items: stretch !important;
  padding: 11px 13px !important;
  border: 1px solid rgba(219, 228, 238, 0.98) !important;
  border-top: 3px solid rgba(17, 24, 39, 0.5) !important;
  border-bottom: 1px solid rgba(219, 228, 238, 0.98) !important;
  border-radius: 8px !important;
  background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%) !important;
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.05), 0 2px 6px rgba(15, 23, 42, 0.025) !important;
  min-height: 0 !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-surface
  .crm-contact-overview-fields
  .invoice-ov-meta-group
  .invoice-ov-field-grid--props
  > .invoice-ov-field--wide {
  grid-column: 1 / -1 !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-surface
  .crm-contact-overview-fields
  .invoice-ov-meta-group
  .invoice-ov-field-grid--props
  > .invoice-ov-field
  .invoice-ov-label {
  padding: 0 0 0 12px !important;
  margin: 0 !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: #8ea0b7 !important;
  line-height: 1.25 !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-surface
  .crm-contact-overview-fields
  .invoice-ov-meta-group
  .invoice-ov-field-grid--props
  > .invoice-ov-field
  .invoice-ov-value {
  padding: 0 0 0 12px !important;
  font-size: 14px !important;
  font-weight: 650 !important;
  line-height: 1.35 !important;
  text-align: left !important;
  color: #0f172a !important;
}

@media (max-width: 640px) {
  #invoicesWrap[data-invoice-overview-mode="advanced"]
    .invoice-overview-surface
    .crm-contact-overview-fields:not(.editing)
    .invoice-ov-meta-group
    .invoice-ov-field-grid--props {
    grid-template-columns: 1fr !important;
  }
}

/* Bill / Ship edit — keep address blocks inside section cards (no width + margin overflow) */
#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced.editing
  .invoice-ov-bill-ship-grid {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced.editing
  .invoice-ov-bill-ship-grid
  > .contact-field-group {
  min-width: 0 !important;
  max-width: 100% !important;
  overflow: hidden !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced.editing
  .invoice-ov-bill-ship-grid
  > .contact-field-group
  > .invoice-ov-address-block--editing {
  margin-left: 0 !important;
  margin-right: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced.editing
  .invoice-ov-address-block--editing
  > .invoice-ov-field,
#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced.editing
  .invoice-ov-address-block--editing
  .invoice-ov-field-grid--csz {
  min-width: 0 !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced.editing
  .invoice-ov-address-block--editing
  .invoice-ov-value,
#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced.editing
  .invoice-ov-address-block--editing
  .searchable-dropdown,
#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced.editing
  .invoice-ov-address-block--editing
  .searchable-dropdown-input,
#invoicesWrap[data-invoice-overview-mode="advanced"]
  .invoice-overview-record-field-layout--advanced.editing
  .invoice-ov-address-block--editing
  .invoice-ov-edit-input {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}
