/* Pixel room art study 01: original raster scenes with independent ambient effects. */
.room-scene.pixel-room{height:auto;min-height:0;max-height:none;aspect-ratio:3/2;overflow:hidden;container-type:inline-size;isolation:isolate;background:#132633}
.pixel-room::after{display:none}
.pixel-room .room-art{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;image-rendering:pixelated;user-select:none;z-index:0}
.pixel-room .scene-agent{left:var(--agent-x);top:var(--agent-y);right:auto;bottom:auto;width:120px;margin-left:-60px;transform:translateY(-100%) scale(.8);transform-origin:bottom center;filter:none;gap:3px;z-index:6}
.pixel-room .scene-agent::after{content:'';position:absolute;bottom:39px;left:37px;width:46px;height:8px;background:#071a3270;z-index:-1;clip-path:polygon(10% 0,90% 0,100% 50%,90% 100%,10% 100%,0 50%)}
.pixel-room .scene-agent .actor-figure{filter:drop-shadow(3px 4px 0 #091a3744)}
.pixel-room .scene-agent b{max-width:125px;background:#102539e8;border:1px solid #6c869e;color:#e4f0f7!important;font:10px monospace;padding:4px 6px;margin-top:2px;box-shadow:2px 2px 0 #07132a55}
.pixel-room .scene-agent small{font:7px monospace;padding:3px 4px;background:#102539e8;border:1px solid #5b788f;color:#d2e2df}
.pixel-room .scene-agent:hover b{background:#29425a;border-color:#c7dfbe}
.pixel-room .scene-overlay{bottom:9px;left:11px;right:11px;font:8px monospace;letter-spacing:.8px;z-index:8;pointer-events:none;color:#e1e7e9;text-shadow:none;align-items:center}
.pixel-room .scene-overlay>span{background:#102539d6;border:1px solid #71839344;padding:5px 7px;color:#c9d3dc;font:7px monospace}
.pixel-room .scene-overlay{background:#102539c9;border:1px solid #71839344;padding:4px 8px}
.pixel-room .scene-overlay>span{background:transparent;border:0;padding:0}
.room-ambience{position:absolute;inset:0;pointer-events:none;z-index:2;overflow:hidden}.room-ambience i{position:absolute;display:block;image-rendering:pixelated}
.rack-led{width:3px;height:2px;background:#73dcff;box-shadow:0 0 3px #89cfff77;animation:rack-activity 3.7s steps(1,end) infinite}.rack-led-a{left:18.5%;top:30%;box-shadow:0 17px 0 #a3deff,7px 34px 0 #96dfee}.rack-led-b{left:80.9%;top:30%;animation-delay:-1.8s;box-shadow:0 15px 0 #9de5ff,-7px 29px 0 #acdeea}
.hologram-sweep{left:37%;top:21%;width:25%;height:1px;background:#b2eaff55;animation:projection-sweep 6s steps(32,end) infinite;box-shadow:0 1px 0 #b2eaff22}
.console-cursor{left:50.1%;top:48%;width:4px;height:2px;background:#acebff;animation:terminal-cursor 1.8s steps(1,end) infinite}
.terminal-light{width:3px;height:2px;background:#d6e9c9;animation:terminal-cursor 3.4s steps(1,end) infinite}.terminal-left{left:16.3%;top:55.1%}.terminal-right{left:82.5%;top:55.1%;animation-delay:-1.1s}
.window-dust{width:2px;height:2px;background:#ffefb7b3;animation:sun-dust 13s steps(32,end) infinite}.dust-a{left:37%;top:35%}.dust-b{left:65%;top:44%;animation-delay:-6s;animation-duration:17s}.dust-c{left:22%;top:49%;animation-delay:-9s;animation-duration:15s}
.mango-terminal{left:50%;top:26%;width:3px;height:2px;background:#bbe5ce;animation:terminal-cursor 2.7s steps(1,end) infinite}
.pixel-room.motion-paused .room-ambience i,.pixel-room.motion-paused .scene-agent *{animation-play-state:paused!important}
@keyframes rack-activity{0%,24%,35%,69%,100%{opacity:.15}12%,30%,58%,82%{opacity:1}}
@keyframes projection-sweep{0%,100%{top:21%;opacity:0}15%{opacity:.7}85%{opacity:.4}95%{top:39%;opacity:0}}
@keyframes terminal-cursor{0%,55%,100%{opacity:.15}25%,75%{opacity:.8}}
@keyframes sun-dust{0%{transform:translate(0,0);opacity:0}25%,60%{opacity:.55}100%{transform:translate(14px,-24px);opacity:0}}
@container(max-width:580px){.pixel-room .scene-agent{transform:translateY(-100%) scale(.6)}}
@media(max-width:720px){.room-scene.pixel-room{aspect-ratio:3/2;min-height:0}.pixel-room .scene-agent{transform:translateY(-100%) scale(.43);width:120px;margin-left:-60px}.pixel-room .scene-overlay{font-size:6px;left:5px;right:5px;bottom:5px;padding:4px}.pixel-room .scene-overlay>span{font-size:5px}.room-ambience .rack-led,.room-ambience .terminal-light,.room-ambience .window-dust{width:1px;height:1px}}
@media(prefers-reduced-motion:reduce){.room-ambience i,.pixel-room .scene-agent *{animation:none!important}.window-dust,.hologram-sweep{display:none}}

.scene-tools{display:flex;gap:6px;align-items:center}.pixel-room.actors-hidden .scene-agent{display:none}.room-main .panel-title{flex-wrap:wrap}.scene-tools .motion-toggle{white-space:nowrap}@media(max-width:720px){.scene-tools{gap:4px}.scene-tools .motion-toggle{padding:5px 6px;font-size:8px}}
