/* Compact room conversation, independent of the walking surface. */
.stream-chat{position:absolute;z-index:11;right:22px;top:165px;width:330px;max-height:calc(100dvh - 310px);background:#0c1928e8;border:1px solid #91d5cc65;border-radius:14px;box-shadow:0 12px 36px #0006;color:#edf7f6;overflow:hidden;font-size:14px}
.stream-heading{display:flex;align-items:center;gap:9px;padding:8px 12px;border-bottom:1px solid #91d5cc30}.stream-heading>div{flex:1}.stream-heading strong{display:block;font-size:15px}.stream-heading small{color:#a3c3c8;font-size:12px}.stream-chat button{min-height:44px;font:inherit;border-radius:8px;color:#ddf8f0;background:#24453b;cursor:pointer;padding:8px 10px}.stream-chat button:focus-visible,.view-tools button:focus-visible{outline:2px solid #ffdc99;outline-offset:-3px}.stream-chat button:disabled{opacity:.55;cursor:default}.stream-body{padding:0 12px 9px}.stream-body[hidden]{display:none}.stream-messages{height:min(210px,25dvh);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:6px 0;touch-action:pan-y}.stream-line{font-size:14px;line-height:1.5;margin:8px 0;overflow-wrap:anywhere}.stream-chat .stream-author{display:inline;min-height:0;padding:0;border:0;background:none;font-size:14px;font-weight:700;color:#b6f0df;text-align:left}.stream-author:hover{text-decoration:underline}.stream-empty{color:#b1c5ca;line-height:1.5}.stream-compose{display:flex;gap:7px;margin-top:6px}.stream-compose input{min-width:0;width:100%;min-height:44px;padding:9px;background:#142c38;color:#fff;border:1px solid #8bc4ba70;border-radius:8px;font-size:16px}.stream-chat .stream-send{background:#bce5d1;color:#09211f}.stream-actions{display:flex;gap:7px;align-items:center;margin-top:6px}.stream-status{font-size:13px;line-height:1.4;color:#f3d08f;margin:5px 0 0}.stream-status:empty{display:none}.stream-join{width:100%;margin-top:10px}.stream-chat [hidden]{display:none!important}.stream-chat.minimized{width:230px}.stream-chat.minimized .stream-heading{border:0}.stream-chat #stream-latest{width:100%;font-size:13px;min-height:32px}.guest-dialog{width:min(440px,calc(100% - 24px))}.guest-role{color:#f1cd8d;font-size:16px}.guest-facts{display:grid;grid-template-columns:90px 1fr;gap:14px;font-size:16px;margin:24px 0}.guest-facts dt{color:#abc7cd}.guest-facts dd{margin:0;overflow-wrap:anywhere}.guest-note{color:#b7cbd0;font-size:14px;line-height:1.6}.guest-name-link{background:none;color:inherit;border:0;text-align:left;font:inherit;flex:1;padding:8px 0;min-height:44px;cursor:pointer;text-decoration:underline;text-decoration-color:#b6f0df55;text-underline-offset:4px}
.view-tools{position:absolute;z-index:10;left:22px;top:170px;display:flex;gap:7px;align-items:center;flex-wrap:wrap;max-width:300px}.view-tools button{min-height:44px;min-width:44px;padding:8px 12px;border-radius:8px;border:1px solid #91d5cc55;background:#0c1928e8;color:#f0fcf9;font:inherit;font-size:14px;cursor:pointer}.view-tools output{font-size:14px;min-width:34px;text-align:center;color:#e8f8f4;text-shadow:0 2px 3px #000}.view-tools #zoom-in,.view-tools #zoom-out{font-size:22px}.view-tools button:disabled{opacity:.5}.view-tools #feedback-button{width:100%;margin-top:2px}.arrival-pending .view-tools,.arrival-pending .stream-chat,.vr-active .view-tools,.vr-active .stream-chat{display:none}.fallback .view-tools [data-zoom]{display:none}
.feedback-dialog{width:min(560px,calc(100% - 24px))}.feedback-dialog label{display:block;font-size:16px;margin:17px 0 7px}.feedback-dialog input,.feedback-dialog textarea,.feedback-dialog select{width:100%;min-height:46px;border:1px solid #8bc4ba60;border-radius:8px;background:#122732;color:#f1fbfa;font:inherit;font-size:16px;padding:11px}.feedback-dialog textarea{resize:vertical;min-height:110px}.feedback-dialog p{font-size:15px;line-height:1.55;color:#bcd3d6}.feedback-dialog #feedback-status{color:#e9d9a1}.feedback-dialog button[type=submit]{margin-top:18px}
.mobile-ui .stream-chat{top:calc(134px + env(safe-area-inset-top));right:max(14px,env(safe-area-inset-right));width:min(300px,calc(100vw - 28px));max-height:calc(100dvh - 390px);overflow-y:auto}.mobile-ui .stream-messages{height:clamp(64px,15dvh,140px)}.mobile-ui .stream-chat.minimized{width:220px}.mobile-ui .view-tools{left:auto;right:max(14px,env(safe-area-inset-right));top:auto;bottom:calc(90px + env(safe-area-inset-bottom));max-width:235px;gap:5px}.mobile-ui .view-tools #feedback-button{width:auto;margin:0}.mobile-ui .view-tools button{padding:8px}.mobile-ui .look-hint{display:none}.mobile-ui .mobile-movement{z-index:14}.mobile-ui:has(dialog[open]) .stream-chat,.mobile-ui.music-open .stream-chat{visibility:hidden}
@media (orientation:landscape){.mobile-ui .mobile-movement{left:max(24px,env(safe-area-inset-left));bottom:calc(94px + env(safe-area-inset-bottom))}.mobile-ui .stream-chat{width:min(320px,32vw)}.mobile-ui .view-tools{right:max(16px,env(safe-area-inset-right));bottom:calc(94px + env(safe-area-inset-bottom))}}
@media (orientation:landscape) and (max-height:600px){.mobile-ui .stream-chat{top:calc(68px + env(safe-area-inset-top));max-height:calc(100dvh - 160px);width:min(310px,38vw)}.mobile-ui .stream-heading{padding:3px 9px}.mobile-ui .stream-messages{height:65px}.mobile-ui .stream-body{padding:0 9px 5px}.mobile-ui .stream-actions{margin-top:3px}.mobile-ui .stream-chat.minimized{width:200px}.mobile-ui .view-tools{bottom:calc(7px + env(safe-area-inset-bottom));right:12px;max-width:240px}.mobile-ui .view-tools #feedback-button{display:none}.mobile-ui .mobile-movement{bottom:calc(42px + env(safe-area-inset-bottom))}.mobile-ui .mobile-dock{left:calc(50% - 150px);width:300px;right:auto}.mobile-ui .view-tools #zoom-reset{display:none}}
@media(max-width:380px){.mobile-ui .stream-chat{width:calc(100vw - 28px)}.mobile-ui .view-tools{max-width:195px}.mobile-ui .view-tools #zoom-reset{display:none}}

@media(max-width:600px){.mobile-ui .view-tools{max-width:calc(100vw - 177px)}.mobile-ui .view-tools #zoom-reset{display:none}}
.mobile-ui.chat-typing .stream-chat{top:max(10px,calc(var(--visible-bottom,100dvh) - 205px));bottom:auto;max-height:195px;z-index:20}.mobile-ui.chat-typing .stream-messages{height:46px}.mobile-ui.chat-typing .stream-actions{display:none}.mobile-ui.chat-typing .mobile-movement,.mobile-ui.chat-typing .mobile-dock{visibility:hidden}
