.pom-chatbot, .pom-chatbot * { box-sizing: border-box; }
.pom-chatbot { position: fixed; right: 20px; bottom: 20px; z-index: 10050; font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
body.pom-privacy-visible .pom-chatbot { bottom: 126px; }
.pom-chat-launcher { display: inline-flex; align-items: center; gap: 9px; min-height: 52px; padding: 0 18px; border: 0; border-radius: 999px; background: #542048; color: #fff; box-shadow: 0 16px 38px rgba(84,32,72,.28); font: inherit; font-weight: 800; cursor: pointer; }
.pom-chat-launcher:hover { background: #6b3b63; transform: translateY(-1px); }
.pom-chat-launcher:focus-visible, .pom-chat-close:focus-visible, .pom-chat-choice:focus-visible, .pom-chat-link:focus-visible { outline: 3px solid #ffad86; outline-offset: 3px; }
.pom-chat-icon { width: 22px; height: 22px; flex: 0 0 auto; }
.pom-chat-dialog { position: absolute; right: 0; bottom: 66px; width: min(390px, calc(100vw - 32px)); max-height: min(610px, calc(100vh - 110px)); display: none; grid-template-rows: auto minmax(0,1fr); overflow: hidden; border: 1px solid #eed8df; border-radius: 24px; background: #fffaf7; box-shadow: 0 28px 70px rgba(62,24,53,.26); color: #68535f; }
.pom-chat-dialog[data-open="true"] { display: grid; animation: pomChatIn .18s ease-out; }
@keyframes pomChatIn { from { opacity: 0; transform: translateY(10px) scale(.98); } to { opacity: 1; transform: none; } }
.pom-chat-head { display: flex; align-items: center; gap: 12px; padding: 17px 18px; background: #542048; color: #fff; }
.pom-chat-mark { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 50%; background: #ffe1d1; color: #542048; font-weight: 900; }
.pom-chat-title { margin: 0; font-size: 16px; line-height: 1.25; }
.pom-chat-status { margin: 3px 0 0; color: #f3dfe9; font-size: 12px; }
.pom-chat-close { margin-left: auto; display: grid; place-items: center; width: 38px; height: 38px; border: 0; border-radius: 50%; background: rgba(255,255,255,.12); color: #fff; font-size: 25px; line-height: 1; cursor: pointer; }
.pom-chat-close:hover { background: rgba(255,255,255,.22); }
.pom-chat-body { overflow-y: auto; overscroll-behavior: contain; padding: 18px; }
.pom-chat-bubble { max-width: 94%; margin: 0 0 14px; padding: 13px 15px; border-radius: 8px 18px 18px 18px; background: #f7e7ee; color: #542048; font-size: 14px; line-height: 1.55; }
.pom-chat-bubble p { margin: 0; }
.pom-chat-bubble p + p { margin-top: 8px; }
.pom-chat-choices { display: grid; gap: 9px; }
.pom-chat-choice, .pom-chat-link { width: 100%; min-height: 46px; padding: 11px 14px; border: 1px solid #e8cfd9; border-radius: 14px; background: #fff; color: #542048; text-align: left; text-decoration: none; font: inherit; font-size: 14px; font-weight: 750; cursor: pointer; }
.pom-chat-choice:hover, .pom-chat-link:hover { border-color: #ffad86; background: #fff3eb; }
.pom-chat-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; margin-top: 12px; }
.pom-chat-actions .pom-chat-link { text-align: center; }
.pom-chat-note { margin: 14px 2px 0; color: #8a737e; font-size: 12px; line-height: 1.45; text-align: center; }
body.pom-chat-open { overflow: hidden; }
@media (min-width: 641px) { body.pom-chat-open { overflow: auto; } }
@media (max-width: 640px) {
  .pom-chatbot { right: 14px; bottom: max(14px, env(safe-area-inset-bottom)); }
  body.pom-privacy-visible .pom-chatbot { bottom: 220px; }
  .pom-chat-launcher { min-height: 50px; padding: 0 16px; }
  .pom-chat-dialog { position: fixed; inset: 50% auto auto 50%; width: calc(100vw - 24px); height: min(620px, calc(100dvh - 28px)); max-height: none; transform: translate(-50%,-50%); border-radius: 22px; }
  .pom-chat-dialog[data-open="true"] { animation: pomChatMobileIn .18s ease-out; }
  @keyframes pomChatMobileIn { from { opacity: 0; transform: translate(-50%,calc(-50% + 12px)) scale(.98); } to { opacity: 1; transform: translate(-50%,-50%); } }
  .pom-chat-head { padding: 14px 15px; }
  .pom-chat-body { padding: 15px; }
}
@media (prefers-reduced-motion: reduce) { .pom-chat-dialog[data-open="true"] { animation: none; } .pom-chat-launcher:hover { transform: none; } }
