.rmai-card{margin:28px auto;padding:28px 32px;max-width:1200px;background:#edf7f7;border:1px solid #dce5e6;border-radius:18px;display:flex;align-items:center;justify-content:space-between;gap:24px;font-family:inherit;color:#203638}.rmai-card h2{font-size:clamp(23px,3vw,34px);margin:8px 0}.rmai-card p{margin:0;line-height:1.5}.rmai-card small{letter-spacing:.12em;font-size:11px}.rmai-card button,.rmai-dialog button{cursor:pointer;border:0;border-radius:10px;padding:12px 17px;background:#008e91;color:#fff;font:inherit}.rmai-card button{flex-shrink:0;display:flex;align-items:center;gap:9px}.rmai-dialog{box-sizing:border-box;position:fixed;top:50%;transform:translateY(-50%);left:0;right:0;margin:0 auto;width:min(540px,96vw);height:var(--rmai-chat-height, min(820px,94dvh));max-height:94dvh;padding:0;border:1px solid #dce5e6;border-radius:20px;overflow:hidden;background:#f3f5f5;color:#293335;box-shadow:0 22px 90px #0005;font-family:inherit}.rmai-dialog[open]{display:flex;flex-direction:column}.rmai-dialog::backdrop{background:#20363880;backdrop-filter:blur(3px)}.rmai-chat-header{flex-shrink:0;display:flex;align-items:center;gap:12px;background:#008e91;padding:15px 17px;color:white}.rmai-avatar{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#dff4f4;color:#008e91;border-radius:50%;font-size:29px;font-weight:700;flex-shrink:0}.rmai-header-copy{flex:1;min-width:0}.rmai-dialog h2{font-size:18px;font-weight:650;line-height:1.3;margin:0;color:#fff;letter-spacing:0}.rmai-header-state{font-size:12px;color:#dff4f4;display:block;margin-top:3px}.rmai-dialog [data-close]{background:transparent;color:#fff;font-size:25px;padding:3px 8px;min-width:34px;min-height:34px;border-radius:50%}.rmai-mode-switch{flex-shrink:0;display:flex;gap:4px;padding:7px 12px;background:#fafbfb;border-bottom:1px solid #dce5e6}.rmai-dialog .rmai-mode-switch button{display:flex;justify-content:center;align-items:center;gap:7px;flex:1;padding:9px 12px;background:transparent;color:#65736d;border-radius:8px;font-size:13px;font-weight:600}.rmai-dialog .rmai-mode-switch button[aria-pressed=true]{background:#dff4f4;color:#008e91}.rmai-chat-body{flex:1;min-height:80px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:14px 15px 18px;background-color:#f3f5f5;background-image:radial-gradient(#008e9112 .8px,transparent .8px);background-size:17px 17px;display:flex;flex-direction:column;align-items:stretch;gap:11px}.rmai-day{align-self:center;font-size:10px;color:#65736d;background:#ffffffcc;padding:4px 10px;border-radius:5px;margin-bottom:3px}.rmai-chat-message{position:relative;border-radius:0 12px 12px 12px;padding:10px 12px 6px;background:#fff;box-shadow:0 1px 2px #20363814;max-width:86%;align-self:flex-start;overflow-wrap:anywhere;flex-shrink:0}.rmai-chat-message.assistant:before{content:'';position:absolute;left:-6px;top:0;border-top:7px solid white;border-left:7px solid transparent}.rmai-chat-message.user{background:#dff4f4;border-radius:12px 0 12px 12px;align-self:flex-end}.rmai-chat-message.user:before{content:'';position:absolute;right:-6px;top:0;border-top:7px solid #dff4f4;border-right:7px solid transparent}.rmai-chat-message p{font-size:14px;line-height:1.55;margin:0;white-space:pre-wrap;color:#293335}.rmai-chat-message small{font-size:12px;line-height:1.5;display:block;color:#65736d;margin-top:5px}.rmai-message-meta{display:flex;align-items:center;justify-content:flex-end;gap:5px;margin-top:5px;min-height:19px;color:#65736d;font-size:10px;line-height:1}.rmai-message-meta .rmai-ui-icon svg{width:12px;height:12px}.rmai-message-meta time{font-size:10px;white-space:nowrap;margin-left:3px}.rmai-dialog .rmai-bubble-play{display:flex;align-items:center;background:transparent;color:#65736d;padding:3px;border-radius:5px}.rmai-bubble-play .rmai-ui-icon svg{width:16px;height:16px}.rmai-intro{margin:0}.rmai-intro small{font-size:12px}.rmai-question:empty,.rmai-status:empty,.rmai-review:empty{display:none}.rmai-typing{display:flex;align-items:center;gap:4px;align-self:flex-start;background:#fff;border-radius:0 10px 10px 10px;padding:10px 12px;color:#65736d;flex-shrink:0}.rmai-typing span{width:5px;height:5px;background:#008e91;border-radius:50%;animation:rmai-dot 900ms ease-in-out infinite alternate}.rmai-typing span:nth-child(2){animation-delay:200ms}.rmai-typing span:nth-child(3){animation-delay:400ms}.rmai-typing small{font-size:10px;margin-left:5px}.rmai-chat-composer{flex-shrink:0;padding:10px 12px 8px;background:#fafbfb;border-top:1px solid #dce5e6;max-height:48%;overflow:auto}.rmai-status{font-size:11px;line-height:1.45;color:#65736d;margin:0 0 8px;text-align:center}.rmai-dialog [data-record]{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:12px 16px;min-height:49px;border-radius:24px;background:#008e91;font-size:14px;font-weight:600;color:#fff}.rmai-mic-icon{display:inline-flex;flex-shrink:0}.rmai-mic-icon svg{width:23px;height:23px}.rmai-dialog [data-record].recording{background:#ac3d37}.rmai-voice-actions{display:flex;justify-content:center;gap:9px;flex-wrap:wrap;margin-top:4px}.rmai-dialog [data-pause],.rmai-dialog [data-replay],.rmai-dialog [data-text-replay],.rmai-dialog [data-reset]{display:flex;align-items:center;justify-content:center;gap:5px;background:transparent;color:#65736d;font-size:11px;padding:5px 7px}.rmai-dialog .rmai-ui-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.rmai-dialog .rmai-ui-icon svg{width:17px;height:17px}.rmai-chat-bottom{display:flex;flex-direction:column;align-items:center;gap:2px;margin-top:5px}.rmai-privacy{font-size:9px;line-height:1.35;color:#65736d;text-align:center;max-width:420px;display:block}.rmai-privacy a{color:#65736d}.rmai-fallback{margin:0}.rmai-fallback>label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.rmai-write-row{display:flex;align-items:flex-end;gap:8px}.rmai-fallback textarea{box-sizing:border-box;width:100%;max-height:105px;min-height:43px;line-height:1.4;padding:11px 14px;border:1px solid #dce5e6;border-radius:22px;background:white;color:#293335;font:inherit;font-size:16px;resize:none}.rmai-fallback textarea:focus{outline:2px solid #008e91;outline-offset:0}.rmai-dialog .rmai-fallback button[type=submit]{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:44px;height:44px;padding:0;border-radius:50%;font-size:0;color:white;background:#008e91}.rmai-fallback button[type=submit] svg{width:21px;height:21px}.rmai-dialog [data-text-replay]{margin:4px auto 0}.rmai-dialog [data-confirm]{width:100%;display:flex;align-items:center;justify-content:center;gap:7px;padding:12px;margin-top:9px;border-radius:21px;font-size:13px;background:#008e91}.rmai-review{margin:12px 0 4px;padding:10px 0 0;border-top:1px solid #dce5e6}.rmai-summary-item{display:flex;flex-direction:column;gap:3px;margin:0 0 9px}.rmai-summary-item strong{font-size:13px;line-height:1.4}.rmai-review small{font-size:11px}.rmai-chat-message .rmai-review p{font-size:12px;line-height:1.5;margin:9px 0}.rmai-review>small{font-size:10px;color:#65736d}.rmai-permission{background:#fff;border:1px solid #dce5e6;border-radius:12px;padding:11px;font-size:12px;line-height:1.5;flex-shrink:0}.rmai-permission summary{cursor:pointer;font-weight:600;margin-top:9px}.rmai-permission ol{padding-left:18px}.rmai-permission li{margin:6px 0}.rmai-permission p{font-size:11px;color:#65736d}.rmai-native-permission:empty,.rmai-native-start:empty{display:none}.rmai-native-permission small,.rmai-native-start small{display:block;font-size:11px;margin:0 0 7px;color:#65736d}.rmai-native-permission microphone,.rmai-native-start microphone{display:block;opacity:1;color:#203638;background:#fff;font-size:16px;border-radius:9px}.rmai-native-start{padding:2px 0 5px;text-align:center}.rmai-native-start microphone{margin:0 auto}.rmai-listening{display:flex;justify-content:center;align-items:center;height:23px;gap:4px;margin:1px 0 8px}.rmai-listening span{width:4px;height:7px;background:#ac3d37;border-radius:4px;animation:rmai-wave 700ms ease-in-out infinite alternate}.rmai-listening span:nth-child(2){animation-delay:150ms}.rmai-listening span:nth-child(3){animation-delay:300ms}.rmai-listening span:nth-child(4){animation-delay:450ms}.rmai-listening span:nth-child(5){animation-delay:600ms}.rmai-dialog [hidden]{display:none!important}.rmai-dialog button:disabled{opacity:.55;cursor:wait}.rmai-dialog :focus-visible,.rmai-card :focus-visible{outline:3px solid #00b4b3;outline-offset:2px}@keyframes rmai-wave{to{height:21px}}@keyframes rmai-dot{to{opacity:.35}}@media(prefers-reduced-motion:reduce){.rmai-listening span,.rmai-typing span{animation:none}}@media(max-width:600px){.rmai-card{display:block;margin:20px 12px;padding:24px}.rmai-card button{width:100%;margin-top:18px;justify-content:center}.rmai-dialog{border-radius:17px;width:96vw}.rmai-chat-header{padding:12px 14px}.rmai-chat-body{padding:12px 12px 15px}.rmai-chat-message{max-width:88%}.rmai-dialog h2{font-size:17px}.rmai-dialog .rmai-mode-switch button{font-size:12px;padding:8px}.rmai-chat-composer{padding:9px 10px 7px}}

.rmai-chat-composer{padding-bottom:max(7px,env(safe-area-inset-bottom))}.rmai-chat-body{-webkit-overflow-scrolling:touch}.rmai-dialog button{touch-action:manipulation}@media(max-width:600px){.rmai-dialog [data-close],.rmai-dialog [data-pause],.rmai-dialog [data-replay],.rmai-dialog [data-text-replay],.rmai-bubble-play{min-height:44px;min-width:44px}}

.rmai-start-hint{margin:4px 0 12px;text-align:center;font-size:14px;font-weight:650;color:#008e91}.rmai-first-tap .rmai-native-start{padding:12px;background:#edf7f7;border:2px solid #008e91;border-radius:20px}.rmai-first-tap .rmai-native-start microphone{font-size:18px;padding:14px;min-height:56px;color:#203638;background:#fff}.rmai-first-tap .rmai-voice-actions:empty{display:none}

.rmai-native-permission:not(:empty){padding:14px;border:2px solid #008e91;border-radius:16px;background:#edf7f7}.rmai-native-permission small{font-size:14px;font-weight:700;color:#008e91;text-align:center}.rmai-native-permission microphone{font-size:18px;padding:14px;min-height:56px;margin:auto}.rmai-first-tap .rmai-start-hint{font-size:15px;color:#203638}

/* rentmas palette: teal accent, dark teal actions, neutral chat surface. */
.rmai-card button:hover,.rmai-dialog [data-record]:not(.recording):hover,.rmai-dialog [data-confirm]:hover,.rmai-dialog .rmai-fallback button[type=submit]:hover{background:#00666a}.rmai-native-start microphone,.rmai-native-permission microphone,.rmai-first-tap .rmai-native-start microphone{background:#008e91;color:#fff;border-color:#008e91}.rmai-dialog .rmai-mode-switch button[aria-pressed=true]{box-shadow:none;border:0}

.rmai-dialog [data-retry]{display:flex;align-items:center;justify-content:center;min-height:44px;width:100%;margin:0 0 10px;background:#008e91;color:#fff;font-size:14px;font-weight:600}.rmai-dialog [data-retry]:hover{background:#00666a}

.rmai-avatar{background:#fff;overflow:hidden}.rmai-avatar img{display:block;width:32px;height:32px;object-fit:contain;border:0;border-radius:0}

.rmai-info-link{display:block;margin-top:9px;color:#008e91;text-decoration:underline;text-underline-offset:3px;font-size:14px;font-weight:600;line-height:1.5}

/* Compact invitation banner: matching desktop and mobile layouts. */
.rmai-card.rmai-discover-banner{box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:24px;max-width:1200px;margin:22px auto;padding:25px 28px;border:1px solid #a8e2e3;border-radius:17px;background:#fff;box-shadow:0 8px 26px #009b9f0b;font-family:inherit;color:#172e38}
.rmai-banner-intro{display:flex;align-items:flex-start;gap:17px;min-width:0}
.rmai-banner-symbol{display:inline-flex;color:#00abad;flex:0 0 44px;width:44px;height:44px;margin-top:3px}
.rmai-banner-symbol svg{display:block;width:100%;height:100%}
.rmai-banner-copy{min-width:0}.rmai-banner-heading{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.rmai-discover-banner h2{margin:0;color:#172e38;font-family:inherit;font-size:clamp(20px,2vw,26px);line-height:1.2;font-weight:700;letter-spacing:-.5px}
.rmai-banner-badge{display:inline-flex;align-items:center;padding:4px 9px;border-radius:20px;background:#def6f5;color:#007e84;font-size:10px;font-weight:700;letter-spacing:.3px;line-height:1}
.rmai-discover-banner .rmai-banner-subtitle{margin:7px 0 0;font-size:15px;line-height:1.4;color:#63737e}
.rmai-banner-hint{display:block;margin-top:4px;color:#74828a;font-size:12px;line-height:1.4}
.rmai-card.rmai-discover-banner .rmai-banner-cta{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:17px;flex:0 0 auto;width:auto;min-height:48px;margin:0;padding:12px 23px;border:0;border-radius:28px;background:#009fa5;color:#fff;font-family:inherit;font-size:15px;font-weight:650;line-height:1.3;white-space:nowrap;text-align:center;cursor:pointer;transition:background .16s,box-shadow .16s}
.rmai-card.rmai-discover-banner .rmai-banner-cta:hover{background:#00868d;color:#fff;box-shadow:0 4px 12px #008b8f20}
.rmai-banner-arrow{display:inline-flex;width:20px;height:20px;flex-shrink:0}.rmai-banner-arrow svg{width:100%;height:100%}
@media(max-width:700px){.rmai-card.rmai-discover-banner{flex-direction:column;align-items:stretch;gap:15px;margin:16px 12px;padding:19px 20px;border-radius:15px}.rmai-banner-intro{gap:12px}.rmai-banner-symbol{width:35px;height:35px;flex-basis:35px;margin-top:2px}.rmai-discover-banner h2{font-size:20px;letter-spacing:-.35px}.rmai-banner-heading{gap:7px}.rmai-banner-badge{font-size:9px;padding:4px 7px}.rmai-discover-banner .rmai-banner-subtitle{font-size:13px;margin-top:6px}.rmai-banner-hint{font-size:11px;margin-top:3px}.rmai-card.rmai-discover-banner .rmai-banner-cta{width:100%;min-height:44px;padding:11px 18px;font-size:14px}}
@media(prefers-reduced-motion:reduce){.rmai-card.rmai-discover-banner .rmai-banner-cta{transition:none}}

/* More compact banner proportions. */
.rmai-card.rmai-discover-banner{padding:16px 22px;gap:18px;margin:16px auto}
.rmai-banner-intro{gap:13px}.rmai-banner-symbol{width:36px;height:36px;flex-basis:36px}
.rmai-discover-banner h2{font-size:clamp(19px,1.8vw,23px)}
.rmai-discover-banner .rmai-banner-subtitle{margin-top:4px;font-size:14px}
.rmai-banner-hint{margin-top:2px;font-size:11px}
.rmai-card.rmai-discover-banner .rmai-banner-cta{min-height:44px;padding:10px 20px;font-size:14px}
@media(max-width:700px){.rmai-card.rmai-discover-banner{padding:14px 16px;gap:10px;margin:12px}.rmai-banner-intro{gap:10px}.rmai-banner-symbol{width:29px;height:29px;flex-basis:29px}.rmai-discover-banner h2{font-size:18px;line-height:1.18}.rmai-discover-banner .rmai-banner-subtitle{font-size:12px;margin-top:4px}.rmai-banner-hint{font-size:10px;margin-top:2px}.rmai-card.rmai-discover-banner .rmai-banner-cta{min-height:44px;padding:10px 16px;font-size:13px}}

button.rmai-floating-launcher{box-sizing:border-box;position:fixed;right:24px;bottom:24px;z-index:9998;display:flex;align-items:center;justify-content:center;width:48px;height:48px;min-width:48px;min-height:48px;padding:12px;border:1px solid #fff!important;border-radius:50%;background:#008e91!important;color:#fff!important;font-family:inherit;line-height:1;box-shadow:0 3px 14px #20363826;cursor:pointer;touch-action:manipulation;overflow:visible}
button.rmai-floating-launcher:hover,button.rmai-floating-launcher:active{background:#00777b!important;color:#fff!important}
button.rmai-floating-launcher:focus-visible{outline:3px solid #00b4b3;outline-offset:3px}
button.rmai-floating-launcher .rmai-launcher-symbol{display:flex;width:24px;height:24px;color:inherit;flex-shrink:0}
button.rmai-floating-launcher svg{display:block;width:24px;height:24px;color:inherit;stroke:currentColor}
button.rmai-floating-launcher .rmai-launcher-tooltip{display:block!important;position:absolute;right:calc(100% + 10px);top:50%;transform:translateY(-50%);padding:9px 12px;border-radius:8px;background:#203638;color:#fff;font-size:13px;font-weight:500;line-height:1.3;white-space:nowrap;box-shadow:0 2px 8px #20363820;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .15s,visibility .15s}
button.rmai-floating-launcher:focus-visible .rmai-launcher-tooltip{opacity:1;visibility:visible}
@media(hover:hover){button.rmai-floating-launcher:hover .rmai-launcher-tooltip{opacity:1;visibility:visible}}
@media(max-width:600px){button.rmai-floating-launcher{right:16px;bottom:calc(96px + env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:reduce){button.rmai-floating-launcher .rmai-launcher-tooltip{transition:none}}

/* Center the launcher at a configurable percentage of the visible viewport. */
button.rmai-floating-launcher{bottom:auto;top:clamp(32px,var(--rmai-launcher-position,60%),calc(100% - 32px));transform:translateY(-50%)}
@media(max-width:600px){button.rmai-floating-launcher{bottom:auto;top:clamp(32px,var(--rmai-launcher-position,60%),calc(100% - 120px - env(safe-area-inset-bottom)))}}

/* The modal is mounted under body; explicitly carry the portal font into it. */
.rmai-dialog,.rmai-dialog :where(h1,h2,h3,h4,p,small,strong,label,button,input,textarea,select,summary,time,a,span){font-family:var(--rmai-portal-font,inherit)!important}
