/* Shared conversation UI only; the approved FAB, logo and homepage are untouched. */
.concierge-panel[data-local-preview]{z-index:114;width:min(350px,calc(100vw - 24px));height:auto;min-height:0;top:auto;left:auto;max-height:min(640px,calc(var(--concierge-viewport,100dvh) - var(--concierge-bottom-space,100px) - 12px - env(safe-area-inset-top)));grid-template-rows:auto auto minmax(0,1fr) auto;border-radius:14px;overflow:hidden;background:#F7F1EC;color:#050505}
.concierge-panel .concierge-status,.concierge-panel .concierge-storage-note{font:12px/1.6 "Montserrat",sans-serif;color:#050505;overflow-wrap:anywhere}
.concierge-panel .concierge-messages{min-height:0;padding:12px;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain}
.concierge-panel :is(.cmsg,.message,[data-welcome]){width:fit-content;max-width:94%;box-sizing:border-box;border-radius:10px;padding:9px 11px;margin-bottom:8px}
.concierge-panel .concierge-head :is(.concierge-title,h2){font-size:20px;line-height:1.3;color:#E7B1A8}
.concierge-panel .concierge-head{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:8px;padding:12px;background:#050505;color:#F7F1EC}
.concierge-panel .concierge-head>:first-child{min-width:0;flex:1}
.concierge-panel .concierge-head :is(.concierge-sub,p){font:400 12px/1.5 "Montserrat",sans-serif;letter-spacing:0;text-transform:none;margin:5px 0 0}
.concierge-panel .concierge-header-actions{display:flex;flex:0 0 auto;gap:0;align-items:flex-start}
.concierge-panel .concierge-header-actions .concierge-close{position:static;flex:0 0 36px;width:36px;height:44px;color:inherit}
.concierge-panel .concierge-options{position:static;font:12px/1.5 "Montserrat",sans-serif;margin:0;color:inherit}
.concierge-panel .concierge-options>summary{display:grid;place-items:center;list-style:none;cursor:pointer;width:36px;height:44px;font:24px/1 "Montserrat",sans-serif;border-radius:3px}
.concierge-panel .concierge-options>summary::-webkit-details-marker{display:none}
.concierge-panel .concierge-options>summary:hover{background:rgba(231,177,168,.12)}
.concierge-panel .concierge-options-body{position:absolute;z-index:2;top:calc(100% - 6px);right:12px;width:min(280px,calc(100% - 24px));box-sizing:border-box;max-height:min(180px,calc(var(--concierge-viewport,100dvh) - 190px));overflow-y:auto;padding:12px;background:#F7F1EC;color:#050505;border:1px solid #E7B1A8;border-radius:8px;box-shadow:0 6px 20px rgba(5,5,5,.18)}
.concierge-panel .concierge-options:not([open]) .concierge-options-body{display:none}
.concierge-panel .concierge-options-body .concierge-controls{margin:0;display:grid}
.concierge-panel .concierge-options-body .concierge-controls button{text-align:left}
.concierge-panel .concierge-options-body :focus-visible{outline-color:#050505}
.concierge-panel .concierge-status:empty,.concierge-panel .concierge-controls:empty,.concierge-panel .concierge-contact[hidden],.concierge-panel .concierge-guide-choices[hidden]{display:none}
.concierge-panel .concierge-form textarea{resize:none;min-width:0;flex:1;box-sizing:border-box;border:0;background:transparent;padding:10px;color:#050505;font:16px/1.5 "Montserrat",sans-serif;min-height:44px;max-height:112px}
.concierge-panel :is(.concierge-log .message,[data-welcome]){font:400 14px/1.55 "Montserrat",sans-serif}
.concierge-panel .cmsg:not(.user){color:#050505}
.concierge-panel .concierge-form{display:flex;flex-shrink:0;align-items:flex-end;padding:8px}
.concierge-panel .concierge-form button{min-height:44px;min-width:64px}
.concierge-panel .concierge-controls{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}
.concierge-panel .concierge-controls button{font:500 12px/1.5 "Montserrat",sans-serif;padding:9px 10px;min-height:40px;color:#F2C9C2;background:#050505;border:1px solid #E7B1A8;cursor:pointer}
.concierge-panel button:disabled{opacity:.6;cursor:default}
.concierge-panel .concierge-controls button[hidden]{display:none}
.concierge-panel .concierge-controls:not(:has(> :not([hidden]))){display:none}
.concierge-panel .concierge-contact button[hidden]{display:none}
.concierge-panel .concierge-log p{margin:6px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}
.concierge-panel .concierge-log strong{font-size:11px;letter-spacing:.04em}
.concierge-panel .concierge-log .message{overflow-wrap:anywhere}
.concierge-panel .concierge-preview-note{flex-shrink:0;margin:0;padding:7px 12px;background:#F7F1EC;color:#050505;border-bottom:1px solid rgba(231,177,168,.45);font:12px/1.45 "Montserrat",sans-serif}
.concierge-panel .concierge-preview-note[hidden]{display:none}
.concierge-panel .concierge-messages>a{display:inline-block;color:#050505;font:500 13px/1.5 "Montserrat",sans-serif;padding:8px 0}
.concierge-panel .concierge-contact{color:#050505;font:12px/1.6 "Montserrat",sans-serif;margin:12px 0;overflow-wrap:anywhere}
.concierge-panel :is(.concierge-contact-links,.concierge-membership-links){display:flex;flex-wrap:wrap;gap:6px}
.concierge-panel :is(.concierge-contact-links,.concierge-membership-links)[hidden]{display:none}.concierge-panel :is(.concierge-contact-links,.concierge-membership-links)>a{display:inline-flex;align-items:center;min-height:40px;padding:8px;font:500 12px/1.5 "Montserrat",sans-serif;background:#050505;color:#F2C9C2;border:1px solid #E7B1A8;text-decoration:none}
.concierge-panel .concierge-contact a,.concierge-panel .concierge-contact button{display:inline-flex;align-items:center;box-sizing:border-box;min-height:40px;padding:8px;font:500 12px/1.5 "Montserrat",sans-serif;border:1px solid #E7B1A8;background:#050505;color:#F2C9C2;cursor:pointer;text-decoration:none}
.concierge-panel .concierge-contact span{display:inline-block;margin:8px 10px 0 0;user-select:text}
.concierge-panel .concierge-contact p{margin:8px 0}
.concierge-panel .concierge-contact [hidden]{display:none}
.concierge-panel :focus-visible{outline:2px solid #050505;outline-offset:3px}
.concierge-panel .concierge-head :focus-visible,.concierge-panel input:focus-visible,.concierge-panel textarea:focus-visible{outline-color:#E7B1A8}
@media(max-width:600px){.concierge-panel[data-local-preview]{right:12px;bottom:calc(12px + env(safe-area-inset-bottom));max-height:calc(var(--concierge-viewport,100dvh) - var(--concierge-bottom-space,12px) - 12px - env(safe-area-inset-top))}.concierge-panel .concierge-form input{font-size:16px}}
/* Keep Devanagari matras/conjuncts legible; Latin branding is unchanged. */
.concierge-panel:lang(hi) .cmsg,
.concierge-panel:lang(hi) textarea,
.concierge-panel:lang(hi) button,
.concierge-panel:lang(hi) p {
  font-family: Montserrat, "Nirmala UI", "Noto Sans Devanagari", Mangal, sans-serif;
  line-height: 1.7;
  letter-spacing: normal;
}
.concierge-panel:lang(hi) .cmsg p,
.concierge-panel:lang(hi) textarea { font-size: 16px; }
.concierge-panel:lang(hi) .concierge-form button { font-size: 14px; }
