/* Spa Asistanı frontend — isolated, cache-safe and responsive. */
#psa-root {
  display: none !important;
}

#psa-portal-root,
#psa-portal-root *,
#psa-portal-root *::before,
#psa-portal-root *::after {
  box-sizing: border-box;
}

#psa-portal-root {
  --psa-primary: #6957ff;
  --psa-primary-2: #a855f7;
  --psa-accent: #ec4899;
  --psa-cyan: #38bdf8;
  --psa-surface: rgba(255, 255, 255, 0.94);
  --psa-surface-solid: #ffffff;
  --psa-surface-soft: #f7f7ff;
  --psa-text: #17203a;
  --psa-muted: #67718c;
  --psa-line: rgba(105, 87, 255, 0.14);
  --psa-bot: rgba(255, 255, 255, 0.96);
  --psa-user: linear-gradient(135deg, #6957ff 0%, #8b5cf6 55%, #c04ee8 100%);
  --psa-shadow: 0 30px 90px rgba(30, 20, 80, 0.26), 0 12px 34px rgba(105, 87, 255, 0.18);
  --psa-launcher-lift: 0px;
  --psa-vvh: 100dvh;
  --psa-vtop: 0px;

  position: fixed !important;
  inset: 0 !important;
  width: 100vw !important;
  height: 100dvh !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  z-index: 2147483647 !important;
  pointer-events: none !important;
  isolation: isolate !important;
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
  line-height: 1.45 !important;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

#psa-portal-root[data-theme="dark"] {
  --psa-surface: rgba(15, 20, 39, 0.96);
  --psa-surface-solid: #11162b;
  --psa-surface-soft: #171e38;
  --psa-text: #f4f6ff;
  --psa-muted: #aab4d1;
  --psa-line: rgba(151, 137, 255, 0.22);
  --psa-bot: rgba(29, 37, 68, 0.98);
  --psa-shadow: 0 34px 100px rgba(0, 0, 0, 0.58), 0 12px 38px rgba(105, 87, 255, 0.26);
}

#psa-portal-root button,
#psa-portal-root input,
#psa-portal-root a {
  font: inherit !important;
}

#psa-portal-root button {
  -webkit-appearance: none;
  appearance: none;
}

#psa-portal-root .psa-hide {
  display: none !important;
}

#psa-portal-root #spa-asistan-launcher {
  position: absolute !important;
  left: max(20px, env(safe-area-inset-left)) !important;
  bottom: calc(max(22px, env(safe-area-inset-bottom)) + var(--psa-launcher-lift)) !important;
  width: 78px !important;
  height: 78px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: transparent !important;
  cursor: pointer !important;
  pointer-events: auto !important;
  z-index: 3 !important;
  transition: opacity 180ms ease, transform 180ms ease, visibility 180ms ease !important;
  touch-action: manipulation !important;
}

#psa-portal-root.psa-open #spa-asistan-launcher {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: scale(0.88) !important;
}

#psa-portal-root .spa-asistan-btn-modern {
  position: relative !important;
  width: 78px !important;
  height: 78px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, var(--psa-primary) 0%, var(--psa-primary-2) 50%, var(--psa-accent) 100%) !important;
  border: 3px solid rgba(255, 255, 255, 0.94) !important;
  box-shadow: 0 16px 38px rgba(105, 87, 255, 0.36), 0 0 0 7px rgba(105, 87, 255, 0.10) !important;
  animation: psaLauncherAttention 5.8s ease-in-out 2 !important;
}

#psa-portal-root #spa-asistan-launcher:hover .spa-asistan-btn-modern {
  transform: translateY(-3px) scale(1.02) !important;
  box-shadow: 0 20px 46px rgba(105, 87, 255, 0.45), 0 0 0 8px rgba(105, 87, 255, 0.12) !important;
}

#psa-portal-root #spa-asistan-launcher:active .spa-asistan-btn-modern {
  transform: scale(0.97) !important;
}

#psa-portal-root .spa-modern-icon {
  width: 52px !important;
  height: 52px !important;
  display: grid !important;
  place-items: center !important;
  overflow: hidden !important;
  border-radius: 999px !important;
  background: #fff !important;
  box-shadow: inset 0 0 0 1px rgba(105, 87, 255, 0.08) !important;
}

#psa-portal-root .spa-modern-icon img,
#psa-portal-root #spa-asistan-avatar {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

#psa-portal-root .asistan-modern-badge {
  position: absolute !important;
  left: 50% !important;
  top: -32px !important;
  transform: translateX(-50%) !important;
  min-width: max-content !important;
  padding: 7px 13px !important;
  border-radius: 999px !important;
  color: #fff !important;
  background: rgba(27, 22, 57, 0.94) !important;
  border: 1px solid rgba(255, 255, 255, 0.34) !important;
  box-shadow: 0 9px 24px rgba(24, 18, 55, 0.24) !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  letter-spacing: 0.01em !important;
  pointer-events: none !important;
  white-space: nowrap !important;
}

#psa-portal-root #spa-asistan-overlay {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  pointer-events: auto !important;
  background: rgba(18, 15, 42, 0.52) !important;
  -webkit-backdrop-filter: blur(5px) saturate(0.9) !important;
  backdrop-filter: blur(5px) saturate(0.9) !important;
  animation: psaOverlayIn 180ms ease-out both !important;
}

#psa-portal-root #spa-asistan-chat-panel {
  position: absolute !important;
  left: max(22px, env(safe-area-inset-left)) !important;
  bottom: max(22px, env(safe-area-inset-bottom)) !important;
  width: min(430px, calc(100vw - 44px)) !important;
  height: min(690px, calc(100dvh - 44px)) !important;
  max-height: calc(100dvh - 44px) !important;
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
  z-index: 2 !important;
  pointer-events: auto !important;
  border: 1px solid rgba(255, 255, 255, 0.58) !important;
  border-radius: 26px !important;
  background: var(--psa-surface) !important;
  color: var(--psa-text) !important;
  box-shadow: var(--psa-shadow) !important;
  -webkit-backdrop-filter: blur(22px) saturate(1.18) !important;
  backdrop-filter: blur(22px) saturate(1.18) !important;
  animation: psaPanelIn 300ms cubic-bezier(0.2, 0.82, 0.28, 1) both !important;
  overscroll-behavior: contain !important;
  transform: translateZ(0) !important;
}

#psa-portal-root[data-theme="dark"] #spa-asistan-chat-panel {
  border-color: rgba(151, 137, 255, 0.26) !important;
}

#psa-portal-root #spa-asistan-header {
  position: relative !important;
  flex: 0 0 auto !important;
  min-height: 76px !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 12px 14px !important;
  color: #fff !important;
  background:
    radial-gradient(circle at 18% 10%, rgba(255,255,255,0.24), transparent 30%),
    linear-gradient(135deg, #5748ed 0%, #7c55f3 48%, #d349b6 100%) !important;
  border-bottom: 1px solid rgba(255,255,255,0.18) !important;
}

#psa-portal-root #spa-asistan-header::after {
  content: "" !important;
  position: absolute !important;
  inset: auto 14px 0 !important;
  height: 1px !important;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.48), transparent) !important;
}

#psa-portal-root .psa-avatar-wrap {
  flex: 0 0 46px !important;
  width: 46px !important;
  height: 46px !important;
  padding: 3px !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,0.94) !important;
  box-shadow: 0 8px 18px rgba(25, 15, 72, 0.22) !important;
}

#psa-portal-root #spa-asistan-avatar {
  border-radius: 999px !important;
}

#psa-portal-root .psa-heading {
  min-width: 0 !important;
  flex: 1 1 auto !important;
}

#psa-portal-root #spa-asistan-header-title {
  display: block !important;
  overflow: hidden !important;
  color: #fff !important;
  font-size: 16px !important;
  line-height: 1.2 !important;
  font-weight: 850 !important;
  letter-spacing: -0.01em !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

#psa-portal-root .psa-header-subtitle {
  display: block !important;
  margin-top: 4px !important;
  color: rgba(255,255,255,0.84) !important;
  font-size: 12px !important;
  font-weight: 650 !important;
}

#psa-portal-root .psa-icon-button {
  flex: 0 0 40px !important;
  width: 40px !important;
  height: 40px !important;
  display: grid !important;
  place-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid rgba(255,255,255,0.28) !important;
  border-radius: 13px !important;
  color: #fff !important;
  background: rgba(255,255,255,0.14) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.16) !important;
  cursor: pointer !important;
  transition: transform 160ms ease, background 160ms ease !important;
  touch-action: manipulation !important;
}

#psa-portal-root .psa-icon-button:hover {
  transform: translateY(-1px) !important;
  background: rgba(255,255,255,0.24) !important;
}

#psa-portal-root #spa-asistan-close {
  color: #5b43d8 !important;
  background: #fff !important;
  border-color: rgba(255,255,255,0.72) !important;
  font-size: 22px !important;
  line-height: 1 !important;
  font-weight: 800 !important;
}

#psa-portal-root #spa-asistan-statusbar {
  flex: 0 0 auto !important;
  min-height: 48px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 8px !important;
  padding: 9px 14px !important;
  overflow: hidden !important;
  color: var(--psa-text) !important;
  background: var(--psa-surface-soft) !important;
  border-bottom: 1px solid var(--psa-line) !important;
  font-size: 12px !important;
}

#psa-portal-root .psa-status-main,
#psa-portal-root .psa-status-hours {
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

#psa-portal-root .psa-status-main {
  color: var(--psa-text) !important;
  font-weight: 800 !important;
}

#psa-portal-root .psa-status-hours {
  color: var(--psa-muted) !important;
  font-weight: 650 !important;
}

#psa-portal-root .spa-status-dot {
  flex: 0 0 10px !important;
  width: 10px !important;
  height: 10px !important;
  border-radius: 999px !important;
  box-shadow: 0 0 0 4px rgba(34,197,94,0.12) !important;
}

#psa-portal-root .spa-status-open { background: #22c55e !important; }
#psa-portal-root .spa-status-closed { background: #ef4444 !important; box-shadow: 0 0 0 4px rgba(239,68,68,0.12) !important; }
#psa-portal-root .spa-status-txt-open { color: #16964a !important; font-weight: 850 !important; }
#psa-portal-root .spa-status-txt-closed { color: #d93645 !important; font-weight: 850 !important; }
#psa-portal-root[data-theme="dark"] .spa-status-txt-open { color: #62e894 !important; }
#psa-portal-root[data-theme="dark"] .spa-status-txt-closed { color: #ff8c98 !important; }

#psa-portal-root #spa-asistan-chat-body {
  flex: 1 1 auto !important;
  min-height: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  padding: 16px 14px 12px !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  color: var(--psa-text) !important;
  background:
    radial-gradient(circle at 88% 4%, rgba(168,85,247,0.08), transparent 28%),
    radial-gradient(circle at 8% 92%, rgba(56,189,248,0.08), transparent 28%),
    var(--psa-surface-soft) !important;
  scrollbar-width: thin !important;
  scrollbar-color: rgba(105,87,255,0.36) transparent !important;
  overscroll-behavior: contain !important;
  -webkit-overflow-scrolling: touch !important;
}

#psa-portal-root #spa-asistan-chat-body::-webkit-scrollbar { width: 7px !important; }
#psa-portal-root #spa-asistan-chat-body::-webkit-scrollbar-track { background: transparent !important; }
#psa-portal-root #spa-asistan-chat-body::-webkit-scrollbar-thumb { background: rgba(105,87,255,0.32) !important; border-radius: 999px !important; }

#psa-portal-root .spa-asistan-msg {
  align-self: flex-start !important;
  max-width: 88% !important;
  margin: 0 !important;
  padding: 12px 14px !important;
  border: 1px solid var(--psa-line) !important;
  border-radius: 18px 18px 18px 6px !important;
  color: var(--psa-text) !important;
  background: var(--psa-bot) !important;
  box-shadow: 0 7px 22px rgba(31, 24, 72, 0.07) !important;
  font-size: 14px !important;
  line-height: 1.58 !important;
  font-weight: 560 !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
  animation: psaMessageIn 220ms ease-out both !important;
}

#psa-portal-root .spa-asistan-msg.user {
  align-self: flex-end !important;
  border: 0 !important;
  border-radius: 18px 18px 6px 18px !important;
  color: #fff !important;
  background: var(--psa-user) !important;
  box-shadow: 0 9px 24px rgba(105,87,255,0.22) !important;
}

#psa-portal-root .spa-asistan-msg a {
  color: #5545df !important;
  font-weight: 800 !important;
  text-decoration: underline !important;
  text-underline-offset: 2px !important;
}

#psa-portal-root[data-theme="dark"] .spa-asistan-msg a { color: #b7aaff !important; }

#psa-portal-root .spa-asistan-msg ul {
  margin: 8px 0 5px 18px !important;
  padding: 0 !important;
}

#psa-portal-root .spa-asistan-msg li { margin: 4px 0 !important; }

#psa-portal-root .psa-csat-wrap {
  display: flex !important;
  align-items: center !important;
  gap: 5px !important;
  margin-top: 8px !important;
}

#psa-portal-root .psa-csat {
  width: 30px !important;
  height: 30px !important;
  display: grid !important;
  place-items: center !important;
  padding: 0 !important;
  border: 1px solid var(--psa-line) !important;
  border-radius: 10px !important;
  color: var(--psa-text) !important;
  background: var(--psa-surface-soft) !important;
  cursor: pointer !important;
}

#psa-portal-root #spa-asistan-typing {
  flex: 0 0 auto !important;
  min-height: 30px !important;
  padding: 5px 16px !important;
  color: var(--psa-muted) !important;
  background: var(--psa-surface-soft) !important;
  font-size: 12px !important;
  font-weight: 750 !important;
}

#psa-portal-root #spa-asistan-typing span { display: inline-block !important; animation: psaDot 1.1s infinite ease-in-out !important; }
#psa-portal-root #spa-asistan-typing .dot2 { animation-delay: 120ms !important; }
#psa-portal-root #spa-asistan-typing .dot3 { animation-delay: 240ms !important; }

#psa-portal-root #spa-asistan-chat-input-row {
  flex: 0 0 auto !important;
  display: flex !important;
  align-items: center !important;
  gap: 9px !important;
  padding: 11px 12px !important;
  padding-bottom: max(11px, env(safe-area-inset-bottom)) !important;
  background: var(--psa-surface-solid) !important;
  border-top: 1px solid var(--psa-line) !important;
}

#psa-portal-root #spa-asistan-chat-input {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  height: 46px !important;
  margin: 0 !important;
  padding: 0 14px !important;
  border: 1px solid rgba(105,87,255,0.20) !important;
  border-radius: 15px !important;
  outline: 0 !important;
  color: var(--psa-text) !important;
  background: var(--psa-surface-soft) !important;
  box-shadow: none !important;
  font-size: 16px !important;
}

#psa-portal-root #spa-asistan-chat-input::placeholder { color: var(--psa-muted) !important; opacity: 0.8 !important; }
#psa-portal-root #spa-asistan-chat-input:focus { border-color: var(--psa-primary) !important; box-shadow: 0 0 0 3px rgba(105,87,255,0.14) !important; }

#psa-portal-root .chat-btn-group {
  flex: 0 0 auto !important;
  display: flex !important;
  align-items: center !important;
  gap: 7px !important;
}

#psa-portal-root .msg-send-btn,
#psa-portal-root .msg-speak-btn,
#psa-portal-root .msg-voice-btn {
  width: 42px !important;
  height: 42px !important;
  display: grid !important;
  place-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid rgba(105,87,255,0.14) !important;
  border-radius: 14px !important;
  color: #fff !important;
  background: linear-gradient(135deg, var(--psa-primary), var(--psa-primary-2)) !important;
  box-shadow: 0 8px 18px rgba(105,87,255,0.20) !important;
  cursor: pointer !important;
  transition: transform 150ms ease, filter 150ms ease !important;
  touch-action: manipulation !important;
}

#psa-portal-root .msg-speak-btn,
#psa-portal-root .msg-voice-btn {
  color: var(--psa-text) !important;
  background: var(--psa-surface-soft) !important;
  box-shadow: none !important;
}

#psa-portal-root .msg-send-btn:hover,
#psa-portal-root .msg-speak-btn:hover,
#psa-portal-root .msg-voice-btn:hover { transform: translateY(-1px) !important; filter: brightness(1.04) !important; }

#psa-portal-root .psa-action-row {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  align-items: center !important;
  margin: 9px 0 2px !important;
}

#psa-portal-root .psa-action-row a,
#psa-portal-root .psa-quick,
#psa-portal-root .psa-choose-branch,
#psa-portal-root #psa-share-loc {
  min-height: 40px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  padding: 8px 13px !important;
  border: 0 !important;
  border-radius: 12px !important;
  color: #fff !important;
  text-decoration: none !important;
  font-size: 13px !important;
  font-weight: 820 !important;
  line-height: 1.2 !important;
  box-shadow: 0 7px 16px rgba(31,24,72,0.12) !important;
  cursor: pointer !important;
  touch-action: manipulation !important;
}

#psa-portal-root .psa-btn-wp { background: #1fbf63 !important; }
#psa-portal-root .psa-btn-call { background: #356cf3 !important; }
#psa-portal-root .psa-btn-map { background: #0aa6cc !important; }

#psa-portal-root .psa-promo {
  margin: 0 0 10px !important;
  padding: 12px !important;
  border: 1px solid rgba(236,72,153,0.18) !important;
  border-radius: 15px !important;
  background: linear-gradient(135deg, rgba(255,247,252,0.98), rgba(246,241,255,0.98)) !important;
  box-shadow: 0 8px 18px rgba(168,85,247,0.08) !important;
}

#psa-portal-root[data-theme="dark"] .psa-promo { background: linear-gradient(135deg, #281d35, #202440) !important; }
#psa-portal-root .psa-promo-title { display: flex !important; align-items: center !important; gap: 7px !important; color: var(--psa-text) !important; font-weight: 900 !important; }
#psa-portal-root .psa-promo-list { margin: 8px 0 0 18px !important; padding: 0 !important; color: var(--psa-text) !important; }
#psa-portal-root .psa-promo-badge { padding: 3px 8px !important; border-radius: 999px !important; color: #fff !important; background: linear-gradient(135deg, var(--psa-accent), var(--psa-primary-2)) !important; font-size: 10px !important; font-weight: 900 !important; }

#psa-portal-root button:focus-visible,
#psa-portal-root a:focus-visible,
#psa-portal-root input:focus-visible {
  outline: 3px solid rgba(56,189,248,0.88) !important;
  outline-offset: 2px !important;
}

body.psa-chat-open {
  overflow: hidden !important;
  overscroll-behavior: none !important;
}

@media (min-width: 768px) and (max-width: 1024px) {
  #psa-portal-root #spa-asistan-chat-panel {
    width: min(430px, calc(100vw - 40px)) !important;
    height: min(680px, calc(100dvh - 40px)) !important;
    left: max(20px, env(safe-area-inset-left)) !important;
    bottom: max(20px, env(safe-area-inset-bottom)) !important;
  }
}

@media (max-width: 767px) {
  #psa-portal-root {
    width: 100vw !important;
    height: var(--psa-vvh, 100dvh) !important;
    top: var(--psa-vtop, 0px) !important;
    bottom: auto !important;
  }

  #psa-portal-root #spa-asistan-chat-panel {
    inset: 0 !important;
    width: 100vw !important;
    height: var(--psa-vvh, 100dvh) !important;
    min-height: 0 !important;
    max-height: none !important;
    border: 0 !important;
    border-radius: 0 !important;
  }

  #psa-portal-root #spa-asistan-header {
    min-height: calc(70px + env(safe-area-inset-top)) !important;
    padding: calc(10px + env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) 10px max(12px, env(safe-area-inset-left)) !important;
  }

  #psa-portal-root #spa-asistan-statusbar {
    min-height: 44px !important;
    padding-left: max(12px, env(safe-area-inset-left)) !important;
    padding-right: max(12px, env(safe-area-inset-right)) !important;
  }

  #psa-portal-root #spa-asistan-chat-body {
    padding-left: max(12px, env(safe-area-inset-left)) !important;
    padding-right: max(12px, env(safe-area-inset-right)) !important;
  }

  #psa-portal-root #spa-asistan-chat-input-row {
    padding-left: max(10px, env(safe-area-inset-left)) !important;
    padding-right: max(10px, env(safe-area-inset-right)) !important;
    padding-bottom: max(10px, env(safe-area-inset-bottom)) !important;
  }

  #psa-portal-root .spa-asistan-msg { max-width: 92% !important; font-size: 14px !important; }
  #psa-portal-root #spa-asistan-launcher { left: max(16px, env(safe-area-inset-left)) !important; bottom: calc(max(18px, env(safe-area-inset-bottom)) + var(--psa-launcher-lift)) !important; }
  #psa-portal-root .asistan-modern-badge { top: -29px !important; }
}

@media (max-width: 420px) {
  #psa-portal-root .msg-speak-btn,
  #psa-portal-root .msg-voice-btn { width: 40px !important; height: 40px !important; }
  #psa-portal-root .msg-send-btn { width: 44px !important; height: 44px !important; }
  #psa-portal-root #spa-asistan-chat-input-row { gap: 7px !important; }
  #psa-portal-root .chat-btn-group { gap: 5px !important; }
}

@supports not ((backdrop-filter: blur(2px)) or (-webkit-backdrop-filter: blur(2px))) {
  #psa-portal-root #spa-asistan-chat-panel { background: var(--psa-surface-solid) !important; }
}

@media (prefers-reduced-motion: reduce) {
  #psa-portal-root *,
  #psa-portal-root *::before,
  #psa-portal-root *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }
}

@keyframes psaLauncherAttention {
  0%, 15%, 100% { transform: translateY(0) rotate(0); }
  4% { transform: translateY(-4px) rotate(-2deg); }
  8% { transform: translateY(1px) rotate(2deg); }
  12% { transform: translateY(-2px) rotate(-1deg); }
}

@keyframes psaOverlayIn { from { opacity: 0; } to { opacity: 1; } }
@keyframes psaPanelIn { from { opacity: 0; transform: translateY(28px) scale(0.97); } to { opacity: 1; transform: translateY(0) scale(1); } }
@keyframes psaMessageIn { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }
@keyframes psaDot { 0%, 80%, 100% { opacity: 0.35; transform: translateY(0); } 40% { opacity: 1; transform: translateY(-2px); } }

/* Görünürlük kuralı, yüksek özgüllüklü panel/overlay kurallarından sonra uygulanır. */
#psa-portal-root #spa-asistan-chat-panel.psa-hide,
#psa-portal-root #spa-asistan-overlay.psa-hide,
#psa-portal-root #spa-asistan-typing.psa-hide {
  display: none !important;
}

/* =======================================================
   v1.4.2 — Katman garantisi ve premium hızlı işlem kartları
   ======================================================= */

/* Chaty ve yaygın sabit iletişim eklentileri, panel açıkken portalın altında kalır. */
body.psa-chat-open #chaty-widget-0,
body.psa-chat-open [id^="chaty-widget"],
body.psa-chat-open .chaty-widget,
body.psa-chat-open .chaty-widget-i,
body.psa-chat-open .chaty-widget-i-title,
body.psa-chat-open .chaty-channel-list,
body.psa-chat-open .chaty-tooltip,
body.psa-chat-open [class*="chaty-widget"],
body.psa-chat-open .joinchat,
body.psa-chat-open .joinchat__button,
body.psa-chat-open #ht-ctc-chat,
body.psa-chat-open .ht-ctc-chat,
body.psa-chat-open #qlwapp,
body.psa-chat-open .qlwapp,
body.psa-chat-open .wa__btn_popup,
body.psa-chat-open .wa__popup_chat_box,
body.psa-chat-open .floating-whatsapp,
body.psa-chat-open .wp-call-button,
body.psa-chat-open .wp-call-button__button,
body.psa-chat-open #callnowbutton,
body.psa-chat-open .call-now-button,
body.psa-chat-open .fixed-contact-button,
body.psa-chat-open .mystickyelements-fixed,
body.psa-chat-open .mystickyelements-contact-form,
body.psa-chat-open [data-psa-layer-lowered="1"] {
  z-index: 2147483000 !important;
  pointer-events: none !important;
}

#psa-portal-root.psa-open {
  z-index: 2147483647 !important;
}

#psa-portal-root.psa-open #spa-asistan-overlay {
  z-index: 2147483645 !important;
}

#psa-portal-root.psa-open #spa-asistan-chat-panel {
  z-index: 2147483646 !important;
}

#psa-portal-root #spa-asistan-chat-panel {
  border-color: rgba(255,255,255,0.72) !important;
  box-shadow:
    0 34px 100px rgba(25, 17, 70, 0.30),
    0 16px 42px rgba(105, 87, 255, 0.22),
    inset 0 1px 0 rgba(255,255,255,0.78) !important;
}

#psa-portal-root #spa-asistan-header {
  background:
    radial-gradient(circle at 16% 8%, rgba(255,255,255,0.30), transparent 31%),
    radial-gradient(circle at 88% 0%, rgba(255,255,255,0.16), transparent 28%),
    linear-gradient(135deg, #5142e7 0%, #7250ef 43%, #a347dd 74%, #d146ae 100%) !important;
}

#psa-portal-root #spa-asistan-chat-body {
  background:
    radial-gradient(circle at 90% 3%, rgba(168,85,247,0.10), transparent 30%),
    radial-gradient(circle at 5% 92%, rgba(56,189,248,0.10), transparent 30%),
    linear-gradient(180deg, rgba(249,248,255,0.98), rgba(242,247,255,0.98)) !important;
}

#psa-portal-root[data-theme="dark"] #spa-asistan-chat-body {
  background:
    radial-gradient(circle at 90% 3%, rgba(168,85,247,0.16), transparent 30%),
    radial-gradient(circle at 5% 92%, rgba(56,189,248,0.11), transparent 30%),
    linear-gradient(180deg, #171d37, #11182d) !important;
}

#psa-portal-root .spa-asistan-msg {
  border-color: rgba(105,87,255,0.13) !important;
  box-shadow:
    0 10px 28px rgba(31,24,72,0.08),
    inset 0 1px 0 rgba(255,255,255,0.82) !important;
}


#psa-portal-root .spa-asistan-msg.psa-message--actions {
  width: 100% !important;
  max-width: 100% !important;
}

#psa-portal-root .spa-asistan-msg.psa-message--welcome {
  max-width: min(96%, 620px) !important;
}

#psa-portal-root .psa-welcome-copy {
  display: grid !important;
  gap: 8px !important;
}

#psa-portal-root .psa-welcome-copy > strong {
  color: var(--psa-text) !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  letter-spacing: -0.012em !important;
}

#psa-portal-root .psa-welcome-copy > span {
  color: var(--psa-muted) !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
  font-weight: 590 !important;
}

#psa-portal-root .psa-location-button {
  width: max-content !important;
  max-width: 100% !important;
  min-height: 43px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 9px !important;
  margin: 3px 0 0 !important;
  padding: 9px 15px !important;
  border: 1px solid rgba(255,255,255,0.52) !important;
  border-radius: 14px !important;
  color: #fff !important;
  background: linear-gradient(135deg, #3974f6 0%, #5764f6 48%, #8b55ed 100%) !important;
  box-shadow: 0 10px 23px rgba(74,91,240,0.24), inset 0 1px 0 rgba(255,255,255,0.25) !important;
  font-size: 13px !important;
  font-weight: 850 !important;
  line-height: 1.2 !important;
  cursor: pointer !important;
  transition: transform 160ms ease, filter 160ms ease, box-shadow 160ms ease !important;
}

#psa-portal-root .psa-location-button:hover {
  transform: translateY(-1px) !important;
  filter: brightness(1.035) !important;
  box-shadow: 0 13px 27px rgba(74,91,240,0.30), inset 0 1px 0 rgba(255,255,255,0.27) !important;
}

#psa-portal-root .psa-location-button:disabled {
  opacity: 0.72 !important;
  cursor: wait !important;
  transform: none !important;
}

#psa-portal-root .psa-location-button__icon {
  width: 24px !important;
  height: 24px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 9px !important;
  color: #3343be !important;
  background: rgba(255,255,255,0.92) !important;
  font-size: 17px !important;
  font-weight: 900 !important;
}

#psa-portal-root .psa-location-button.is-loading .psa-location-button__icon {
  animation: psaLocationPulse 900ms ease-in-out infinite !important;
}

#psa-portal-root .psa-welcome-actions {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(178px, 1fr)) !important;
  gap: 9px !important;
  margin: 1px 0 14px !important;
}

#psa-portal-root .spa-asistan-msg .psa-quick-call,
#psa-portal-root .spa-asistan-msg .psa-quick-call:link,
#psa-portal-root .spa-asistan-msg .psa-quick-call:visited,
#psa-portal-root .spa-asistan-msg .psa-quick-call:hover,
#psa-portal-root .spa-asistan-msg .psa-quick-call:focus {
  min-width: 0 !important;
  min-height: 58px !important;
  display: grid !important;
  grid-template-columns: 36px minmax(0,1fr) 20px !important;
  align-items: center !important;
  gap: 9px !important;
  margin: 0 !important;
  padding: 9px 10px !important;
  border: 1px solid rgba(255,255,255,0.48) !important;
  border-radius: 16px !important;
  color: #fff !important;
  background: linear-gradient(135deg, #2668ed 0%, #4264f4 48%, #0fc7c6 100%) !important;
  box-shadow: 0 10px 22px rgba(38,104,237,0.20), inset 0 1px 0 rgba(255,255,255,0.22) !important;
  text-decoration: none !important;
  text-shadow: none !important;
  transition: transform 160ms ease, filter 160ms ease, box-shadow 160ms ease !important;
}

#psa-portal-root .psa-welcome-actions > .psa-quick-call:last-child:nth-child(odd) {
  grid-column: 1 / -1 !important;
}

#psa-portal-root .spa-asistan-msg .psa-quick-call:hover {
  transform: translateY(-2px) !important;
  filter: brightness(1.035) !important;
  box-shadow: 0 14px 26px rgba(38,104,237,0.28), inset 0 1px 0 rgba(255,255,255,0.25) !important;
}

#psa-portal-root .spa-asistan-msg .psa-quick-call *,
#psa-portal-root .spa-asistan-msg .psa-quick-call *::before,
#psa-portal-root .spa-asistan-msg .psa-quick-call *::after {
  text-decoration: none !important;
}

#psa-portal-root .psa-quick-call__icon {
  width: 36px !important;
  height: 36px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 12px !important;
  color: #2855cc !important;
  background: rgba(255,255,255,0.94) !important;
  box-shadow: 0 5px 12px rgba(26,40,100,0.16) !important;
  font-size: 17px !important;
  font-weight: 900 !important;
}

#psa-portal-root .psa-quick-call__content {
  min-width: 0 !important;
  display: grid !important;
  gap: 2px !important;
}

#psa-portal-root .psa-quick-call__title {
  overflow: hidden !important;
  color: #fff !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  line-height: 1.25 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

#psa-portal-root .psa-quick-call__subtitle {
  overflow: hidden !important;
  color: rgba(255,255,255,0.83) !important;
  font-size: 10px !important;
  font-weight: 690 !important;
  line-height: 1.2 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

#psa-portal-root .psa-quick-call__arrow {
  color: #fff !important;
  font-size: 24px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  opacity: 0.88 !important;
}

#psa-portal-root .psa-faq-heading {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin: 0 0 10px !important;
  color: var(--psa-text) !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  letter-spacing: -0.005em !important;
}

#psa-portal-root .psa-faq-heading__spark {
  width: 24px !important;
  height: 24px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 9px !important;
  color: #4f46e5 !important;
  background: rgba(105,87,255,0.11) !important;
  box-shadow: inset 0 0 0 1px rgba(105,87,255,0.10) !important;
}

#psa-portal-root .psa-faq-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0,1fr)) !important;
  gap: 9px !important;
}

#psa-portal-root .spa-asistan-msg .psa-quick {
  width: 100% !important;
  min-width: 0 !important;
  min-height: 48px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 9px !important;
  margin: 0 !important;
  padding: 8px 10px !important;
  border: 1px solid rgba(255,255,255,0.46) !important;
  border-radius: 15px !important;
  color: #fff !important;
  box-shadow: 0 9px 19px rgba(31,24,72,0.15), inset 0 1px 0 rgba(255,255,255,0.21) !important;
  text-align: left !important;
  text-shadow: none !important;
  transition: transform 150ms ease, filter 150ms ease, box-shadow 150ms ease !important;
}

#psa-portal-root .spa-asistan-msg .psa-quick:hover {
  transform: translateY(-1px) !important;
  filter: brightness(1.04) !important;
  box-shadow: 0 12px 22px rgba(31,24,72,0.20), inset 0 1px 0 rgba(255,255,255,0.25) !important;
}

#psa-portal-root .spa-asistan-msg .psa-quick *,
#psa-portal-root .spa-asistan-msg .psa-quick *::before,
#psa-portal-root .spa-asistan-msg .psa-quick *::after {
  color: inherit !important;
}

#psa-portal-root .psa-quick__icon {
  flex: 0 0 29px !important;
  width: 29px !important;
  height: 29px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 10px !important;
  color: currentColor !important;
  background: rgba(255,255,255,0.18) !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.18) !important;
  font-size: 14px !important;
  font-weight: 950 !important;
}

#psa-portal-root .psa-quick__label {
  min-width: 0 !important;
  color: #fff !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  line-height: 1.18 !important;
}

#psa-portal-root .psa-quick--prices { background: linear-gradient(135deg, #2563eb, #4f46e5) !important; }
#psa-portal-root .psa-quick--campaign { background: linear-gradient(135deg, #16a34a, #0ea5a8) !important; }
#psa-portal-root .psa-quick--massage { background: linear-gradient(135deg, #f59e0b, #ef6c35) !important; }
#psa-portal-root .psa-quick--appointment { background: linear-gradient(135deg, #7047f4, #a548e4) !important; }

#psa-portal-root .psa-action-row a,
#psa-portal-root .psa-choose-branch {
  gap: 7px !important;
  border: 1px solid rgba(255,255,255,0.44) !important;
  box-shadow: 0 9px 20px rgba(31,24,72,0.15), inset 0 1px 0 rgba(255,255,255,0.20) !important;
  text-shadow: none !important;
  transition: transform 150ms ease, filter 150ms ease, box-shadow 150ms ease !important;
}

#psa-portal-root .spa-asistan-msg .psa-action-row a,
#psa-portal-root .spa-asistan-msg .psa-action-row a:link,
#psa-portal-root .spa-asistan-msg .psa-action-row a:visited,
#psa-portal-root .spa-asistan-msg .psa-action-row a:hover,
#psa-portal-root .spa-asistan-msg .psa-action-row a:focus {
  color: #fff !important;
  text-decoration: none !important;
}

#psa-portal-root .psa-action-row a:hover,
#psa-portal-root .psa-choose-branch:hover {
  transform: translateY(-1px) !important;
  filter: brightness(1.045) !important;
  box-shadow: 0 12px 23px rgba(31,24,72,0.20), inset 0 1px 0 rgba(255,255,255,0.23) !important;
}

#psa-portal-root .psa-choose-branch {
  background: linear-gradient(135deg, #2f6fed, #6957ff) !important;
}

#psa-portal-root .psa-action-row a *,
#psa-portal-root .psa-choose-branch * {
  color: inherit !important;
  text-decoration: none !important;
}

@media (max-width: 767px) {
  #psa-portal-root #spa-asistan-chat-panel {
    box-shadow: none !important;
  }

  #psa-portal-root #spa-asistan-chat-body {
    scrollbar-width: none !important;
  }

  #psa-portal-root #spa-asistan-chat-body::-webkit-scrollbar {
    width: 0 !important;
    height: 0 !important;
  }

  #psa-portal-root .spa-asistan-msg {
    max-width: 95% !important;
    padding: 13px 14px !important;
  }
}

@media (max-width: 420px) {
  #psa-portal-root .psa-welcome-actions {
    grid-template-columns: 1fr !important;
  }

  #psa-portal-root .psa-faq-grid {
    gap: 8px !important;
  }

  #psa-portal-root .spa-asistan-msg .psa-quick {
    min-height: 46px !important;
    padding: 8px 9px !important;
  }
}

@keyframes psaLocationPulse {
  0%, 100% { transform: scale(1); opacity: 1; }
  50% { transform: scale(0.88); opacity: 0.68; }
}


/* =======================================================
   v1.4.3 — Sabit alt şerit mesafesi + premium glass polish
   ======================================================= */

#psa-portal-root {
  --psa-glass-border: rgba(255,255,255,0.68);
  --psa-glass-highlight: rgba(255,255,255,0.82);
  --psa-glass-shadow: rgba(28,18,73,0.24);
}

#psa-portal-root[data-theme="dark"] {
  --psa-glass-border: rgba(151,137,255,0.28);
  --psa-glass-highlight: rgba(255,255,255,0.11);
  --psa-glass-shadow: rgba(0,0,0,0.54);
}

/* Alt şerit yüksekliği değiştiğinde buton zıplamadan güvenli konuma geçer. */
#psa-portal-root #spa-asistan-launcher {
  transition:
    bottom 240ms cubic-bezier(.2,.8,.2,1),
    opacity 180ms ease,
    transform 180ms ease,
    visibility 180ms ease !important;
  will-change: bottom !important;
}

#psa-portal-root .spa-asistan-btn-modern {
  background:
    radial-gradient(circle at 26% 18%, rgba(255,255,255,0.55), transparent 29%),
    linear-gradient(145deg, rgba(96,76,246,0.98) 0%, rgba(148,77,238,0.98) 53%, rgba(225,63,159,0.98) 100%) !important;
  border-color: rgba(255,255,255,0.96) !important;
  box-shadow:
    0 18px 44px rgba(78,57,211,0.40),
    0 0 0 7px rgba(111,87,255,0.12),
    inset 0 1px 0 rgba(255,255,255,0.62) !important;
  -webkit-backdrop-filter: blur(14px) saturate(1.25) !important;
  backdrop-filter: blur(14px) saturate(1.25) !important;
}

#psa-portal-root .spa-modern-icon {
  border: 1px solid rgba(255,255,255,0.84) !important;
  box-shadow:
    0 8px 18px rgba(30,22,80,0.22),
    inset 0 0 0 1px rgba(105,87,255,0.08) !important;
}

#psa-portal-root .asistan-modern-badge {
  padding: 7px 14px !important;
  background: linear-gradient(135deg, rgba(25,21,58,0.90), rgba(45,33,91,0.88)) !important;
  border-color: rgba(255,255,255,0.42) !important;
  box-shadow:
    0 10px 28px rgba(20,14,56,0.30),
    inset 0 1px 0 rgba(255,255,255,0.18) !important;
  -webkit-backdrop-filter: blur(14px) saturate(1.18) !important;
  backdrop-filter: blur(14px) saturate(1.18) !important;
}

#psa-portal-root #spa-asistan-chat-panel {
  width: min(442px, calc(100vw - 44px)) !important;
  height: min(704px, calc(100dvh - 44px)) !important;
  max-height: calc(100dvh - 44px) !important;
  border: 1px solid var(--psa-glass-border) !important;
  background:
    radial-gradient(circle at 10% 0%, rgba(255,255,255,0.72), transparent 31%),
    radial-gradient(circle at 100% 20%, rgba(168,85,247,0.12), transparent 35%),
    linear-gradient(145deg, rgba(255,255,255,0.94), rgba(247,247,255,0.90)) !important;
  box-shadow:
    0 38px 110px var(--psa-glass-shadow),
    0 18px 50px rgba(105,87,255,0.22),
    inset 0 1px 0 var(--psa-glass-highlight) !important;
  -webkit-backdrop-filter: blur(28px) saturate(1.28) !important;
  backdrop-filter: blur(28px) saturate(1.28) !important;
}

#psa-portal-root[data-theme="dark"] #spa-asistan-chat-panel {
  background:
    radial-gradient(circle at 12% 0%, rgba(130,112,255,0.18), transparent 33%),
    radial-gradient(circle at 100% 20%, rgba(236,72,153,0.10), transparent 35%),
    linear-gradient(145deg, rgba(17,22,43,0.97), rgba(22,28,53,0.95)) !important;
}

#psa-portal-root #spa-asistan-header {
  min-height: 78px !important;
  background:
    radial-gradient(circle at 14% 4%, rgba(255,255,255,0.34), transparent 31%),
    radial-gradient(circle at 90% 0%, rgba(255,255,255,0.17), transparent 26%),
    linear-gradient(130deg, #4d43df 0%, #7050ec 42%, #a344dc 73%, #d13aa6 100%) !important;
  box-shadow: 0 10px 28px rgba(74,53,180,0.20) !important;
}

#psa-portal-root .psa-avatar-wrap {
  border-color: rgba(255,255,255,0.96) !important;
  box-shadow:
    0 8px 18px rgba(31,24,88,0.24),
    0 0 0 3px rgba(255,255,255,0.13) !important;
}

#psa-portal-root #spa-asistan-header-title {
  letter-spacing: -0.018em !important;
  text-shadow: 0 1px 2px rgba(30,18,80,0.22) !important;
}

#psa-portal-root .psa-header-subtitle {
  color: rgba(255,255,255,0.91) !important;
}

#psa-portal-root .psa-icon-button {
  border-color: rgba(255,255,255,0.30) !important;
  background: rgba(255,255,255,0.13) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.18), 0 8px 18px rgba(38,24,100,0.12) !important;
  -webkit-backdrop-filter: blur(12px) saturate(1.15) !important;
  backdrop-filter: blur(12px) saturate(1.15) !important;
}

#psa-portal-root #spa-asistan-close {
  color: #5a45d5 !important;
  background: rgba(255,255,255,0.96) !important;
  box-shadow: 0 9px 22px rgba(45,31,121,0.22), inset 0 1px 0 #fff !important;
}

#psa-portal-root #spa-asistan-statusbar {
  background: linear-gradient(180deg, rgba(255,255,255,0.86), rgba(250,250,255,0.76)) !important;
  -webkit-backdrop-filter: blur(16px) saturate(1.12) !important;
  backdrop-filter: blur(16px) saturate(1.12) !important;
  box-shadow: inset 0 -1px 0 rgba(105,87,255,0.10) !important;
}

#psa-portal-root[data-theme="dark"] #spa-asistan-statusbar {
  background: linear-gradient(180deg, rgba(22,28,53,0.94), rgba(17,22,43,0.90)) !important;
}

#psa-portal-root #spa-asistan-chat-body {
  background:
    radial-gradient(circle at 91% 4%, rgba(168,85,247,0.11), transparent 29%),
    radial-gradient(circle at 5% 94%, rgba(56,189,248,0.10), transparent 31%),
    linear-gradient(180deg, rgba(248,248,255,0.76), rgba(242,246,255,0.88)) !important;
}

#psa-portal-root[data-theme="dark"] #spa-asistan-chat-body {
  background:
    radial-gradient(circle at 92% 4%, rgba(168,85,247,0.14), transparent 29%),
    radial-gradient(circle at 5% 94%, rgba(56,189,248,0.09), transparent 31%),
    linear-gradient(180deg, rgba(17,22,43,0.88), rgba(15,20,39,0.96)) !important;
}

#psa-portal-root .spa-asistan-msg:not(.user) {
  border: 1px solid rgba(255,255,255,0.82) !important;
  background: linear-gradient(145deg, rgba(255,255,255,0.94), rgba(255,255,255,0.84)) !important;
  box-shadow:
    0 14px 34px rgba(38,28,95,0.10),
    inset 0 1px 0 rgba(255,255,255,0.94) !important;
  -webkit-backdrop-filter: blur(14px) saturate(1.10) !important;
  backdrop-filter: blur(14px) saturate(1.10) !important;
}

#psa-portal-root[data-theme="dark"] .spa-asistan-msg:not(.user) {
  border-color: rgba(151,137,255,0.18) !important;
  background: linear-gradient(145deg, rgba(31,39,72,0.96), rgba(24,31,59,0.94)) !important;
}

#psa-portal-root .spa-asistan-msg.user {
  border: 1px solid rgba(255,255,255,0.28) !important;
  box-shadow: 0 13px 28px rgba(91,70,225,0.24), inset 0 1px 0 rgba(255,255,255,0.22) !important;
}

#psa-portal-root .spa-asistan-msg a:not(.psa-quick-call):not(.psa-location-button) {
  color: #5f4cf4 !important;
  font-weight: 760 !important;
  text-decoration-color: rgba(95,76,244,0.34) !important;
  text-underline-offset: 2px !important;
}

#psa-portal-root[data-theme="dark"] .spa-asistan-msg a:not(.psa-quick-call):not(.psa-location-button) {
  color: #b9adff !important;
}

#psa-portal-root #spa-asistan-chat-input-row {
  border-top: 1px solid rgba(105,87,255,0.12) !important;
  background: linear-gradient(180deg, rgba(255,255,255,0.78), rgba(255,255,255,0.94)) !important;
  box-shadow: 0 -12px 30px rgba(44,34,100,0.07) !important;
  -webkit-backdrop-filter: blur(18px) saturate(1.16) !important;
  backdrop-filter: blur(18px) saturate(1.16) !important;
}

#psa-portal-root[data-theme="dark"] #spa-asistan-chat-input-row {
  background: linear-gradient(180deg, rgba(22,28,53,0.86), rgba(17,22,43,0.97)) !important;
}

#psa-portal-root #spa-asistan-chat-input {
  border-color: rgba(105,87,255,0.30) !important;
  background: rgba(255,255,255,0.80) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.94), 0 8px 20px rgba(52,38,120,0.06) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  backdrop-filter: blur(12px) !important;
}

#psa-portal-root[data-theme="dark"] #spa-asistan-chat-input {
  background: rgba(24,31,59,0.94) !important;
}

#psa-portal-root .msg-send-btn {
  background: linear-gradient(135deg, #6957ff 0%, #8b4ff0 62%, #c542cf 100%) !important;
  box-shadow: 0 10px 23px rgba(105,87,255,0.28), inset 0 1px 0 rgba(255,255,255,0.24) !important;
}

#psa-portal-root .msg-speak-btn,
#psa-portal-root .msg-voice-btn {
  border-color: rgba(105,87,255,0.16) !important;
  background: rgba(247,248,255,0.86) !important;
  box-shadow: 0 8px 18px rgba(48,35,112,0.08), inset 0 1px 0 rgba(255,255,255,0.92) !important;
}

#psa-portal-root[data-theme="dark"] .msg-speak-btn,
#psa-portal-root[data-theme="dark"] .msg-voice-btn {
  background: rgba(29,37,68,0.96) !important;
  border-color: rgba(151,137,255,0.18) !important;
}

@media (min-width: 768px) and (max-width: 1024px) {
  #psa-portal-root #spa-asistan-chat-panel {
    width: min(434px, calc(100vw - 40px)) !important;
    height: min(690px, calc(100dvh - 40px)) !important;
  }
}

@media (max-width: 767px) {
  #psa-portal-root {
    height: var(--psa-vvh, 100vh) !important;
    height: var(--psa-vvh, 100dvh) !important;
  }

  #psa-portal-root #spa-asistan-chat-panel {
    width: 100vw !important;
    height: var(--psa-vvh, 100vh) !important;
    height: var(--psa-vvh, 100dvh) !important;
    max-height: none !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

  #psa-portal-root #spa-asistan-header {
    min-height: calc(72px + env(safe-area-inset-top)) !important;
  }

  #psa-portal-root #spa-asistan-chat-input-row {
    box-shadow: 0 -8px 24px rgba(44,34,100,0.08) !important;
  }
}

@supports not ((backdrop-filter: blur(2px)) or (-webkit-backdrop-filter: blur(2px))) {
  #psa-portal-root .spa-asistan-btn-modern,
  #psa-portal-root .asistan-modern-badge,
  #psa-portal-root #spa-asistan-chat-panel,
  #psa-portal-root #spa-asistan-statusbar,
  #psa-portal-root .spa-asistan-msg:not(.user),
  #psa-portal-root #spa-asistan-chat-input-row,
  #psa-portal-root #spa-asistan-chat-input {
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
  }

  #psa-portal-root #spa-asistan-chat-panel {
    background: #f8f8ff !important;
  }

  #psa-portal-root[data-theme="dark"] #spa-asistan-chat-panel {
    background: #11162b !important;
  }
}

@media (forced-colors: active) {
  #psa-portal-root #spa-asistan-chat-panel,
  #psa-portal-root .spa-asistan-msg,
  #psa-portal-root #spa-asistan-chat-input,
  #psa-portal-root button,
  #psa-portal-root a {
    forced-color-adjust: auto !important;
  }
}

/* v1.4.4 — avatar yedek görünümü: görsel dosyası iki kez de yüklenemezse
   kırık resim ikonu yerine okunaklı, markalı bir monogram gösterilir. */
#psa-portal-root .spa-modern-icon.psa-avatar-fallback,
#psa-portal-root .psa-avatar-wrap.psa-avatar-fallback {
  position: relative !important;
  overflow: hidden !important;
  background: linear-gradient(135deg, #ffffff 0%, #f0eaff 48%, #ffdff3 100%) !important;
}

#psa-portal-root .spa-modern-icon.psa-avatar-fallback::after,
#psa-portal-root .psa-avatar-wrap.psa-avatar-fallback::after {
  content: "SPA" !important;
  position: absolute !important;
  inset: 0 !important;
  display: grid !important;
  place-items: center !important;
  color: #6f3fd4 !important;
  font-size: 13px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: -0.04em !important;
}

#psa-portal-root .psa-avatar-wrap.psa-avatar-fallback::after {
  font-size: 11px !important;
}
