
/* =========================
   MARIPOSA AI CHAT WIDGET
   Standalone: does not affect page layout
========================= */
#mariposa-ai-chat-root{
  position:fixed;
  right:22px;
  bottom:88px;
  z-index:99999;
  font-family:'Inter', Arial, sans-serif;
}
.mariposa-chat-button{
  width:58px;
  height:58px;
  border-radius:50%;
  border:none;
  background:linear-gradient(135deg,#c8a96a,#b89658);
  color:#fff;
  box-shadow:0 10px 30px rgba(0,0,0,.28);
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  transition:transform .25s ease, box-shadow .25s ease;
}
.mariposa-chat-button:hover{
  transform:translateY(-3px);
  box-shadow:0 14px 36px rgba(0,0,0,.34);
}
.mariposa-chat-button svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:2;}
.mariposa-chat-panel{
  position:absolute;
  right:0;
  bottom:74px;
  width:360px;
  max-width:calc(100vw - 32px);
  height:520px;
  max-height:calc(100vh - 130px);
  background:#fff;
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 20px 60px rgba(0,0,0,.32);
  display:none;
  flex-direction:column;
  border:1px solid rgba(200,169,106,.35);
}
.mariposa-chat-panel.open{display:flex;}
.mariposa-chat-header{
  background:#1f1f1f;
  color:#fff;
  padding:15px 16px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.mariposa-chat-title{font-size:15px;font-weight:600;line-height:1.25;}
.mariposa-chat-subtitle{font-size:11px;color:#d7c291;margin-top:2px;font-weight:400;}
.mariposa-chat-close{
  border:none;
  background:transparent;
  color:#fff;
  font-size:24px;
  cursor:pointer;
  line-height:1;
}
.mariposa-chat-messages{
  flex:1;
  padding:14px;
  overflow-y:auto;
  background:#f7f6f3;
}
.mariposa-chat-message{
  max-width:85%;
  margin:0 0 10px 0;
  padding:10px 12px;
  border-radius:14px;
  font-size:13px;
  line-height:1.45;
  white-space:pre-wrap;
  word-wrap:break-word;
}
.mariposa-chat-message.bot{
  background:#fff;
  color:#333;
  border:1px solid rgba(0,0,0,.06);
  border-bottom-left-radius:4px;
}
.mariposa-chat-message.user{
  margin-left:auto;
  background:#c8a96a;
  color:#fff;
  border-bottom-right-radius:4px;
}
.mariposa-chat-typing{
  display:none;
  color:#777;
  font-size:12px;
  padding:0 14px 9px;
  background:#f7f6f3;
}
.mariposa-chat-inputbar{
  display:flex;
  gap:8px;
  padding:12px;
  background:#fff;
  border-top:1px solid rgba(0,0,0,.08);
}
.mariposa-chat-inputbar input{
  flex:1;
  border:1px solid #ddd;
  border-radius:999px;
  padding:11px 13px;
  font-size:13px;
  outline:none;
}
.mariposa-chat-inputbar input:focus{border-color:#c8a96a;}
.mariposa-chat-send{
  border:none;
  background:#c8a96a;
  color:#fff;
  padding:0 16px;
  border-radius:999px;
  cursor:pointer;
  font-size:13px;
  font-weight:600;
}
.mariposa-chat-send:disabled{opacity:.55;cursor:not-allowed;}
.mariposa-chat-note{
  font-size:10px;
  color:#777;
  text-align:center;
  padding:0 12px 10px;
  background:#fff;
}
@media(max-width:600px){
  #mariposa-ai-chat-root{right:16px;bottom:76px;}
  .mariposa-chat-panel{
    width:calc(100vw - 24px);
    height:70vh;
    right:-4px;
    bottom:70px;
  }
  .mariposa-chat-button{width:54px;height:54px;}
}


/* === Mariposa v17 verified hard fixes === */

/* Header tényleges osztályai */
.header,
.header .topbar,
.header .menu,
.topbar,
.menu{
  background-color:#f4eddf !important;
  background-image:
    url("data:image/svg+xml,%3Csvg width='180' height='130' viewBox='0 0 180 130' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' stroke='%23c8a96a' stroke-width='1.1' opacity='.20'%3E%3Cpath d='M90 65 C68 28 28 28 32 65 C36 102 70 88 90 65Z'/%3E%3Cpath d='M90 65 C112 28 152 28 148 65 C144 102 110 88 90 65Z'/%3E%3Cpath d='M90 48 L90 92'/%3E%3C/g%3E%3C/svg%3E") !important;
  background-size:300px 215px !important;
}

/* A konkrét HU | EN + Foglalás blokk */
.lang{
  position:absolute !important;
  right:110px !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  white-space:nowrap !important;
  z-index:10001 !important;
}

.lang a{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
}

.header-booking-btn{
  margin-left:8px !important;
  padding:10px 16px !important;
  max-width:170px !important;
  white-space:nowrap !important;
}

/* Robot Tündi valódi konténere + felfelé nyíl valódi azonosítók */
#mariposa-ai-chat-root{
  right:42px !important;
  left:auto !important;
  bottom:92px !important;
}

#scrollTopBtn,
.scroll-top,
.back-to-top,
.to-top,
#backToTop{
  right:42px !important;
  left:auto !important;
}

/* Az oldal háttérmintája ténylegesen látszódjon */
html, body{
  background-color:#f4eddf !important;
  background-image:
    url("data:image/svg+xml,%3Csvg width='220' height='160' viewBox='0 0 220 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' stroke='%23b99757' stroke-width='1.25' opacity='.24'%3E%3Cpath d='M110 78 C82 35 32 30 36 76 C40 122 86 102 110 78Z'/%3E%3Cpath d='M110 78 C138 35 188 30 184 76 C180 122 134 102 110 78Z'/%3E%3Cpath d='M110 78 C86 110 62 144 102 136 C122 132 119 98 110 78Z'/%3E%3Cpath d='M110 78 C134 110 158 144 118 136 C98 132 101 98 110 78Z'/%3E%3Cpath d='M110 58 L110 110'/%3E%3C/g%3E%3C/svg%3E") !important;
  background-size:360px 260px !important;
  background-repeat:repeat !important;
  overflow-x:hidden !important;
}

/* Fehér szakaszok krémesítése */
.intro,
.about,
.welcome-section,
.content-section,
.white-section,
.gallery,
.rooms-section,
.all-rooms-section,
.attractions-two-col,
.room-category-section{
  background-color:transparent !important;
}

/* Footerben ne jelenjen meg duplikált nyíl/szöveg */
.footer-col.social p,
.social p,
.social-icons{
  font-size:0 !important;
}

.footer-col.social a,
.social a,
.social-icons a{
  font-size:0 !important;
  color:transparent !important;
  text-decoration:none !important;
}

.footer-col.social svg,
.social svg,
.social-icons svg{
  width:26px !important;
  height:26px !important;
  margin:0 8px !important;
}

@media(max-width:900px){
  .lang{
    right:18px !important;
    gap:7px !important;
  }

  .header-booking-btn{
    padding:8px 11px !important;
    font-size:12px !important;
  }

  #mariposa-ai-chat-root,
  #scrollTopBtn,
  .scroll-top,
  .back-to-top,
  .to-top,
  #backToTop{
    right:18px !important;
  }
}


/* === Mariposa v19 hero/header/scrolltop fix === */

/* Fejléc vissza természetes elrendezésre */
.header,
.site-header,
.main-header,
header.header {
  position:relative !important;
  width:100% !important;
  max-width:100% !important;
  left:auto !important;
  right:auto !important;
  transform:none !important;
  background:#f4eddf !important;
}

.header .topbar,
.topbar {
  position:relative !important;
  width:100% !important;
  min-height:86px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:10px 28px !important;
  background:#f4eddf !important;
}

.header .logo,
.logo {
  position:relative !important;
  left:auto !important;
  right:auto !important;
  top:auto !important;
  transform:none !important;
  margin:0 auto !important;
  text-align:center !important;
  z-index:2 !important;
}

.header .lang,
.lang {
  position:absolute !important;
  right:42px !important;
  top:50% !important;
  left:auto !important;
  transform:translateY(-50%) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:10px !important;
  white-space:nowrap !important;
  z-index:5 !important;
}

.header .menu,
.menu {
  position:relative !important;
  width:100% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:34px !important;
  padding:14px 24px !important;
  background:#f4eddf !important;
  left:auto !important;
  right:auto !important;
  transform:none !important;
}

.header .menu a,
.menu a {
  position:relative !important;
  left:auto !important;
  right:auto !important;
  transform:none !important;
}

.header-booking-btn,
.booking-btn,
.book-btn,
a[href*="sabeeapp"],
a[href*="ibe.sabeeapp"] {
  white-space:nowrap !important;
}

/* Hero kép erős visszakötése */
.hero {
  min-height:520px !important;
  background-image:url('images/hero.jpg') !important;
  background-size:cover !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
  background-color:#c9bda4 !important;
}

.hero::before,
.hero:empty::before {
  display:none !important;
  content:none !important;
}

.hero img,
.hero picture img,
.hero-slide img,
.hero-slider img,
.slideshow img {
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
}

/* Robot Tündi és felfelé nyíl beljebb, egymás alatt */
#mariposa-ai-chat-root,
.ai-chat-button,
.chat-toggle,
.tundi-chat-button,
#aiChatButton,
#chatToggle,
.chat-fab,
.floating-chat {
  right:28px !important;
  left:auto !important;
  z-index:9999 !important;
}

#scrollTopBtn,
.back-to-top,
.scroll-top,
.to-top,
#backToTop {
  position:fixed !important;
  right:28px !important;
  left:auto !important;
  bottom:28px !important;
  z-index:9998 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:54px !important;
  height:54px !important;
  border-radius:50% !important;
  border:0 !important;
  background:#c8a96a !important;
  color:white !important;
  font-size:26px !important;
  cursor:pointer !important;
  box-shadow:0 8px 24px rgba(0,0,0,.22) !important;
}

/* ha a chat fixen alul van, maradjon felette */
#mariposa-ai-chat-root {
  bottom:96px !important;
}

/* Ne legyen oldalirányú elcsúszás */
html, body {
  overflow-x:hidden !important;
  max-width:100vw !important;
}

@media(max-width:900px){
  .header .topbar,.topbar {
    min-height:74px !important;
    padding:8px 16px !important;
  }
  .header .lang,.lang {
    right:14px !important;
    gap:7px !important;
    font-size:13px !important;
  }
  .header-booking-btn,
  .booking-btn,
  .book-btn {
    padding:8px 10px !important;
    font-size:12px !important;
  }
  .header .menu,.menu {
    gap:20px !important;
    padding:12px 14px !important;
    overflow-x:auto !important;
  }
  .hero {
    min-height:430px !important;
  }
  #mariposa-ai-chat-root,
  .ai-chat-button,
  .chat-toggle,
  .tundi-chat-button,
  #aiChatButton,
  #chatToggle,
  .chat-fab,
  .floating-chat,
  #scrollTopBtn,
  .back-to-top,
  .scroll-top,
  .to-top,
  #backToTop {
    right:18px !important;
  }
}
