.stage-assistant{font-family:Arial,"PingFang SC",sans-serif;color:#25211f;letter-spacing:0;line-height:1.5}.stage-assistant [hidden]{display:none!important}.stage-assistant button,.stage-assistant input,.stage-assistant select{font:inherit}.stage-assistant button{cursor:pointer}.buddy-launch{position:fixed;z-index:1000;right:22px;bottom:22px;display:flex;align-items:center;gap:9px;background:#7b2433;color:#fff6e9;border:1px solid #b86d70;border-radius:40px;padding:5px 18px 5px 5px;box-shadow:0 8px 30px #0004;font-size:14px}.buddy-launch img{width:56px;height:56px;object-fit:contain}.buddy-panel{position:fixed;z-index:1001;right:22px;bottom:22px;width:min(420px,calc(100vw - 32px));height:min(740px,calc(100dvh - 44px));background:#faf7f1;border:1px solid #d0bcae;border-radius:22px;box-shadow:0 20px 80px #0006;overflow:hidden;display:flex;flex-direction:column;text-align:left}.buddy-head{padding:14px 18px;display:flex;gap:12px;align-items:center;background:#541b27;color:#fff5e7;flex:none}.buddy-head img{width:48px;height:48px;object-fit:contain}.buddy-head strong{font-size:20px}.buddy-head small{display:block;font-size:11px;opacity:.8}.buddy-close{margin-left:auto;background:none;border:0;color:inherit;font-size:30px!important;line-height:1;padding:8px}.buddy-chat{display:flex;flex-direction:column;min-height:0;flex:1}.buddy-messages{flex:1;overflow:auto;padding:18px;min-height:80px}.buddy-message{white-space:pre-wrap;font-size:14px;margin:0 20px 14px 0;padding:13px 15px;background:#eee6dc;border-radius:3px 16px 16px 16px;overflow-wrap:anywhere}.buddy-user{margin:0 0 14px 22px;background:#732b39;color:#fff8ec;border-radius:16px 3px 16px 16px}.buddy-options{display:flex;gap:8px;padding:9px 16px;border-top:1px solid #e7ded3}.buddy-options label{font-size:11px;flex:1;min-width:0}.buddy-options label:first-child{flex:2}.buddy-options select{display:block;width:100%;padding:8px 3px;border:1px solid #d6c9bb;border-radius:7px;background:#fffdf9;color:#332b27;font-size:12px}.buddy-quick{display:flex;flex-wrap:wrap;gap:5px;padding:0 16px 10px}.buddy-quick button,.buddy-back{background:transparent;border:1px solid #cfb9b3;color:#722637;border-radius:20px;padding:6px 10px;font-size:12px}.buddy-form{display:flex;gap:8px;padding:0 16px}.buddy-form input{width:0;min-width:0;flex:1;background:white;border:1px solid #cfbfb4;border-radius:10px;padding:12px;font-size:14px}.buddy-form button,.buddy-recommendation button{border:0;background:#732b39;color:#fff8ec;border-radius:9px;padding:10px 13px;font-size:13px}.buddy-form button:disabled{opacity:.5}.buddy-note{padding:8px 16px 12px;font-size:10px;color:#786960}.buddy-recommendation{border:1px solid #cfb9b3;border-radius:12px;padding:14px;margin-bottom:15px}.buddy-recommendation p{font-size:14px;white-space:pre-line;margin:0 0 10px}.buddy-recommendation small{display:block;font-size:11px;margin-top:9px;color:#76665d}.buddy-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.buddy-booking{flex:1;display:flex;flex-direction:column;min-height:0}.buddy-back{align-self:flex-start;margin:10px 14px}.buddy-booking iframe{border:0;width:100%;flex:1;background:#faf7f1}.buddy-panel.is-booking{width:min(880px,calc(100vw - 32px))}.assistant-embedded>header,.assistant-embedded>footer,.assistant-embedded .booking-intro,.assistant-embedded .language-switch{display:none!important}.assistant-embedded main{padding:12px;max-width:100%}.assistant-embedded .booking-layout{display:flex;flex-direction:column}.assistant-embedded .summary{width:100%;box-sizing:border-box}.assistant-embedded .map-panel{width:100%;box-sizing:border-box}@media(max-width:540px){.buddy-panel,.buddy-panel.is-booking{inset:0;width:100%;height:100dvh;border:0;border-radius:0}.buddy-launch{right:14px;bottom:14px}.buddy-launch img{width:45px;height:45px}.buddy-head{padding-top:max(14px,env(safe-area-inset-top))}.buddy-note{padding-bottom:max(12px,env(safe-area-inset-bottom))}}
.buddy-launch{bottom:calc(22px + env(safe-area-inset-bottom,0px))}body:has(#checkout) .buddy-launch{bottom:calc(82px + env(safe-area-inset-bottom,0px))}@media(max-width:540px){.buddy-launch{bottom:calc(14px + env(safe-area-inset-bottom,0px))}body:has(#checkout) .buddy-launch{bottom:calc(82px + env(safe-area-inset-bottom,0px))}}
.buddy-portrait{display:inline-flex;flex:none;width:56px;height:56px;align-items:center;justify-content:center;overflow:hidden;background:#fff;border-radius:50%}.buddy-head .buddy-portrait{width:48px;height:48px}.buddy-portrait img,.buddy-motion{display:block;width:100%;height:100%;object-fit:contain}.buddy-head .buddy-portrait img{width:100%;height:100%}@media(max-width:540px){.buddy-launch .buddy-portrait{width:45px;height:45px}.buddy-launch .buddy-portrait img{width:100%;height:100%}}
/* Keep the companion floating; fullscreen is an explicit choice. */
.stage-assistant{--buddy-gap:22px;--buddy-launch-space:102px;--buddy-view-height:100dvh;--buddy-view-bottom:0px}
.buddy-launch{z-index:1002;bottom:calc(var(--buddy-view-bottom) + var(--buddy-gap) + env(safe-area-inset-bottom,0px));transition:transform .22s ease,box-shadow .22s ease}
.buddy-launch:hover{transform:translateY(-2px);box-shadow:0 12px 34px #0005}
.buddy-launch:active{transform:scale(.96)}
.buddy-panel,.buddy-panel.is-booking{inset:auto var(--buddy-gap) calc(var(--buddy-view-bottom) + var(--buddy-launch-space) + env(safe-area-inset-bottom,0px)) auto;width:min(420px,calc(100vw - 2 * var(--buddy-gap)));height:min(680px,calc(var(--buddy-view-height) * .8),calc(var(--buddy-view-height) - var(--buddy-launch-space) - var(--buddy-gap) - env(safe-area-inset-bottom,0px)));border:1px solid #d0bcae;border-radius:22px;opacity:0;transform:translateY(18px) scale(.96);transform-origin:bottom right;pointer-events:none;transition:opacity .24s ease,transform .26s cubic-bezier(.22,.8,.3,1)}
.buddy-panel.is-booking{width:min(880px,calc(100vw - 2 * var(--buddy-gap)))}
.buddy-panel.is-open{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}
.buddy-expand{margin-left:auto;background:none;border:0;color:inherit;min-width:40px;min-height:44px;font-size:24px!important;padding:6px;line-height:1}
.buddy-close{margin-left:0;min-width:40px;min-height:44px}
.buddy-head{gap:8px;padding:12px 14px}
.buddy-head>div{min-width:0}
.buddy-head strong{font-size:18px}
.buddy-messages{overscroll-behavior:contain;overflow-anchor:none;-webkit-overflow-scrolling:touch;min-height:0}
.buddy-form input{font-size:16px}
.buddy-seat-link{display:block;border:1px solid #cfb9b3;background:transparent;color:#722637;border-radius:12px;padding:10px 13px;margin:0 0 18px;max-width:100%;font-size:13px!important;text-align:left}
.buddy-panel.is-fullscreen{inset:auto 0 var(--buddy-view-bottom);width:100%;height:var(--buddy-view-height);border-radius:0;border:0;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);box-sizing:border-box;z-index:1003}
.buddy-panel.is-fullscreen .buddy-head{padding-top:12px}
body:has(#checkout) .stage-assistant{--buddy-launch-space:160px}
body:has(#checkout) .buddy-launch{bottom:calc(var(--buddy-view-bottom) + 82px + env(safe-area-inset-bottom,0px))}
@media(max-width:540px){
 .stage-assistant{--buddy-gap:12px;--buddy-launch-space:80px}
 .buddy-launch{right:12px;font-size:12px}
 .buddy-head{padding:9px 10px;gap:6px}
 .buddy-head .buddy-portrait{width:38px;height:38px}
 .buddy-head small{font-size:10px}
 .buddy-messages{padding:12px}
 .buddy-message{margin-right:8px;padding:11px 12px}
 .buddy-user{margin-right:0;margin-left:15px}
 .buddy-quick{padding:0 12px 8px;gap:5px}
 .buddy-quick button{font-size:11px;padding:7px 9px}
 .buddy-form{padding:0 12px;gap:6px}
 .buddy-form input{padding:10px}
 .buddy-note{padding:6px 12px 9px;line-height:1.4}
}
@media(prefers-reduced-motion:reduce){.buddy-panel,.buddy-launch{transition:none}.buddy-launch:hover,.buddy-launch:active{transform:none}}

.stage-assistant.is-compact .buddy-note,.stage-assistant.is-compact .buddy-quick{display:none}.stage-assistant.is-compact .buddy-form{padding-bottom:10px}

/* Keep native controls readable when the surrounding website uses dark mode. */
.stage-assistant{color-scheme:light}
.stage-assistant .buddy-form input,.stage-assistant .buddy-form input:focus,.stage-assistant .buddy-form input:autofill{color:#25211f;background:#fff;-webkit-text-fill-color:#25211f;caret-color:#732b39;color-scheme:light}
.stage-assistant .buddy-form input:-webkit-autofill{-webkit-text-fill-color:#25211f;-webkit-box-shadow:0 0 0 1000px #fff inset;caret-color:#732b39}
.stage-assistant .buddy-form input::placeholder{color:#877b74;-webkit-text-fill-color:#877b74;opacity:1}
.buddy-media{margin:0 20px 14px 0;background:#eee6dc;border-radius:14px;overflow:hidden}
.buddy-media a{display:block}.buddy-media img{display:block;width:100%;max-height:320px;object-fit:contain;background:#eee6dc}
.buddy-media figcaption{padding:9px 12px;font-size:12px;color:#55473f;overflow-wrap:anywhere}
