/*
 * BEGUIGO canonical form-control visual system.
 *
 * Visual treatment only: widths/grid/layout remain owned by each feature surface.
 * Plugins should not redefine shared input/select/textarea colours, borders, radius
 * or focus treatment when the BEGUIGO theme is active.
 */
:root{
  --beguigo-control-bg:#0c1728;
  --beguigo-control-bg-hover:#101d31;
  --beguigo-control-color:#f6f8fc;
  --beguigo-control-placeholder:#8091ab;
  --beguigo-control-border:#30445f;
  --beguigo-control-border-hover:#45617f;
  --beguigo-control-focus:#2daec7;
  --beguigo-control-radius:13px;
  --beguigo-control-shadow:0 0 0 3px rgba(45,174,199,.14);
}

/* Explicit canonical class for new markup. */
.beguigo-control{
  background:var(--beguigo-control-bg);
  color:var(--beguigo-control-color);
  border:1px solid var(--beguigo-control-border);
  border-radius:var(--beguigo-control-radius);
  box-shadow:none;
  transition:border-color .18s ease,background .18s ease,box-shadow .18s ease;
}
.beguigo-control:hover:not(:disabled){background:var(--beguigo-control-bg-hover);border-color:var(--beguigo-control-border-hover)}
.beguigo-control:focus,.beguigo-control:focus-visible{border-color:var(--beguigo-control-focus);box-shadow:var(--beguigo-control-shadow);outline:none}
.beguigo-control::placeholder{color:var(--beguigo-control-placeholder);opacity:1}

/* Compatibility baseline for ordinary BEGUIGO frontend form controls.
 * Does not alter width, height, padding or grid placement. */
body.beguigo-theme :where(input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="reset"]):not([type="hidden"]),select,textarea){
  background-color:var(--beguigo-control-bg);
  color:var(--beguigo-control-color);
  border-color:var(--beguigo-control-border);
  border-radius:var(--beguigo-control-radius);
}
body.beguigo-theme :where(input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="reset"]):not([type="hidden"]),select,textarea):focus{
  border-color:var(--beguigo-control-focus);
  box-shadow:var(--beguigo-control-shadow);
  outline:none;
}
body.beguigo-theme :where(input,textarea)::placeholder{color:var(--beguigo-control-placeholder);opacity:1}
