.ee-chat {
  position:fixed;
  right:24px;
  bottom:24px;
  z-index:2000;
  font-family:'Montserrat',sans-serif;
}

.ee-chat-launch {
  width:58px;
  height:58px;
  border:0;
  border-radius:50%;
  color:#0d1f14;
  background:linear-gradient(135deg,#ffd700,#c9a800);
  box-shadow:0 4px 18px rgba(201,168,0,0.45),0 1px 4px rgba(0,0,0,0.12);
  display:grid;
  place-items:center;
  cursor:pointer;
}

.ee-chat-launch svg,
.ee-chat-close svg,
.ee-chat-send svg,
.ee-icon-btn svg {
  width:22px;
  height:22px;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.ee-chat-panel {
  position:absolute;
  right:0;
  bottom:76px;
  width:min(380px,calc(100vw - 32px));
  height:min(620px,calc(100vh - 112px));
  max-height:620px;
  background:#fffdf6;
  border:1px solid rgba(212,175,55,0.32);
  border-radius:18px;
  box-shadow:0 20px 60px rgba(0,0,0,0.24);
  overflow:hidden;
  display:none;
  flex-direction:column;
}

.ee-chat[data-open="true"] .ee-chat-panel { display:flex; }
.ee-chat[data-open="true"] .ee-chat-launch { display:none; }

.ee-chat-head {
  padding:16px;
  background:#0d1f14;
  color:white;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}

.ee-chat-head-center {
  display:flex;
  align-items:center;
  gap:12px;
  min-width:0;
}

.ee-chat-mark {
  width:42px;
  height:42px;
  border-radius:12px;
  background:white;
  display:grid;
  place-items:center;
  overflow:hidden;
}

.ee-chat-mark img,
.msg-avatar img {
  width:100%;
  height:100%;
  object-fit:contain;
}

.ee-chat-head h2 {
  margin:0;
  font-family:'Playfair Display',serif;
  font-size:1.15rem;
  line-height:1.1;
  color:white;
}

.ee-chat-status {
  display:flex;
  align-items:center;
  gap:6px;
  margin-top:4px;
  font-size:0.68rem;
  color:rgba(255,255,255,0.72);
}

.ee-chat-status-dot {
  width:7px;
  height:7px;
  border-radius:50%;
  background:#90ee90;
}

.ee-chat-close {
  width:34px;
  height:34px;
  border:0;
  border-radius:10px;
  background:rgba(255,255,255,0.1);
  color:white;
  display:grid;
  place-items:center;
  cursor:pointer;
}

.ee-chat-body {
  flex:1;
  min-height:0;
  background:linear-gradient(rgba(255,255,255,0.82),rgba(255,255,255,0.82)),url('images/ee-pattern-bg.jpg');
  background-size:auto,180px auto;
  overflow:hidden;
}

.ee-chat-messages {
  height:100%;
  overflow-y:auto;
  padding:16px;
}

.ee-chat-message {
  display:flex;
  gap:9px;
  margin-bottom:12px;
}

.ee-chat-message.user {
  justify-content:flex-end;
}

.msg-avatar {
  width:28px;
  height:28px;
  border-radius:50%;
  background:white;
  border:1px solid rgba(212,175,55,0.28);
  overflow:hidden;
  flex:0 0 auto;
}

.msg-content {
  max-width:82%;
  padding:10px 12px;
  border-radius:14px;
  background:white;
  color:#1d1d1d;
  box-shadow:0 4px 14px rgba(0,0,0,0.06);
}

.ee-chat-message.user .msg-content {
  background:#0d1f14;
  color:white;
}

.msg-content p {
  margin:0;
  font-size:0.84rem;
  line-height:1.45;
}

.msg-time {
  display:block;
  margin-top:5px;
  font-size:0.64rem;
  color:rgba(0,0,0,0.42);
}

.ee-chat-message.user .msg-time {
  color:rgba(255,255,255,0.58);
}

.ee-chat-profile,
.ee-chat-bottom {
  padding:12px;
  background:white;
  border-top:1px solid rgba(0,0,0,0.08);
}

.ee-chat-profile {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}

.ee-chat-profile.hidden,
.ee-chat-bottom.hidden { display:none; }

.ee-chat-profile input,
.ee-chat-compose textarea {
  width:100%;
  border:1px solid rgba(0,0,0,0.12);
  border-radius:10px;
  padding:10px 11px;
  font:inherit;
  font-size:0.82rem;
  outline:none;
}

.ee-chat-profile button {
  grid-column:1 / -1;
  border:0;
  border-radius:10px;
  padding:11px;
  background:#ffd700;
  color:#111;
  font-weight:800;
  letter-spacing:0.06em;
  text-transform:uppercase;
  cursor:pointer;
}

.ee-chat-prompts {
  display:flex;
  gap:8px;
  overflow-x:auto;
  padding-bottom:8px;
}

.ee-chat-prompts button {
  flex:0 0 auto;
  border:1px solid rgba(212,175,55,0.32);
  border-radius:999px;
  background:#fffbe6;
  color:#0d1f14;
  padding:8px 10px;
  font-size:0.72rem;
  font-weight:700;
  cursor:pointer;
}

.ee-chat-compose-box {
  display:grid;
  grid-template-columns:1fr auto;
  gap:8px;
  align-items:end;
}

.ee-chat-compose textarea {
  min-height:42px;
  max-height:92px;
  resize:none;
}

.ee-chat-compose-toolbar {
  display:flex;
  align-items:center;
  gap:6px;
}

.ee-icon-btn,
.ee-chat-send {
  width:38px;
  height:38px;
  border:0;
  border-radius:10px;
  display:grid;
  place-items:center;
  cursor:pointer;
}

.ee-icon-btn {
  background:#f6f6f6;
  color:#0d1f14;
}

.ee-chat-send {
  background:#0d1f14;
  color:white;
}

.ee-chat-typing {
  margin:4px 0 10px 38px;
  font-size:0.72rem;
  color:#5c6b60;
}

@media(max-width:600px) {
  .ee-chat {
    right:16px;
    bottom:16px;
  }

  .ee-chat-panel {
    position:fixed;
    inset:0;
    width:100%;
    height:100%;
    max-height:none;
    border-radius:0;
  }
}
