/* SmartCart shared UI design tokens and controls */
:root{
  --smartcart-black:#262626;
  --smartcart-round-size:35px;
  --smartcart-field-label-size:.88rem;
  --smartcart-field-label-weight:600;
  --smartcart-field-label-gap:6px;

  --smartcart-control-font-size:16px;
  --smartcart-control-font-weight:400;
  --smartcart-control-line-height:1.25;
  --smartcart-control-border:#aaa;
  --smartcart-control-radius:7px;
  --smartcart-control-padding-y:10px;
  --smartcart-control-padding-x:10px;
}

/*
  Alle runden Bedienelemente tragen die Klasse .smartcart-round.
  Das blaue Informations-i ist ausdrücklich kein Button und bleibt ausgenommen.
*/
.smartcart-round{
  width:var(--smartcart-round-size)!important;
  height:var(--smartcart-round-size)!important;
  min-width:var(--smartcart-round-size);
  min-height:var(--smartcart-round-size);
  box-sizing:border-box;
  flex:0 0 var(--smartcart-round-size);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  line-height:1!important;
}

/* Suchfeld-X optisch leicht nach unten korrigieren */
.article-search-clear.smartcart-round,
.store-search-clear.smartcart-round{
  transform:translateY(calc(-50% + 1px))!important;
}

/*
  Feldüberschriften: Referenz ist "Geschäft bearbeiten".
  Die Selektoren decken die aktuellen Erfassungs-/Bearbeitungsansichten ab.
*/
.field > label:not(.logo-option),
.field > .field-label,
.grid > label,
.photo-section > label,
.fields > label,
.tax-field > span{
  display:block;
  font-size:var(--smartcart-field-label-size)!important;
  font-weight:var(--smartcart-field-label-weight)!important;
  margin-bottom:var(--smartcart-field-label-gap)!important;
}

/* Gemeinsames App-Schwarz für programmseitig schwarze Elemente */
.smartcart-black{
  color:var(--smartcart-black)!important;
}


/*
  Einheitlicher Stil für Dateneingabe und Auswahllisten.
  Ausgenommen sind Checkboxen, Farbfelder, Datei-Uploads und Schaltflächen.
*/
input:not([type="checkbox"]):not([type="radio"]):not([type="color"]):not([type="file"]):not([type="range"]):not([type="button"]):not([type="submit"]):not([type="reset"]):not([type="hidden"]),
select,
textarea{
  box-sizing:border-box;
  font-family:inherit!important;
  font-size:var(--smartcart-control-font-size)!important;
  font-weight:var(--smartcart-control-font-weight)!important;
  line-height:var(--smartcart-control-line-height)!important;
  color:var(--smartcart-black)!important;
  border:1px solid var(--smartcart-control-border)!important;
  border-radius:var(--smartcart-control-radius)!important;
  background:#fff!important;
  padding:var(--smartcart-control-padding-y) var(--smartcart-control-padding-x)!important;
}

/* Auch die Einträge aufgeklappter Listen nicht fett darstellen. */
select option{
  font-family:inherit;
  font-size:var(--smartcart-control-font-size);
  font-weight:var(--smartcart-control-font-weight);
}

/* Suchfelder brauchen seitlich Platz für Lupe und X.
   Die ID-Selektoren sind absichtlich spezifisch, damit die globale
   input:not(...)-Regel den linken Innenabstand nicht wieder überschreibt. */
#articleSearch,
#storeSearch{
  -webkit-appearance:none;
  appearance:none;
  padding-top:var(--smartcart-control-padding-y)!important;
  padding-right:42px!important;
  padding-bottom:var(--smartcart-control-padding-y)!important;
  padding-left:40px!important;
  text-indent:0!important;
}

/* Steuersatzfelder besitzen den Rahmen am gemeinsamen Außencontainer. */
.input-wrap{
  border:1px solid var(--smartcart-control-border)!important;
  border-radius:var(--smartcart-control-radius)!important;
}
.input-wrap input{
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
}

/* Schreibgeschützte URL bleibt als solche leicht abgesetzt. */
.quick-link input[readonly]{
  background:#f8f8f8!important;
}
