/* F22F - targeted component unification */

#b702-dark-wizard-root {
  --f22f-card: #173b30;
  --f22f-inner: #102f27;
  --f22f-border: #486e5c;
  --f22f-text: #f3f7f0;
  --f22f-muted: #c5d8ca;
}

/* Main component cards */
#b702-dark-wizard-root :is(
  .b702-coffin-card,
  .b702-documents-card,
  .b702-finance-card,
  .b702-summary-create-card,
  .b702-staffing-card,
  .b702-family-group,
  .b702-received-clothing
) {
  background: var(--f22f-card) !important;
  color: var(--f22f-text) !important;
  border: 1px solid var(--f22f-border) !important;
  border-radius: 14px !important;
  padding: 20px !important;
  box-sizing: border-box !important;
  min-width: 0 !important;
}

/* Nested cards and selectable rows */
#b702-dark-wizard-root :is(
  .b702-coffin-config,
  .b702-coffin-picker,
  .b702-family-service,
  .b702-service-row,
  .b702-document-row,
  .b702-finance-row,
  .b702-summary-value,
  .b702-summary-section,
  .b702-received-clothing-item
) {
  background: var(--f22f-inner) !important;
  color: var(--f22f-text) !important;
  border: 1px solid var(--f22f-border) !important;
  border-radius: 10px !important;
  box-sizing: border-box !important;
  min-width: 0 !important;
}

/* Component headings */
#b702-dark-wizard-root :is(
  .b702-coffin-card-head,
  .b702-coffin-config-head,
  .b702-documents-head,
  .b702-finance-head,
  .b702-finance-section-head,
  .b702-summary-section-head
) {
  color: var(--f22f-text) !important;
}

#b702-dark-wizard-root :is(
  .b702-coffin-card-head,
  .b702-documents-head,
  .b702-finance-head,
  .b702-summary-section-head
) strong {
  color: #fff !important;
  font-size: 18px !important;
  line-height: 1.4 !important;
}

/* Fix unreadably small text */
#b702-dark-wizard-root :is(
  .b702-coffin-card,
  .b702-documents-card,
  .b702-finance-card,
  .b702-summary-grid,
  .b702-summary-create-card,
  .b702-family-services,
  .b702-received-clothing
) :is(p, small, label) {
  font-size: 14px !important;
  line-height: 1.55 !important;
}

#b702-dark-wizard-root .b702-summary-create-card strong {
  font-size: 19px !important;
  line-height: 1.4 !important;
}

#b702-dark-wizard-root .b702-summary-create-card p {
  font-size: 14px !important;
  line-height: 1.6 !important;
}

#b702-dark-wizard-root .b702-finance-row strong,
#b702-dark-wizard-root .b702-document-row strong {
  font-size: 15px !important;
}

#b702-dark-wizard-root .b702-finance-row small {
  font-size: 13px !important;
}

/* Input readability */
#b702-dark-wizard-root :is(
  .b702-coffin-card,
  .b702-finance-card,
  .b702-received-clothing,
  .b702-documents-card
) :is(input:not([type="checkbox"]):not([type="radio"]), select, textarea) {
  background: #102b24 !important;
  color: #f5f8f2 !important;
  border: 1px solid #789784 !important;
  border-radius: 8px !important;
  min-height: 42px !important;
  font-size: 15px !important;
  box-sizing: border-box !important;
  max-width: 100% !important;
}

/* Preserve responsive layouts */
#b702-dark-wizard-root :is(
  .b702-coffin-config-grid,
  .b702-finance-payment-grid,
  .b702-summary-grid,
  .b702-family-services
) > * {
  min-width: 0 !important;
}

@media (max-width: 760px) {
  #b702-dark-wizard-root :is(
    .b702-coffin-card,
    .b702-documents-card,
    .b702-finance-card,
    .b702-summary-create-card,
    .b702-received-clothing
  ) {
    padding: 15px !important;
  }

  #b702-dark-wizard-root .b702-coffin-config-grid,
  #b702-dark-wizard-root .b702-finance-payment-grid,
  #b702-dark-wizard-root .b702-summary-grid,
  #b702-dark-wizard-root .b702-family-services {
    grid-template-columns: minmax(0,1fr) !important;
  }
}
