/* Isolated floating navigation and FAQ assistant. */
#mi-floating-tools {position:fixed;right:20px;bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:1040;display:flex;flex-direction:column;align-items:center;gap:10px;font-family:Poppins,Arial,sans-serif;font-size:14px;line-height:1.5;color:#252641;text-align:start;color-scheme:light}
#mi-floating-tools,#mi-floating-tools * {box-sizing:border-box}
#mi-floating-tools [hidden] {display:none!important}
#mi-floating-tools button {font:inherit;cursor:pointer;text-transform:none;letter-spacing:normal;margin:0;box-shadow:none}
#mi-floating-tools .mi-tools-button {display:flex;align-items:center;justify-content:center;flex:none;width:52px;height:52px;min-height:44px;padding:0;border:1px solid var(--mi-tools-accent);border-radius:50%;background:var(--mi-tools-accent);color:#fff;box-shadow:0 5px 18px #14213d24;transition:transform .16s,box-shadow .16s}
#mi-floating-tools .mi-tools-button:hover {transform:translateY(-2px);box-shadow:0 7px 22px #14213d30}
#mi-floating-tools .mi-tools-up {width:44px;height:44px;background:#fff;color:var(--mi-tools-accent)}
#mi-floating-tools svg {display:block;flex:none;width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
#mi-floating-tools button:focus-visible,#mi-floating-tools a:focus-visible,#mi-floating-tools input:focus-visible {outline:3px solid var(--mi-tools-accent)!important;outline-offset:3px}
#mi-floating-tools .mi-chat-panel {position:absolute;right:68px;bottom:0;width:360px;height:min(510px,calc(100dvh - 40px));display:flex;flex-direction:column;overflow:hidden;border:1px solid #e1e4ed;border-radius:18px;background:#fff;box-shadow:0 14px 50px #14213d26;animation:mi-chat-enter .16s ease-out}
#mi-floating-tools .mi-chat-header {display:flex;align-items:center;gap:12px;padding:16px;border-bottom:1px solid #e8eaf0;background:#fff;flex:none}
#mi-floating-tools .mi-chat-avatar {display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;background:var(--mi-tools-accent);color:#fff}
#mi-floating-tools .mi-chat-header-copy {flex:1;min-width:0}
#mi-floating-tools h2 {font:600 15px/1.4 Poppins,Arial,sans-serif;color:#252641;margin:0;padding:0}
#mi-floating-tools .mi-chat-subtitle {display:block;font-size:11px;color:#74798e;margin-top:3px}
#mi-floating-tools .mi-chat-close {display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:7px;border:0;border-radius:9px;background:#f3f5f8;color:#606579;flex:none}
#mi-floating-tools .mi-chat-log {flex:1;min-height:70px;overflow:auto;overscroll-behavior:contain;padding:16px;display:flex;flex-direction:column;align-items:flex-start;gap:10px;background:#fafbfe}
#mi-floating-tools .mi-chat-message {max-width:94%;padding:11px 13px;border:1px solid #e8eaf0;border-radius:13px 13px 13px 4px;background:#fff;color:#34384d;overflow-wrap:anywhere;font-size:13px;line-height:1.65;flex:none}
#mi-floating-tools .mi-chat-message p {font:inherit;color:inherit;margin:0;white-space:pre-line}
#mi-floating-tools .mi-chat-message.is-user {align-self:flex-end;background:var(--mi-tools-accent);color:#fff;border-color:var(--mi-tools-accent);border-radius:13px 13px 4px 13px}
#mi-floating-tools .mi-chat-message a {display:inline-flex;align-items:center;gap:6px;margin-top:9px;color:var(--mi-tools-accent);font-size:12px;font-weight:600;text-decoration:underline;text-underline-offset:3px}
#mi-floating-tools .mi-chat-topics {display:flex;gap:7px;flex-wrap:wrap;padding:12px 14px;border-top:1px solid #e8eaf0;background:#fff;max-height:120px;overflow:auto;flex:none}
#mi-floating-tools .mi-chat-topic {min-height:34px;padding:7px 10px;border:1px solid #e1e4ed;border-radius:9px;background:#f6f8fb;color:var(--mi-tools-accent);font-size:11px;font-weight:500;line-height:18px}
#mi-floating-tools .mi-chat-topic:hover {border-color:var(--mi-tools-accent);background:#fff}
#mi-floating-tools .mi-chat-form {display:flex;align-items:center;gap:8px;margin:0;padding:12px 14px;border-top:1px solid #e8eaf0;background:#fff;flex:none}
#mi-floating-tools .mi-chat-input {display:block;flex:1;min-width:0;width:auto;height:42px;min-height:42px;margin:0;padding:10px 12px;border:1px solid #e1e4ed;border-radius:10px;background:#fff;color:#252641;box-shadow:none;font:400 13px/20px Poppins,Arial,sans-serif}
#mi-floating-tools .mi-chat-send {display:flex;align-items:center;justify-content:center;width:42px;height:42px;padding:10px;border:0;border-radius:10px;background:var(--mi-tools-accent);color:#fff;flex:none}
#mi-floating-tools.mi-tools--menu {bottom:calc(100px + env(safe-area-inset-bottom,0px));right:16px}
body.mi-floating-enabled #backtotop,body.mi-floating-enabled .telegram-float {display:none!important}
@keyframes mi-chat-enter {from {opacity:0;transform:translateY(6px)}to {opacity:1;transform:translateY(0)}}
@media(max-width:575px){
 #mi-floating-tools {right:14px;bottom:calc(16px + env(safe-area-inset-bottom,0px));gap:8px}
 #mi-floating-tools .mi-chat-panel {position:fixed;right:12px;bottom:calc(132px + env(safe-area-inset-bottom,0px));width:calc(100% - 24px);height:min(470px,calc(100dvh - 148px - env(safe-area-inset-bottom,0px)));border-radius:16px}
 #mi-floating-tools .mi-chat-header {padding:12px}
 #mi-floating-tools .mi-chat-topics {max-height:98px;padding:10px}
 #mi-floating-tools .mi-chat-input {font-size:16px}
}
@media(prefers-reduced-motion:reduce){#mi-floating-tools .mi-chat-panel {animation:none}#mi-floating-tools .mi-tools-button {transition:none}}
@media print {#mi-floating-tools {display:none!important}}


/* The shared dock replaces legacy floating controls. */
body.mi-floating-enabled #scrollToTopBtn,body.mi-floating-enabled #scrollTopBtn,body.mi-floating-enabled #mt23ScrollTop,body.mi-floating-enabled #backtotop,body.mi-floating-enabled .telegram-float{display:none!important;visibility:hidden!important;pointer-events:none!important}

/* Menu actions share a size, baseline and theme palette; panels keep their chat dock. */
body[data-menu-theme] {--mi-fab-size:48px;--mi-fab-edge:16px;--mi-fab-bottom:20px;--mi-fab-radius:50%;--mi-fab-bg:#fff;--mi-fab-fg:var(--mi-menu-accent,#333);--mi-fab-line:rgba(128,128,128,.28);--mi-fab-shadow:0 4px 16px #0002;}
body:is([data-menu-theme="modern-theme-18"],[data-menu-theme="modern-theme-19"]) {--mi-fab-radius:14px;--mi-fab-fg:var(--mainColorOne,#222);}
body[data-menu-theme="modern-theme-19"] {--mi-fab-bottom:90px;}
body:is([data-menu-theme="modern-theme-20"],[data-menu-theme="modern-theme-21"]) {--mi-fab-bg:#1d1d1d;--mi-fab-fg:#fbb03b;--mi-fab-line:#fbb03b66;--mi-fab-radius:12px;}
body:is([data-menu-theme="modern-theme-20"],[data-menu-theme="modern-theme-21"]).light-mode {--mi-fab-bg:#fff;--mi-fab-fg:#805300;--mi-fab-line:#80530055;}
body:is([data-menu-theme="modern-theme-21"],[data-menu-theme="modern-theme-22"]) {--mi-fab-bottom:90px;}
body[data-menu-theme="modern-theme-22"] {--mi-fab-bg:#fff;--mi-fab-fg:#222;--mi-fab-radius:14px;}
body:is([data-menu-theme="modern-theme-23"],[data-menu-theme="modern-theme-24"],[data-menu-theme="modern-theme-25"]) {--mi-fab-bottom:90px;--mi-fab-bg:var(--mt23-card,#fff);--mi-fab-fg:var(--mt23-accent,#b23542);--mi-fab-radius:14px;}
body[data-menu-theme="modern-theme-26"] {--mi-fab-bg:#17140d;--mi-fab-fg:#d4af37;--mi-fab-line:#d4af3780;}
body[data-menu-theme] #mi-floating-tools.mi-tools--menu {right:calc(var(--mi-fab-edge) + env(safe-area-inset-right,0px));bottom:calc(var(--mi-fab-bottom) + env(safe-area-inset-bottom,0px));z-index:90;}
body[data-menu-theme] #mi-floating-tools .mi-tools-up,
body[data-menu-theme] #feedback-widget {box-sizing:border-box;min-width:var(--mi-fab-size);height:var(--mi-fab-size);min-height:var(--mi-fab-size);padding:0;border:1px solid var(--mi-fab-line);border-radius:var(--mi-fab-radius);background:var(--mi-fab-bg);color:var(--mi-fab-fg);box-shadow:var(--mi-fab-shadow);}
body[data-menu-theme] #mi-floating-tools .mi-tools-up {width:var(--mi-fab-size);}
body[data-menu-theme] #feedback-widget {left:calc(var(--mi-fab-edge) + env(safe-area-inset-left,0px));right:auto;bottom:calc(var(--mi-fab-bottom) + env(safe-area-inset-bottom,0px));gap:0;z-index:90;}
body[data-menu-theme] #feedback-widget .feedback-widget__score {width:calc(var(--mi-fab-size) - 2px);height:calc(var(--mi-fab-size) - 2px);border-radius:inherit;background:transparent;color:inherit;}
body[data-menu-theme] #feedback-widget .feedback-widget__score i {font-size:20px;line-height:1;}
body[data-menu-theme] #feedback-widget.is-expanded .feedback-widget__stars {margin-inline-end:12px;}
body[data-menu-theme] #mi-floating-tools .mi-tools-up svg {width:24px;height:24px;}
body[data-menu-theme="modern-theme-20"]:has(#menuModal.is-open):not(:has(.fullscreen-modal.is-open:not(#menuModal))) :is(#mi-floating-tools.mi-tools--menu,#feedback-widget) {z-index:11010;}
body[data-menu-theme] .feedback-modal {z-index:20000;}
@media(max-width:575px){body[data-menu-theme]{--mi-fab-edge:12px;}}

body[data-menu-theme]:has(.mt23-fab-main[aria-expanded="true"]) #mi-floating-tools.mi-tools--menu {visibility:hidden;}

/* Admin actions occupy their own column beside the assistant. Preserve toggle visibility
   against the shared button-centering rule in panel-theme.css. */
html body.mi-admin-panel.mi-floating-enabled .site-action {
 right:calc(86px + env(safe-area-inset-right,0px));
 bottom:calc(20px + env(safe-area-inset-bottom,0px));
 width:52px;height:52px;
}
html body.mi-admin-panel.mi-floating-enabled .site-action .btn-floating {
 width:52px;height:52px;min-height:52px;padding:0;margin:0;
 align-items:center;justify-content:center;
}
html body.mi-admin-panel .site-action:not(.active)>.back-icon,
html body.mi-admin-panel .site-action.active>.front-icon {display:none!important}
html body.mi-admin-panel .site-action:not(.active)>.front-icon,
html body.mi-admin-panel .site-action.active>.back-icon {display:inline-flex!important}
html body.mi-admin-panel.mi-floating-enabled .site-action-buttons {bottom:64px;left:0;right:0;width:52px}
html body.mi-admin-panel.mi-floating-enabled .site-action-buttons .btn {margin:0 0 10px}
html body.mi-admin-panel.mi-floating-enabled #mi-floating-tools {right:calc(20px + env(safe-area-inset-right,0px))}
html body.mi-admin-panel:has(#mi-chat-panel:not([hidden])) .site-action {visibility:hidden;pointer-events:none}
@media(max-width:575px){
 html body.mi-admin-panel.mi-floating-enabled #mi-floating-tools {right:calc(14px + env(safe-area-inset-right,0px))}
 html body.mi-admin-panel.mi-floating-enabled .site-action {right:calc(80px + env(safe-area-inset-right,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px))}
}

/* Theme 4 reserves the bottom row for the optional basket. */
body[data-menu-theme="modern-theme-18"]:has(#view-order-button){--mi-fab-bottom:90px;}
body[data-menu-theme="modern-theme-18"] :is(#ti18-view-order-wrapper,#view-order-wrapper){bottom:calc(14px + env(safe-area-inset-bottom,0px))!important;max-width:calc(100% - 28px);}

/* The assistant follows the existing site gradient. These selectors belong only
   to the chat; back-to-top and restaurant actions retain their native palette. */
@media screen {
 #mi-floating-tools :is(.mi-chat-launch,.mi-chat-panel) {
  --mi-chat-gradient:var(--mi-gradient-action,linear-gradient(120deg,#102b4a,#164669 64%,#176e82));
  --mi-chat-gradient-hover:var(--mi-gradient-action-hover,linear-gradient(120deg,#153654,#1a5275 64%,#207e91));
 }
 #mi-floating-tools :is(.mi-chat-launch,.mi-chat-header,.mi-chat-avatar,.mi-chat-close,.mi-chat-topic,.mi-chat-send,.mi-chat-message.is-user) {
  background-color:#102b4a!important;background-image:var(--mi-chat-gradient)!important;
  color:#fff!important;border-color:#315a73!important;
 }
 #mi-floating-tools .mi-chat-header h2 {color:#fff}
 #mi-floating-tools .mi-chat-header .mi-chat-subtitle {color:#d8eaf4}
 #mi-floating-tools :is(.mi-chat-launch,.mi-chat-close,.mi-chat-topic,.mi-chat-send):hover:not(:disabled):not([aria-disabled="true"]) {
  background-image:var(--mi-chat-gradient-hover)!important;color:#fff!important;
 }
 #mi-floating-tools :is(.mi-chat-launch,.mi-chat-close,.mi-chat-topic,.mi-chat-send):is([aria-pressed="true"],[aria-selected="true"]) {
  background-image:var(--mi-chat-gradient-hover)!important;color:#fff!important;
  box-shadow:inset 0 0 0 2px #d6efff!important;
 }
 #mi-floating-tools :is(.mi-chat-launch,.mi-chat-close,.mi-chat-topic,.mi-chat-send):is(:disabled,[aria-disabled="true"]) {
  background-image:linear-gradient(120deg,#536272,#5d7282)!important;
  color:#fff!important;border-color:#7b8c99!important;opacity:.55;cursor:not-allowed;
 }
 #mi-floating-tools :is(.mi-chat-launch,.mi-chat-close,.mi-chat-topic,.mi-chat-send):focus-visible {
  outline:3px solid #00518f!important;outline-offset:3px;
  box-shadow:0 0 0 6px #fff!important;
 }
}
