/* Abe chat widget */
.fk-abe-bubble { position: fixed; right: 18px; bottom: 18px; z-index: 1200; width: 64px; height: 64px; border-radius: 50%; border: 3px solid #2ea69c; background: #fdf6e3; padding: 0; cursor: pointer; box-shadow: 0 8px 24px rgba(23,19,59,.28); transition: transform .15s ease; }
.fk-abe-bubble:hover { transform: scale(1.06); }
.fk-abe-bubble img { width: 100%; height: 100%; border-radius: 50%; display: block; }
.fk-abe-hi { position: fixed; right: 92px; bottom: 26px; z-index: 1200; max-width: 250px; background: #fff; color: #17133b; border-radius: 16px 16px 4px 16px; padding: 12px 34px 12px 16px; font-size: .95rem; line-height: 1.45; box-shadow: 0 10px 28px rgba(23,19,59,.22); cursor: pointer; }
.fk-abe-hi b { color: #2ea69c; }
.fk-abe-hi-x { position: absolute; top: 4px; right: 8px; border: 0; background: none; font-size: 1.05rem; color: #9a9ab0; cursor: pointer; padding: 2px 4px; }
.fk-abe-panel { position: fixed; right: 18px; bottom: 92px; z-index: 1201; width: 360px; max-width: calc(100vw - 24px); height: 480px; max-height: calc(100vh - 130px); background: #fff; border-radius: 18px; box-shadow: 0 18px 50px rgba(23,19,59,.35); display: none; flex-direction: column; overflow: hidden; }
.fk-abe-panel.fk-abe-open { display: flex; }
.fk-abe-head { background: #17133b; color: #fff; display: flex; align-items: center; gap: 10px; padding: 12px 14px; }
.fk-abe-head img { width: 40px; height: 40px; border-radius: 50%; border: 2px solid #2ea69c; }
.fk-abe-head .fk-abe-names { flex: 1; line-height: 1.2; }
.fk-abe-head .fk-abe-names b { display: block; font-size: 1.05rem; }
.fk-abe-head .fk-abe-names span { font-size: .82rem; color: #b9b6d6; }
.fk-abe-close { border: 0; background: none; color: #b9b6d6; font-size: 1.3rem; cursor: pointer; padding: 4px 6px; }
.fk-abe-msgs { flex: 1; overflow-y: auto; padding: 14px; background: #faf9f6; }
.fk-abe-m { max-width: 82%; margin-bottom: 10px; padding: 9px 13px; border-radius: 14px; font-size: .95rem; line-height: 1.5; white-space: pre-wrap; }
.fk-abe-m.fk-abe-from-abe { background: #efedf5; color: #17133b; border-bottom-left-radius: 4px; margin-right: auto; }
.fk-abe-m.fk-abe-from-you { background: #2ea69c; color: #fff; border-bottom-right-radius: 4px; margin-left: auto; }
.fk-abe-typing { color: #9a9ab0; font-style: italic; }
.fk-abe-inputrow { display: flex; gap: 8px; padding: 10px; border-top: 1px solid #e8e6f0; background: #fff; }
.fk-abe-inputrow input { flex: 1; border: 1.5px solid rgba(23,26,66,.16); border-radius: 999px; padding: 10px 14px; font-size: .95rem; font-family: inherit; }
.fk-abe-inputrow input:focus { outline: none; border-color: #2ea69c; }
.fk-abe-send { border: 0; background: #2ea69c; color: #fff; border-radius: 999px; padding: 10px 18px; font-size: .95rem; font-weight: 700; cursor: pointer; font-family: inherit; }
.fk-abe-send:disabled { opacity: .5; cursor: default; }
@media (max-width: 640px) {
  .fk-abe-hi { right: 90px; max-width: 210px; font-size: .9rem; }
  .fk-abe-panel { right: 12px; bottom: 88px; }
}
