/* MyStationHub shared input appearance — public, customer and Master Admin.
   Matches the approved HeroUI-inspired preview with a 50%-softer cyan glow.
   Visual only: preserves dimensions, field types, validation and form handlers. */
:root{
 --msh-input-line:#d5e0e8;
 --msh-input-hover-line:#b4cbd5;
 --msh-input-focus-line:#08a9de;
 --msh-input-text:#213846;
 --msh-input-shadow:0 2px 5px rgba(16,46,68,.063);
 --msh-input-focus-shadow:0 0 0 2px rgba(12,175,241,.085),0 2px 5px rgba(16,46,68,.03);
}

/* Only editable text-like fields. Do not repaint checkboxes, radio/switches,
   sliders, file uploads, buttons, hidden inputs, read-only or disabled fields.
   Keep explicitly flagged invalid/error fields governed by their error styles. */
html body :is(
 input:not([type]),
 input:is([type="text"],[type="email"],[type="password"],[type="search"],
  [type="tel"],[type="url"],[type="number"],[type="date"],
  [type="datetime-local"],[type="time"],[type="month"],[type="week"]),
 select,textarea
):not(:disabled):not([readonly]):not([aria-invalid="true"]):not(.invalid):not(.error){
 background-color:#fff!important;
 color:var(--msh-input-text)!important;
 border:1px solid var(--msh-input-line)!important;
 border-radius:11px!important;
 box-shadow:var(--msh-input-shadow)!important;
 transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease!important;
}

html body :is(
 input:not([type]),
 input:is([type="text"],[type="email"],[type="password"],[type="search"],
  [type="tel"],[type="url"],[type="number"],[type="date"],
  [type="datetime-local"],[type="time"],[type="month"],[type="week"]),
 select,textarea
):not(:disabled):not([readonly]):not([aria-invalid="true"]):not(.invalid):not(.error):hover:not(:focus){
 border-color:var(--msh-input-hover-line)!important;
}

html body :is(
 input:not([type]),
 input:is([type="text"],[type="email"],[type="password"],[type="search"],
  [type="tel"],[type="url"],[type="number"],[type="date"],
  [type="datetime-local"],[type="time"],[type="month"],[type="week"]),
 select,textarea
):not(:disabled):not([readonly]):not([aria-invalid="true"]):not(.invalid):not(.error):focus{
 background-color:#fff!important;
 border-color:var(--msh-input-focus-line)!important;
 box-shadow:var(--msh-input-focus-shadow)!important;
 outline:none!important; /* the cyan border and outer ring remain visible */
}

/* Show the focus color on the existing email/lock icon without changing SVGs. */
html body .msh-login-icon-field:focus-within .msh-login-field-icon{
 color:#088bb9!important;
}

/* Master Admin's joined email + domain control is a single field. Put the
   glow around its wrapper and never around its nested input as a second box. */
html body .admin-login-panel .field .admin-login-email{
 border:1px solid var(--msh-input-line)!important;
 border-radius:11px!important;
 background-color:#fff!important;
 box-shadow:var(--msh-input-shadow)!important;
 transition:border-color .18s ease,box-shadow .18s ease!important;
}
html body .admin-login-panel .field .admin-login-email:hover:not(:focus-within){
 border-color:var(--msh-input-hover-line)!important;
}
html body .admin-login-panel .field .admin-login-email:focus-within{
 border-color:var(--msh-input-focus-line)!important;
 box-shadow:var(--msh-input-focus-shadow)!important;
}
html body .admin-login-panel .field .admin-login-email input,
html body .admin-login-panel .field .admin-login-email input:hover,
html body .admin-login-panel .field .admin-login-email input:focus{
 border:0!important;
 border-radius:0!important;
 outline:0!important;
 box-shadow:none!important;
 background:transparent!important;
}

/* Keep disabled / invalid states distinctive; mobile fields retain their
   existing >=16px text size to avoid Safari's automatic focus zoom. */
@media(prefers-reduced-motion:reduce){
 html body :is(input,select,textarea),html body .admin-login-panel .field .admin-login-email{
  transition:none!important;
 }
}
