/* Approved field geometry on existing public/auth/customer/admin controls.
   Backgrounds, text palettes, widths, direction and icon padding stay local. */
html body :is(input,select,textarea):is(.field,.ep-input,.ep-select,.ep-textarea,.au-input,.ea-input,.ea-select,.ea-textarea):not([type="hidden"]):not([type="checkbox"]):not([type="radio"]) {
  box-sizing: border-box; min-height: 48px; border-radius: 10px;
  padding-top: 12px; padding-bottom: 12px; font-size: 14px;
  transition: border-color 150ms ease, box-shadow 150ms ease;
}
html body :is(input,select,textarea):is(.field,.ep-input,.ep-select,.ep-textarea,.au-input,.ea-input,.ea-select,.ea-textarea):focus {
  outline: 2px solid var(--ep-accent, #10b981); outline-offset: 2px; box-shadow: none;
}
html body :is(input,select,textarea)[aria-invalid="true"] { border-color: var(--ep-bad, #ef4444); }
html body :is(input,select,textarea)[aria-invalid="true"]:focus { outline-color: var(--ep-bad, #ef4444); }
html body :is(.ep-label,.ea-label,.au-label) { font-size: 13px; }
html body :is(.ep-hint,.ea-hint) { font-size: 12px; color: var(--ep-ink-3); }
html body :is(.field,.ep-input,.ep-textarea,.ea-input,.ea-textarea)::placeholder { color: var(--ep-ink-3, #9ca3af); opacity: 1; }
html body .au-input::placeholder { color: var(--au-ink-3); opacity: 1; }
html body .au-eye { min-width: 44px; min-height: 44px; border-radius: 8px; }
html body .au-eye:focus-visible { outline: 2px solid var(--ep-accent, #10b981); outline-offset: 1px; }
html body [data-ep-field] { min-width: 0; }
html body [data-ep-field] [data-field-message] { margin: 8px 0 0; font-size: 12px; line-height: 1.8; overflow-wrap: anywhere; }
html body [data-ep-field][data-field-state="error"] [data-field-message] { color: var(--ep-bad, #ef4444); }
html body [data-ep-field][data-field-state="success"] [data-field-message] { color: color-mix(in srgb, var(--ep-ok) 85%, var(--ep-ink)); }
html body [data-field-message][hidden], html body [data-form-feedback][hidden] { display: none; }
html body .ep-form-feedback { padding: 14px 16px; border-radius: 10px; border: 1px solid var(--ep-border-2); background: var(--ep-surface); font-size: 13px; line-height: 1.9; margin-bottom: 16px; }
html body .ep-form-feedback[data-tone="success"] { border-color: var(--ep-ok); color: color-mix(in srgb, var(--ep-ok) 85%, var(--ep-ink)); }
html body .ep-form-feedback[data-tone="error"] { border-color: var(--ep-bad); color: var(--ep-bad); }
@media (max-width: 640px) {
  html body :is(input,select,textarea):is(.field,.ep-input,.ep-select,.ep-textarea,.au-input,.ea-input,.ea-select,.ea-textarea):not([type="hidden"]):not([type="checkbox"]):not([type="radio"]) { font-size: 16px; }
}
@media (prefers-reduced-motion: reduce) {
  html body :is(input,select,textarea):is(.field,.ep-input,.ep-select,.ep-textarea,.au-input,.ea-input,.ea-select,.ea-textarea) { transition: none; }
}
