/* wwwroot/css/components/forms.css (nouveau, importer dans global.css) */
.app-input, .app-select, .app-date, input[type="date"], input[type="datetime-local"], select{
  inline-size:100%; min-block-size:var(--control-height-md);
  padding-block:var(--space-xs); padding-inline:var(--space-sm);
  font-size:var(--text-sm); color:var(--color-text-primary);
  background:var(--color-bg-surface); border:1px solid var(--color-border-strong);
  border-radius:var(--radius-md); }
select, .app-select{ appearance:none;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='currentColor' stroke-width='2'><path d='M2 4l4 4 4-4'/></svg>");
  background-repeat:no-repeat; background-position:right var(--space-sm) center; padding-inline-end:var(--space-xl); }
/* FND-12 : caret sur le côté inline-end, logique comme AppSelect (::after inset-inline-end).
   Un <select> est un élément remplacé et ne peut pas porter ::after — le caret reste donc en
   background-image, mais on remplace l'override PHYSIQUE par attribut dir par le sélecteur
   LOGIQUE :dir(rtl) (sens d'écriture hérité), supprimant la dépendance à l'attribut dir. */
select:dir(rtl), .app-select:dir(rtl){ background-position:left var(--space-sm) center; }
input[type="file"]{ padding:var(--space-2xs); }
input[type="file"]::file-selector-button{ margin-inline-end:var(--space-sm);
  padding-block:var(--space-2xs); padding-inline:var(--space-sm); border:0; border-radius:var(--radius-sm);
  background:var(--color-primary); color:var(--color-text-on-primary); font-weight:var(--font-weight-semibold); cursor:pointer; }

/* Standard focus ring — same tokens AppInput/burger use, so token controls share one focus treatment. */
.app-input:focus-visible, .app-select:focus-visible, .app-date:focus-visible,
input[type="date"]:focus-visible, input[type="datetime-local"]:focus-visible, select:focus-visible{
  outline:var(--focus-ring-width) solid var(--color-focus-ring);
  outline-offset:var(--focus-ring-offset); border-color:var(--color-focus-ring); }
