
/* ===================================================================
   МОБИЛЬНОЕ МЕНЮ (drawer) — Flo-Allo
   Стили для menu.mobile.html (новая версия)
   =================================================================== */

:root{
    --fm-brand:#c66e9d;
    --fm-brand-dark:#a94d80;
    --fm-brand-light:#ffc0e1;
    --fm-accent:#ca06cc;
    --fm-ink:#1f1a1e;
    --fm-gray:#6b6269;
    --fm-line:#f0e7ec;
}

/* —— кнопка-бургер (заменяет .e-menu-mobile__open) —— */
.fm{display:none;float:left;position:relative}
@media (max-width:720px){
    .fm{display:block}
    /* Старое информационное меню заменено новым drawer.
       Отдельную кнопку «Каталог товаров» намеренно НЕ скрываем. */
    .e-menu-mobile{display:none!important}
}
.fm-burger{width:44px;height:44px;line-height:44px;border:0;background:none;box-shadow:none;display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;cursor:pointer;border-radius:10px;padding:0}
@media (max-width:720px){.fm-burger{display:flex}}
.fm-burger span{display:block;width:22px;height:2px;background:var(--fm-brand);border-radius:2px}
.fm-burger:active{background:var(--fm-brand-light)}

/* —— затемнение —— */
.fm-overlay{position:fixed;inset:0;background:rgba(31,26,30,.45);opacity:0;pointer-events:none;transition:.25s;z-index:1090}
.fm-overlay._show{opacity:1;pointer-events:auto}
body.fm-lock{overflow:hidden!important}

/* —— drawer —— */
.fm-drawer{position:fixed;top:0;left:0;bottom:0;width:88%;max-width:340px;background:#fff;z-index:1100;transform:translateX(-102%);transition:transform .28s cubic-bezier(.2,.7,.3,1);display:flex;flex-direction:column;border-radius:0 18px 18px 0;overflow:hidden}
.fm-drawer._open{transform:none}

.fm-drawer__hdr{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 16px;background:linear-gradient(135deg,var(--fm-brand),var(--fm-accent));color:#fff;flex:none}
.fm-drawer__logo{display:flex;align-items:center;text-decoration:none;min-width:0}
.fm-drawer__logo-bg{display:flex;align-items:center;background:#fff;border-radius:9px;padding:4px 8px}
.fm-drawer__logo img{height:28px;max-width:160px;object-fit:contain}
.fm-drawer__logo-text{font-weight:800;font-size:19px;color:#fff;letter-spacing:.3px}
.fm-drawer__logo-text small{font-size:12px;font-weight:800;opacity:.85}
.fm-drawer__close{width:38px;height:38px;line-height:38px;padding:0;border:0;background:rgba(255,255,255,.18);box-shadow:none;color:#fff;font-size:16px;border-radius:50%;cursor:pointer;flex:none}

.fm-drawer__scroll{flex:1;overflow-y:auto;padding:14px 14px 20px;-webkit-overflow-scrolling:touch}
.fm-section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 4px 10px}
.fm-section-heading span{font-size:18px;font-weight:700;color:var(--fm-ink)}
.fm-section-heading a{font-size:12px;color:var(--fm-brand-dark);text-decoration:none;white-space:nowrap;margin-left:auto}

/* —— каталог: карточки-аккордеоны —— */
.fm-cat{display:flex;flex-direction:column;gap:8px}
.fm-cat__item{background:#faf5f8;border-radius:14px;overflow:hidden}
.fm-cat__row{display:flex;align-items:center;gap:12px;padding:12px 14px;cursor:pointer}
.fm-cat__row:active{background:var(--fm-brand-light)}
.fm-cat__ico{width:40px;height:40px;border-radius:11px;background:#fff;display:flex;align-items:center;justify-content:center;font-size:19px;flex:none;box-shadow:0 2px 6px rgba(198,110,157,.14)}
.fm-cat__name{flex:1;min-width:0;text-decoration:none;color:var(--fm-ink)}
.fm-cat__name b{display:block;font-size:15px;font-weight:600}
.fm-cat__name small{display:block;font-size:12px;color:var(--fm-gray);margin-top:1px}
.fm-cat__arrow,.fm-cat__arrow:hover,.fm-cat__arrow:focus,.fm-cat__chev{width:36px;height:36px;line-height:36px;border:0!important;background:transparent!important;box-shadow:none!important;padding:0;color:#c9b6c2;font-size:13px;flex:none;text-align:center;text-decoration:none;outline:0}
.fm-cat__item._open .fm-cat__arrow i{transform:rotate(90deg)}
.fm-cat__arrow i{transition:.25s}
.fm-cat__sub{max-height:0;overflow:hidden;transition:max-height .3s ease;background:#fff}
.fm-cat__item._open .fm-cat__sub{max-height:700px}
.fm-cat__sub a{display:block;padding:10px 16px 10px 66px;font-size:14px;color:#4c4349;text-decoration:none;border-top:1px solid var(--fm-line)}
.fm-cat__sub a:active{background:var(--fm-brand-light)}
.fm-cat__sub a._selected{color:var(--fm-brand-dark);font-weight:600}
.fm-cat__sub a.fm-cat__all{color:var(--fm-accent);font-weight:600}

/* —— чипсы быстрых ссылок —— */
.fm-chips{display:flex;flex-wrap:wrap;gap:8px;margin:16px 2px 4px}
.fm-chips a{padding:8px 14px;background:#fff;border:1px solid var(--fm-brand-light);border-radius:20px;font-size:13px;color:var(--fm-brand-dark);text-decoration:none;font-weight:500}
.fm-chips a:active{background:var(--fm-brand-light)}

/* —— секции ссылок —— */
.fm-sect{margin-top:18px}
.fm-sect__ttl{font-size:11px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:#b3a4ad;padding:0 4px 8px}
.fm-sect a{display:flex;align-items:center;gap:12px;padding:12px 6px;font-size:15px;color:var(--fm-ink);text-decoration:none;border-bottom:1px solid var(--fm-line)}
.fm-sect a i{width:16px;color:var(--fm-brand);text-align:center}
.fm-sect a:active,.fm-sect a._selected{color:var(--fm-brand-dark)}

/* —— контакты внизу —— */
.fm-drawer__ftr{border-top:1px solid var(--fm-line);padding:14px 16px calc(14px + env(safe-area-inset-bottom));background:#faf5f8;flex:none}
.fm-phone{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--fm-ink);font-weight:700;font-size:16px}
.fm-phone i{color:var(--fm-brand);font-size:18px}
.fm-phone small{display:block;font-weight:400;font-size:11px;color:var(--fm-gray);margin-top:2px}
.fm-soc{display:flex;gap:8px;margin-top:12px}
.fm-soc a{width:38px;height:38px;border-radius:50%;background:#fff;border:1px solid var(--fm-brand-light);display:flex;align-items:center;justify-content:center;color:var(--fm-brand-dark);font-size:12px;font-weight:700;text-decoration:none}

/* Изоляция от line-height:42px мобильной шапки Euroshop */
.fm-drawer,.fm-drawer *{box-sizing:border-box}
.fm-drawer{line-height:normal}
.fm-drawer__hdr{line-height:normal}
.fm-drawer__scroll{line-height:normal}
.fm-section-heading{line-height:normal}
.fm-section-heading span{line-height:24px}
.fm-section-heading a{line-height:16px}
.fm-cat{line-height:normal}
.fm-cat__row{padding:13px 14px;line-height:normal;min-height:66px}
.fm-cat__ico{line-height:40px}
.fm-cat__name{line-height:normal}
.fm-cat__name b{line-height:20px}
.fm-cat__name small{line-height:16px}
.fm-cat__sub a{line-height:20px}
.fm-chips a{line-height:18px}
.fm-sect a{line-height:20px}
.fm-drawer__ftr{line-height:normal}
.fm-phone{min-height:36px;line-height:normal;align-items:center}
.fm-phone i{line-height:18px;flex:0 0 18px;text-align:center}
.fm-phone span{display:block;line-height:20px;white-space:nowrap}
.fm-phone small{line-height:15px;margin-top:1px;white-space:nowrap}
