/* Live room messages share the parchment/gold language without another texture. */
#room-screen{position:relative}
.room-speech-layer{position:absolute;inset:0;z-index:18;pointer-events:none;overflow:hidden;contain:layout style}
.room-speech-layer[hidden],.room-speech-bubble[hidden],.room-speech-team[hidden]{display:none!important}
.room-speech-bubble{position:absolute;box-sizing:border-box;max-width:calc(100% - 8px);padding:9px 14px 10px;border:2px solid #aa6b19;border-radius:20px;background:linear-gradient(180deg,#fffef2 0%,#fff8dc 78%,#f5e6b4 100%);color:#064d6c;box-shadow:inset 0 0 0 2px #ffe49b,inset 0 3px 0 3px #ffffffa8,0 2px 0 #73471b,0 3px 5px #173a4133;text-align:center;font:800 clamp(12px,1.08vw,17px)/1.2 "Nunito",system-ui,sans-serif;animation:room-speech-arrive .16s ease-out;transform-origin:50% 100%;pointer-events:none}
.room-speech-bubble:after{content:"";position:absolute;width:11px;height:11px;left:var(--speech-tail-x,50%);bottom:-8px;background:#f5e6b4;border-right:2px solid #aa6b19;border-bottom:2px solid #aa6b19;box-shadow:inset -2px -2px #ffe49b;transform:translateX(-50%) rotate(45deg);border-bottom-right-radius:3px}
.room-speech-text{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.room-speech-team{display:block;color:#087c91;font-size:9px;line-height:1.1;letter-spacing:.08em;margin-bottom:3px}
.room-speech-bubble[data-channel="team"]{border-color:#16869c;box-shadow:inset 0 0 0 2px #ffe49b,inset 0 3px 0 3px #ffffffa8,0 2px 0 #0b586f,0 3px 5px #173a4133}
.room-speech-layer[data-dense="true"] .room-speech-bubble{padding:5px 8px 6px;font-size:12px;border-radius:14px}
.room-speech-layer[data-dense="true"] .room-speech-text{-webkit-line-clamp:1}
.room-speech-layer[data-dense="true"] .room-speech-team{display:inline;font-size:8px;margin:0 3px 0 0}
.room-speech-layer[data-dense="true"] .room-speech-bubble[data-channel="team"]{display:flex;align-items:center;justify-content:center}
.room-speech-layer[data-dense="true"] .room-speech-bubble[data-channel="team"] .room-speech-text{display:block;white-space:nowrap;text-overflow:ellipsis;min-width:0}
.room-speech-layer[data-dense="true"] .room-speech-team{flex:none}
@keyframes room-speech-arrive{from{opacity:0;transform:translateY(4px) scale(.96)}to{opacity:1;transform:none}}
@media(orientation:landscape) and (max-height:520px){
 .room-speech-bubble{padding:5px 8px 6px;border-radius:13px;font-size:11px;line-height:1.12;border-width:1.5px}
 .room-speech-team{font-size:7px;margin-bottom:1px}
 .room-speech-layer[data-dense="true"] .room-speech-bubble{padding:4px 5px 5px;font-size:10px}
 .room-speech-bubble:after{width:8px;height:8px;bottom:-6px;border-width:1.5px}
}
@media(prefers-reduced-motion:reduce){.room-speech-bubble{animation:none}}
