/* Native text controls share a baseline, including implicit type="text" and
   semantic email/tel/number fields omitted by the original theme. Low specificity
   lets page-specific layouts keep their widths, colours and spacing. */
input:where(:not([type]),[type=""],[type="text"],[type="email"],[type="tel"],[type="url"],[type="password"],[type="search"],[type="number"],[type="date"],[type="datetime-local"],[type="month"],[type="week"],[type="time"]):not(:where([hidden],.select2-search__field,[role="combobox"],[class*="ymaps-"],[class*="ymaps3"],[class*="leaflet"])) {
    display: block;
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    height: 48px;
    min-height: 44px;
    margin: 0;
    padding: 0 16px;
    border: 1px solid var(--color-secondary, #c9d9cd);
    border-radius: 4px;
    background: #fff;
    color: #111;
    font-family: inherit;
    font-size: 16px;
    line-height: normal;
}

/* Select2 owns its search field and hidden native select. File pickers, toggles,
   colour controls, range sliders and hidden inputs are deliberately not matched. */
select:where(:not([multiple])):not(:where([hidden],.select2-hidden-accessible)) {
    box-sizing: border-box;
    max-width: 100%;
    min-width: 0;
    min-height: 44px;
    font-family: inherit;
    font-size: 16px;
}

textarea {
    max-width: 100%;
    min-width: 0;
    font-family: inherit;
    font-size: 16px;
}

.form-group { min-width: 0; }

/* Disabled text fields remain legible without looking editable. */
input:where(:not([type]),[type=""],[type="text"],[type="email"],[type="tel"],[type="url"],[type="password"],[type="search"],[type="number"],[type="date"],[type="datetime-local"],[type="month"],[type="week"],[type="time"]):disabled:not(:where([hidden],.select2-search__field,[role="combobox"],[class*="ymaps-"],[class*="ymaps3"],[class*="leaflet"])) {
    background: #f3f5f2;
    color: #65746b;
}
