/* Lün-Concierge: guest chat. Lün palette (navy #13294B, red #BA2700, sand #F5F3EC), theme fonts. */
.luen-chat-launch{position:fixed;right:24px;bottom:24px;z-index:8000;display:flex;align-items:center;gap:12px;border:0;padding:0;background:none;cursor:pointer;font-family:"DM Sans",sans-serif}
.luen-chat-launch__icon{width:64px;height:64px;border-radius:50%;background:#13294B;display:flex;align-items:center;justify-content:center;box-shadow:0 12px 30px -8px rgba(7,16,29,.45);transition:transform .25s ease,box-shadow .25s ease}
.luen-chat-launch__icon img{width:40px;height:40px;object-fit:contain}
.luen-chat-launch__label{background:#FFFFFF;color:#13294B;font-size:14px;font-weight:500;padding:10px 16px;box-shadow:0 8px 24px -10px rgba(7,16,29,.35);white-space:nowrap}
.luen-chat-launch:hover .luen-chat-launch__icon,.luen-chat-launch:focus-visible .luen-chat-launch__icon{transform:translateY(-3px);box-shadow:0 16px 34px -8px rgba(7,16,29,.5)}
.luen-chat-launch:focus-visible{outline:none}
.luen-chat-launch:focus-visible .luen-chat-launch__icon{outline:3px solid #BA2700;outline-offset:3px}
.luen-chat-launch[aria-expanded="true"] .luen-chat-launch__label{display:none}
body.luen-chat-on .trx_addons_scroll_to_top{bottom:104px!important}
body.luen-chat-open .trx_addons_scroll_to_top{opacity:0!important;pointer-events:none}

.luen-chat{position:fixed;right:24px;bottom:104px;z-index:8001;width:390px;max-width:calc(100vw - 32px);height:min(600px,calc(100vh - 140px));display:flex;flex-direction:column;background:#FFFFFF;box-shadow:0 30px 70px -20px rgba(7,16,29,.45);font-family:"DM Sans",sans-serif;color:#13294B;opacity:0;transform:translateY(16px);pointer-events:none;transition:opacity .25s ease,transform .25s ease;visibility:hidden}
.luen-chat.is-open{opacity:1;transform:none;pointer-events:auto;visibility:visible}
.luen-chat__head{display:flex;align-items:center;gap:12px;padding:16px 18px;background:#13294B;color:#FFFFFF}
.luen-chat__head img{width:34px;height:34px;object-fit:contain}
.luen-chat__title{margin:0;font-family:span,serif;font-size:20px;line-height:1.2;color:#FFFFFF;font-weight:500}
.luen-chat__sub{margin:2px 0 0;font-size:12px;color:#C9D2E0}
.luen-chat__close{margin-left:auto;width:36px;height:36px;border:0;background:transparent;color:#FFFFFF;font-size:24px;line-height:1;cursor:pointer}
.luen-chat__close:focus-visible{outline:2px solid #FFFFFF;outline-offset:2px}
.luen-chat__log{flex:1;overflow-y:auto;padding:18px;background:#F5F3EC;display:flex;flex-direction:column;gap:12px;scroll-behavior:smooth}
.luen-chat__msg{max-width:88%;padding:11px 14px;font-size:15px;line-height:1.5;overflow-wrap:anywhere}
.luen-chat__msg--bot{align-self:flex-start;background:#FFFFFF;color:#13294B}
.luen-chat__msg--guest{align-self:flex-end;background:#13294B;color:#FFFFFF}
.luen-chat__msg p{margin:0 0 .5em}
.luen-chat__msg p:last-child,.luen-chat__msg ul:last-child{margin-bottom:0}
.luen-chat__msg ul{margin:.2em 0 .6em;padding-left:1.1em}
.luen-chat__msg li{margin:.15em 0}
.luen-chat__msg a{color:#BA2700;text-decoration:underline;text-underline-offset:2px}
.luen-chat__msg--guest a{color:#FFFFFF}
/* the theme sets body.show_outline a:focus{outline:1px dotted #888 !important} after the first Tab */
body .luen-chat .luen-chat__msg a:focus-visible,body .luen-chat .luen-chat__note a:focus-visible{outline:2px solid #13294B!important;outline-offset:2px}
.luen-chat__typing{align-self:flex-start;background:#FFFFFF;padding:12px 16px;display:flex;gap:5px}
.luen-chat__typing span{width:7px;height:7px;border-radius:50%;background:#8E949E;animation:luenChatDot 1.2s infinite ease-in-out}
.luen-chat__typing span:nth-child(2){animation-delay:.15s}.luen-chat__typing span:nth-child(3){animation-delay:.3s}
@keyframes luenChatDot{0%,80%,100%{opacity:.3;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}
.luen-chat__chips{display:flex;flex-wrap:wrap;gap:8px;padding:0 18px 12px;background:#F5F3EC}
.luen-chat__chips[hidden]{display:none}
.luen-chat__chip{border:1px solid #BA2700;background:#FFFFFF;color:#BA2700;font:inherit;font-size:13px;padding:7px 12px;cursor:pointer;text-align:left}
.luen-chat__chip:hover,.luen-chat__chip:focus-visible{background:#BA2700;color:#FFFFFF;outline:none}
.luen-chat__form{display:flex;gap:8px;padding:12px;border-top:1px solid rgba(19,41,75,.1);background:#FFFFFF}
.luen-chat__input{flex:1;resize:none;border:1px solid #8E949E;padding:10px 12px;font:inherit;font-size:15px;line-height:1.4;color:#13294B;max-height:120px;min-height:44px;background:#FFFFFF}
.luen-chat__input:focus{outline:2px solid #13294B;outline-offset:0;border-color:#13294B}
.luen-chat__send{min-width:48px;border:0;background:#BA2700;color:#FFFFFF;font:inherit;font-weight:700;font-size:13px;letter-spacing:.06em;text-transform:uppercase;padding:0 16px;cursor:pointer}
.luen-chat__send:hover,.luen-chat__send:focus-visible{background:#962000;outline:none}
.luen-chat__send:focus-visible{box-shadow:0 0 0 2px #FFFFFF,0 0 0 4px #13294B}
.luen-chat__send[disabled]{opacity:.55;cursor:default}
.luen-chat__note{margin:0;padding:0 14px 8px;font-size:11.5px;line-height:1.45;color:#5F6672;background:#FFFFFF}
.luen-chat__note summary{display:inline-flex;align-items:center;gap:7px;min-height:26px;cursor:pointer;list-style:none;font-size:12px;color:#5F6672}
.luen-chat__note summary::-webkit-details-marker{display:none}
.luen-chat__note summary:hover{color:#13294B}
.luen-chat__note summary:focus-visible{outline:2px solid #13294B!important;outline-offset:2px}
.luen-chat__i{width:16px;height:16px;flex:none;border:1px solid currentColor;border-radius:50%;font:italic 700 11px/14px Georgia,serif;text-align:center}
.luen-chat__note[open] .luen-chat__i{background:#13294B;border-color:#13294B;color:#FFFFFF}
.luen-chat__note p{margin:2px 0 0}
.luen-chat__note a{color:#5F6672;text-decoration:underline;text-underline-offset:2px}
.luen-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media (max-width:600px){
  .luen-chat{right:0;bottom:0;width:100vw;max-width:none;height:100dvh}
  .luen-chat-launch{right:16px;bottom:16px}
  .luen-chat-launch__label{display:none}
  .luen-chat-launch__icon{width:58px;height:58px}
  .luen-chat__input{font-size:16px}
  body.luen-chat-on .trx_addons_scroll_to_top{bottom:88px!important}
  body.luen-chat-open{overflow:hidden}
}
@media (prefers-reduced-motion:reduce){.luen-chat,.luen-chat-launch__icon{transition:none}.luen-chat__typing span{animation:none}}
