.madlac-chat {
  --madlac-chat-accent: #b99a66;
  position: fixed;
  right: 22px;
  bottom: 22px;
  z-index: 99999;
  color: #28231f;
  font: 14px/1.5 Arial, sans-serif;
}

.madlac-chat *, .madlac-chat *::before, .madlac-chat *::after { box-sizing: border-box; }
.madlac-chat button {
  min-height: 0 !important;
  margin: 0 !important;
  line-height: 1.25 !important;
  letter-spacing: normal !important;
  text-transform: none !important;
  box-shadow: none !important;
  font-family: Arial, sans-serif !important;
  cursor: pointer;
}
.madlac-chat button:focus-visible, .madlac-chat input:focus-visible {
  outline: 2px solid var(--madlac-chat-accent) !important;
  outline-offset: 3px;
}
.madlac-chat button:disabled { opacity: .6; cursor: wait; }

.madlac-chat__toggle {
  display: inline-flex;
  align-items: center;
  gap: 11px;
  padding: 8px 18px 8px 8px !important;
  border: 1px solid var(--madlac-chat-accent) !important;
  border-radius: 999px !important;
  background: #1d1a18 !important;
  color: #f8f3e9 !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  white-space: nowrap;
  box-shadow: 0 10px 30px rgba(25, 18, 9, .2) !important;
  transition: transform .2s ease, box-shadow .2s ease;
}
.madlac-chat__toggle::before {
  content: '✧';
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  border-radius: 50%;
  background: linear-gradient(140deg, #efdfba, #b89a63);
  color: #29231b;
  font: 24px/1 Georgia, serif;
}
.madlac-chat__toggle:hover { transform: translateY(-2px); box-shadow: 0 14px 34px rgba(25, 18, 9, .25) !important; }
.madlac-chat__toggle[hidden] { display: none !important; }

.madlac-chat__panel {
  position: absolute;
  right: 0;
  bottom: 0;
  display: flex;
  flex-direction: column;
  width: min(378px, calc(100vw - 44px));
  height: min(520px, calc(100dvh - 44px));
  overflow: hidden;
  border: 1px solid #d9cfbd;
  border-radius: 18px;
  background: #fdfbf7;
  box-shadow: 0 24px 70px rgba(35, 27, 17, .22), 0 4px 16px rgba(35, 27, 17, .08);
}
.madlac-chat__panel[hidden], .madlac-chat__body[hidden] { display: none !important; }

.madlac-chat__header {
  display: flex;
  align-items: center;
  gap: 14px;
  flex: 0 0 auto;
  min-height: 82px;
  padding: 14px 16px 14px 18px;
  border-top: 2px solid var(--madlac-chat-accent);
  border-bottom: 1px solid #e9e1d3;
  background: linear-gradient(115deg, #fffefa, #f7f0e4);
  color: #29241f;
}
.madlac-chat__header::before {
  content: '';
  display: block;
  width: 94px;
  height: 34px;
  flex: 0 0 94px;
  background: url('/wp-content/uploads/2026/03/MADLAC-LOGO-LIFT-1-1.png.webp') center / contain no-repeat;
}
.madlac-chat__header > div { flex: 1; min-width: 0; }
.madlac-chat__header strong, .madlac-chat__header span { display: block; }
.madlac-chat__header strong { color: #28231f; font-size: 13px; font-weight: 700; line-height: 1.3; }
.madlac-chat__header span { margin-top: 3px; color: #817260; font-size: 11px; line-height: 1.3; }
.madlac-chat__close {
  display: grid !important;
  place-items: center;
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
  padding: 0 !important;
  border: 1px solid #e2d8c8 !important;
  border-radius: 50% !important;
  background: #fffdfa !important;
  color: #5d5347 !important;
  font-size: 22px !important;
}
.madlac-chat__close:hover { background: #f3eadb !important; }

.madlac-chat__tabs {
  display: flex;
  flex: 0 0 auto;
  padding: 0 18px;
  border-bottom: 1px solid #e8e0d5;
  background: #fdfbf7;
}
.madlac-chat__tabs button {
  flex: 1;
  padding: 12px 4px 11px !important;
  border: 0 !important;
  border-bottom: 2px solid transparent !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #84796b !important;
  font-size: 12px !important;
  font-weight: 600 !important;
}
.madlac-chat__tabs button[aria-selected=true] { border-bottom-color: var(--madlac-chat-accent) !important; color: #2b2520 !important; }
.madlac-chat__tabs button:hover { color: #2b2520 !important; }

.madlac-chat__body {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  min-height: 0;
  gap: 12px;
  padding: 17px 18px 15px;
}
.madlac-chat__messages {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  gap: 10px;
  min-height: 0;
  overflow: auto;
  scrollbar-width: thin;
}
.madlac-chat__message {
  align-self: flex-start;
  max-width: 93%;
  padding: 11px 13px;
  overflow-wrap: anywhere;
  border: 1px solid #e7dfd2;
  border-radius: 14px 14px 14px 4px;
  background: #f4eee5;
  color: #373029;
  font-size: 13px;
  line-height: 1.5;
}
.madlac-chat__message--user {
  align-self: flex-end;
  border-color: #25211e;
  border-radius: 14px 14px 4px 14px;
  background: #25211e;
  color: #fffaf1;
}
.madlac-chat__message p { margin: 0; white-space: pre-wrap; }
.madlac-chat__message a { display: block; margin-top: 8px; color: #74532e; text-decoration: underline; text-underline-offset: 2px; }
.madlac-chat__message--user a { color: #e9d2a7; }
.madlac-chat__message--waiting { display: inline-flex; align-items: center; gap: 9px; color: #665a4c; }
.madlac-chat__waiting-dots { display: inline-flex; align-items: center; gap: 3px; height: 13px; }
.madlac-chat__waiting-dots i { width: 4px; height: 4px; border-radius: 50%; background: var(--madlac-chat-accent); animation: madlac-chat-pulse 1.1s ease-in-out infinite; }
.madlac-chat__waiting-dots i:nth-child(2) { animation-delay: .15s; }
.madlac-chat__waiting-dots i:nth-child(3) { animation-delay: .3s; }
@keyframes madlac-chat-pulse { 0%, 65%, 100% { opacity: .45; transform: translateY(0); } 30% { opacity: 1; transform: translateY(-3px); } }
.madlac-chat__suggestions { display: flex; flex-wrap: wrap; align-content: flex-start; gap: 7px; padding-top: 5px; }
.madlac-chat__suggestions span { flex-basis: 100%; margin-bottom: 2px; color: #877766; font-size: 11px; }
.madlac-chat__suggestions button {
  padding: 7px 10px !important;
  border: 1px solid var(--madlac-chat-accent) !important;
  border-radius: 999px !important;
  background: #fffdfa !important;
  color: #5c4930 !important;
  font-size: 11px !important;
  font-weight: 500 !important;
}
.madlac-chat__suggestions button:hover { border-color: #a78655 !important; background: #f7efdf !important; }

.madlac-chat__form, .madlac-chat__order-form { margin: 0; }
.madlac-chat__form label, .madlac-chat__order-form label {
  display: block;
  margin: 0 0 7px;
  color: #655949;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.3;
}
.madlac-chat__form > div { display: flex; align-items: stretch; gap: 8px; }
.madlac-chat input {
  width: 100%;
  min-width: 0;
  height: 42px;
  margin: 0 !important;
  padding: 0 12px !important;
  border: 1px solid #d7cbbb !important;
  border-radius: 9px !important;
  background: #fff !important;
  color: #28231f !important;
  box-shadow: none !important;
  font: 13px/1.3 Arial, sans-serif !important;
}
.madlac-chat input::placeholder { color: #9b9083; }
.madlac-chat__form button, .madlac-chat__order-form button {
  min-width: 64px;
  padding: 10px 13px !important;
  border: 1px solid #25211e !important;
  border-radius: 9px !important;
  background: #25211e !important;
  color: #fffaf1 !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  white-space: nowrap;
}
.madlac-chat__form button:hover, .madlac-chat__order-form button:hover { background: #45382c !important; }
.madlac-chat__order-form { display: grid; gap: 4px; }
.madlac-chat__order-form[hidden], .madlac-chat__body > p[hidden] { display: none !important; }
.madlac-chat__order-form input { margin-bottom: 8px !important; }
.madlac-chat__order-form button { margin-top: 5px !important; min-height: 42px !important; }
.madlac-chat__body[data-panel="order"] { overflow-y: auto; scrollbar-width: thin; }
.madlac-chat__order-form { order: 2; flex: 0 0 auto; }
.madlac-chat__order-result { order: 1; flex: 0 0 auto; min-height: 0; }
.madlac-chat__order-result:empty { display: none; }
.madlac-chat__order-result .madlac-chat__message { max-width: 100%; }
.madlac-chat__order-card { padding: 18px; border: 1px solid #ded1bd; border-radius: 15px; background: linear-gradient(155deg, #fffdf8, #f6efe3); box-shadow: 0 8px 24px rgba(45, 34, 19, .07); }
.madlac-chat__order-number { display: block; margin-bottom: 16px; color: #826b4c; font-size: 11px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.madlac-chat__order-label { display: block; color: #6b5c49; font-size: 12px; }
.madlac-chat__order-status { display: block; margin-top: 2px; color: #29231f; font: 23px/1.25 Georgia, serif; overflow-wrap: anywhere; }
.madlac-chat__order-details { display: grid; gap: 3px; margin-top: 18px; padding: 13px 14px; border: 1px solid #e8ddcc; border-radius: 10px; background: #fffefa; overflow-wrap: anywhere; }
.madlac-chat__order-details span { color: #746755; font-size: 11px; }
.madlac-chat__order-details strong { margin-bottom: 6px; color: #2d2823; font-size: 13px; font-weight: 600; }
.madlac-chat__order-details strong:last-child { margin-bottom: 0; }
.madlac-chat__order-details p { margin: 0; color: #5f5549; font-size: 12px; }
.madlac-chat__order-track { display: block; margin-top: 14px; padding: 11px 14px; border-radius: 9px; background: #2a2520; color: #fffaf1 !important; font-size: 12px; font-weight: 700; text-align: center; text-decoration: none; }
.madlac-chat__order-track:hover { background: #473929; }
.madlac-chat__order-again { display: block; width: 100%; margin-top: 12px !important; padding: 8px !important; border: 0 !important; background: transparent !important; color: #6f5537 !important; font-size: 11px !important; font-weight: 600 !important; }
.madlac-chat__order-again:hover { text-decoration: underline; }
.madlac-chat__body > p { margin: 0 0 2px; color: #685d50; font-size: 13px; line-height: 1.5; }
.madlac-chat--left { right: auto; left: 22px; }
.madlac-chat--left .madlac-chat__panel { right: auto; left: 0; }
.madlac-chat--compact .madlac-chat__panel { width: min(340px, calc(100vw - 44px)); height: min(470px, calc(100dvh - 44px)); }
.madlac-chat--dark .madlac-chat__panel { border-color: #5a4b39; background: #27231e; color: #f8f3e9; }
.madlac-chat--dark .madlac-chat__header { border-bottom-color: #514638; background: linear-gradient(115deg, #332d26, #24201b); }
.madlac-chat--dark .madlac-chat__header strong { color: #f8f3e9; }
.madlac-chat--dark .madlac-chat__header span { color: #d0b99a; }
.madlac-chat--dark .madlac-chat__tabs { border-bottom-color: #514638; background: #27231e; }
.madlac-chat--dark .madlac-chat__tabs button { color: #c8b9a7 !important; }
.madlac-chat--dark .madlac-chat__tabs button[aria-selected=true], .madlac-chat--dark .madlac-chat__tabs button:hover { color: #fff5e8 !important; }
.madlac-chat--dark .madlac-chat__message { border-color: #5d5142; background: #39332b; color: #f8f3e9; }
.madlac-chat--dark .madlac-chat__message--user { border-color: var(--madlac-chat-accent); background: #5c4830; }
.madlac-chat--dark .madlac-chat__message--waiting { color: #e8dac7; }
.madlac-chat--dark .madlac-chat__message a { color: #e6c28a; }
.madlac-chat--dark .madlac-chat__suggestions span, .madlac-chat--dark .madlac-chat__form label, .madlac-chat--dark .madlac-chat__order-form label, .madlac-chat--dark .madlac-chat__body > p { color: #e4d6c5; }
.madlac-chat--dark .madlac-chat__suggestions button { border-color: var(--madlac-chat-accent) !important; background: #39332b !important; color: #f8f3e9 !important; }
.madlac-chat--dark .madlac-chat__order-card { border-color: #665744; background: linear-gradient(155deg, #383027, #29231e); }
.madlac-chat--dark .madlac-chat__order-number, .madlac-chat--dark .madlac-chat__order-label { color: #d6b992; }
.madlac-chat--dark .madlac-chat__order-status { color: #fff8eb; }
.madlac-chat--dark .madlac-chat__order-details { border-color: #63533f; background: #302a23; }
.madlac-chat--dark .madlac-chat__order-details span, .madlac-chat--dark .madlac-chat__order-details p { color: #dbccb8; }
.madlac-chat--dark .madlac-chat__order-details strong { color: #fff8eb; }
.madlac-chat--dark .madlac-chat__order-track { background: var(--madlac-chat-accent); color: #211b16 !important; }
.madlac-chat--dark .madlac-chat__order-again { color: #e4c492 !important; }

@media (max-width: 520px) {
  .madlac-chat { right: 10px; bottom: max(10px, env(safe-area-inset-bottom)); }
  .madlac-chat--left { right: auto; left: 10px; }
  .madlac-chat__panel { width: calc(100vw - 36px); height: min(520px, calc(100dvh - 20px - env(safe-area-inset-bottom))); }
  .madlac-chat__header { gap: 10px; }
  .madlac-chat__header::before { width: 82px; flex-basis: 82px; }
}

@media (max-width: 360px) {
  .madlac-chat__header { padding-left: 13px; padding-right: 13px; }
  .madlac-chat__header::before { width: 72px; flex-basis: 72px; }
  .madlac-chat__body { padding-left: 13px; padding-right: 13px; }
}

@media (prefers-reduced-motion: reduce) {
  .madlac-chat__toggle { transition: none; }
  .madlac-chat__waiting-dots i { animation: none; }
}
