/* Supporting copy uses a shared, readable tone across all three roles.
   Keep headings, action labels, amounts, errors and status colors independent. */
:root {
  --ed-helper: #66717f;
}

html.equipment-dark-mode {
  --ed-helper: #a7b1bc;
}

:is(.role-app, .app-shell, .auth-shell, .layer-shell) :is(
  .user-auth-head > div > span,
  .customer-login-note,
  .field-auth-consent,
  .user-auth-form .field-auth-consent,
  .driver-signup-approval-note,
  .entry-gateway-head p,
  .entry-role-card small,
  .admin-auth-intro p:last-child,
  .user-work-home-head p,
  .user-work-card small,
  .field-banner-ad-slot small,
  .quick-entry-head p,
  .quick-entry-card small,
  .quick-order-card small,
  .quick-payment-method small,
  .equipment-spec-options button small,
  .customer-rate-guide-cta small,
  .customer-request-modal .quick-order-head small,
  .customer-popup-next span,
  .customer-popup-next small,
  .layer-shell .order-admin-next span,
  .layer-shell .order-admin-next small,
  .settings-switch-copy small,
  .dispatch-settings-menu-row small,
  .settings-payment-method-panel > div > small,
  .sound-settings-head p:not(.eyebrow),
  .sound-settings-field small,
  .sound-settings-scope-note,
  .user-settings-group-head small,
  .user-settings-control-row span,
  .user-settings-list-row small,
  .user-settings-block-box p,
  .rate-guide-launch small,
  .equipment-rate-note,
  .equipment-rate-table-wrap > p,
  .equipment-rate-head > span,
  .dispatch-list-note,
  .dispatch-copy-body p:not(.eyebrow),
  .worker-profile-head p,
  .worker-profile-actions small,
  .worker-ops-board-head p,
  .worker-ops-applicants .muted,
  .worker-applicant-list > .muted,
  .worker-call-progress-hint,
  .driver-popup-empty,
  .driver-popup-status p,
  .driver-account-shortcuts small,
  .field-note,
  .quote-helper span,
  .quote-helper small,
  .app-settings-head > div > span,
  .photo-placeholder small,
  .customer-popup-tools .photo-placeholder small,
  .customer-wizard-choice-list button small,
  .customer-wizard-arrival-grid button small,
  .customer-wizard-rate-step > div small,
  .customer-wizard-radius p,
  .customer-wizard-next-hint,
  .customer-request-modal .customer-wizard-current .request-field > small,
  .customer-request-modal .quick-radius-sheet p,
  .quick-dispatch-scope-option small,
  .urgent-dispatch-field small,
  .equipment-option-trigger small,
  .assignee-visibility-options small,
  .assignee-visibility-note,
  .helper-text,
  .page-subtitle
) {
  color: var(--ed-helper);
  font-weight: 400;
}

.driver-popup-actions small,
.field-driver-proof-actions .field-action small,
.order-command-grid small {
  font-weight: 400;
}

/* Placeholder text must not inherit the bold weight of its enclosing label. */
input::placeholder,
textarea::placeholder,
.dispatch-board-search input::placeholder,
.dispatch-driver-search input::placeholder,
.user-settings-block-add input::placeholder,
.admin-app #dispatch .dispatch-board-search input::placeholder,
html.equipment-dark-mode :is(.role-app, .layer-shell) :is(input, textarea)::placeholder {
  color: var(--ed-helper);
  font-weight: 400;
  opacity: 1;
}

/* Field names remain stronger than instructions, without competing with titles. */
.user-login-shell .user-auth-form label:not(.field-auth-consent),
.auth-form label {
  font-weight: 600;
}

/* Keep the full introduction and admin entry readable at enlarged text sizes. */
.user-auth-head {
  flex-wrap: wrap;
}

.user-auth-head > div {
  flex: 1 1 230px;
  min-width: 0;
}

.user-auth-head > .text-button {
  margin-left: auto;
}

.user-auth-head h2 {
  white-space: normal;
}
