/* Town-square candidate: no caption or bottom control bar. The town fills the space down to the project strip;
   Pause and Reset sit as one small group at the scene's top right. */
.scene-container{inset:0 0 104px 0}
.workshop.resident-selected .scene-container{inset:0 0 104px}
.exhibit-nav{bottom:22px}
.residents-dock{bottom:96px}
.resident-panel{bottom:150px}
.toast{bottom:108px}
.scene-tools{position:absolute;top:14px;right:42px;z-index:6;display:flex;gap:4px;padding:3px;border-radius:999px;background:#fbfaf6e6;box-shadow:0 2px 10px #1a2a2a14}
.scene-tools .scene-control{min-height:36px;padding:0 12px;border-radius:999px;font-size:12px;display:inline-flex;align-items:center;gap:6px}
#resident-help:empty{display:none}
.scene-unavailable .scene-tools{display:none}
@media(min-width:1500px){.scene-tools{right:64px}}
@media(min-width:761px) and (max-width:1100px){
 .scene-container{bottom:104px}
 .exhibit-nav{bottom:18px}
 .residents-dock{bottom:92px}
 .resident-panel{bottom:146px}
 .scene-tools{right:25px}
}
@media(max-width:760px){
 .workshop{grid-template-areas:"scene" "residents" "panel" "projects"}
 .scene-container{height:clamp(320px,calc(100svh - 300px),600px)}
 .scene-tools{top:8px;right:10px}
 .scene-tools .scene-control{min-height:40px;padding:0 10px;font-size:11px}
 .exhibit-nav{bottom:auto}
 .residents-dock{bottom:auto}
 .resident-panel{bottom:auto}
}

/* Residents list: never taller than the space above the dock; scrolls instead of running under the header. */
.resident-list{max-height:min(330px,calc(100svh - 300px));overflow:auto;grid-template-columns:repeat(2,minmax(0,1fr))}
#scene-container canvas:focus-visible{outline:3px solid #b5452f;outline-offset:-3px}
