/*
 * Stiluri pentru campuri (input, textarea, select, select2) in toate paletele framework6.1.
 * Fisier al temei framework6.1 (in afara sursei soft-ui), incarcat din functions.php dupa paleta.
 * Selectorii sunt prefixati cu body ca sa bata .form-control:focus din tema de baza (specificitate).
 * Accentul vine din --bs-primary / --bs-primary-bg-subtle emise de tema pe :root (paleta aleasa in aspect).
 */

/* ---------- Inputuri generice (si cele fara clasa form-control) ---------- */
body :is(input:not([type=checkbox], [type=radio], [type=range], [type=color], [type=file], [type=hidden], [type=submit], [type=button], [type=reset], [type=image])),
body :is(textarea),
body :is(select) {
    border-color: #d6dbe4;
    transition: border-color .15s ease, box-shadow .15s ease;
}

body :is(input:not([type=checkbox], [type=radio], [type=range], [type=color], [type=file], [type=hidden], [type=submit], [type=button], [type=reset], [type=image])):focus,
body :is(textarea):focus,
body :is(select):focus {
    outline: 0;
    border-color: var(--bs-primary);
    box-shadow: 0 0 0 4px color-mix(in srgb, var(--bs-primary) 14%, transparent);
}

/* inputul de scriere din select2 multiple, MagicSuggest (.ms-ctn) si tags (.bootstrap-tagsinput) nu are chenar propriu: chenarul e al containerului */
body .select2-container--default .select2-selection--multiple .select2-search__field,
body .select2-container--default .select2-selection--multiple .select2-search__field:focus,
body .ms-ctn input,
body .ms-ctn input:focus,
body .bootstrap-tagsinput input,
body .bootstrap-tagsinput input:focus {
    border: 0 !important;
    box-shadow: none !important;
    outline: 0;
    background: transparent;
}

/* dark: aceleasi reguli, cu suprafete inchise */
body.dark-version :is(input:not([type=checkbox], [type=radio], [type=range], [type=color], [type=file], [type=hidden], [type=submit], [type=button], [type=reset], [type=image])),
body.dark-version :is(textarea),
body.dark-version :is(select) {
    border-color: #3a3d62;
}

body.dark-version :is(input:not([type=checkbox], [type=radio], [type=range], [type=color], [type=file], [type=hidden], [type=submit], [type=button], [type=reset], [type=image])):focus,
body.dark-version :is(textarea):focus,
body.dark-version :is(select):focus {
    border-color: var(--bs-primary);
    box-shadow: 0 0 0 4px color-mix(in srgb, var(--bs-primary) 18%, transparent);
}

/* ---------- select2 ---------- */
.select2-container--default .select2-selection--single {
    height: 40px !important;
    border: 1px solid #d6dbe4 !important;
    border-radius: .5rem !important;
    background-color: #fff;
    display: flex;
    align-items: center;
    transition: border-color .15s ease, box-shadow .15s ease;
}

.select2-container--default.select2-container--focus .select2-selection--single,
.select2-container--default.select2-container--open .select2-selection--single {
    border-color: var(--bs-primary) !important;
    box-shadow: 0 0 0 4px color-mix(in srgb, var(--bs-primary) 14%, transparent);
}

/* centrare pe verticala: temele de baza setau padding-top/margin-top si display block pe __rendered */
.select2-container--default .select2-selection--single,
.select2-container--default .select2-selection--single .select2-selection__arrow {
    display: flex !important;
    align-items: center;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
    display: flex !important;
    align-items: center;
    flex: 1 1 auto;
    min-width: 0;
    height: 100%;
    margin: 0 !important;
    padding: 0 2rem 0 12px !important;
    line-height: normal;
    color: #344767;
}

.select2-container--default .select2-selection--single .select2-selection__rendered > .select2-option-row {
    height: auto;
    line-height: normal;
}

.select2-container--default .select2-selection--single .select2-selection__placeholder {
    color: #98a2b3;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 40px;
    right: 8px;
}

/* × (clear) din select single: centrat pe inaltime, nu pe linia de text de 28px */
.select2-container--default .select2-selection--single .select2-selection__clear {
    top: 50% !important;
    height: auto !important;
    line-height: 1 !important;
    transform: translateY(-50%);
    display: inline-flex !important;
    align-items: center;
}

.select2-container--default .select2-selection--single .select2-selection__arrow b {
    border-color: #98a2b3 transparent transparent transparent;
}

.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
    border-color: transparent transparent #98a2b3 transparent;
}

.select2-dropdown {
    border: 1px solid rgba(0, 0, 0, .06) !important;
    border-radius: .75rem !important;
    box-shadow: 0 12px 28px -6px rgba(0, 0, 0, .18);
    padding: 6px;
    margin-top: 4px;
    background: #fff;
    overflow: hidden;
}

.select2-search--dropdown {
    padding: 0 0 6px 0;
}

.select2-search--dropdown .select2-search__field {
    border: 1px solid #d6dbe4 !important;
    border-radius: .5rem !important;
    padding: 6px 10px;
    outline: 0;
}

.select2-search--dropdown .select2-search__field:focus {
    border-color: var(--bs-primary) !important;
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--bs-primary) 14%, transparent);
}

.select2-results__option {
    padding: 7px 10px !important;
    border-radius: .5rem;
    color: #344767;
    font-size: 14px;
}

.select2-container--default .select2-results__option--highlighted[aria-selected] {
    background-color: var(--bs-primary-bg-subtle) !important;
    color: #344767 !important;
}

/* optiunea selectata: textul in culoarea principala, si cand e si evidentiata (deschis dropdown) */
.select2-container--default .select2-results__option[aria-selected=true],
.select2-container--default .select2-results__option--highlighted[aria-selected=true] {
    color: var(--bs-primary) !important;
    font-weight: 600;
}

/* !important: select2.min.css seta fundalul optiunilor selectate (#ddd) si se incarca dupa tema */
.select2-container--default .select2-results__option[aria-selected=true] {
    background-color: color-mix(in srgb, var(--bs-primary) 16%, transparent) !important;
    color: var(--bs-primary);
    font-weight: 500;
}

.select2-container--default .select2-results__option[aria-selected=true] {
    position: relative;
    padding-right: 30px !important;
}

.select2-container--default .select2-results__option[aria-selected=true]::after {
    content: "";
    position: absolute;
    right: 12px;
    top: 50%;
    width: 6px;
    height: 10px;
    border: solid var(--bs-primary);
    border-width: 0 2px 2px 0;
    transform: translateY(-60%) rotate(45deg);
}

.select2-container--default .select2-selection--multiple {
    min-height: 40px !important;
    border: 1px solid #d6dbe4 !important;
    border-radius: .5rem !important;
}

/* MagicSuggest (Select3): tema de baza (_modules.scss) seta chip-urile cu !important (gri/albastru fix); aici accentul */
/* MagicSuggest: focus (si deschis) in culoarea principala, ca la celelalte campuri */
body .ms-ctn.ms-ctn-focus,
body .ms-ctn:focus-within {
    border-color: var(--bs-primary) !important;
    box-shadow: 0 0 0 4px color-mix(in srgb, var(--bs-primary) 14%, transparent) !important;
    outline: 0;
}

body .ms-ctn .ms-sel-item,
body .field_filter_fg .ms-sel-item {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px;
    background-color: color-mix(in srgb, var(--bs-primary) 12%, #fff) !important;
    border: 1px solid color-mix(in srgb, var(--bs-primary) 28%, transparent) !important;
    border-radius: 999px !important;
    color: var(--bs-primary) !important;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.2;
    margin: 3px 4px 3px 0 !important;
    padding: 3px 8px 3px 10px !important;
}

body .ms-ctn .ms-sel-item .ms-close-btn,
body .field_filter_fg .ms-sel-item .ms-close-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    margin: 0;
    border-radius: 50%;
    background-image: none !important;
    color: var(--bs-primary);
    font-size: 14px;
    line-height: 1;
    opacity: .6;
    cursor: pointer;
}

body .ms-ctn .ms-sel-item .ms-close-btn,
body .field_filter_fg .ms-sel-item .ms-close-btn {
    position: relative;
    font-size: 0;
    color: transparent;
}

body .ms-ctn .ms-sel-item .ms-close-btn::before,
body .ms-ctn .ms-sel-item .ms-close-btn::after,
body .field_filter_fg .ms-sel-item .ms-close-btn::before,
body .field_filter_fg .ms-sel-item .ms-close-btn::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 8px;
    height: 1.5px;
    border-radius: 1px;
    background: var(--bs-primary);
    transform: translate(-50%, -50%) rotate(45deg);
}

body .ms-ctn .ms-sel-item .ms-close-btn::after,
body .field_filter_fg .ms-sel-item .ms-close-btn::after {
    transform: translate(-50%, -50%) rotate(-45deg);
    display: block !important;
}

body .ms-ctn .ms-sel-item .ms-close-btn:hover {
    opacity: 1;
    background: color-mix(in srgb, var(--bs-primary) 18%, transparent);
}

body.dark-version .ms-ctn .ms-sel-item {
    background-color: color-mix(in srgb, var(--bs-primary) 22%, transparent) !important;
    border-color: color-mix(in srgb, var(--bs-primary) 40%, transparent) !important;
    color: #e5e7eb !important;
}

/* tag-urile (bootstrap-tagsinput): tema de baza (.field_tags_fg .badge) le seta gri cu !important; aici accentul */
body .bootstrap-tagsinput .tag.badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px;
    background-color: color-mix(in srgb, var(--bs-primary) 12%, #fff) !important;
    border: 1px solid color-mix(in srgb, var(--bs-primary) 28%, transparent) !important;
    border-radius: 999px !important;
    color: var(--bs-primary) !important;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.2;
    margin: 3px 4px 3px 0 !important;
    padding: 3px 8px 3px 10px !important;
}

body .bootstrap-tagsinput .tag.badge [data-role="remove"] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    color: var(--bs-primary);
    opacity: .6;
    cursor: pointer;
}

body .bootstrap-tagsinput .tag.badge [data-role="remove"]:hover {
    opacity: 1;
    background: color-mix(in srgb, var(--bs-primary) 18%, transparent);
}

/* × al tag-ului desenat din doua linii, centrat */
body .bootstrap-tagsinput .tag.badge [data-role="remove"] {
    position: relative;
    font-size: 0 !important;
    color: transparent !important;
}

body .bootstrap-tagsinput .tag.badge [data-role="remove"]::before,
body .bootstrap-tagsinput .tag.badge [data-role="remove"]::after {
    content: "" !important;
    position: absolute;
    left: 50%;
    top: 50%;
    width: 8px;
    height: 1.5px;
    border-radius: 1px;
    background: var(--bs-primary);
    transform: translate(-50%, -50%) rotate(45deg);
}

body .bootstrap-tagsinput .tag.badge [data-role="remove"]::after {
    transform: translate(-50%, -50%) rotate(-45deg);
    display: block !important;
}

body.dark-version .bootstrap-tagsinput .tag.badge {
    background-color: color-mix(in srgb, var(--bs-primary) 22%, transparent) !important;
    border-color: color-mix(in srgb, var(--bs-primary) 40%, transparent) !important;
    color: #e5e7eb !important;
}

/* inputul de cautare/scriere din multiple: centrat pe inaltime (select2 avea margin-top 5px, MagicSuggest/tags il lasau sus) */
body .select2-container--default .select2-selection--multiple .select2-search--inline,
body .select2-container--default .select2-selection--multiple .select2-search__field {
    margin: 0 !important;
}

body .select2-container--default .select2-selection--multiple .select2-search__field {
    height: auto;
    line-height: 1.2;
}

body .ms-ctn {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

body .ms-ctn .ms-sel-ctn {
    display: flex !important;
    flex-wrap: wrap;
    align-items: center;
    align-content: center;
    min-height: 38px;
}

body .ms-ctn input {
    margin: 0 !important;
}

/* filtrul MagicSuggest: inputul e frate cu .ms-sel-ctn, nu copil; containerul devine flex ca sa-l centreze */
body .field_filter_fg .ms-ctn {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    align-content: center;
    min-height: 38px;
}

body .field_filter_fg .ms-ctn .ms-sel-ctn {
    flex: 1 1 auto;
    min-width: 0;
}

body .bootstrap-tagsinput input {
    margin: 0 !important;
}

/* zona valorilor (multiple): centrata pe inaltime; tema de baza punea padding-top: 4px !important */
.select2-container--default .select2-selection--multiple .select2-selection__rendered {
    display: flex !important;
    flex-wrap: wrap;
    align-items: center;
    align-content: center;
    min-height: 40px;
    height: auto;
    padding: 0 6px !important;
    margin: 0 !important;
}

/* chip-urile valorilor selectate: !important pentru ca tema de baza (_modules.scss) le seta cu !important (gri) */
.select2-container--default .select2-selection--multiple .select2-selection__choice {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px;
    background-color: color-mix(in srgb, var(--bs-primary) 12%, #fff) !important;
    border: 1px solid color-mix(in srgb, var(--bs-primary) 28%, transparent) !important;
    border-radius: 999px !important;
    color: var(--bs-primary) !important;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.2;
    margin: 3px 4px 3px 0 !important;
    padding: 3px 8px 3px 10px !important;
    word-break: normal;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
    order: 2;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    float: none !important;
    width: 16px;
    height: 16px;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 50%;
    color: var(--bs-primary) !important;
    opacity: .6;
    font-size: 14px;
    line-height: 16px;
    text-align: center;
}

/* × ramane glifa de text (cum era inainte), nu cruce desenata */
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover {
    opacity: 1;
    background: color-mix(in srgb, var(--bs-primary) 18%, transparent);
}

/* programul din dropdown (data-schedule), in dreapta numelui; vezi RouteController::getRouteMerchandiserModal */
.select2-option-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    width: 100%;
}

.select2-option-name {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.select2-schedule {
    flex-shrink: 0;
    font-size: 12px;
    font-weight: 500;
    color: var(--bs-primary);
    background: color-mix(in srgb, var(--bs-primary) 12%, transparent);
    border-radius: 999px;
    padding: 2px 8px;
}

.dark-version .select2-schedule {
    color: var(--bs-primary);
    background: color-mix(in srgb, var(--bs-primary) 22%, transparent);
}

/* ---------- dark: select2 ---------- */
.dark-version .select2-container--default .select2-selection--single,
.dark-version .select2-container--default .select2-selection--multiple {
    background-color: #1e2033 !important;
    border-color: #3a3d62 !important;
}

.dark-version .select2-container--default .select2-selection--single .select2-selection__rendered {
    color: #e5e7eb;
}

.dark-version .select2-dropdown {
    background: #1e2033;
    border-color: #33365a !important;
    box-shadow: 0 12px 28px -6px rgba(0, 0, 0, .6);
}

.dark-version .select2-results__option {
    color: #e5e7eb;
}

.dark-version .select2-container--default .select2-results__option--highlighted[aria-selected] {
    background-color: color-mix(in srgb, var(--bs-primary) 22%, transparent) !important;
    color: #e5e7eb !important;
}

.dark-version .select2-container--default .select2-results__option[aria-selected=true] {
    background-color: color-mix(in srgb, var(--bs-primary) 22%, transparent);
    color: var(--bs-primary) !important;
}

.dark-version .select2-search--dropdown .select2-search__field {
    background: #1e2033;
    border-color: #3a3d62 !important;
    color: #e5e7eb;
}

.dark-version .select2-container--default .select2-selection--multiple .select2-selection__choice {
    background-color: color-mix(in srgb, var(--bs-primary) 22%, transparent) !important;
    border-color: color-mix(in srgb, var(--bs-primary) 40%, transparent) !important;
    color: #e5e7eb !important;
}

/* ---------- input-group (append / prepend): focus pe tot grupul ---------- */
/* navbar.php (framework6.1) pune .input-group .form-control:focus cu border si box-shadow !important (chenar gri, fara ring).
   Regulile de mai jos au specificitate mai mare: campul ia culoarea principala, iar ringul e pe grup, ca sa acopere si addon-ul.
   Bara de cautare din meniu (.search-bar) nu se atinge. */
body .input-group:not(.search-bar .input-group):has(:is(input, select, textarea):focus) {
    box-shadow: 0 0 0 4px color-mix(in srgb, var(--bs-primary) 14%, transparent);
    border-radius: .5rem;
}
body .input-group:not(.search-bar .input-group) > :is(input, select, textarea, .form-control, .form-select):focus {
    border-color: var(--bs-primary) !important;
    box-shadow: none !important;
    outline: 0;
}
body .input-group:not(.search-bar .input-group):has(:is(input, select, textarea):focus) > .input-group-text {
    border-color: var(--bs-primary) !important;
}

/* ---------- select2 multiple (si single in input-group): focus / deschis in culoarea principala ---------- */
/* tema nu avea regula de focus pentru select2 multiple: chenarul ramanea gri */
.select2-container--default.select2-container--focus .select2-selection--multiple,
.select2-container--default.select2-container--open .select2-selection--multiple {
    border-color: var(--bs-primary) !important;
    box-shadow: 0 0 0 4px color-mix(in srgb, var(--bs-primary) 14%, transparent);
}
/* in input-group (append / prepend): ringul e pe grup, ca la inputuri; selectia nu mai are ring propriu */
body .input-group:not(.search-bar .input-group):has(> .select2-container--focus, > .select2-container--open) {
    box-shadow: 0 0 0 4px color-mix(in srgb, var(--bs-primary) 14%, transparent);
    border-radius: .5rem;
}
body .input-group:not(.search-bar .input-group) > .select2-container .select2-selection {
    border-color: var(--bs-primary) !important;
    box-shadow: none !important;
}
body .input-group:not(.search-bar .input-group):has(> .select2-container--focus, > .select2-container--open) > .input-group-text {
    border-color: var(--bs-primary) !important;
}

/* ---------- field_tags (bootstrap-tagsinput): chenarul containerului in focus, ca la celelalte campuri ---------- */
/* tema seta chenarul gri si umbra interioara (inset) pe container; focusul e pe inputul din interior */
body .bootstrap-tagsinput {
    border-color: #d6dbe4;
    box-shadow: none;
}
body .bootstrap-tagsinput:focus-within {
    border-color: var(--bs-primary) !important;
    box-shadow: 0 0 0 4px color-mix(in srgb, var(--bs-primary) 14%, transparent) !important;
    outline: 0;
}

/* ---------- Checkbox si radio (light + dark) ----------
   Checkbox: umplut cu culoarea principala cand e bifat, bifa alba (in dark: bleumarin, ca sa se vada pe culoarea deschisa).
   Radio: cerc gol cu chenar in culoarea principala; bifat = bulina in culoarea principala in mijloc.
   Comutatoarele (switch / toggle) nu se ating. Dimensiunea: 18px. */
body :is(input[type=checkbox]:not(.bootstrap-switch input, .toggle input, .switch input), input[type=radio]) {
    -webkit-appearance: none;
    appearance: none;
    width: 18px;
    min-width: 18px;
    max-width: 18px;
    height: 18px;
    min-height: 18px;
    max-height: 18px;
    margin: 0;
    padding: 0;
    float: none;
    vertical-align: middle;
    background-color: #fff;
    background-image: none;
    border: 1.5px solid #9aa3b2;
    box-shadow: none;
    outline: 0;
    transition: background-color .15s ease, border-color .15s ease;
}
body :is(input[type=checkbox]:not(.bootstrap-switch input, .toggle input, .switch input)) {
    --f61-check: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23ffffff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round' d='M3.6 8.4l2.8 2.8 6-6.2'/%3E%3C/svg%3E");
    border-radius: 5px;
}
body :is(input[type=checkbox]:not(.bootstrap-switch input, .toggle input, .switch input)):checked {
    background-color: var(--bs-primary) !important;
    border-color: var(--bs-primary) !important;
    background-image: var(--f61-check) !important;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-position: center;
}
/* tema desena bifa cu ::after (la tabele, pe verde): o scoatem, bifa e cea de mai sus */
body :is(input[type=checkbox]:not(.bootstrap-switch input, .toggle input, .switch input))::after,
body :is(input[type=checkbox]:not(.bootstrap-switch input, .toggle input, .switch input))::before {
    content: none !important;
    display: none !important;
}
body input[type=radio] {
    border-radius: 50%;
}
body input[type=radio]:checked {
    background-color: #fff !important;
    border-color: var(--bs-primary) !important;
    background-image: radial-gradient(circle closest-side, var(--bs-primary) 0 55%, transparent 62%) !important;
    background-size: 100% 100%;
    background-repeat: no-repeat;
}
body :is(input[type=checkbox]:not(.bootstrap-switch input, .toggle input, .switch input), input[type=radio]):focus-visible {
    box-shadow: 0 0 0 4px color-mix(in srgb, var(--bs-primary) 14%, transparent) !important;
    border-color: var(--bs-primary) !important;
    outline: 0;
}

/* dark: suprafata inchisa, chenar deschis; bifa bleumarin pe culoarea principala (deschisa in dark) */
body.dark-version :is(input[type=checkbox]:not(.bootstrap-switch input, .toggle input, .switch input), input[type=radio]) {
    background-color: #1e2033;
    border-color: #5b5f7a;
}
body.dark-version :is(input[type=checkbox]:not(.bootstrap-switch input, .toggle input, .switch input)) {
    --f61-check: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%230b1020' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round' d='M3.6 8.4l2.8 2.8 6-6.2'/%3E%3C/svg%3E");
}
body.dark-version :is(input[type=checkbox]:not(.bootstrap-switch input, .toggle input, .switch input)):checked {
    background-color: var(--bs-primary) !important;
    border-color: var(--bs-primary) !important;
}
body.dark-version input[type=radio]:checked {
    background-color: #1e2033 !important;
    border-color: var(--bs-primary) !important;
    background-image: radial-gradient(circle closest-side, var(--bs-primary) 0 55%, transparent 62%) !important;
}

/* ---------- radio_inline / checkbox_inline (si listele radio/checkbox): eticheta centrata pe inaltimea inputului ---------- */
/* tema punea margin-bottom pe label si text pe linia de baza: textul ieșea cu ~1.5px fata de bulina / bifa */
body :is(.radio, .checkbox) > label {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin: 0;
    line-height: 20px;
}
body :is(.radio, .checkbox) > label > :is(.choice, .checker) {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
body :is(.input-radio, .input-checkbox) {
    display: inline-flex;
    align-items: center;
    line-height: 1;
}

/* ---------- boolean_inline: eticheta centrata pe inaltimea checkbox-ului ---------- */
/* tema punea margin-bottom pe label: textul ieșea ~4px sub bifa */
body .field_boolean_inline_fg {
    display: flex;
    align-items: center;
    gap: 6px;
}
body .field_boolean_inline_fg > label {
    margin: 0;
    line-height: 20px;
}
body .field_boolean_inline_fg > .checker {
    display: inline-flex;
    align-items: center;
}
body .field_boolean_inline_fg .input-checkbox {
    display: inline-flex;
    align-items: center;
    line-height: 1;
}

/* ---------- field_date: calendarul (jQuery UI datepicker) in culoarea principala ---------- */
/* tema/jQuery UI aveau albastrul fix #1473e6 pe ziua selectata si pe ziua de azi */
.ui-datepicker .ui-datepicker-calendar .ui-state-active,
.ui-datepicker .ui-datepicker-calendar .ui-state-highlight {
    background: var(--bs-primary) !important;
    border-color: var(--bs-primary) !important;
    color: #fff !important;
}
.ui-datepicker .ui-datepicker-calendar a.ui-state-hover:not(.ui-state-active, .ui-state-highlight) {
    background: var(--bs-primary-bg-subtle) !important;
    border-color: transparent !important;
    color: var(--bs-primary) !important;
}
body.dark-version .ui-datepicker .ui-datepicker-calendar .ui-state-active,
body.dark-version .ui-datepicker .ui-datepicker-calendar .ui-state-highlight {
    color: #0b1020 !important;
}

/* ---------- field_datetime (jquery.datetimepicker / xdsoft): calendarul si ora in culoarea principala ---------- */
/* implicit: albastrul fix #33aaff pe ziua/ora selectata si pe hover */
body .xdsoft_datetimepicker .xdsoft_option.xdsoft_current,
body .xdsoft_datetimepicker .xdsoft_option:hover,
body .xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_current,
body .xdsoft_datetimepicker .xdsoft_calendar td:hover,
body .xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_option:hover {
    background: var(--bs-primary) !important;
    color: #fff !important;
}

/* ---------- field_daterange (daterangepicker): intervalul, ziua selectata, presetarile si butonul Aplica in culoarea principala ---------- */
/* implicit: verde-turcoaz (#26a69a) si butonul bg-slate */
body .daterangepicker td.active,
body .daterangepicker td.active:hover,
body .daterangepicker td.start-date,
body .daterangepicker td.end-date {
    background-color: var(--bs-primary) !important;
    color: #fff !important;
}
body .daterangepicker td.in-range {
    background-color: var(--bs-primary-bg-subtle) !important;
    color: var(--bs-primary) !important;
}
body .daterangepicker td.available:hover:not(.active) {
    background-color: var(--bs-primary-bg-subtle) !important;
}
body .daterangepicker .ranges li.active,
body .daterangepicker .ranges li:hover {
    background-color: var(--bs-primary) !important;
    border-color: var(--bs-primary) !important;
    color: #fff !important;
}
body .daterangepicker .applyBtn {
    background-color: var(--bs-primary) !important;
    border-color: var(--bs-primary) !important;
    color: #fff !important;
}

/* ---------- field_datetime: selectorul de ora (coloana .xdsoft_time) in culoarea principala ---------- */
/* orele nu sunt .xdsoft_option: au clasa .xdsoft_time; implicit albastru pe ora selectata si portocaliu/alt accent la hover */
body .xdsoft_datetimepicker .xdsoft_time.xdsoft_current,
body .xdsoft_datetimepicker .xdsoft_time:hover,
body .xdsoft_datepicker .xdsoft_time.xdsoft_current,
body .xdsoft_datepicker .xdsoft_time:hover {
    background: var(--bs-primary) !important;
    color: #fff !important;
}

/* ---------- field_datetime: hover portocaliu (jquery.datetimepicker.css, !important, specificitate mai mare) ---------- */
/* hover-ul pe ore si pe lunile/anii din antet ramanea portocaliu (rgb 255,128,0): il trecem pe culoarea principala */
body .xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box > div > div:hover,
body .xdsoft_datetimepicker .xdsoft_label > .xdsoft_select > div > .xdsoft_option:hover,
body .xdsoft_datepicker .xdsoft_timepicker .xdsoft_time_box > div > div:hover,
body .xdsoft_datepicker .xdsoft_label > .xdsoft_select > div > .xdsoft_option:hover {
    background: var(--bs-primary) !important;
    color: #fff !important;
}

/* ---------- field_multidate (multidatespicker): zilele selectate in culoarea principala, cu text alb ---------- */
/* plugin-ul marcheaza ziua selectata pe <td class="ui-state-highlight">; <a> ramane transparent cu text gri (#393939) */
.ui-datepicker td.ui-state-highlight {
    background: var(--bs-primary) !important;
    border-color: var(--bs-primary) !important;
}
.ui-datepicker td.ui-state-highlight > a,
.ui-datepicker td.ui-state-highlight > a.ui-state-default {
    background: transparent !important;
    color: #fff !important;
}
