.carla-room-background{position:absolute;inset:0;z-index:0;overflow:hidden;visibility:hidden}
.carla-room-loading{position:absolute;inset:0;z-index:100;display:grid;place-items:center;padding:20px;background:#11182766;backdrop-filter:blur(3px)}
.carla-room-loading-card{width:min(320px,100%);box-sizing:border-box;padding:24px;text-align:center;border-radius:18px;background:var(--chat-surface-solid,#fff);color:var(--chat-text,#172033);box-shadow:0 12px 40px #0004;font:15px system-ui}
.carla-room-loading-spinner{display:inline-block;width:28px;height:28px;border:3px solid #c2185b33;border-top-color:var(--chat-accent,#c2185b);border-radius:50%;animation:carla-room-loading-spin 1s linear infinite}
.carla-room-loading-actions{display:flex;justify-content:center;gap:10px;margin-top:18px}
.carla-room-loading-actions button{min-height:44px;padding:10px 18px;border:1px solid currentColor;border-radius:10px;background:transparent;color:inherit;cursor:pointer;font:inherit}
.carla-room-loading-actions button[hidden]{display:none}
.carla-room-loading-actions button:focus-visible{outline:3px solid var(--chat-accent,#c2185b);outline-offset:3px}
@keyframes carla-room-loading-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.carla-room-loading-spinner{animation:none}}
#voice_mode-panel .voice-mode-topbar{grid-template-columns:minmax(0,1fr) auto}
#voice_mode-panel .voice-mode-title-wrap{grid-column:1;align-items:flex-start;min-width:0}
#voice_mode-panel .voice-mode-title{text-align:left;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.voice-room-actions{grid-column:2;grid-row:1;justify-self:end;display:flex;align-items:center;gap:8px;flex-shrink:0}
.voice-room-actions>.voice-top-btn{flex:0 0 auto}
body.desktop-live-active #voice_mode-panel .voice-room-actions{grid-column:3;justify-self:end}
[data-room-active="true"] .carla-room-background{visibility:visible}
#chat-panel[data-room-active="true"] #chat-bg,#chat-panel[data-room-active="true"] #bg-video,#chat-panel[data-room-active="true"] .chat-multichat-background{visibility:hidden!important}
#voice_mode-panel[data-room-active="true"] .voice-mode-media-wrap{visibility:hidden!important}
#chat-panel[data-room-active="true"] #chat-content{background:transparent!important}
#chat-panel[data-room-active="true"][data-chat-view-mode="background"] #chat-content{pointer-events:none}
#chat-panel[data-room-active="true"][data-chat-view-mode="background"] #chat-header,#chat-panel[data-room-active="true"][data-chat-view-mode="background"] #inputBar{pointer-events:auto}
#chat-panel[data-room-active="true"][data-chat-view-mode="background"] #chat-chat{visibility:visible!important;pointer-events:none!important;position:static!important;mask-image:none!important;-webkit-mask-image:none!important}
#chat-panel[data-room-active="true"][data-chat-view-mode="background"] .conversation-display-timeline>.conversation-single-viewer.conversation-single-viewer-docked{visibility:visible!important;pointer-events:auto!important;position:absolute!important;top:auto!important;bottom:var(--room-message-bottom,84px)!important;left:auto!important;right:12px!important;width:min(440px,calc(100% - 168px))!important;height:clamp(132px,23dvh,190px)!important;transform:none!important;display:flex!important;flex-direction:column;overflow:hidden;border-radius:16px;background:var(--chat-surface-solid,#fff);box-shadow:0 4px 18px #0003}
#chat-panel .conversation-single-viewer-docked>.conversation-single-toolbar{position:relative;inset:auto;opacity:1;visibility:visible;pointer-events:auto;transform:none;border-radius:16px 16px 0 0;backdrop-filter:none;-webkit-backdrop-filter:none;height:auto;min-height:44px;flex-shrink:0;flex-wrap:wrap;padding:0 5px;box-shadow:none;touch-action:pan-y}
#chat-panel .conversation-single-viewer-docked .conversation-single-toolbar button{min-width:44px;min-height:44px}
#chat-panel .conversation-single-viewer-docked .conversation-single-count{flex:1;text-align:center}
#chat-panel .conversation-single-viewer-docked .conversation-single-latest{font-size:11px;flex:0 0 100%;min-height:32px!important;height:32px;padding:0 8px}
#chat-panel .conversation-single-viewer-docked .conversation-single-latest[hidden],#chat-panel .conversation-single-viewer-docked .conversation-single-size,#chat-panel .conversation-single-viewer-docked .conversation-single-message-actions{display:none!important}
#chat-panel .conversation-single-viewer-docked>.conversation-single-viewer-body{flex:1;height:auto;min-height:0;border-radius:0 0 16px 16px;clip-path:none}
#chat-panel .room-navigation-toggle{width:auto!important;gap:4px;padding-inline:8px!important}
#chat-panel .room-navigation-toggle>img{display:none}
#chat-panel .room-navigation-toggle::before{content:'\2725';font-size:23px;line-height:1}
#chat-panel .room-navigation-toggle::after{content:attr(data-room-action-label);font-size:11px;font-weight:650}
#chat-panel .room-navigation-toggle[aria-pressed="true"]{background:var(--chat-accent,#c2185b);color:white}
@media(max-height:500px){#chat-panel[data-room-active="true"][data-chat-view-mode="background"] .conversation-single-viewer-docked{height:112px!important}}
#voice_mode-panel[data-room-active="true"][data-room-exploring="true"] #voice_mode-transcript,#voice_mode-panel[data-room-active="true"][data-room-exploring="true"] .conversation-single-viewer{visibility:hidden!important;pointer-events:none!important}
#voice_mode-panel[data-room-active="true"][data-room-exploring="true"] .voice-mode-chat-overlay{pointer-events:none;background:transparent!important;mask-image:none!important;-webkit-mask-image:none!important}
#voice_mode-panel[data-room-active="true"][data-room-exploring="true"] .voice-mode-chat-overlay::before{display:none}
#voice_mode-panel[data-room-active="true"][data-room-exploring="true"] #voice_mode-mic-panel,#voice_mode-panel[data-room-active="true"][data-room-exploring="true"] #voice_mode-text-composer{pointer-events:auto}
[data-room-bubbles-toggle]{display:none!important}
[data-room-active="true"] [data-room-bubbles-toggle]{display:inline-flex!important}
[data-room-mode-toggle]:not(.chat-more-options-item){font-size:12px!important;font-weight:700;min-width:34px}
.carla-room-notice{position:fixed;z-index:10000;left:50%;bottom:100px;transform:translateX(-50%);padding:12px 18px;background:#1c2735;color:white;border-radius:14px;max-width:90vw;font:14px system-ui}
.carla-room-notice button{margin-left:8px;padding:6px 10px;border:1px solid currentColor;border-radius:7px;background:transparent;color:inherit;cursor:pointer;font:inherit}

/* Virtual vision shares the physical camera's floating/stage wrapper. */
#voice_mode-vision-btn[hidden],.voice-camera-video[hidden]{display:none!important}
#voice_mode-panel:not([data-room-active="true"]) #voice_mode-vision-btn{display:none!important}
.voice-vision-btn:disabled{opacity:.45;cursor:not-allowed}
.voice-camera-preview.camera-virtual:not(.camera-stage-mode){width:min(230px,44vw);aspect-ratio:16/9;bottom:var(--voice-pip-bottom,var(--vision-preview-bottom,104px))}
.voice-camera-preview.camera-virtual .voice-camera-video{object-fit:contain}
.voice-camera-preview.camera-virtual::before{content:"Lo que ve Carla · 3D";position:absolute;top:5px;left:7px;z-index:2;font:11px system-ui;color:white;text-shadow:0 1px 3px #000;pointer-events:none}
