/* MaxiCMS site asistanı — tema renklerini (--pl-* / --rs-*) kullanır, yoksa nötr varsayılanlar */
.mxa { --mxa-ink: var(--pl-ink, var(--rs-ink, #14181c)); --mxa-accent: var(--pl-gold, var(--rs-clay, #b8925a)); --mxa-paper: var(--pl-paper, #f6f4ef);
  font-family: var(--pl-sans, var(--rs-sans, system-ui, -apple-system, Segoe UI, Roboto, sans-serif)); }
.mxa-fab { position: fixed; left: 22px; bottom: 22px; z-index: 95; height: 50px; padding: 0 22px 0 18px; border-radius: 999px; border: 0; cursor: pointer;
  display: inline-flex; align-items: center; gap: 10px; font: inherit; font-size: 15px; font-weight: 600; letter-spacing: .01em; color: #fff;
  background: var(--mxa-accent); background: linear-gradient(135deg, var(--mxa-accent), color-mix(in srgb, var(--mxa-accent) 72%, #000)); box-shadow: 0 12px 30px -8px rgba(0, 0, 0, .55), 0 0 0 1px rgba(255, 255, 255, .12) inset;
  transition: transform .25s ease, box-shadow .25s ease; }
.mxa-fab svg { flex: none; }
.mxa-fab:hover { transform: translateY(-2px); box-shadow: 0 16px 34px -8px rgba(0, 0, 0, .6), 0 0 0 1px rgba(255, 255, 255, .16) inset; }
.mxa-fab:focus-visible { outline: 2px solid var(--mxa-accent); outline-offset: 3px; }
.mxa.is-open .mxa-fab { display: none; }
/* Sohbet açıkken rezervasyon widget'ı ve WhatsApp düğmesi panelin önüne/üstüne binmesin */
html.mxa-open #maxirez-widget-root, html.mxa-open .pl-wa, html.mxa-open .rs-wa { display: none !important; }
.mxa-panel { position: fixed; left: 22px; bottom: 22px; z-index: 96; width: min(380px, calc(100vw - 32px)); height: min(580px, calc(100vh - 48px));
  display: flex; flex-direction: column; background: #fff; color: #1d2329; border-radius: 16px; overflow: hidden;
  box-shadow: 0 24px 60px -18px rgba(0, 0, 0, .45), 0 0 0 1px rgba(0, 0, 0, .06); }
.mxa-panel[hidden] { display: none; }
.mxa-head { display: flex; align-items: center; gap: 6px; padding: 14px 14px 12px 18px; background: var(--mxa-ink); color: #fff; }
.mxa-head > div { flex: 1; min-width: 0; display: grid; }
.mxa-head strong { font-size: 15px; font-weight: 600; letter-spacing: .01em; }
.mxa-head small { font-size: 12px; opacity: .7; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.mxa-icon { width: 32px; height: 32px; border: 0; border-radius: 8px; background: transparent; color: #fff; cursor: pointer; font-size: 16px; }
.mxa-icon:hover, .mxa-icon:focus-visible { background: rgba(255, 255, 255, .12); outline: none; }
.mxa-log { flex: 1; overflow-y: auto; padding: 16px; display: flex; flex-direction: column; gap: 10px; background: var(--mxa-paper); }
.mxa-msg { max-width: 88%; padding: 10px 13px; border-radius: 14px; font-size: 14px; line-height: 1.5; word-wrap: break-word; }
.mxa-msg p { margin: 0 0 .45em; } .mxa-msg p:last-child { margin: 0; }
.mxa-msg ul { margin: .2em 0 .45em; padding-left: 1.1em; }
.mxa-msg a { color: inherit; text-decoration: underline; text-underline-offset: 2px; }
.mxa-msg--assistant { align-self: flex-start; background: #fff; border: 1px solid rgba(0, 0, 0, .07); border-bottom-left-radius: 4px; }
.mxa-msg--user { align-self: flex-end; background: var(--mxa-ink); color: #fff; border-bottom-right-radius: 4px; }
.mxa-msg--err { background: #fff4f4; border-color: #f3c9c9; color: #8a1c1c; }
.mxa-typing { display: flex; gap: 4px; padding: 4px 0; }
.mxa-typing span { width: 7px; height: 7px; border-radius: 50%; background: #9aa1a8; animation: mxa-dot 1s infinite ease-in-out; }
.mxa-typing span:nth-child(2) { animation-delay: .15s; } .mxa-typing span:nth-child(3) { animation-delay: .3s; }
@keyframes mxa-dot { 0%, 80%, 100% { opacity: .3; transform: translateY(0); } 40% { opacity: 1; transform: translateY(-3px); } }
.mxa-chips { display: flex; flex-wrap: wrap; gap: 6px; padding: 0 16px; background: var(--mxa-paper); }
.mxa-chips:not(:empty) { padding-bottom: 12px; }
.mxa-chips button { border: 1px solid rgba(0, 0, 0, .14); background: #fff; color: #1d2329; border-radius: 999px; padding: 6px 12px; font-size: 12.5px; cursor: pointer; }
.mxa-chips button:hover { border-color: var(--mxa-accent); }
.mxa-form { display: flex; gap: 8px; align-items: flex-end; padding: 10px 12px; border-top: 1px solid rgba(0, 0, 0, .08); background: #fff; }
.mxa-form textarea { flex: 1; resize: none; border: 1px solid rgba(0, 0, 0, .15); border-radius: 12px; padding: 9px 12px; font: inherit; font-size: 14px; max-height: 120px; color: #1d2329; background: #fff; }
.mxa-form textarea:focus { outline: 2px solid var(--mxa-accent); outline-offset: 0; border-color: transparent; }
.mxa-send { width: 40px; height: 40px; flex: none; border: 0; border-radius: 50%; background: var(--mxa-ink); color: var(--mxa-accent); cursor: pointer; font-size: 16px; }
.mxa-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
@media (max-width: 640px) {
  .mxa-fab { left: 16px; bottom: 16px; height: 46px; padding: 0 18px 0 15px; font-size: 14px; gap: 8px; }
  .mxa-panel { right: 8px; left: 8px; width: auto; bottom: 8px; height: min(78vh, 620px); }
}
@media (prefers-reduced-motion: reduce) { .mxa-fab, .mxa-typing span { transition: none; animation: none; } }
