/* ============================================================
 * edison.css — кастомные стили страниц Edison.
 * Вынесено из inline <style> шаблонов (генерируется вручную при рефакторинге).
 * Грузится ПОСЛЕДНИМ в home.tpl — переопределяет тему.
 * ============================================================ */


/* ==================== shop_order.tpl ==================== */
      /* ===== Оформлення замовлення (кошик) ===== */

      .eco-item, .eco-form-card, .eco-summary { text-align: left; }

      .eco-sec-title {
        font-family: 'Yeseva One', serif;
        font-weight: 400;
        font-size: 26px;
        color: #2f2f3a;
        margin: 0 0 22px;
      }

      /* --- карточка позиции --- */
      .eco-item {
        position: relative;
        background: #fff;
        border: 1px solid #f0e4da;
        border-radius: 18px;
        padding: 18px;
        margin-bottom: 18px;
        transition: box-shadow .25s ease;
      }

      .eco-item:hover { box-shadow: 0 20px 44px -26px rgba(47,47,58,.28); }

      .eco-item-top { display: flex; align-items: flex-start; gap: 16px; }

      .eco-item-ph {
        flex: none;
        width: 96px;
        height: 96px;
        border-radius: 14px;
        overflow: hidden;
        background: #fff8f2;
        display: flex;
        align-items: center;
        justify-content: center;
        color: #eec2aa;
        font-size: 42px;
      }

      .eco-item-ph img { width: 100%; height: 100%; object-fit: cover; display: block; }

      .eco-item-head { flex: 1 1 auto; min-width: 0; }

      .eco-item-title {
        font-family: 'Yeseva One', serif;
        font-weight: 400;
        font-size: 19px;
        line-height: 1.3;
        color: #2f2f3a;
        margin: 4px 0 6px;
      }

      .eco-item-base { font-size: 15px; color: #b9764a; font-weight: 700; }

      /* --- количество --- */
      .eco-item-meta { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 16px; margin-top: 2px; }

      .eco-qty { display: inline-flex; align-items: center; gap: 9px; }

      .eco-qty-btn {
        flex: none;
        width: 30px;
        height: 30px;
        padding: 0;
        border: 1px solid #f0e4da;
        border-radius: 50%;
        background: #fff;
        color: #8a6b52;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
        transition: all .2s ease;
      }

      .eco-qty-btn .mdi { font-size: 15px; line-height: 1; }
      .eco-qty-btn:hover { border-color: #eec2aa; background: #fff8f2; color: #b9764a; }
      .eco-qty-btn.is-disabled { opacity: .4; cursor: not-allowed; pointer-events: none; background: #fff; border-color: #f0e4da; color: #c9bcae; }

      .eco-qty-n { min-width: 20px; text-align: center; font-size: 15px; font-weight: 700; color: #2f2f3a; }

      /* корзину — в абсолют, чтобы шапка и строки декора тянулись до правого края */
      .eco-item-x {
        position: absolute;
        top: 12px;
        right: 12px;
        z-index: 2;
        background: none;
        border: 0;
        cursor: pointer;
        color: #c9b8a9;
        font-size: 21px;
        line-height: 1;
        padding: 7px;
        border-radius: 10px;
        transition: all .2s ease;
      }
      /* заголовок не заезжает под кнопку удаления */
      .eco-item-title { padding-right: 40px; }

      .eco-item-x:hover { color: #c0564a; background: #fff8f2; }

      /* --- декор --- */
      .eco-decor-btn {
        display: inline-flex; align-items: center; gap: 6px; margin-top: 12px; padding: 7px 16px;
        border-radius: 18px; border: 1px dashed #eec2aa; background: #fff8f2; color: #8a6b52;
        font-size: 13px; cursor: pointer; transition: background .2s ease, color .2s ease;
      }
      .eco-decor-btn:hover, .eco-decor-btn.on { background: #eec2aa; color: #2f2f3a; }
      .eco-decor-btn .mdi { font-size: 15px; line-height: 1; }
      /* slideToggle: анимация высоты через grid 0fr→1fr (клип-обёртка + телo) */
      .eco-item-decor { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .3s ease; }
      .eco-item-decor.is-open { grid-template-rows: 1fr; }
      .eco-item-decor-clip { overflow: hidden; min-height: 0; }
      .eco-item-decor-body { margin-top: 12px; border-top: 1px dashed #f0e4da; padding-top: 12px; }
      @media (prefers-reduced-motion: reduce) { .eco-item-decor { transition: none; } }

      .eco-decor-title {
        font-size: 12px;
        font-weight: 700;
        letter-spacing: .12em;
        text-transform: uppercase;
        color: #8a6b52;
        margin-bottom: 10px;
      }

      .eco-opt {
        display: flex;
        align-items: flex-start;
        gap: 10px;
        padding: 10px 14px;
        border: 1px solid #f0e4da;
        border-radius: 12px;
        margin-bottom: 8px;
        cursor: pointer;
        font-size: 13.5px;
        line-height: 1.45;
        color: #63636f;
        transition: all .2s ease;
      }

      .eco-opt:hover { border-color: #eec2aa; background: #fff8f2; }
      .eco-opt.on { border-color: #b9764a; background: #fff8f2; color: #2f2f3a; }

      .eco-opt input {
        flex: none;
        width: 16px;
        height: 16px;
        margin: 2px 0 0;
        accent-color: #b9764a;
        cursor: pointer;
      }

      .eco-opt-txt { flex: 1 1 auto; min-width: 0; }
      .eco-opt-price { flex: none; margin-left: auto; color: #b9764a; font-weight: 700; white-space: nowrap; }

      .eco-choco { display: none; margin: 4px 0 8px; }
      .eco-choco.on { display: block; }

      .eco-choco-in {
        display: block;
        width: 100%;
        border: 1px solid #f0e4da;
        border-radius: 12px;
        background: #fff8f2;
        padding: 11px 14px;
        font-size: 13.5px;
        color: #2f2f3a;
        outline: 0;
        transition: border-color .2s ease;
      }

      .eco-choco-in:focus { border-color: #b9764a; }
      .eco-choco-in.eco-field-err { border-color: #c0564a !important; background: #fdf1ef; }

      /* строка: кнопка «Добавить декор» слева + итоговая цена позиции справа */
      .eco-decor-row { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 10px 14px; margin-top: 12px; }
      .eco-decor-row .eco-decor-btn { margin-top: 0; margin-right: auto; }
      .eco-item-sum-val { font-family: 'Yeseva One', serif; font-weight: 400; font-size: 19px; color: #2f2f3a; white-space: nowrap; }

      /* --- итог заказа --- */
      .eco-summary {
        background: #fff8f2;
        border: 1px solid #f0e4da;
        border-radius: 18px;
        padding: 20px 22px;
      }

      .eco-sum-row {
        display: flex;
        justify-content: space-between;
        align-items: baseline;
        font-size: 14.5px;
        color: #63636f;
        padding: 5px 0;
      }

      .eco-sum-total {
        display: flex;
        justify-content: space-between;
        align-items: baseline;
        border-top: 1px solid #f0e4da;
        margin-top: 10px;
        padding-top: 14px;
        font-family: 'Yeseva One', serif;
        font-size: 20px;
        color: #2f2f3a;
      }

      .eco-sum-total b { font-weight: 400; font-size: 26px; color: #b9764a; }

      .eco-sum-note { margin: 12px 0 0; font-size: 12.5px; line-height: 1.55; color: #8a8a95; }

      /* --- форма клиента --- */
      .eco-form-card {
        background: #fff;
        border: 1px solid #f0e4da;
        border-radius: 18px;
        padding: 26px 26px 30px;
      }

      /* На странице оформления снимаем overflow:hidden у .page —
         иначе position:sticky у «Ваших данных» не работает (шаблон грузится только здесь) */
      .page { overflow: visible !important; }

      @media (min-width: 992px) {
        .eco-form-card { position: sticky; top: 90px; align-self: flex-start; }
      }

      .eco-delivery { margin-top: 22px; }

      .eco-delivery-title {
        font-size: 12px;
        font-weight: 700;
        letter-spacing: .12em;
        text-transform: uppercase;
        color: #8a6b52;
        margin-bottom: 10px;
      }

      .eco-radio {
        display: flex;
        align-items: flex-start;
        gap: 10px;
        padding: 11px 14px;
        border: 1px solid #f0e4da;
        border-radius: 12px;
        margin-bottom: 8px;
        cursor: pointer;
        font-size: 13.5px;
        line-height: 1.45;
        color: #63636f;
        transition: all .2s ease;
      }

      .eco-radio:hover { border-color: #eec2aa; background: #fff8f2; }
      .eco-radio.on { border-color: #b9764a; background: #fff8f2; color: #2f2f3a; }

      .eco-radio input {
        flex: none;
        width: 16px;
        height: 16px;
        margin: 2px 0 0;
        accent-color: #b9764a;
        cursor: pointer;
      }

      .eco-fee { color: #b9764a; white-space: nowrap; }

      /* --- авторизация --- */
      .eco-auth {
        display: flex;
        align-items: flex-start;
        gap: 12px;
        border-radius: 14px;
        padding: 14px 16px;
        margin-bottom: 18px;
        font-size: 13.5px;
        line-height: 1.5;
      }

      .eco-auth > .mdi { flex: none; font-size: 22px; line-height: 1.2; }

      .eco-auth-ok { background: #f4f9ef; border: 1px solid #dcead0; color: #4f6b3a; align-items: center; }
      .eco-auth-ok > .mdi { color: #6f9552; }
      /* текст «Вы вошли как …» крупнее, по высоте как иконка */
      .eco-auth-ok .eco-auth-txt { font-size: 16.5px; }
      /* карандаш «редактировать» справа */
      .eco-auth-edit { margin-left: auto; flex: none; background: none; border: 0; cursor: pointer;
        color: #6f9552; padding: 4px 6px; border-radius: 9px; line-height: 1;
        transition: background .2s ease, color .2s ease; }
      .eco-auth-edit .mdi { font-size: 19px; line-height: 1; }
      .eco-auth-edit:hover, .eco-auth-edit.on { background: #e4efd8; color: #3f5730; }
      /* когда авторизованы — прячем имя/фамилию/телефон (карандаш возвращает) */
      /* видимостью полей имя/фамилия/телефон управляет jQuery slideToggle (в renderAuth) */

      .eco-auth-warn { background: #fff8f2; border: 1px solid #eec2aa; color: #8a6b52; flex-direction: column; }
      .eco-auth-warn > .mdi { font-size: 24px; color: #b9764a; }

      .eco-auth-btns { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 4px; }

      .eco-auth-btns a {
        display: inline-block;
        padding: 9px 18px;
        border-radius: 12px;
        font-size: 12.5px;
        font-weight: 700;
        letter-spacing: .06em;
        text-decoration: none;
        transition: all .25s ease;
      }

      .eco-auth-login { background: #b9764a; color: #fff; }
      .eco-auth-login:hover { background: #a2643d; color: #fff; }
      .eco-auth-reg { background: #fff; border: 1px solid #eec2aa; color: #8a6b52; }
      .eco-auth-reg:hover { border-color: #b9764a; color: #b9764a; }

      /* --- сообщения / кнопка --- */
      .eco-msg {
        display: none;
        background: #fdf1ef;
        border: 1px solid #efc4bd;
        color: #a3423a;
        border-radius: 12px;
        padding: 12px 16px;
        margin: 18px 0 0;
        font-size: 13.5px;
        line-height: 1.5;
      }

      .eco-auth-hint {
        display: flex;
        align-items: center;
        gap: 11px;
        background: #fff8f2;
        border: 1px dashed #eec2aa;
        border-radius: 12px;
        padding: 11px 14px;
        font-size: 13px;
        color: #63636f;
        margin-bottom: 16px;
      }
      .eco-auth-hint .mdi { font-size: 20px; color: #b9764a; flex: none; }
      .eco-auth-hint > div { flex: 1 1 auto; }
      .eco-auth-hint .eco-auth-login {
        flex: none;
        display: inline-flex;
        align-items: center;
        gap: 6px;
        background: #b9764a;
        color: #fff;
        font-weight: 700;
        font-size: 12.5px;
        letter-spacing: .02em;
        padding: 9px 20px;
        border-radius: 10px;
        text-decoration: none;
        white-space: nowrap;
        box-shadow: 0 6px 16px -8px rgba(185, 118, 74, .8);
        transition: background .2s ease, transform .15s ease, box-shadow .2s ease;
      }
      .eco-auth-hint .eco-auth-login .mdi { font-size: 15px; color: #fff; margin: 0; }
      .eco-auth-hint .eco-auth-login:hover { background: #a2643d; color: #fff; text-decoration: none; transform: translateY(-1px); box-shadow: 0 10px 22px -8px rgba(185, 118, 74, .85); }
      .eco-submit-row { margin-top: 22px; display: flex; justify-content: flex-end; }
      .eco-submit { width: auto; min-width: 240px; flex: 0 0 auto; margin-top: 0; }
      .eco-submit.eco-sending { opacity: .55; pointer-events: none; }
      .eco-submit:disabled { opacity: .5; cursor: not-allowed; box-shadow: none; }
      @media (max-width: 575px) { .eco-submit { flex: 1 1 auto; width: 100%; min-width: 0; } }
      .eco-field-err { border-bottom-color: #c0564a !important; }

      /* иконки слева в полях: серые, при фокусе плавно темнеют, по высоте с текстом */
      #ecoDataForm .eco-ficon {
        position: absolute; left: 0; top: 30px; transform: translateY(-50%);
        font-size: 18px; line-height: 1; color: #c4b6a7; pointer-events: none; z-index: 2;
        transition: color .25s ease;
      }
      #ecoDataForm .form-wrap:focus-within .eco-ficon { color: #2f2f3a; }
      /* Select2 уводит фокус в скрытое поле — ловим его активное состояние через :has (отдельным правилом, чтобы не влиять на поля выше) */
      #ecoDataForm .form-wrap:has(.select2-container-active) .eco-ficon,
      #ecoDataForm .form-wrap:has(.select2-dropdown-open) .eco-ficon { color: #2f2f3a; }
      #ecoDataForm .form-input,
      #ecoDataForm .form-label { padding-left: 28px; }
      /* --- Select2 «Удобное время»: приводим к виду underline-инпута (как поле даты рядом) --- */
      #ecoDataForm .eco-timecol .select2-container {
        display: block; width: 100%; position: relative; min-height: 60px;
        border-bottom: 1px solid #e1e1e1;           /* подчёркивание живёт на контейнере — не дёргается при открытии */
        transition: border-color .25s ease;
      }
      /* подчёркивание коричневое ТОЛЬКО пока список открыт — после выбора сразу возвращается серое
         (раньше держался фокус-цвет, пока не кликнешь вне поля) */
      #ecoDataForm .eco-timecol .select2-dropdown-open { border-bottom-color: #b9764a; }
      /* choice заполняет контейнер и центрирует текст по вертикали (как текст в поле даты) */
      #ecoDataForm .select2-choice {
        position: absolute; inset: 0;
        display: flex !important; align-items: center;
        background: transparent !important;
        padding: 0 30px 0 28px !important;
        border: 0 !important; box-shadow: none !important;
      }
      #ecoDataForm .select2-choice > .select2-chosen { line-height: 1.3; font-size: 15px; color: #151515; letter-spacing: .1em; }
      /* у самого choice бордюра нет (подчёркивание — на контейнере); гасим фокус-тень choice */
      #ecoDataForm .select2-dropdown-open .select2-choice,
      #ecoDataForm .select2-choice:focus { border: 0 !important; box-shadow: none !important; }
      #ecoDataForm .select2-arrow { right: 2px; }
      #ecoDataForm .select2-arrow b:before { color: #63636f; font-size: 20px; }
      #ecoDataForm .eco-ficon-select { top: 30px; }        /* иконка часов — на линии текста, как у остальных */

      /* Автоподсказка улиц Харькова для поля адреса */
      #ecoDataForm .eco-addr-wrap { position: relative; }
      .eco-addr-ac {
        position: absolute; left: 0; right: 0; top: 100%; z-index: 60; margin-top: 6px;
        background: #fff; border: 1px solid #f0e4da; border-radius: 13px;
        box-shadow: 0 18px 40px -14px rgba(122,78,42,.4); overflow: hidden;
        max-height: 264px; overflow-y: auto; display: none;
      }
      .eco-addr-ac.on { display: block; }
      .eco-addr-item {
        display: flex; align-items: center; gap: 10px; padding: 11px 15px;
        font-size: 14px; line-height: 1.3; color: #2f2f3a; cursor: pointer;
        border-bottom: 1px solid #f6efe8;
      }
      .eco-addr-item:last-child { border-bottom: 0; }
      .eco-addr-item .mdi { flex: none; font-size: 16px; color: #c4b6a7; }
      .eco-addr-item:hover, .eco-addr-item.active { background: #fff8f2; }
      .eco-addr-item b { color: #b9764a; font-weight: 600; }
      .eco-addr-hint { padding: 9px 15px; font-size: 12px; color: #a79a8d; background: #fdfaf6; border-top: 1px solid #f6efe8; }

      /* Дропдаун (единственный <select> на сайте — глобальные стили безопасны): мягкая брендовая рамка вместо жёсткой тёмной */
      .select2-drop, .select2-drop.select2-drop-active,
      .select2-drop.select2-drop-above, .select2-drop.select2-drop-above.select2-drop-active {
        border: 1px solid #f0e4da !important;
        border-radius: 14px !important;
        box-shadow: 0 18px 44px -14px rgba(47,47,58,.3) !important;
        overflow: hidden;
      }
      .select2-drop { margin-top: 8px; }
      .select2-drop.select2-drop-above { margin-top: 0; margin-bottom: 8px; }
      /* высота открытого списка ограничена — дальше скролл; компактный дропдаун ещё и лучше
         позиционируется на мобилках (Select2 сам выбирает сторону above/below под доступное место) */
      .select2-results { padding: 6px !important; max-height: 250px !important; overscroll-behavior: contain; -webkit-overflow-scrolling: touch; }
      .select2-results .select2-result-label { padding: 11px 14px !important; border-radius: 10px; font-size: 14px; color: #2f2f3a; transition: background .15s ease, color .15s ease; }
      .select2-results .select2-highlighted { background: #fff8f2 !important; color: #b9764a !important; border-radius: 10px; }
      /* «Удобное время»: полширины рядом с датой; во всю ширину — когда поля свёрнуты (авторизован) */
      /* дата и время всегда рядом (почта — отдельной строкой на всю ширину либо скрыта) */

      /* --- пустая корзина / успех --- */
      .eco-empty, .eco-success { text-align: center; padding: 40px 15px 30px; }

      .eco-empty > .mdi, .eco-success > .mdi { font-size: 64px; line-height: 1; display: block; margin-bottom: 18px; }
      .eco-empty > .mdi { color: #eec2aa; }
      .eco-success > .mdi { color: #7fa562; }

      .eco-empty h3, .eco-success h3 {
        font-family: 'Yeseva One', serif;
        font-weight: 400;
        font-size: 28px;
        color: #2f2f3a;
        margin: 0 0 12px;
      }

      .eco-empty p, .eco-success p {
        max-width: 520px;
        margin: 0 auto 24px;
        font-size: 15px;
        line-height: 1.6;
        color: #63636f;
      }

      .eco-success-num {
        display: inline-block;
        background: #fff8f2;
        border: 1px dashed #eec2aa;
        border-radius: 14px;
        padding: 12px 26px;
        margin-bottom: 12px;
        font-size: 15px;
        color: #8a6b52;
      }

      .eco-success-num b { font-family: 'Yeseva One', serif; font-weight: 400; font-size: 22px; color: #b9764a; }

      @media (max-width: 767px) {
        .eco-sec-title { font-size: 22px; margin-bottom: 16px; }
        .eco-item { padding: 14px; border-radius: 14px; }
        .eco-item-ph { width: 72px; height: 72px; font-size: 32px; }
        .eco-item-title { font-size: 16.5px; }
        .eco-form-card { padding: 20px 18px 24px; }
        .eco-empty h3, .eco-success h3 { font-size: 23px; }
      }

      /* ---------- фирменный datepicker (перекрываем серую тему jQuery UI) ---------- */
      #ui-datepicker-div.ui-datepicker {
        width: 306px;
        padding: 12px;
        margin-top: 8px;
        border: 1px solid #f0e4da;
        border-radius: 18px;
        background: #fff;
        box-shadow: 0 26px 60px -26px rgba(47, 47, 58, .4);
        font-family: "Lato", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
        z-index: 100060 !important;
      }
      #ui-datepicker-div .ui-datepicker-header {
        position: relative;
        background: #fff8f2;
        border: 1px solid #f4e7db;
        border-radius: 12px;
        padding: 6px 0;
        margin-bottom: 10px;
      }
      #ui-datepicker-div .ui-datepicker-title { text-align: center; line-height: 32px; font-weight: 800; font-size: 15px; color: #2f2f3a; }
      #ui-datepicker-div .ui-datepicker-prev,
      #ui-datepicker-div .ui-datepicker-next {
        position: absolute; top: 5px; width: 32px; height: 32px; cursor: pointer;
        border: 1px solid #eec2aa; border-radius: 10px; background: #fff;
        transition: background .18s ease, border-color .18s ease;
      }
      #ui-datepicker-div .ui-datepicker-prev { left: 6px; }
      #ui-datepicker-div .ui-datepicker-next { right: 6px; }
      #ui-datepicker-div .ui-datepicker-prev.ui-datepicker-prev-hover,
      #ui-datepicker-div .ui-datepicker-next.ui-datepicker-next-hover { top: 5px; }
      #ui-datepicker-div .ui-datepicker-prev:hover,
      #ui-datepicker-div .ui-datepicker-next:hover { background: #eec2aa; border-color: #eec2aa; }
      #ui-datepicker-div .ui-datepicker-prev span,
      #ui-datepicker-div .ui-datepicker-next span { display: none; } /* прячем спрайт-стрелку */
      #ui-datepicker-div .ui-datepicker-prev::after,
      #ui-datepicker-div .ui-datepicker-next::after {
        content: ''; position: absolute; top: 50%; left: 50%; width: 8px; height: 8px;
        border: solid #b9764a; border-width: 2px 2px 0 0;
      }
      #ui-datepicker-div .ui-datepicker-prev::after { transform: translate(-25%, -50%) rotate(-135deg); }
      #ui-datepicker-div .ui-datepicker-next::after { transform: translate(-75%, -50%) rotate(45deg); }
      #ui-datepicker-div table { width: 100%; margin: 0; border-collapse: collapse; }
      #ui-datepicker-div th { padding: 6px 0; color: #a79a8d; font-weight: 700; font-size: 10.5px; text-transform: uppercase; letter-spacing: .03em; border: 0; }
      #ui-datepicker-div td { padding: 2px; border: 0; }
      #ui-datepicker-div td a,
      #ui-datepicker-div td span {
        display: block; text-align: center; padding: 8px 0;
        border: 0; border-radius: 10px; background: #fff;
        color: #2f2f3a; font-weight: 600; font-size: 13px; line-height: 1.1; text-decoration: none;
        transition: background .15s ease, color .15s ease;
      }
      #ui-datepicker-div td a.ui-state-hover { background: #fff8f2 !important; color: #b9764a !important; }
      #ui-datepicker-div td.ui-datepicker-today a { box-shadow: inset 0 0 0 2px #eec2aa; }
      #ui-datepicker-div td a.ui-state-active,
      #ui-datepicker-div td.ui-datepicker-current-day a {
        background: #b9764a !important; color: #fff !important; box-shadow: 0 8px 18px -7px rgba(185, 118, 74, .75);
      }
      #ui-datepicker-div td span.ui-state-default,
      #ui-datepicker-div .ui-state-disabled span,
      #ui-datepicker-div .ui-state-disabled a { color: #d3cabf; background: none; opacity: 1; cursor: default; box-shadow: none; }

      


/* ==================== poster_price.tpl ==================== */
        /* ===== Оптовый прайс-лист (epl-*) ===== */
        .epl-banner{display:flex;align-items:center;gap:20px;background:#fff8f2;border:1px solid #f0e4da;border-radius:18px;padding:22px 28px;margin-bottom:40px}
        .epl-banner-ico{font-size:42px;line-height:1;color:#b9764a;flex:0 0 auto}
        .epl-banner-body{min-width:0}
        .epl-banner-title{font-family:'Yeseva One',serif;font-size:22px;line-height:1.25;color:#2f2f3a;margin:0}
        .epl-banner-date{color:#63636f;font-size:14px;margin:3px 0 0;text-align:left}
        .epl-note{display:flex;align-items:flex-start;gap:13px;background:#fbf4ec;border:1px dashed #e6c9b0;border-radius:14px;padding:15px 20px;margin:-16px 0 34px}
        .epl-note-ico{font-size:23px;line-height:1.3;color:#b9764a;flex:0 0 auto}
        .epl-note-body{min-width:0}
        .epl-note-line{margin:0;color:#4a4a55;font-size:15px;line-height:1.5;text-align:left}
        .epl-note-line + .epl-note-line{margin-top:4px}
        .epl-note-line b{color:#2f2f3a;font-weight:600}
        /* быстрый поиск по прайсу — на всю ширину */
        .epl-search{position:relative;width:100%;margin:0 0 34px}
        .epl-search .mdi{position:absolute;left:18px;top:50%;transform:translateY(-50%);font-size:21px;color:#b9764a;pointer-events:none}
        .epl-search input{width:100%;padding:14px 44px 14px 50px;font-size:15px;color:#2f2f3a;background:#fff;
          border:1px solid #f0e4da;border-radius:14px;outline:none;transition:border-color .2s,box-shadow .2s}
        .epl-search input:focus{border-color:#eec2aa;box-shadow:0 0 0 4px rgba(185,118,74,.12)}
        .epl-search input::placeholder{color:#b0a59a}
        .epl-search-clear{position:absolute;right:10px;top:50%;transform:translateY(-50%);width:30px;height:30px;
          border:0;background:none;color:#c9b8a9;font-size:22px;line-height:1;cursor:pointer;border-radius:50%;display:none}
        .epl-search-clear:hover{color:#b9764a;background:#fff8f2}
        .epl-search.has-val .epl-search-clear{display:inline-flex;align-items:center;justify-content:center}
        .epl-item.epl-hidden{display:none}
        /* Управление видимостью позиций прайса (только владелец) */
        .epl-item{position:relative}
        .epl-hidectl{position:absolute;top:0;left:50%;transform:translate(-50%,-52%);z-index:5;display:none;
          align-items:center;gap:6px;padding:5px 12px;font-size:12px;line-height:1;font-weight:600;
          background:#2f2f3a;color:#fff;border:0;border-radius:9px;cursor:pointer;white-space:nowrap;
          box-shadow:0 8px 18px -6px rgba(0,0,0,.55)}
        .epl-hidectl .mdi{font-size:15px}
        .epl-item:hover .epl-hidectl{display:inline-flex}
        .epl-hidectl:hover{background:#b9764a}
        .epl-hidectl:disabled{opacity:.6;cursor:default}
        .epl-owner-hidden{border-style:dashed;border-color:#b9764a;background:#fff8f2}
        .epl-owner-hidden .epl-ph,.epl-owner-hidden .epl-name,.epl-owner-hidden .epl-prices{opacity:.45;transition:opacity .2s}
        .epl-owner-hidden:hover .epl-ph,.epl-owner-hidden:hover .epl-name,.epl-owner-hidden:hover .epl-prices{opacity:.65}
        .epl-empty{display:none;text-align:center;color:#8a8a95;font-size:15px;padding:30px 10px}
        .epl-empty.on{display:block}
        /* Модалка просмотра позиции (как в завтраках) */
        .epl-modal{position:fixed;inset:0;z-index:10060;display:flex;align-items:center;justify-content:center;
          padding:16px;opacity:0;visibility:hidden;transition:opacity .25s,visibility .25s}
        .epl-modal.open{opacity:1;visibility:visible}
        .epl-modal-ovl{position:absolute;inset:0;background:rgba(47,47,58,.72);backdrop-filter:blur(4px)}
        .epl-mcard{position:relative;z-index:1;background:#fff;border-radius:20px;max-width:460px;width:100%;
          overflow:hidden;box-shadow:0 30px 70px -20px rgba(0,0,0,.5);transform:translateY(16px) scale(.97);transition:transform .25s}
        .epl-modal.open .epl-mcard{transform:none}
        .epl-mclose{position:absolute;top:10px;right:10px;z-index:2;width:38px;height:38px;border:0;border-radius:50%;
          background:rgba(255,255,255,.92);color:#2f2f3a;font-size:24px;line-height:1;cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.18)}
        .epl-mimg{background:#faf6f1}
        .epl-mimg img{display:block;width:100%;height:auto;max-height:58vh;object-fit:cover}
        .epl-mbody{padding:22px 24px 26px;text-align:center}
        .epl-mname{font-family:'Yeseva One',serif;font-weight:400;font-size:22px;line-height:1.25;color:#2f2f3a;margin:0 0 10px}
        .epl-mprice{font-family:'Yeseva One',serif;font-size:26px;color:#b9764a;font-weight:700}
        .epl-mprice small{font-size:16px;font-weight:700}
        .epl-mnav{position:absolute;z-index:1;top:50%;transform:translateY(-50%);width:52px;height:52px;border-radius:50%;border:0;
          background:rgba(255,255,255,.14);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s,transform .2s}
        .epl-mnav .mdi{font-size:30px}
        .epl-mnav:hover{background:#b9764a;transform:translateY(-50%) scale(1.1)}
        .epl-mprev{left:max(14px,calc(50% - 300px))}
        .epl-mnext{right:max(14px,calc(50% - 300px))}
        .epl-modal.single .epl-mnav{display:none}
        .epl-mcard.swap .epl-mimg img,.epl-mcard.swap .epl-mbody{opacity:0;transition:opacity .14s}
        .epl-mimg img,.epl-mbody{transition:opacity .14s}
        @media(max-width:575px){
          .epl-mnav{width:44px;height:44px;background:rgba(47,47,58,.5)}
          .epl-mprev{left:8px}.epl-mnext{right:8px}
          .epl-mimg img{max-height:44vh}
        }
        .epl-banner-date b{color:#2f2f3a;font-weight:600}
        .epl-banner-print{margin-left:auto;flex:0 0 auto;display:inline-flex;align-items:center;gap:8px;color:#b9764a;font-size:14px;border:1px solid #eec2aa;border-radius:14px;padding:10px 18px;transition:.25s;white-space:nowrap}
        .epl-banner-print:hover{background:#b9764a;color:#fff;border-color:#b9764a}
        .epl-group{margin-bottom:44px}
        .epl-group:last-child{margin-bottom:0}
        .epl-cat{font-family:'Yeseva One',serif;font-size:27px;font-weight:400;color:#2f2f3a;display:flex;align-items:center;gap:18px;margin:0 0 20px}
        .epl-cat:after{content:'';flex:1 1 auto;height:2px;border-radius:2px;background:linear-gradient(90deg,#eec2aa,rgba(238,194,170,0))}
        .epl-items{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:12px 24px}
        .epl-item{display:flex;align-items:center;gap:16px;padding:10px 16px 10px 10px;background:#fff;border:1px solid #f0e4da;border-radius:14px;cursor:pointer;transition:box-shadow .2s,transform .2s}
        .epl-item:hover{box-shadow:0 14px 30px -18px rgba(122,78,42,.4);transform:translateY(-2px)}
        .epl-item:nth-child(even){background:#fff8f2}
        .epl-ph{width:64px;height:64px;flex:0 0 64px;object-fit:cover;border-radius:12px;border:1px solid #f0e4da;background:#fff}
        .epl-name{flex:1 1 auto;color:#2f2f3a;font-size:15px;line-height:1.35}
        .epl-prices{flex:0 0 auto;text-align:right;white-space:nowrap}
        .epl-old{display:block;color:#9a9aa5;font-size:13px;line-height:1.2;text-decoration:line-through}
        .epl-new{display:block;font-family:'Yeseva One',serif;font-size:21px;line-height:1.25;color:#b9764a}
        .epl-new small{font-size:13px;color:#b9764a}
        .epl-setup{max-width:640px;margin:0 auto;text-align:center;background:#fff8f2;border:1px solid #f0e4da;border-radius:18px;padding:56px 36px}
        .epl-setup-ico{font-size:56px;line-height:1;color:#b9764a;margin-bottom:18px}
        .epl-setup h3{font-family:'Yeseva One',serif;font-weight:400;color:#2f2f3a;margin-bottom:14px}
        .epl-setup p{color:#63636f;margin-bottom:26px}
        @media (max-width: 767px){
          .epl-items{grid-template-columns:1fr}
          .epl-banner{flex-wrap:wrap;gap:14px;padding:20px}
          .epl-banner-note{font-size:19px}
          .epl-banner-print{margin-left:0}
        }
        @media print{
          /* Печатаем только прайс: прячем всю обвязку сайта */
          .page-header, .rd-navbar, .footer-modern, .breadcrumbs-custom,
          .epl-cta, .epl-banner-print, .preloader, .to-top, #ToTop, .snackbars { display:none !important }
          .page{opacity:1 !important}
          section.section, .section-first{padding:0 !important;margin:0 !important}
          .epl-banner{border:0;background:#fff;margin:0 0 10px;padding:0}
          .epl-banner-ico{display:none}
          .epl-banner-title{font-size:18px}
          .epl-banner-date{font-size:11px}
          .epl-group{margin:0}
          /* два столбца на лист — компактно */
          .epl-items{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}
          .epl-item{break-inside:avoid;page-break-inside:avoid;border:0;border-bottom:1px solid #ddd;
            border-radius:0;background:#fff !important;padding:5px 0;gap:10px}
          .epl-ph{width:34px;height:34px;flex-basis:34px;border-radius:5px}
          .epl-name{font-size:11.5px;line-height:1.25}
          .epl-new{font-size:13px}
          .epl-new small{font-size:10px}
        }
      


/* ==================== main.tpl: второй блок (promo-classic) ==================== */
/* Фон-фото тортов внизу под текстом; кладём белый градиент сверху (как overlay первой секции),
   чтобы текст читался, а торты плавно проступали снизу. */
        .promo-classic { position: relative; }
        .promo-classic > * { position: relative; z-index: 1; }
        .promo-classic::before {
          content: ''; position: absolute; inset: 0; z-index: 0; pointer-events: none;
          background: linear-gradient(to bottom, rgba(255,255,255,0.95) 40%, rgba(255,255,255,0.55) 68%, rgba(255,255,255,0) 100%);
        }
        /* «Що ми пропонуємо»: квадратные фото товаров → единый ландшафтный кадр 4:3 */
        .box-info-modern-figure img { aspect-ratio: 4 / 3; object-fit: cover; height: auto; display: block; }

/* ==================== products.tpl ==================== */
        @media (max-width: 767px) {
          .eprod-section { padding-top: 14px !important; padding-bottom: 22px !important; }
          .eprod-section .ecat-filters { margin-bottom: -20px; } /* зазор под селектором на мобиле: 38→18px (−20px) */
          .eprod-section .eprod-gridwrap { margin-top: -22px; }
          .isotope-filters-toggle { max-width: 88vw; }
          .isotope-filters-toggle span:not(.icon) { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
        }
      


/* ==================== about.tpl ==================== */
        @media (max-width: 767px) { .eabout-photo { margin-top: -50px; } }
      


/* ==================== gallery.tpl ==================== */
        @media (max-width: 767px) { .egal-filters { margin-top: -30px; } }
      


/* ==================== wholesale.tpl ==================== */
        @media (max-width: 767px) { .ewhl-first { margin-top: -30px; } }
      


/* ==================== shop.tpl ==================== */
      .eshop-cart-hint {
        display: inline-flex;
        align-items: center;
        gap: 10px;
        margin: 18px auto 0;
        padding: 10px 20px;
        background: #fff8f2;
        border: 1px solid #f0e4da;
        border-radius: 14px;
        font-size: 14px;
        color: #63636f;
      }

      .eshop-cart-hint .mdi {
        font-size: 19px;
        color: #b9764a;
        line-height: 1;
      }

      


/* ==================== breakfast.tpl ==================== */
  .breakfast-breadcrumbs .parallax-container {
    position: relative;
    overflow: hidden;
  }

  .breakfast-breadcrumbs .parallax-container::after {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, .45);
    z-index: 1;
    pointer-events: none;
  }

  .breakfast-breadcrumbs .breadcrumbs-custom-body {
    position: relative;
    z-index: 2;
  }

  .breakfast-menu-page {
    position: relative;
    overflow: hidden;
    padding: 66px 0 84px;
    background: #ffffff;
  }

  .breakfast-menu-page::before,
  .breakfast-menu-page::after {
    content: "";
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
    z-index: 0;
  }

  .breakfast-menu-page::before {
    width: 520px;
    height: 520px;
    top: -260px;
    right: -160px;
    background: radial-gradient(circle, rgba(238, 194, 170, .24) 0%, rgba(238, 194, 170, 0) 70%);
  }

  .breakfast-menu-page::after {
    width: 420px;
    height: 420px;
    bottom: -220px;
    left: -140px;
    background: radial-gradient(circle, rgba(47, 47, 58, .06) 0%, rgba(47, 47, 58, 0) 72%);
  }

  .breakfast-menu-inner {
    position: relative;
    z-index: 1;
    max-width: 1120px;
    margin: 0 auto;
    text-align: left;
  }

  .breakfast-title {
    margin: 0;
    color: #2f2f3a;
    font-family: "Yeseva One", cursive;
    font-size: 42px;
    line-height: 1.12;
    font-weight: 400;
    letter-spacing: .02em;
  }

  .breakfast-subtitle {
    margin: 12px 0 34px;
    color: #646468;
    font-family: "Lato", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    font-size: 21px;
    line-height: 1.38;
    letter-spacing: .02em;
  }

  .breakfast-category {
    margin: 0 0 18px;
    color: #2f2f3a;
    font-family: "Yeseva One", cursive;
    font-size: 30px;
    line-height: 1.16;
    font-weight: 400;
    letter-spacing: .018em;
  }

  .breakfast-items {
    margin: 0 0 42px;
  }

  .breakfast-empty-message {
    margin: 0 0 10px;
    color: #6d6d78;
    font-family: "Lato", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    font-size: 17px;
    line-height: 1.45;
  }

  .breakfast-item {
    margin: 0 0 22px;
  }

  .breakfast-item-card {
    display: flex;
    align-items: stretch;
    gap: 0;
    padding: 0;
    border-radius: 18px;
    background: #ffffff;
    border: 1px solid #ececec;
    box-shadow: 0 12px 30px rgba(0, 0, 0, .06);
    transition: transform .2s ease, box-shadow .2s ease;
    overflow: hidden;
  }

  .breakfast-item-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 16px 34px rgba(0, 0, 0, .09);
  }

  .breakfast-photo {
    margin: 0;
    width: 168px;
    min-width: 168px;
    border-radius: 0;
    overflow: visible;
    background: transparent;
    border: none;
    align-self: stretch;
  }

  .breakfast-photo img {
    width: 100%;
    height: 100%;
    min-height: 124px;
    object-fit: cover;
    display: block;
  }

  .breakfast-item-text {
    flex: 1;
    min-width: 0;
    padding: 26px 28px 26px 30px;
  }

  .breakfast-item-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
  }

  .breakfast-item-title {
    margin: 0;
    color: #2f2f3a;
    font-family: "Yeseva One", cursive;
    font-size: 28px;
    line-height: 1.16;
    font-weight: 400;
    letter-spacing: .018em;
    flex: 1;
    min-width: 0;
  }

  .breakfast-price {
    margin: 0;
    margin-left: auto;
    color: #2f2f3a;
    font-family: "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    font-size: 21px;
    line-height: 1.1;
    font-weight: 600;
    white-space: nowrap;
    text-align: right;
    letter-spacing: .02em;
  }

  .breakfast-item-desc {
    margin: 8px 0 0;
    color: #666672;
    font-family: "Lato", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    font-size: 18px;
    line-height: 1.35;
    letter-spacing: .02em;
  }

  .breakfast-time {
    margin: 10px 0 0;
    color: #2f2f3a;
    font-family: "Yeseva One", cursive;
    font-size: 24px;
    line-height: 1.2;
    font-weight: 400;
    letter-spacing: .02em;
  }

  .breakfast-header-time {
    margin: 12px 0 0;
    color: rgba(255, 255, 255, .98);
    font-family: "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    font-size: 19px;
    line-height: 1.2;
    font-weight: 600;
    letter-spacing: .04em;
    text-transform: uppercase;
    text-shadow: 0 1px 6px rgba(0, 0, 0, .35);
  }

  @media (max-width: 1399.98px) {
    .breakfast-menu-inner {
      max-width: 1020px;
    }

    .breakfast-title {
      font-size: 38px;
    }

    .breakfast-subtitle {
      font-size: 20px;
      margin-bottom: 30px;
    }

    .breakfast-category {
      font-size: 27px;
    }

    .breakfast-header-time {
      font-size: 18px;
    }
  }

  @media (max-width: 1199.98px) {
    .breakfast-menu-page {
      padding: 58px 0 72px;
    }

    .breakfast-menu-inner {
      max-width: 100%;
    }

    .breakfast-title {
      font-size: 34px;
    }

    .breakfast-subtitle {
      font-size: 19px;
      margin-bottom: 26px;
    }

    .breakfast-category {
      font-size: 24px;
      margin-bottom: 14px;
    }

    .breakfast-items {
      margin-bottom: 34px;
    }

    .breakfast-item {
      margin-bottom: 18px;
    }

    .breakfast-photo {
      width: 150px;
      min-width: 150px;
    }

    .breakfast-photo img {
      min-height: 112px;
    }

    .breakfast-item-text {
      padding: 22px 24px;
    }

    .breakfast-item-title {
      font-size: 24px;
    }

    .breakfast-price {
      font-size: 19px;
    }

    .breakfast-item-desc {
      font-size: 16px;
    }

    .breakfast-time {
      font-size: 21px;
    }

    .breakfast-header-time {
      font-size: 17px;
    }
  }

  @media (max-width: 767.98px) {
    .breakfast-menu-page {
      padding: 44px 0 56px;
    }

    .breakfast-menu-page::before,
    .breakfast-menu-page::after {
      display: none;
    }

    .breakfast-title {
      font-size: 30px;
    }

    .breakfast-subtitle {
      font-size: 17px;
      margin-bottom: 18px;
    }

    .breakfast-category {
      font-size: 21px;
      margin-bottom: 10px;
    }

    .breakfast-item-card {
      gap: 0;
      padding: 0;
      border-radius: 14px;
    }

    .breakfast-photo {
      width: 104px;
      min-width: 104px;
      border-radius: 0;
    }

    .breakfast-photo img {
      min-height: 82px;
    }

    .breakfast-item-text {
      padding: 14px 14px 14px 16px;
    }

    .breakfast-item-title {
      font-size: 20px;
    }

    .breakfast-price {
      font-size: 17px;
    }

    .breakfast-item-desc {
      font-size: 14px;
      line-height: 1.28;
      margin-top: 6px;
    }

    .breakfast-time {
      font-size: 18px;
    }

    .breakfast-header-time {
      font-size: 15px;
    }
  }

  @media (max-width: 459.98px) {
    .breakfast-title {
      font-size: 26px;
    }

    .breakfast-subtitle {
      font-size: 16px;
    }

    .breakfast-category {
      font-size: 19px;
    }

    .breakfast-item-card {
      padding: 0;
      gap: 0;
    }

    .breakfast-photo {
      width: 88px;
      min-width: 88px;
    }

    .breakfast-photo img {
      min-height: 72px;
    }

    .breakfast-item-text {
      padding: 12px 10px 12px 12px;
    }

    .breakfast-item-title {
      font-size: 17px;
      line-height: 1.14;
    }

    .breakfast-price {
      font-size: 15px;
    }

    .breakfast-item-desc {
      font-size: 13px;
    }

    .breakfast-time {
      font-size: 16px;
    }

    .breakfast-header-time {
      font-size: 13px;
      letter-spacing: .03em;
    }
  }

  .breakfast-item{cursor:pointer;transition:transform .25s ease}
  .breakfast-item:hover{transform:translateY(-3px)}
  .bf-modal{position:fixed;inset:0;background:rgba(47,47,58,.7);backdrop-filter:blur(4px);
    display:flex;align-items:center;justify-content:center;z-index:10060;
    opacity:0;visibility:hidden;transition:all .25s ease;padding:16px}
  .bf-modal.open{opacity:1;visibility:visible}
  .bf-modal-stage{display:flex;flex-direction:column;align-items:center;gap:14px;max-width:520px;width:100%;min-width:0;margin:0 22px}
  .bf-modal-card{position:relative;background:#fff;border-radius:20px;width:100%;
    max-height:86vh;overflow-y:auto;-webkit-overflow-scrolling:touch;
    box-shadow:0 30px 70px -20px rgba(0,0,0,.5);transform:translateY(16px) scale(.97);transition:transform .25s ease}
  .bf-modal.open .bf-modal-card{transform:translateY(0) scale(1)}
  /* стрелки листания */
  .bf-nav{flex:none;width:54px;height:54px;border-radius:50%;border:0;cursor:pointer;
    background:rgba(255,255,255,.14);color:#fff;display:flex;align-items:center;justify-content:center;
    transition:background .22s ease,transform .22s ease}
  .bf-nav .mdi{font-size:30px;line-height:1}
  .bf-nav:hover{background:#b9764a;transform:scale(1.1)}
  .bf-modal.bf-single .bf-nav,.bf-modal.bf-single .bf-dots{display:none}
  /* точки как в слайдере */
  .bf-dots{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;max-width:100%}
  .bf-dot{width:9px;height:9px;border-radius:5px;border:0;padding:0;cursor:pointer;
    background:rgba(255,255,255,.38);transition:width .25s ease,background .25s ease}
  .bf-dot.active{width:26px;background:#e8b088}
  /* плавная смена контента */
  .bf-modal-imgwrap img,.bf-modal-body{transition:opacity .14s ease}
  .bf-modal-card.bf-swapping .bf-modal-imgwrap img,.bf-modal-card.bf-swapping .bf-modal-body{opacity:0}
  .bf-modal-close{position:absolute;top:10px;right:10px;z-index:2;width:38px;height:38px;border:0;border-radius:50%;
    background:rgba(255,255,255,.92);color:#2f2f3a;font-size:24px;line-height:1;cursor:pointer;
    box-shadow:0 4px 14px rgba(0,0,0,.18)}
  .bf-modal-imgwrap{background:#f6f0ea}
  .bf-modal-imgwrap img{display:block;width:100%;height:auto;max-height:58vh;object-fit:cover}
  .bf-modal-body{padding:20px 22px 24px;text-align:left}
  .bf-modal-head{display:flex;justify-content:space-between;align-items:baseline;gap:14px;margin-bottom:8px}
  .bf-modal-head h3{margin:0;font-family:'Yeseva One',serif;font-size:21px;color:#2f2f3a;line-height:1.25}
  .bf-modal-price{font-family:'Yeseva One',serif;font-size:20px;color:#b9764a;white-space:nowrap}
  .bf-modal-body p{margin:0;font-size:15px;line-height:1.65;color:#63636f}
  @media (max-width:575px){
    .bf-modal{padding:10px;align-items:flex-end}
    .bf-modal-stage{margin:0}
    .bf-modal-card{border-radius:20px 20px 14px 14px;max-height:80vh}
    .bf-modal-imgwrap img{max-height:40vh}
    .bf-modal-head h3{font-size:19px}
    /* стрелки поверх краёв экрана по центру, точки над шторкой */
    .bf-nav{position:absolute;top:42%;z-index:3;width:44px;height:44px;background:rgba(47,47,58,.45)}
    .bf-nav .mdi{font-size:26px}
    .bf-nav-prev{left:8px}
    .bf-nav-next{right:8px}
    .bf-dots{order:-1;margin-bottom:2px}
  }


/* ==================== account.tpl ==================== */
      /* ===== Особистий кабінет (eacc) ===== */
      #eacc { --eacc-ink:#2f2f3a; --eacc-peach:#b9764a; --eacc-peach-l:#eec2aa; --eacc-cream:#fff8f2; --eacc-line:#f0e4da; }
      #eacc[data-auth="guest"] .eacc-user { display: none; }
      #eacc[data-auth="user"] .eacc-guest { display: none; }

      /* --- гостевая карточка с табами --- */
      .eacc-guest { display: flex; justify-content: center; }
      .eacc-card { width: 100%; max-width: 480px; background: #fff; border: 1px solid var(--eacc-line); border-radius: 18px; padding: 30px 28px 32px; box-shadow: 0 14px 40px rgba(47, 47, 58, .07); }
      .eacc-tabs { display: flex; gap: 6px; background: var(--eacc-cream); border: 1px solid var(--eacc-line); border-radius: 14px; padding: 5px; margin-bottom: 24px; }
      .eacc-tab { flex: 1 1 0; border: 0; background: transparent; border-radius: 10px; padding: 11px 8px; font-size: 14px; font-weight: 700; letter-spacing: .04em; color: #8a8a94; cursor: pointer; transition: background .25s, color .25s; }
      .eacc-tab:hover { color: var(--eacc-ink); }
      .eacc-tab .mdi { font-size: 16px; margin-right: 6px; vertical-align: -1px; }
      .eacc-label .mdi { font-size: 15px; color: var(--eacc-peach); margin-right: 5px; vertical-align: -1px; }
      .eacc-btn { transition: opacity .35s ease; }
      .eacc-btn:disabled { opacity: .7; cursor: not-allowed; pointer-events: none; }
      .eacc-tab.is-active { background: var(--eacc-peach); color: #fff; box-shadow: 0 6px 16px rgba(185, 118, 74, .3); }
      .eacc-pane { display: none; }
      .eacc-pane.is-active { display: block; }

      .eacc-field { margin-bottom: 16px; text-align: left; }
      .eacc-label { display: block; font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; color: #8a8a94; margin-bottom: 7px; }
      .eacc-input { display: block; width: 100%; padding: 12px 14px; font-size: 15px; color: var(--eacc-ink); background: var(--eacc-cream); border: 1px solid var(--eacc-line); border-radius: 12px; outline: none; transition: border-color .25s, background .25s, box-shadow .25s; -webkit-appearance: none; appearance: none; }
      .eacc-input:focus { background: #fff; border-color: var(--eacc-peach-l); box-shadow: 0 0 0 4px rgba(185, 118, 74, .12); }
      .eacc-input::placeholder { color: #b9b3ad; }
      .eacc-code { text-align: center; font-size: 24px; letter-spacing: .5em; padding-left: calc(14px + .5em); }

      /* OTP-код из SMS: 4 крупных бокса с автопереходом */
      #eacc .eacc-otp-lab { display: block; text-align: center; font-size: 12px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--eacc-peach); margin: 2px 0 16px; }
      #eacc .eacc-otp { display: flex; gap: 12px; justify-content: center; }
      #eacc .eacc-otp-box {
        width: 60px; height: 68px; padding: 0; text-align: center;
        font-size: 28px; font-weight: 700; color: var(--eacc-ink); line-height: 1;
        background: var(--eacc-cream); border: 1.5px solid var(--eacc-line); border-radius: 14px; outline: none;
        caret-color: var(--eacc-peach); -webkit-appearance: none; appearance: none;
        transition: border-color .2s ease, box-shadow .2s ease, background .2s ease, transform .12s ease;
      }
      #eacc .eacc-otp-box.is-filled { border-color: var(--eacc-peach-l); background: #fff; }
      #eacc .eacc-otp-box:focus { border-color: var(--eacc-peach); background: #fff; box-shadow: 0 0 0 4px rgba(185, 118, 74, .14); transform: translateY(-1px); }
      @media (max-width: 420px) { #eacc .eacc-otp { gap: 9px; } #eacc .eacc-otp-box { width: 54px; height: 62px; font-size: 25px; } }

      .eacc-hint { display: flex; align-items: flex-start; gap: 10px; font-size: 14px; line-height: 1.45; color: var(--eacc-ink); background: var(--eacc-cream); border: 1px solid var(--eacc-line); border-radius: 12px; padding: 12px 14px; margin-bottom: 18px; text-align: left; }
      .eacc-hint .mdi { font-size: 20px; line-height: 1.2; color: var(--eacc-peach); }

      .eacc-error { display: flex; align-items: flex-start; gap: 8px; font-size: 13.5px; line-height: 1.4; color: #c0392b; background: #fdf0ee; border: 1px solid #f5d3cc; border-width: 0; border-radius: 10px; padding: 0 13px; margin-top: 0; text-align: left; max-height: 0; overflow: hidden; opacity: 0; transform: translateY(-4px); transition: opacity .3s ease, transform .3s ease, max-height .3s ease, padding .3s ease, margin-top .3s ease, border-width .3s ease; }
      .eacc-error.show { opacity: 1; transform: translateY(0); max-height: 140px; padding: 10px 13px; margin-top: 14px; border-width: 1px; }
      .eacc-error .mdi { flex: 0 0 auto; font-size: 17px; line-height: 1.15; }
      .eacc-error[hidden] { display: none; }

      #eacc .eacc-btn { width: 100%; margin-top: 18px; }
      #eacc .button-zakaria.eacc-btn:hover { background: #a06038; border-color: #a06038; color: #fff; }
      #eacc .eacc-btn.is-busy { opacity: .55; pointer-events: none; }
      .eacc-back { display: inline-block; border: 0; background: transparent; margin-top: 16px; font-size: 13.5px; color: #8a8a94; cursor: pointer; transition: color .25s; }
      .eacc-back:hover { color: var(--eacc-peach); }
      .eacc-forgot-note { text-align: center; margin: 16px 0 0; font-size: 13px; line-height: 1.5; color: #8a8a94; }
      .eacc-forgot-link { border: 0; background: transparent; padding: 0; font: inherit; font-weight: 700; color: var(--eacc-peach); cursor: pointer; text-decoration: underline; text-underline-offset: 2px; transition: color .2s ease; }
      .eacc-forgot-link:hover { color: #a06038; }

      /* --- кабинет юзера --- */
      .eacc-hello { margin-bottom: 6px; }
      .eacc-sub { font-size: 15px; color: #8a8a94; margin-bottom: 30px; }
      .eacc-sub-phone { display: inline-flex; align-items: center; gap: 6px; margin-left: 10px; padding: 4px 12px; font-size: 13.5px; color: var(--eacc-peach); background: var(--eacc-cream); border: 1px solid var(--eacc-line); border-radius: 999px; white-space: nowrap; }
      .eacc-sub-phone:empty { display: none; }
      .eacc-user-grid { display: grid; grid-template-columns: minmax(300px, 440px) minmax(0, 1fr); gap: 36px; align-items: stretch; text-align: left; max-width: 920px; margin: 0 auto; }
      @media (max-width: 991px) { .eacc-user-grid { grid-template-columns: 1fr; } }

      /* бонусная карта в пропорции банковской */
      .eacc-bank { position: relative; width: 100%; max-width: 440px; aspect-ratio: 1.586; min-height: 250px; border-radius: 22px; padding: 26px 28px; display: flex; flex-direction: column; justify-content: space-between; overflow: hidden; color: var(--eacc-cream); background: linear-gradient(135deg, #26262f 0%, #2f2f3a 45%, #4a3a44 78%, #6b4a3c 100%); box-shadow: 0 20px 44px rgba(47, 47, 58, .32); }
      .eacc-bank::before { content: ""; position: absolute; right: -70px; top: -90px; width: 260px; height: 260px; border-radius: 50%; background: radial-gradient(circle, rgba(238, 194, 170, .35) 0%, rgba(238, 194, 170, 0) 70%); }
      .eacc-bank::after { content: ""; position: absolute; left: -60px; bottom: -100px; width: 240px; height: 240px; border-radius: 50%; background: radial-gradient(circle, rgba(185, 118, 74, .28) 0%, rgba(185, 118, 74, 0) 70%); }
      .eacc-bank > * { position: relative; z-index: 1; }
      .eacc-bank-top { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; }
      .eacc-bank-logo { font-family: 'Yeseva One', Georgia, serif; font-size: 21px; letter-spacing: .16em; text-transform: uppercase; color: #fff; }
      .eacc-bank-logo-sub { font-size: 10px; letter-spacing: .32em; text-transform: uppercase; color: var(--eacc-peach-l); }
      .eacc-bank-balance { flex: 1 1 auto; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; }
      .eacc-bank-balance b { display: block; font-family: 'Yeseva One', Georgia, serif; font-weight: 400; font-size: 52px; line-height: 1.05; color: #fff; }
      .eacc-bank-balance span { display: inline-block; margin-top: 4px; font-size: 12px; font-weight: 700; letter-spacing: .22em; text-transform: uppercase; color: var(--eacc-peach-l); }
      .eacc-bank-bottom { display: flex; align-items: flex-end; justify-content: space-between; gap: 14px; }
      .eacc-bank-cardlab { display: block; font-size: 9.5px; letter-spacing: .22em; text-transform: uppercase; color: rgba(255, 248, 242, .55); margin-bottom: 3px; }
      .eacc-bank-num { display: inline-flex; align-items: center; gap: 11px; font-size: 16px; color: rgba(255, 248, 242, .92); }
      .eacc-bank-mask { letter-spacing: .3em; font-size: 20px; line-height: 1; }
      .eacc-bank-eye { display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; padding: 0; border: 0; border-radius: 50%; background: rgba(255, 248, 242, .16); color: #fff; cursor: pointer; transition: background .2s, transform .2s; }
      .eacc-bank-eye:hover { background: rgba(255, 248, 242, .3); transform: scale(1.08); }
      .eacc-bank-eye .mdi { font-size: 17px; line-height: 1; }
      .eacc-bank-name { font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: rgba(255, 248, 242, .75); text-align: right; }
      @media (max-width: 575px) { .eacc-bank { max-width: none; width: 100%; aspect-ratio: 1.7; } }
      @media (max-width: 479px) { .eacc-bank { padding: 20px 20px; } .eacc-bank-balance b { font-size: 42px; } }

      /* баннер приложения */
      .eacc-app { background: var(--eacc-cream); border: 1px solid var(--eacc-line); border-radius: 18px; padding: 26px 28px; display: flex; flex-direction: column; }
      .eacc-app h3 { margin-bottom: 6px; }
      .eacc-app-lead { font-size: 14.5px; color: #8a8a94; margin-bottom: 16px; }
      .eacc-benefits { list-style: none; margin: 0 0 20px; padding: 0; }
      .eacc-benefits li { display: flex; align-items: center; gap: 12px; font-size: 15px; color: var(--eacc-ink); padding: 7px 0; }
      .eacc-benefits .mdi { flex: 0 0 auto; width: 36px; height: 36px; display: inline-flex; align-items: center; justify-content: center; font-size: 19px; color: var(--eacc-peach); background: #fff; border: 1px solid var(--eacc-line); border-radius: 50%; }
      .eacc-stores { display: flex; flex-wrap: wrap; gap: 12px; margin-top: auto; }
      .eacc-store { display: inline-flex; align-items: center; gap: 12px; background: var(--eacc-ink); color: #fff; border-radius: 14px; padding: 10px 18px 10px 15px; text-decoration: none; transition: background .25s, transform .25s, box-shadow .25s; }
      .eacc-store:hover { background: #454553; color: #fff; text-decoration: none; transform: translateY(-2px); box-shadow: 0 10px 22px rgba(47, 47, 58, .22); }
      .eacc-store .mdi { font-size: 27px; line-height: 1; }
      .eacc-store small { display: block; font-size: 10.5px; letter-spacing: .05em; text-transform: uppercase; opacity: .65; line-height: 1.2; }
      .eacc-store b { display: block; font-size: 15px; line-height: 1.25; letter-spacing: .02em; }
      /* моб: кнопки магазинов — по центру и одной ширины */
      @media (max-width: 575px) {
        .eacc-stores { flex-direction: column; align-items: center; gap: 12px; }
        .eacc-store { width: 100%; max-width: 320px; justify-content: flex-start; } /* кнопка по центру блока, а иконка+текст — в левой части кнопки */
      }

      /* --- секции кабинета (#profile / #card / #orders) --- */
      .eacc-sec { margin-top: 44px; scroll-margin-top: 110px; text-align: left; }
      .eacc-sec-title { display: flex; align-items: center; gap: 10px; font-family: 'Yeseva One', Georgia, serif; font-weight: 400; font-size: 24px; line-height: 1.2; color: var(--eacc-ink); margin: 0 0 20px; }
      .eacc-sec-title .mdi { font-size: 22px; color: var(--eacc-peach); }
      /* Бар подкатегорий кабинета — разметка/стиль каталога (isotope-filters) 1:1 */
      .eacc-secfilters { margin: 40px 0 30px; }
      /* На мобилке НЕ сворачивать в дропдаун «Раздел» — разделы всегда инлайн (как на десктопе),
         с подстройкой шрифта, чтобы 3 раздела помещались в экран */
      @media (max-width: 767.98px) {
        .eacc-secfilters { margin: 26px 0 20px; text-align: left; }
        .eacc-secfilters .isotope-filters-toggle { display: none !important; }
        .eacc-secfilters .isotope-filters-list-wrap { display: block; position: relative; width: 100%; padding-bottom: 4px; }
        .eacc-secfilters .isotope-filters-list-wrap::before {
          content: ''; position: absolute; left: 0; bottom: 0; width: 100%; height: 4px;
          border-radius: 6px; background: #d7d7d7;
        }
        .eacc-secfilters .isotope-filters-list {
          position: static; display: flex; justify-content: space-between; align-items: flex-end;
          width: 100%; max-width: none; top: auto; left: auto; margin: 0; padding: 0; gap: 6px;
          background: transparent; box-shadow: none; transform: none; opacity: 1; visibility: visible;
        }
        .eacc-secfilters .isotope-filters-list > li { padding: 0; }
        .eacc-secfilters .isotope-filters-list a {
          position: relative; display: inline-block; padding: 0 0 12px; text-align: center;
          font-size: 12.5px; letter-spacing: .01em; line-height: 1; white-space: nowrap;
        }
        .eacc-secfilters .isotope-filters-list a::after {
          content: ''; position: absolute; left: 50%; bottom: -4px; width: 100%; height: 4px;
          border-radius: 6px; background: #2f2f3a; transform: translate3d(-50%, 0, 0);
          opacity: 0; transition: opacity .25s ease;
        }
        .eacc-secfilters .isotope-filters-list a.active::after,
        .eacc-secfilters .isotope-filters-list a:hover::after { opacity: 1; }
      }
      @media (max-width: 400px) { .eacc-secfilters .isotope-filters-list a { font-size: 11px; letter-spacing: 0; } }
      @media (max-width: 340px) { .eacc-secfilters .isotope-filters-list a { font-size: 10px; } }
      #eacc[data-auth="user"] .eacc-sec { display: none; margin-top: 6px; }
      #eacc[data-auth="user"] .eacc-sec.is-active { display: block; animation: eaccSecIn .42s ease; }
      @keyframes eaccSecIn { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: none; } }

      /* --- форма профиля --- */
      .eacc-profile-card { max-width: 560px; margin: 0 auto; background: #fff; border: 1px solid var(--eacc-line); border-radius: 18px; padding: 26px 26px 28px; box-shadow: 0 14px 40px rgba(47, 47, 58, .07); }
      #eacc[data-auth="user"] #orders { max-width: 820px; margin-left: auto; margin-right: auto; }
      .eacc-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0 14px; }
      @media (max-width: 575px) { .eacc-form-grid { grid-template-columns: 1fr; } }
      .eacc-seg { display: flex; gap: 6px; background: var(--eacc-cream); border: 1px solid var(--eacc-line); border-radius: 12px; padding: 5px; }
      .eacc-seg-btn { flex: 1 1 0; border: 0; background: transparent; border-radius: 9px; padding: 10px 6px; font-size: 13px; font-weight: 700; letter-spacing: .03em; color: #8a8a94; cursor: pointer; white-space: nowrap; transition: background .25s, color .25s; }
      .eacc-seg-btn:hover { color: var(--eacc-ink); }
      .eacc-seg-btn .mdi { font-size: 15px; margin-right: 5px; vertical-align: -1px; }
      .eacc-seg-btn.is-active { background: var(--eacc-peach); color: #fff; box-shadow: 0 6px 16px rgba(185, 118, 74, .3); }

      /* Поля кабинета (вход/регистрация/профиль) — единый стиль как в чекауте «Ваши данные»:
         подчёркивание, плавающий лейбл, иконка слева. */
      #eaccProfile .eacc-form-grid { gap: 0 20px; }
      #eaccProfile .eacc-field { margin-bottom: 22px; }
      #eacc .eacc-fl { position: relative; }
      #eacc .eacc-flinput {
        background: transparent; border: 0; border-bottom: 1px solid #e1e1e1; border-radius: 0;
        padding: 20px 0 8px 28px; font-size: 15px; color: var(--eacc-ink);
        box-shadow: none; transition: border-color .25s ease;
      }
      #eacc .eacc-flinput:focus { background: transparent; border-bottom-color: #b9764a; box-shadow: none; }
      #eacc .eacc-flinput::placeholder { color: transparent; }
      #eacc .eacc-flinput:focus::placeholder { color: #b9b3ad; }
      #eacc .eacc-ficon {
        position: absolute; left: 0; top: 33px; transform: translateY(-50%); /* 33px: центр глифа MDI на линии текста инпута */
        font-size: 18px; line-height: 1; color: #c4b6a7; pointer-events: none; transition: color .25s ease;
      }
      #eacc .eacc-fl:focus-within .eacc-ficon { color: #2f2f3a; }
      /* глиф тортика сидит оптически ниже — поднимаем иконку даты рождения на 3px */
      #eacc .eacc-ficon.mdi-cake-variant { top: 30px; }
      /* глазик «показать/скрыть» в парольных полях */
      #eacc .eacc-fl .eacc-eye { position: absolute; right: 0; top: 33px; transform: translateY(-50%); border: 0; background: transparent; padding: 4px 2px; color: #c4b6a7; cursor: pointer; line-height: 1; transition: color .2s ease; }
      #eacc .eacc-fl .eacc-eye:hover { color: var(--eacc-peach); }
      #eacc .eacc-fl .eacc-eye .mdi { font-size: 19px; display: block; }
      #eacc .eacc-fl .eacc-flinput.has-eye { padding-right: 32px; }
      /* лёгкая тряска поля при неверном вводе */
      @keyframes eacc-shake { 0%,100%{transform:translateX(0)} 15%{transform:translateX(-6px)} 30%{transform:translateX(5px)} 45%{transform:translateX(-4px)} 60%{transform:translateX(3px)} 75%{transform:translateX(-2px)} }
      #eacc .eacc-shake { animation: eacc-shake .4s ease; }
      @media (prefers-reduced-motion: reduce) { #eacc .eacc-shake { animation: none; } }
      #eacc .eacc-fl-label {
        position: absolute; left: 28px; top: 30px; transform: translateY(-50%);
        color: #8a8a94; font-size: 15px; pointer-events: none;
        transition: top .2s ease, font-size .2s ease, color .2s ease;
      }
      #eacc .eacc-flinput:focus ~ .eacc-fl-label,
      #eacc .eacc-flinput:not(:placeholder-shown) ~ .eacc-fl-label { top: 6px; font-size: 12px; color: #b9764a; }
      /* лейбл гендера — мелкими капсами, в тон */
      #eaccProfile .eacc-gender-label { display: flex; align-items: center; gap: 6px; margin-bottom: 10px; font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: #8a8a94; }
      #eaccProfile .eacc-gender-label .mdi { font-size: 15px; color: #b9764a; position: relative; top: 1px; }

      /* --- мои заказы --- */
      .eacc-orders { display: grid; gap: 18px; max-width: 860px; }
      .eacc-order { background: #fff; border: 1px solid var(--eacc-line); border-radius: 18px; padding: 20px 24px 18px; box-shadow: 0 10px 30px rgba(47, 47, 58, .05); }
      .eacc-order-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; flex-wrap: wrap; }
      .eacc-order-num { font-family: 'Yeseva One', Georgia, serif; font-size: 18px; color: var(--eacc-ink); }
      .eacc-order-num .mdi { font-size: 18px; color: var(--eacc-peach); margin-right: 8px; vertical-align: -1px; }
      .eacc-order-status { display: inline-block; font-size: 12px; font-weight: 700; letter-spacing: .05em; padding: 5px 13px; border-radius: 999px; white-space: nowrap; }
      .eacc-st-0 { color: #9a7b1f; background: #fdf6dd; border: 1px solid #f1e3ae; }
      .eacc-st-1 { color: #2e7d4f; background: #eaf7ee; border: 1px solid #cdeada; }
      .eacc-st-2 { color: #8a8a94; background: #f3f3f6; border: 1px solid #e4e4ea; }
      .eacc-order-meta { font-size: 14px; color: #8a8a94; margin: 6px 0 0; }
      .eacc-order-meta .mdi { font-size: 15px; color: var(--eacc-peach); margin-right: 6px; vertical-align: -1px; }
      .eacc-order-items { list-style: none; margin: 14px 0 0; padding: 0; border-top: 1px solid var(--eacc-line); }
      .eacc-order-items li { display: flex; align-items: center; gap: 13px; padding: 12px 0; border-bottom: 1px solid var(--eacc-line); }
      .eacc-order-items li:last-child { border-bottom: 0; }
      .eacc-order-items img { flex: 0 0 auto; width: 44px; height: 44px; border-radius: 10px; object-fit: cover; border: 1px solid var(--eacc-line); background: var(--eacc-cream); }
      .eacc-order-item-info { flex: 1 1 auto; min-width: 0; }
      .eacc-order-item-info b { display: block; font-size: 15px; font-weight: 700; color: var(--eacc-ink); line-height: 1.3; }
      .eacc-order-item-info span { display: block; font-size: 13px; color: #8a8a94; line-height: 1.4; margin-top: 2px; }
      .eacc-order-item-price { flex: 0 0 auto; font-size: 14.5px; font-weight: 700; color: var(--eacc-ink); white-space: nowrap; }
      .eacc-order-total { display: flex; justify-content: flex-end; align-items: baseline; gap: 8px; font-size: 14px; color: #8a8a94; margin: 12px 0 0; padding-top: 12px; border-top: 1px dashed var(--eacc-line); }
      .eacc-order-total b { font-size: 17px; color: var(--eacc-peach); }

      /* --- способ и статус оплаты (LiqPay) --- */
      .eacc-pay { display: flex; align-items: center; flex-wrap: wrap; gap: 9px; margin: 8px 0 0; }
      .eacc-pay-label { font-size: 14px; color: #8a8a94; }
      .eacc-pay-label .mdi { font-size: 15px; color: var(--eacc-peach); margin-right: 6px; vertical-align: -1px; }
      .eacc-pay-badge { display: inline-flex; align-items: center; gap: 5px; font-size: 12px; font-weight: 700; letter-spacing: .03em; color: #fff; padding: 5px 13px; border-radius: 999px; white-space: nowrap; background: #8a8a95; }
      .eacc-pay-badge .mdi { font-size: 15px; line-height: 1; }
      .eacc-pay-check { display: inline-flex; align-items: center; gap: 5px; font-size: 13px; font-weight: 600; color: var(--eacc-peach); background: transparent; border: 1px solid var(--eacc-line); border-radius: 999px; padding: 4px 12px; cursor: pointer; transition: background .18s, border-color .18s, color .18s; }
      .eacc-pay-check:hover { background: var(--eacc-cream); border-color: var(--eacc-peach-l); }
      .eacc-pay-check:disabled { opacity: .55; cursor: default; }
      .eacc-pay-check .mdi { font-size: 15px; }
      .eacc-pay-check.is-loading .mdi { animation: eacc-pay-spin .8s linear infinite; }
      @keyframes eacc-pay-spin { to { transform: rotate(360deg); } }

      @media (max-width: 479px) { .eacc-order { padding: 16px 16px 14px; } }

      /* --- пустое состояние заказов --- */
      .eacc-orders-empty { max-width: 560px; margin: 0 auto; text-align: center; background: var(--eacc-cream); border: 1px solid var(--eacc-line); border-radius: 18px; padding: 42px 26px 40px; }
      .eacc-orders-empty > .mdi { display: block; font-size: 46px; line-height: 1; color: var(--eacc-peach-l); margin-bottom: 12px; }
      .eacc-orders-empty b { display: block; font-family: 'Yeseva One', Georgia, serif; font-weight: 400; font-size: 20px; color: var(--eacc-ink); margin-bottom: 8px; }
      .eacc-orders-empty p { font-size: 14.5px; color: #8a8a94; margin: 0 0 20px; }

      


/* ==================== contacts.tpl ==================== */
            /* иконки у полей формы — единый вид с чекаутом «Ваши данные» */
            .rd-mailform .form-wrap{position:relative}
            .rd-mailform .ct-ficon{position:absolute;left:0;top:30px;transform:translateY(-50%);font-size:18px;line-height:1;color:#c4b6a7;pointer-events:none;z-index:2;transition:color .25s ease}
            .rd-mailform .form-wrap:focus-within .ct-ficon{color:#2f2f3a}
            .rd-mailform .form-input,
            .rd-mailform .form-label{padding-left:28px}
            @media (max-width:767px){ .rd-mailform .ct-ficon{top:22px} }
            .edison-captcha-overlay{position:fixed;inset:0;background:rgba(47,47,58,.65);backdrop-filter:blur(3px);
              display:flex;align-items:center;justify-content:center;z-index:10050;opacity:0;visibility:hidden;transition:all .25s ease;padding:20px}
            .edison-captcha-overlay.open{opacity:1;visibility:visible}
            .edison-captcha-card{position:relative;background:#fff;border-radius:18px;padding:38px 36px 30px;max-width:480px;width:100%;
              text-align:center;box-shadow:0 30px 70px -20px rgba(0,0,0,.45);transform:translateY(14px) scale(.97);transition:transform .25s ease}
            .edison-captcha-overlay.open .edison-captcha-card{transform:translateY(0) scale(1)}
            .edison-captcha-close{position:absolute;top:10px;right:16px;border:0;background:none;font-size:26px;color:#b9b9c2;cursor:pointer;line-height:1}
            .edison-captcha-close:hover{color:#2f2f3a}
            .edison-captcha-icon{font-size:34px;margin-bottom:6px}
            .edison-captcha-title{font-family:'Yeseva One',serif;font-size:19px;color:#2f2f3a;margin-bottom:16px}
            .edison-captcha-q{font-size:16px;color:#63636f;margin-bottom:16px}
            .edison-captcha-q b{display:inline-block;background:#fff3e9;color:#2f2f3a;border-radius:10px;padding:4px 14px;margin:0 8px;
              font-family:'Yeseva One',serif;font-size:20px;letter-spacing:.06em}
            #captchaInput{width:110px;text-align:center;font-size:26px;font-family:'Yeseva One',serif;color:#2f2f3a;
              border:2px solid #eec2aa;border-radius:12px;padding:10px 6px;outline:none;transition:all .2s ease;margin-bottom:6px}
            #captchaInput:focus{border-color:#b9764a;box-shadow:0 0 0 4px rgba(238,194,170,.35)}
            #captchaInput.shake{animation:capShake .35s ease}
            @keyframes capShake{0%,100%{transform:translateX(0)}25%{transform:translateX(-7px)}75%{transform:translateX(7px)}}
            .edison-captcha-err{display:none;color:#b3261e;font-size:13px;margin:4px 0 2px}
            .edison-captcha-err.show{display:block}
            .edison-captcha-ok{margin-top:14px;width:100%;font-size:13px;letter-spacing:.08em;padding-left:10px;padding-right:10px;white-space:normal}

            /* Экран «сообщение отправлено» вместо формы */
            form.rd-mailform{transition:opacity .28s ease}
            form.rd-mailform.ecs-hide{opacity:0;pointer-events:none}
            .econtact-success{display:none;flex-direction:column;align-items:center;justify-content:center;
              text-align:center;padding:30px 16px}
            .econtact-success.on{display:flex;animation:ecs-in .4s ease}
            .econtact-success.ecs-fade{opacity:0;transition:opacity .45s ease}
            @keyframes ecs-in{from{opacity:0}to{opacity:1}}
            .ecs-check{width:96px;height:96px;margin-bottom:20px}
            .econtact-success.on .ecs-check{animation:ecs-pop .55s cubic-bezier(.68,-.55,.27,1.55)}
            .ecs-circle{stroke:#47b878;stroke-width:3;stroke-linecap:round;stroke-dasharray:208;stroke-dashoffset:208}
            .econtact-success.on .ecs-circle{animation:ecs-draw .7s ease forwards}
            .ecs-tick{stroke:#47b878;stroke-width:5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:42;stroke-dashoffset:42}
            .econtact-success.on .ecs-tick{animation:ecs-draw .45s ease .55s forwards}
            @keyframes ecs-draw{to{stroke-dashoffset:0}}
            @keyframes ecs-pop{0%{transform:scale(.5);opacity:0}100%{transform:scale(1);opacity:1}}
            .econtact-success h3{font-family:'Yeseva One',serif;font-size:26px;color:#2f2f3a;margin:0 0 10px;font-weight:400}
            .econtact-success p{margin:0;font-size:15.5px;line-height:1.6;color:#63636f;max-width:440px}
            /* пока показан наш экран — прячем штатный снекбар темы */
            html.econtact-showing #form-output-global{display:none!important}
          


/* ==================== cakes_landing.tpl ==================== */
      /* ===== Edison: SEO-лендинг «Торти на замовлення» (ecl-*) ===== */
      .ecl-hero{padding:56px 0 48px;}

      /* лента преимуществ */
      /* Герой: строка-статистика с разделителями */
      .ecl-statline{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin-top:24px;
        padding:14px 0;border-top:1px dashed #ecdccb;border-bottom:1px dashed #ecdccb}
      .ecl-stat{font-size:14px;color:#63636f;white-space:nowrap}
      .ecl-stat b{font-family:'Yeseva One',serif;font-weight:400;font-size:19px;color:#b9764a}
      .ecl-statdot{width:5px;height:5px;border-radius:50%;background:#eec2aa;flex:none}
      /* Герой: веер из трёх фото тортов */
      .ecl-fan{position:relative;width:min(473px,94%);aspect-ratio:1/1;margin:0 auto}
      .ecl-fan::before{content:'';position:absolute;inset:-4%;border-radius:50%;
        background:radial-gradient(circle,#fdeeDF 0%,rgba(253,238,223,.55) 55%,transparent 72%)}
      .ecl-fan-item{position:absolute;inset:6% 6%;margin:0;border-radius:22px;overflow:hidden;background:#fff;
        border:1px solid #f0e0cd;box-shadow:0 26px 52px -24px rgba(122,78,42,.5);
        transition:transform .45s cubic-bezier(.22,.8,.3,1)}
      .ecl-fan-item img{width:100%;height:100%;object-fit:cover;display:block}
      .ecl-fan-1 img,.ecl-fan-3 img{transform:scale(1.28)}
      .ecl-fan-1{transform:rotate(-10deg) translateX(-12%);z-index:1}
      .ecl-fan-2{transform:rotate(0deg) translateY(-2%);z-index:3}
      .ecl-fan-3{transform:rotate(10deg) translateX(12%);z-index:2}
      .ecl-fan:hover .ecl-fan-1{transform:rotate(-14deg) translateX(-19%)}
      .ecl-fan:hover .ecl-fan-2{transform:rotate(0deg) translateY(-5%) scale(1.03)}
      .ecl-fan:hover .ecl-fan-3{transform:rotate(14deg) translateX(19%)}
      @media(max-width:991px){.ecl-fan{margin-top:30px}}
      @media(max-width:575px){.ecl-stat{font-size:12.5px}.ecl-stat b{font-size:16px}}

      @media(min-width:992px){ .ecl-hero .row > .col-lg-6:first-child{order:2} } /* фото слева, текст справа */
      .ecl-cta-section{padding-top:120px} /* блок CTA ниже на ~100px */

      .ecl-perks-section{padding:0 0 60px;}
      .ecl-perks{display:grid;grid-template-columns:repeat(4,1fr);background:#fff8f2;border:1px solid #f3e3d3;border-radius:18px;padding:6px 0;margin-top:26px;}
      .ecl-perk{display:flex;align-items:center;gap:15px;padding:22px 24px;text-align:left;position:relative;}
      .ecl-perk + .ecl-perk::before{content:"";position:absolute;left:0;top:22%;bottom:22%;border-left:1px dashed #e7d3c2;}
      .ecl-perk-ico{flex:none;width:54px;height:54px;border-radius:50%;background:#fff;border:1px solid #f0e4da;display:flex;align-items:center;justify-content:center;font-size:25px;color:#b9764a;transition:all .35s ease;}
      .ecl-perk:hover .ecl-perk-ico{background:#eec2aa;color:#2f2f3a;transform:rotate(-8deg) scale(1.08);}
      .ecl-perk b{display:block;font-size:15.5px;color:#2f2f3a;margin-bottom:2px;}
      .ecl-perk span{display:block;font-size:13.5px;color:#7d7d88;line-height:1.5;}
      /* иконку правило текста выше не должно трогать (у ".ecl-perk span" специфичность выше, чем у ".ecl-perk-ico") */
      .ecl-perk span.ecl-perk-ico{display:flex;align-items:center;justify-content:center;font-size:25px;color:#b9764a;line-height:1;}
      .ecl-perk:hover span.ecl-perk-ico{color:#2f2f3a;}
      @media(max-width:991px){
        .ecl-perks{grid-template-columns:1fr 1fr;}
        .ecl-perk + .ecl-perk::before{display:none;}
        .ecl-perk:nth-child(even)::before{display:block;}
        .ecl-perk:nth-child(n+3){border-top:1px dashed #e7d3c2;}
      }
      @media(max-width:575px){
        .ecl-perks{grid-template-columns:1fr;}
        .ecl-perk::before{display:none !important;}
        .ecl-perk + .ecl-perk{border-top:1px dashed #e7d3c2;}
      }

      /* популярные торты */
      .ecl-cakes-section{background:#fff8f2;padding:66px 0 74px;}
      .ecl-cakes{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:36px;}
      @media(max-width:1199px){.ecl-cakes{grid-template-columns:repeat(2,1fr);}}
      @media(max-width:575px){.ecl-cakes{grid-template-columns:1fr;}}
      .ecl-cake{background:#fff;border:1px solid #f0e4da;border-radius:16px;overflow:hidden;display:flex;flex-direction:column;text-align:center;transition:transform .3s ease,box-shadow .3s ease;}
      .ecl-cake:hover{transform:translateY(-6px);box-shadow:0 24px 44px -20px rgba(47,47,58,.28);}
      .ecl-cake-img{position:relative;display:block;overflow:hidden;}
      .ecl-cake-img img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;transition:transform .45s ease;}
      .ecl-cake:hover .ecl-cake-img img{transform:scale(1.06);}
      .ecl-cake-weight{position:absolute;top:12px;right:12px;background:rgba(47,47,58,.85);color:#fff;font-size:12.5px;line-height:1;padding:6px 11px;border-radius:20px;}
      .ecl-cake-body{padding:18px 18px 22px;display:flex;flex-direction:column;gap:10px;flex:1;}
      .ecl-cake-title{font-size:17px;margin:0;line-height:1.35;flex:1;}
      .ecl-cake-title a{color:#2f2f3a;}
      .ecl-cake-title a:hover{color:#b9764a;}
      .ecl-cake-price{font-family:'Yeseva One',serif;color:#b9764a;font-size:20px;}
      .ecl-cake .ecart-add{width:100%;}
      .ecl-cakes-more{text-align:center;margin-top:40px;}

      /* шаги */
      .ecl-steps-section{padding:70px 0 60px;}
      


/* ============================================================
 * Мобильное выравнивание иконок полей по центру текста
 * (на узких экранах глиф MDI оптически садится ниже строки)
 * ============================================================ */
@media (max-width: 767px) {
  #ecoDataForm .eco-ficon { top: 25px; }
  #ecoDataForm .eco-ficon-select { top: 30px; } /* текст Select2 центрируется ниже — опускаем иконку часов на её уровень */
  #eacc .eacc-ficon { top: 26px; }
  #eacc .eacc-ficon.mdi-cake-variant { top: 23px; }
  #eacc .eacc-fl .eacc-eye { top: 26px; }
  .rd-mailform .ct-ficon { top: 25px; }
}
