

/* Start:/local/templates/eshop_bootstrap_v4/colors-v2.css?178662782041187*/
.bg-body{background-color: #fff;}

/* ФОН ТЕМЫ В ДВУХ СЛОЯХ. Каждая тема фона (body.bg-theme-*) красит страницу в
   один цвет, а карточки меню (.accordion-item / .accordion-body) — в другой,
   чуть отличный. Правила ниже дублируют эту пару в переменные, чтобы её мог
   взять элемент, который аккордеоном НЕ является, — детальная карточка товара
   (попап): её колонка должна быть цвета карточки меню, а поля по бокам —
   цвета страницы. Значения держать синхронными с блоками BG THEME * ниже.
   Тема gray намеренно даёт одинаковую пару: там аккордеон совпадает с фоном. */
:root {
    --em-bg-page: #fff;
    --em-bg-card: #fff;
}
body.bg-theme-light-gray { --em-bg-page: #e9ecef; --em-bg-card: #f8f9fa; }
body.bg-theme-gray       { --em-bg-page: #6c757d; --em-bg-card: #6c757d; }
body.bg-theme-black      { --em-bg-page: #212529; --em-bg-card: #495057; }

.bg-primary-50{
    background-color: #12b0ab81;
}

/* Color themes - overriding the primary colors */
/* Styles for the btn-outline-teal button */
.btn-outline-teal {
    color: #12b0ac;
    border-color: #12b0ac;
}

.btn-outline-teal:hover,
.btn-outline-teal:active,
.btn-outline-teal.active,
.btn-check:checked + .btn-outline-teal {
    color: #fff;
    background-color: #12b0ac;
    border-color: #12b0ac;
}

.btn-outline-teal:focus,
.btn-outline-teal.focus {
    color: #12b0ac;
    background-color: transparent;
    border-color: #12b0ac;
    box-shadow: none !important;
}
.border-primary{border-color: #12b0ac !important;}

/* Disabled btn-primary — default teal */
body .btn-primary.disabled,
body .btn-primary:disabled {
    color: #fff;
    background-color: #12b0ac;
    border-color: #12b0ac;
}

/* Active state of btn-outline-primary in the default theme (without body.theme-X) —
   by default Bootstrap colors the active button its own blue #0d6efd,
   which makes it blend with the project's theme colors.
   We use the same teal as the regular .btn-primary, so that the active
   button is clearly distinct from the inactive one. */
.btn-outline-primary.active,
.btn-outline-primary:active,
.btn-check:checked + .btn-outline-primary,
.btn-check:active + .btn-outline-primary,
.btn-outline-primary.dropdown-toggle.show {
    color: #fff;
    background-color: #12b0ac;
    border-color: #12b0ac;
}

/* Checked state for form-check-input (checkboxes + switches) in the default theme.
   By default Bootstrap colors a checked checkbox #0d6efd. colors.css is
   included in header.php BEFORE bootstrap.min.css, so a rule with the plain
   .form-check-input:checked (specificity 0,1,1) loses to Bootstrap at
   equal specificity and later load order. The `body` prefix raises the
   specificity to (0,1,2) — it beats Bootstrap regardless of order.
   The themed body.theme-X .form-check-input:checked (0,2,1) rules below stay
   stronger than this rule, so theme switching keeps working. */
body .form-check-input:checked {
    background-color: #12b0ac;
    border-color: #12b0ac;
}

/* === .btn-warning / .btn-info — white text by default ===
   Bootstrap colors .btn-warning (#ffc107) and .btn-info (#0dcaf0) with BLACK
   text. The project settled on the opposite convention: such buttons are almost
   always light — previously this was achieved manually on each button with the
   text-light / link-light / text-white utility. We codify the rule once,
   so that new blocks get white text without extra classes.
   The `body` prefix is mandatory: colors.css is included BEFORE bootstrap.min.css,
   and at equal specificity (0,1,0) Bootstrap would win. With `body` the
   specificity is (0,1,1), on hover (0,2,1) — it confidently overrides the variants.
   OPT-OUT: where DARK text is needed — add .text-dark; it has !important,
   so it overrides this rule in all states (see the panel buttons in
   dashboard.php / compliance.php). */
body .btn-warning,
body .btn-info,
body .btn-warning:hover,
body .btn-warning:focus,
body .btn-warning:active,
body .btn-warning.active,
body .btn-info:hover,
body .btn-info:focus,
body .btn-info:active,
body .btn-info.active {
    color: #fff;
}
/* Disabled variants get their own rule: Bootstrap's `.btn-info:disabled`
   (0,2,0) outranks `body .btn-info` (0,1,1) and would bring black text back
   (e.g. the "pay cash" button in the change calculator, disabled until the
   received amount covers the bill). */
body .btn-warning:disabled,
body .btn-warning.disabled,
body .btn-info:disabled,
body .btn-info.disabled {
    color: #fff;
}

/* =====================================================================
   SISTEM BARVNIH TEM (refaktor)
   Namesto ~50 vrstic na barvo je vsaka tema definirana kot pescica CSS
   spremenljivk, pravila komponent pa so napisana ENKRAT prek var().
   Predpona `body:is(<seznam tem>)` da ISTO specificnost (0,x,1) kot nekdanji
   `body.theme-X ...`, zato je izris piksel-identicen.

   DODAJANJE NOVE (temne) BARVE:
     - dodaj njen razred v vse sezname :is(...) spodaj (find/replace),
     - dodaj en blok  body.theme-IME{ --em-primary; --em-primary-dark; --em-primary-50 }
   Svetla barva (temno besedilo) potrebuje se --em-on-primary:#212529 in po
   potrebi crn SVG za .btn-close — glej yellow.

   Tokeni:
     --em-primary        osnovna barva (ozadje/rob gumbov, povezave, text-primary)
     --em-primary-dark   temnejsa (hover/focus/active, a:hover, privzeti .border-primary)
     --em-primary-50     polprosojna (#RRGGBB81) za .bg-primary-50
     --em-on-primary     besedilo na polnem ozadju (privzeto #fff; yellow/white #212529)
     --em-border-primary barva .border-primary utility (privzeto = --em-primary-dark)
     --em-icon           barva IKON na BELI podlagi (drsni meni). Privzeto = --em-primary;
                         teme, katerih primary je na belem preslabo viden (yellow, lime,
                         cyan, orange, white), tu povozijo s temnejso razlicico.

   Tema WHITE je namenoma svoj ekspliciten blok nize (najbolj odstopa) in NI v
   seznamih. Tudi `bg-theme-*` (barva ozadja) je izvzeta.
   ===================================================================== */

/* Privzete vrednosti tokenov — tema «default» (teal). Pravila komponent spodaj so
   vezana na `body:is(.theme-…)`, zato ta blok NE spremeni nobenega obstojecega
   izrisa: obstaja zato, da var(--em-primary) / var(--em-icon) vrneta pravo barvo
   TUDI brez razreda teme (privzeta shema) — npr. ikone glavnega menija. */
:root {
    --em-primary:#12b0ac;
    --em-primary-dark:#0e918e;
    --em-primary-50:#12b0ab81;
}

/* --- vrednosti na temo --- */
body.theme-red    { --em-primary:#dc3545; --em-primary-dark:#c82333; --em-primary-50:#dc354581; }
body.theme-blue   { --em-primary:#0d6efd; --em-primary-dark:#0b5ed7; --em-primary-50:#0d6efd81; }
body.theme-green  { --em-primary:#198754; --em-primary-dark:#157347; --em-primary-50:#19875481; }
body.theme-orange { --em-primary:#fd7e14; --em-primary-dark:#e85d04; --em-primary-50:#fd7e1481; --em-icon:#e85d04; }
body.theme-black  { --em-primary:#212529; --em-primary-dark:#1c1f23; --em-primary-50:#21252981; }
body.theme-purple { --em-primary:#6f42c1; --em-primary-dark:#5a2d91; --em-primary-50:#6f42c181; }
body.theme-pink   { --em-primary:#e83e8c; --em-primary-dark:#d91a72; --em-primary-50:#e83e8c81; }
body.theme-cyan   { --em-primary:#00bcd4; --em-primary-dark:#00acc1; --em-primary-50:#00bcd481; --em-icon:#0f8fa0; }
body.theme-lime   { --em-primary:#32cd32; --em-primary-dark:#28a428; --em-primary-50:#32cd3281; --em-border-primary:#32cd32; --em-icon:#218c21; }
/* yellow = svetla tema */
body.theme-yellow { --em-primary:#ffc107; --em-primary-dark:#e0a800; --em-primary-50:#ffc10781; --em-on-primary:#212529; --em-border-primary:#ffc107; --em-icon:#b98900; }

/* --- pravila komponent (ENKRAT za vse teme) --- */

/* .bg-primary / .bg-primary-50 */
body:is(.theme-red,.theme-blue,.theme-green,.theme-orange,.theme-black,.theme-purple,.theme-pink,.theme-cyan,.theme-yellow,.theme-lime) .bg-primary { background-color: var(--em-primary) !important; }
body:is(.theme-red,.theme-blue,.theme-green,.theme-orange,.theme-black,.theme-purple,.theme-pink,.theme-cyan,.theme-yellow,.theme-lime) .bg-primary-50 { background-color: var(--em-primary-50) !important; }

/* Poln gumb + aktivni/izbrani outline: ozadje in rob = primary */
body:is(.theme-red,.theme-blue,.theme-green,.theme-orange,.theme-black,.theme-purple,.theme-pink,.theme-cyan,.theme-yellow,.theme-lime) .btn-primary,
body:is(.theme-red,.theme-blue,.theme-green,.theme-orange,.theme-black,.theme-purple,.theme-pink,.theme-cyan,.theme-yellow,.theme-lime) .btn-check:active+.btn-outline-primary,
body:is(.theme-red,.theme-blue,.theme-green,.theme-orange,.theme-black,.theme-purple,.theme-pink,.theme-cyan,.theme-yellow,.theme-lime) .btn-check:checked+.btn-outline-primary,
body:is(.theme-red,.theme-blue,.theme-green,.theme-orange,.theme-black,.theme-purple,.theme-pink,.theme-cyan,.theme-yellow,.theme-lime) .btn-outline-primary.active,
body:is(.theme-red,.theme-blue,.theme-green,.theme-orange,.theme-black,.theme-purple,.theme-pink,.theme-cyan,.theme-yellow,.theme-lime) .btn-outline-primary:active,
body:is(.theme-red,.theme-blue,.theme-green,.theme-orange,.theme-black,.theme-purple,.theme-pink,.theme-cyan,.theme-yellow,.theme-lime) .form-check-input:checked {
    background-color: var(--em-primary);
    border-color: var(--em-primary);
}

/* Poln gumb hover/focus/active = dark */
body:is(.theme-red,.theme-blue,.theme-green,.theme-orange,.theme-black,.theme-purple,.theme-pink,.theme-cyan,.theme-yellow,.theme-lime) .btn-primary:hover,
body:is(.theme-red,.theme-blue,.theme-green,.theme-orange,.theme-black,.theme-purple,.theme-pink,.theme-cyan,.theme-yellow,.theme-lime) .btn-primary:focus,
body:is(.theme-red,.theme-blue,.theme-green,.theme-orange,.theme-black,.theme-purple,.theme-pink,.theme-cyan,.theme-yellow,.theme-lime) .btn-primary:active {
    background-color: var(--em-primary-dark);
    border-color: var(--em-primary-dark);
}

/* Disabled */
body:is(.theme-red,.theme-blue,.theme-green,.theme-orange,.theme-black,.theme-purple,.theme-pink,.theme-cyan,.theme-yellow,.theme-lime) .btn-primary.disabled,
body:is(.theme-red,.theme-blue,.theme-green,.theme-orange,.theme-black,.theme-purple,.theme-pink,.theme-cyan,.theme-yellow,.theme-lime) .btn-primary:disabled {
    color: var(--em-on-primary, #fff);
    background-color: var(--em-primary);
    border-color: var(--em-primary);
}

/* Outline v mirovanju = primary */
body:is(.theme-red,.theme-blue,.theme-green,.theme-orange,.theme-black,.theme-purple,.theme-pink,.theme-cyan,.theme-yellow,.theme-lime) .btn-outline-primary {
    border-color: var(--em-primary);
    color: var(--em-primary);
}

/* input.bg-primary */
body:is(.theme-red,.theme-blue,.theme-green,.theme-orange,.theme-black,.theme-purple,.theme-pink,.theme-cyan,.theme-yellow,.theme-lime) input.bg-primary {
    color: var(--em-on-primary, #fff);
    background-color: var(--em-primary);
}

/* Outline hover/focus */
body:is(.theme-red,.theme-blue,.theme-green,.theme-orange,.theme-black,.theme-purple,.theme-pink,.theme-cyan,.theme-yellow,.theme-lime) .btn-outline-primary:hover,
body:is(.theme-red,.theme-blue,.theme-green,.theme-orange,.theme-black,.theme-purple,.theme-pink,.theme-cyan,.theme-yellow,.theme-lime) .btn-outline-primary:focus {
    color: var(--em-on-primary, #fff);
    background-color: var(--em-primary);
    border-color: var(--em-primary);
}

/* Besedilo aktivnega outline gumba = on-primary (#fff, oz. temno pri yellow) */
body:is(.theme-red,.theme-blue,.theme-green,.theme-orange,.theme-black,.theme-purple,.theme-pink,.theme-cyan,.theme-yellow,.theme-lime) .btn-outline-primary.active,
body:is(.theme-red,.theme-blue,.theme-green,.theme-orange,.theme-black,.theme-purple,.theme-pink,.theme-cyan,.theme-yellow,.theme-lime) .btn-outline-primary:active,
body:is(.theme-red,.theme-blue,.theme-green,.theme-orange,.theme-black,.theme-purple,.theme-pink,.theme-cyan,.theme-yellow,.theme-lime) .btn-check:checked+.btn-outline-primary,
body:is(.theme-red,.theme-blue,.theme-green,.theme-orange,.theme-black,.theme-purple,.theme-pink,.theme-cyan,.theme-yellow,.theme-lime) .btn-check:active+.btn-outline-primary {
    color: var(--em-on-primary, #fff);
}

/* text-primary / povezave / .border-primary
   `:not(.link-light)`: .link-light je utility za povezave na POLNI barvni podlagi
   (glava, noga). Bootstrap v tej gradnji definira .link-light:hover BREZ !important
   (specificnost 0,2,0), to pravilo pa ima 0,3,2 — zato je hover bele povezave v glavi
   pobarval v --em-primary-dark. Pri oranzni temi je to #e85d04 na #fd7e14 (kontrast
   1,36:1) → povezava je prakticno izginila. Izvzetje velja za VSE teme in obe stanji. */
body:is(.theme-red,.theme-blue,.theme-green,.theme-orange,.theme-black,.theme-purple,.theme-pink,.theme-cyan,.theme-yellow,.theme-lime) .text-primary { color: var(--em-primary) !important; }
body:is(.theme-red,.theme-blue,.theme-green,.theme-orange,.theme-black,.theme-purple,.theme-pink,.theme-cyan,.theme-yellow,.theme-lime) a:not(.btn):not(.link-light) { color: var(--em-primary); }
body:is(.theme-red,.theme-blue,.theme-green,.theme-orange,.theme-black,.theme-purple,.theme-pink,.theme-cyan,.theme-yellow,.theme-lime) a:not(.btn):not(.link-light):hover { color: var(--em-primary-dark); }
body:is(.theme-red,.theme-blue,.theme-green,.theme-orange,.theme-black,.theme-purple,.theme-pink,.theme-cyan,.theme-yellow,.theme-lime) .border-primary { border-color: var(--em-border-primary, var(--em-primary-dark)) !important; }

/* yellow: poln gumb ima temno besedilo (svetlo ozadje) */
body.theme-yellow .btn-primary,
body.theme-yellow .btn-primary:hover,
body.theme-yellow .btn-primary:focus,
body.theme-yellow .btn-primary:active { color: #212529; }
/* yellow: .text-white -> temno */
body.theme-yellow .text-white { color: #212529 !important; }

/* Nav-pills */
body:is(.theme-red,.theme-blue,.theme-green,.theme-orange,.theme-black,.theme-purple,.theme-pink,.theme-cyan,.theme-yellow,.theme-lime) .nav-pills .nav-link.active,
body:is(.theme-red,.theme-blue,.theme-green,.theme-orange,.theme-black,.theme-purple,.theme-pink,.theme-cyan,.theme-yellow,.theme-lime) .nav-pills .show>.nav-link {
    background-color: var(--em-primary);
    color: var(--em-on-primary, #fff);
}
body:is(.theme-red,.theme-blue,.theme-green,.theme-orange,.theme-black,.theme-purple,.theme-pink,.theme-cyan,.theme-yellow,.theme-lime) .nav-pills .nav-link { color: var(--em-primary); }

/* Pagination */
body:is(.theme-red,.theme-blue,.theme-green,.theme-orange,.theme-black,.theme-purple,.theme-pink,.theme-cyan,.theme-yellow,.theme-lime) .pagination .page-link { color: var(--em-primary); }
body:is(.theme-red,.theme-blue,.theme-green,.theme-orange,.theme-black,.theme-purple,.theme-pink,.theme-cyan,.theme-yellow,.theme-lime) .pagination .page-item.active .page-link,
body:is(.theme-red,.theme-blue,.theme-green,.theme-orange,.theme-black,.theme-purple,.theme-pink,.theme-cyan,.theme-yellow,.theme-lime) .pagination .page-link:hover,
body:is(.theme-red,.theme-blue,.theme-green,.theme-orange,.theme-black,.theme-purple,.theme-pink,.theme-cyan,.theme-yellow,.theme-lime) .pagination .page-link:focus {
    background-color: var(--em-primary);
    border-color: var(--em-primary);
    color: var(--em-on-primary, #fff);
}

/* btn-link */
body:is(.theme-red,.theme-blue,.theme-green,.theme-orange,.theme-black,.theme-purple,.theme-pink,.theme-cyan,.theme-yellow,.theme-lime) .btn-link { color: var(--em-primary); }
body:is(.theme-red,.theme-blue,.theme-green,.theme-orange,.theme-black,.theme-purple,.theme-pink,.theme-cyan,.theme-yellow,.theme-lime) .btn-link:hover,
body:is(.theme-red,.theme-blue,.theme-green,.theme-orange,.theme-black,.theme-purple,.theme-pink,.theme-cyan,.theme-yellow,.theme-lime) .btn-link:focus { color: var(--em-primary-dark); }

/* Modal close (.modal-header .btn-close) — ozadje = primary; SVG krizec ostane
   bel iz osnovnega pravila. Yellow (svetlo ozadje) dobi crn SVG spodaj. */
body:is(.theme-red,.theme-blue,.theme-green,.theme-orange,.theme-black,.theme-purple,.theme-pink,.theme-cyan,.theme-yellow,.theme-lime) .modal-header .btn-close { background-color: var(--em-primary); }
body:is(.theme-red,.theme-blue,.theme-green,.theme-orange,.theme-black,.theme-purple,.theme-pink,.theme-cyan,.theme-yellow,.theme-lime) .modal-header .btn-close:hover,
body:is(.theme-red,.theme-blue,.theme-green,.theme-orange,.theme-black,.theme-purple,.theme-pink,.theme-cyan,.theme-yellow,.theme-lime) .modal-header .btn-close:focus { background-color: var(--em-primary-dark); }
body.theme-yellow .modal-header .btn-close {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e");
}

/* --- konec sistema barvnih tem; sledi ekspliciten blok WHITE --- */

/* White theme */
/* Ikone: primary bele teme je #f8f9fa — na belem drsnem meniju nevidna, zato
   temno besedilo (isto kot .text-primary te teme spodaj). */
body.theme-white { --em-icon:#212529; }
body.theme-white .bg-primary {
    background-color: #f8f9fa !important; 
    color: #212529 !important;
}
body.theme-white .bg-primary-50 { 
    background-color: #f8f9fa81 !important; 
}
body.theme-white .text-white {
    color: #212529 !important;
}
body.theme-white .btn-primary {
    background-color: #f8f9fa;
    border-color: #dee2e6;
    color: #212529;
}
body.theme-white .btn-primary:hover,
body.theme-white .btn-primary:focus,
body.theme-white .btn-primary:active {
    background-color: #e9ecef;
    border-color: #adb5bd;
    color: #212529;
}
body.theme-white .btn-primary.disabled,
body.theme-white .btn-primary:disabled {
    color: #212529;
    background-color: #f8f9fa;
    border-color: #dee2e6;
}
body.theme-white .btn-outline-primary {
    border-color: #dee2e6;
    color: #212529;
}
body.theme-white .btn-check:active+.btn-outline-primary,
body.theme-white .btn-check:checked+.btn-outline-primary,
body.theme-white .btn-outline-primary.active,
body.theme-white .btn-outline-primary:active {
    background-color: #e9ecef;
    border-color: #adb5bd;
    color: #212529;
}
body.theme-white .text-primary { color: #212529 !important; }
/* .link-light izvzet iz istega razloga kot pri temnih temah zgoraj. */
body.theme-white a:not(.btn):not(.link-light) { color: #212529; }
body.theme-white a:not(.btn):not(.link-light):hover { color: #495057; }
body.theme-white .form-check-input:checked {
    background-color: #6c757d;
    border-color: #6c757d;
}
body.theme-white .border-primary{border-color: #6c757d !important;}

/* Force white text on active btn-outline-primary in themed modes.
   Without this rule, in body.theme-{red,blue,green,...} the text color of the active
   button is inherited from `body.theme-X .btn-outline-primary { color: <primary> }`
   (specificity 0,2,1) and matches the background — the text becomes invisible.
   Here (0,2,1) with body, after all theme blocks — it wins by cascade
   order. For theme-yellow / theme-white the own `color: #212529` has
   (0,3,1) — overriding this rule works as intended. */
body .btn-outline-primary.active,
body .btn-outline-primary:active,
body .btn-check:checked + .btn-outline-primary,
body .btn-check:active + .btn-outline-primary,
body .btn-outline-primary.dropdown-toggle.show {
    color: #fff;
}

/* Styles for the btn-outline-blue button */
.btn-outline-blue {
    color: #007bff;
    border-color: #007bff;
}

.btn-outline-blue:hover,
.btn-outline-blue:active,
.btn-outline-blue.active,
.btn-check:checked + .btn-outline-blue {
    color: #fff;
    background-color: #007bff;
    border-color: #007bff;
}

.btn-outline-blue:focus,
.btn-outline-blue.focus {
    color: #007bff;
    background-color: transparent;
    border-color: #007bff;
    box-shadow: none !important;
}

/* Styles for the btn-outline-purple button */
.btn-outline-purple {
    color: #6f42c1;
    border-color: #6f42c1;
}

.btn-outline-purple:hover,
.btn-outline-purple:active,
.btn-outline-purple.active,
.btn-check:checked + .btn-outline-purple {
    color: #fff;
    background-color: #6f42c1;
    border-color: #6f42c1;
}

.btn-outline-purple:focus,
.btn-outline-purple.focus {
    color: #6f42c1;
    background-color: transparent;
    border-color: #6f42c1;
    box-shadow: none !important;
}

/* Styles for the btn-outline-pink button */
.btn-outline-pink {
    color: #e83e8c;
    border-color: #e83e8c;
}

.btn-outline-pink:hover,
.btn-outline-pink:active,
.btn-outline-pink.active,
.btn-check:checked + .btn-outline-pink {
    color: #fff;
    background-color: #e83e8c;
    border-color: #e83e8c;
}

.btn-outline-pink:focus,
.btn-outline-pink.focus {
    color: #e83e8c;
    background-color: transparent;
    border-color: #e83e8c;
    box-shadow: none !important;
}

/* Styles for the btn-outline-cyan button */
.btn-outline-cyan {
    color: #00bcd4;
    border-color: #00bcd4;
}

.btn-outline-cyan:hover,
.btn-outline-cyan:active,
.btn-outline-cyan.active,
.btn-check:checked + .btn-outline-cyan {
    color: #fff;
    background-color: #00bcd4;
    border-color: #00bcd4;
}

.btn-outline-cyan:focus,
.btn-outline-cyan.focus {
    color: #00bcd4;
    background-color: transparent;
    border-color: #00bcd4;
    box-shadow: none !important;
}

/* Styles for the btn-outline-yellow button */
.btn-outline-yellow {
    color: #ffc107;
    border-color: #ffc107;
}

.btn-outline-yellow:hover,
.btn-outline-yellow:active,
.btn-outline-yellow.active,
.btn-check:checked + .btn-outline-yellow {
    color: #212529;
    background-color: #ffc107;
    border-color: #ffc107;
}

.btn-outline-yellow:focus,
.btn-outline-yellow.focus {
    color: #ffc107;
    background-color: transparent;
    border-color: #ffc107;
    box-shadow: none !important;
}

/* Styles for the btn-outline-lime button */
.btn-outline-lime {
    color: #32cd32;
    border-color: #32cd32;
}

.btn-outline-lime:hover,
.btn-outline-lime:active,
.btn-outline-lime.active,
.btn-check:checked + .btn-outline-lime {
    color: #fff;
    background-color: #32cd32;
    border-color: #32cd32;
}

.btn-outline-lime:focus,
.btn-outline-lime.focus {
    color: #32cd32;
    background-color: transparent;
    border-color: #32cd32;
    box-shadow: none !important;
}

/* BG THEME LIGHT GRAY */

.bg-theme-light-gray, .bg-theme-light-gray .modal-content, .bg-theme-light-gray .bg-body {
    background-color: #e9ecef !important;
}
.bg-theme-light-gray .accordion-item {
    background-color: #f8f9fa !important;
    border-color: #dee2e6 !important;
}
.bg-theme-light-gray .btn-outline-secondary {
    color: #495057 !important;
    border-color: #495057 !important;
}

.bg-theme-light-gray .btn-outline-secondary:hover,
.bg-theme-light-gray .btn-outline-secondary:focus,
.bg-theme-light-gray .btn-outline-secondary:active,
.bg-theme-light-gray .btn-check:checked + .btn-outline-secondary {
    color: #ffffff !important;
    background-color: #495057 !important;
    border-color: #495057 !important;
}
.bg-theme-light-gray .text-black-50 {
    color: rgba(0, 0, 0, 0.6) !important;
}

/* BG THEME GRAY */

.bg-theme-gray, .bg-theme-gray .modal-content {
    background-color: #6c757d !important;
    color: #ffffff !important;
}

.bg-theme-gray .card {
    background-color: #495057 !important;
    color: #ffffff !important;
}

.bg-theme-gray .card-header {
    background-color: #343a40 !important;
    border-color: #495057 !important;
}

.bg-theme-gray .list-group-item {
    background-color: #495057 !important;
    color: #ffffff !important;
    border-color: #343a40 !important;
}

.bg-theme-gray .form-control,
.bg-theme-gray .form-control:focus {
    background-color: #495057 !important;
    color: #ffffff !important;
}

.bg-theme-gray .form-control {
    border-color: #343a40 !important;
}

.bg-theme-gray .form-control:focus {
    border-color: #80bdff !important;
    box-shadow: 0 0 0 0.2rem rgba(0,123,255,.25) !important;
}

.bg-theme-gray .form-select,
.bg-theme-gray .form-select:focus {
    background-color: #495057 !important;
    color: #ffffff !important;
}

.bg-theme-gray .form-select {
    border-color: #343a40 !important;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e") !important;
}

.bg-theme-gray .form-select:focus {
    border-color: #80bdff !important;
    box-shadow: 0 0 0 0.2rem rgba(0,123,255,.25) !important;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%2380bdff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e") !important;
}

.bg-theme-gray .text-muted {
    color: #adb5bd !important;
}

.bg-theme-gray .accordion-item,
.bg-theme-gray .accordion-header .accordion-button {
    background-color: #6c757d !important;
    color: #ffffff !important;
    border-color: #495057 !important;
}

.bg-theme-gray .accordion-header .accordion-button:not(.collapsed) {
    /* background-color: #495057 !important; */
    color: #ffffff !important;
}

.bg-theme-gray .accordion-body {
    background-color: #6c757d !important;
    color: #ffffff !important;
}

.bg-theme-gray .btn-outline-secondary {
    color: #fff !important;
    border-color: #ccc !important;
}

.bg-theme-gray .btn-outline-secondary:hover,
.bg-theme-gray .btn-outline-secondary:focus,
.bg-theme-gray .btn-outline-secondary:active,
.bg-theme-gray .btn-check:checked + .btn-outline-secondary {
    color: #6c757d !important;
    background-color: #ccc !important;
    border-color: #ccc !important;
}
.bg-theme-gray .text-black-50 {
    color: rgba(255, 255, 255, 0.6) !important;
}
.bg-theme-gray .btn-secondary{
    border-color: #fff;
}
.bg-theme-gray .table{
    color: #fff;
}

/* BG THEME BLACK */

.bg-theme-black, .bg-theme-black .modal-content, .bg-theme-black .bg-body {
    background-color: #212529 !important;
    color: #ffffff !important;
}

.bg-theme-black .card {
    background-color: #343a40 !important;
    color: #ffffff !important;
}

.bg-theme-black .card-header,
.bg-theme-black .list-group-item {
    background-color: #495057 !important;
    color: #ffffff !important;
    border-color: #6c757d !important;
}

.bg-theme-black .form-control {
    background-color: #495057 !important;
    color: #ffffff !important;
    border-color: #6c757d !important;
}

.bg-theme-black .form-control:focus {
    background-color: #495057 !important;
    color: #ffffff !important;
    border-color: #80bdff !important;
    box-shadow: 0 0 0 0.2rem rgba(0,123,255,.25) !important;
}

.bg-theme-black .form-select {
    background-color: #495057 !important;
    color: #ffffff !important;
    border-color: #6c757d !important;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%236c757d' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e") !important;
}

.bg-theme-black .form-select:focus {
    background-color: #495057 !important;
    color: #ffffff !important;
    border-color: #80bdff !important;
    box-shadow: 0 0 0 0.2rem rgba(0,123,255,.25) !important;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%2380bdff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e") !important;
}

.bg-theme-black .text-muted {
    color: #adb5bd !important;
}

.bg-theme-black .accordion-item {
    background-color: #495057 !important;
    color: #ffffff !important;
    border-color: #6c757d !important;
}

.bg-theme-black .accordion-header .accordion-button {
    background-color: #495057 !important;
    color: #ffffff !important;
    border-color: #6c757d !important;
}

.bg-theme-black .accordion-header .accordion-button:not(.collapsed) {
    /* background-color: #6c757d !important; */
    color: #ffffff !important;
}

.bg-theme-black .accordion-body {
    background-color: #495057 !important;
    color: #ffffff !important;
}

.bg-theme-black .btn-outline-secondary {
    color: #fff !important;
    border-color: #adb5bd !important;
}

.bg-theme-black .btn-outline-secondary:hover,
.bg-theme-black .btn-outline-secondary:focus,
.bg-theme-black .btn-outline-secondary:active,
.bg-theme-black .btn-check:checked + .btn-outline-secondary {
    color: #212529 !important;
    background-color: #adb5bd !important;
    border-color: #adb5bd !important;
}

.bg-theme-black .text-black-50 {
    color: rgba(255, 255, 255, 0.5) !important;
}

.bg-theme-black .table{
    color: #fff;
}

/* === Dropdown menus for background themes (Barva ozadja) ===
   The dropdown menu background color matches the page background, so it
   doesn't "glow" white on a dark theme. Applies to all dropdowns:
   in the header, in the tab/section/product editing popups, etc.
   text-danger/success/warning/info inside the items are left as-is.
   Exception: the navbar main-menu dropdowns are marked .bg-primary
   and styled with the navbar color (see panel.css), the background theme does not touch them. */

.bg-theme-light-gray .dropdown-menu:not(.bg-primary) {
    background-color: #f8f9fa;
    border-color: #dee2e6;
}
.bg-theme-light-gray .dropdown-menu:not(.bg-primary) .dropdown-item:not(.text-danger):not(.text-success):not(.text-warning):not(.text-info) {
    color: #212529;
}
.bg-theme-light-gray .dropdown-menu:not(.bg-primary) .dropdown-item:hover,
.bg-theme-light-gray .dropdown-menu:not(.bg-primary) .dropdown-item:focus {
    background-color: #e9ecef;
}
.bg-theme-light-gray .dropdown-menu:not(.bg-primary) .dropdown-divider {
    border-top-color: #dee2e6;
}

.bg-theme-gray .dropdown-menu:not(.bg-primary) {
    background-color: #6c757d;
    border-color: #495057;
}
.bg-theme-gray .dropdown-menu:not(.bg-primary) .dropdown-item:not(.text-danger):not(.text-success):not(.text-warning):not(.text-info) {
    color: #fff;
}
.bg-theme-gray .dropdown-menu:not(.bg-primary) .dropdown-item:hover,
.bg-theme-gray .dropdown-menu:not(.bg-primary) .dropdown-item:focus {
    background-color: #495057;
    color: #fff;
}
.bg-theme-gray .dropdown-menu:not(.bg-primary) .dropdown-divider {
    border-top-color: #495057;
}
.bg-theme-gray .dropdown-menu:not(.bg-primary) .dropdown-header {
    color: #adb5bd;
}

.bg-theme-black .dropdown-menu:not(.bg-primary) {
    background-color: #495057;
    border-color: #6c757d;
}
.bg-theme-black .dropdown-menu:not(.bg-primary) .dropdown-item:not(.text-danger):not(.text-success):not(.text-warning):not(.text-info) {
    color: #fff;
}
.bg-theme-black .dropdown-menu:not(.bg-primary) .dropdown-item:hover,
.bg-theme-black .dropdown-menu:not(.bg-primary) .dropdown-item:focus {
    background-color: #343a40;
    color: #fff;
}
.bg-theme-black .dropdown-menu:not(.bg-primary) .dropdown-divider {
    border-top-color: #6c757d;
}
.bg-theme-black .dropdown-menu:not(.bg-primary) .dropdown-header {
    color: #adb5bd;
}

/* === Aktivni element spustnega menija (npr. izbrano obdobje v glavi panela) ===
   Bootstrap ga pobarva s SVOJO modro (--bs-primary #0d6efd) in belim besedilom,
   kar je tuja barva v vsaki temi. Tu ozadje = --em-primary, besedilo pa
   --em-on-primary — pri svetlih temah (yellow) je to #212529, zato besedilo
   ostane berljivo na svetli podlagi.
   !important: pravila za barvo ozadja strani zgoraj (.bg-theme-* … .dropdown-item)
   imajo visjo specificnost (0,8,0) in bi sicer povozila barvo besedila, hover
   pa ozadje.
   Izvzeti so navbar (.dropdown-menu.bg-primary, stil v panel.css) ter jezikovna
   menija .nd-more-menu in .nd-iconbar (new-design.css) — imajo svoj, namerno
   blag (tint) aktivni videz. */
.dropdown-menu:not(.bg-primary, .nd-more-menu, .nd-iconbar *) .dropdown-item.active,
.dropdown-menu:not(.bg-primary, .nd-more-menu, .nd-iconbar *) .dropdown-item:active {
    background-color: var(--em-primary) !important;
    color: var(--em-on-primary, #fff) !important;
}
.dropdown-menu:not(.bg-primary, .nd-more-menu, .nd-iconbar *) .dropdown-item.active:hover,
.dropdown-menu:not(.bg-primary, .nd-more-menu, .nd-iconbar *) .dropdown-item.active:focus {
    background-color: var(--em-primary-dark) !important;
}
/* white: tema nima svojega --em-primary (podeduje privzeti teal), zato eksplicitno —
   enako kot .nav-pills .nav-link.active nize */
body.theme-white .dropdown-menu:not(.bg-primary, .nd-more-menu, .nd-iconbar *) .dropdown-item.active,
body.theme-white .dropdown-menu:not(.bg-primary, .nd-more-menu, .nd-iconbar *) .dropdown-item:active {
    background-color: #f8f9fa !important;
    color: #212529 !important;
}
body.theme-white .dropdown-menu:not(.bg-primary, .nd-more-menu, .nd-iconbar *) .dropdown-item.active:hover,
body.theme-white .dropdown-menu:not(.bg-primary, .nd-more-menu, .nd-iconbar *) .dropdown-item.active:focus {
    background-color: #e9ecef !important;
}

/* Nav-pills (tabs) — default teal */
.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
    background-color: #12b0ac;
    color: #fff;
}
.nav-pills .nav-link {
    color: #12b0ac;
}

/* Nav-pills — white */
body.theme-white .nav-pills .nav-link.active,
body.theme-white .nav-pills .show > .nav-link { background-color: #f8f9fa; color: #212529; border: 1px solid #dee2e6; }
body.theme-white .nav-pills .nav-link { color: #212529; }

/* Nav-tabs — the dropdown's hamburger inside <li> is shown only on the active tab.
   On inactive tabs it is hidden and takes no space. In the public part the .dropdown
   inside <li> is absent, so the rule affects nothing. */
.nav-tabs .nav-item .dropdown { display: none; }
.nav-tabs .nav-item:has(.nav-link.active) .dropdown { display: inline-block; }

/* Raise the active <li> into its own stacking context, otherwise, on hover
   over the closest accordion-button (which Bootstrap sets z-index: 3 on), the hamburger
   menu flickers in and out, hidden under the accordion. */
.nav-tabs .nav-item:has(.nav-link.active) {
    position: relative;
    z-index: 5;
}
.nav-tabs .nav-item .dropdown-menu {
    z-index: 1050;          /* above .accordion-button z-index (3) and any hover effects */
}

/* === Nav-tabs — styled like accordion sections ===
   .accordion-item has background:#fff, border:1px solid rgba(0,0,0,.125).
   .accordion-button:not(.collapsed) (expanded) — background:#f8f9fa.
   We give the tabs the same colors: a neutral flat grid, we don't use themed primary
   colors (just like the accordion). The active tab differs by
   the #f8f9fa background + bold text. */
.nav-tabs {
    border-bottom: 0;                                    /* remove the "line" under the tabs */
    /* Round the outer corners of the whole tab bar: the first tab top-left,
       the last bottom-right. The tabs inside stay rectangular.
       NB: do NOT set overflow:hidden — it clips the hamburger's dropdown menu.
       The rounding is visible thanks to repeating the radius on the first/last <li>. */
    border-top-left-radius: 0.25rem;
    border-bottom-right-radius: 0.25rem;
}
.nav-tabs .nav-item {
    border: 1px solid rgba(0, 0, 0, 0.125);
    border-radius: 0;                                    /* tabs are strictly rectangular */
    background-color: #fff;
    margin-right: -1px;                                  /* merge the borders of adjacent tabs */
    margin-bottom: 0;
}
/* Corner tabs inherit the parent's rounding — otherwise their square corners
   "stick out" past the <ul> frame. The effect is the same as overflow:hidden, without clipping. */
.nav-tabs .nav-item:first-child { border-top-left-radius: 0.25rem; }
.nav-tabs .nav-item:last-child  { border-top-right-radius: 0.25rem; }
.nav-tabs .nav-link {
    color: #212529;
    border: 0;
    border-radius: 0;
    margin: 0;
    background-color: transparent;
}

/* Active tab — background like an expanded accordion-button + bold for emphasis */
.nav-tabs .nav-item:has(.nav-link.active) {
    background-color: #f8f9fa;
}
.nav-tabs .nav-item:has(.nav-link.active) .nav-link.active,
.nav-tabs .nav-item:has(.nav-link.active) .nav-link.active:hover,
.nav-tabs .nav-item:has(.nav-link.active) .nav-link.active:focus {
    color: #212529;
    background-color: transparent;
    font-weight: bold;
}

/* Adjust the tabs to the background themes (light-gray / gray / black), like the accordion */
.bg-theme-light-gray .nav-tabs .nav-item {
    background-color: #f8f9fa;
    border-color: #dee2e6;
}
.bg-theme-light-gray .nav-tabs .nav-item:has(.nav-link.active) {
    background-color: #e9ecef;
}

.bg-theme-gray .nav-tabs .nav-item {
    background-color: #6c757d;
    border-color: #495057;
}
.bg-theme-gray .nav-tabs .nav-link,
.bg-theme-gray .nav-tabs .nav-link:hover,
.bg-theme-gray .nav-tabs .nav-link:focus {
    color: #fff;
    background-color: transparent;
}
.bg-theme-gray .nav-tabs .nav-item:has(.nav-link.active) {
    background-color: #495057;
}
.bg-theme-gray .nav-tabs .nav-item:has(.nav-link.active) .nav-link.active {
    color: #fff;
}

.bg-theme-black .nav-tabs .nav-item {
    background-color: #495057;
    border-color: #6c757d;
}
.bg-theme-black .nav-tabs .nav-link,
.bg-theme-black .nav-tabs .nav-link:hover,
.bg-theme-black .nav-tabs .nav-link:focus {
    color: #fff;
    background-color: transparent;
}
.bg-theme-black .nav-tabs .nav-item:has(.nav-link.active) {
    background-color: #343a40;
}
.bg-theme-black .nav-tabs .nav-item:has(.nav-link.active) .nav-link.active {
    color: #fff;
}

/* === Pagination — same palette as nav-pills === */
.pagination .page-link { color: #12b0ac; }
.pagination .page-item.active .page-link,
.pagination .page-link:hover,
.pagination .page-link:focus {
    background-color: #12b0ac;
    border-color: #12b0ac;
    color: #fff;
    box-shadow: none;
}
.pagination .page-item.disabled .page-link { color: #6c757d; }

body.theme-white .pagination .page-link { color: #212529; }
body.theme-white .pagination .page-item.active .page-link,
body.theme-white .pagination .page-link:hover,
body.theme-white .pagination .page-link:focus { background-color: #f8f9fa; border-color: #dee2e6; color: #212529; }

/* === btn-link — same palette as nav-pills / pagination ===
   By default Bootstrap colors .btn-link its own blue #0d6efd, which makes
   the link-button blend with the project's theme colors. We use
   the same palette as .text-primary / a:not(.btn) — the theme's primary color
   for text, a darker one on hover/focus. */
.btn-link {
    font-weight: 400;
    color: #12b0ac;
    text-decoration: underline;
}
.btn-link:hover,
.btn-link:focus { color: #0e8a86; }

body.theme-white .btn-link { color: #212529; }
body.theme-white .btn-link:hover,
body.theme-white .btn-link:focus { color: #495057; }

/* === Modal close button (.modal-header .btn-close) — bg-primary of the current theme ===
   By default Bootstrap draws the cross via a background-image with a black SVG.
   filter:invert inverts the background-color too, so instead
   we override the background-image with the same SVG but with fill='%23fff' (white).
   For light themes (yellow / white) the override is not needed — we keep
   Bootstrap's default black SVG. */
.modal-header .btn-close {
    background-color: #12b0ac;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e");
    border-radius: 0.25rem;
    opacity: 1;
    box-shadow: none;
}
.modal-header .btn-close:hover,
.modal-header .btn-close:focus {
    background-color: #0e8a86;
    opacity: 1;
    box-shadow: none;
}

/* Light themes — the bg-primary background is light, return the cross to a black SVG */

body.theme-white .modal-header .btn-close {
    background-color: #f8f9fa;
    border: 1px solid #dee2e6;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e");
}
body.theme-white .modal-header .btn-close:hover,
body.theme-white .modal-header .btn-close:focus {
    background-color: #e9ecef;
    border-color: #adb5bd;
}


/* End */


/* Start:/bootstrap_v5/css/bootstrap.min.css?1770888407155845*/
@charset "UTF-8";/*!
 * Bootstrap v5.0.2 (https://getbootstrap.com/)
 * Copyright 2011-2021 The Bootstrap Authors
 * Copyright 2011-2021 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
 */:root{--bs-blue:#0d6efd;--bs-indigo:#6610f2;--bs-purple:#6f42c1;--bs-pink:#d63384;--bs-red:#dc3545;--bs-orange:#fd7e14;--bs-yellow:#ffc107;--bs-green:#198754;--bs-teal:#20c997;--bs-cyan:#0dcaf0;--bs-white:#fff;--bs-gray:#6c757d;--bs-gray-dark:#343a40;--bs-primary:#0d6efd;--bs-secondary:#6c757d;--bs-success:#198754;--bs-info:#0dcaf0;--bs-warning:#ffc107;--bs-danger:#dc3545;--bs-light:#f8f9fa;--bs-dark:#212529;--bs-font-sans-serif:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--bs-font-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--bs-gradient:linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0))}*,::after,::before{box-sizing:border-box}@media (prefers-reduced-motion:no-preference){:root{scroll-behavior:smooth}}body{margin:0;font-family:var(--bs-font-sans-serif);font-size:1rem;font-weight:400;line-height:1.5;color:#212529;background-color:#fff;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}hr{margin:1rem 0;color:inherit;background-color:currentColor;border:0;opacity:.25}hr:not([size]){height:1px}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem;font-weight:500;line-height:1.2}.h1,h1{font-size:calc(1.375rem + 1.5vw)}@media (min-width:1200px){.h1,h1{font-size:2.5rem}}.h2,h2{font-size:calc(1.325rem + .9vw)}@media (min-width:1200px){.h2,h2{font-size:2rem}}.h3,h3{font-size:calc(1.3rem + .6vw)}@media (min-width:1200px){.h3,h3{font-size:1.75rem}}.h4,h4{font-size:calc(1.275rem + .3vw)}@media (min-width:1200px){.h4,h4{font-size:1.5rem}}.h5,h5{font-size:1.25rem}.h6,h6{font-size:1rem}p{margin-top:0;margin-bottom:1rem}abbr[data-bs-original-title],abbr[title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}ol,ul{padding-left:2rem}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}.small,small{font-size:.875em}.mark,mark{padding:.2em;background-color:#fcf8e3}sub,sup{position:relative;font-size:.75em;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#0d6efd;text-decoration:underline}a:hover{color:#0a58ca}a:not([href]):not([class]),a:not([href]):not([class]):hover{color:inherit;text-decoration:none}code,kbd,pre,samp{font-family:var(--bs-font-monospace);font-size:1em;direction:ltr;unicode-bidi:bidi-override}pre{display:block;margin-top:0;margin-bottom:1rem;overflow:auto;font-size:.875em}pre code{font-size:inherit;color:inherit;word-break:normal}code{font-size:.875em;color:#d63384;word-wrap:break-word}a>code{color:inherit}kbd{padding:.2rem .4rem;font-size:.875em;color:#fff;background-color:#212529;border-radius:.2rem}kbd kbd{padding:0;font-size:1em;font-weight:700}figure{margin:0 0 1rem}img,svg{vertical-align:middle}table{caption-side:bottom;border-collapse:collapse}caption{padding-top:.5rem;padding-bottom:.5rem;color:#6c757d;text-align:left}th{text-align:inherit;text-align:-webkit-match-parent}tbody,td,tfoot,th,thead,tr{border-color:inherit;border-style:solid;border-width:0}label{display:inline-block}button{border-radius:0}button:focus:not(:focus-visible){outline:0}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,select{text-transform:none}[role=button]{cursor:pointer}select{word-wrap:normal}select:disabled{opacity:1}[list]::-webkit-calendar-picker-indicator{display:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}::-moz-focus-inner{padding:0;border-style:none}textarea{resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{float:left;width:100%;padding:0;margin-bottom:.5rem;font-size:calc(1.275rem + .3vw);line-height:inherit}@media (min-width:1200px){legend{font-size:1.5rem}}legend+*{clear:left}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-fields-wrapper,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-text,::-webkit-datetime-edit-year-field{padding:0}::-webkit-inner-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:textfield}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-color-swatch-wrapper{padding:0}::file-selector-button{font:inherit}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}iframe{border:0}summary{display:list-item;cursor:pointer}progress{vertical-align:baseline}[hidden]{display:none!important}.lead{font-size:1.25rem;font-weight:300}.display-1{font-size:calc(1.625rem + 4.5vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-1{font-size:5rem}}.display-2{font-size:calc(1.575rem + 3.9vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-2{font-size:4.5rem}}.display-3{font-size:calc(1.525rem + 3.3vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-3{font-size:4rem}}.display-4{font-size:calc(1.475rem + 2.7vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-4{font-size:3.5rem}}.display-5{font-size:calc(1.425rem + 2.1vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-5{font-size:3rem}}.display-6{font-size:calc(1.375rem + 1.5vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-6{font-size:2.5rem}}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:.5rem}.initialism{font-size:.875em;text-transform:uppercase}.blockquote{margin-bottom:1rem;font-size:1.25rem}.blockquote>:last-child{margin-bottom:0}.blockquote-footer{margin-top:-1rem;margin-bottom:1rem;font-size:.875em;color:#6c757d}.blockquote-footer::before{content:"— "}.img-fluid{max-width:100%;height:auto}.img-thumbnail{padding:.25rem;background-color:#fff;border:1px solid #dee2e6;border-radius:.25rem;max-width:100%;height:auto}.figure{display:inline-block}.figure-img{margin-bottom:.5rem;line-height:1}.figure-caption{font-size:.875em;color:#6c757d}.container,.container-fluid,.container-lg,.container-md,.container-sm,.container-xl,.container-xxl{width:100%;padding-right:var(--bs-gutter-x,.75rem);padding-left:var(--bs-gutter-x,.75rem);margin-right:auto;margin-left:auto}@media (min-width:576px){.container,.container-sm{max-width:540px}}@media (min-width:768px){.container,.container-md,.container-sm{max-width:720px}}@media (min-width:992px){.container,.container-lg,.container-md,.container-sm{max-width:960px}}@media (min-width:1200px){.container,.container-lg,.container-md,.container-sm,.container-xl{max-width:1140px}}@media (min-width:1400px){.container,.container-lg,.container-md,.container-sm,.container-xl,.container-xxl{max-width:1320px}}.row{--bs-gutter-x:1.5rem;--bs-gutter-y:0;display:flex;flex-wrap:wrap;margin-top:calc(var(--bs-gutter-y) * -1);margin-right:calc(var(--bs-gutter-x) * -.5);margin-left:calc(var(--bs-gutter-x) * -.5)}.row>*{flex-shrink:0;width:100%;max-width:100%;padding-right:calc(var(--bs-gutter-x) * .5);padding-left:calc(var(--bs-gutter-x) * .5);margin-top:var(--bs-gutter-y)}.col{flex:1 0 0%}.row-cols-auto>*{flex:0 0 auto;width:auto}.row-cols-1>*{flex:0 0 auto;width:100%}.row-cols-2>*{flex:0 0 auto;width:50%}.row-cols-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-4>*{flex:0 0 auto;width:25%}.row-cols-5>*{flex:0 0 auto;width:20%}.row-cols-6>*{flex:0 0 auto;width:16.6666666667%}@media (min-width:576px){.col-sm{flex:1 0 0%}.row-cols-sm-auto>*{flex:0 0 auto;width:auto}.row-cols-sm-1>*{flex:0 0 auto;width:100%}.row-cols-sm-2>*{flex:0 0 auto;width:50%}.row-cols-sm-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-sm-4>*{flex:0 0 auto;width:25%}.row-cols-sm-5>*{flex:0 0 auto;width:20%}.row-cols-sm-6>*{flex:0 0 auto;width:16.6666666667%}}@media (min-width:768px){.col-md{flex:1 0 0%}.row-cols-md-auto>*{flex:0 0 auto;width:auto}.row-cols-md-1>*{flex:0 0 auto;width:100%}.row-cols-md-2>*{flex:0 0 auto;width:50%}.row-cols-md-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-md-4>*{flex:0 0 auto;width:25%}.row-cols-md-5>*{flex:0 0 auto;width:20%}.row-cols-md-6>*{flex:0 0 auto;width:16.6666666667%}}@media (min-width:992px){.col-lg{flex:1 0 0%}.row-cols-lg-auto>*{flex:0 0 auto;width:auto}.row-cols-lg-1>*{flex:0 0 auto;width:100%}.row-cols-lg-2>*{flex:0 0 auto;width:50%}.row-cols-lg-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-lg-4>*{flex:0 0 auto;width:25%}.row-cols-lg-5>*{flex:0 0 auto;width:20%}.row-cols-lg-6>*{flex:0 0 auto;width:16.6666666667%}}@media (min-width:1200px){.col-xl{flex:1 0 0%}.row-cols-xl-auto>*{flex:0 0 auto;width:auto}.row-cols-xl-1>*{flex:0 0 auto;width:100%}.row-cols-xl-2>*{flex:0 0 auto;width:50%}.row-cols-xl-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-xl-4>*{flex:0 0 auto;width:25%}.row-cols-xl-5>*{flex:0 0 auto;width:20%}.row-cols-xl-6>*{flex:0 0 auto;width:16.6666666667%}}@media (min-width:1400px){.col-xxl{flex:1 0 0%}.row-cols-xxl-auto>*{flex:0 0 auto;width:auto}.row-cols-xxl-1>*{flex:0 0 auto;width:100%}.row-cols-xxl-2>*{flex:0 0 auto;width:50%}.row-cols-xxl-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-xxl-4>*{flex:0 0 auto;width:25%}.row-cols-xxl-5>*{flex:0 0 auto;width:20%}.row-cols-xxl-6>*{flex:0 0 auto;width:16.6666666667%}}.col-auto{flex:0 0 auto;width:auto}.col-1{flex:0 0 auto;width:8.33333333%}.col-2{flex:0 0 auto;width:16.66666667%}.col-3{flex:0 0 auto;width:25%}.col-4{flex:0 0 auto;width:33.33333333%}.col-5{flex:0 0 auto;width:41.66666667%}.col-6{flex:0 0 auto;width:50%}.col-7{flex:0 0 auto;width:58.33333333%}.col-8{flex:0 0 auto;width:66.66666667%}.col-9{flex:0 0 auto;width:75%}.col-10{flex:0 0 auto;width:83.33333333%}.col-11{flex:0 0 auto;width:91.66666667%}.col-12{flex:0 0 auto;width:100%}.offset-1{margin-left:8.33333333%}.offset-2{margin-left:16.66666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.33333333%}.offset-5{margin-left:41.66666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.33333333%}.offset-8{margin-left:66.66666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.33333333%}.offset-11{margin-left:91.66666667%}.g-0,.gx-0{--bs-gutter-x:0}.g-0,.gy-0{--bs-gutter-y:0}.g-1,.gx-1{--bs-gutter-x:0.25rem}.g-1,.gy-1{--bs-gutter-y:0.25rem}.g-2,.gx-2{--bs-gutter-x:0.5rem}.g-2,.gy-2{--bs-gutter-y:0.5rem}.g-3,.gx-3{--bs-gutter-x:1rem}.g-3,.gy-3{--bs-gutter-y:1rem}.g-4,.gx-4{--bs-gutter-x:1.5rem}.g-4,.gy-4{--bs-gutter-y:1.5rem}.g-5,.gx-5{--bs-gutter-x:3rem}.g-5,.gy-5{--bs-gutter-y:3rem}@media (min-width:576px){.col-sm-auto{flex:0 0 auto;width:auto}.col-sm-1{flex:0 0 auto;width:8.33333333%}.col-sm-2{flex:0 0 auto;width:16.66666667%}.col-sm-3{flex:0 0 auto;width:25%}.col-sm-4{flex:0 0 auto;width:33.33333333%}.col-sm-5{flex:0 0 auto;width:41.66666667%}.col-sm-6{flex:0 0 auto;width:50%}.col-sm-7{flex:0 0 auto;width:58.33333333%}.col-sm-8{flex:0 0 auto;width:66.66666667%}.col-sm-9{flex:0 0 auto;width:75%}.col-sm-10{flex:0 0 auto;width:83.33333333%}.col-sm-11{flex:0 0 auto;width:91.66666667%}.col-sm-12{flex:0 0 auto;width:100%}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.33333333%}.offset-sm-2{margin-left:16.66666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.33333333%}.offset-sm-5{margin-left:41.66666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.33333333%}.offset-sm-8{margin-left:66.66666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.33333333%}.offset-sm-11{margin-left:91.66666667%}.g-sm-0,.gx-sm-0{--bs-gutter-x:0}.g-sm-0,.gy-sm-0{--bs-gutter-y:0}.g-sm-1,.gx-sm-1{--bs-gutter-x:0.25rem}.g-sm-1,.gy-sm-1{--bs-gutter-y:0.25rem}.g-sm-2,.gx-sm-2{--bs-gutter-x:0.5rem}.g-sm-2,.gy-sm-2{--bs-gutter-y:0.5rem}.g-sm-3,.gx-sm-3{--bs-gutter-x:1rem}.g-sm-3,.gy-sm-3{--bs-gutter-y:1rem}.g-sm-4,.gx-sm-4{--bs-gutter-x:1.5rem}.g-sm-4,.gy-sm-4{--bs-gutter-y:1.5rem}.g-sm-5,.gx-sm-5{--bs-gutter-x:3rem}.g-sm-5,.gy-sm-5{--bs-gutter-y:3rem}}@media (min-width:768px){.col-md-auto{flex:0 0 auto;width:auto}.col-md-1{flex:0 0 auto;width:8.33333333%}.col-md-2{flex:0 0 auto;width:16.66666667%}.col-md-3{flex:0 0 auto;width:25%}.col-md-4{flex:0 0 auto;width:33.33333333%}.col-md-5{flex:0 0 auto;width:41.66666667%}.col-md-6{flex:0 0 auto;width:50%}.col-md-7{flex:0 0 auto;width:58.33333333%}.col-md-8{flex:0 0 auto;width:66.66666667%}.col-md-9{flex:0 0 auto;width:75%}.col-md-10{flex:0 0 auto;width:83.33333333%}.col-md-11{flex:0 0 auto;width:91.66666667%}.col-md-12{flex:0 0 auto;width:100%}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.33333333%}.offset-md-2{margin-left:16.66666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.33333333%}.offset-md-5{margin-left:41.66666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.33333333%}.offset-md-8{margin-left:66.66666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.33333333%}.offset-md-11{margin-left:91.66666667%}.g-md-0,.gx-md-0{--bs-gutter-x:0}.g-md-0,.gy-md-0{--bs-gutter-y:0}.g-md-1,.gx-md-1{--bs-gutter-x:0.25rem}.g-md-1,.gy-md-1{--bs-gutter-y:0.25rem}.g-md-2,.gx-md-2{--bs-gutter-x:0.5rem}.g-md-2,.gy-md-2{--bs-gutter-y:0.5rem}.g-md-3,.gx-md-3{--bs-gutter-x:1rem}.g-md-3,.gy-md-3{--bs-gutter-y:1rem}.g-md-4,.gx-md-4{--bs-gutter-x:1.5rem}.g-md-4,.gy-md-4{--bs-gutter-y:1.5rem}.g-md-5,.gx-md-5{--bs-gutter-x:3rem}.g-md-5,.gy-md-5{--bs-gutter-y:3rem}}@media (min-width:992px){.col-lg-auto{flex:0 0 auto;width:auto}.col-lg-1{flex:0 0 auto;width:8.33333333%}.col-lg-2{flex:0 0 auto;width:16.66666667%}.col-lg-3{flex:0 0 auto;width:25%}.col-lg-4{flex:0 0 auto;width:33.33333333%}.col-lg-5{flex:0 0 auto;width:41.66666667%}.col-lg-6{flex:0 0 auto;width:50%}.col-lg-7{flex:0 0 auto;width:58.33333333%}.col-lg-8{flex:0 0 auto;width:66.66666667%}.col-lg-9{flex:0 0 auto;width:75%}.col-lg-10{flex:0 0 auto;width:83.33333333%}.col-lg-11{flex:0 0 auto;width:91.66666667%}.col-lg-12{flex:0 0 auto;width:100%}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.33333333%}.offset-lg-2{margin-left:16.66666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.33333333%}.offset-lg-5{margin-left:41.66666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.33333333%}.offset-lg-8{margin-left:66.66666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.33333333%}.offset-lg-11{margin-left:91.66666667%}.g-lg-0,.gx-lg-0{--bs-gutter-x:0}.g-lg-0,.gy-lg-0{--bs-gutter-y:0}.g-lg-1,.gx-lg-1{--bs-gutter-x:0.25rem}.g-lg-1,.gy-lg-1{--bs-gutter-y:0.25rem}.g-lg-2,.gx-lg-2{--bs-gutter-x:0.5rem}.g-lg-2,.gy-lg-2{--bs-gutter-y:0.5rem}.g-lg-3,.gx-lg-3{--bs-gutter-x:1rem}.g-lg-3,.gy-lg-3{--bs-gutter-y:1rem}.g-lg-4,.gx-lg-4{--bs-gutter-x:1.5rem}.g-lg-4,.gy-lg-4{--bs-gutter-y:1.5rem}.g-lg-5,.gx-lg-5{--bs-gutter-x:3rem}.g-lg-5,.gy-lg-5{--bs-gutter-y:3rem}}@media (min-width:1200px){.col-xl-auto{flex:0 0 auto;width:auto}.col-xl-1{flex:0 0 auto;width:8.33333333%}.col-xl-2{flex:0 0 auto;width:16.66666667%}.col-xl-3{flex:0 0 auto;width:25%}.col-xl-4{flex:0 0 auto;width:33.33333333%}.col-xl-5{flex:0 0 auto;width:41.66666667%}.col-xl-6{flex:0 0 auto;width:50%}.col-xl-7{flex:0 0 auto;width:58.33333333%}.col-xl-8{flex:0 0 auto;width:66.66666667%}.col-xl-9{flex:0 0 auto;width:75%}.col-xl-10{flex:0 0 auto;width:83.33333333%}.col-xl-11{flex:0 0 auto;width:91.66666667%}.col-xl-12{flex:0 0 auto;width:100%}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.33333333%}.offset-xl-2{margin-left:16.66666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.33333333%}.offset-xl-5{margin-left:41.66666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.33333333%}.offset-xl-8{margin-left:66.66666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.33333333%}.offset-xl-11{margin-left:91.66666667%}.g-xl-0,.gx-xl-0{--bs-gutter-x:0}.g-xl-0,.gy-xl-0{--bs-gutter-y:0}.g-xl-1,.gx-xl-1{--bs-gutter-x:0.25rem}.g-xl-1,.gy-xl-1{--bs-gutter-y:0.25rem}.g-xl-2,.gx-xl-2{--bs-gutter-x:0.5rem}.g-xl-2,.gy-xl-2{--bs-gutter-y:0.5rem}.g-xl-3,.gx-xl-3{--bs-gutter-x:1rem}.g-xl-3,.gy-xl-3{--bs-gutter-y:1rem}.g-xl-4,.gx-xl-4{--bs-gutter-x:1.5rem}.g-xl-4,.gy-xl-4{--bs-gutter-y:1.5rem}.g-xl-5,.gx-xl-5{--bs-gutter-x:3rem}.g-xl-5,.gy-xl-5{--bs-gutter-y:3rem}}@media (min-width:1400px){.col-xxl-auto{flex:0 0 auto;width:auto}.col-xxl-1{flex:0 0 auto;width:8.33333333%}.col-xxl-2{flex:0 0 auto;width:16.66666667%}.col-xxl-3{flex:0 0 auto;width:25%}.col-xxl-4{flex:0 0 auto;width:33.33333333%}.col-xxl-5{flex:0 0 auto;width:41.66666667%}.col-xxl-6{flex:0 0 auto;width:50%}.col-xxl-7{flex:0 0 auto;width:58.33333333%}.col-xxl-8{flex:0 0 auto;width:66.66666667%}.col-xxl-9{flex:0 0 auto;width:75%}.col-xxl-10{flex:0 0 auto;width:83.33333333%}.col-xxl-11{flex:0 0 auto;width:91.66666667%}.col-xxl-12{flex:0 0 auto;width:100%}.offset-xxl-0{margin-left:0}.offset-xxl-1{margin-left:8.33333333%}.offset-xxl-2{margin-left:16.66666667%}.offset-xxl-3{margin-left:25%}.offset-xxl-4{margin-left:33.33333333%}.offset-xxl-5{margin-left:41.66666667%}.offset-xxl-6{margin-left:50%}.offset-xxl-7{margin-left:58.33333333%}.offset-xxl-8{margin-left:66.66666667%}.offset-xxl-9{margin-left:75%}.offset-xxl-10{margin-left:83.33333333%}.offset-xxl-11{margin-left:91.66666667%}.g-xxl-0,.gx-xxl-0{--bs-gutter-x:0}.g-xxl-0,.gy-xxl-0{--bs-gutter-y:0}.g-xxl-1,.gx-xxl-1{--bs-gutter-x:0.25rem}.g-xxl-1,.gy-xxl-1{--bs-gutter-y:0.25rem}.g-xxl-2,.gx-xxl-2{--bs-gutter-x:0.5rem}.g-xxl-2,.gy-xxl-2{--bs-gutter-y:0.5rem}.g-xxl-3,.gx-xxl-3{--bs-gutter-x:1rem}.g-xxl-3,.gy-xxl-3{--bs-gutter-y:1rem}.g-xxl-4,.gx-xxl-4{--bs-gutter-x:1.5rem}.g-xxl-4,.gy-xxl-4{--bs-gutter-y:1.5rem}.g-xxl-5,.gx-xxl-5{--bs-gutter-x:3rem}.g-xxl-5,.gy-xxl-5{--bs-gutter-y:3rem}}.table{--bs-table-bg:transparent;--bs-table-accent-bg:transparent;--bs-table-striped-color:#212529;--bs-table-striped-bg:rgba(0, 0, 0, 0.05);--bs-table-active-color:#212529;--bs-table-active-bg:rgba(0, 0, 0, 0.1);--bs-table-hover-color:#212529;--bs-table-hover-bg:rgba(0, 0, 0, 0.075);width:100%;margin-bottom:1rem;color:#212529;vertical-align:top;border-color:#dee2e6}.table>:not(caption)>*>*{padding:.5rem .5rem;background-color:var(--bs-table-bg);border-bottom-width:1px;box-shadow:inset 0 0 0 9999px var(--bs-table-accent-bg)}.table>tbody{vertical-align:inherit}.table>thead{vertical-align:bottom}.table>:not(:last-child)>:last-child>*{border-bottom-color:currentColor}.caption-top{caption-side:top}.table-sm>:not(caption)>*>*{padding:.25rem .25rem}.table-bordered>:not(caption)>*{border-width:1px 0}.table-bordered>:not(caption)>*>*{border-width:0 1px}.table-borderless>:not(caption)>*>*{border-bottom-width:0}.table-striped>tbody>tr:nth-of-type(odd){--bs-table-accent-bg:var(--bs-table-striped-bg);color:var(--bs-table-striped-color)}.table-active{--bs-table-accent-bg:var(--bs-table-active-bg);color:var(--bs-table-active-color)}.table-hover>tbody>tr:hover{--bs-table-accent-bg:var(--bs-table-hover-bg);color:var(--bs-table-hover-color)}.table-primary{--bs-table-bg:#cfe2ff;--bs-table-striped-bg:#c5d7f2;--bs-table-striped-color:#000;--bs-table-active-bg:#bacbe6;--bs-table-active-color:#000;--bs-table-hover-bg:#bfd1ec;--bs-table-hover-color:#000;color:#000;border-color:#bacbe6}.table-secondary{--bs-table-bg:#e2e3e5;--bs-table-striped-bg:#d7d8da;--bs-table-striped-color:#000;--bs-table-active-bg:#cbccce;--bs-table-active-color:#000;--bs-table-hover-bg:#d1d2d4;--bs-table-hover-color:#000;color:#000;border-color:#cbccce}.table-success{--bs-table-bg:#d1e7dd;--bs-table-striped-bg:#c7dbd2;--bs-table-striped-color:#000;--bs-table-active-bg:#bcd0c7;--bs-table-active-color:#000;--bs-table-hover-bg:#c1d6cc;--bs-table-hover-color:#000;color:#000;border-color:#bcd0c7}.table-info{--bs-table-bg:#cff4fc;--bs-table-striped-bg:#c5e8ef;--bs-table-striped-color:#000;--bs-table-active-bg:#badce3;--bs-table-active-color:#000;--bs-table-hover-bg:#bfe2e9;--bs-table-hover-color:#000;color:#000;border-color:#badce3}.table-warning{--bs-table-bg:#fff3cd;--bs-table-striped-bg:#f2e7c3;--bs-table-striped-color:#000;--bs-table-active-bg:#e6dbb9;--bs-table-active-color:#000;--bs-table-hover-bg:#ece1be;--bs-table-hover-color:#000;color:#000;border-color:#e6dbb9}.table-danger{--bs-table-bg:#f8d7da;--bs-table-striped-bg:#eccccf;--bs-table-striped-color:#000;--bs-table-active-bg:#dfc2c4;--bs-table-active-color:#000;--bs-table-hover-bg:#e5c7ca;--bs-table-hover-color:#000;color:#000;border-color:#dfc2c4}.table-light{--bs-table-bg:#f8f9fa;--bs-table-striped-bg:#ecedee;--bs-table-striped-color:#000;--bs-table-active-bg:#dfe0e1;--bs-table-active-color:#000;--bs-table-hover-bg:#e5e6e7;--bs-table-hover-color:#000;color:#000;border-color:#dfe0e1}.table-dark{--bs-table-bg:#212529;--bs-table-striped-bg:#2c3034;--bs-table-striped-color:#fff;--bs-table-active-bg:#373b3e;--bs-table-active-color:#fff;--bs-table-hover-bg:#323539;--bs-table-hover-color:#fff;color:#fff;border-color:#373b3e}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}@media (max-width:575.98px){.table-responsive-sm{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:767.98px){.table-responsive-md{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:991.98px){.table-responsive-lg{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:1199.98px){.table-responsive-xl{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:1399.98px){.table-responsive-xxl{overflow-x:auto;-webkit-overflow-scrolling:touch}}.form-label{margin-bottom:.5rem}.col-form-label{padding-top:calc(.375rem + 1px);padding-bottom:calc(.375rem + 1px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + 1px);padding-bottom:calc(.5rem + 1px);font-size:1.25rem}.col-form-label-sm{padding-top:calc(.25rem + 1px);padding-bottom:calc(.25rem + 1px);font-size:.875rem}.form-text{margin-top:.25rem;font-size:.875em;color:#6c757d}.form-control{display:block;width:100%;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#212529;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:.25rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control{transition:none}}.form-control[type=file]{overflow:hidden}.form-control[type=file]:not(:disabled):not([readonly]){cursor:pointer}.form-control:focus{color:#212529;background-color:#fff;border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.form-control::-webkit-date-and-time-value{height:1.5em}.form-control::-moz-placeholder{color:#6c757d;opacity:1}.form-control::placeholder{color:#6c757d;opacity:1}.form-control:disabled,.form-control[readonly]{background-color:#e9ecef;opacity:1}.form-control::file-selector-button{padding:.375rem .75rem;margin:-.375rem -.75rem;-webkit-margin-end:.75rem;margin-inline-end:.75rem;color:#212529;background-color:#e9ecef;pointer-events:none;border-color:inherit;border-style:solid;border-width:0;border-inline-end-width:1px;border-radius:0;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control::file-selector-button{transition:none}}.form-control:hover:not(:disabled):not([readonly])::file-selector-button{background-color:#dde0e3}.form-control::-webkit-file-upload-button{padding:.375rem .75rem;margin:-.375rem -.75rem;-webkit-margin-end:.75rem;margin-inline-end:.75rem;color:#212529;background-color:#e9ecef;pointer-events:none;border-color:inherit;border-style:solid;border-width:0;border-inline-end-width:1px;border-radius:0;-webkit-transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control::-webkit-file-upload-button{-webkit-transition:none;transition:none}}.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button{background-color:#dde0e3}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;line-height:1.5;color:#212529;background-color:transparent;border:solid transparent;border-width:1px 0}.form-control-plaintext.form-control-lg,.form-control-plaintext.form-control-sm{padding-right:0;padding-left:0}.form-control-sm{min-height:calc(1.5em + (.5rem + 2px));padding:.25rem .5rem;font-size:.875rem;border-radius:.2rem}.form-control-sm::file-selector-button{padding:.25rem .5rem;margin:-.25rem -.5rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem}.form-control-sm::-webkit-file-upload-button{padding:.25rem .5rem;margin:-.25rem -.5rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem}.form-control-lg{min-height:calc(1.5em + (1rem + 2px));padding:.5rem 1rem;font-size:1.25rem;border-radius:.3rem}.form-control-lg::file-selector-button{padding:.5rem 1rem;margin:-.5rem -1rem;-webkit-margin-end:1rem;margin-inline-end:1rem}.form-control-lg::-webkit-file-upload-button{padding:.5rem 1rem;margin:-.5rem -1rem;-webkit-margin-end:1rem;margin-inline-end:1rem}textarea.form-control{min-height:calc(1.5em + (.75rem + 2px))}textarea.form-control-sm{min-height:calc(1.5em + (.5rem + 2px))}textarea.form-control-lg{min-height:calc(1.5em + (1rem + 2px))}.form-control-color{max-width:3rem;height:auto;padding:.375rem}.form-control-color:not(:disabled):not([readonly]){cursor:pointer}.form-control-color::-moz-color-swatch{height:1.5em;border-radius:.25rem}.form-control-color::-webkit-color-swatch{height:1.5em;border-radius:.25rem}.form-select{display:block;width:100%;padding:.375rem 2.25rem .375rem .75rem;-moz-padding-start:calc(0.75rem - 3px);font-size:1rem;font-weight:400;line-height:1.5;color:#212529;background-color:#fff;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right .75rem center;background-size:16px 12px;border:1px solid #ced4da;border-radius:.25rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-appearance:none;-moz-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.form-select{transition:none}}.form-select:focus{border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.form-select[multiple],.form-select[size]:not([size="1"]){padding-right:.75rem;background-image:none}.form-select:disabled{background-color:#e9ecef}.form-select:-moz-focusring{color:transparent;text-shadow:0 0 0 #212529}.form-select-sm{padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:.875rem}.form-select-lg{padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem}.form-check{display:block;min-height:1.5rem;padding-left:1.5em;margin-bottom:.125rem}.form-check .form-check-input{float:left;margin-left:-1.5em}.form-check-input{width:1em;height:1em;margin-top:.25em;vertical-align:top;background-color:#fff;background-repeat:no-repeat;background-position:center;background-size:contain;border:1px solid rgba(0,0,0,.25);-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-print-color-adjust:exact;color-adjust:exact}.form-check-input[type=checkbox]{border-radius:.25em}.form-check-input[type=radio]{border-radius:50%}.form-check-input:active{filter:brightness(90%)}.form-check-input:focus{border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.form-check-input:checked{background-color:#0d6efd;border-color:#0d6efd}.form-check-input:checked[type=checkbox]{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e")}.form-check-input:checked[type=radio]{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e")}.form-check-input[type=checkbox]:indeterminate{background-color:#0d6efd;border-color:#0d6efd;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e")}.form-check-input:disabled{pointer-events:none;filter:none;opacity:.5}.form-check-input:disabled~.form-check-label,.form-check-input[disabled]~.form-check-label{opacity:.5}.form-switch{padding-left:2.5em}.form-switch .form-check-input{width:2em;margin-left:-2.5em;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e");background-position:left center;border-radius:2em;transition:background-position .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-switch .form-check-input{transition:none}}.form-switch .form-check-input:focus{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2386b7fe'/%3e%3c/svg%3e")}.form-switch .form-check-input:checked{background-position:right center;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e")}.form-check-inline{display:inline-block;margin-right:1rem}.btn-check{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.btn-check:disabled+.btn,.btn-check[disabled]+.btn{pointer-events:none;filter:none;opacity:.65}.form-range{width:100%;height:1.5rem;padding:0;background-color:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none}.form-range:focus{outline:0}.form-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .25rem rgba(13,110,253,.25)}.form-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .25rem rgba(13,110,253,.25)}.form-range::-moz-focus-outer{border:0}.form-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;background-color:#0d6efd;border:0;border-radius:1rem;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.form-range::-webkit-slider-thumb{-webkit-transition:none;transition:none}}.form-range::-webkit-slider-thumb:active{background-color:#b6d4fe}.form-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.form-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#0d6efd;border:0;border-radius:1rem;-moz-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-moz-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.form-range::-moz-range-thumb{-moz-transition:none;transition:none}}.form-range::-moz-range-thumb:active{background-color:#b6d4fe}.form-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.form-range:disabled{pointer-events:none}.form-range:disabled::-webkit-slider-thumb{background-color:#adb5bd}.form-range:disabled::-moz-range-thumb{background-color:#adb5bd}.form-floating{position:relative}.form-floating>.form-control,.form-floating>.form-select{height:calc(3.5rem + 2px);line-height:1.25}.form-floating>label{position:absolute;top:0;left:0;height:100%;padding:1rem .75rem;pointer-events:none;border:1px solid transparent;transform-origin:0 0;transition:opacity .1s ease-in-out,transform .1s ease-in-out}@media (prefers-reduced-motion:reduce){.form-floating>label{transition:none}}.form-floating>.form-control{padding:1rem .75rem}.form-floating>.form-control::-moz-placeholder{color:transparent}.form-floating>.form-control::placeholder{color:transparent}.form-floating>.form-control:not(:-moz-placeholder-shown){padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control:focus,.form-floating>.form-control:not(:placeholder-shown){padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control:-webkit-autofill{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-select{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control:not(:-moz-placeholder-shown)~label{opacity:.65;transform:scale(.85) translateY(-.5rem) translateX(.15rem)}.form-floating>.form-control:focus~label,.form-floating>.form-control:not(:placeholder-shown)~label,.form-floating>.form-select~label{opacity:.65;transform:scale(.85) translateY(-.5rem) translateX(.15rem)}.form-floating>.form-control:-webkit-autofill~label{opacity:.65;transform:scale(.85) translateY(-.5rem) translateX(.15rem)}.input-group{position:relative;display:flex;flex-wrap:wrap;align-items:stretch;width:100%}.input-group>.form-control,.input-group>.form-select{position:relative;flex:1 1 auto;width:1%;min-width:0}.input-group>.form-control:focus,.input-group>.form-select:focus{z-index:3}.input-group .btn{position:relative;z-index:2}.input-group .btn:focus{z-index:3}.input-group-text{display:flex;align-items:center;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#212529;text-align:center;white-space:nowrap;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.25rem}.input-group-lg>.btn,.input-group-lg>.form-control,.input-group-lg>.form-select,.input-group-lg>.input-group-text{padding:.5rem 1rem;font-size:1.25rem;border-radius:.3rem}.input-group-sm>.btn,.input-group-sm>.form-control,.input-group-sm>.form-select,.input-group-sm>.input-group-text{padding:.25rem .5rem;font-size:.875rem;border-radius:.2rem}.input-group-lg>.form-select,.input-group-sm>.form-select{padding-right:3rem}.input-group:not(.has-validation)>.dropdown-toggle:nth-last-child(n+3),.input-group:not(.has-validation)>:not(:last-child):not(.dropdown-toggle):not(.dropdown-menu){border-top-right-radius:0;border-bottom-right-radius:0}.input-group.has-validation>.dropdown-toggle:nth-last-child(n+4),.input-group.has-validation>:nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback){margin-left:-1px;border-top-left-radius:0;border-bottom-left-radius:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:.875em;color:#198754}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;color:#fff;background-color:rgba(25,135,84,.9);border-radius:.25rem}.is-valid~.valid-feedback,.is-valid~.valid-tooltip,.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip{display:block}.form-control.is-valid,.was-validated .form-control:valid{border-color:#198754;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-valid:focus,.was-validated .form-control:valid:focus{border-color:#198754;box-shadow:0 0 0 .25rem rgba(25,135,84,.25)}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.form-select.is-valid,.was-validated .form-select:valid{border-color:#198754}.form-select.is-valid:not([multiple]):not([size]),.form-select.is-valid:not([multiple])[size="1"],.was-validated .form-select:valid:not([multiple]):not([size]),.was-validated .form-select:valid:not([multiple])[size="1"]{padding-right:4.125rem;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"),url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(.75em + .375rem) calc(.75em + .375rem)}.form-select.is-valid:focus,.was-validated .form-select:valid:focus{border-color:#198754;box-shadow:0 0 0 .25rem rgba(25,135,84,.25)}.form-check-input.is-valid,.was-validated .form-check-input:valid{border-color:#198754}.form-check-input.is-valid:checked,.was-validated .form-check-input:valid:checked{background-color:#198754}.form-check-input.is-valid:focus,.was-validated .form-check-input:valid:focus{box-shadow:0 0 0 .25rem rgba(25,135,84,.25)}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:#198754}.form-check-inline .form-check-input~.valid-feedback{margin-left:.5em}.input-group .form-control.is-valid,.input-group .form-select.is-valid,.was-validated .input-group .form-control:valid,.was-validated .input-group .form-select:valid{z-index:1}.input-group .form-control.is-valid:focus,.input-group .form-select.is-valid:focus,.was-validated .input-group .form-control:valid:focus,.was-validated .input-group .form-select:valid:focus{z-index:3}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:.875em;color:#dc3545}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;color:#fff;background-color:rgba(220,53,69,.9);border-radius:.25rem}.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip,.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip{display:block}.form-control.is-invalid,.was-validated .form-control:invalid{border-color:#dc3545;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-invalid:focus,.was-validated .form-control:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .25rem rgba(220,53,69,.25)}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.form-select.is-invalid,.was-validated .form-select:invalid{border-color:#dc3545}.form-select.is-invalid:not([multiple]):not([size]),.form-select.is-invalid:not([multiple])[size="1"],.was-validated .form-select:invalid:not([multiple]):not([size]),.was-validated .form-select:invalid:not([multiple])[size="1"]{padding-right:4.125rem;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"),url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(.75em + .375rem) calc(.75em + .375rem)}.form-select.is-invalid:focus,.was-validated .form-select:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .25rem rgba(220,53,69,.25)}.form-check-input.is-invalid,.was-validated .form-check-input:invalid{border-color:#dc3545}.form-check-input.is-invalid:checked,.was-validated .form-check-input:invalid:checked{background-color:#dc3545}.form-check-input.is-invalid:focus,.was-validated .form-check-input:invalid:focus{box-shadow:0 0 0 .25rem rgba(220,53,69,.25)}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:#dc3545}.form-check-inline .form-check-input~.invalid-feedback{margin-left:.5em}.input-group .form-control.is-invalid,.input-group .form-select.is-invalid,.was-validated .input-group .form-control:invalid,.was-validated .input-group .form-select:invalid{z-index:2}.input-group .form-control.is-invalid:focus,.input-group .form-select.is-invalid:focus,.was-validated .input-group .form-control:invalid:focus,.was-validated .input-group .form-select:invalid:focus{z-index:3}.btn{display:inline-block;font-weight:400;line-height:1.5;color:#212529;text-align:center;text-decoration:none;vertical-align:middle;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;background-color:transparent;border:1px solid transparent;padding:.375rem .75rem;font-size:1rem;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.btn{transition:none}}.btn:hover{color:#212529}.btn-check:focus+.btn,.btn:focus{outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.btn.disabled,.btn:disabled,fieldset:disabled .btn{pointer-events:none;opacity:.65}.btn-primary{color:#fff;background-color:#0d6efd;border-color:#0d6efd}.btn-primary:hover{color:#fff;background-color:#0b5ed7;border-color:#0a58ca}.btn-check:focus+.btn-primary,.btn-primary:focus{color:#fff;background-color:#0b5ed7;border-color:#0a58ca;box-shadow:0 0 0 .25rem rgba(49,132,253,.5)}.btn-check:active+.btn-primary,.btn-check:checked+.btn-primary,.btn-primary.active,.btn-primary:active,.show>.btn-primary.dropdown-toggle{color:#fff;background-color:#0a58ca;border-color:#0a53be}.btn-check:active+.btn-primary:focus,.btn-check:checked+.btn-primary:focus,.btn-primary.active:focus,.btn-primary:active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(49,132,253,.5)}.btn-primary.disabled,.btn-primary:disabled{color:#fff;background-color:#0d6efd;border-color:#0d6efd}.btn-secondary{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:hover{color:#fff;background-color:#5c636a;border-color:#565e64}.btn-check:focus+.btn-secondary,.btn-secondary:focus{color:#fff;background-color:#5c636a;border-color:#565e64;box-shadow:0 0 0 .25rem rgba(130,138,145,.5)}.btn-check:active+.btn-secondary,.btn-check:checked+.btn-secondary,.btn-secondary.active,.btn-secondary:active,.show>.btn-secondary.dropdown-toggle{color:#fff;background-color:#565e64;border-color:#51585e}.btn-check:active+.btn-secondary:focus,.btn-check:checked+.btn-secondary:focus,.btn-secondary.active:focus,.btn-secondary:active:focus,.show>.btn-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(130,138,145,.5)}.btn-secondary.disabled,.btn-secondary:disabled{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-success{color:#fff;background-color:#198754;border-color:#198754}.btn-success:hover{color:#fff;background-color:#157347;border-color:#146c43}.btn-check:focus+.btn-success,.btn-success:focus{color:#fff;background-color:#157347;border-color:#146c43;box-shadow:0 0 0 .25rem rgba(60,153,110,.5)}.btn-check:active+.btn-success,.btn-check:checked+.btn-success,.btn-success.active,.btn-success:active,.show>.btn-success.dropdown-toggle{color:#fff;background-color:#146c43;border-color:#13653f}.btn-check:active+.btn-success:focus,.btn-check:checked+.btn-success:focus,.btn-success.active:focus,.btn-success:active:focus,.show>.btn-success.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(60,153,110,.5)}.btn-success.disabled,.btn-success:disabled{color:#fff;background-color:#198754;border-color:#198754}.btn-info{color:#000;background-color:#0dcaf0;border-color:#0dcaf0}.btn-info:hover{color:#000;background-color:#31d2f2;border-color:#25cff2}.btn-check:focus+.btn-info,.btn-info:focus{color:#000;background-color:#31d2f2;border-color:#25cff2;box-shadow:0 0 0 .25rem rgba(11,172,204,.5)}.btn-check:active+.btn-info,.btn-check:checked+.btn-info,.btn-info.active,.btn-info:active,.show>.btn-info.dropdown-toggle{color:#000;background-color:#3dd5f3;border-color:#25cff2}.btn-check:active+.btn-info:focus,.btn-check:checked+.btn-info:focus,.btn-info.active:focus,.btn-info:active:focus,.show>.btn-info.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(11,172,204,.5)}.btn-info.disabled,.btn-info:disabled{color:#000;background-color:#0dcaf0;border-color:#0dcaf0}.btn-warning{color:#000;background-color:#ffc107;border-color:#ffc107}.btn-warning:hover{color:#000;background-color:#ffca2c;border-color:#ffc720}.btn-check:focus+.btn-warning,.btn-warning:focus{color:#000;background-color:#ffca2c;border-color:#ffc720;box-shadow:0 0 0 .25rem rgba(217,164,6,.5)}.btn-check:active+.btn-warning,.btn-check:checked+.btn-warning,.btn-warning.active,.btn-warning:active,.show>.btn-warning.dropdown-toggle{color:#000;background-color:#ffcd39;border-color:#ffc720}.btn-check:active+.btn-warning:focus,.btn-check:checked+.btn-warning:focus,.btn-warning.active:focus,.btn-warning:active:focus,.show>.btn-warning.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(217,164,6,.5)}.btn-warning.disabled,.btn-warning:disabled{color:#000;background-color:#ffc107;border-color:#ffc107}.btn-danger{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:hover{color:#fff;background-color:#bb2d3b;border-color:#b02a37}.btn-check:focus+.btn-danger,.btn-danger:focus{color:#fff;background-color:#bb2d3b;border-color:#b02a37;box-shadow:0 0 0 .25rem rgba(225,83,97,.5)}.btn-check:active+.btn-danger,.btn-check:checked+.btn-danger,.btn-danger.active,.btn-danger:active,.show>.btn-danger.dropdown-toggle{color:#fff;background-color:#b02a37;border-color:#a52834}.btn-check:active+.btn-danger:focus,.btn-check:checked+.btn-danger:focus,.btn-danger.active:focus,.btn-danger:active:focus,.show>.btn-danger.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(225,83,97,.5)}.btn-danger.disabled,.btn-danger:disabled{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-light{color:#000;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:hover{color:#000;background-color:#f9fafb;border-color:#f9fafb}.btn-check:focus+.btn-light,.btn-light:focus{color:#000;background-color:#f9fafb;border-color:#f9fafb;box-shadow:0 0 0 .25rem rgba(211,212,213,.5)}.btn-check:active+.btn-light,.btn-check:checked+.btn-light,.btn-light.active,.btn-light:active,.show>.btn-light.dropdown-toggle{color:#000;background-color:#f9fafb;border-color:#f9fafb}.btn-check:active+.btn-light:focus,.btn-check:checked+.btn-light:focus,.btn-light.active:focus,.btn-light:active:focus,.show>.btn-light.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(211,212,213,.5)}.btn-light.disabled,.btn-light:disabled{color:#000;background-color:#f8f9fa;border-color:#f8f9fa}.btn-dark{color:#fff;background-color:#212529;border-color:#212529}.btn-dark:hover{color:#fff;background-color:#1c1f23;border-color:#1a1e21}.btn-check:focus+.btn-dark,.btn-dark:focus{color:#fff;background-color:#1c1f23;border-color:#1a1e21;box-shadow:0 0 0 .25rem rgba(66,70,73,.5)}.btn-check:active+.btn-dark,.btn-check:checked+.btn-dark,.btn-dark.active,.btn-dark:active,.show>.btn-dark.dropdown-toggle{color:#fff;background-color:#1a1e21;border-color:#191c1f}.btn-check:active+.btn-dark:focus,.btn-check:checked+.btn-dark:focus,.btn-dark.active:focus,.btn-dark:active:focus,.show>.btn-dark.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(66,70,73,.5)}.btn-dark.disabled,.btn-dark:disabled{color:#fff;background-color:#212529;border-color:#212529}.btn-outline-primary{color:#0d6efd;border-color:#0d6efd}.btn-outline-primary:hover{color:#fff;background-color:#0d6efd;border-color:#0d6efd}.btn-check:focus+.btn-outline-primary,.btn-outline-primary:focus{box-shadow:0 0 0 .25rem rgba(13,110,253,.5)}.btn-check:active+.btn-outline-primary,.btn-check:checked+.btn-outline-primary,.btn-outline-primary.active,.btn-outline-primary.dropdown-toggle.show,.btn-outline-primary:active{color:#fff;background-color:#0d6efd;border-color:#0d6efd}.btn-check:active+.btn-outline-primary:focus,.btn-check:checked+.btn-outline-primary:focus,.btn-outline-primary.active:focus,.btn-outline-primary.dropdown-toggle.show:focus,.btn-outline-primary:active:focus{box-shadow:0 0 0 .25rem rgba(13,110,253,.5)}.btn-outline-primary.disabled,.btn-outline-primary:disabled{color:#0d6efd;background-color:transparent}.btn-outline-secondary{color:#6c757d;border-color:#6c757d}.btn-outline-secondary:hover{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-check:focus+.btn-outline-secondary,.btn-outline-secondary:focus{box-shadow:0 0 0 .25rem rgba(108,117,125,.5)}.btn-check:active+.btn-outline-secondary,.btn-check:checked+.btn-outline-secondary,.btn-outline-secondary.active,.btn-outline-secondary.dropdown-toggle.show,.btn-outline-secondary:active{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-check:active+.btn-outline-secondary:focus,.btn-check:checked+.btn-outline-secondary:focus,.btn-outline-secondary.active:focus,.btn-outline-secondary.dropdown-toggle.show:focus,.btn-outline-secondary:active:focus{box-shadow:0 0 0 .25rem rgba(108,117,125,.5)}.btn-outline-secondary.disabled,.btn-outline-secondary:disabled{color:#6c757d;background-color:transparent}.btn-outline-success{color:#198754;border-color:#198754}.btn-outline-success:hover{color:#fff;background-color:#198754;border-color:#198754}.btn-check:focus+.btn-outline-success,.btn-outline-success:focus{box-shadow:0 0 0 .25rem rgba(25,135,84,.5)}.btn-check:active+.btn-outline-success,.btn-check:checked+.btn-outline-success,.btn-outline-success.active,.btn-outline-success.dropdown-toggle.show,.btn-outline-success:active{color:#fff;background-color:#198754;border-color:#198754}.btn-check:active+.btn-outline-success:focus,.btn-check:checked+.btn-outline-success:focus,.btn-outline-success.active:focus,.btn-outline-success.dropdown-toggle.show:focus,.btn-outline-success:active:focus{box-shadow:0 0 0 .25rem rgba(25,135,84,.5)}.btn-outline-success.disabled,.btn-outline-success:disabled{color:#198754;background-color:transparent}.btn-outline-info{color:#0dcaf0;border-color:#0dcaf0}.btn-outline-info:hover{color:#000;background-color:#0dcaf0;border-color:#0dcaf0}.btn-check:focus+.btn-outline-info,.btn-outline-info:focus{box-shadow:0 0 0 .25rem rgba(13,202,240,.5)}.btn-check:active+.btn-outline-info,.btn-check:checked+.btn-outline-info,.btn-outline-info.active,.btn-outline-info.dropdown-toggle.show,.btn-outline-info:active{color:#000;background-color:#0dcaf0;border-color:#0dcaf0}.btn-check:active+.btn-outline-info:focus,.btn-check:checked+.btn-outline-info:focus,.btn-outline-info.active:focus,.btn-outline-info.dropdown-toggle.show:focus,.btn-outline-info:active:focus{box-shadow:0 0 0 .25rem rgba(13,202,240,.5)}.btn-outline-info.disabled,.btn-outline-info:disabled{color:#0dcaf0;background-color:transparent}.btn-outline-warning{color:#ffc107;border-color:#ffc107}.btn-outline-warning:hover{color:#000;background-color:#ffc107;border-color:#ffc107}.btn-check:focus+.btn-outline-warning,.btn-outline-warning:focus{box-shadow:0 0 0 .25rem rgba(255,193,7,.5)}.btn-check:active+.btn-outline-warning,.btn-check:checked+.btn-outline-warning,.btn-outline-warning.active,.btn-outline-warning.dropdown-toggle.show,.btn-outline-warning:active{color:#000;background-color:#ffc107;border-color:#ffc107}.btn-check:active+.btn-outline-warning:focus,.btn-check:checked+.btn-outline-warning:focus,.btn-outline-warning.active:focus,.btn-outline-warning.dropdown-toggle.show:focus,.btn-outline-warning:active:focus{box-shadow:0 0 0 .25rem rgba(255,193,7,.5)}.btn-outline-warning.disabled,.btn-outline-warning:disabled{color:#ffc107;background-color:transparent}.btn-outline-danger{color:#dc3545;border-color:#dc3545}.btn-outline-danger:hover{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-check:focus+.btn-outline-danger,.btn-outline-danger:focus{box-shadow:0 0 0 .25rem rgba(220,53,69,.5)}.btn-check:active+.btn-outline-danger,.btn-check:checked+.btn-outline-danger,.btn-outline-danger.active,.btn-outline-danger.dropdown-toggle.show,.btn-outline-danger:active{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-check:active+.btn-outline-danger:focus,.btn-check:checked+.btn-outline-danger:focus,.btn-outline-danger.active:focus,.btn-outline-danger.dropdown-toggle.show:focus,.btn-outline-danger:active:focus{box-shadow:0 0 0 .25rem rgba(220,53,69,.5)}.btn-outline-danger.disabled,.btn-outline-danger:disabled{color:#dc3545;background-color:transparent}.btn-outline-light{color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:hover{color:#000;background-color:#f8f9fa;border-color:#f8f9fa}.btn-check:focus+.btn-outline-light,.btn-outline-light:focus{box-shadow:0 0 0 .25rem rgba(248,249,250,.5)}.btn-check:active+.btn-outline-light,.btn-check:checked+.btn-outline-light,.btn-outline-light.active,.btn-outline-light.dropdown-toggle.show,.btn-outline-light:active{color:#000;background-color:#f8f9fa;border-color:#f8f9fa}.btn-check:active+.btn-outline-light:focus,.btn-check:checked+.btn-outline-light:focus,.btn-outline-light.active:focus,.btn-outline-light.dropdown-toggle.show:focus,.btn-outline-light:active:focus{box-shadow:0 0 0 .25rem rgba(248,249,250,.5)}.btn-outline-light.disabled,.btn-outline-light:disabled{color:#f8f9fa;background-color:transparent}.btn-outline-dark{color:#212529;border-color:#212529}.btn-outline-dark:hover{color:#fff;background-color:#212529;border-color:#212529}.btn-check:focus+.btn-outline-dark,.btn-outline-dark:focus{box-shadow:0 0 0 .25rem rgba(33,37,41,.5)}.btn-check:active+.btn-outline-dark,.btn-check:checked+.btn-outline-dark,.btn-outline-dark.active,.btn-outline-dark.dropdown-toggle.show,.btn-outline-dark:active{color:#fff;background-color:#212529;border-color:#212529}.btn-check:active+.btn-outline-dark:focus,.btn-check:checked+.btn-outline-dark:focus,.btn-outline-dark.active:focus,.btn-outline-dark.dropdown-toggle.show:focus,.btn-outline-dark:active:focus{box-shadow:0 0 0 .25rem rgba(33,37,41,.5)}.btn-outline-dark.disabled,.btn-outline-dark:disabled{color:#212529;background-color:transparent}.btn-link{font-weight:400;color:#0d6efd;text-decoration:underline}.btn-link:hover{color:#0a58ca}.btn-link.disabled,.btn-link:disabled{color:#6c757d}.btn-group-lg>.btn,.btn-lg{padding:.5rem 1rem;font-size:1.25rem;border-radius:.3rem}.btn-group-sm>.btn,.btn-sm{padding:.25rem .5rem;font-size:.875rem;border-radius:.2rem}.fade{transition:opacity .15s linear}@media (prefers-reduced-motion:reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{height:0;overflow:hidden;transition:height .35s ease}@media (prefers-reduced-motion:reduce){.collapsing{transition:none}}.dropdown,.dropend,.dropstart,.dropup{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty::after{margin-left:0}.dropdown-menu{position:absolute;z-index:1000;display:none;min-width:10rem;padding:.5rem 0;margin:0;font-size:1rem;color:#212529;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:.25rem}.dropdown-menu[data-bs-popper]{top:100%;left:0;margin-top:.125rem}.dropdown-menu-start{--bs-position:start}.dropdown-menu-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-end{--bs-position:end}.dropdown-menu-end[data-bs-popper]{right:0;left:auto}@media (min-width:576px){.dropdown-menu-sm-start{--bs-position:start}.dropdown-menu-sm-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-sm-end{--bs-position:end}.dropdown-menu-sm-end[data-bs-popper]{right:0;left:auto}}@media (min-width:768px){.dropdown-menu-md-start{--bs-position:start}.dropdown-menu-md-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-md-end{--bs-position:end}.dropdown-menu-md-end[data-bs-popper]{right:0;left:auto}}@media (min-width:992px){.dropdown-menu-lg-start{--bs-position:start}.dropdown-menu-lg-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-lg-end{--bs-position:end}.dropdown-menu-lg-end[data-bs-popper]{right:0;left:auto}}@media (min-width:1200px){.dropdown-menu-xl-start{--bs-position:start}.dropdown-menu-xl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xl-end{--bs-position:end}.dropdown-menu-xl-end[data-bs-popper]{right:0;left:auto}}@media (min-width:1400px){.dropdown-menu-xxl-start{--bs-position:start}.dropdown-menu-xxl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xxl-end{--bs-position:end}.dropdown-menu-xxl-end[data-bs-popper]{right:0;left:auto}}.dropup .dropdown-menu[data-bs-popper]{top:auto;bottom:100%;margin-top:0;margin-bottom:.125rem}.dropup .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty::after{margin-left:0}.dropend .dropdown-menu[data-bs-popper]{top:0;right:auto;left:100%;margin-top:0;margin-left:.125rem}.dropend .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropend .dropdown-toggle:empty::after{margin-left:0}.dropend .dropdown-toggle::after{vertical-align:0}.dropstart .dropdown-menu[data-bs-popper]{top:0;right:100%;left:auto;margin-top:0;margin-right:.125rem}.dropstart .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:""}.dropstart .dropdown-toggle::after{display:none}.dropstart .dropdown-toggle::before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropstart .dropdown-toggle:empty::after{margin-left:0}.dropstart .dropdown-toggle::before{vertical-align:0}.dropdown-divider{height:0;margin:.5rem 0;overflow:hidden;border-top:1px solid rgba(0,0,0,.15)}.dropdown-item{display:block;width:100%;padding:.25rem 1rem;clear:both;font-weight:400;color:#212529;text-align:inherit;text-decoration:none;white-space:nowrap;background-color:transparent;border:0}.dropdown-item:focus,.dropdown-item:hover{color:#1e2125;background-color:#e9ecef}.dropdown-item.active,.dropdown-item:active{color:#fff;text-decoration:none;background-color:#0d6efd}.dropdown-item.disabled,.dropdown-item:disabled{color:#adb5bd;pointer-events:none;background-color:transparent}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:.5rem 1rem;margin-bottom:0;font-size:.875rem;color:#6c757d;white-space:nowrap}.dropdown-item-text{display:block;padding:.25rem 1rem;color:#212529}.dropdown-menu-dark{color:#dee2e6;background-color:#343a40;border-color:rgba(0,0,0,.15)}.dropdown-menu-dark .dropdown-item{color:#dee2e6}.dropdown-menu-dark .dropdown-item:focus,.dropdown-menu-dark .dropdown-item:hover{color:#fff;background-color:rgba(255,255,255,.15)}.dropdown-menu-dark .dropdown-item.active,.dropdown-menu-dark .dropdown-item:active{color:#fff;background-color:#0d6efd}.dropdown-menu-dark .dropdown-item.disabled,.dropdown-menu-dark .dropdown-item:disabled{color:#adb5bd}.dropdown-menu-dark .dropdown-divider{border-color:rgba(0,0,0,.15)}.dropdown-menu-dark .dropdown-item-text{color:#dee2e6}.dropdown-menu-dark .dropdown-header{color:#adb5bd}.btn-group,.btn-group-vertical{position:relative;display:inline-flex;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;flex:1 1 auto}.btn-group-vertical>.btn-check:checked+.btn,.btn-group-vertical>.btn-check:focus+.btn,.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn-check:checked+.btn,.btn-group>.btn-check:focus+.btn,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:1}.btn-toolbar{display:flex;flex-wrap:wrap;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group>.btn-group:not(:first-child),.btn-group>.btn:not(:first-child){margin-left:-1px}.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:nth-child(n+3),.btn-group>:not(.btn-check)+.btn{border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split::after,.dropend .dropdown-toggle-split::after,.dropup .dropdown-toggle-split::after{margin-left:0}.dropstart .dropdown-toggle-split::before{margin-right:0}.btn-group-sm>.btn+.dropdown-toggle-split,.btn-sm+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split,.btn-lg+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{flex-direction:column;align-items:flex-start;justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn-group:not(:first-child),.btn-group-vertical>.btn:not(:first-child){margin-top:-1px}.btn-group-vertical>.btn-group:not(:last-child)>.btn,.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn,.btn-group-vertical>.btn~.btn{border-top-left-radius:0;border-top-right-radius:0}.nav{display:flex;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:.5rem 1rem;color:#0d6efd;text-decoration:none;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out}@media (prefers-reduced-motion:reduce){.nav-link{transition:none}}.nav-link:focus,.nav-link:hover{color:#0a58ca}.nav-link.disabled{color:#6c757d;pointer-events:none;cursor:default}.nav-tabs{border-bottom:1px solid #dee2e6}.nav-tabs .nav-link{margin-bottom:-1px;background:0 0;border:1px solid transparent;border-top-left-radius:.25rem;border-top-right-radius:.25rem}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{border-color:#e9ecef #e9ecef #dee2e6;isolation:isolate}.nav-tabs .nav-link.disabled{color:#6c757d;background-color:transparent;border-color:transparent}.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{color:#495057;background-color:#fff;border-color:#dee2e6 #dee2e6 #fff}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.nav-pills .nav-link{background:0 0;border:0;border-radius:.25rem}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:#fff;background-color:#0d6efd}.nav-fill .nav-item,.nav-fill>.nav-link{flex:1 1 auto;text-align:center}.nav-justified .nav-item,.nav-justified>.nav-link{flex-basis:0;flex-grow:1;text-align:center}.nav-fill .nav-item .nav-link,.nav-justified .nav-item .nav-link{width:100%}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{position:relative;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;padding-top:.5rem;padding-bottom:.5rem}.navbar>.container,.navbar>.container-fluid,.navbar>.container-lg,.navbar>.container-md,.navbar>.container-sm,.navbar>.container-xl,.navbar>.container-xxl{display:flex;flex-wrap:inherit;align-items:center;justify-content:space-between}.navbar-brand{padding-top:.3125rem;padding-bottom:.3125rem;margin-right:1rem;font-size:1.25rem;text-decoration:none;white-space:nowrap}.navbar-nav{display:flex;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link{padding-right:0;padding-left:0}.navbar-nav .dropdown-menu{position:static}.navbar-text{padding-top:.5rem;padding-bottom:.5rem}.navbar-collapse{flex-basis:100%;flex-grow:1;align-items:center}.navbar-toggler{padding:.25rem .75rem;font-size:1.25rem;line-height:1;background-color:transparent;border:1px solid transparent;border-radius:.25rem;transition:box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.navbar-toggler{transition:none}}.navbar-toggler:hover{text-decoration:none}.navbar-toggler:focus{text-decoration:none;outline:0;box-shadow:0 0 0 .25rem}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;background-repeat:no-repeat;background-position:center;background-size:100%}.navbar-nav-scroll{max-height:var(--bs-scroll-height,75vh);overflow-y:auto}@media (min-width:576px){.navbar-expand-sm{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-sm .navbar-nav{flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-sm .navbar-nav-scroll{overflow:visible}.navbar-expand-sm .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}}@media (min-width:768px){.navbar-expand-md{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-md .navbar-nav{flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-md .navbar-nav-scroll{overflow:visible}.navbar-expand-md .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}}@media (min-width:992px){.navbar-expand-lg{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-lg .navbar-nav{flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-lg .navbar-nav-scroll{overflow:visible}.navbar-expand-lg .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}}@media (min-width:1200px){.navbar-expand-xl{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-xl .navbar-nav{flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-xl .navbar-nav-scroll{overflow:visible}.navbar-expand-xl .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}}@media (min-width:1400px){.navbar-expand-xxl{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-xxl .navbar-nav{flex-direction:row}.navbar-expand-xxl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xxl .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-xxl .navbar-nav-scroll{overflow:visible}.navbar-expand-xxl .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-xxl .navbar-toggler{display:none}}.navbar-expand{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand .navbar-nav{flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand .navbar-nav-scroll{overflow:visible}.navbar-expand .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-light .navbar-brand{color:rgba(0,0,0,.9)}.navbar-light .navbar-brand:focus,.navbar-light .navbar-brand:hover{color:rgba(0,0,0,.9)}.navbar-light .navbar-nav .nav-link{color:rgba(0,0,0,.55)}.navbar-light .navbar-nav .nav-link:focus,.navbar-light .navbar-nav .nav-link:hover{color:rgba(0,0,0,.7)}.navbar-light .navbar-nav .nav-link.disabled{color:rgba(0,0,0,.3)}.navbar-light .navbar-nav .nav-link.active,.navbar-light .navbar-nav .show>.nav-link{color:rgba(0,0,0,.9)}.navbar-light .navbar-toggler{color:rgba(0,0,0,.55);border-color:rgba(0,0,0,.1)}.navbar-light .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-light .navbar-text{color:rgba(0,0,0,.55)}.navbar-light .navbar-text a,.navbar-light .navbar-text a:focus,.navbar-light .navbar-text a:hover{color:rgba(0,0,0,.9)}.navbar-dark .navbar-brand{color:#fff}.navbar-dark .navbar-brand:focus,.navbar-dark .navbar-brand:hover{color:#fff}.navbar-dark .navbar-nav .nav-link{color:rgba(255,255,255,.55)}.navbar-dark .navbar-nav .nav-link:focus,.navbar-dark .navbar-nav .nav-link:hover{color:rgba(255,255,255,.75)}.navbar-dark .navbar-nav .nav-link.disabled{color:rgba(255,255,255,.25)}.navbar-dark .navbar-nav .nav-link.active,.navbar-dark .navbar-nav .show>.nav-link{color:#fff}.navbar-dark .navbar-toggler{color:rgba(255,255,255,.55);border-color:rgba(255,255,255,.1)}.navbar-dark .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-dark .navbar-text{color:rgba(255,255,255,.55)}.navbar-dark .navbar-text a,.navbar-dark .navbar-text a:focus,.navbar-dark .navbar-text a:hover{color:#fff}.card{position:relative;display:flex;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:border-box;border:1px solid rgba(0,0,0,.125);border-radius:.25rem}.card>hr{margin-right:0;margin-left:0}.card>.list-group{border-top:inherit;border-bottom:inherit}.card>.list-group:first-child{border-top-width:0;border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card>.list-group:last-child{border-bottom-width:0;border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.card>.card-header+.list-group,.card>.list-group+.card-footer{border-top:0}.card-body{flex:1 1 auto;padding:1rem 1rem}.card-title{margin-bottom:.5rem}.card-subtitle{margin-top:-.25rem;margin-bottom:0}.card-text:last-child{margin-bottom:0}.card-link:hover{text-decoration:none}.card-link+.card-link{margin-left:1rem}.card-header{padding:.5rem 1rem;margin-bottom:0;background-color:rgba(0,0,0,.03);border-bottom:1px solid rgba(0,0,0,.125)}.card-header:first-child{border-radius:calc(.25rem - 1px) calc(.25rem - 1px) 0 0}.card-footer{padding:.5rem 1rem;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.125)}.card-footer:last-child{border-radius:0 0 calc(.25rem - 1px) calc(.25rem - 1px)}.card-header-tabs{margin-right:-.5rem;margin-bottom:-.5rem;margin-left:-.5rem;border-bottom:0}.card-header-pills{margin-right:-.5rem;margin-left:-.5rem}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:1rem;border-radius:calc(.25rem - 1px)}.card-img,.card-img-bottom,.card-img-top{width:100%}.card-img,.card-img-top{border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card-img,.card-img-bottom{border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.card-group>.card{margin-bottom:.75rem}@media (min-width:576px){.card-group{display:flex;flex-flow:row wrap}.card-group>.card{flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-header,.card-group>.card:not(:last-child) .card-img-top{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-footer,.card-group>.card:not(:last-child) .card-img-bottom{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:first-child) .card-header,.card-group>.card:not(:first-child) .card-img-top{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-footer,.card-group>.card:not(:first-child) .card-img-bottom{border-bottom-left-radius:0}}.accordion-button{position:relative;display:flex;align-items:center;width:100%;padding:1rem 1.25rem;font-size:1rem;color:#212529;text-align:left;background-color:#fff;border:0;border-radius:0;overflow-anchor:none;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,border-radius .15s ease}@media (prefers-reduced-motion:reduce){.accordion-button{transition:none}}.accordion-button:not(.collapsed){color:#0c63e4;background-color:#e7f1ff;box-shadow:inset 0 -1px 0 rgba(0,0,0,.125)}.accordion-button:not(.collapsed)::after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%230c63e4'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");transform:rotate(-180deg)}.accordion-button::after{flex-shrink:0;width:1.25rem;height:1.25rem;margin-left:auto;content:"";background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-size:1.25rem;transition:transform .2s ease-in-out}@media (prefers-reduced-motion:reduce){.accordion-button::after{transition:none}}.accordion-button:hover{z-index:2}.accordion-button:focus{z-index:3;border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.accordion-header{margin-bottom:0}.accordion-item{background-color:#fff;border:1px solid rgba(0,0,0,.125)}.accordion-item:first-of-type{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.accordion-item:first-of-type .accordion-button{border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.accordion-item:not(:first-of-type){border-top:0}.accordion-item:last-of-type{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.accordion-item:last-of-type .accordion-button.collapsed{border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.accordion-item:last-of-type .accordion-collapse{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.accordion-body{padding:1rem 1.25rem}.accordion-flush .accordion-collapse{border-width:0}.accordion-flush .accordion-item{border-right:0;border-left:0;border-radius:0}.accordion-flush .accordion-item:first-child{border-top:0}.accordion-flush .accordion-item:last-child{border-bottom:0}.accordion-flush .accordion-item .accordion-button{border-radius:0}.breadcrumb{display:flex;flex-wrap:wrap;padding:0 0;margin-bottom:1rem;list-style:none}.breadcrumb-item+.breadcrumb-item{padding-left:.5rem}.breadcrumb-item+.breadcrumb-item::before{float:left;padding-right:.5rem;color:#6c757d;content:var(--bs-breadcrumb-divider, "/")}.breadcrumb-item.active{color:#6c757d}.pagination{display:flex;padding-left:0;list-style:none}.page-link{position:relative;display:block;color:#0d6efd;text-decoration:none;background-color:#fff;border:1px solid #dee2e6;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.page-link{transition:none}}.page-link:hover{z-index:2;color:#0a58ca;background-color:#e9ecef;border-color:#dee2e6}.page-link:focus{z-index:3;color:#0a58ca;background-color:#e9ecef;outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.page-item:not(:first-child) .page-link{margin-left:-1px}.page-item.active .page-link{z-index:3;color:#fff;background-color:#0d6efd;border-color:#0d6efd}.page-item.disabled .page-link{color:#6c757d;pointer-events:none;background-color:#fff;border-color:#dee2e6}.page-link{padding:.375rem .75rem}.page-item:first-child .page-link{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.page-item:last-child .page-link{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.pagination-lg .page-link{padding:.75rem 1.5rem;font-size:1.25rem}.pagination-lg .page-item:first-child .page-link{border-top-left-radius:.3rem;border-bottom-left-radius:.3rem}.pagination-lg .page-item:last-child .page-link{border-top-right-radius:.3rem;border-bottom-right-radius:.3rem}.pagination-sm .page-link{padding:.25rem .5rem;font-size:.875rem}.pagination-sm .page-item:first-child .page-link{border-top-left-radius:.2rem;border-bottom-left-radius:.2rem}.pagination-sm .page-item:last-child .page-link{border-top-right-radius:.2rem;border-bottom-right-radius:.2rem}.badge{display:inline-block;padding:.35em .65em;font-size:.75em;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25rem}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.alert{position:relative;padding:1rem 1rem;margin-bottom:1rem;border:1px solid transparent;border-radius:.25rem}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:3rem}.alert-dismissible .btn-close{position:absolute;top:0;right:0;z-index:2;padding:1.25rem 1rem}.alert-primary{color:#084298;background-color:#cfe2ff;border-color:#b6d4fe}.alert-primary .alert-link{color:#06357a}.alert-secondary{color:#41464b;background-color:#e2e3e5;border-color:#d3d6d8}.alert-secondary .alert-link{color:#34383c}.alert-success{color:#0f5132;background-color:#d1e7dd;border-color:#badbcc}.alert-success .alert-link{color:#0c4128}.alert-info{color:#055160;background-color:#cff4fc;border-color:#b6effb}.alert-info .alert-link{color:#04414d}.alert-warning{color:#664d03;background-color:#fff3cd;border-color:#ffecb5}.alert-warning .alert-link{color:#523e02}.alert-danger{color:#842029;background-color:#f8d7da;border-color:#f5c2c7}.alert-danger .alert-link{color:#6a1a21}.alert-light{color:#636464;background-color:#fefefe;border-color:#fdfdfe}.alert-light .alert-link{color:#4f5050}.alert-dark{color:#141619;background-color:#d3d3d4;border-color:#bcbebf}.alert-dark .alert-link{color:#101214}@-webkit-keyframes progress-bar-stripes{0%{background-position-x:1rem}}@keyframes progress-bar-stripes{0%{background-position-x:1rem}}.progress{display:flex;height:1rem;overflow:hidden;font-size:.75rem;background-color:#e9ecef;border-radius:.25rem}.progress-bar{display:flex;flex-direction:column;justify-content:center;overflow:hidden;color:#fff;text-align:center;white-space:nowrap;background-color:#0d6efd;transition:width .6s ease}@media (prefers-reduced-motion:reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-size:1rem 1rem}.progress-bar-animated{-webkit-animation:1s linear infinite progress-bar-stripes;animation:1s linear infinite progress-bar-stripes}@media (prefers-reduced-motion:reduce){.progress-bar-animated{-webkit-animation:none;animation:none}}.list-group{display:flex;flex-direction:column;padding-left:0;margin-bottom:0;border-radius:.25rem}.list-group-numbered{list-style-type:none;counter-reset:section}.list-group-numbered>li::before{content:counters(section, ".") ". ";counter-increment:section}.list-group-item-action{width:100%;color:#495057;text-align:inherit}.list-group-item-action:focus,.list-group-item-action:hover{z-index:1;color:#495057;text-decoration:none;background-color:#f8f9fa}.list-group-item-action:active{color:#212529;background-color:#e9ecef}.list-group-item{position:relative;display:block;padding:.5rem 1rem;color:#212529;text-decoration:none;background-color:#fff;border:1px solid rgba(0,0,0,.125)}.list-group-item:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.list-group-item:last-child{border-bottom-right-radius:inherit;border-bottom-left-radius:inherit}.list-group-item.disabled,.list-group-item:disabled{color:#6c757d;pointer-events:none;background-color:#fff}.list-group-item.active{z-index:2;color:#fff;background-color:#0d6efd;border-color:#0d6efd}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:-1px;border-top-width:1px}.list-group-horizontal{flex-direction:row}.list-group-horizontal>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal>.list-group-item.active{margin-top:0}.list-group-horizontal>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}@media (min-width:576px){.list-group-horizontal-sm{flex-direction:row}.list-group-horizontal-sm>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-sm>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-sm>.list-group-item.active{margin-top:0}.list-group-horizontal-sm>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-sm>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:768px){.list-group-horizontal-md{flex-direction:row}.list-group-horizontal-md>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-md>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-md>.list-group-item.active{margin-top:0}.list-group-horizontal-md>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-md>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:992px){.list-group-horizontal-lg{flex-direction:row}.list-group-horizontal-lg>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-lg>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-lg>.list-group-item.active{margin-top:0}.list-group-horizontal-lg>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-lg>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:1200px){.list-group-horizontal-xl{flex-direction:row}.list-group-horizontal-xl>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-xl>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-xl>.list-group-item.active{margin-top:0}.list-group-horizontal-xl>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-xl>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:1400px){.list-group-horizontal-xxl{flex-direction:row}.list-group-horizontal-xxl>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-xxl>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-xxl>.list-group-item.active{margin-top:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}.list-group-flush{border-radius:0}.list-group-flush>.list-group-item{border-width:0 0 1px}.list-group-flush>.list-group-item:last-child{border-bottom-width:0}.list-group-item-primary{color:#084298;background-color:#cfe2ff}.list-group-item-primary.list-group-item-action:focus,.list-group-item-primary.list-group-item-action:hover{color:#084298;background-color:#bacbe6}.list-group-item-primary.list-group-item-action.active{color:#fff;background-color:#084298;border-color:#084298}.list-group-item-secondary{color:#41464b;background-color:#e2e3e5}.list-group-item-secondary.list-group-item-action:focus,.list-group-item-secondary.list-group-item-action:hover{color:#41464b;background-color:#cbccce}.list-group-item-secondary.list-group-item-action.active{color:#fff;background-color:#41464b;border-color:#41464b}.list-group-item-success{color:#0f5132;background-color:#d1e7dd}.list-group-item-success.list-group-item-action:focus,.list-group-item-success.list-group-item-action:hover{color:#0f5132;background-color:#bcd0c7}.list-group-item-success.list-group-item-action.active{color:#fff;background-color:#0f5132;border-color:#0f5132}.list-group-item-info{color:#055160;background-color:#cff4fc}.list-group-item-info.list-group-item-action:focus,.list-group-item-info.list-group-item-action:hover{color:#055160;background-color:#badce3}.list-group-item-info.list-group-item-action.active{color:#fff;background-color:#055160;border-color:#055160}.list-group-item-warning{color:#664d03;background-color:#fff3cd}.list-group-item-warning.list-group-item-action:focus,.list-group-item-warning.list-group-item-action:hover{color:#664d03;background-color:#e6dbb9}.list-group-item-warning.list-group-item-action.active{color:#fff;background-color:#664d03;border-color:#664d03}.list-group-item-danger{color:#842029;background-color:#f8d7da}.list-group-item-danger.list-group-item-action:focus,.list-group-item-danger.list-group-item-action:hover{color:#842029;background-color:#dfc2c4}.list-group-item-danger.list-group-item-action.active{color:#fff;background-color:#842029;border-color:#842029}.list-group-item-light{color:#636464;background-color:#fefefe}.list-group-item-light.list-group-item-action:focus,.list-group-item-light.list-group-item-action:hover{color:#636464;background-color:#e5e5e5}.list-group-item-light.list-group-item-action.active{color:#fff;background-color:#636464;border-color:#636464}.list-group-item-dark{color:#141619;background-color:#d3d3d4}.list-group-item-dark.list-group-item-action:focus,.list-group-item-dark.list-group-item-action:hover{color:#141619;background-color:#bebebf}.list-group-item-dark.list-group-item-action.active{color:#fff;background-color:#141619;border-color:#141619}.btn-close{box-sizing:content-box;width:1em;height:1em;padding:.25em .25em;color:#000;background:transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat;border:0;border-radius:.25rem;opacity:.5}.btn-close:hover{color:#000;text-decoration:none;opacity:.75}.btn-close:focus{outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25);opacity:1}.btn-close.disabled,.btn-close:disabled{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;opacity:.25}.btn-close-white{filter:invert(1) grayscale(100%) brightness(200%)}.toast{width:350px;max-width:100%;font-size:.875rem;pointer-events:auto;background-color:rgba(255,255,255,.85);background-clip:padding-box;border:1px solid rgba(0,0,0,.1);box-shadow:0 .5rem 1rem rgba(0,0,0,.15);border-radius:.25rem}.toast:not(.showing):not(.show){opacity:0}.toast.hide{display:none}.toast-container{width:-webkit-max-content;width:-moz-max-content;width:max-content;max-width:100%;pointer-events:none}.toast-container>:not(:last-child){margin-bottom:.75rem}.toast-header{display:flex;align-items:center;padding:.5rem .75rem;color:#6c757d;background-color:rgba(255,255,255,.85);background-clip:padding-box;border-bottom:1px solid rgba(0,0,0,.05);border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.toast-header .btn-close{margin-right:-.375rem;margin-left:.75rem}.toast-body{padding:.75rem;word-wrap:break-word}.modal{position:fixed;top:0;left:0;z-index:1060;display:none;width:100%;height:100%;overflow-x:hidden;overflow-y:auto;outline:0}.modal-dialog{position:relative;width:auto;margin:.5rem;pointer-events:none}.modal.fade .modal-dialog{transition:transform .3s ease-out;transform:translate(0,-50px)}@media (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}.modal-dialog-scrollable{height:calc(100% - 1rem)}.modal-dialog-scrollable .modal-content{max-height:100%;overflow:hidden}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:flex;align-items:center;min-height:calc(100% - 1rem)}.modal-content{position:relative;display:flex;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;outline:0}.modal-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:.5}.modal-header{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;padding:1rem 1rem;border-bottom:1px solid #dee2e6;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.modal-header .btn-close{padding:.5rem .5rem;margin:-.5rem -.5rem -.5rem auto}.modal-title{margin-bottom:0;line-height:1.5}.modal-body{position:relative;flex:1 1 auto;padding:1rem}.modal-footer{display:flex;flex-wrap:wrap;flex-shrink:0;align-items:center;justify-content:flex-end;padding:.75rem;border-top:1px solid #dee2e6;border-bottom-right-radius:calc(.3rem - 1px);border-bottom-left-radius:calc(.3rem - 1px)}.modal-footer>*{margin:.25rem}@media (min-width:576px){.modal-dialog{max-width:500px;margin:1.75rem auto}.modal-dialog-scrollable{height:calc(100% - 3.5rem)}.modal-dialog-centered{min-height:calc(100% - 3.5rem)}.modal-sm{max-width:300px}}@media (min-width:992px){.modal-lg,.modal-xl{max-width:800px}}@media (min-width:1200px){.modal-xl{max-width:1140px}}.modal-fullscreen{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen .modal-header{border-radius:0}.modal-fullscreen .modal-body{overflow-y:auto}.modal-fullscreen .modal-footer{border-radius:0}@media (max-width:575.98px){.modal-fullscreen-sm-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-sm-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-sm-down .modal-header{border-radius:0}.modal-fullscreen-sm-down .modal-body{overflow-y:auto}.modal-fullscreen-sm-down .modal-footer{border-radius:0}}@media (max-width:767.98px){.modal-fullscreen-md-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-md-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-md-down .modal-header{border-radius:0}.modal-fullscreen-md-down .modal-body{overflow-y:auto}.modal-fullscreen-md-down .modal-footer{border-radius:0}}@media (max-width:991.98px){.modal-fullscreen-lg-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-lg-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-lg-down .modal-header{border-radius:0}.modal-fullscreen-lg-down .modal-body{overflow-y:auto}.modal-fullscreen-lg-down .modal-footer{border-radius:0}}@media (max-width:1199.98px){.modal-fullscreen-xl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xl-down .modal-header{border-radius:0}.modal-fullscreen-xl-down .modal-body{overflow-y:auto}.modal-fullscreen-xl-down .modal-footer{border-radius:0}}@media (max-width:1399.98px){.modal-fullscreen-xxl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xxl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xxl-down .modal-header{border-radius:0}.modal-fullscreen-xxl-down .modal-body{overflow-y:auto}.modal-fullscreen-xxl-down .modal-footer{border-radius:0}}.tooltip{position:absolute;z-index:1080;display:block;margin:0;font-family:var(--bs-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;opacity:0}.tooltip.show{opacity:.9}.tooltip .tooltip-arrow{position:absolute;display:block;width:.8rem;height:.4rem}.tooltip .tooltip-arrow::before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-auto[data-popper-placement^=top],.bs-tooltip-top{padding:.4rem 0}.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow,.bs-tooltip-top .tooltip-arrow{bottom:0}.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before,.bs-tooltip-top .tooltip-arrow::before{top:-1px;border-width:.4rem .4rem 0;border-top-color:#000}.bs-tooltip-auto[data-popper-placement^=right],.bs-tooltip-end{padding:0 .4rem}.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow,.bs-tooltip-end .tooltip-arrow{left:0;width:.4rem;height:.8rem}.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before,.bs-tooltip-end .tooltip-arrow::before{right:-1px;border-width:.4rem .4rem .4rem 0;border-right-color:#000}.bs-tooltip-auto[data-popper-placement^=bottom],.bs-tooltip-bottom{padding:.4rem 0}.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow,.bs-tooltip-bottom .tooltip-arrow{top:0}.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before,.bs-tooltip-bottom .tooltip-arrow::before{bottom:-1px;border-width:0 .4rem .4rem;border-bottom-color:#000}.bs-tooltip-auto[data-popper-placement^=left],.bs-tooltip-start{padding:0 .4rem}.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow,.bs-tooltip-start .tooltip-arrow{right:0;width:.4rem;height:.8rem}.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before,.bs-tooltip-start .tooltip-arrow::before{left:-1px;border-width:.4rem 0 .4rem .4rem;border-left-color:#000}.tooltip-inner{max-width:200px;padding:.25rem .5rem;color:#fff;text-align:center;background-color:#000;border-radius:.25rem}.popover{position:absolute;top:0;left:0;z-index:1070;display:block;max-width:276px;font-family:var(--bs-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem}.popover .popover-arrow{position:absolute;display:block;width:1rem;height:.5rem}.popover .popover-arrow::after,.popover .popover-arrow::before{position:absolute;display:block;content:"";border-color:transparent;border-style:solid}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow,.bs-popover-top>.popover-arrow{bottom:calc(-.5rem - 1px)}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::before,.bs-popover-top>.popover-arrow::before{bottom:0;border-width:.5rem .5rem 0;border-top-color:rgba(0,0,0,.25)}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::after,.bs-popover-top>.popover-arrow::after{bottom:1px;border-width:.5rem .5rem 0;border-top-color:#fff}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow,.bs-popover-end>.popover-arrow{left:calc(-.5rem - 1px);width:.5rem;height:1rem}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::before,.bs-popover-end>.popover-arrow::before{left:0;border-width:.5rem .5rem .5rem 0;border-right-color:rgba(0,0,0,.25)}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::after,.bs-popover-end>.popover-arrow::after{left:1px;border-width:.5rem .5rem .5rem 0;border-right-color:#fff}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow,.bs-popover-bottom>.popover-arrow{top:calc(-.5rem - 1px)}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::before,.bs-popover-bottom>.popover-arrow::before{top:0;border-width:0 .5rem .5rem .5rem;border-bottom-color:rgba(0,0,0,.25)}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::after,.bs-popover-bottom>.popover-arrow::after{top:1px;border-width:0 .5rem .5rem .5rem;border-bottom-color:#fff}.bs-popover-auto[data-popper-placement^=bottom] .popover-header::before,.bs-popover-bottom .popover-header::before{position:absolute;top:0;left:50%;display:block;width:1rem;margin-left:-.5rem;content:"";border-bottom:1px solid #f0f0f0}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow,.bs-popover-start>.popover-arrow{right:calc(-.5rem - 1px);width:.5rem;height:1rem}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::before,.bs-popover-start>.popover-arrow::before{right:0;border-width:.5rem 0 .5rem .5rem;border-left-color:rgba(0,0,0,.25)}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::after,.bs-popover-start>.popover-arrow::after{right:1px;border-width:.5rem 0 .5rem .5rem;border-left-color:#fff}.popover-header{padding:.5rem 1rem;margin-bottom:0;font-size:1rem;background-color:#f0f0f0;border-bottom:1px solid rgba(0,0,0,.2);border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.popover-header:empty{display:none}.popover-body{padding:1rem 1rem;color:#212529}.carousel{position:relative}.carousel.pointer-event{touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner::after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:transform .6s ease-in-out}@media (prefers-reduced-motion:reduce){.carousel-item{transition:none}}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block}.active.carousel-item-end,.carousel-item-next:not(.carousel-item-start){transform:translateX(100%)}.active.carousel-item-start,.carousel-item-prev:not(.carousel-item-end){transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;transition-property:opacity;transform:none}.carousel-fade .carousel-item-next.carousel-item-start,.carousel-fade .carousel-item-prev.carousel-item-end,.carousel-fade .carousel-item.active{z-index:1;opacity:1}.carousel-fade .active.carousel-item-end,.carousel-fade .active.carousel-item-start{z-index:0;opacity:0;transition:opacity 0s .6s}@media (prefers-reduced-motion:reduce){.carousel-fade .active.carousel-item-end,.carousel-fade .active.carousel-item-start{transition:none}}.carousel-control-next,.carousel-control-prev{position:absolute;top:0;bottom:0;z-index:1;display:flex;align-items:center;justify-content:center;width:15%;padding:0;color:#fff;text-align:center;background:0 0;border:0;opacity:.5;transition:opacity .15s ease}@media (prefers-reduced-motion:reduce){.carousel-control-next,.carousel-control-prev{transition:none}}.carousel-control-next:focus,.carousel-control-next:hover,.carousel-control-prev:focus,.carousel-control-prev:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-next-icon,.carousel-control-prev-icon{display:inline-block;width:2rem;height:2rem;background-repeat:no-repeat;background-position:50%;background-size:100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e")}.carousel-control-next-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:2;display:flex;justify-content:center;padding:0;margin-right:15%;margin-bottom:1rem;margin-left:15%;list-style:none}.carousel-indicators [data-bs-target]{box-sizing:content-box;flex:0 1 auto;width:30px;height:3px;padding:0;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border:0;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;transition:opacity .6s ease}@media (prefers-reduced-motion:reduce){.carousel-indicators [data-bs-target]{transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;right:15%;bottom:1.25rem;left:15%;padding-top:1.25rem;padding-bottom:1.25rem;color:#fff;text-align:center}.carousel-dark .carousel-control-next-icon,.carousel-dark .carousel-control-prev-icon{filter:invert(1) grayscale(100)}.carousel-dark .carousel-indicators [data-bs-target]{background-color:#000}.carousel-dark .carousel-caption{color:#000}@-webkit-keyframes spinner-border{to{transform:rotate(360deg)}}@keyframes spinner-border{to{transform:rotate(360deg)}}.spinner-border{display:inline-block;width:2rem;height:2rem;vertical-align:-.125em;border:.25em solid currentColor;border-right-color:transparent;border-radius:50%;-webkit-animation:.75s linear infinite spinner-border;animation:.75s linear infinite spinner-border}.spinner-border-sm{width:1rem;height:1rem;border-width:.2em}@-webkit-keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1;transform:none}}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1;transform:none}}.spinner-grow{display:inline-block;width:2rem;height:2rem;vertical-align:-.125em;background-color:currentColor;border-radius:50%;opacity:0;-webkit-animation:.75s linear infinite spinner-grow;animation:.75s linear infinite spinner-grow}.spinner-grow-sm{width:1rem;height:1rem}@media (prefers-reduced-motion:reduce){.spinner-border,.spinner-grow{-webkit-animation-duration:1.5s;animation-duration:1.5s}}.offcanvas{position:fixed;bottom:0;z-index:1050;display:flex;flex-direction:column;max-width:100%;visibility:hidden;background-color:#fff;background-clip:padding-box;outline:0;transition:transform .3s ease-in-out}@media (prefers-reduced-motion:reduce){.offcanvas{transition:none}}.offcanvas-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1rem}.offcanvas-header .btn-close{padding:.5rem .5rem;margin-top:-.5rem;margin-right:-.5rem;margin-bottom:-.5rem}.offcanvas-title{margin-bottom:0;line-height:1.5}.offcanvas-body{flex-grow:1;padding:1rem 1rem;overflow-y:auto}.offcanvas-start{top:0;left:0;width:400px;border-right:1px solid rgba(0,0,0,.2);transform:translateX(-100%)}.offcanvas-end{top:0;right:0;width:400px;border-left:1px solid rgba(0,0,0,.2);transform:translateX(100%)}.offcanvas-top{top:0;right:0;left:0;height:30vh;max-height:100%;border-bottom:1px solid rgba(0,0,0,.2);transform:translateY(-100%)}.offcanvas-bottom{right:0;left:0;height:30vh;max-height:100%;border-top:1px solid rgba(0,0,0,.2);transform:translateY(100%)}.offcanvas.show{transform:none}.clearfix::after{display:block;clear:both;content:""}.link-primary{color:#0d6efd}.link-primary:focus,.link-primary:hover{color:#0a58ca}.link-secondary{color:#6c757d}.link-secondary:focus,.link-secondary:hover{color:#565e64}.link-success{color:#198754}.link-success:focus,.link-success:hover{color:#146c43}.link-info{color:#0dcaf0}.link-info:focus,.link-info:hover{color:#3dd5f3}.link-warning{color:#ffc107}.link-warning:focus,.link-warning:hover{color:#ffcd39}.link-danger{color:#dc3545}.link-danger:focus,.link-danger:hover{color:#b02a37}.link-light{color:#f8f9fa}.link-light:focus,.link-light:hover{color:#f9fafb}.link-dark{color:#212529}.link-dark:focus,.link-dark:hover{color:#1a1e21}.ratio{position:relative;width:100%}.ratio::before{display:block;padding-top:var(--bs-aspect-ratio);content:""}.ratio>*{position:absolute;top:0;left:0;width:100%;height:100%}.ratio-1x1{--bs-aspect-ratio:100%}.ratio-4x3{--bs-aspect-ratio:calc(3 / 4 * 100%)}.ratio-16x9{--bs-aspect-ratio:calc(9 / 16 * 100%)}.ratio-21x9{--bs-aspect-ratio:calc(9 / 21 * 100%)}.fixed-top{position:fixed;top:0;right:0;left:0;z-index:1030}.fixed-bottom{position:fixed;right:0;bottom:0;left:0;z-index:1030}.sticky-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}@media (min-width:576px){.sticky-sm-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}}@media (min-width:768px){.sticky-md-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}}@media (min-width:992px){.sticky-lg-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}}@media (min-width:1200px){.sticky-xl-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}}@media (min-width:1400px){.sticky-xxl-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}}.visually-hidden,.visually-hidden-focusable:not(:focus):not(:focus-within){position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.stretched-link::after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;content:""}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.align-baseline{vertical-align:baseline!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.float-start{float:left!important}.float-end{float:right!important}.float-none{float:none!important}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.overflow-visible{overflow:visible!important}.overflow-scroll{overflow:scroll!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-grid{display:grid!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:flex!important}.d-inline-flex{display:inline-flex!important}.d-none{display:none!important}.shadow{box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important}.shadow-sm{box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important}.shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,.175)!important}.shadow-none{box-shadow:none!important}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:-webkit-sticky!important;position:sticky!important}.top-0{top:0!important}.top-50{top:50%!important}.top-100{top:100%!important}.bottom-0{bottom:0!important}.bottom-50{bottom:50%!important}.bottom-100{bottom:100%!important}.start-0{left:0!important}.start-50{left:50%!important}.start-100{left:100%!important}.end-0{right:0!important}.end-50{right:50%!important}.end-100{right:100%!important}.translate-middle{transform:translate(-50%,-50%)!important}.translate-middle-x{transform:translateX(-50%)!important}.translate-middle-y{transform:translateY(-50%)!important}.border{border:1px solid #dee2e6!important}.border-0{border:0!important}.border-top{border-top:1px solid #dee2e6!important}.border-top-0{border-top:0!important}.border-end{border-right:1px solid #dee2e6!important}.border-end-0{border-right:0!important}.border-bottom{border-bottom:1px solid #dee2e6!important}.border-bottom-0{border-bottom:0!important}.border-start{border-left:1px solid #dee2e6!important}.border-start-0{border-left:0!important}.border-primary{border-color:#0d6efd!important}.border-secondary{border-color:#6c757d!important}.border-success{border-color:#198754!important}.border-info{border-color:#0dcaf0!important}.border-warning{border-color:#ffc107!important}.border-danger{border-color:#dc3545!important}.border-light{border-color:#f8f9fa!important}.border-dark{border-color:#212529!important}.border-white{border-color:#fff!important}.border-1{border-width:1px!important}.border-2{border-width:2px!important}.border-3{border-width:3px!important}.border-4{border-width:4px!important}.border-5{border-width:5px!important}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.w-auto{width:auto!important}.mw-100{max-width:100%!important}.vw-100{width:100vw!important}.min-vw-100{min-width:100vw!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.h-auto{height:auto!important}.mh-100{max-height:100%!important}.vh-100{height:100vh!important}.min-vh-100{min-height:100vh!important}.flex-fill{flex:1 1 auto!important}.flex-row{flex-direction:row!important}.flex-column{flex-direction:column!important}.flex-row-reverse{flex-direction:row-reverse!important}.flex-column-reverse{flex-direction:column-reverse!important}.flex-grow-0{flex-grow:0!important}.flex-grow-1{flex-grow:1!important}.flex-shrink-0{flex-shrink:0!important}.flex-shrink-1{flex-shrink:1!important}.flex-wrap{flex-wrap:wrap!important}.flex-nowrap{flex-wrap:nowrap!important}.flex-wrap-reverse{flex-wrap:wrap-reverse!important}.gap-0{gap:0!important}.gap-1{gap:.25rem!important}.gap-2{gap:.5rem!important}.gap-3{gap:1rem!important}.gap-4{gap:1.5rem!important}.gap-5{gap:3rem!important}.justify-content-start{justify-content:flex-start!important}.justify-content-end{justify-content:flex-end!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}.justify-content-around{justify-content:space-around!important}.justify-content-evenly{justify-content:space-evenly!important}.align-items-start{align-items:flex-start!important}.align-items-end{align-items:flex-end!important}.align-items-center{align-items:center!important}.align-items-baseline{align-items:baseline!important}.align-items-stretch{align-items:stretch!important}.align-content-start{align-content:flex-start!important}.align-content-end{align-content:flex-end!important}.align-content-center{align-content:center!important}.align-content-between{align-content:space-between!important}.align-content-around{align-content:space-around!important}.align-content-stretch{align-content:stretch!important}.align-self-auto{align-self:auto!important}.align-self-start{align-self:flex-start!important}.align-self-end{align-self:flex-end!important}.align-self-center{align-self:center!important}.align-self-baseline{align-self:baseline!important}.align-self-stretch{align-self:stretch!important}.order-first{order:-1!important}.order-0{order:0!important}.order-1{order:1!important}.order-2{order:2!important}.order-3{order:3!important}.order-4{order:4!important}.order-5{order:5!important}.order-last{order:6!important}.m-0{margin:0!important}.m-1{margin:.25rem!important}.m-2{margin:.5rem!important}.m-3{margin:1rem!important}.m-4{margin:1.5rem!important}.m-5{margin:3rem!important}.m-auto{margin:auto!important}.mx-0{margin-right:0!important;margin-left:0!important}.mx-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-3{margin-right:1rem!important;margin-left:1rem!important}.mx-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-5{margin-right:3rem!important;margin-left:3rem!important}.mx-auto{margin-right:auto!important;margin-left:auto!important}.my-0{margin-top:0!important;margin-bottom:0!important}.my-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-0{margin-top:0!important}.mt-1{margin-top:.25rem!important}.mt-2{margin-top:.5rem!important}.mt-3{margin-top:1rem!important}.mt-4{margin-top:1.5rem!important}.mt-5{margin-top:3rem!important}.mt-auto{margin-top:auto!important}.me-0{margin-right:0!important}.me-1{margin-right:.25rem!important}.me-2{margin-right:.5rem!important}.me-3{margin-right:1rem!important}.me-4{margin-right:1.5rem!important}.me-5{margin-right:3rem!important}.me-auto{margin-right:auto!important}.mb-0{margin-bottom:0!important}.mb-1{margin-bottom:.25rem!important}.mb-2{margin-bottom:.5rem!important}.mb-3{margin-bottom:1rem!important}.mb-4{margin-bottom:1.5rem!important}.mb-5{margin-bottom:3rem!important}.mb-auto{margin-bottom:auto!important}.ms-0{margin-left:0!important}.ms-1{margin-left:.25rem!important}.ms-2{margin-left:.5rem!important}.ms-3{margin-left:1rem!important}.ms-4{margin-left:1.5rem!important}.ms-5{margin-left:3rem!important}.ms-auto{margin-left:auto!important}.p-0{padding:0!important}.p-1{padding:.25rem!important}.p-2{padding:.5rem!important}.p-3{padding:1rem!important}.p-4{padding:1.5rem!important}.p-5{padding:3rem!important}.px-0{padding-right:0!important;padding-left:0!important}.px-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-3{padding-right:1rem!important;padding-left:1rem!important}.px-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-5{padding-right:3rem!important;padding-left:3rem!important}.py-0{padding-top:0!important;padding-bottom:0!important}.py-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-0{padding-top:0!important}.pt-1{padding-top:.25rem!important}.pt-2{padding-top:.5rem!important}.pt-3{padding-top:1rem!important}.pt-4{padding-top:1.5rem!important}.pt-5{padding-top:3rem!important}.pe-0{padding-right:0!important}.pe-1{padding-right:.25rem!important}.pe-2{padding-right:.5rem!important}.pe-3{padding-right:1rem!important}.pe-4{padding-right:1.5rem!important}.pe-5{padding-right:3rem!important}.pb-0{padding-bottom:0!important}.pb-1{padding-bottom:.25rem!important}.pb-2{padding-bottom:.5rem!important}.pb-3{padding-bottom:1rem!important}.pb-4{padding-bottom:1.5rem!important}.pb-5{padding-bottom:3rem!important}.ps-0{padding-left:0!important}.ps-1{padding-left:.25rem!important}.ps-2{padding-left:.5rem!important}.ps-3{padding-left:1rem!important}.ps-4{padding-left:1.5rem!important}.ps-5{padding-left:3rem!important}.font-monospace{font-family:var(--bs-font-monospace)!important}.fs-1{font-size:calc(1.375rem + 1.5vw)!important}.fs-2{font-size:calc(1.325rem + .9vw)!important}.fs-3{font-size:calc(1.3rem + .6vw)!important}.fs-4{font-size:calc(1.275rem + .3vw)!important}.fs-5{font-size:1.25rem!important}.fs-6{font-size:1rem!important}.fst-italic{font-style:italic!important}.fst-normal{font-style:normal!important}.fw-light{font-weight:300!important}.fw-lighter{font-weight:lighter!important}.fw-normal{font-weight:400!important}.fw-bold{font-weight:700!important}.fw-bolder{font-weight:bolder!important}.lh-1{line-height:1!important}.lh-sm{line-height:1.25!important}.lh-base{line-height:1.5!important}.lh-lg{line-height:2!important}.text-start{text-align:left!important}.text-end{text-align:right!important}.text-center{text-align:center!important}.text-decoration-none{text-decoration:none!important}.text-decoration-underline{text-decoration:underline!important}.text-decoration-line-through{text-decoration:line-through!important}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.text-wrap{white-space:normal!important}.text-nowrap{white-space:nowrap!important}.text-break{word-wrap:break-word!important;word-break:break-word!important}.text-primary{color:#0d6efd!important}.text-secondary{color:#6c757d!important}.text-success{color:#198754!important}.text-info{color:#0dcaf0!important}.text-warning{color:#ffc107!important}.text-danger{color:#dc3545!important}.text-light{color:#f8f9fa!important}.text-dark{color:#212529!important}.text-white{color:#fff!important}.text-body{color:#212529!important}.text-muted{color:#6c757d!important}.text-black-50{color:rgba(0,0,0,.5)!important}.text-white-50{color:rgba(255,255,255,.5)!important}.text-reset{color:inherit!important}.bg-primary{background-color:#0d6efd!important}.bg-secondary{background-color:#6c757d!important}.bg-success{background-color:#198754!important}.bg-info{background-color:#0dcaf0!important}.bg-warning{background-color:#ffc107!important}.bg-danger{background-color:#dc3545!important}.bg-light{background-color:#f8f9fa!important}.bg-dark{background-color:#212529!important}.bg-body{background-color:#fff!important}.bg-white{background-color:#fff!important}.bg-transparent{background-color:transparent!important}.bg-gradient{background-image:var(--bs-gradient)!important}.user-select-all{-webkit-user-select:all!important;-moz-user-select:all!important;user-select:all!important}.user-select-auto{-webkit-user-select:auto!important;-moz-user-select:auto!important;user-select:auto!important}.user-select-none{-webkit-user-select:none!important;-moz-user-select:none!important;user-select:none!important}.pe-none{pointer-events:none!important}.pe-auto{pointer-events:auto!important}.rounded{border-radius:.25rem!important}.rounded-0{border-radius:0!important}.rounded-1{border-radius:.2rem!important}.rounded-2{border-radius:.25rem!important}.rounded-3{border-radius:.3rem!important}.rounded-circle{border-radius:50%!important}.rounded-pill{border-radius:50rem!important}.rounded-top{border-top-left-radius:.25rem!important;border-top-right-radius:.25rem!important}.rounded-end{border-top-right-radius:.25rem!important;border-bottom-right-radius:.25rem!important}.rounded-bottom{border-bottom-right-radius:.25rem!important;border-bottom-left-radius:.25rem!important}.rounded-start{border-bottom-left-radius:.25rem!important;border-top-left-radius:.25rem!important}.visible{visibility:visible!important}.invisible{visibility:hidden!important}@media (min-width:576px){.float-sm-start{float:left!important}.float-sm-end{float:right!important}.float-sm-none{float:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-grid{display:grid!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:flex!important}.d-sm-inline-flex{display:inline-flex!important}.d-sm-none{display:none!important}.flex-sm-fill{flex:1 1 auto!important}.flex-sm-row{flex-direction:row!important}.flex-sm-column{flex-direction:column!important}.flex-sm-row-reverse{flex-direction:row-reverse!important}.flex-sm-column-reverse{flex-direction:column-reverse!important}.flex-sm-grow-0{flex-grow:0!important}.flex-sm-grow-1{flex-grow:1!important}.flex-sm-shrink-0{flex-shrink:0!important}.flex-sm-shrink-1{flex-shrink:1!important}.flex-sm-wrap{flex-wrap:wrap!important}.flex-sm-nowrap{flex-wrap:nowrap!important}.flex-sm-wrap-reverse{flex-wrap:wrap-reverse!important}.gap-sm-0{gap:0!important}.gap-sm-1{gap:.25rem!important}.gap-sm-2{gap:.5rem!important}.gap-sm-3{gap:1rem!important}.gap-sm-4{gap:1.5rem!important}.gap-sm-5{gap:3rem!important}.justify-content-sm-start{justify-content:flex-start!important}.justify-content-sm-end{justify-content:flex-end!important}.justify-content-sm-center{justify-content:center!important}.justify-content-sm-between{justify-content:space-between!important}.justify-content-sm-around{justify-content:space-around!important}.justify-content-sm-evenly{justify-content:space-evenly!important}.align-items-sm-start{align-items:flex-start!important}.align-items-sm-end{align-items:flex-end!important}.align-items-sm-center{align-items:center!important}.align-items-sm-baseline{align-items:baseline!important}.align-items-sm-stretch{align-items:stretch!important}.align-content-sm-start{align-content:flex-start!important}.align-content-sm-end{align-content:flex-end!important}.align-content-sm-center{align-content:center!important}.align-content-sm-between{align-content:space-between!important}.align-content-sm-around{align-content:space-around!important}.align-content-sm-stretch{align-content:stretch!important}.align-self-sm-auto{align-self:auto!important}.align-self-sm-start{align-self:flex-start!important}.align-self-sm-end{align-self:flex-end!important}.align-self-sm-center{align-self:center!important}.align-self-sm-baseline{align-self:baseline!important}.align-self-sm-stretch{align-self:stretch!important}.order-sm-first{order:-1!important}.order-sm-0{order:0!important}.order-sm-1{order:1!important}.order-sm-2{order:2!important}.order-sm-3{order:3!important}.order-sm-4{order:4!important}.order-sm-5{order:5!important}.order-sm-last{order:6!important}.m-sm-0{margin:0!important}.m-sm-1{margin:.25rem!important}.m-sm-2{margin:.5rem!important}.m-sm-3{margin:1rem!important}.m-sm-4{margin:1.5rem!important}.m-sm-5{margin:3rem!important}.m-sm-auto{margin:auto!important}.mx-sm-0{margin-right:0!important;margin-left:0!important}.mx-sm-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-sm-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-sm-3{margin-right:1rem!important;margin-left:1rem!important}.mx-sm-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-sm-5{margin-right:3rem!important;margin-left:3rem!important}.mx-sm-auto{margin-right:auto!important;margin-left:auto!important}.my-sm-0{margin-top:0!important;margin-bottom:0!important}.my-sm-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-sm-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-sm-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-sm-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-sm-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-sm-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-sm-0{margin-top:0!important}.mt-sm-1{margin-top:.25rem!important}.mt-sm-2{margin-top:.5rem!important}.mt-sm-3{margin-top:1rem!important}.mt-sm-4{margin-top:1.5rem!important}.mt-sm-5{margin-top:3rem!important}.mt-sm-auto{margin-top:auto!important}.me-sm-0{margin-right:0!important}.me-sm-1{margin-right:.25rem!important}.me-sm-2{margin-right:.5rem!important}.me-sm-3{margin-right:1rem!important}.me-sm-4{margin-right:1.5rem!important}.me-sm-5{margin-right:3rem!important}.me-sm-auto{margin-right:auto!important}.mb-sm-0{margin-bottom:0!important}.mb-sm-1{margin-bottom:.25rem!important}.mb-sm-2{margin-bottom:.5rem!important}.mb-sm-3{margin-bottom:1rem!important}.mb-sm-4{margin-bottom:1.5rem!important}.mb-sm-5{margin-bottom:3rem!important}.mb-sm-auto{margin-bottom:auto!important}.ms-sm-0{margin-left:0!important}.ms-sm-1{margin-left:.25rem!important}.ms-sm-2{margin-left:.5rem!important}.ms-sm-3{margin-left:1rem!important}.ms-sm-4{margin-left:1.5rem!important}.ms-sm-5{margin-left:3rem!important}.ms-sm-auto{margin-left:auto!important}.p-sm-0{padding:0!important}.p-sm-1{padding:.25rem!important}.p-sm-2{padding:.5rem!important}.p-sm-3{padding:1rem!important}.p-sm-4{padding:1.5rem!important}.p-sm-5{padding:3rem!important}.px-sm-0{padding-right:0!important;padding-left:0!important}.px-sm-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-sm-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-sm-3{padding-right:1rem!important;padding-left:1rem!important}.px-sm-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-sm-5{padding-right:3rem!important;padding-left:3rem!important}.py-sm-0{padding-top:0!important;padding-bottom:0!important}.py-sm-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-sm-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-sm-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-sm-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-sm-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-sm-0{padding-top:0!important}.pt-sm-1{padding-top:.25rem!important}.pt-sm-2{padding-top:.5rem!important}.pt-sm-3{padding-top:1rem!important}.pt-sm-4{padding-top:1.5rem!important}.pt-sm-5{padding-top:3rem!important}.pe-sm-0{padding-right:0!important}.pe-sm-1{padding-right:.25rem!important}.pe-sm-2{padding-right:.5rem!important}.pe-sm-3{padding-right:1rem!important}.pe-sm-4{padding-right:1.5rem!important}.pe-sm-5{padding-right:3rem!important}.pb-sm-0{padding-bottom:0!important}.pb-sm-1{padding-bottom:.25rem!important}.pb-sm-2{padding-bottom:.5rem!important}.pb-sm-3{padding-bottom:1rem!important}.pb-sm-4{padding-bottom:1.5rem!important}.pb-sm-5{padding-bottom:3rem!important}.ps-sm-0{padding-left:0!important}.ps-sm-1{padding-left:.25rem!important}.ps-sm-2{padding-left:.5rem!important}.ps-sm-3{padding-left:1rem!important}.ps-sm-4{padding-left:1.5rem!important}.ps-sm-5{padding-left:3rem!important}.text-sm-start{text-align:left!important}.text-sm-end{text-align:right!important}.text-sm-center{text-align:center!important}}@media (min-width:768px){.float-md-start{float:left!important}.float-md-end{float:right!important}.float-md-none{float:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-grid{display:grid!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:flex!important}.d-md-inline-flex{display:inline-flex!important}.d-md-none{display:none!important}.flex-md-fill{flex:1 1 auto!important}.flex-md-row{flex-direction:row!important}.flex-md-column{flex-direction:column!important}.flex-md-row-reverse{flex-direction:row-reverse!important}.flex-md-column-reverse{flex-direction:column-reverse!important}.flex-md-grow-0{flex-grow:0!important}.flex-md-grow-1{flex-grow:1!important}.flex-md-shrink-0{flex-shrink:0!important}.flex-md-shrink-1{flex-shrink:1!important}.flex-md-wrap{flex-wrap:wrap!important}.flex-md-nowrap{flex-wrap:nowrap!important}.flex-md-wrap-reverse{flex-wrap:wrap-reverse!important}.gap-md-0{gap:0!important}.gap-md-1{gap:.25rem!important}.gap-md-2{gap:.5rem!important}.gap-md-3{gap:1rem!important}.gap-md-4{gap:1.5rem!important}.gap-md-5{gap:3rem!important}.justify-content-md-start{justify-content:flex-start!important}.justify-content-md-end{justify-content:flex-end!important}.justify-content-md-center{justify-content:center!important}.justify-content-md-between{justify-content:space-between!important}.justify-content-md-around{justify-content:space-around!important}.justify-content-md-evenly{justify-content:space-evenly!important}.align-items-md-start{align-items:flex-start!important}.align-items-md-end{align-items:flex-end!important}.align-items-md-center{align-items:center!important}.align-items-md-baseline{align-items:baseline!important}.align-items-md-stretch{align-items:stretch!important}.align-content-md-start{align-content:flex-start!important}.align-content-md-end{align-content:flex-end!important}.align-content-md-center{align-content:center!important}.align-content-md-between{align-content:space-between!important}.align-content-md-around{align-content:space-around!important}.align-content-md-stretch{align-content:stretch!important}.align-self-md-auto{align-self:auto!important}.align-self-md-start{align-self:flex-start!important}.align-self-md-end{align-self:flex-end!important}.align-self-md-center{align-self:center!important}.align-self-md-baseline{align-self:baseline!important}.align-self-md-stretch{align-self:stretch!important}.order-md-first{order:-1!important}.order-md-0{order:0!important}.order-md-1{order:1!important}.order-md-2{order:2!important}.order-md-3{order:3!important}.order-md-4{order:4!important}.order-md-5{order:5!important}.order-md-last{order:6!important}.m-md-0{margin:0!important}.m-md-1{margin:.25rem!important}.m-md-2{margin:.5rem!important}.m-md-3{margin:1rem!important}.m-md-4{margin:1.5rem!important}.m-md-5{margin:3rem!important}.m-md-auto{margin:auto!important}.mx-md-0{margin-right:0!important;margin-left:0!important}.mx-md-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-md-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-md-3{margin-right:1rem!important;margin-left:1rem!important}.mx-md-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-md-5{margin-right:3rem!important;margin-left:3rem!important}.mx-md-auto{margin-right:auto!important;margin-left:auto!important}.my-md-0{margin-top:0!important;margin-bottom:0!important}.my-md-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-md-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-md-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-md-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-md-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-md-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-md-0{margin-top:0!important}.mt-md-1{margin-top:.25rem!important}.mt-md-2{margin-top:.5rem!important}.mt-md-3{margin-top:1rem!important}.mt-md-4{margin-top:1.5rem!important}.mt-md-5{margin-top:3rem!important}.mt-md-auto{margin-top:auto!important}.me-md-0{margin-right:0!important}.me-md-1{margin-right:.25rem!important}.me-md-2{margin-right:.5rem!important}.me-md-3{margin-right:1rem!important}.me-md-4{margin-right:1.5rem!important}.me-md-5{margin-right:3rem!important}.me-md-auto{margin-right:auto!important}.mb-md-0{margin-bottom:0!important}.mb-md-1{margin-bottom:.25rem!important}.mb-md-2{margin-bottom:.5rem!important}.mb-md-3{margin-bottom:1rem!important}.mb-md-4{margin-bottom:1.5rem!important}.mb-md-5{margin-bottom:3rem!important}.mb-md-auto{margin-bottom:auto!important}.ms-md-0{margin-left:0!important}.ms-md-1{margin-left:.25rem!important}.ms-md-2{margin-left:.5rem!important}.ms-md-3{margin-left:1rem!important}.ms-md-4{margin-left:1.5rem!important}.ms-md-5{margin-left:3rem!important}.ms-md-auto{margin-left:auto!important}.p-md-0{padding:0!important}.p-md-1{padding:.25rem!important}.p-md-2{padding:.5rem!important}.p-md-3{padding:1rem!important}.p-md-4{padding:1.5rem!important}.p-md-5{padding:3rem!important}.px-md-0{padding-right:0!important;padding-left:0!important}.px-md-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-md-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-md-3{padding-right:1rem!important;padding-left:1rem!important}.px-md-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-md-5{padding-right:3rem!important;padding-left:3rem!important}.py-md-0{padding-top:0!important;padding-bottom:0!important}.py-md-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-md-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-md-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-md-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-md-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-md-0{padding-top:0!important}.pt-md-1{padding-top:.25rem!important}.pt-md-2{padding-top:.5rem!important}.pt-md-3{padding-top:1rem!important}.pt-md-4{padding-top:1.5rem!important}.pt-md-5{padding-top:3rem!important}.pe-md-0{padding-right:0!important}.pe-md-1{padding-right:.25rem!important}.pe-md-2{padding-right:.5rem!important}.pe-md-3{padding-right:1rem!important}.pe-md-4{padding-right:1.5rem!important}.pe-md-5{padding-right:3rem!important}.pb-md-0{padding-bottom:0!important}.pb-md-1{padding-bottom:.25rem!important}.pb-md-2{padding-bottom:.5rem!important}.pb-md-3{padding-bottom:1rem!important}.pb-md-4{padding-bottom:1.5rem!important}.pb-md-5{padding-bottom:3rem!important}.ps-md-0{padding-left:0!important}.ps-md-1{padding-left:.25rem!important}.ps-md-2{padding-left:.5rem!important}.ps-md-3{padding-left:1rem!important}.ps-md-4{padding-left:1.5rem!important}.ps-md-5{padding-left:3rem!important}.text-md-start{text-align:left!important}.text-md-end{text-align:right!important}.text-md-center{text-align:center!important}}@media (min-width:992px){.float-lg-start{float:left!important}.float-lg-end{float:right!important}.float-lg-none{float:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-grid{display:grid!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:flex!important}.d-lg-inline-flex{display:inline-flex!important}.d-lg-none{display:none!important}.flex-lg-fill{flex:1 1 auto!important}.flex-lg-row{flex-direction:row!important}.flex-lg-column{flex-direction:column!important}.flex-lg-row-reverse{flex-direction:row-reverse!important}.flex-lg-column-reverse{flex-direction:column-reverse!important}.flex-lg-grow-0{flex-grow:0!important}.flex-lg-grow-1{flex-grow:1!important}.flex-lg-shrink-0{flex-shrink:0!important}.flex-lg-shrink-1{flex-shrink:1!important}.flex-lg-wrap{flex-wrap:wrap!important}.flex-lg-nowrap{flex-wrap:nowrap!important}.flex-lg-wrap-reverse{flex-wrap:wrap-reverse!important}.gap-lg-0{gap:0!important}.gap-lg-1{gap:.25rem!important}.gap-lg-2{gap:.5rem!important}.gap-lg-3{gap:1rem!important}.gap-lg-4{gap:1.5rem!important}.gap-lg-5{gap:3rem!important}.justify-content-lg-start{justify-content:flex-start!important}.justify-content-lg-end{justify-content:flex-end!important}.justify-content-lg-center{justify-content:center!important}.justify-content-lg-between{justify-content:space-between!important}.justify-content-lg-around{justify-content:space-around!important}.justify-content-lg-evenly{justify-content:space-evenly!important}.align-items-lg-start{align-items:flex-start!important}.align-items-lg-end{align-items:flex-end!important}.align-items-lg-center{align-items:center!important}.align-items-lg-baseline{align-items:baseline!important}.align-items-lg-stretch{align-items:stretch!important}.align-content-lg-start{align-content:flex-start!important}.align-content-lg-end{align-content:flex-end!important}.align-content-lg-center{align-content:center!important}.align-content-lg-between{align-content:space-between!important}.align-content-lg-around{align-content:space-around!important}.align-content-lg-stretch{align-content:stretch!important}.align-self-lg-auto{align-self:auto!important}.align-self-lg-start{align-self:flex-start!important}.align-self-lg-end{align-self:flex-end!important}.align-self-lg-center{align-self:center!important}.align-self-lg-baseline{align-self:baseline!important}.align-self-lg-stretch{align-self:stretch!important}.order-lg-first{order:-1!important}.order-lg-0{order:0!important}.order-lg-1{order:1!important}.order-lg-2{order:2!important}.order-lg-3{order:3!important}.order-lg-4{order:4!important}.order-lg-5{order:5!important}.order-lg-last{order:6!important}.m-lg-0{margin:0!important}.m-lg-1{margin:.25rem!important}.m-lg-2{margin:.5rem!important}.m-lg-3{margin:1rem!important}.m-lg-4{margin:1.5rem!important}.m-lg-5{margin:3rem!important}.m-lg-auto{margin:auto!important}.mx-lg-0{margin-right:0!important;margin-left:0!important}.mx-lg-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-lg-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-lg-3{margin-right:1rem!important;margin-left:1rem!important}.mx-lg-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-lg-5{margin-right:3rem!important;margin-left:3rem!important}.mx-lg-auto{margin-right:auto!important;margin-left:auto!important}.my-lg-0{margin-top:0!important;margin-bottom:0!important}.my-lg-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-lg-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-lg-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-lg-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-lg-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-lg-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-lg-0{margin-top:0!important}.mt-lg-1{margin-top:.25rem!important}.mt-lg-2{margin-top:.5rem!important}.mt-lg-3{margin-top:1rem!important}.mt-lg-4{margin-top:1.5rem!important}.mt-lg-5{margin-top:3rem!important}.mt-lg-auto{margin-top:auto!important}.me-lg-0{margin-right:0!important}.me-lg-1{margin-right:.25rem!important}.me-lg-2{margin-right:.5rem!important}.me-lg-3{margin-right:1rem!important}.me-lg-4{margin-right:1.5rem!important}.me-lg-5{margin-right:3rem!important}.me-lg-auto{margin-right:auto!important}.mb-lg-0{margin-bottom:0!important}.mb-lg-1{margin-bottom:.25rem!important}.mb-lg-2{margin-bottom:.5rem!important}.mb-lg-3{margin-bottom:1rem!important}.mb-lg-4{margin-bottom:1.5rem!important}.mb-lg-5{margin-bottom:3rem!important}.mb-lg-auto{margin-bottom:auto!important}.ms-lg-0{margin-left:0!important}.ms-lg-1{margin-left:.25rem!important}.ms-lg-2{margin-left:.5rem!important}.ms-lg-3{margin-left:1rem!important}.ms-lg-4{margin-left:1.5rem!important}.ms-lg-5{margin-left:3rem!important}.ms-lg-auto{margin-left:auto!important}.p-lg-0{padding:0!important}.p-lg-1{padding:.25rem!important}.p-lg-2{padding:.5rem!important}.p-lg-3{padding:1rem!important}.p-lg-4{padding:1.5rem!important}.p-lg-5{padding:3rem!important}.px-lg-0{padding-right:0!important;padding-left:0!important}.px-lg-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-lg-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-lg-3{padding-right:1rem!important;padding-left:1rem!important}.px-lg-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-lg-5{padding-right:3rem!important;padding-left:3rem!important}.py-lg-0{padding-top:0!important;padding-bottom:0!important}.py-lg-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-lg-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-lg-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-lg-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-lg-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-lg-0{padding-top:0!important}.pt-lg-1{padding-top:.25rem!important}.pt-lg-2{padding-top:.5rem!important}.pt-lg-3{padding-top:1rem!important}.pt-lg-4{padding-top:1.5rem!important}.pt-lg-5{padding-top:3rem!important}.pe-lg-0{padding-right:0!important}.pe-lg-1{padding-right:.25rem!important}.pe-lg-2{padding-right:.5rem!important}.pe-lg-3{padding-right:1rem!important}.pe-lg-4{padding-right:1.5rem!important}.pe-lg-5{padding-right:3rem!important}.pb-lg-0{padding-bottom:0!important}.pb-lg-1{padding-bottom:.25rem!important}.pb-lg-2{padding-bottom:.5rem!important}.pb-lg-3{padding-bottom:1rem!important}.pb-lg-4{padding-bottom:1.5rem!important}.pb-lg-5{padding-bottom:3rem!important}.ps-lg-0{padding-left:0!important}.ps-lg-1{padding-left:.25rem!important}.ps-lg-2{padding-left:.5rem!important}.ps-lg-3{padding-left:1rem!important}.ps-lg-4{padding-left:1.5rem!important}.ps-lg-5{padding-left:3rem!important}.text-lg-start{text-align:left!important}.text-lg-end{text-align:right!important}.text-lg-center{text-align:center!important}}@media (min-width:1200px){.float-xl-start{float:left!important}.float-xl-end{float:right!important}.float-xl-none{float:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-grid{display:grid!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:flex!important}.d-xl-inline-flex{display:inline-flex!important}.d-xl-none{display:none!important}.flex-xl-fill{flex:1 1 auto!important}.flex-xl-row{flex-direction:row!important}.flex-xl-column{flex-direction:column!important}.flex-xl-row-reverse{flex-direction:row-reverse!important}.flex-xl-column-reverse{flex-direction:column-reverse!important}.flex-xl-grow-0{flex-grow:0!important}.flex-xl-grow-1{flex-grow:1!important}.flex-xl-shrink-0{flex-shrink:0!important}.flex-xl-shrink-1{flex-shrink:1!important}.flex-xl-wrap{flex-wrap:wrap!important}.flex-xl-nowrap{flex-wrap:nowrap!important}.flex-xl-wrap-reverse{flex-wrap:wrap-reverse!important}.gap-xl-0{gap:0!important}.gap-xl-1{gap:.25rem!important}.gap-xl-2{gap:.5rem!important}.gap-xl-3{gap:1rem!important}.gap-xl-4{gap:1.5rem!important}.gap-xl-5{gap:3rem!important}.justify-content-xl-start{justify-content:flex-start!important}.justify-content-xl-end{justify-content:flex-end!important}.justify-content-xl-center{justify-content:center!important}.justify-content-xl-between{justify-content:space-between!important}.justify-content-xl-around{justify-content:space-around!important}.justify-content-xl-evenly{justify-content:space-evenly!important}.align-items-xl-start{align-items:flex-start!important}.align-items-xl-end{align-items:flex-end!important}.align-items-xl-center{align-items:center!important}.align-items-xl-baseline{align-items:baseline!important}.align-items-xl-stretch{align-items:stretch!important}.align-content-xl-start{align-content:flex-start!important}.align-content-xl-end{align-content:flex-end!important}.align-content-xl-center{align-content:center!important}.align-content-xl-between{align-content:space-between!important}.align-content-xl-around{align-content:space-around!important}.align-content-xl-stretch{align-content:stretch!important}.align-self-xl-auto{align-self:auto!important}.align-self-xl-start{align-self:flex-start!important}.align-self-xl-end{align-self:flex-end!important}.align-self-xl-center{align-self:center!important}.align-self-xl-baseline{align-self:baseline!important}.align-self-xl-stretch{align-self:stretch!important}.order-xl-first{order:-1!important}.order-xl-0{order:0!important}.order-xl-1{order:1!important}.order-xl-2{order:2!important}.order-xl-3{order:3!important}.order-xl-4{order:4!important}.order-xl-5{order:5!important}.order-xl-last{order:6!important}.m-xl-0{margin:0!important}.m-xl-1{margin:.25rem!important}.m-xl-2{margin:.5rem!important}.m-xl-3{margin:1rem!important}.m-xl-4{margin:1.5rem!important}.m-xl-5{margin:3rem!important}.m-xl-auto{margin:auto!important}.mx-xl-0{margin-right:0!important;margin-left:0!important}.mx-xl-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-xl-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-xl-3{margin-right:1rem!important;margin-left:1rem!important}.mx-xl-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-xl-5{margin-right:3rem!important;margin-left:3rem!important}.mx-xl-auto{margin-right:auto!important;margin-left:auto!important}.my-xl-0{margin-top:0!important;margin-bottom:0!important}.my-xl-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-xl-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-xl-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-xl-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-xl-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-xl-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-xl-0{margin-top:0!important}.mt-xl-1{margin-top:.25rem!important}.mt-xl-2{margin-top:.5rem!important}.mt-xl-3{margin-top:1rem!important}.mt-xl-4{margin-top:1.5rem!important}.mt-xl-5{margin-top:3rem!important}.mt-xl-auto{margin-top:auto!important}.me-xl-0{margin-right:0!important}.me-xl-1{margin-right:.25rem!important}.me-xl-2{margin-right:.5rem!important}.me-xl-3{margin-right:1rem!important}.me-xl-4{margin-right:1.5rem!important}.me-xl-5{margin-right:3rem!important}.me-xl-auto{margin-right:auto!important}.mb-xl-0{margin-bottom:0!important}.mb-xl-1{margin-bottom:.25rem!important}.mb-xl-2{margin-bottom:.5rem!important}.mb-xl-3{margin-bottom:1rem!important}.mb-xl-4{margin-bottom:1.5rem!important}.mb-xl-5{margin-bottom:3rem!important}.mb-xl-auto{margin-bottom:auto!important}.ms-xl-0{margin-left:0!important}.ms-xl-1{margin-left:.25rem!important}.ms-xl-2{margin-left:.5rem!important}.ms-xl-3{margin-left:1rem!important}.ms-xl-4{margin-left:1.5rem!important}.ms-xl-5{margin-left:3rem!important}.ms-xl-auto{margin-left:auto!important}.p-xl-0{padding:0!important}.p-xl-1{padding:.25rem!important}.p-xl-2{padding:.5rem!important}.p-xl-3{padding:1rem!important}.p-xl-4{padding:1.5rem!important}.p-xl-5{padding:3rem!important}.px-xl-0{padding-right:0!important;padding-left:0!important}.px-xl-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-xl-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-xl-3{padding-right:1rem!important;padding-left:1rem!important}.px-xl-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-xl-5{padding-right:3rem!important;padding-left:3rem!important}.py-xl-0{padding-top:0!important;padding-bottom:0!important}.py-xl-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-xl-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-xl-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-xl-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-xl-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-xl-0{padding-top:0!important}.pt-xl-1{padding-top:.25rem!important}.pt-xl-2{padding-top:.5rem!important}.pt-xl-3{padding-top:1rem!important}.pt-xl-4{padding-top:1.5rem!important}.pt-xl-5{padding-top:3rem!important}.pe-xl-0{padding-right:0!important}.pe-xl-1{padding-right:.25rem!important}.pe-xl-2{padding-right:.5rem!important}.pe-xl-3{padding-right:1rem!important}.pe-xl-4{padding-right:1.5rem!important}.pe-xl-5{padding-right:3rem!important}.pb-xl-0{padding-bottom:0!important}.pb-xl-1{padding-bottom:.25rem!important}.pb-xl-2{padding-bottom:.5rem!important}.pb-xl-3{padding-bottom:1rem!important}.pb-xl-4{padding-bottom:1.5rem!important}.pb-xl-5{padding-bottom:3rem!important}.ps-xl-0{padding-left:0!important}.ps-xl-1{padding-left:.25rem!important}.ps-xl-2{padding-left:.5rem!important}.ps-xl-3{padding-left:1rem!important}.ps-xl-4{padding-left:1.5rem!important}.ps-xl-5{padding-left:3rem!important}.text-xl-start{text-align:left!important}.text-xl-end{text-align:right!important}.text-xl-center{text-align:center!important}}@media (min-width:1400px){.float-xxl-start{float:left!important}.float-xxl-end{float:right!important}.float-xxl-none{float:none!important}.d-xxl-inline{display:inline!important}.d-xxl-inline-block{display:inline-block!important}.d-xxl-block{display:block!important}.d-xxl-grid{display:grid!important}.d-xxl-table{display:table!important}.d-xxl-table-row{display:table-row!important}.d-xxl-table-cell{display:table-cell!important}.d-xxl-flex{display:flex!important}.d-xxl-inline-flex{display:inline-flex!important}.d-xxl-none{display:none!important}.flex-xxl-fill{flex:1 1 auto!important}.flex-xxl-row{flex-direction:row!important}.flex-xxl-column{flex-direction:column!important}.flex-xxl-row-reverse{flex-direction:row-reverse!important}.flex-xxl-column-reverse{flex-direction:column-reverse!important}.flex-xxl-grow-0{flex-grow:0!important}.flex-xxl-grow-1{flex-grow:1!important}.flex-xxl-shrink-0{flex-shrink:0!important}.flex-xxl-shrink-1{flex-shrink:1!important}.flex-xxl-wrap{flex-wrap:wrap!important}.flex-xxl-nowrap{flex-wrap:nowrap!important}.flex-xxl-wrap-reverse{flex-wrap:wrap-reverse!important}.gap-xxl-0{gap:0!important}.gap-xxl-1{gap:.25rem!important}.gap-xxl-2{gap:.5rem!important}.gap-xxl-3{gap:1rem!important}.gap-xxl-4{gap:1.5rem!important}.gap-xxl-5{gap:3rem!important}.justify-content-xxl-start{justify-content:flex-start!important}.justify-content-xxl-end{justify-content:flex-end!important}.justify-content-xxl-center{justify-content:center!important}.justify-content-xxl-between{justify-content:space-between!important}.justify-content-xxl-around{justify-content:space-around!important}.justify-content-xxl-evenly{justify-content:space-evenly!important}.align-items-xxl-start{align-items:flex-start!important}.align-items-xxl-end{align-items:flex-end!important}.align-items-xxl-center{align-items:center!important}.align-items-xxl-baseline{align-items:baseline!important}.align-items-xxl-stretch{align-items:stretch!important}.align-content-xxl-start{align-content:flex-start!important}.align-content-xxl-end{align-content:flex-end!important}.align-content-xxl-center{align-content:center!important}.align-content-xxl-between{align-content:space-between!important}.align-content-xxl-around{align-content:space-around!important}.align-content-xxl-stretch{align-content:stretch!important}.align-self-xxl-auto{align-self:auto!important}.align-self-xxl-start{align-self:flex-start!important}.align-self-xxl-end{align-self:flex-end!important}.align-self-xxl-center{align-self:center!important}.align-self-xxl-baseline{align-self:baseline!important}.align-self-xxl-stretch{align-self:stretch!important}.order-xxl-first{order:-1!important}.order-xxl-0{order:0!important}.order-xxl-1{order:1!important}.order-xxl-2{order:2!important}.order-xxl-3{order:3!important}.order-xxl-4{order:4!important}.order-xxl-5{order:5!important}.order-xxl-last{order:6!important}.m-xxl-0{margin:0!important}.m-xxl-1{margin:.25rem!important}.m-xxl-2{margin:.5rem!important}.m-xxl-3{margin:1rem!important}.m-xxl-4{margin:1.5rem!important}.m-xxl-5{margin:3rem!important}.m-xxl-auto{margin:auto!important}.mx-xxl-0{margin-right:0!important;margin-left:0!important}.mx-xxl-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-xxl-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-xxl-3{margin-right:1rem!important;margin-left:1rem!important}.mx-xxl-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-xxl-5{margin-right:3rem!important;margin-left:3rem!important}.mx-xxl-auto{margin-right:auto!important;margin-left:auto!important}.my-xxl-0{margin-top:0!important;margin-bottom:0!important}.my-xxl-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-xxl-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-xxl-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-xxl-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-xxl-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-xxl-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-xxl-0{margin-top:0!important}.mt-xxl-1{margin-top:.25rem!important}.mt-xxl-2{margin-top:.5rem!important}.mt-xxl-3{margin-top:1rem!important}.mt-xxl-4{margin-top:1.5rem!important}.mt-xxl-5{margin-top:3rem!important}.mt-xxl-auto{margin-top:auto!important}.me-xxl-0{margin-right:0!important}.me-xxl-1{margin-right:.25rem!important}.me-xxl-2{margin-right:.5rem!important}.me-xxl-3{margin-right:1rem!important}.me-xxl-4{margin-right:1.5rem!important}.me-xxl-5{margin-right:3rem!important}.me-xxl-auto{margin-right:auto!important}.mb-xxl-0{margin-bottom:0!important}.mb-xxl-1{margin-bottom:.25rem!important}.mb-xxl-2{margin-bottom:.5rem!important}.mb-xxl-3{margin-bottom:1rem!important}.mb-xxl-4{margin-bottom:1.5rem!important}.mb-xxl-5{margin-bottom:3rem!important}.mb-xxl-auto{margin-bottom:auto!important}.ms-xxl-0{margin-left:0!important}.ms-xxl-1{margin-left:.25rem!important}.ms-xxl-2{margin-left:.5rem!important}.ms-xxl-3{margin-left:1rem!important}.ms-xxl-4{margin-left:1.5rem!important}.ms-xxl-5{margin-left:3rem!important}.ms-xxl-auto{margin-left:auto!important}.p-xxl-0{padding:0!important}.p-xxl-1{padding:.25rem!important}.p-xxl-2{padding:.5rem!important}.p-xxl-3{padding:1rem!important}.p-xxl-4{padding:1.5rem!important}.p-xxl-5{padding:3rem!important}.px-xxl-0{padding-right:0!important;padding-left:0!important}.px-xxl-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-xxl-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-xxl-3{padding-right:1rem!important;padding-left:1rem!important}.px-xxl-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-xxl-5{padding-right:3rem!important;padding-left:3rem!important}.py-xxl-0{padding-top:0!important;padding-bottom:0!important}.py-xxl-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-xxl-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-xxl-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-xxl-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-xxl-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-xxl-0{padding-top:0!important}.pt-xxl-1{padding-top:.25rem!important}.pt-xxl-2{padding-top:.5rem!important}.pt-xxl-3{padding-top:1rem!important}.pt-xxl-4{padding-top:1.5rem!important}.pt-xxl-5{padding-top:3rem!important}.pe-xxl-0{padding-right:0!important}.pe-xxl-1{padding-right:.25rem!important}.pe-xxl-2{padding-right:.5rem!important}.pe-xxl-3{padding-right:1rem!important}.pe-xxl-4{padding-right:1.5rem!important}.pe-xxl-5{padding-right:3rem!important}.pb-xxl-0{padding-bottom:0!important}.pb-xxl-1{padding-bottom:.25rem!important}.pb-xxl-2{padding-bottom:.5rem!important}.pb-xxl-3{padding-bottom:1rem!important}.pb-xxl-4{padding-bottom:1.5rem!important}.pb-xxl-5{padding-bottom:3rem!important}.ps-xxl-0{padding-left:0!important}.ps-xxl-1{padding-left:.25rem!important}.ps-xxl-2{padding-left:.5rem!important}.ps-xxl-3{padding-left:1rem!important}.ps-xxl-4{padding-left:1.5rem!important}.ps-xxl-5{padding-left:3rem!important}.text-xxl-start{text-align:left!important}.text-xxl-end{text-align:right!important}.text-xxl-center{text-align:center!important}}@media (min-width:1200px){.fs-1{font-size:2.5rem!important}.fs-2{font-size:2rem!important}.fs-3{font-size:1.75rem!important}.fs-4{font-size:1.5rem!important}}@media print{.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-grid{display:grid!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:flex!important}.d-print-inline-flex{display:inline-flex!important}.d-print-none{display:none!important}}
/*# sourceMappingURL=bootstrap.min.css.map */
/* End */


/* Start:/local/templates/eshop_bootstrap_v4/css/config-themes.css?1782571792971*/
/* =========================================================================
   config-themes.css — skupni design-tokeni, ki morajo biti naloženi na VSAKI
   strani predloge (header.php jih veže PRED new-design.css). Doslej je bila
   datoteka referencirana, a je ni bilo → spremenljivke --shadow-* so bile
   nedefinirane in sence (kartice, spustni meniji, modali, zavihki) se NISO
   izrisale niti na javnem meniju. Tu jih definiramo enkrat za vse.

   Barvni žetoni (--nd-*) ostanejo v new-design.css :root; tu je zgolj lestvica
   dvigov/senc, ki jo uporablja enoten skin čez meni + panel + samostojna orodja.
   ========================================================================= */
:root{
  /* Mehke, nevtralne sence (ink-tonirane), enak občutek na vseh temah. */
  --shadow-sm: 0 1px 2px rgba(31,42,40,.05), 0 2px 8px -4px rgba(31,42,40,.12);
  --shadow-md: 0 6px 18px -8px rgba(31,42,40,.20);
  --shadow-lg: 0 18px 50px -12px rgba(31,42,40,.28);
}

/* End */


/* Start:/css/staff.css?178841586714230*/
/* Стили для интерфейса сотрудника */

/* Быстрые блоки сотрудника вверху меню — плитки заказов и «хиты продаж».
   Они лежат в кэшированном HTML меню (CACHE_TYPE=A) для всех, но по умолчанию
   скрыты; для сотрудника с правом приёма заказов их раскрывает серверный класс
   body.can-orders (выставляется в header.php при первой отрисовке), поэтому они
   появляются на ПЕРВЫЙ paint без раунд-трипа токена и без «скачка». Мгновенно
   (display), без анимации. Кухня (только просмотр) класса can-orders не получает
   → остаётся скрыто (у неё отдельный экран /kitchen).
   ID-специфичность: правило-раскрытие (body.can-orders + #id) перебивает
   дефолт-скрытие (#id). init_staff_mode() дополнительно делает .show() — это
   fallback для path-доступа и для окна перегенерации кэша после деплоя, когда в
   старом HTML ещё стоит inline display:none. */
#staff-orders-block,
#staffPopularAccordion { display: none; }
body.can-orders #staff-orders-block,
body.can-orders #staffPopularAccordion { display: block; }

/* Колокольчик-напоминалка о задачах сотрудника в универсальном топ-баре
   (nd_topbar.php). Скрыт по умолчанию (класс d-none в разметке) и показывается
   только когда есть невыполненные задачи — refreshDayTasksBadge() (staff.js)
   снимает/ставит d-none по get_pending_count. Нет задач — нет колокольчика.
   Пока смена не начата, get_pending_count всегда отдаёт 0, так что до
   «Začni izmeno» колокольчика нет вовсе.
   Живёт в фиксированном топ-баре, поэтому появление не двигает ни хэдер, ни меню.
   Здесь — только позиционирование бейджа на 44px .nd-ico. */
#staffTasksBell .nd-ico-tasks-badge {
    top: 3px;
    right: 3px;
    font-size: 0.6rem;
    line-height: 1;
    min-width: 1.15em;
    padding: 0.2em 0.3em;
}

/* ⚠️ ЗДЕСЬ БЫЛО ПРАВИЛО, ПРЯТАВШЕЕ У РОЛИ «Кухня» БЛОК КНОПОК СМЕНЫ И БАННЕР.
   Оно писалось, когда смена была только КАССОВОЙ и повару не полагалась. С тех
   пор появилась личная смена (отметка прихода в табель), и её отмечают все роли
   — а правило продолжало прятать у кухни и плашку, и футерную кнопку, то есть
   повар не мог отметить приход НИ ОДНИМ способом. Снято.
   Кассовые кнопки кухне при этом не показываются и без правила: все три колонки
   внутри #staff-shift-button-wrap стоят d-none по умолчанию, «отмена кассы»
   зависит от currentShift, а loadCurrentShift() для роли без CAFE_OPEN_CLOSE не
   вызывается вовсе (staff.js, init_staff_mode). */

/* ══ Плашка «смена не открыта» ══════════════════════════════════════════════
   Не предупреждение, а физическая помеха: занимает четверть экрана и мешает
   смотреть заказы, пока человек не отметил приход. Выбрано вместо мигания —
   к миганию привыкают за неделю, а у помехи есть выход в один тап, и этот тап
   и есть нужное действие.

   ⚠️ ВСЁ ВИСИТ НА КЛАССЕ, НЕ НА #id. Шаблон меню кэшируется на ~416 дней и
   deploy.sh кэш не чистит: у кафе, давно не правившего меню, к новой CSS
   приедет СТАРАЯ разметка. На классе правила к ней не прилипнут — останется
   прежняя узкая кнопка. Селектор по #id вдобавок перебил бы
   `body:not(.is-employee) .show-is-employee { display:none }` (специфичность
   1,0,0 против 0,2,1) и оставил бы защиту от показа гостю только на d-none.

   Разъезжание: grid-template-rows 0fr → 1fr. Это единственный приём, который
   доводит до НАТУРАЛЬНОЙ высоты содержимого. Анимация height потребовала бы
   фиксированного значения, а 25vh на телефоне 360×640 — это 160px, куда
   заголовок в три строки, имя, подпись и кнопка не влезают: кнопку срезало бы
   насовсем, а её-то и надо нажать. */
.em-shift-wall {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 3s ease-out;
}
.em-shift-wall.em-shift-grow { grid-template-rows: 1fr; }
/* min-height:0 обязателен: иначе grid-элемент не сжимается до нуля и плашка
   стоит в полный рост ещё до анимации. */
.em-shift-wall-inner { overflow: hidden; min-height: 0; }
.em-shift-wall-card {
    /* Постановка: min-height 25vh. Нижняя граница в 190px — чтобы на низком
       экране (или в горизонтальной ориентации) кнопка не оказалась в обрезке. */
    min-height: max(25vh, 190px);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    padding: 1rem;
    margin-bottom: .75rem;
    border: 2px solid #ffc107;
    border-radius: .5rem;
    background: #fff3cd;
    color: #664d03;
    text-align: center;
}
.em-shift-wall-icon  { font-size: 2.5rem; line-height: 1; }
.em-shift-wall-title { font-size: 1.5rem; font-weight: 700; line-height: 1.2; }
.em-shift-wall-name  { font-size: 1.15rem; font-weight: 600; }
/* Пустое имя (ответ без staff_name) не должно оставлять зазор. */
.em-shift-wall-name:empty { display: none; }
.em-shift-wall-hint  { font-size: .95rem; opacity: .8; }
.em-shift-wall-btn   { margin-top: .25rem; }

/* Уважаем системную настройку «уменьшить движение»: плашка появляется сразу в
   полный рост. Сигнал не теряется — меняется только способ подачи. */
@media (prefers-reduced-motion: reduce) {
    .em-shift-wall { transition: none; }
}

/* Статус готовки позиции (кухня↔официант). Цветовая индикация статуса
   (new=серый, accepted=янтарь, prepared=зелёный, delivered=синий) — ТОЛЬКО на
   доске кухни (/kitchen, .kt-unit), где важно быстрое считывание. В списке
   заказов сотрудника селект остаётся нейтральным (цвет не меняем). */
.staff-cook-select { font-weight: 600; }
/* Чекбокс готовности для быстрых станций (бар/кофе/кальян) — без подписи,
   крупнее дефолтного form-check-input, чтобы удобно попадать пальцем. */
.staff-cook-check { width: 1.4em; height: 1.4em; cursor: pointer; flex-shrink: 0; }
.kt-unit .staff-cook-select.cook-new       { color: #6c757d; }
.kt-unit .staff-cook-select.cook-accepted  { color: #fd7e14; border-color: #fd7e14; }
.kt-unit .staff-cook-select.cook-prepared  { color: #198754; border-color: #198754; }
.kt-unit .staff-cook-select.cook-delivered { color: #0d6efd; border-color: #0d6efd; }

/* Staff dropdown menu */
.staff-dropdown-container {
    position: relative;
}

.staff-dropdown-menu {
    display: none;
    min-width: 220px;
    margin-bottom: 5px;
}

#staff-password-inline {
    display: none;
}

#staff-password-inline.show {
    display: block;
}

/* Модальные окна */
#staff-password-modal .modal-content,
#staff-push-modal .modal-content {
    border-radius: 15px;
}

#staff-password-modal .modal-header,
#staff-push-modal .modal-header {
    background-color: #0d6efd;
    color: white;
    border-top-left-radius: 15px;
    border-top-right-radius: 15px;
}

#staff-password-modal .btn-close,
#staff-push-modal .btn-close {
    filter: invert(1);
}

/* Day-tasks modal (moved from inline <style> in footer.php). Lives here so the
   per-page HTML stays small for non-staff visitors. */
#dayTasksOpenList .task-item-done .task-name,
#dayTasksOpenShiftList .task-item-done .task-name,
#dayTasksTodayList .task-item-done .task-name,
#dayTasksCloseShiftList .task-item-done .task-name,
#dayTasksCloseCafeList .task-item-done .task-name { text-decoration: line-through; color: #6c757d; }
#dayTasksOpenList .task-item, #dayTasksOpenShiftList .task-item,
#dayTasksTodayList .task-item, #dayTasksCloseShiftList .task-item,
#dayTasksCloseCafeList .task-item { padding-top: 8px; padding-bottom: 8px; border-bottom: 1px solid #eee; }
#dayTasksOpenList .task-item:last-child, #dayTasksOpenShiftList .task-item:last-child,
#dayTasksTodayList .task-item:last-child, #dayTasksCloseShiftList .task-item:last-child,
#dayTasksCloseCafeList .task-item:last-child { border-bottom: 0; }
.day-tasks-backfill { padding-top: 6px; padding-bottom: 6px; }
/* Journal-typed task: inline list of devices/zones replaces the checkbox.
   Each row's gap-2 mb-1 already handles spacing; we only need to size the
   per-row inputs so the line stays compact on narrow screens. */
.task-item-journal .task-journal-row .js-temp-val { width: 40px; flex: 0 0 40px; }
/* Freezer rows wrap the input in an input-group with a clickable
   sign prefix — the mobile decimal keypad omits "-", so without
   this the negative range can't be entered on a phone. Override
   the bare-input sizing so the input fills the group. */
.task-item-journal .task-journal-row .js-temp-input-group { width: 78px; flex: 0 0 78px; flex-wrap: nowrap; }
.task-item-journal .task-journal-row .js-temp-input-group .js-temp-val { width: auto; flex: 1 1 auto; min-width: 0; }
.task-item-journal .task-journal-row .js-temp-sign { padding: 0.1rem 0.35rem; min-width: 1.6rem; font-weight: 600; line-height: 1.2; }
/* Done indicator: real disabled checkbox matching plain tasks. Hidden
   (space reserved) until the row is filled, then appears checked. */
.task-item-journal .task-journal-row .js-row-check { margin-top: 0; pointer-events: none; flex-shrink: 0; }
.task-item-journal .task-journal-row-done .task-journal-label { color: #6c757d; text-decoration: line-through; }
.task-item-journal .task-journal-row-incident .js-temp-val { border-color: #dc3545; }
/* Device-row "how to do it" hint: the checkbox+name row has no container
   padding, so indent the hint to line up under the device name (matching the
   note block's 22px). Mirrors the plain checklist-task hint, which sits inside
   the form-check's padding rather than hard against the left edge. */
.task-item-journal .task-journal-row .task-hint { padding-left: 22px; }
/* Temperature note: collapsed behind "Note ▾/▴" toggle below the row;
   input is full-width when expanded (overrides .js-temp-note flex sizing). */
.task-item-journal .task-journal-note-block { padding-left: 22px; margin-bottom: 4px; }
.task-item-journal .task-journal-note-toggle { text-decoration: none; color: #6c757d; font-size: 0.8rem; }
.task-item-journal .task-journal-note-block .js-temp-note { width: 100%; max-width: none; margin-top: 4px; }
/* Mobile (< md): the .w-100 spacer in the markup pushes the temperature input
   onto its own line. Indent it to line up with the device name (matching the
   note block's 22px), kill the breaker's row-gap and add a tight 4px top
   margin instead. md+ has the spacer display:none, so the input stays inline. */
@media (max-width: 767.98px) {
  .task-item-journal .task-journal-row .d-flex { row-gap: 0; }
  .task-item-journal .task-journal-row .d-flex > .js-temp-val,
  .task-item-journal .task-journal-row .d-flex > .js-temp-input-group { margin-left: 22px; margin-top: 4px; }
}
/* Cash-typed task: amount input + collapsible denomination breakdown.
   Same containing rules as journal tasks but with its own layout. */
.task-item-cash .cash-task-body { max-width: 360px; }
.task-item-cash .js-cash-breakdown-toggle { text-decoration: none; }

/* Change-calculator keypad (#staffChangeCalcModal). On-screen numeric pad so
   the native mobile keyboard never opens (the received input is readonly +
   inputmode=none) — otherwise it covers the change amount and the "pay cash"
   button. 3-column grid of large touch targets. See staff_change_calc(). */
/* Quick-cash denomination row above the keypad: additively adds a note to the
   received amount (data-key="add:N"). Handled by the same delegated click. */
.staff-cash-quick { display: grid; grid-template-columns: repeat(4, 1fr); gap: 6px; }
.staff-cash-quick .btn { font-weight: 600; padding: 0.4rem 0; }
.staff-keypad { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.staff-keypad .staff-keypad-btn {
  font-size: 1.5rem; font-weight: 600; min-height: 52px; line-height: 1.1;
  touch-action: manipulation; user-select: none;
}

/* End */


/* Start:/bootstrap_v5/css/bootstrap-icons.subset.css?178696440115985*/
/*! Bootstrap Icons v1.10.5 — eMENI SUBSET. GENERATED by
 *  tools/icons/build-subset.py. Do NOT edit by hand; re-run the script
 *  after adding icons in code, then deploy. */
@font-face {
  font-display: swap;
  font-family: "bootstrap-icons";
  src: url("/bootstrap_v5/css/./fonts/bootstrap-icons.subset.woff2?v=10") format("woff2");
}
.bi::before,
[class^="bi-"]::before,
[class*=" bi-"]::before {
  display: inline-block;
  font-family: "bootstrap-icons" !important;
  font-style: normal;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  vertical-align: -.125em;
  width: 1em;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.bi-activity::before { content: "\f66b"; }
.bi-app::before { content: "\f10b"; }
.bi-archive::before { content: "\f10d"; }
.bi-arrow-clockwise::before { content: "\f116"; }
.bi-arrow-counterclockwise::before { content: "\f117"; }
.bi-arrow-down::before { content: "\f128"; }
.bi-arrow-down-circle::before { content: "\f119"; }
.bi-arrow-down-square::before { content: "\f126"; }
.bi-arrow-left::before { content: "\f12f"; }
.bi-arrow-left-right::before { content: "\f12b"; }
.bi-arrow-repeat::before { content: "\f130"; }
.bi-arrow-return-left::before { content: "\f131"; }
.bi-arrow-right::before { content: "\f138"; }
.bi-arrow-right-circle::before { content: "\f134"; }
.bi-arrow-right-circle-fill::before { content: "\f133"; }
.bi-arrow-right-short::before { content: "\f135"; }
.bi-arrow-up::before { content: "\f148"; }
.bi-arrow-up-circle::before { content: "\f13a"; }
.bi-arrow-up-short::before { content: "\f145"; }
.bi-arrows-move::before { content: "\f14e"; }
.bi-bag::before { content: "\f179"; }
.bi-bag-check::before { content: "\f171"; }
.bi-bank::before { content: "\f62e"; }
.bi-bar-chart::before { content: "\f17e"; }
.bi-bar-chart-line::before { content: "\f17c"; }
.bi-bell::before { content: "\f18a"; }
.bi-bell-fill::before { content: "\f189"; }
.bi-bell-slash::before { content: "\f631"; }
.bi-book::before { content: "\f194"; }
.bi-bookmark-plus::before { content: "\f19d"; }
.bi-box::before { content: "\f1c8"; }
.bi-box-arrow-in-right::before { content: "\f1be"; }
.bi-box-arrow-right::before { content: "\f1c3"; }
.bi-box-arrow-up-right::before { content: "\f1c5"; }
.bi-box-seam::before { content: "\f1c7"; }
.bi-broadcast::before { content: "\f1d6"; }
.bi-broadcast-pin::before { content: "\f1d5"; }
.bi-brush::before { content: "\f1d8"; }
.bi-bug::before { content: "\f1dc"; }
.bi-building::before { content: "\f1dd"; }
.bi-building-add::before { content: "\f867"; }
.bi-calculator::before { content: "\f1e0"; }
.bi-calendar::before { content: "\f1f6"; }
.bi-calendar-check::before { content: "\f1e2"; }
.bi-calendar-event::before { content: "\f1e8"; }
.bi-calendar-range::before { content: "\f1f1"; }
.bi-calendar-week::before { content: "\f1f3"; }
.bi-calendar-x::before { content: "\f1f5"; }
.bi-calendar-x-fill::before { content: "\f1f4"; }
.bi-calendar3::before { content: "\f214"; }
.bi-calendar3-week::before { content: "\f213"; }
.bi-camera::before { content: "\f220"; }
.bi-camera-video::before { content: "\f21f"; }
.bi-card-checklist::before { content: "\f224"; }
.bi-card-image::before { content: "\f226"; }
.bi-card-list::before { content: "\f227"; }
.bi-card-text::before { content: "\f228"; }
.bi-cart-check::before { content: "\f23a"; }
.bi-cart-plus::before { content: "\f23f"; }
.bi-cart-x::before { content: "\f241"; }
.bi-cart3::before { content: "\f244"; }
.bi-cash::before { content: "\f247"; }
.bi-cash-coin::before { content: "\f632"; }
.bi-cash-stack::before { content: "\f246"; }
.bi-chat-dots::before { content: "\f24a"; }
.bi-chat-heart::before { content: "\f714"; }
.bi-chat-left-quote::before { content: "\f250"; }
.bi-chat-left-text::before { content: "\f252"; }
.bi-chat-square-text::before { content: "\f264"; }
.bi-check::before { content: "\f26e"; }
.bi-check-all::before { content: "\f269"; }
.bi-check-circle::before { content: "\f26b"; }
.bi-check-circle-fill::before { content: "\f26a"; }
.bi-check-lg::before { content: "\f633"; }
.bi-check-square::before { content: "\f26d"; }
.bi-check2::before { content: "\f272"; }
.bi-check2-circle::before { content: "\f270"; }
.bi-check2-square::before { content: "\f271"; }
.bi-chevron-down::before { content: "\f282"; }
.bi-chevron-left::before { content: "\f284"; }
.bi-chevron-right::before { content: "\f285"; }
.bi-chevron-up::before { content: "\f286"; }
.bi-circle::before { content: "\f28a"; }
.bi-clipboard::before { content: "\f290"; }
.bi-clipboard-check::before { content: "\f28b"; }
.bi-clipboard-data::before { content: "\f28c"; }
.bi-clipboard-heart::before { content: "\f71f"; }
.bi-clipboard2-check::before { content: "\f725"; }
.bi-clipboard2-pulse::before { content: "\f730"; }
.bi-clock::before { content: "\f293"; }
.bi-clock-fill::before { content: "\f291"; }
.bi-clock-history::before { content: "\f292"; }
.bi-cloud-arrow-down::before { content: "\f295"; }
.bi-code-slash::before { content: "\f2c6"; }
.bi-coin::before { content: "\f634"; }
.bi-collection::before { content: "\f2cc"; }
.bi-columns-gap::before { content: "\f2cd"; }
.bi-controller::before { content: "\f2d4"; }
.bi-cpu::before { content: "\f2d6"; }
.bi-credit-card::before { content: "\f2dc"; }
.bi-credit-card-2-front::before { content: "\f2da"; }
.bi-cup::before { content: "\f2e0"; }
.bi-cup-hot::before { content: "\f7eb"; }
.bi-cup-hot-fill::before { content: "\f7ea"; }
.bi-cup-straw::before { content: "\f2df"; }
.bi-dash-circle::before { content: "\f2e6"; }
.bi-dash-lg::before { content: "\f63b"; }
.bi-database::before { content: "\f8c4"; }
.bi-database-x::before { content: "\f8c3"; }
.bi-device-hdd::before { content: "\f6f9"; }
.bi-diagram-2::before { content: "\f2ec"; }
.bi-diagram-3::before { content: "\f2ee"; }
.bi-door-open::before { content: "\f308"; }
.bi-download::before { content: "\f30a"; }
.bi-droplet::before { content: "\f30d"; }
.bi-droplet-half::before { content: "\f30c"; }
.bi-easel::before { content: "\f310"; }
.bi-egg-fried::before { content: "\f312"; }
.bi-emoji-frown::before { content: "\f31d"; }
.bi-emoji-smile-fill::before { content: "\f324"; }
.bi-envelope::before { content: "\f32f"; }
.bi-envelope-at::before { content: "\f84c"; }
.bi-envelope-check::before { content: "\f68c"; }
.bi-envelope-exclamation::before { content: "\f692"; }
.bi-envelope-fill::before { content: "\f32c"; }
.bi-exclamation-circle::before { content: "\f333"; }
.bi-exclamation-octagon::before { content: "\f337"; }
.bi-exclamation-triangle::before { content: "\f33b"; }
.bi-exclamation-triangle-fill::before { content: "\f33a"; }
.bi-eye::before { content: "\f341"; }
.bi-eye-fill::before { content: "\f33e"; }
.bi-eye-slash::before { content: "\f340"; }
.bi-eyedropper::before { content: "\f342"; }
.bi-facebook::before { content: "\f344"; }
.bi-fan::before { content: "\f670"; }
.bi-file-earmark::before { content: "\f392"; }
.bi-file-earmark-arrow-up::before { content: "\f358"; }
.bi-file-earmark-check::before { content: "\f360"; }
.bi-file-earmark-excel::before { content: "\f368"; }
.bi-file-earmark-image::before { content: "\f36d"; }
.bi-file-earmark-medical::before { content: "\f373"; }
.bi-file-earmark-pdf::before { content: "\f63e"; }
.bi-file-earmark-plus::before { content: "\f37d"; }
.bi-file-earmark-ppt::before { content: "\f381"; }
.bi-file-earmark-text::before { content: "\f38b"; }
.bi-file-earmark-word::before { content: "\f38d"; }
.bi-file-earmark-x::before { content: "\f38f"; }
.bi-files::before { content: "\f3c2"; }
.bi-filetype-xml::before { content: "\f76b"; }
.bi-fire::before { content: "\f7f6"; }
.bi-flower1::before { content: "\f3cd"; }
.bi-folder-plus::before { content: "\f3d3"; }
.bi-folder2-open::before { content: "\f3d8"; }
.bi-funnel::before { content: "\f3e1"; }
.bi-gear::before { content: "\f3e5"; }
.bi-gear-fill::before { content: "\f3e2"; }
.bi-gear-wide-connected::before { content: "\f3e3"; }
.bi-gem::before { content: "\f3e6"; }
.bi-geo-alt::before { content: "\f3e8"; }
.bi-geo-alt-fill::before { content: "\f3e7"; }
.bi-git::before { content: "\f69d"; }
.bi-globe2::before { content: "\f3ef"; }
.bi-google::before { content: "\f3f0"; }
.bi-graph-up::before { content: "\f3f2"; }
.bi-graph-up-arrow::before { content: "\f673"; }
.bi-grid::before { content: "\f3fc"; }
.bi-grid-3x3-gap::before { content: "\f3f9"; }
.bi-grip-vertical::before { content: "\f3fe"; }
.bi-hand-index::before { content: "\f403"; }
.bi-hand-thumbs-down::before { content: "\f405"; }
.bi-hand-thumbs-up::before { content: "\f407"; }
.bi-hash::before { content: "\f40a"; }
.bi-hdd::before { content: "\f412"; }
.bi-heart::before { content: "\f417"; }
.bi-heart-fill::before { content: "\f415"; }
.bi-heart-pulse::before { content: "\f76f"; }
.bi-hospital::before { content: "\f774"; }
.bi-hourglass-split::before { content: "\f41f"; }
.bi-house::before { content: "\f425"; }
.bi-house-door::before { content: "\f423"; }
.bi-house-door-fill::before { content: "\f422"; }
.bi-house-gear::before { content: "\f891"; }
.bi-image::before { content: "\f42a"; }
.bi-images::before { content: "\f42b"; }
.bi-inbox::before { content: "\f42d"; }
.bi-infinity::before { content: "\f69e"; }
.bi-info-circle::before { content: "\f431"; }
.bi-info-circle-fill::before { content: "\f430"; }
.bi-instagram::before { content: "\f437"; }
.bi-journal::before { content: "\f446"; }
.bi-journal-bookmark::before { content: "\f43d"; }
.bi-journal-plus::before { content: "\f442"; }
.bi-journal-text::before { content: "\f444"; }
.bi-journal-x::before { content: "\f445"; }
.bi-life-preserver::before { content: "\f467"; }
.bi-lightning::before { content: "\f46f"; }
.bi-lightning-charge::before { content: "\f46d"; }
.bi-lightning-fill::before { content: "\f46e"; }
.bi-link-45deg::before { content: "\f470"; }
.bi-list::before { content: "\f479"; }
.bi-list-check::before { content: "\f473"; }
.bi-list-columns-reverse::before { content: "\f69f"; }
.bi-list-ol::before { content: "\f475"; }
.bi-list-task::before { content: "\f477"; }
.bi-list-ul::before { content: "\f478"; }
.bi-lock::before { content: "\f47b"; }
.bi-magic::before { content: "\f675"; }
.bi-map::before { content: "\f47f"; }
.bi-map-fill::before { content: "\f47e"; }
.bi-megaphone::before { content: "\f484"; }
.bi-memory::before { content: "\f6e3"; }
.bi-messenger::before { content: "\f648"; }
.bi-mic-fill::before { content: "\f48d"; }
.bi-mortarboard::before { content: "\f6fe"; }
.bi-music-note::before { content: "\f4a0"; }
.bi-music-note-beamed::before { content: "\f49e"; }
.bi-music-note-list::before { content: "\f49f"; }
.bi-newspaper::before { content: "\f4a3"; }
.bi-palette::before { content: "\f4b1"; }
.bi-paperclip::before { content: "\f4b3"; }
.bi-pause-circle::before { content: "\f4c2"; }
.bi-pause-fill::before { content: "\f4c3"; }
.bi-pencil::before { content: "\f4cb"; }
.bi-pencil-square::before { content: "\f4ca"; }
.bi-people::before { content: "\f4d0"; }
.bi-people-fill::before { content: "\f4cf"; }
.bi-percent::before { content: "\f4d1"; }
.bi-person::before { content: "\f4e1"; }
.bi-person-badge::before { content: "\f4d3"; }
.bi-person-check::before { content: "\f4d6"; }
.bi-person-dash::before { content: "\f4d9"; }
.bi-person-exclamation::before { content: "\f89c"; }
.bi-person-fill::before { content: "\f4da"; }
.bi-person-gear::before { content: "\f8a7"; }
.bi-person-lines-fill::before { content: "\f4db"; }
.bi-person-plus::before { content: "\f4dd"; }
.bi-person-vcard::before { content: "\f8c9"; }
.bi-person-x::before { content: "\f4e0"; }
.bi-phone::before { content: "\f4e7"; }
.bi-phone-flip::before { content: "\f77c"; }
.bi-pin-map::before { content: "\f64c"; }
.bi-play-circle::before { content: "\f4f3"; }
.bi-play-fill::before { content: "\f4f4"; }
.bi-plug::before { content: "\f4f7"; }
.bi-plus::before { content: "\f4fe"; }
.bi-plus-circle::before { content: "\f4fa"; }
.bi-plus-circle-dotted::before { content: "\f4f8"; }
.bi-plus-lg::before { content: "\f64d"; }
.bi-power::before { content: "\f4ff"; }
.bi-printer::before { content: "\f501"; }
.bi-qr-code::before { content: "\f6ae"; }
.bi-qr-code-scan::before { content: "\f6ad"; }
.bi-question-circle::before { content: "\f505"; }
.bi-receipt::before { content: "\f50f"; }
.bi-receipt-cutoff::before { content: "\f50e"; }
.bi-recycle::before { content: "\f64f"; }
.bi-repeat::before { content: "\f813"; }
.bi-reply::before { content: "\f520"; }
.bi-robot::before { content: "\f6b1"; }
.bi-rocket-takeoff::before { content: "\f845"; }
.bi-rocket-takeoff-fill::before { content: "\f844"; }
.bi-rulers::before { content: "\f523"; }
.bi-safe::before { content: "\f65a"; }
.bi-save::before { content: "\f525"; }
.bi-scissors::before { content: "\f528"; }
.bi-search::before { content: "\f52a"; }
.bi-send::before { content: "\f6c0"; }
.bi-send-fill::before { content: "\f6b9"; }
.bi-share::before { content: "\f52e"; }
.bi-shield-check::before { content: "\f52f"; }
.bi-shield-exclamation::before { content: "\f530"; }
.bi-shield-lock::before { content: "\f538"; }
.bi-shield-shaded::before { content: "\f53b"; }
.bi-shield-x::before { content: "\f53e"; }
.bi-shop::before { content: "\f543"; }
.bi-shuffle::before { content: "\f544"; }
.bi-signpost-2::before { content: "\f546"; }
.bi-signpost-split::before { content: "\f549"; }
.bi-skip-end-fill::before { content: "\f557"; }
.bi-skip-start-fill::before { content: "\f563"; }
.bi-slash-circle::before { content: "\f567"; }
.bi-sliders::before { content: "\f56b"; }
.bi-sliders2::before { content: "\f789"; }
.bi-snow::before { content: "\f56d"; }
.bi-snow2::before { content: "\f56e"; }
.bi-snow3::before { content: "\f56f"; }
.bi-speedometer2::before { content: "\f580"; }
.bi-square::before { content: "\f584"; }
.bi-star::before { content: "\f588"; }
.bi-star-fill::before { content: "\f586"; }
.bi-star-half::before { content: "\f587"; }
.bi-stars::before { content: "\f589"; }
.bi-stop-circle::before { content: "\f591"; }
.bi-sun::before { content: "\f5a2"; }
.bi-sunrise::before { content: "\f5a5"; }
.bi-sunset::before { content: "\f5a7"; }
.bi-table::before { content: "\f5aa"; }
.bi-tag::before { content: "\f5b0"; }
.bi-tags::before { content: "\f5b2"; }
.bi-telephone::before { content: "\f5c1"; }
.bi-telephone-fill::before { content: "\f5b4"; }
.bi-text-center::before { content: "\f5c4"; }
.bi-text-left::before { content: "\f5c7"; }
.bi-text-right::before { content: "\f5c9"; }
.bi-thermometer-half::before { content: "\f5cd"; }
.bi-thermometer-snow::before { content: "\f5d0"; }
.bi-three-dots::before { content: "\f5d4"; }
.bi-ticket-perforated::before { content: "\f6ca"; }
.bi-tiktok::before { content: "\f6cc"; }
.bi-toggle-off::before { content: "\f5d5"; }
.bi-toggle-on::before { content: "\f5d6"; }
.bi-tools::before { content: "\f5db"; }
.bi-translate::before { content: "\f658"; }
.bi-trash::before { content: "\f5de"; }
.bi-tree::before { content: "\f5e2"; }
.bi-trophy::before { content: "\f5e7"; }
.bi-trophy-fill::before { content: "\f5e6"; }
.bi-truck::before { content: "\f5ea"; }
.bi-type::before { content: "\f5f7"; }
.bi-type-bold::before { content: "\f5f0"; }
.bi-type-italic::before { content: "\f5f4"; }
.bi-type-underline::before { content: "\f5f6"; }
.bi-ui-checks::before { content: "\f5f9"; }
.bi-union::before { content: "\f5fe"; }
.bi-upload::before { content: "\f603"; }
.bi-volume-down-fill::before { content: "\f60a"; }
.bi-volume-mute::before { content: "\f60d"; }
.bi-volume-mute-fill::before { content: "\f60c"; }
.bi-volume-up::before { content: "\f611"; }
.bi-volume-up-fill::before { content: "\f610"; }
.bi-wallet2::before { content: "\f615"; }
.bi-water::before { content: "\f617"; }
.bi-whatsapp::before { content: "\f618"; }
.bi-wifi-off::before { content: "\f61b"; }
.bi-x::before { content: "\f62a"; }
.bi-x-circle::before { content: "\f623"; }
.bi-x-lg::before { content: "\f659"; }
.bi-x-octagon::before { content: "\f627"; }
.bi-x-square::before { content: "\f629"; }

/* End */


/* Start:/local/templates/eshop_bootstrap_v4/new-design.css?178845999860315*/
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');

/* =========================================================================
   eMeni — NEW DESIGN — PRIVZETI dizajn (body.new-design je zdaj vklopljen za
   vse; opt-out le ?NEW_DESIGN=N — glej header.php). To je glavna datoteka za
   vse nadaljnje spremembe dizajna.

   Vse je SAMO CSS čez obstoječo razmetko komponente .default — markup
   (template.php) in JS (toggleHeaderPanel / script.js cookie handlerji)
   ostanejo nedotaknjeni. Pravila so omejena na body.new-design:not(.is-panel),
   tako da panel (staff/admin) ostane nedotaknjen. Barvni/ozadni motorji
   (colors.css, theme-*, bg-theme-*) se uporabljajo naprej.
   ========================================================================= */

:root{
  --nd-cream:#faf7f1; --nd-ink:#1f2a28; --nd-muted:#73807d; --nd-line:#ece7dd;
  --nd-teal:#12b0ac; --nd-teal-50:#ecf9f8;
  /* Kartični akordeon — enoten videz (obroba + razmik + radij) za javni meni IN
     panel. En vir; spremeni tu, učinkuje povsod (glej pravilo v Fazi 4). */
  --nd-acc-radius:14px; --nd-acc-gap:10px;
}

/* ----- Zatemnitev (backdrop) — čisti CSS pseudo-element ----- */
body.new-design::before{
  content:"";
  position:fixed; inset:0;
  background:rgba(31,42,40,.45);
  opacity:0; pointer-events:none;
  transition:opacity .3s ease;
  z-index:1049;
}
body.new-design.show-config::before{ opacity:1; }

/* ----- Sam list (bottom-sheet) ----- */
body.new-design .header-panel-config{
  display:flex !important;
  flex-direction:column;
  position:fixed; left:0; right:0; bottom:0;
  z-index:1050;
  margin:0 !important;
  background:#fff;
  border-radius:26px 26px 0 0;
  box-shadow:0 -10px 40px rgba(31,42,40,.25);
  max-height:92vh;
  transform:translateY(110%);
  transition:transform .35s cubic-bezier(.2,.8,.2,1);
  pointer-events:none;
  font-family:'Manrope',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
  color:var(--nd-ink);
}
body.new-design.show-config .header-panel-config{
  transform:translateY(0) !important;
  pointer-events:auto;
}

/* notranji container — drsljiv, grip na vrhu */
body.new-design .header-panel-config > .container{
  width:100%; max-width:560px;
  overflow-y:auto;
  padding:8px 22px 26px !important;
}
body.new-design .header-panel-config > .container::before{
  content:"";
  display:block; width:42px; height:5px;
  border-radius:99px; background:var(--nd-line);
  margin:8px auto 18px;
}

/* ----- Sekcije + naslovi ----- */
body.new-design .header-panel-config .mb-3{
  border-top:1px solid var(--nd-line);
  padding-top:16px;
  /* margin-bottom:0 !important; */
}
body.new-design .header-panel-config .mb-3:first-of-type{
  border-top:none; padding-top:0;
}
body.new-design .header-panel-config h6{
  font-size:12px; font-weight:800;
  text-transform:uppercase; letter-spacing:.07em;
  color:var(--nd-muted);
  margin-bottom:13px;
}

/* ----- Vrstice → flex wrap (brez bootstrap col-širin) ----- */
body.new-design .header-panel-config .row{
  display:flex; flex-wrap:wrap; gap:12px; margin:0;
}
body.new-design .header-panel-config .row > [class*="col-"]{
  width:auto !important; max-width:none !important; flex:0 0 auto !important;
  padding:0 !important; margin:0 !important;
}
body.new-design .header-panel-config label.w-100{ width:auto !important; }

/* ----- Barvni krogi (barva + ozadje) ----- */
body.new-design .header-panel-config .color-circle{
  width:38px; height:38px; border-radius:50% !important;
  border:3px solid #fff !important;
  box-shadow:0 0 0 1px var(--nd-line), 0 2px 5px rgba(0,0,0,.12);
  position:relative; cursor:pointer; margin:0;
  transition:transform .15s ease, box-shadow .15s ease;
}
body.new-design .header-panel-config .color-circle:hover{ transform:scale(1.08); }

body.new-design .header-panel-config .color-radio:checked + .color-circle{
  border-color:#fff !important;
  box-shadow:0 0 0 2px var(--nd-ink), 0 3px 7px rgba(0,0,0,.2) !important;
  transform:scale(1.06);
}
body.new-design .header-panel-config .color-radio:checked + .color-circle::after{
  content:"✓";
  position:absolute; inset:0;
  display:flex; align-items:center; justify-content:center;
  color:#fff; font-size:15px; font-weight:800;
  text-shadow:0 1px 2px rgba(0,0,0,.25);
}
/* svetli krogi → temna kljukica */
body.new-design #color-white:checked  + .color-circle::after,
body.new-design #color-yellow:checked + .color-circle::after,
body.new-design #bg-white:checked     + .color-circle::after,
body.new-design #bg-light-gray:checked+ .color-circle::after{
  color:var(--nd-ink); text-shadow:none;
}

/* ----- Velikost pisave / prikaz → gumbi (segment-like) ----- */
body.new-design .header-panel-config .btn-check + .btn{
  border:1.5px solid var(--nd-line) !important;
  border-radius:12px !important;
  background:#fff !important;
  color:var(--nd-ink) !important;
  font-weight:700;
  padding:9px 16px;
  box-shadow:none !important;
  transition:background .15s, border-color .15s, color .15s;
}
body.new-design .header-panel-config .btn-check:checked + .btn{
  background:var(--nd-ink) !important;
  border-color:var(--nd-ink) !important;
  color:#fff !important;
}
body.new-design .header-panel-config .btn-check + .btn:hover{
  border-color:var(--nd-ink) !important;
}

/* ----- Zapri — majhen križec zgoraj desno (.btn-close, kot ostali popupi) ----- */
body.new-design .header-panel-config .nd-config-close{
  position:absolute; top:14px; right:16px; z-index:3;
  opacity:.6;
}
body.new-design .header-panel-config .nd-config-close:hover{ opacity:1; }


/* =========================================================================
   NEW DESIGN — Faza 2: ŠAPKA (samo public, ne panel: :not(.is-panel))
   - ime kafeja + točke + hamburger v eni primary vrstici
   - zgornja temna vrstica skrita; jezik/nastavitve/iskanje/filter → drawer
   - #navbarMenu (bootstrap collapse) postane drsni drawer čez .show
   Markup je le točkovno dodan (ime, ikone); JS hooki ostanejo.
   ========================================================================= */

/* skrij zgornjo temno vrstico (jezik-zastavice + iskanje/filter/zobnik) */
/* Legacy dark language bar is replaced by .nd-topbar everywhere now
   (public + panel + staff kiosk screens), so hide it under new-design outright. */
body.new-design .bx-header > .bg-dark.py-1{ display:none !important; }

/* ----- BRAND: ikona/logotip + ime + slogan v ENI povezavi -----
   .navbar-brand je privzeto white-space:nowrap, .navbar pa flex-wrap:wrap — zato
   je dolg slogan namesto preloma potisnil hamburger v drugo vrstico. Brand je
   edini element vrstice, ki se sme stiskati (flex:1 1 auto + min-width:0), tekst
   se prelomi, ikona in desna skupina (točke/zvonec/hamburger) ostanejo pri miru. */
body.new-design:not(.is-panel) .bx-header .navbar > *:not(.nd-brand){ flex-shrink:0; }
body.new-design:not(.is-panel) .nd-brand{
  /* flex:0 1 auto — sirina po VSEBINI, ne cez celo glavo. Prej je bil grow:1 in
     povezava (skupaj s klikljivim poljem in hover podlago) se je raztegnila cez
     vso prosto sirino vrstice. Shrink ostane 1, zato dolgo ime/slogan se vedno
     stisne in se prelomi, namesto da bi potisnil hamburger v drugo vrstico. */
  flex:0 1 auto; min-width:0;
  white-space:normal;                /* premaga .navbar-brand{white-space:nowrap} */
  padding:.2rem .4rem; margin-right:.5rem; margin-left:-.4rem; gap:.4rem;
  border-radius:10px;
  transition:background-color .15s ease-in-out;
}
/* Hover = svetla podlaga, NE sprememba barve besedila: belo besedilo na barvni
   glavi je ze pri mejnem kontrastu (na oranzni 2,57:1), zato ga zatemnitev ali
   prosojnost samo se poslabsa. Enak prijem (#fff4) uporabljajo tablete za
   stanje/tocke v isti vrstici. */
body.new-design:not(.is-panel) .nd-brand:hover,
body.new-design:not(.is-panel) .nd-brand:focus-visible{ background-color:rgba(255,255,255,.15); }

/* ime kafeja ob ikoni/logotipu — stolpec, ki prevzame prelom */
body.new-design:not(.is-panel) .nd-brand-name{
  font-size:1.12rem; padding:0;
  min-width:0; overflow-wrap:anywhere;
}

/* slogan pod imenom (UF_SLOGAN) — navadna teža, manjši, rahlo pridušen.
   Ime ostane krepko (fw-bold na svojem span-u), da par ime/slogan bere kot celota. */
body.new-design:not(.is-panel) .nd-brand-slogan{
  font-size:.72rem; letter-spacing:.01em; opacity:.85;
}

/* kvadratni logotip kafeja (UF_HEADER_LOGO) namesto ikone hiške.
   Sliko že kvadratno obreže section_settings.php; tu samo velikost + poravnava. */
body.new-design:not(.is-panel) .nd-brand-icon{ display:inline-flex; align-items:center; }
body.new-design:not(.is-panel) .nd-brand-logo{
  width:38px; height:38px; object-fit:cover; display:block;
}

/* hamburger vedno viden (tudi na desktopu xxl) */
body.new-design:not(.is-panel) .navbar-toggler{
  display:inline-flex !important; align-items:center; justify-content:center;
}

/* ----- DRAWER (slide-in iz desne) čez obstoječi collapse ----- */
body.new-design:not(.is-panel) #navbarMenu{
  position:fixed; top:0; right:0; bottom:0;
  width:300px; max-width:86%;
  height:100vh !important;          /* fallback za starejše brskalnike */
  height:100dvh !important;         /* sledi mobilni naslovni vrstici → brez reže na dnu med drsenjem; premaga tudi inline height med .collapsing */
  background:#fff; color:var(--nd-ink);
  z-index:1055;
  display:block !important;        /* premaga .collapse{display:none} */
  overflow-y:auto;
  transform:translateX(100%);
  transition:transform .3s cubic-bezier(.2,.8,.2,1);
  visibility:hidden;
  box-shadow:-8px 0 30px rgba(31,42,40,.2);
  padding:10px 10px 24px;
  font-family:'Manrope',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
}
body.new-design:not(.is-panel) #navbarMenu.show,
body.new-design:not(.is-panel) #navbarMenu.collapsing{
  transform:translateX(0); visibility:visible;
}
/* zatemnitev za drawer */
body.new-design:not(.is-panel):has(#navbarMenu.show)::after{
  content:""; position:fixed; inset:0; background:rgba(31,42,40,.45); z-index:1054;
}
/* Zaklep drsenja ozadja, dokler je drawer odprt: brez premikanja strani se
   mobilna naslovna vrstica ne skriva/kaže, zato fiksni drawer ne "utripa"
   (reža na dnu ob drsenju). Telo fiksiramo (top:-scrollY nastavi JS), da
   ostane vidna pozicija enaka; ob zapiranju JS obnovi scroll. */
html.nd-drawer-open, html.nd-drawer-open body{ overflow:hidden; }
html.nd-drawer-open body{ position:fixed; left:0; right:0; width:100%; }

/* nav postavke v drawerju — temne na belem (premaga .link-light) */
body.new-design:not(.is-panel) #navbarMenu .navbar-nav{ margin-top:0 !important; }
body.new-design:not(.is-panel) #navbarMenu .nav-item{
  border-top:none !important;
}
body.new-design:not(.is-panel) #navbarMenu .nav-link{
  color:var(--nd-ink) !important;
  border-radius:11px; padding:12px 12px !important; font-weight:700;
}
body.new-design:not(.is-panel) #navbarMenu .nav-link:hover{ background:var(--nd-cream); }
/* Ikone postavk sledijo BARVNI TEMI gosta (piškotek colorScheme → body.theme-X →
   --em-primary v colors-v2.css), ne fiksnemu tealu. --em-icon je temnejša
   različica za teme, ki so na beli podlagi drsnega menija preslabo vidne; brez
   razreda teme (privzeta shema) oba tokena padeta na teal iz :root. */
body.new-design:not(.is-panel) #navbarMenu .nav-link i{ color:var(--em-icon,var(--em-primary,var(--nd-teal))); }

/* števec elementov razdelka (dogodki/novice/akcije/mnenja) — desno v nav postavki;
   polni ga emSetNavCounts() (script.js) iz HELPERS::publicNavCounts() */
body.new-design:not(.is-panel) #navbarMenu .em-nav-count{
  float:right;
  margin-top:3px;
  /* števec stoji ob ikoni v isti postavki — sledi isti temi (glej pravilo za ikone) */
  background:var(--nd-cream); color:var(--em-icon,var(--em-primary,var(--nd-teal)));
  border:1px solid var(--nd-line);
  font-size:.72rem; font-weight:700; line-height:1;
  padding:4px 8px;
}

/* dropdowni znotraj drawerja (npr. panel) — na belem, ne primary */
body.new-design:not(.is-panel) #navbarMenu .dropdown-menu{
  background:#fff; border:1px solid var(--nd-line); box-shadow:none;
}

/* ----- VRSTICA IKON na vrhu drawerja ----- */
body.new-design:not(.is-panel) .nd-iconbar{
  list-style:none; display:flex; gap:8px; align-items:center;
  padding:6px 4px 14px; margin-bottom:8px; border-bottom:1px solid var(--nd-line);
}
body.new-design:not(.is-panel) .nd-iconbar .nd-lang{ position:relative; }
/* .nd-ico base is shared by the drawer icon bar (public) AND the .nd-topbar gear
   (public + panel + staff), so it is not scoped away from the panel. */
body.new-design .nd-ico{
  width:44px; height:44px; border-radius:12px;
  border:1px solid var(--nd-line); background:var(--nd-cream); color:var(--nd-ink);
  font-size:18px; display:flex; align-items:center; justify-content:center; cursor:pointer;
  transition:border-color .15s, color .15s;
}
body.new-design .nd-ico:hover{ border-color:var(--nd-teal); color:var(--nd-teal); }
body.new-design:not(.is-panel) .nd-iconbar .dropdown-menu{
  min-width:200px; border-radius:12px; box-shadow:var(--shadow-lg); padding:6px;
  /* Bootstrap v navbar-collapse postavi .navbar-nav .dropdown-menu na
     position:static → seznam jezikov pade v tok in odriva postavke.
     Vrnemo plavajoč (absolute) overlay pod globusom, nad vsebino drawerja. */
  position:absolute !important;
  top:calc(100% + 6px) !important;
  left:0 !important;
  right:auto !important;
  transform:none !important;     /* prepreči morebitni inline Popper transform */
  z-index:1060;
}
body.new-design:not(.is-panel) .nd-iconbar .dropdown-item{ border-radius:8px; padding:9px 11px; font-weight:600; }
body.new-design:not(.is-panel) .nd-iconbar .dropdown-item.active{ background:var(--nd-teal-50); color:var(--nd-teal); }
/* gumb za zapiranje drawerja — potisnjen na desno */
body.new-design:not(.is-panel) .nd-ico-close{ margin-left:auto; }
body.new-design:not(.is-panel) .nd-drawer-title{ min-width:0; font-size:1.02rem; }

/* =========================================================================
   NEW DESIGN — PANEL: mobilni drawer za nadzorno ploščo
   Za razliko od javnega dela ima panel na NAMIZJU vodoravno menijsko vrstico
   (navbar-expand-xl → vklop pri >=1200px), ki jo lastniki cenijo. Šele POD
   xl (<1200px) #navbarMenu postane isti drsni drawer kot javni del. Zato so
   VSA pravila tu omejena na .is-panel IN na @media (max-width), da namizna
   vrstica ostane nedotaknjena. Gnezdeni dropdowni (Izdelki/Dokumenti/
   Nastavitve…) so pod xl že v Bootstrapovem "collapsed navbar" načinu
   (.navbar-nav .dropdown-menu → position:static), zato se odprejo inline kot
   harmonika znotraj drsnega panela — dodatnega JS ni treba.
   ========================================================================= */
@media (max-width: 1199.98px){
  /* Hamburger je pod xl že viden (Bootstrap navbar-expand-xl); ne silimo ga
     kot na javnem delu, kjer je viden tudi na namizju. */
  body.new-design.is-panel #navbarMenu{
    position:fixed; top:0; right:0; bottom:0;
    width:300px; max-width:86%;
    height:100vh !important;
    height:100dvh !important;
    background:#fff; color:var(--nd-ink);
    z-index:1055;
    display:block !important;
    overflow-y:auto;
    transform:translateX(100%);
    transition:transform .3s cubic-bezier(.2,.8,.2,1);
    visibility:hidden;
    box-shadow:-8px 0 30px rgba(31,42,40,.2);
    padding:10px 10px 24px;
    font-family:'Manrope',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
  }
  body.new-design.is-panel #navbarMenu.show,
  body.new-design.is-panel #navbarMenu.collapsing{
    transform:translateX(0); visibility:visible;
  }
  body.new-design.is-panel:has(#navbarMenu.show)::after{
    content:""; position:fixed; inset:0; background:rgba(31,42,40,.45); z-index:1054;
  }

  /* nav postavke v drawerju — temne na belem (premaga .link-light) */
  body.new-design.is-panel #navbarMenu .navbar-nav{ margin-top:0 !important; }
  body.new-design.is-panel #navbarMenu .nav-item{ border-top:none !important; }
  body.new-design.is-panel #navbarMenu .nav-link{
    color:var(--nd-ink) !important;
    border-radius:11px; padding:12px 12px !important; font-weight:700;
  }
  body.new-design.is-panel #navbarMenu .nav-link:hover{ background:var(--nd-cream); }
  body.new-design.is-panel #navbarMenu .nav-link i{ color:var(--nd-teal); }

  /* Gnezdeni dropdowni: v markupu so .dropdown-menu.bg-primary (moder blok) —
     v drawerju jih prepišemo na belo z inline harmoniko. !important premaga
     Bootstrapov .bg-primary background. */
  body.new-design.is-panel #navbarMenu .dropdown-menu{
    background:#fff !important; border:1px solid var(--nd-line); box-shadow:none;
    margin:.15rem 0 .35rem; padding-left:.4rem;
  }
  body.new-design.is-panel #navbarMenu .dropdown-menu .dropdown-item{
    color:var(--nd-ink) !important; border-radius:8px; padding:9px 11px; font-weight:600;
    white-space:normal;
  }
  body.new-design.is-panel #navbarMenu .dropdown-menu .dropdown-item:hover{ background:var(--nd-cream); }
  body.new-design.is-panel #navbarMenu .dropdown-menu .dropdown-item i{ color:var(--nd-teal); }
  body.new-design.is-panel #navbarMenu .dropdown-divider{ border-color:var(--nd-line); }

  /* Glava drawerja (ime lokala + gumb X) */
  body.new-design.is-panel .nd-iconbar-panel{
    list-style:none; display:flex; gap:8px; align-items:center;
    padding:6px 4px 14px; margin-bottom:8px; border-bottom:1px solid var(--nd-line);
  }
  body.new-design.is-panel .nd-iconbar-panel .nd-drawer-title{ min-width:0; font-size:1.02rem; color:var(--nd-ink); }
  body.new-design.is-panel .nd-iconbar-panel .nd-ico-close{ margin-left:auto; }
}
/* Na namizju (>=xl) glava drawerja ni potrebna — meni je vodoravna vrstica. */
@media (min-width: 1200px){
  body.new-design.is-panel .nd-iconbar-panel{ display:none !important; }
}

/* =========================================================================
   VRHNJA ORODNA VRSTICA (.nd-topbar) — zdaj povsod (javni del, panel IN
   staff kiosk zasloni kuhinja/lostfound). Nadomesti skrito temno vrstico:
   jezik (4 glavni + «…») LEVO, orodja (iskanje/filter/nastavitve) DESNO.
   ========================================================================= */
body.new-design .nd-topbar{
  background:#fff; border-bottom:1px solid var(--nd-line);
  position:relative; z-index:30;
}
body.new-design .nd-topbar > .container{
  display:flex; align-items:center; gap:8px;
}
body.new-design .nd-langbtn{
  display:inline-flex; align-items:center; justify-content:center;
  border:1px solid var(--nd-line); background:var(--nd-cream);
  border-radius:5px; padding:3px; line-height:0; cursor:pointer;
  transition:border-color .15s, box-shadow .15s, transform .1s;
}
body.new-design .nd-langbtn:hover{ border-color:var(--nd-teal); }
body.new-design .nd-langbtn:active{ transform:scale(.94); }
body.new-design .nd-langbtn.active{
  border-color:var(--nd-teal); box-shadow:0 0 0 2px var(--nd-teal-50);
}
body.new-design .nd-topbar .flag{ border-radius:3px; }

/* gumb «…» za dodatne jezike (hr/hu/ru) */
body.new-design .nd-morebtn{
  display:inline-flex; align-items:center; justify-content:center;
  border:1px solid var(--nd-line); background:var(--nd-cream); color:var(--nd-muted);
  border-radius:5px; min-width:30px; height:24px; padding:0 6px; cursor:pointer;
  font-size:13px; transition:border-color .15s, color .15s, box-shadow .15s;
}
body.new-design .nd-morebtn:hover{ border-color:var(--nd-teal); color:var(--nd-teal); }
body.new-design .nd-morebtn.active{
  border-color:var(--nd-teal); color:var(--nd-teal); box-shadow:0 0 0 2px var(--nd-teal-50);
}
body.new-design .nd-more-menu{
  min-width:184px; border-radius:12px; border:1px solid var(--nd-line);
  box-shadow:var(--shadow-lg); padding:6px;
}
body.new-design .nd-more-menu .dropdown-item{
  display:flex; align-items:center; gap:9px;
  border-radius:8px; padding:8px 10px; font-weight:600;
}
body.new-design .nd-more-menu .dropdown-item.active{
  background:var(--nd-teal-50); color:var(--nd-teal);
}
/* orodne ikone na vrstici — enaka višina kot jezikovni gumbi (~28px) */
body.new-design .nd-topbar .nd-ico{ width:28px; height:24px; font-size:15px; border-radius:5px; }


/* =========================================================================
   NEW DESIGN — Faza 3: dodajanje / odvzem izdelkov (samo CSS čez obstoječe)
   POZOR: barve ostanejo temske (.bg-primary / .bg-secondary / .bg-danger) —
   spreminjam le geometrijo (radiji, velikosti, sence, krogci ±), da izbira
   barve (colors.css) deluje naprej. JS (increaseQuantity/...) ostane.
   ========================================================================= */

/* --- cena-ploščica (klikabilna = dodaj) v meniju --- */
body.new-design .item-prices .div-price{
  border-radius:12px !important;
  padding:.45rem .95rem !important;
  box-shadow:0 4px 12px -5px rgba(31,42,40,.4);
  letter-spacing:-.01em;
}
/* če je zgoraj DESCR_BR oznaka, ohranimo povezan videz (vrh raven) */
body.new-design .item-prices .div-price.rounded-bottom{ border-radius:0 0 12px 12px !important; }
body.new-design .item-prices .bg-primary-50.rounded-top{ border-radius:12px 12px 0 0 !important; }

/* --- krogca + / − čez ploščico --- */
body.new-design .price-plus-icon,
body.new-design .price-minus-icon{
  width:27px; height:27px;
  border:2px solid #fff !important;
  box-shadow:0 2px 7px rgba(31,42,40,.28) !important;
}
body.new-design .price-plus-icon i,
body.new-design .price-minus-icon i{ font-size:13px; }
body.new-design .price-plus-icon:hover{ transform:translateY(50%) scale(1.12); }
body.new-design .price-minus-icon:hover{ transform:translateY(50%) scale(1.12); }

/* --- števec (badge) --- */
body.new-design .quantity-badge{
  border:2px solid #fff !important;
  box-shadow:0 1px 4px rgba(31,42,40,.25);
  font-weight:800;
  min-width:22px !important; height:22px;
  /* Centriraj številko: Bootstrap .badge padding (0.35em 0.65em) + fiksna višina
     sta številko potiskala navzdol. Flex jo poravna točno na sredino. */
  display:inline-flex; align-items:center; justify-content:center;
  padding:0 4px; line-height:1;
}

/* --- stepper v košarici (.basket-price-quantity → .quantity-selector) --- */
body.new-design .quantity-selector{ gap:4px; }
body.new-design .quantity-selector .btn-minus,
body.new-design .quantity-selector .btn-plus{
  border-radius:50% !important;
  width:34px; min-width:34px; height:34px; padding:0;
  display:inline-flex; align-items:center; justify-content:center;
  font-weight:800; line-height:1;
}
body.new-design .quantity-selector .qty-input{
  border:none !important; background:transparent !important;
  box-shadow:none !important; font-weight:800; font-size:1.05rem;
}

/* --- «+ Dodaj» / odstrani (košarica, disallow-count izdelki) --- */
body.new-design .btn-add-item{
  border-radius:999px !important;
  font-weight:800; padding:.5rem 1.1rem;
}
body.new-design .btn-remove-item{
  border-radius:999px !important; font-weight:700;
}


/* =========================================================================
   NEW DESIGN — Faza 4: globalni javni skin (samo public, :not(.is-panel))
   Načelo: GEOMETRIJA + TIPOGRAFIJA na celotni javni strani, BARVE pa ostanejo
   temske (colors.css / theme-* / bg-theme-*). Brez sprememb markupa/JS.
   ========================================================================= */

/* 0) FIX drawer: postavke navpično (na xxl jih .navbar-expand-xxl postavi v vrstico) */
body.new-design:not(.is-panel) #navbarMenu .navbar-nav{ flex-direction:column !important; }
body.new-design:not(.is-panel) #navbarMenu .nav-item{ width:100%; }

/* 1) TIPOGRAFIJA — Manrope na celi javni strani (največji učinek) */
body.new-design:not(.is-panel){
  font-family:'Manrope',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
}
body.new-design:not(.is-panel) h1, body.new-design:not(.is-panel) h2,
body.new-design:not(.is-panel) h3, body.new-design:not(.is-panel) .h1,
body.new-design:not(.is-panel) .h2, body.new-design:not(.is-panel) .item-name b{
  letter-spacing:-.01em; font-weight:800;
}

/* 2) POVRŠINE — radiji + mehka (nevtralna) senca; barve pustimo temam */
body.new-design:not(.is-panel) .card,
body.new-design:not(.is-panel) .modal-content,
body.new-design:not(.is-panel) .list-group,
body.new-design:not(.is-panel) .alert{ border-radius:16px !important; }
body.new-design:not(.is-panel) .card{ box-shadow:var(--shadow-sm); }
body.new-design:not(.is-panel) .modal-content{ box-shadow:var(--shadow-lg); border:none; }
body.new-design:not(.is-panel) .card > .card-header{
  background:transparent; border-bottom-color:rgba(0,0,0,.06); font-weight:800;
}
body.new-design:not(.is-panel) .dropdown-menu:not(.bg-primary){
  border-radius:14px; box-shadow:var(--shadow-md); border-color:var(--nd-line); padding:6px;
}
body.new-design:not(.is-panel) .dropdown-menu:not(.bg-primary) .dropdown-item{
  border-radius:8px; padding:9px 11px; font-weight:600;
}

/* 3) SLIKE — zaobljene (meni + splošno) */
body.new-design:not(.is-panel) .card-img-container a,
body.new-design:not(.is-panel) .small-preview-image,
body.new-design:not(.is-panel) .big-preview-image,
body.new-design:not(.is-panel) .product-image,
body.new-design:not(.is-panel) .cafe-carousel-img{ border-radius:12px !important; }

/* 3a) GALERIJA LOKALA («O nas») — vsak diapozitiv ima ENAKO višino.
   Brez tega višino določi razmerje posamezne fotografije, zato stran ob vsakem
   drsenju poskoči. Razmerje 4:3 je isto, ki ga vsiljuje nalaganje
   (EVENTS::CAFE_PHOTO_W/H = 1600x1200); `cover` poskrbi za starejše fotografije
   v drugačnem razmerju, ki so bile naložene pred tem pravilom. */
body.new-design:not(.is-panel) #cafe-photos-carousel .cafe-carousel-img{
    width:100%;
    aspect-ratio:4 / 3;
    height:auto;
    object-fit:cover;
}

/* 4) KARTIČNI AKORDEON — EN vir za javni meni IN panel.
   Javni del ga dobi samodejno (vsak .accordion-item zunaj panela); panel se
   vključi z .em-accordion-cards na .accordion ovoju (stock_levels, inventura).
   Obroba/razmik/radij pridejo iz --nd-acc-* spremenljivk, da so povsod enaki.
   overflow:hidden poreže ravne vogale gumba/tabele; NE uporabljaj razreda na
   panelnih akordeonih s spustnimi meniji v GLAVI (products) — odrezalo bi jih. */
body.new-design:not(.is-panel) .accordion-item,
body.new-design .em-accordion-cards .accordion-item{
  border-radius:var(--nd-acc-radius) !important; overflow:hidden;
  margin-bottom:var(--nd-acc-gap); border:1px solid var(--nd-line);
}
body.new-design:not(.is-panel) .accordion-button{ font-weight:800; }

/* 4-1) EN SAM RAZDELEK (.em-single-section, meni z eno kategorijo) — glave ni,
   telo je odprto od prvega izrisa (template.php). Kartica brez glave je le še
   prazna obroba okoli izdelkov, zato jo odstranimo: gost vidi ploščice, ne
   okvirja. Notranji odmik telesa pobrišemo, da se ploščice poravnajo z robom
   strani enako kot pri odprtem razdelku z glavo. */
body.new-design:not(.is-panel) .accordion-item.em-single-section{
  border:none !important; margin-bottom:0; border-radius:0 !important;
}
body.new-design:not(.is-panel) .accordion-item.em-single-section > .accordion-collapse > .accordion-body{
  padding-top:0;
}

/* 4a) Skladnost (compliance) — skupine NISO Bootstrap .accordion (po meri: stikala
   v glavi, zaklenjene vrstice, samodejno zlaganje ko je vse opravljeno). Zato jih
   NE pretvarjamo v akordeon, jih pa VIZUALNO poenotimo s kartičnimi akordeoni:
   isti radij/obroba prek --nd-acc-*, prosojna krepka glava. Interakcija ostane
   nedotaknjena (compliance.js). Vrstice nimajo spustnih menijev → overflow:hidden
   je varen (zaokroži vogale glave/list-group-flush v kartico). */
body.new-design .compliance-category,
body.new-design .compliance-recommended-card{
  border-radius:var(--nd-acc-radius) !important; overflow:hidden;
  border:1px solid var(--nd-line);
}
body.new-design .compliance-category > .card-header,
body.new-design .compliance-recommended-card > .card-header{
  background:transparent; font-weight:800; border-bottom-color:var(--nd-line);
  /* Enaka višina glave kot pri akordeonih: Bootstrap .accordion-button ima 1rem
     navpičnega odmika, .card-header le 0.5rem — poravnamo. Vodoravni odmik pustimo
     (1rem), da se naslov glave poravna z vrsticami v telesu. */
  padding-top:1rem; padding-bottom:1rem;
}

/* V košarici (show-basket) in na pogledu «Točke» (show-points) so prikazane vse
   sekcije menija, prazne (brez izbranih izdelkov oziroma brez izdelkov za točke)
   pa se sesedejo v prazne obrobljene «črtice». Stari dizajn jih skrije z
   .accordion-item{border:none}, a zgornje new-design pravilo je bolj specifično
   in obrobo vrne — zato jo tu izrecno odstranimo (in razmik), da prazne sekcije
   ne puščajo črt.

   Obroba pade pri VSEH sekcijah, ne le pri praznih — namenoma: v obeh načinih so
   naslovi sekcij skriti (.accordion-header{display:none}), zato obroba ne loči
   ničesar poimenovanega, ampak samo šumi. */
body.new-design.show-basket:not(.is-panel) .accordion-item,
body.new-design.show-points:not(.is-panel) .accordion-item{
  border:none !important; margin-bottom:0 !important;
}

/* 5) GUMBI — radij (pill/circle/btn-close izvzeti); join-skupine spet ravne */
body.new-design:not(.is-panel) .btn:not(.rounded-pill):not(.rounded-circle):not(.btn-close){
  border-radius:11px;
}
body.new-design:not(.is-panel) .form-control,
body.new-design:not(.is-panel) .form-select{ border-radius:11px; }
/* notranji robovi input-group / btn-group ostanejo ravni (kot pri Bootstrapu) */
body.new-design:not(.is-panel) .input-group > :not(:last-child),
body.new-design:not(.is-panel) .btn-group > .btn:not(:last-child){
  border-top-right-radius:0 !important; border-bottom-right-radius:0 !important;
}
body.new-design:not(.is-panel) .input-group > :not(:first-child),
body.new-design:not(.is-panel) .btn-group > .btn:not(:first-child){
  border-top-left-radius:0 !important; border-bottom-left-radius:0 !important;
}

/* 6) FOKUS — vrnemo viden (a11y) fokus, nevtralen (deluje na vseh temah).
   template_styles.css ga je povsod ubil z box-shadow:none!important. */
body.new-design:not(.is-panel) .form-control:focus,
body.new-design:not(.is-panel) .form-select:focus,
body.new-design:not(.is-panel) .form-check-input:focus,
body.new-design:not(.is-panel) .btn:focus-visible{
  box-shadow:0 0 0 .2rem rgba(31,42,40,.16) !important;
  outline:none !important;
}

/* 7) MENI — malo zraka v vrsticah */
body.new-design:not(.is-panel) .item-div-preview{ padding-top:.45rem; padding-bottom:.45rem; }

/* 8) MENU TABS (#menuTabs) → cats-pilule (čez obstoječi .nav-tabs, brez markupa).
   colors.css jih dela kot ravne pravokotne «zavihke-sekcije»; tu jih spremenimo
   v zaobljene pilule, ki se prelomijo v vrstice. Aktivna = polna (ink). */
body.new-design:not(.is-panel) #menuTabs{
  border:0 !important;
  border-radius:0 !important;
  gap:8px;
  padding:2px 0 6px;
  flex-wrap:wrap;
}
body.new-design:not(.is-panel) #menuTabs .nav-item{
  border:1px solid var(--nd-line) !important;
  border-radius:999px !important;
  background:#fff !important;
  margin:0 !important;                 /* odstrani -1px «join» med zavihki */
  box-shadow:var(--shadow-sm);
  overflow:hidden;
}
body.new-design:not(.is-panel) #menuTabs .nav-link{
  border:0 !important;
  border-radius:999px !important;
  color:var(--nd-ink) !important;
  background:transparent !important;
  font-weight:700;
  font-size:.9rem;
  padding:7px 15px !important;
}
body.new-design:not(.is-panel) #menuTabs .nav-link:hover{ color:var(--nd-teal) !important; }
/* aktivni zavihek = polna pilula */
body.new-design:not(.is-panel) #menuTabs .nav-item:has(.nav-link.active){
  background:var(--nd-ink) !important;
  border-color:var(--nd-ink) !important;
}
body.new-design:not(.is-panel) #menuTabs .nav-item:has(.nav-link.active) .nav-link.active{
  color:#fff !important;
  background:transparent !important;
  font-weight:800;
}

/* 8b) SEKCIJSKI ZAVIHKI V PANELU (#tabsNav, stran Izdelki) → iste pilule kot javni
   #menuTabs, da panel in meni izgledata enako. Vsak zavihek ima hamburger dropdown
   (uredi/premakni/skrij/izbriši), zato NE overflow:hidden — pilula je zaobljena prek
   radija na .nav-item in .nav-link, meni ni odrezan. Aktiven zavihek = polna pilula. */
body.new-design #tabsNav{
  border:0 !important; border-radius:0 !important;
  gap:8px; padding:2px 0 6px; flex-wrap:wrap;
}
body.new-design #tabsNav .nav-item{
  border:1px solid var(--nd-line) !important;
  border-radius:999px !important;
  background:#fff !important;
  margin:0 !important;                 /* odstrani -1px «join» med zavihki (colors-v2) */
  box-shadow:var(--shadow-sm);
}
body.new-design #tabsNav .nav-link{
  border:0 !important;
  border-radius:999px !important;
  color:var(--nd-ink) !important;
  background:transparent !important;
  font-weight:700;
  padding:7px 15px !important;
}
body.new-design #tabsNav .nav-link:hover{ color:var(--nd-teal) !important; }
body.new-design #tabsNav .nav-item:has(.nav-link.active){
  background:var(--nd-ink) !important;
  border-color:var(--nd-ink) !important;
}
body.new-design #tabsNav .nav-item:has(.nav-link.active) .nav-link.active{
  color:#fff !important;
  background:transparent !important;
  font-weight:800;
}

/* 9) SPODNJA KOŠARICA «pill» — natančen videz po maketi (varianta B).
   Pozicioniranje, izhod (translateY) in
   preklop osebja (.js-bottom-send / .js-bottom-show) ostanejo v
   template_styles.css; tukaj le SKIN do videza makete:
     - number-circle: samo število pozicij (brez torbice/značke),
     - prosta «vsota →» brez podlage (podlago obdrži le gumb osebja «Pošlji»),
     - večji padding/razmik, manjši kružok.
   Akcent (.bg-primary kružok, .btn-primary «Pošlji») ostane TEMATSKI; baloni
   (🫘) so iz spodnje plašče odstranjeni — 1:1 z maketo (vidni so v polni košarici). */
body.new-design:not(.is-panel) #bottom_basket{
  gap:14px;
  padding:13px 18px 13px 13px;
  /* The capsule is dark (#1f2a28) and on the dark footer (.bg-dark) it blends into the background.
     A thin light ring separates it from any dark background, and a deeper
     shadow gives it "float" over a light menu. */
  box-shadow: 0 0 0 1.5px rgba(255,255,255,.16), 0 18px 42px -12px rgba(0,0,0,.55);
}
body.new-design:not(.is-panel) #bottom_basket .bb-count{
  width:34px; height:34px;
  font-size:15px;
}
body.new-design:not(.is-panel) #bottom_basket .bb-title{
  font-size:15px;
}
/* desna stran = gola «vsota →» (brez translucent podlage in paddinga) */
body.new-design:not(.is-panel) #bottom_basket .bb-right{
  background:transparent;
  padding:0;
  gap:7px;
}

/* 10) UPSELL — prenovljene kartice z OPCIJAMI (velikostmi). Markup gradi JS
   (showUpsalesPopup): .ucard > .uimg + .unm + .uopts > .up-opt[ .up-sz .up-pr
   .up-add .up-step ]. Gumb «+» kliče increaseQuantity(price_id) kot meni —
   logika košarice ostane ista. Lebdeč zaobljen list nad pill-košarico
   (bottom je v template_styles.css: body.has-items #upsales-popup{bottom:86px}). */
body.new-design:not(.is-panel) #upsales-popup{
  left:12px !important; right:12px !important;
  border:1px solid var(--nd-line) !important;
  border-top:1px solid var(--nd-line) !important;
  border-radius:20px !important;
  background:#fff !important;
  box-shadow:0 18px 50px -12px rgba(31,42,40,.30) !important;
}
body.new-design:not(.is-panel) #upsales-popup h5{
  font-size:15px; font-weight:800; display:flex; align-items:center; gap:7px;
}
body.new-design:not(.is-panel) #upsales-popup h5 .bi-heart,
body.new-design:not(.is-panel) #upsales-popup h5 .bi-heart-fill{ color:#f96565; }
body.new-design:not(.is-panel) #upsales-popup .bi-x-square{
  color:var(--nd-muted) !important; opacity:.7;
}
body.new-design:not(.is-panel) #upsales-items-container{ gap:10px !important; align-items:stretch; }

/* kartica */
body.new-design:not(.is-panel) .ucard{
  display:flex; flex-direction:column; flex:0 0 auto; width:150px;
  background:var(--nd-cream); border:1px solid var(--nd-line); border-radius:16px;
  padding:8px; white-space:normal;
}
body.new-design:not(.is-panel) .ucard .uimg{
  height:78px; border-radius:11px; overflow:hidden; cursor:pointer; background:#f1ece3;
}
body.new-design:not(.is-panel) .ucard .uimg img{ width:100%; height:100%; object-fit:cover; }
body.new-design:not(.is-panel) .ucard .unm{
  font-weight:800; font-size:13.5px; line-height:1.2; margin:7px 2px;
  display:-webkit-box; -webkit-line-clamp:2; line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
}
body.new-design:not(.is-panel) .ucard .uopts{ display:flex; flex-direction:column; gap:6px; margin-top:auto; }

/* opcijska vrstica: [velikost?] [cena] [+/stepper] */
body.new-design:not(.is-panel) .up-opt{
  display:flex; align-items:center; gap:7px;
  border:1.5px solid var(--nd-line); border-radius:11px; background:#fff;
  padding:4px 5px 4px 9px;
}
body.new-design:not(.is-panel) .up-opt.in-cart{ border-color:var(--nd-teal); background:var(--nd-teal-50); }
body.new-design:not(.is-panel) .up-opt .up-sz{ font-size:11px; font-weight:700; color:var(--nd-muted); text-transform:uppercase; letter-spacing:.02em; }
body.new-design:not(.is-panel) .up-opt.in-cart .up-sz{ color:var(--nd-teal); }
body.new-design:not(.is-panel) .up-opt .up-pr{ font-size:13px; font-weight:800; margin-left:auto; white-space:nowrap; }
body.new-design:not(.is-panel) .up-opt .up-pr small{ font-weight:700; }

body.new-design:not(.is-panel) .up-opt .up-add{
  flex-shrink:0; width:27px; height:27px; padding:0; border:0; border-radius:8px;
  background:var(--nd-teal); color:#fff; cursor:pointer; font-size:13px;
  display:flex; align-items:center; justify-content:center;
}
body.new-design:not(.is-panel) .up-opt .up-add:active{ transform:scale(.9); }
body.new-design:not(.is-panel) .up-opt .up-i-chk{ display:none; }

body.new-design:not(.is-panel) .up-opt .up-step{ display:none; align-items:center; gap:5px; }
body.new-design:not(.is-panel) .up-opt .up-sb{
  width:24px; height:24px; padding:0; border:0; border-radius:7px;
  background:var(--nd-teal); color:#fff; cursor:pointer; font-size:14px; line-height:1;
  display:flex; align-items:center; justify-content:center;
}
body.new-design:not(.is-panel) .up-opt .up-q{ font-weight:800; font-size:13px; min-width:14px; text-align:center; }

/* preklop: countable → add ↔ stepper; single (allow-count=0) → add ↔ ✓ */
body.new-design:not(.is-panel) .up-opt.in-cart:not(.up-single) .up-add{ display:none; }
body.new-design:not(.is-panel) .up-opt.in-cart:not(.up-single) .up-step{ display:flex; }
body.new-design:not(.is-panel) .up-opt.up-single.in-cart .up-i-add{ display:none; }
body.new-design:not(.is-panel) .up-opt.up-single.in-cart .up-i-chk{ display:inline-block; }
/* Izbrana enkratna postavka (max 1 kos, npr. storitev): kljukica je le oznaka
   stanja — increaseQuantity je idempotenten in ponoven klik NE odstrani izbire
   (glej script.js). Zato gumb ne sme delovati klikljivo; odstrani se v košarici
   ali z minusom na ploščici v meniju. */
body.new-design:not(.is-panel) .up-opt.up-single.in-cart .up-add{
  pointer-events:none; cursor:default;
}

/* Staff: filtri po statusu (Nove/Za narediti/...) so klikabilni — na namizju
   pokaži kazalec in rahel hover, da je vidno, da gre za gumbe. Na dotik (mobil)
   ostane brez sprememb, zato omejimo na naprave s kazalcem. */
@media (hover:hover) and (pointer:fine){
  body.new-design:not(.is-panel) #staff-orders-block .row.g-1 .col-3 > div{
    cursor:pointer; transition:filter .12s ease, transform .12s ease;
  }
  body.new-design:not(.is-panel) #staff-orders-block .row.g-1 .col-3 > div:hover{
    filter:brightness(.94); transform:translateY(-1px);
  }
}

/* Meni: skrij števec izdelkov (bg-warning bedž) v glavi akordeona razdelka.
   Zaenkrat skrito samo z CSS — markup (template.php) ostane, JS iskanja
   (restoreBadges) še naprej posodablja besedilo skritega elementa brez napak.
   Omejeno na .accordion-button, da bedži števcev v filtrih ostanejo vidni. */
body.new-design:not(.is-panel) .accordion-button .badge.bg-warning[data-original-count]{
  display:none;
}


/* =========================================================================
   NEW DESIGN — Faza 5: SKUPNI SKIN (velja TUDI za panel in samostojna
   staff-orodja /kitchen, /lostfound — torej BREZ :not(.is-panel)).
   Faze 1–4 zgoraj so večinoma omejene na :not(.is-panel), ker so meni-
   specifične POSTAVITVE (drawer, spodnja košarica, zavihki, cene-ploščice).
   Tu je dizajn-JEZIK — tipografija + površine + gumbi + polja + fokus — ki naj
   bo ENAK povsod, da panel in orodja izgledajo kot meni. Brez sprememb markupa
   ali JS. Bloki so ADITIVNI: meni-specifična pravila (z :not(.is-panel)) so
   bolj specifična in z enakimi vrednostmi, zato se za meni nič ne spremeni —
   pravila spodaj le doplnijo manjkajoče za panel/orodja.
   ========================================================================= */

/* 1) TIPOGRAFIJA — Manrope povsod (panel je doslej ostal na sistemski pisavi) */
body.new-design{
  font-family:'Manrope',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
}
body.new-design h1, body.new-design h2, body.new-design h3,
body.new-design .h1, body.new-design .h2, body.new-design .h3{
  letter-spacing:-.01em; font-weight:800;
}

/* 2) POVRŠINE — radiji + mehka (nevtralna) senca; barve pustimo temam */
body.new-design .card,
body.new-design .modal-content,
body.new-design .list-group,
body.new-design .alert{ border-radius:16px; }
body.new-design .card{ box-shadow:var(--shadow-sm); }
body.new-design .modal-content{ box-shadow:var(--shadow-lg); border:none; }
body.new-design .card > .card-header{ font-weight:800; }

/* 3) SPUSTNI MENIJI (razen navbar .bg-primary, ki ima svoj stil v panel.css) */
body.new-design .dropdown-menu:not(.bg-primary){
  border-radius:14px; box-shadow:var(--shadow-md); border-color:var(--nd-line); padding:6px;
}
body.new-design .dropdown-menu:not(.bg-primary) .dropdown-item{
  border-radius:8px; padding:9px 11px;
}

/* 4) PANELNI AKORDEONI — osnovni radij za morebiten akordeon brez kartičnega
   razreda. »Kartični« videz (.em-accordion-cards) je definiran ENKRAT skupaj z
   javnim menijem v Fazi 4 zgoraj — isti obroba/razmik prek --nd-acc-*. */
body.new-design .accordion-item{ border-radius:var(--nd-acc-radius); }

/* 4c) IZDELKI (#productsAccordion) — kartični videz kot ostali akordeoni, VENDAR
   glava vsebuje hamburger dropdown (uredi/premakni/skrij/izbriši sekcijo), zato
   overflow:hidden ODPADE (odrezal bi meni). Namesto klipanja: kartico naredi
   .accordion-item (obroba --nd-line + radij + razmik), zgornja vogala GUMBA (glave)
   pa zaoblimo eksplicitno, da poln vogal odprte glave (#f8f9fa) ne moli čez
   zaobljeno kartico. Zložena glava dobi vse 4 vogale (kartica = samo glava). */
body.new-design #productsAccordion .accordion-item{
  border:1px solid var(--nd-line) !important;
  border-radius:var(--nd-acc-radius) !important;
  margin-bottom:var(--nd-acc-gap);
  overflow:visible;
}
body.new-design #productsAccordion .accordion-button{
  border-top-left-radius:var(--nd-acc-radius) !important;
  border-top-right-radius:var(--nd-acc-radius) !important;
}
body.new-design #productsAccordion .accordion-button.collapsed{
  border-radius:var(--nd-acc-radius) !important;
}

/* 5) GUMBI + POLJA — radij (pill/circle/close/page-link izvzeti) */
body.new-design .btn:not(.rounded-pill):not(.rounded-circle):not(.btn-close):not(.page-link){
  border-radius:11px;
}
body.new-design .form-control,
body.new-design .form-select{ border-radius:11px; }
/* notranji robovi input-group / btn-group ostanejo ravni (kot pri Bootstrapu) */
body.new-design .input-group > :not(:last-child),
body.new-design .btn-group > .btn:not(:last-child){
  border-top-right-radius:0 !important; border-bottom-right-radius:0 !important;
}
body.new-design .input-group > :not(:first-child),
body.new-design .btn-group > .btn:not(:first-child){
  border-top-left-radius:0 !important; border-bottom-left-radius:0 !important;
}

/* 6) FOKUS — viden (a11y), nevtralen; deluje na vseh temah */
body.new-design .form-control:focus,
body.new-design .form-select:focus,
body.new-design .form-check-input:focus,
body.new-design .btn:focus-visible{
  box-shadow:0 0 0 .2rem rgba(31,42,40,.16) !important;
  outline:none !important;
}

/* 7) SKUPNA APP-VRSTICA za samostojna staff-orodja (/kitchen, /lostfound):
   enoten «okvir» — ista teal vrstica kot brand-vrstica menija, bele ikone/gumbi.
   Nadomesti prejšnji .bg-dark trak. Teal je fiksen (--nd-teal), ker ta orodja
   nimajo theme-* cookie-ja in naj ustrezajo privzetemu (teal) videzu menija. */
body.new-design .nd-appbar{
  background:var(--nd-teal); color:#fff;
}
body.new-design .nd-appbar .text-white-50{ color:rgba(255,255,255,.7) !important; }

/* 8) STAFF «hiti prodaje» — ultrakompaktna mreža 3-v-vrsto (samo za osebje).
   Slika zgoraj, ime v eni vrstici (obrezano), enota + gumb za naročilo. Uporablja
   obstoječe price-tile/gumbe (.div-price/.price-plus-icon …), le pomanjšane. */
body.new-design:not(.is-panel) #staffPopularAccordion .em-pop-card{
  padding:.25rem .15rem;
}
body.new-design:not(.is-panel) #staffPopularAccordion .em-pop-thumb{
  max-width:72px; width:100%;
}
body.new-design:not(.is-panel) #staffPopularAccordion .em-pop-thumb img,
body.new-design:not(.is-panel) #staffPopularAccordion .em-pop-thumb picture,
body.new-design:not(.is-panel) #staffPopularAccordion .em-pop-thumb > span{
  width:100%;
}
body.new-design:not(.is-panel) #staffPopularAccordion .em-pop-name{
  line-height:1.15; max-width:100%;
}
body.new-design:not(.is-panel) #staffPopularAccordion .em-pop-unit{
  font-size:.7rem; line-height:1;
}
body.new-design:not(.is-panel) #staffPopularAccordion .em-pop-price .div-price{
  font-size:.9rem; padding-top:.2rem; padding-bottom:.2rem;
}
/* No selected-outline here: the popular block must match the normal menu, where
   a .selected item shows no frame (only the quantity badge marks the pick). */

/* 9) VIEW-COMPACT — četrti «Vid prikaza» v config_panel (poleg list/icons/large),
   za VSE obiskovalce: ultrakompaktna mreža 3-v-vrsto kot staff «hiti prodaje» (8).
   V nasprotju s prejšnjimi pogledi tu vsaka CENA dobi svojo ploščico (.em-compact-tile)
   z lastno sliko in imenom — združena kartica (Cola 0,33 / 0,5) se razbije nazaj na
   ploščice po velikosti, tako da ena slika nikoli ne kaže dveh cen. Ploščice se
   renderjajo ZNOTRAJ .item-div (glej card/template.php), zato ostane .item-div
   edina tarča filtra/iskanja (razred yes-search) — nič JS se ne spremeni. V kompaktu
   .item-div in .em-compact-tiles postaneta display:contents, da ploščice sodelujejo
   neposredno v .row mreži; normalna postavitev (.item-div-preview) se skrije.

   Ploščice so privzeto skrite v vseh pogledih; kompakt jih prikaže. */
body.new-design:not(.is-panel) .em-compact-tiles{ display:none; }

/* !important povsod, ker se borimo z Bootstrap utility razredi: .item-div-preview
   nosi .d-flex (display:flex !important), sicer normalna kartica ostane vidna nad
   ploščicami.

   ⚠️ DVA NAČINA IZVZETA — košarica (.show-basket) IN pogled «Točke» (.show-points).
   Oba filtrirata kartice s svojim pravilom na .item-div, ki pa je (0,3,1); spodnji
   display:contents je (1,5,1) in ga ob enakem !important premaga — filter tiho
   preneha delovati in v načinu se pokaže CEL meni. «Točke» so tako na telefonu
   kazale ves cenik v evrih namesto izdelkov za točke (popravljeno 2026-09-03).
   Ploščice cen v točkah tako ali tako ne poznajo (result_modifier jih namenoma
   preskoči), zato v obeh načinih dela normalna kartica.

   Delujeta samo prvi dve pravili + .em-compact-tiles; izvzetje pri širinah
   ploščic spodaj je no-op (starš .em-compact-tiles je takrat display:none) in
   stoji le zato, da je nabor selektorjev enoten in ga naslednji urejevalnik ne
   popravi na pol. Drugo polovico zdravljenja — geometrijo kartice — nosi
   template_styles.css §CARDS: LIST. */
body.new-design:not(.is-panel).view-compact:not(.show-basket):not(.show-points) #accordionSections .item-div{ display:contents !important; }
body.new-design:not(.is-panel).view-compact:not(.show-basket):not(.show-points) #accordionSections .item-div-preview{ display:none !important; }
body.new-design:not(.is-panel).view-compact:not(.show-basket):not(.show-points) #accordionSections .em-compact-tiles{ display:contents !important; }

/* Kartica, ki jo filter/iskanje skrije (nima .yes-search), mora ostati skrita —
   vključno z njenimi ploščicami. !important + višja specifičnost, da premaga
   display:contents !important zgoraj. */
body.new-design:not(.is-panel).view-compact.has-search #accordionSections .item-div:not(.yes-search){ display:none !important; }

/* Ploščica = ena celica v mreži (3-v-vrsto na mobilu → 6 na širokih zaslonih) */
body.new-design:not(.is-panel).view-compact:not(.show-basket):not(.show-points) #accordionSections .em-compact-tile{
  flex:0 0 auto; width:33.3333%; padding:0 .15rem; margin-bottom:.5rem;
}
@media (min-width: 576px){
  body.new-design:not(.is-panel).view-compact:not(.show-basket):not(.show-points) #accordionSections .em-compact-tile{ width:25%; }
}
@media (min-width: 768px){
  body.new-design:not(.is-panel).view-compact:not(.show-basket):not(.show-points) #accordionSections .em-compact-tile{ width:20%; }
}
@media (min-width: 992px){
  body.new-design:not(.is-panel).view-compact:not(.show-basket):not(.show-points) #accordionSections .em-compact-tile{ width:16.6667%; }
}

/* Notranji videz ploščice — enak kot pri staff «hiti prodaje» (§8) */
body.new-design:not(.is-panel) .em-compact-tiles .em-compact-card{ padding:.25rem .15rem; }
body.new-design:not(.is-panel) .em-compact-tiles .em-pop-thumb{ max-width:72px; width:100%; margin-left:auto; margin-right:auto; }
body.new-design:not(.is-panel) .em-compact-tiles .em-pop-thumb img,
body.new-design:not(.is-panel) .em-compact-tiles .em-pop-thumb picture,
body.new-design:not(.is-panel) .em-compact-tiles .em-pop-thumb > span{ width:100%; }
/* Ime izdelka se v kompaktu NE obrezuje — raje neenako visoke ploščice kot
   polovica imena. Zato prelom v več vrstic + lomljenje predolgih besed. */
body.new-design:not(.is-panel) .em-compact-tiles .em-pop-name{
  line-height:1.15; max-width:100%;
  white-space:normal; overflow:visible; text-overflow:clip; overflow-wrap:anywhere;
}
body.new-design:not(.is-panel) .em-compact-tiles .em-pop-unit{ font-size:.7rem; line-height:1; }
body.new-design:not(.is-panel) .em-compact-tiles .em-pop-price .div-price{ font-size:.9rem; padding-top:.2rem; padding-bottom:.2rem; }

/* Skupine po istem SAMPLE — SAMO ZA OSEBJE (.is-employee). V ravni mreži so
   ploščice ene kartice videti kot ločeni izdelki; zato je PRVA ploščica vzorca
   polna, druga in naslednje (porcije, združene velikosti istega vzorca) pa rahlo
   zatemnjene — natakar takoj vidi, kje se skupina začne in konča. Cena ostane
   polno berljiva, da se nič ne zamenja pri naročanju. Gost vidi vse enakovredno. */
body.new-design:not(.is-panel).view-compact.is-employee #accordionSections .em-compact-tile.em-compact-same-sample .em-pop-thumb{
  opacity:.4;
}
body.new-design:not(.is-panel).view-compact.is-employee #accordionSections .em-compact-tile.em-compact-same-sample .em-pop-name{
  opacity:.6; font-weight:normal !important;
}

/* Optimistična sprememba statusa naročila (staff): kartica se pri dotiku takoj
   zatemni («shranjujem …»), gumb postane kljukica; ob napaki/timeoutu se povrne.
   Samo za varne (ne-denarne) prehode — glej staff_order_action() v staff.js. */
body.new-design:not(.is-panel) .staff-order-pending{
  opacity:.55;
  transition:opacity .15s ease;
  pointer-events:none;   /* prepreči nadaljnje dotike, dokler zahteva teče v ozadju */
}


/* ── Offline mode: header indicator, non-blocking banner, per-order markers ──
   body.is-offline is toggled by js/offline-sync.js (real ping, not just
   navigator.onLine). Elements live in header.php; hidden until offline. */
#offline-indicator{ display:none; }
#offline-banner{ display:none; }
body.is-offline #offline-indicator{ display:inline-block; }
body.is-offline #offline-banner{ display:block; }
.offline-banner{ background:#b45309; color:#fff; letter-spacing:.2px; }

/* ── Testni način (UF_TEST_MODE) ──────────────────────────────────────────
   В отличие от офлайн-плашки этот блок рендерится сервером только когда режим
   включён, поэтому JS-класса и display:none нет. Фиолетовый, чтобы не путать с
   оранжевым «нет связи» и красными ошибками. Тот же цвет продублирован инлайном
   в HELPERS::testModeBanner() — там плашка печатается вне этого CSS. */
.test-mode-banner{ background:#7c3aed; color:#fff; letter-spacing:.2px; }

/* ── Меню собрано с сайта заведения (UF_MENU_SRC_*) ───────────────────────
   Спокойный серо-синий, а НЕ предупреждающий цвет: это не ошибка и не режим
   отладки, а пояснение о происхождении данных, и пугать им гостя незачем. При
   этом плашка обязана быть заметна — она стоит над шапкой меню и объясняет,
   почему цена может отличаться от кассовой. Ссылка на источник наследует
   цвет текста и подчёркнута: иначе на цветной подложке она теряется. */
.menu-source-banner{ background:#000; color:#fff; letter-spacing:.2px; }
.menu-source-banner a{ color:#fff; text-decoration:underline; }

/* Pulsing dot on orders/actions saved offline and not yet synced. NOTE: offline
   cards use .staff-order-offline (NOT .staff-order-pending) so they stay
   interactive — the employee must still be able to pay/advance them. */
.staff-offline-dot{
  display:inline-block; width:8px; height:8px; border-radius:50%;
  background:#f59e0b; margin-left:.25rem; vertical-align:middle;
  animation:em-offline-pulse 1.5s ease-in-out infinite;
}
body.new-design:not(.is-panel) .staff-order-offline{ box-shadow:inset 3px 0 0 #f59e0b; }
@keyframes em-offline-pulse{ 0%,100%{opacity:1} 50%{opacity:.3} }

/* NFC «оплата идёт»: пока приложение eMENI POS собирает касание, карточку слегка
   затемняем и вешаем бейдж со спиннером (staff.js: staff_nfc_spinner_on). Точечный
   опрос снимает его, как только заказ становится оплаченным.
   ВАЖНО: opacity вешаем на ВНУТРЕННЮЮ строку, а не на саму карточку. opacity<1 на
   карточке создаёт stacking context — выпадающее меню гамбургера (position:absolute,
   z-index:1000) перестаёт подниматься над соседними карточками и уезжает ПОД них,
   плюс само меню наследует полупрозрачность и его фон просвечивает. */
body.new-design:not(.is-panel) .staff-order-paying{ box-shadow:inset 3px 0 0 #0dcaf0; }
body.new-design:not(.is-panel) .staff-order-paying > .d-flex > .row,
body.new-design:not(.is-panel) .staff-order-paying > .staff-order-meta{ opacity:.75; }
/* Отменённый заказ: та же логика, что и у .staff-order-paying — гасим содержимое,
   а не карточку целиком (иначе меню гамбургера уезжает под соседние карточки).
   .staff-order-meta — мета-строка (время выдачи, комментарии, оплата) и строка
   общего комментария: они лежат СОСЕДЯМИ основного ряда, а не внутри него. */
body.new-design:not(.is-panel) .staff-order-cancelled > .d-flex > .row,
body.new-design:not(.is-panel) .staff-order-cancelled > .staff-order-meta{ opacity:.5; }
.staff-paying-badge{ display:inline-flex; align-items:center; margin-top:.35rem; font-weight:500; }
/* Крестик ручной отмены «оплата идёт» (POS-приложение при отмене не шлёт сигнал). */
.staff-paying-badge .staff-paying-cancel{ font-size:.6rem; padding:.15rem; opacity:.85; }
.staff-paying-badge .staff-paying-cancel:hover{ opacity:1; }

/* «Združi račune»: групповое объединение. В режиме объединения (body.staff-merge-mode,
   включается пунктом гамбургера «Združi račune») у объединяемых заказов правый столбец
   показывает чекбокс ВМЕСТО стрелки перехода статуса — само состояние чекбокса и есть
   выделение заказа, поэтому рамка/угловая галочка больше не нужны. Сама панель действий
   (#staff-merge-bar) видна всё время активного режима. */
.staff-merge-check{ display:none; }
.staff-merge-check .form-check-input{ margin:0; cursor:pointer; width:1.4rem; height:1.4rem; }
body.staff-merge-mode .staff-action-normal{ display:none; }
body.staff-merge-mode .staff-merge-check{ display:inline-flex; align-items:center; justify-content:center; }
#staff-merge-bar{ display:flex; align-items:center; gap:.5rem; }

/* Псевдотаблица панели: один и тот же DOM (Bootstrap row/col) на lg читается как
   таблица со строками, а на узких экранах — как карточки-строки. Используется
   списком инвентаризаций и отчётом о расхождениях (см. panel/includes/
   _inventory_diff_render.php). */
.pseudo-table-row{ border:1px solid #dee2e6; border-radius:.375rem; padding:.75rem; margin-bottom:.5rem; }
@media (min-width: 992px){
    .pseudo-table-row{ border:0; border-bottom:1px solid #dee2e6; border-radius:0; padding:.5rem .25rem; margin-bottom:0; }
}
/* Inventory list card (mobile): the date is pinned to the top-right corner in
   grey, date-only — same treatment as the document card. Desktop keeps it as a
   normal grid column (see .inv-row-date in stock_inventory.php renderInvRow). */
@media (max-width: 991.98px){
    .pseudo-table-row{ position: relative; }
    .pseudo-table-row .inv-row-date{
        position: absolute; top: .75rem; right: .75rem;
        width: auto; padding: 0;
        text-align: right; color: #6c757d; font-size: .8125rem;
    }
}

/* Predračun-settlement (račun ↔ predračun): когда račun гасит предрачун, он теряет
   собственный payable — деньги ушли по предрачуну. Чтобы это было видно, сумму и
   статус оплаты такого račun'а красим в голубой (и в редакторе документа, и в
   списке документов): голубой = «оплата привязана к предрачуну», а не собственное
   обязательство. См. panel/includes/document.php (#doc-predracun-block),
   panel/js/stock.js (em-amount-settled / em-text-settled) и
   panel/includes/_documents_list.php. */
.em-amount-settled{ color:#0d6efd !important; }
.em-text-settled{ color:#0d6efd !important; }
.em-badge-settled{ background-color:#0d6efd; color:#fff; }

/* End */


/* Start:/local/templates/eshop_bootstrap_v4/template_styles.css?178845999884291*/
/* Reserve space for the scrollbar even when there is little content yet —
   the page doesn't "jump" when the scrollbar appears/disappears. */
html { scrollbar-gutter: stable; }


body .navbar{background-color: #12b0ac;}

/* In the cart, show only the selected product variant for each item
   (for example, for "juice 100 ml / 500 ml" keep only the volume that is in the cart). */
#basket-item-list .basket-item-scu-item:not(.selected) { display: none; }

/* Deep-link highlight for event/promo cards */
@keyframes highlight-card-pulse {
    0%   { box-shadow: 0 0 0 0 rgba(13, 110, 253, 0.6); }
    50%  { box-shadow: 0 0 0 8px rgba(13, 110, 253, 0.15); }
    100% { box-shadow: 0 0 0 0 rgba(13, 110, 253, 0); }
}
.highlight-card > .card {
    animation: highlight-card-pulse 0.8s ease 2;
    outline: 2px solid rgba(13, 110, 253, 0.5);
    border-radius: .375rem;
    transition: outline 0.4s;
}

/* Coffee bean icon */
.bi-coffee-bean::before {
    content: "";
    display: inline-block;
    width: 1em;
    height: 1em;
    background-color: currentColor;
    -webkit-mask-image: url(/images/coffee-bean.svg);
    mask-image: url(/images/coffee-bean.svg);
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    vertical-align: -0.125em;
}

.navbar img{width: 130px; height: 50px;}
@media (min-width: 992px) {
    .navbar img{width: 260px; height: 100px;}  
}
body .navbar-dark .navbar-nav .nav-link{
    color: #fff;
    font-size: 1.5em;
    text-transform: uppercase;
    border-bottom: 5px solid transparent;
    margin: 0 5px;
}
body .navbar-dark .navbar-nav .nav-link:hover{color: #fff;border-bottom-color: #f96565;}

/* Hover for the header main menu (.navbar.bg-primary) — opacity only,
   we don't change the link color. Previously body a:hover colored the link primary
   and it blended with the header background. The `>` selector doesn't affect items
   inside the dropdown menu.
   The hover color is #f8f9fa (like link-light): in light bg-themes body has
   dark text, and `color: inherit` pulled in the black color, which made the menu
   items "darken" on hover. */
body .navbar.bg-primary .navbar-nav > .nav-item > .nav-link,
body .navbar.bg-primary .navbar-nav > .nav-link {
    transition: opacity 0.15s ease-in-out;
}
body .navbar.bg-primary .navbar-nav > .nav-item > .nav-link:hover,
body .navbar.bg-primary .navbar-nav > .nav-item > .nav-link:focus,
body .navbar.bg-primary .navbar-nav > .nav-link:hover,
body .navbar.bg-primary .navbar-nav > .nav-link:focus {
    color: #f8f9fa;
    opacity: 0.8;
}

/* Link color — only for "real" links, NOT for buttons.
   Without :not(.btn) this rule overrode the text color of <a class="btn …">
   and it had to be silenced with the .link-light utility on every button.
   The themed blocks in colors.css already use a:not(.btn) — we bring the
   base rule to the same form.
   :not(.link-light) — same exclusion as in colors-v2.css: .link-light marks links
   that sit on a full-colour background (header, footer). Bootstrap's own
   .link-light:hover carries no !important and loses to this rule, so those links
   turned teal on hover and blended into the teal header. */
body a:not(.btn):not(.link-light){color: #007b7c;}
body a:not(.btn):not(.link-light):hover{color: #12b0ac;}

body .text-primary {
    color: #007b7c !important;
}

body .h1, body h1 {
    font-size: 2rem;
}

/* body .bg-warning{background-color: #ffefbf !important;} */

body .btn-primary {
    color: #fff;
    background-color: #12b0ac;
    border-color: #12b0ac;
}
body .btn-primary:hover, body .btn-primary:focus, body .btn-primary:active {
    color: #fff;
    background-color: #007b7c;
    border-color: #007b7c;
    box-shadow: none;
}
body .btn-outline-primary{
    border-color: #12b0ac;
    color: #12b0ac;
}
body .btn-outline-primary:hover {
    color: #fff;
    background-color: #12b0ac;
    border-color: #12b0ac;
}

body .btn-check:active+.btn-outline-primary, 
body .btn-check:checked+.btn-outline-primary, 
body .btn-outline-primary.active, 
body .btn-outline-primary.dropdown-toggle.show, 
body .btn-outline-primary:active{
    color: #fff;
    background-color: #12b0ac;
    border-color: #12b0ac;
}

.bg-product{background: url(/images/bg_150.png) center center no-repeat;    background-size: cover;}

.text-center-center{display: flex !important; justify-content: center !important;align-items: center !important;}

/* Remove box-shadow for all elements on focus */
*:focus,
*:active,
.btn:focus,
.btn:active,
.form-control:focus,
.form-select:focus,
input:focus,
textarea:focus,
select:focus,
button:focus,
a:focus,
.btn-check:focus+.btn-outline-primary,
.btn-check:focus+.btn-outline-secondary,
.btn-check:focus+.btn-outline-success,
.btn-check:focus+.btn-outline-danger,
.btn-check:focus+.btn-outline-warning,
.btn-check:focus+.btn-outline-info,
.btn-check:focus+.btn-outline-light,
.btn-check:focus+.btn-outline-dark,
.btn-check:focus+.btn-outline-blue,
.btn-check:focus+.btn-outline-teal,
.btn-check:focus+.btn-outline-purple,
.btn-check:focus+.btn-outline-pink,
.btn-check:focus+.btn-outline-cyan,
.btn-check:focus+.btn-outline-yellow,
.btn-check:focus+.btn-outline-lime {
    box-shadow: none !important;
    outline: none !important;
}


/* Specific rules for buttons */
body .btn-outline-primary:focus,
body .btn-outline-primary:active,
body .btn-check:focus+.btn-outline-primary {
    box-shadow: none !important;
}

body .btn-danger {
    color: #fff;
    background-color: #f96565;
    border-color: #f96565;
}
body .btn-danger:hover, body .btn-danger:focus, body .btn-danger:active {
    color: #fff;
    background-color: #cf5555;
    border-color: #cf5555;
    box-shadow: none;
}

.flag{
    width:24px;
    height:16px;
    background-repeat: no-repeat; 
    background-image: url('/images/flags.png'); 
    background-position: top center;
    background-size: 24px;
    display: block;
}
.flag-sl{background-position-y: 0;}
.flag-en{background-position-y: -25px;}
.flag-it{background-position-y: -50px;}
.flag-de{background-position-y: -75px;}
.flag-ru{background-position-y: -100px;}
.flag-hr{background-position-y: -125px;}
.flag-hu{background-position-y: -150px;}

.link-danger{color: #f96565;}
.link-danger:hover, .link-danger:focus, .link-danger:active {color: #cf5555; text-decoration: none;}
.link-danger:active {color: #cf5555;}

.label-gratis{background-color: #0db4ae;}


.form-check-input:checked {
    background-color: #12b0ac;
    border-color: #12b0ac;
}

.centered-flex {
    display: flex;
    min-height: 3em;
    justify-content: center;
    align-items: center;
}

body .bg-danger{
    background-color: #f96565;
}

.text-secondary.text-decoration-none:hover{
    text-decoration: underline !important;
}

body .bg-primary{background-color: #12b0ac !important;}
body .border-primary{border-color: #12b0ac !important;}
body .bg-danger{background-color: #f96565 !important;}
body .bg-success{background-color: #6eb03f !important;}



.local_link{text-decoration: none !important; border-bottom: 1px dashed #007b7c;}
.local_link:hover{text-decoration: none !important; border-bottom-color: #12b0ac;}

.arrow-link {
    padding-left: 20px;
    text-indent: -20px;
    display: inline-block;
}

body .accordion-button {
    padding: 1rem 1rem;
    min-height: 66px;
}
body .accordion-button:not(.collapsed){
    color: #212529;
    background-color: #f8f9fa;
    box-shadow: none;    
}
body.basket-order .basket-header{display: none;}

body .accordion-button:not(.collapsed)::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
    transform: rotate(-180deg)
}
body .accordion-button:focus {
    border-color: transparent;
    box-shadow: none;

}
body .accordion-button { 
    background: transparent;
}


/* OPEN BASKET */

@media (min-width: 576px) {
    body.show-basket .accordion{border: 1px solid rgba(0, 0, 0, .125);}
}

body.show-basket #menu-main .collapse:not(.show){display: block;}
body.show-basket .accordion-header, body.show-basket .item-div:not(.selected){display: none !important;}
body.show-basket .accordion-body{padding-top: 0; padding-bottom: 0;}
body.show-basket .accordion-item{border:none;}
/* Описание раздела (UF_SECTION_DETAIL) живёт в теле аккордеона, поэтому шапка,
   скрытая выше, его не уносит. В корзине оно только разбивает список выбранных
   позиций — прячем. UF_SECTION_PREVIEW уже скрыт вместе с .accordion-header. */
body.show-basket .section-detail-desc{display: none !important;}

/* «Хиты продаж» (#staffPopularAccordion) — блок БЫСТРОГО ДОБАВЛЕНИЯ, в корзине
   ему делать нечего: там сотрудник смотрит, что уже набрано. Прятать его надо
   явно, потому что правила выше ломали его ровно наоборот — шапку аккордеона
   убирал `.accordion-header`, тело принудительно разворачивал
   `.collapse:not(.show)`, а отсев невыбранного (`.item-div:not(.selected)`) до
   карточек .em-pop-card не достаёт: своих .input-price-id у них нет. Получалась
   безымянная сетка ВСЕХ хитов с нерасхлопнутыми (lazy, data-src) картинками. */
body.show-basket #staffPopularAccordion{display: none !important;}

/* In cart mode we show the selected items from all menu tabs at once.
   The MENU_TABS bar filters .accordion-item via inline display:none
   (see applyTab in catalog.section/.../template.php) — so we hide the
   bar itself and restore section visibility with !important. On leaving
   show-basket the inline styles stay as they were — the filter restores itself. */
body.show-basket #menuTabs{display: none;}
body.show-basket #accordionSections .accordion-item{display: block !important;}
.view-icons body.show-basket .item-div {
    flex: 0 0 auto;
    width: 100%;
}

/* BASKET INFO */
.basket-info{display: none;}
body.show-basket .basket-info, body.view-order .basket-info{display: block;}

/* "Spremeni" links in the summary rows (table / payment / service mode / time):
   inline text is a ~14px-tall tap target sitting right next to the value, which
   is easy to miss on a phone. Padding widens the target without moving the
   layout (negative side margins keep the text optically in place); the row
   spacing itself comes from .row.gy-3 in template_basket.php. */
.basket-header .link{
    display: inline-block;
    padding: .35rem .5rem;
    margin: -.35rem -.15rem;
}

/* The "Čas:" row (time total) is shown only when the order actually has
   time-based items. body.order-has-time is set by after_update_basket() based on
   total_hour — otherwise a section with HAS_ALLOW_HOUR=Y showed an empty row. */
.basket-hour-row{display: none;}
body.order-has-time .basket-hour-row{display: block;}

/* Текст статуса заказа: обычный заказ vs ЗАПИСЬ. Оба варианта отрисованы в
   #order-block (template.php), виден один — по тому же order-has-time. Признак
   именно заказа, а не заведения: в салоне бывает кофе, в кафе — аренда по часам,
   и «Vaša rezervacija je potrjena» на чашку кофе выглядело поломкой. */
.em-status-appt{display: none;}
body.order-has-time .em-status-plain{display: none;}
body.order-has-time .em-status-appt{display: inline;}

/* UPSALE */
body.show-basket #upsales-popup{
    display: none !important;
}
#upsales-popup{bottom: 40px;}
/* When the bottom "pill" košarica is shown (above the old strip), we raise
   the upsell popup above it, so it doesn't overlap the capsule. */
body.has-items #upsales-popup{bottom: 86px;}

/* CARDS: GLOBAL */

/* The stepper (−N+) from template_prices.php is NO longer used in the cart: in cart
   mode we reuse the menu chips (.item-prices) with the same +/−, showing
   only the selected variants (see "BASKET: menu chips" below). The detail popup
   (.basket-price-quantity-detail) and order view (view-order) are left untouched. */
.item-div .basket-price-quantity{display: none;}

.item-div .table{display: table;}
body.show-basket .item-div .table{display: none;}

.item-price {
    min-width: 75px;
}

.price-plus-icon,
.price-minus-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    cursor: pointer;
    z-index: 2;
    transform: translateY(50%);
}

.price-plus-icon i,
.price-minus-icon i {
    font-size: 14px;
    line-height: 1;
}

.bi.bi-coffee-bean{font-size: 0.85em;}


/* QUANTITY ROW */
.quantity-row{display: none;}
body.show-basket .quantity-row, 
.basket-price-quantity-detail .quantity-row, 
body.view-order .quantity-row.quantity-row-1
{display: flex;}

/* Hide non-selected prices for disallow-count items in basket */
body.show-basket .disallow-count .quantity-row:not(.quantity-row-1){display: none !important;}

/* BASKET: menu chips instead of the stepper.
   In the cart we show the same price block as in the menu (.item-prices with +/−),
   but only the SELECTED variants (qty>0) — a chip is marked with the .price-selected class
   in updateQuantityBadge(), and reset in before_update_basket(). */
body.show-basket .item-prices{display: flex !important;}
/* The cart is always a list-like layout (see "CARDS: LIST" below), so the chips
   must hug the left edge regardless of the menu view mode the guest picked
   (grid/list/icons/compact) — otherwise the same cart looks different per mode. */
body.show-basket .item-prices,
body.show-basket .item-div .item-prices{justify-content: flex-start !important;}
body.show-basket .item-prices .item-price:not(.price-selected),
body.show-basket .item-prices .item-price-points:not(.price-selected){display: none !important;}

/* СВОРАЧИВАНИЕ ЦЕНОВЫХ ПЛИТОК (см. card/template.php + result_modifier.php).
   Карточка с пятью и более плитками показывает первые три, остальные прячутся за
   кнопкой «+N» на месте четвёртой. Состояние — класс .em-tiles-collapsed на самом
   .item-prices, поэтому у каждой карточки оно своё, а тоггл не переставляет узлы.

   :not(.price-selected) — не украшение: в корзине (body.show-basket) тот же ряд
   плиток переиспользуется как список выбранного, и скрытый вкус, который гость
   всё-таки заказал, обязан там показаться. Плитка помечается .price-selected в
   updateQuantityBadge(), и это исключение пропускает её мимо сворачивания. */
.item-prices.em-tiles-collapsed .item-price.em-tile-hidden:not(.price-selected),
.item-prices.em-tiles-collapsed .item-price-points.em-tile-hidden:not(.price-selected){display: none;}

/* «+N» видна только свёрнутой, «Skrij» — только раскрытой. */
.item-prices.em-tiles-collapsed .em-tiles-less-wrap{display: none;}
.item-prices:not(.em-tiles-collapsed) .em-tiles-toggle:not(.em-tiles-less-wrap){display: none;}
/* В корзине ряд показывает только заказанное — сворачивать там нечего. */
body.show-basket .em-tiles-toggle{display: none !important;}

/* Геометрия «+N» повторяет плитку цены (.div-price в new-design.css), чтобы ряд не
   прыгал по высоте; цвет приходит утилити-классом .bg-primary-50 из разметки. */
.em-tiles-more{
    border: 0;
    border-radius: 12px;
    padding: .45rem .95rem;
    font-weight: 700;
    line-height: 1.5;
    color: inherit;
    margin-bottom: 2px;
}


.employee-orders.not-selected{opacity: 0.5;}
.employee-order{opacity: 0.5;}
.employee-order.selected{opacity: 1;}


.responsive-columns {
    column-count: 2;
    column-gap: 1rem;
}
@media (min-width: 768px) {
    .responsive-columns {
        column-count: 3;
    }
}

@media (min-width: 992px) {
    .responsive-columns {
        column-count: 4;
    }
}

@media (min-width: 1200px) {
    .responsive-columns {
        column-count: 6;
    }
}

.btn-close {
    opacity: 1
}
.btn-close:hover {
    opacity: .5
}

.product-item-container { position: relative; }
.product-item-container .labels{position: absolute; top: 20px; right: 0;z-index: 17;}
.product-item .product-item-title{font-size: 1.2em;}
.product-item.IBLOCK_PROMO .product-item-title{font-size: 1em;}

.product-item {
	display: block;
	box-sizing: border-box;
	padding-top: 15px;
	width: 100%;
	border: 1px solid transparent;
	border-radius: 2px;
	background: #fff;
	box-shadow: 0 0 0 0 rgba(0, 0, 0, .19);
}

.product-item-line-card .product-item { border-bottom: 1px solid #dadada; }

.bx-no-touch .product-item-container.hover .product-item {
	position: absolute;
	right: -15px;
	left: -15px;
	padding: 15px 15px 0;
	width: auto;
	border-color: transparent;
	box-shadow: 0 7px 15px 0 rgba(0, 0, 0, .19);
}

.bx-touch .product-item {
	padding: 15px 0 0;
	width: auto;
	background: #fff;
}

.bx-authform{
    padding: 0 10px;
}


/* Styles for the round color indicators */
.color-picker-item {
    position: relative;
    display: inline-block;
}

.color-radio {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
}

.color-circle {
    display: block;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    cursor: pointer;
    border: 3px solid transparent;
    transition: all 0.2s ease;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

.color-circle:hover {
    transform: scale(1.1);
    box-shadow: 0 4px 8px rgba(0,0,0,0.2);
}

.color-radio:checked + .color-circle {
    border-color: #ffffff;
    box-shadow: 0 0 0 2px #007bff, 0 4px 8px rgba(0,0,0,0.2);
    transform: scale(1.1);
}

.color-radio:focus + .color-circle {
    outline: none;
    box-shadow: 0 0 0 2px #007bff, 0 4px 8px rgba(0,0,0,0.2);
}


body .bx-wrapper div a.link-light {
    color: #f8f9fa;
}


/* Styles for the various product display modes */

/* Base styles for card containers */
.card-img-container {
    display: flex;
    align-items: center;
    justify-content: center;
}

.more-photo-icon {
    position: absolute;
    bottom: 4px;
    right: 4px;
    background: rgba(0, 0, 0, 0.55);
    color: #fff;
    border-radius: 4px;
    padding: 2px 5px;
    font-size: 0.7rem;
    line-height: 1;
    pointer-events: none;
}

.card-content-container {
    flex: 1;
}

/* Состав под названием — вместо пустого краткого описания у позиций, чей род
   помечен «имя не говорит, что внутри» (TYPES.NAME_OPAQUE). Список машинный и
   неограниченной длины: у пиццы это дюжина строк рецептуры, поэтому режем его
   двумя строками. Полный состав гость видит в карточке, там же и оговорка о
   приблизительности.

   Правило БЕЗ привязки к body.new-design намеренно: это не оформление скина, а
   ограничитель высоты карточки — без него ряд плиток разъезжается. Своя
   line-height обязательна: подпись выше живёт внутри .item-name с inline
   line-height:1em, и унаследованная единица склеила бы две строки в одну
   полосу. */
.em-item-comp {
    margin-bottom: .5rem;
    line-height: 1.25;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}




/* CARDS: LIST */

/* ⚠️ ТРЕТИЙ СЕЛЕКТОР `body.view-compact.show-points` — не украшение.
   Компакт и корзина/«Точки» несовместимы: new-design.css §9 в этих двух режимах
   выключает плитки и возвращает нормальную карточку. Но на body в этот момент
   висит `view-compact`, а НЕ `view-list`, поэтому карточка остаётся вообще без
   набора `view-*`: теряет размер картинки 100×100 и показывает ОБА превью сразу —
   базового `display` у `.small-preview-image`/`.big-preview-image` нет, прячет их
   только правило вида. Корзине это дублирование дали сразу (`body.show-basket`),
   виду «Точки» — забыли, и он приехал в прод сломанным.
   Скоуп уже, чем у корзины (только компакт): ломался и был показан именно он.
   ⚠️ Это НЕ значит, что `icons`/`large` + «Точки» безупречны: правило на 1409
   (`.view-icons body.show-points .item-div`) мёртвое — `body` не может быть
   потомком `.view-icons`, оба класса висят на самом body, — и в `icons` карточки
   вида «Точки» остаются в 50%-сетке. У корзины рабочий двойник рядом (699,
   `.view-icons.show-basket`). Отдельная правка, сюда сознательно не входит.
   Сторож обеих половин — tests/unit/points_compact_css_test.php. */
.view-list .item-div-preview,
body.show-basket .item-div-preview,
body.view-compact.show-points .item-div-preview {
    flex-direction: inherit;
    text-align: inherit;
    border: none;
    margin-bottom: 0;
    padding: 0;
}
.view-list .card-img-container .small-preview-image,
body.show-basket .card-img-container .small-preview-image,
body.view-compact.show-points .card-img-container .small-preview-image  {
    display: block;
}
.view-list .card-img-container .big-preview-image,
body.show-basket .card-img-container .big-preview-image,
body.view-compact.show-points .card-img-container .big-preview-image  {
    display: none;
}
.view-list .card-img-container,
body.show-basket .card-img-container,
body.view-compact.show-points .card-img-container {
    flex: 0 0 auto;
    /* max-width: 25%; */
    width: 100px;
    height: 100px;
}


/* Корзине то же самое дано своим правилом выше (body.show-basket .item-prices),
   поэтому в списке её нет; виду «Точки» в компакте — здесь, иначе карточка уже
   list-строка, а чипы цен всё ещё по центру от бутстраповского
   justify-content-center. */
.view-list .item-div .item-prices,
body.view-compact.show-points .item-div .item-prices {
    justify-content: start !important
}
/* .view-list .item-div .item-name .small{
    display: none;
} */



@media (min-width: 992px) {
    .view-list .item-div,
    body.show-basket .item-div,
    body.view-compact.show-points .item-div {
        width: 50%;
    }
}

@media (min-width: 1200px) {
    .view-list .item-div,
    body.show-basket .item-div,
    body.view-compact.show-points .item-div {
        width: 33.333333%;
    }
}




/* CARDS: SMALL ICONS */

.view-icons .item-div-preview {
    flex-direction: column;
    text-align: center;
    padding: 0.5rem 0;
    margin-bottom: 1rem;
}
.view-icons .card-img-container .big-preview-image {
    display: none;
}

.view-icons .card-img-container {
    flex: 0 0 auto;
    max-width: 100%;
    margin-bottom: 0.5rem;
}

.view-icons .card-content-container {
    /* flex: 1;
    max-width: 100%; */
    padding-left: 0;
}

.view-icons .item-div {
    flex: 0 0 auto;
    width: 50%;
}
.view-icons.show-basket .item-div {
    flex: 0 0 auto;
    width: 100%;
}
.view-icons table {
    margin: 0 auto;
}





@media (min-width: 576px) {
    .view-icons .item-div {
        width: 33.333333%;
    }
}

@media (min-width: 768px) {
    .view-icons .item-div {
        width: 25%;
    }
}

@media (min-width: 992px) {
    .view-icons .item-div {
        width: 20%;
    }
}



/* CARDS: BIG ICONS */

.view-large .item-div-preview {
    flex-direction: column;
    text-align: center;
    padding: 1.5rem;
    border: 1px solid #dee2e6;
    border-radius: 0.5rem;
    margin-bottom: 1.5rem;
}
.view-large .card-img-container .small-preview-image {
    display: none;
}

.view-large .card-img-container {
    flex: 0 0 auto;
    max-width: 100%;
    margin-bottom: 1rem;
}

.view-large .card-content-container {
    /* flex: 1;
    max-width: 100%; */
    padding-left: 0;
}

.view-large .item-div {
    flex: 0 0 auto;
    width: 100%;
}

.view-large table {
    margin: 0 auto;
}

@media (min-width: 576px) {
    .view-large .item-div {
        width: 50%;
    }
}

@media (min-width: 992px) {
    .view-large .item-div {
        width: 33.333333%;
    }
}

@media (min-width: 1200px) {
    .view-large .item-div {
        width: 25%;
    }
}






.clickable-price {
    user-select: none !important;
}


.page-block.section-div{display: block;}

/* Hide number input spinners in all browsers */
input[type="number"] {
    -webkit-appearance: textfield;
    -moz-appearance: textfield;
    appearance: textfield;
}

input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    display: none;
    margin: 0;
}

input[type="number"] {
    -moz-appearance: textfield;
}

/* Ensure no margin or padding interference */
.qty-input {
    -webkit-appearance: none !important;
    -moz-appearance: textfield !important;
    appearance: none !important;
}

.qty-input::-webkit-outer-spin-button,
.qty-input::-webkit-inner-spin-button {
    -webkit-appearance: none !important;
    display: none !important;
    margin: 0 !important;
}

.table-option.disabled {
    pointer-events: none;
    opacity: 0.65;
}



/* BOTTOM BASKET — "pill" (a dark floating capsule at the bottom).
   Layout: [counter circle] [Košarica + meta] [sum/points → | Pošlji].
   The accents (.bg-primary circle, .btn-primary send button) pick up the
   venue's theme color. The slide-out from the bottom is translateY, controlled by body.has-items;
   in order-view mode (show-basket) the capsule is hidden. */
#bottom_basket {
    position: fixed;
    left: 12px;
    right: 12px;
    bottom: 12px;
    margin: 0 auto;
    width: auto;
    max-width: 560px;
    z-index: 4;
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 9px 10px 9px 12px;
    background: #1f2a28;
    color: #fff;
    border-radius: 999px;
    box-shadow: 0 16px 40px -10px rgba(31, 42, 40, .45);
    transform: translateY(calc(100% + 24px));
    transition: transform 0.45s cubic-bezier(.2, .8, .2, 1);
}
body.has-items #bottom_basket {
    transform: translateY(0);
}
body.has-items.show-basket #bottom_basket {
    display: none;
}

/* Counter circle (themed background via .bg-primary; inside — the number of items).
   The exact sizes/font per the layout are in new-design.css. */
#bottom_basket .bb-count {
    flex-shrink: 0;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 18px;
    font-weight: 800;
    cursor: pointer;
}

/* The "Košarica" label + meta (count / time) */
#bottom_basket .bb-info {
    flex: 1;
    min-width: 0;
    line-height: 1.15;
    cursor: pointer;
    overflow: hidden;
}
#bottom_basket .bb-title {
    font-weight: 800;
    font-size: 15px;
    white-space: nowrap;
}
#bottom_basket .bb-meta {
    font-size: 12px;
    font-weight: 500;
    opacity: .72;
    margin-top: 1px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
#bottom_basket .bb-meta-time {
    margin-left: 8px;
}

/* Right zone: sum/points (always visible) + action (arrow / "Pošlji").
   We give .bb-right a muted background, so as not to override the themed .btn-primary
   on the staff send button (there the .bb-right id-specificity would win). */
/* ATTENTION: do NOT set display here — .bb-go-send's id-specificity (1,1,0)
   would override the .js-bottom-send{display:none} (0,1,0) hiding, and the
   "Send" button would show to the client. Visibility of .bb-go-send is controlled only by
   the .js-bottom-send / staff-toggle rules; we give display:flex to .bb-right only. */
#bottom_basket .bb-right,
#bottom_basket .bb-go-send {
    flex-shrink: 0;
    align-items: center;
    gap: 8px;
    padding: 9px 13px;
    border-radius: 999px;
    color: #fff;
    font-weight: 800;
    font-size: 15px;
    line-height: 1;
    white-space: nowrap;
    text-decoration: none;
    cursor: pointer;
}
#bottom_basket .bb-right {
    display: flex;
    background: rgba(255, 255, 255, .12);
    padding-right: 11px;
}
#bottom_basket .bb-go-send {
    border: 0;            /* background — themed .btn-primary */
}
#bottom_basket .bb-go-send:hover,
#bottom_basket .bb-go-send:focus {
    color: #fff;
}
/* Отправка заблокирована — нет телефона (updateSendButtonState в script.js).
   Правило СВОЁ, а не бутстраповское: .bb-go-send — это <a> без класса .btn.
   ⚠️ И `pointer-events: none` здесь НАМЕРЕННО нет, в отличие от кнопки в
   корзине: до плашки гость дотягивается с экрана меню, где не видно ни поля
   телефона, ни звёздочки над ним, и мёртвый тап не сказал бы ему ничего.
   Тап проходит, send_order() отбивает отправку, показывает тост с причиной и
   открывает корзину — прямо на том поле, которого не хватает. */
#bottom_basket .bb-go-send.disabled {
    opacity: .5;
}
#bottom_basket .bb-sum {
    display: flex;
    align-items: center;
    gap: 5px;
}
#bottom_basket .bb-arr {
    font-size: 22px;
    opacity: .9;
    margin: -4px -2px -4px -1px;
}


/* Main blocks, hidden by default */
.page-block {
    display: none;
}

body.show-menu .section-div {
    display: block;
}

body.show-menu #employee-orders-block {
    display: none;
}

/* For staff, show the orders block */
body.is-employee #employee-orders-block {
    display: block;
}

/* STAFF MODE — hide client elements, leave only the "to top" button */
body.is-employee:not(.has-items) #bottom_basket { display: none !important; }

/* STAFF MODE — bottom "Send order" button instead of "Show order".
   Shown only to staff (is-employee), only in sections without table
   selection (parent .bottom-can-quick) and only when the order has no
   time-based items (body without order-has-time — set by after_update_basket based on
   total_hour). Clients and time-based orders see the usual "Show order". */
.js-bottom-send { display: none; }
body.is-employee:not(.order-has-time) .bottom-can-quick .js-bottom-send { display: flex; }
body.is-employee:not(.order-has-time) .bottom-can-quick .js-bottom-show { display: none; }

/* The middle "open the cart" button — shown ONLY when tapping the pill itself
   does NOT open the cart AND the cart still holds a decision to make:
   pending changes to an already-sent order (ANY user, staff or guest) — the
   pill reads "Update" and applies it on tap (bottom_basket_click in script.js).
   Without this button a guest adding to their active order could never reach the
   cart again, and so could never comment on the addition.
   ⚠️ Staff quick-send is deliberately NOT here. In that mode the order has no
   time-based items (see .js-bottom-send above), so there is nothing in the cart
   for the waiter to set — the pill must read as a plain "send" and carry the
   send arrow alone. The way in is not lost either way: the counter / label / sum
   still call bottom_basket_click → show_basket(), and as soon as the order DOES
   contain a time-based item quick-send switches off and the usual arrow
   (.js-bottom-show) opens the cart to pick the slot. */
.js-bottom-cart { display: none; }
body.has-order-id.has-changes .js-bottom-cart { display: flex; }
#bottom_basket .bb-go-cart {
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .12);
    color: #fff;
    font-size: 18px;
    text-decoration: none;
    cursor: pointer;
}
#bottom_basket .bb-go-cart:hover,
#bottom_basket .bb-go-cart:focus { color: #fff; }

/* Service-mode badge on staff order cards / kitchen tickets (ORDER_SERVICE::badgeHtml) */
.em-service-badge {
    font-weight: 600;
    font-size: 11px;
    padding: .25em .6em;
    white-space: nowrap;
}

/* Editing an already-sent order with pending changes: the bottom pill applies
   the update immediately (bottom_basket_click in script.js), so its title
   swaps from "Košarica" to "Posodobi". */
#bottom_basket .bb-title-update { display: none; }
body.has-order-id.has-changes #bottom_basket .bb-title-basket { display: none; }
body.has-order-id.has-changes #bottom_basket .bb-title-update { display: inline; }
body.is-employee #last-active-order-block { display: none !important; }
body.is-employee #footerMenu { display: none !important; }
body.is-employee .floating-btn:not(#btn-up) { display: none !important; }

/* STAFF MODE — у сотрудника СВОИХ баллов нет, поэтому прячем всё, что говорит
   о его личном балансе: пилюлю в шапке (#points) и строки начисления/списания
   в корзине. А вот пункт меню «Točke» (#menu-points) сотруднику ОСТАВЛЕН —
   через него он открывает вид «за баллы» и показывает гостю за стойкой, что
   тот может взять за накопленное. Свой баланс у сотрудника нулевой, поэтому
   позиции в этом виде будут притушены (.price-no-points) — читать список это
   не мешает. */
body.is-employee #points,
body.is-employee .total_plus,
body.is-employee .total_points,
body.is-employee .payed_plus,
body.is-employee .payed_points,
body.is-employee .has-points-row { display: none !important; }

/* Карточка заказа сотрудника кликабельна ЦЕЛИКОМ (onclick show_staff_order в
   MENU::renderOrderCollapsedRow раскрывает её), но это <div>, а не ссылка —
   курсор оставался стрелкой, и «сюда можно нажать» ниоткуда не следовало.
   Заметнее всего это было в раскрывашке броней, где карточка одна и подсказать
   некому.
   ⚠️ Зацеплено за data-order-name, а НЕ за .staff-order-status: тот же класс
   носят некликабельные заголовки групп («Preklicana naročila», заголовки дней
   в бронях), и палец на них обещал бы действие, которого нет. */
[data-order-name] { cursor: pointer; }

/* STAFF EDIT MODE — staff is editing an existing order.
   The banner is fixed at the top; visible only when body.is-edit-order.
   padding-top on body shifts the rest of the content so the banner doesn't overlap the header. */
.staff-edit-banner { display: none; z-index: 1060; }
body.is-edit-order .staff-edit-banner { display: flex; }
body.is-edit-order { padding-top: 50px; }
body.is-edit-order #staff-orders-list { display: none !important; }

/* Hide alerts by default */
#alert_success,
#alert_danger,
#alert_update {
    display: none;
}

/* ORDER BLOCK */
#order-block{display: none;}
body.has-order-id #order-block{display: flex;}
body.is-employee #order-block {display: none !important;}



/* Cart mode */

body.show-basket .section-div {
    display: block;
}
/* Per-product comments block */
.item-comment-section {
    display: none;
}

body.show-basket .item-comment-section {
    display: block;
}

/* Batches of the comment block (script.js: renderCommentBatches / syncCommentBatches).
   A batch already in the order is rendered read-only — the kitchen has seen it —
   above the input, which only ever applies to what the guest is adding now. The
   block is NOT hidden on `hide-if-sent`: an order at status 10/20/30 still takes
   new items, so it must still take comments for them; only PAID goes read-only.

   Те же классы носит и примечание ко ВСЕМУ заказу (.order-note-section в
   template_basket.php): оно устроено так же — отправленные партии read-only над
   полем ввода, — поэтому селекторы перечисляют оба блока. */
.item-comment-section .comment-batch,
.order-note-section .comment-batch {
    display: flex;
    align-items: baseline;
    gap: .35rem;
    margin-top: .25rem;
}
.item-comment-section .comment-batch-text,
.order-note-section .comment-batch-text {
    word-break: break-word;
}
.item-comment-section .comment-batch-label,
.order-note-section .comment-batch-label {
    font-weight: 600;
    white-space: nowrap;
    opacity: .75;
}
.item-comment-section .comment-new-label {
    margin-top: .5rem;
}
/* Отступ между последней отправленной партией и ссылкой «дописать». */
.order-note-section .comment-batches:not(:empty) {
    margin-bottom: .5rem;
}

/* For paid orders (status 40) - read only */

/* Отправленный заказ: контактные поля прячутся — гость их уже заполнил, и
   менять их задним числом ему нельзя.

   ИСКЛЮЧЕНИЕ — сотрудник, открывший заказ на правку (body.is-edit-order): он
   правит заказ ЗА гостя, и «переписать имя/телефон/адрес/дату» — ровно то, ради
   чего он в этот режим и заходит. Гейт по 10/20/30: у оплаченного (40) правка
   недоступна вовсе — staff_edit_order() выходит из режима на терминальном
   статусе, — поэтому 40 остаётся read-only безусловно.
   ⚠️ Поля должны быть ЗАПОЛНЕНЫ значениями заказа до того, как станут видимы:
   пустое поле на планшете кафе — это чужие данные из куки. Загрузку делает
   applyServiceContext() + applyAppointmentContext() в staff_edit_order(). */
body.order-status-10:not(.is-edit-order) .hide-if-sent,
body.order-status-20:not(.is-edit-order) .hide-if-sent,
body.order-status-30:not(.is-edit-order) .hide-if-sent,
body.order-status-40 .hide-if-sent {
    display: none !important;
}

/* Имя и телефон записи (#client_name / #client_phone) — обычные всегда видимые
   поля, как у «с собой» и доставки. Правил «заполнено → показать текст со
   ссылкой Spremeni вместо инпута» (body.has-client-name/-phone) здесь больше
   нет: правка собственного номера стоила лишнего тапа, а строка на глазах
   меняла вид. Разметку см. в template_basket_urnik.php. */
body:not(.order-status-10):not(.order-status-20):not(.order-status-30):not(.order-status-40) .show-if-sent {
    display: none !important;
}
body.order-status-40 .hide-if-payed {
    display: none !important;
}
body:not(.order-status-40) .show-if-payed {
    display: none !important;
}

body.basket-order .view-mode {
    display: block;
}


body.basket-order .table-option {
    pointer-events: none;
    opacity: 0.65;
}




/* Hide editing elements by default */
.view-mode {
    display: block;
}

/* SEND ORDER BUTTON */
.send-order-buttons, body.has-order-id .send-order-buttons  {
    display: none;
}
body.has-items:not(.has-order-id) .send-order-buttons {
    display: block;
}

/* UPDATE ORDER BUTTON */
.update-order-buttons {
    display: none;
}
body.has-order-id.has-items.has-changes .update-order-buttons{
    display: block;
}
/* СОТРУДНИК, ОТКРЫВШИЙ ЗАКАЗ НА ПРАВКУ, ВИДИТ КНОПКУ ВСЕГДА — без has-changes.
   Гостю кнопка загорается по факту изменения (незачем предлагать сохранить то,
   чего он не трогал), но у правки заказа это выходило боком: сотрудник заходит
   в большую корзину, а сохранять нечем — единственная кнопка внизу «Nazaj na
   meni». Особенно у заказа с повременной позицией: там ещё и быстрая «Pošlji»
   на нижней плашке спрятана (body.order-has-time), то есть корзина — вообще
   единственный путь. Сохранение без правок безвредно: update_order() шлёт ту же
   корзину, сервер пересчитывает диффом. */
body.is-edit-order.has-order-id.has-items .update-order-buttons{
    display: block;
}

/* CAN CANCEL */
.cancel-order-buttons{display: none;}
body.order-status-10 .cancel-order-buttons{display: block;}




/* MARK ORDER BUTTONS */
.mark-order-buttons {
    display: none;
}
body.view-order .mark-order-buttons {
    display: block;
}

/* QUANTITY SELECTOR (INPUT GROUP) */
body.show-basket.is-employee.view-order .quantity-selector{display: none;}

/* QUANTITY DISPLAY (NO INPUT GROUP) */
body.show-basket .quantity-display{display: none;}
body.show-basket.is-employee.view-order .quantity-display{display: block;}

.view-order .order-actions{display: none;}

/* EMPLOYEE ORDER ACTIONS */
.employee-order-actions{display: none;}
body.show-basket.is-employee.view-order .employee-order-actions{display: block;}

/* TABLE SELECTOR EDIT */
body.is-employee.view-order .table-selector-edit {
    display: none;
}

/* TABLE SELECTOR VIEW */
.table-selector-view{
    display: none;
}

body.show-basket .table-selector-view {
    display: inline-block;
}
body.show-basket #header-block{display: none;}

/* BALANCE */
#balance-div{display: none;}
body.show-balance #balance-div{display: block;}
body.show-balance #menu-main{display: none;}
body.show-balance #header-block{display: none;}
body.show-balance .floating-buttons{display: none;}

/* ORDERS */
#orders-div{display: none;}
body.show-orders #orders-div{display: block;}
body.show-orders #menu-main{display: none;}
body.show-orders #header-block{display: none;}

/* EVENTS */
#events-div{display: none;}
body.show-events #events-div{display: block;}
body.show-events #menu-main{display: none;}
body.show-events #header-block{display: none;}

/* PROMO */
#promo-div{display: none;}
body.show-promo #promo-div{display: block;}
body.show-promo #menu-main{display: none;}
body.show-promo #header-block{display: none;}

/* SUBSCRIBE */
#subscribe-div{display: none;}
body.show-subscribe #subscribe-div{display: block;}
body.show-subscribe #menu-main{display: none;}
body.show-subscribe #header-block{display: none;}

/* REVIEWS */
#reviews-div{display: none;}
body.show-reviews #reviews-div{display: block;}
body.show-reviews #menu-main{display: none;}
body.show-reviews #header-block{display: none;}

/* POLLS */
#polls-div{display: none;}
body.show-polls #polls-div{display: block;}
body.show-polls #menu-main{display: none;}
body.show-polls #header-block{display: none;}

/* CHAT */
#chat-div{display: none;}
body.show-chat #chat-div{display: block;}
body.show-chat #menu-main{display: none;}
body.show-chat #header-block{display: none;}

/* ABOUT */
#about-div{display: none;}
body.show-about #about-div{display: block;}
body.show-about #menu-main{display: none;}
body.show-about #header-block{display: none;}

/* TERMS */
#terms-div{display: none;}
body.show-terms #terms-div{display: block;}
body.show-terms #menu-main{display: none;}
body.show-terms #header-block{display: none;}

/* FAQ */
#faq-div{display: none;}
body.show-faq #faq-div{display: block;}
body.show-faq #menu-main{display: none;}
body.show-faq #header-block{display: none;}

/* Map consent placeholder — covers the empty iframe until the visitor taps it,
   so no request reaches Google before then (see emMapConsentLoad in script.js). */
.em-map-consent .em-map-consent-ph{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: .35rem;
    width: 100%;
    height: 100%;
    padding: 1rem;
    border: 1px dashed var(--bs-border-color, #ced4da);
    border-radius: var(--bs-border-radius, .375rem);
    background: var(--bs-tertiary-bg, #f8f9fa);
    color: var(--bs-body-color, #212529);
    text-align: center;
    cursor: pointer;
}
.em-map-consent .em-map-consent-cta{font-weight: 600;}
.em-map-consent .em-map-consent-note{opacity: .75; font-size: .8125rem;}
.em-map-consent.em-map-loaded .em-map-consent-ph{display: none;}

/* POINTS RULES */
.points-div{display: none;}
body.show-points .points-div{display: block;}
body.show-points #menu-main{display: block;}
body.show-points #header-block{display: none;}

/* POINTS PRICE */
.item-price-points{display: none;}
.show-points .item-price-points{display: block;}
.show-points .item-price{display: none;}

.item-price-points.price-no-points {
    opacity: 0.5;
}
.item-price-points.price-no-points .position-relative {
    cursor: not-allowed;
}

/* TOTAL */
.total_sum{display: none;}
body.has-money-buy .total_sum{display: inline;}

.total_points{display: none;}
body.has-points-buy .total_points{display: inline;}

.total_plus{display: none;}
body.has-money-buy.has-points-buy .total_plus{display: inline;}

/* Show only items with points price when viewing points menu */
body.show-points #menu-main .collapse:not(.show){display: block;}
body.show-points .accordion-header, body.show-points .item-div:not(.has-points-price){display: none !important;}
body.show-points .accordion-body{padding-top: 0; padding-bottom: 0;}
/* Рамку снимает new-design.css (правило рядом с таким же для корзины): правило
   дизайна body.new-design:not(.is-panel) .accordion-item специфичнее этого и
   возвращало её обратно. Здесь оставлено только для старой темы. */
body.show-points .accordion-item{border:none;}

/* Хром обычного меню на виде «Точки». Набор повторяет тот, что уже есть у
   корзины (body.show-basket выше): описание раздела («Izberite restavracijo…»),
   блок хитов, строка вкладок, плашка текущего заказа, переключатель плиток.
   Без этих правил вид «Точки» показывал баннер выбора заведения и строку
   заказов поверх правил начисления. */
body.show-points .section-detail-desc{display: none !important;}
body.show-points #staffPopularAccordion{display: none !important;}
body.show-points #last-active-order-block{display: none !important;}
body.show-points .em-tiles-toggle{display: none !important;}

/* Вкладки категорий фильтруют .accordion-item инлайновым display:none (applyTab
   в catalog.section/.../template.php). Позиции за баллы лежат в любой закладке,
   поэтому строку прячем, а видимость секций возвращаем !important — иначе
   позиции из НЕАКТИВНОЙ закладки на виде «Точки» не показывались вовсе. Ровно
   та же пара правил есть у корзины; на выходе из режима инлайновые стили
   остаются как были, и фильтр восстанавливается сам. */
body.show-points #menuTabs{display: none;}
body.show-points #accordionSections .accordion-item{display: block !important;}
.view-icons body.show-points .item-div {
    flex: 0 0 auto;
    width: 100%;
}

/* NO DATA MENU */
#no-data-menu{display: none;}

/* ORDER STATUS */
.order-status-40 #change-order-status-mess{display: none;}

/* MAIN PAGE 
.menui-loyalty h2 {
    border-left: 1.2em solid #f96565;
    padding-left: 10px;
}*/



/* CONFIG */
.header-panel-config{display: none !important;}
body.show-config .header-panel-config{display: block !important;}


/* MEMO: SEARCH HEIGHT = H1 BLOCK HEIGHT */
.header-panel-h1-block{height: 70px;}


/* SEARCH */
.header-panel-search {
    display: none !important;
}

body.show-search .header-panel-search {
    display: flex !important;
    align-items: center;
}

/* SEARCH */
#show-search-button{display: none;}

/* FILTER */
#show-filter-button{display: none;}
.header-panel-filter {
    display: none !important;
}

body.show-filter .header-panel-filter {
    display: flex !important;
    align-items: center;
}

/* Search badges */
#searchCountBadge {
    display: none;
}
.has-search #searchCountBadge {
    display: inline-block;
}
.has-search .accordion-item:not(.yes-search),
.has-search .item-div:not(.yes-search) {
    display: none;
}

/* Price filter dropdown items */
.dropdown-menu .form-check {
    margin-bottom: 0;
}

.dropdown-menu .dropdown-item .form-check {
    width: 100%;
}

/* Disabled ingredient filter items */
.dropdown-menu .dropdown-item.text-muted {
    opacity: 0.5;
}

.dropdown-menu .dropdown-item.text-muted .form-check-input:disabled {
    cursor: not-allowed;
}

.dropdown-menu .dropdown-item.text-muted .form-check-label {
    cursor: not-allowed;
}

/* H1 BLOCK */

/* H1 BLOCK MAIN */
body.show-search .header-panel-h1, body.show-filter .header-panel-h1{display: none;}

/* H1 BLOCK BASKET */
#basket-block{display: none;}
body.show-basket:not(.show-balance) #basket-block{display: block;}

#order-id-descr{display: none;}
body.has-order-id #order-id-descr{display: inline;}

/* H1 BLOCK HISTORY */
#history-block{display: none;}
body.show-balance #history-block{display: block;}

/* PAYMENTS */
.payments-info-footer img{max-width: 50px; height: auto;}
body.show-basket .payments-info-footer{display: none;}
/* NB: .payment-method / .payment-method-icon / .service-mode-icon больше НЕ
   несут собственных размеров — и то и другое живёт только внутри пикеров
   корзины, а размер там задаётся ОДНИМ правилом на оба состояния (см.
   .em-picker-value-icon / .em-picker-option-icon ниже). Классы оставлены как
   хуки: на них завязаны mark_payments() и e2e. */

/* Ширина полей ввода в корзине. На десктопе колонка значений — половина
   контейнера, и «Vaše ime» растягивалось на пол-экрана: поле длиной с абзац
   само по себе врёт про ожидаемый объём ввода. 350px хватает самому длинному
   варианту правила замены, а на телефоне ограничение не срабатывает вовсе.
   Правило одно на ВСЕ поля корзины (имя, телефоны, адрес, оба пикера, селекты
   времени, примечание к заказу) — новая строка получает ту же ширину без
   правок здесь. */
.basket-header .form-control,
.basket-header .form-select,
.basket-header .em-picker{max-width: 350px;}

/* ── Пикеры корзины: способ оплаты / способ получения ────────────────────────
   Одна строка сводки = заголовок слева, значение справа. Значение и его смена
   сведены в ОДИН контроль: кнопка выглядит как <select> (те же паддинги и
   стрелка от .form-select) и показывает выбранный вариант с иконкой, а список
   вариантов — обычное bootstrap-меню под ней. Раньше тут были «значение +
   ссылка Spremeni» и раскрывающаяся плиточная сетка на всю ширину: гость не
   видел, что вообще можно поменять, а сетка уезжала из строки вниз.

   Классы .payment-method / .payment-method-icon / .service-mode-option внутри
   меню сохранены — на них завязаны mark_payments(), applyServicePricing() и
   e2e-тесты; .em-picker-* отвечает только за раскладку. */
.em-picker .em-picker-toggle{
    display: flex;
    align-items: center;
    gap: .5rem;
    text-align: left;
    white-space: normal;
}
.em-picker .em-picker-toggle::after{content: none;}   /* стрелка приходит из .form-select */
.em-picker-placeholder{color: #6c757d; font-weight: 400;}
.em-picker-value{display: inline-flex; align-items: center; gap: .5rem;}

/* ⚠️ ИКОНКА ПИКЕРА — ОДНО ПРАВИЛО НА ОБА СОСТОЯНИЯ: закрытый «селект» и строка
   списка получают ровно одну плашку 2.5rem × 1.25rem. Список не должен «прыгать»
   относительно того, что было на его месте, а два пикера — расходиться между
   собой (у способа получения bi-глиф, у оплаты картинка — размер общий).
   Менять размер здесь, в одном месте.

   Плашка ТЁМНАЯ и от состояния кнопки не зависит: логотипы платёжных систем —
   белые монохромные (footer рисует их на тёмном в рамке, см.
   template_payments.php), и на светлом «селекте» или на выбранном btn-primary
   они пропадали. Цвет фиксированный, а не `--bs-secondary`: темы
   переопределяют переменные, а требование «под белым логотипом темно» — нет.
   По той же причине содержимому принудительно задан белый цвет — bi-глифы
   иначе унаследовали бы цвет текста кнопки. */
.em-picker-value-icon,
.em-picker-menu .em-picker-option-icon{
    flex: 0 0 2.5rem;
    width: 2.5rem;
    height: 1.25rem;
    padding: 0 .15rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #343a40;
    border-radius: .3rem;
    color: #fff;
    font-size: .85rem;
    line-height: 1;
    overflow: hidden;
}
/* ⚠️ HELPERS::show_image() отдаёт <picture><source…><img></picture>, а не голый
   <img>. Проценты на картинке считать НЕ ОТ ЧЕГО: <picture> — инлайновый бокс
   без собственной высоты, `height:100%` схлопывался в auto, и логотип вылезал
   из плашки во весь натуральный размер (в закрытом «селекте» этого не было
   видно только потому, что там высота была задана абсолютно). Поэтому размер
   тут в rem, а <picture> распускаем через display:contents, чтобы он не ломал
   центрирование во flex-плашке. */
.em-picker-value-icon picture,
.em-picker-menu .em-picker-option-icon picture{display: contents;}
.em-picker-value-icon img,
.em-picker-menu .em-picker-option-icon img{
    width: auto;
    max-width: 100%;
    height: 1rem;
    object-fit: contain;
}
/* Метод без картинки: в закрытом «селекте» плашки нет вовсе, в списке колонка
   остаётся (держит выравнивание подписей), но пустым тёмным прямоугольником не
   светит. */
.em-picker-value-icon:empty{display: none;}
.em-picker-menu .em-picker-option-icon:empty{background-color: transparent;}

.em-picker-menu{
    width: 100%;
    min-width: 15rem;
    max-height: 60vh;
    overflow-y: auto;
    padding: .25rem;
}
.em-picker-menu > * + *{margin-top: .15rem;}
/* Строка списка повторяет метрику закрытого «селекта» (.form-select-sm): те же
   паддинги, кегль и высота строки.
   Селектор из двух классов намеренно: вариант несёт .btn (подсветку выбранного
   даёт btn-primary/btn-secondary swap в mark_payments/applyServiceMode), а
   .btn — это display:inline-block из bootstrap той же специфичности. */
.em-picker-menu .em-picker-option{
    display: flex;
    align-items: center;
    gap: .5rem;
    padding: .25rem .5rem;
    font-size: .875rem;
    line-height: 1.5;
    text-align: left;
    white-space: normal;
}
/* Заливка — ТОЛЬКО у выбранного варианта. Свап оставляет невыбранным
   btn-secondary, поэтому гасим именно его: список из одинаково залитых плиток
   не давал увидеть выбор, ради которого он и открыт. */
.em-picker-menu .em-picker-option.btn-secondary{
    background-color: transparent;
    border-color: transparent;
    color: inherit;
}
.em-picker-menu .em-picker-option.btn-secondary:hover,
.em-picker-menu .em-picker-option.btn-secondary:focus{
    background-color: rgba(0, 0, 0, .06);
    border-color: transparent;
    color: inherit;
}
.em-picker-option-label{flex: 1 1 auto;}
.em-picker-option .em-mode-money{margin-left: .35rem;}

/* Отправленный (оплаченный) заказ: контрол становится read-only, но ЗНАЧЕНИЕ
   остаётся на экране. Прежние ссылки «Spremeni» просто прятались по
   .hide-if-sent — теперь прятать нечего, менять нельзя, а что выбрано, гость
   по-прежнему должен видеть. */
/* Тот же вырез под правку сотрудником, что и у .hide-if-sent выше: время
   выдачи/доставки — это «дата» заказа, и в режиме правки селекты снова
   кликабельны. */
body.order-status-10:not(.is-edit-order) .em-lock-sent,
body.order-status-20:not(.is-edit-order) .em-lock-sent,
body.order-status-30:not(.is-edit-order) .em-lock-sent,
body.order-status-40 .em-lock-sent,
body.order-status-40 .em-lock-payed{
    pointer-events: none;
    background-image: none;
    background-color: transparent;
    border-color: transparent;
    box-shadow: none;
    padding-left: 0;
    padding-right: 0;
    color: inherit;
}

/* PAY ORDER
   Кнопка «оплатить онлайн» — только для методов, которые реально уходят на
   Mollie. Оплата на кассе (cash / card) и списание с баланса гостя платёжной
   страницы не имеют, кнопка там вводила в заблуждение.
   Коды берутся из CODE элементов iblock 18 и приезжают в body как
   `payment-<CODE>` (mark_payments()) — они В НИЖНЕМ РЕГИСТРЕ. Прежний
   `:not(.payment-CASH)` не срабатывал никогда: селекторы классов
   регистрозависимы, а код метода — `cash`. */
.pay-order-buttons{display: none;}
body.has-order-id.has-to-pay:not(.payment-cash):not(.payment-card):not(.payment-balance) .pay-order-buttons
{display: block; margin-top: .5rem;}

/* PAYED */
.has-payed-sum-only{display: none;}
body.has-payed-sum .has-payed-sum-only,
body.has-payed-points .has-payed-sum-only
{display: block;}

.payed_sum{display: none;}
body.has-payed-sum .payed_sum{display: inline;}

.payed_points{display: none;}
body.has-payed-points .payed_points{display: inline;}

.payed_plus{display: none;}
body.has-payed-sum.has-payed-points .payed_points{display: inline;}

/* MENU */

/* .navbar-toggler-icon{
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2833, 37, 41, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
} */

ol.feature, ul.feature {
  padding-left: 0;
  list-style: none;
  position: relative;
  z-index: 1;
}

ol.feature li, ul.feature li {
  padding: 15px 20px;
  margin-bottom: 15px;
  border-radius: 12px;
  position: relative;
  font-size: 1.1rem;
  line-height: 1.6;
  transition: all 0.3s ease;
  border-left: 3px solid transparent;
  display: flex;
  align-items: center;
  gap: 15px;
}

ol.feature {
  counter-reset: item;
}

ol.feature li .list-number {
  counter-increment: item;
  min-width: 35px;
  width: 35px;
  height: 35px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 0.95rem;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
  flex-shrink: 0;
}

ol.feature li .list-number::before {
  content: counter(item);
}

ul.feature li .list-icon {
  min-width: 35px;
  width: 35px;
  height: 35px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 1.2rem;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
  flex-shrink: 0;
}

ul.feature li .list-content,
ol.feature li .list-content
 {
  flex: 1;
}


@media (min-width: 1200px) {
    .nav-item.border-top{
        border-top: none !important;
    }
}


/* Staff bottom panel */
.staff-bottom-panel {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1050;
    visibility: hidden;
    opacity: 0;
    transition: visibility 0.3s, opacity 0.3s;
}
.staff-bottom-panel.active {
    visibility: visible;
    opacity: 1;
}
.staff-bottom-panel .staff-panel-overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
}
.staff-bottom-panel .staff-panel-content {
    position: relative;
    background: #fff;
    border-radius: 1rem 1rem 0 0;
    padding: 1rem;
    box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.15);
    transform: translateY(100%);
    transition: transform 0.3s ease-out;
}
.staff-bottom-panel.active .staff-panel-content {
    transform: translateY(0);
}

.order-toggle-btn{width: 70px;}
.order-row td {
    vertical-align: middle;
}

/* FONT SIZE */
body.font-small,
body.font-small .item-name, 
body.font-small h6,
body.font-small .accordion-button,
.font-size-small {
    font-size: 0.875rem;
}

body.font-medium,
.font-size-medium {
    font-size: 1rem;
}

body.font-large,
body.font-large .item-name,
body.font-large h6,
body.font-large .accordion-button,
.font-size-large {
    font-size: 1.125rem;
}

.calendar-grid { width: 100%; }
.calendar-row { display: flex; }
.calendar-cell { 
    flex: 1; 
    text-align: center; 
    padding: 8px 4px; 
    border: 1px solid #eee;
    cursor: default;
}
.calendar-cell.day { color: #bbb; cursor: not-allowed; }
.calendar-cell.day.bg-primary { color: #fff; cursor: pointer; }
.calendar-cell.day.has-bookings { opacity: 0.6; }
.calendar-cell.day.fully-booked { background-color: #adb5bd; color: #fff; cursor: pointer; }
.calendar-cell.day.selected { outline: 2px solid #0d6efd; outline-offset: -2px; }
.calendar-cell.empty { background: #f9f9f9; }
.calendar-header .calendar-cell { background: #f5f5f5; font-weight: 500; }

body.show-basket #last-active-order-block{
    display: none !important;
}
#cafe-photos-carousel .cafe-carousel-img { max-height: 300px; }
@media (min-width: 768px) {
    #cafe-photos-carousel .cafe-carousel-img { max-height: 540px; }
}
@media (min-width: 1200px) {
    #cafe-photos-carousel .cafe-carousel-img { max-height: 720px; }
}
@media (min-width: 1600px) {
    #cafe-photos-carousel .cafe-carousel-img { max-height: 900px; }
}

/* Hidden point (coffee bean) */
.hidden-point-bean {
    position: absolute;
    z-index: 3;
    font-size: 1.4rem;
    color: #f0ad4e;
    cursor: pointer;
    filter: drop-shadow(0 0 4px rgba(240, 173, 78, 0.7));
    animation: beanPulse 2s ease-in-out infinite;
    top: 4px;
    right: 4px;
}
.hidden-point-bean:hover {
    transform: scale(1.3);
    filter: drop-shadow(0 0 8px rgba(240, 173, 78, 1));
}
.hidden-point-collected {
    animation: beanCollect 0.6s ease-out forwards !important;
}
@keyframes beanPulse {
    0%, 100% { opacity: 0.7; transform: scale(1); }
    50% { opacity: 1; transform: scale(1.15); }
}
@keyframes beanCollect {
    0% { opacity: 1; transform: scale(1); }
    50% { opacity: 1; transform: scale(1.8); }
    100% { opacity: 0; transform: scale(0.5) translateY(-30px); }
}

/* ===================== */
/* AI ASSISTANT          */
/* ===================== */

/* Page toggle — same pattern as chat/reviews etc. */
#assistant-div { display: none; }
body.show-assistant #assistant-div { display: block; }
body.show-assistant #menu-main { display: none; }
body.show-assistant #header-block { display: none; }

/* FAB buttons group */
.floating-buttons {
    position: fixed;
    right: 12px;
    bottom: 10px;
    z-index: 5;
    display: flex;
    flex-direction: column;
    gap: 8px;
    align-items: center;
    transition: bottom 0.3s ease;
}
.floating-btn {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: 2px solid #fff;
    box-shadow: 0 2px 8px rgba(0,0,0,.2);
    font-size: 1.15rem;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    text-decoration: none;
    transition: transform .2s, box-shadow .2s;
}
.floating-btn:hover {
    transform: scale(1.1);
    box-shadow: 0 3px 12px rgba(0,0,0,.3);
    color: #fff;
}
body.has-items .floating-buttons { bottom: 86px; }
/* While the upsell list is open (it's higher and of variable height — option cards),
   we hide the "to top" button so it doesn't overlap it. The upsell
   closes on scroll anyway, so the button isn't needed there. */
body.show-upsale .floating-buttons { display: none; }
body.show-assistant .floating-buttons { display: none; }

/* Notification badges on floating buttons */
.floating-notify-btn {
    position: relative;
}
.fab-badge {
    position: absolute;
    top: -4px;
    right: -4px;
    min-width: 18px;
    height: 18px;
    border-radius: 9px;
    background: #dc3545;
    color: #fff;
    font-size: 0.65rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 4px;
    line-height: 1;
    border: 2px solid #fff;
    box-shadow: 0 1px 3px rgba(0,0,0,.2);
}
.floating-notify-btn.bg-danger .fab-badge {
    background: #fff;
    color: #dc3545;
}
body.show-events .floating-buttons,
body.show-promo .floating-buttons { display: none; }

/* Container */
.assistant-container {
    max-width: 720px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    height: calc(100vh - 160px);
    min-height: 300px;
}

/* Header */
.assistant-header {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 0;
    border-bottom: 1px solid #dee2e6;
}
.assistant-header i {
    font-size: 1.5rem;
}
.assistant-header h5 {
    margin: 0;
    font-size: 1.1rem;
}
.assistant-header .btn-close {
    margin-left: auto;
}

/* Messages area */
#assistant-messages {
    flex: 1;
    overflow-y: auto;
    padding: 12px 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

/* Message row */
.assistant-msg {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    max-width: 90%;
}
.assistant-msg-user {
    align-self: flex-end;
    flex-direction: row-reverse;
}
.assistant-msg-bot {
    align-self: flex-start;
}

/* Avatar */
.assistant-msg-avatar {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    font-size: .85rem;
}
.assistant-msg-user .assistant-msg-avatar {
    background: #e9ecef;
    color: #495057;
}

/* Bubble */
.assistant-msg-bubble {
    padding: 8px 12px;
    border-radius: 12px;
    font-size: .9rem;
    line-height: 1.45;
    word-break: break-word;
}
.assistant-msg-bot .assistant-msg-bubble {
    background: #f0f2f5;
    color: #212529;
    border-bottom-left-radius: 4px;
}
.assistant-msg-user .assistant-msg-bubble {
    border-bottom-right-radius: 4px;
}

/* Typing indicator */
.typing-dots span {
    animation: typingBounce .6s infinite;
    display: inline-block;
    font-size: 1.2rem;
    line-height: 1;
}
.typing-dots span:nth-child(2) { animation-delay: .15s; }
.typing-dots span:nth-child(3) { animation-delay: .3s; }
@keyframes typingBounce {
    0%, 60%, 100% { transform: translateY(0); }
    30% { transform: translateY(-4px); }
}

/* Quick replies */
.assistant-quick-replies {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    padding: 8px 0;
}
.assistant-quick-btn {
    padding: 5px 12px;
    border-radius: 16px;
    font-size: .82rem;
    cursor: pointer;
    transition: background .2s, color .2s;
    white-space: nowrap;
}

/* Input area */
.assistant-input-area {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 10px 0;
    border-top: 1px solid var(--bs-border-color, #dee2e6);
}
.assistant-input-area .form-control {
    border-radius: 20px;
    font-size: .9rem;
    padding: 8px 14px;
}
.assistant-input-area .btn {
    border-radius: 50%;
    width: 38px;
    height: 38px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    flex-shrink: 0;
}

/* Voice recording state */
#assistant-voice-btn.recording {
    background: #dc3545 !important;
    border-color: #dc3545 !important;
    animation: voicePulse 1s infinite;
}
@keyframes voicePulse {
    0%, 100% { box-shadow: 0 0 0 0 rgba(220,53,69,.5); }
    50% { box-shadow: 0 0 0 10px rgba(220,53,69,0); }
}

/* Toast — top-right, slides in from off-screen right and settles at the right
   edge (right-to-left motion). The +/− employee feedback flow pumps a toast on
   every tap, so the JS removes any in-flight toast before appending a new one
   (single-toast policy). */
.assistant-toast {
    position: fixed;
    top: 1rem;
    right: 1rem;
    transform: translateX(calc(100% + 2rem));
    background: #333;
    color: #fff;
    padding: 10px 18px;
    border-radius: 8px;
    font-size: .9rem;
    z-index: 9999;
    opacity: 0;
    transition: transform .3s ease-out, opacity .3s ease-out;
    pointer-events: none;
    max-width: 90vw;
    box-shadow: 0 4px 12px rgba(0,0,0,.15);
}
.assistant-toast.show {
    opacity: 1;
    transform: translateX(0);
}
.assistant-toast-success { background: #198754; }
.assistant-toast-danger  { background: #dc3545; }

/* Global Bootstrap-toast container for showToast() (script.js). */
.toast-container {
    position: fixed;
    top: 1rem;
    right: 1rem;
    z-index: 1100;
}

/* Responsive — mobile fullscreen-like */
@media (max-width: 576px) {
    .assistant-container {
        height: calc(100vh - 130px);
    }
    .assistant-msg {
        max-width: 95%;
    }
}


.detail-text{display: none;}
.show-detail .detail-text{display: block;}

.has-detail-text{margin-bottom: 3rem;}
.show-detail .has-detail-text{margin-bottom: 0;}

body div.empty{width: auto; height: auto;}

body.is-employee .hide-is-employee{display: none;}
body:not(.is-employee) .show-is-employee{display: none;}
/* Shown only to staff with control-panel rights (body.can-panel). Gates the
   hamburger's Nadzorna-plošča link + its divider in one signal (can-panel is a
   subset of is-employee, so guests never see them). */
body:not(.can-panel) .show-if-panel{display: none;}

/* Staff-only nav fold («Več …», header.php). A logged-in employee carries the
   staff tools + panel link in the same menu, so the three guest-facing extras
   (Pomočnik / FAQ / Knjiga pritožb) stay behind the toggle until it is clicked —
   the whole staff list has to fit a small phone. Guests match neither rule and
   see the items inline, exactly as before.
   Unfolding REMOVES the rule (:not(.em-nav-more-open)) rather than forcing a
   display value — otherwise it would resurrect an item whose cafe switched the
   feature off, since those are hidden by their own inline display:none.
   !important because the nav-reveal path uses jQuery .show(), which can write an
   inline display of its own. */
body.is-employee .navbar-nav:not(.em-nav-more-open) .em-nav-fold{display: none !important;}
.navbar-nav.em-nav-more-open .em-nav-fold-toggle{display: none;}

/* Panel dropdown separator that ended up opening its group (PANEL_NAV
   `divider_before` — the separator folds under «Več …» together with the row it
   belongs to, so the rows above it can all disappear). A rule with nothing above
   it reads as a stray line, and right below the «Več …» hr it reads as a double
   one. Hidden rather than dropped: renderPanelNavItems / emPanelNavMarkLeadSeps
   only toggle the class, so it returns when the neighbours are switched back on. */
.dropdown-menu .em-nav-sep.em-nav-sep-lead{display: none;}

body .table-hover tbody tr:hover {
    background-color: transparent;
}
body .table-hover>tbody>tr:hover{
    color:inherit;
    --bs-table-accent-bg:transparent;
}


/* Якорь карты на «О нас» (#about-map) — цель ссылки-адреса из футера.
   Без отступа блок приезжает вплотную к верху и наполовину прячется под
   липкой шапкой; scroll-margin сдвигает точку остановки, ничего не двигая
   в самой раскладке. */
#about-map{scroll-margin-top: 80px;}

/* Раскрывашка «Rezervacije za druge dni» под доской заказов. Тот же стиль, что
   у одноимённого элемента в панели (panel/css/panel.css) — кнопка-ссылка плюс
   шеврон, который поворачивается на 90° (►→▼) в раскрытом виде. Правило
   продублировано, а не вынесено: panel.css на публичку не подключается. */
.em-collapse-caret {
    display: inline-block; /* без этого transform не применяется к inline <i> внутри .btn */
    transition: transform .15s ease;
    font-size: .85em;
}
.em-collapse-toggle[aria-expanded="true"] .em-collapse-caret {
    transform: rotate(90deg);
}

/* Заголовок дня в списке броней: дата слева, счётчики брони/гостей справа. */
.em-reservation-day {
    gap: .5rem;
}

/* Контакты в футере (телефон + адрес) над иконками оплаты. Ссылки идут в
   строку и переносятся на узком экране; на тач-устройствах разводим их
   вертикально, чтобы две соседние цели не слипались в один тап. */
#footer-contacts a{max-width: 100%;}
@media (max-width: 400px){
    #footer-contacts a{display: block !important;}
}


/* ДЕТАЛЬНАЯ КАРТОЧКА: скроллится верх, цены закреплены внизу.
   Сам оверлей (.item-div-detail) показывается через jQuery .toggle(), который
   ставит ему display:block — поэтому раскладка живёт на внутренней обёртке,
   иначе flex стирался бы при каждом открытии. Высота через dvh: на телефоне
   адресная строка ест часть 100vh, и нижняя панель уезжала бы за край. */
.item-div-detail.em-detail {
    overflow: hidden;   /* скроллит теперь .em-detail-scroll, не весь оверлей */
    /* Сам оверлей закрывает экран целиком и потому несёт цвет СТРАНИЦЫ: то, что
       гость видит по бокам от карточки на широком экране. Класса .bg-body здесь
       нет намеренно — тема gray его не переопределяет, и попап оставался бы
       белым на сером фоне. */
    background: var(--em-bg-page, #fff);
}
/* Обёртка — та самая карточка: колонка по центру цвета внутренней части
   аккордеона меню (--em-bg-card), а не цвета страницы. Ширина = колонке
   содержимого (--em-detail-w приезжает инлайном из DETAIL_PICTURE_WIDTH) плюс
   боковой padding .em-detail-scroll, иначе карточка обрезала бы фотографию,
   свёрстанную ровно под эту ширину. */
.em-detail-wrap {
    display: flex;
    flex-direction: column;
    height: 100%;
    height: 100dvh;
    width: 100%;
    max-width: calc(var(--em-detail-w, 600px) + 2rem);
    margin: 0 auto;
    background: var(--em-bg-card, #fff);
}
.em-detail-scroll {
    flex: 1 1 auto;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    /* Верхний отступ даёт липкая шапка (.em-detail-head): будь он на самой
       области прокрутки, содержимое проезжало бы в этой полосе НАД шапкой. */
    padding: 0 1rem;
}
/* Липкая шапка попапа с крестиком. Отрицательные margin'ы вытягивают фоновую
   полоску на padding области прокрутки — иначе содержимое просвечивало бы по
   краям, проезжая под шапкой. */
.em-detail-head {
    position: sticky;
    top: 0;
    z-index: 3;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    margin: 0 -1rem .5rem;
    padding: .75rem 1rem .5rem;
    background: var(--em-bg-card, #fff);
}
/* Панель цен. max-height — чтобы карточка с пятью строками не съела экран:
   после предела панель скроллится сама. Тень отделяет её от текста, который
   уходит под неё при прокрутке. */
.em-detail-foot {
    flex: 0 0 auto;
    max-height: 40dvh;
    overflow-y: auto;
    padding: .75rem 1rem calc(.75rem + env(safe-area-inset-bottom, 0px));
    border-top: 1px solid var(--bs-border-color, #dee2e6);
    background: var(--em-bg-card, #fff);
    box-shadow: 0 -8px 24px -14px rgba(0, 0, 0, .35);
}
.em-detail-foot-title {
    margin-bottom: .5rem;
}
/* Последняя строка цен несёт mb-3 от разметки — в закреплённой панели это
   лишний воздух под кнопками. */
.em-detail-foot .quantity-row:last-child {
    margin-bottom: 0 !important;
}

/* ВКЛАДКИ ВАРИАНТОВ (0,33 / 0,5). Ряд под названием товара, ПЕРЕНОСИТСЯ по
   строкам: горизонтальный скролл прячет часть размеров за краем, а невидимый
   чипс никто не выбирает. Пять вариантов лягут в две строки — это дешевле
   потерянного выбора. */
.em-var-chips {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: .5rem;
    margin-bottom: 1rem;
}
.em-var-chip {
    flex: 0 0 auto;
    padding: .35rem .9rem;
    border: 1px solid var(--bs-border-color, #dee2e6);
    border-radius: 999px;
    background: var(--em-bg-card, #fff);
    /* Цвет текста наследуем от темы, а не прибиваем к тёмному: на фонах gray и
       black карточка сама тёмная, и фиксированный #212529 сливался бы с ней. */
    color: inherit;
    font-size: .9rem;
    line-height: 1.3;
    white-space: nowrap;
}
/* Активный чипс красится темой заведения. Цвет берём из --em-primary
   (colors-v2.css), а НЕ из --bs-primary: бутстраповскую переменную тема не
   переопределяет, и чипс остался бы синим рядом с бирюзовыми кнопками. */
.em-var-chip.active {
    border-color: transparent;
    background: var(--em-primary, #12b0ac);
    color: #fff;
    font-weight: 600;
}
.em-var-pane {
    display: none;
}
.em-var-pane.active {
    display: block;
}
/* Внизу — цены ТОЛЬКО открытой вкладки: одна карточка, один размер, никакого
   выбора не того. Строка без data-variant (карточка без вариантов) правилом не
   затрагивается и показывается как раньше.
   Исключение — .em-var-keep: строка чужого варианта, в которой уже есть
   заказанное количество. Спрятать её значило бы отнять у гостя и вид на то,
   что он добавил, и единственный «−», которым это снимается. Приглушена, чтобы
   не путалась с текущим выбором. */
.em-detail-foot .quantity-row[data-variant] {
    display: none;
}
.em-detail-foot .quantity-row[data-variant].em-var-active,
.em-detail-foot .quantity-row[data-variant].em-var-keep {
    display: flex;
}
.em-detail-foot .quantity-row[data-variant].em-var-keep:not(.em-var-active) {
    opacity: .6;
}

/* End */
/* /local/templates/eshop_bootstrap_v4/colors-v2.css?178662782041187 */
/* /bootstrap_v5/css/bootstrap.min.css?1770888407155845 */
/* /local/templates/eshop_bootstrap_v4/css/config-themes.css?1782571792971 */
/* /css/staff.css?178841586714230 */
/* /bootstrap_v5/css/bootstrap-icons.subset.css?178696440115985 */
/* /local/templates/eshop_bootstrap_v4/new-design.css?178845999860315 */
/* /local/templates/eshop_bootstrap_v4/template_styles.css?178845999884291 */
