/* Production inventory is separate from the illustrated room. */
.production-floor{background:repeating-linear-gradient(90deg,#1a3026 0 47px,#294237 47px 48px);border-bottom:5px ridge #586c4b}
.floor-label{display:flex;justify-content:space-between;align-items:center;padding:9px 14px;background:#10261cbb;border-bottom:1px solid #36503d;color:#d7dbad}
.floor-label h3{font-size:11px;margin:0}.floor-label span{font:10px var(--mono)}
.floor-units{display:flex;flex-wrap:wrap;align-items:end;gap:0 3px;padding:10px 12px 3px;min-height:78px}
.floor-units .unit-sprite{flex:0 0 43px;width:43px;height:58px;filter:drop-shadow(1px 2px 0 #07170d);animation:unit-idle 3s steps(2,end) infinite}
.floor-units .unit-sprite:nth-child(3n){animation-delay:-1s}.floor-units .unit-sprite:nth-child(3n+1){animation-delay:-2s}
.floor-units .unit-sprite.advanced{height:43px;margin-bottom:6px}.floor-empty{font-size:12px;color:#8da88f;padding:20px}.floor-overflow{display:block;font:9px var(--mono);padding:5px 14px;color:#9bb393}
.scene-toolbar #scene-caption{display:none}.scene-toolbar{padding:11px 16px}.relocation{padding:0 14px;background:#142a1c}.relocation:has(button:not([hidden])){padding-bottom:14px}#move-room{margin:0}
@keyframes unit-idle{50%{transform:translateY(-1px)}}
.click-panel{isolation:isolate;position:relative;overflow:hidden}.click-panel>div:not(#pill-rain){z-index:1}
#pill-rain{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0;mask-image:linear-gradient(transparent 6%,#000 22%,#000 86%,transparent)}
#pill-rain img{position:absolute;left:var(--x);top:-60px;width:var(--size);height:var(--size);object-fit:contain;image-rendering:pixelated;opacity:.23;animation:pill-rain var(--speed) var(--delay) linear infinite;will-change:transform}
@keyframes pill-rain{from{transform:translateY(-60px) rotate(0deg)}to{transform:translateY(1000px) rotate(var(--turn))}}
#golden::before{inset:-50%;background:repeating-conic-gradient(from 0deg,transparent 0deg 19deg,#ffdf7722 20deg 26deg,transparent 27deg 45deg);mask-image:radial-gradient(#000,transparent 70%);animation:golden-rays 9s linear infinite}
#golden::after{content:'';position:absolute;inset:-25%;background:radial-gradient(#ffe78c80,transparent 65%);z-index:-1;animation:golden-breathe 1.1s ease-in-out infinite alternate;pointer-events:none}
.golden-sparks{position:absolute;inset:-35%;pointer-events:none}.golden-sparks i{position:absolute;left:calc(15% + mod(var(--n)*31,75)*1%);top:calc(10% + mod(var(--n)*47,80)*1%);width:9px;height:9px;background:#fff4b5;clip-path:polygon(40% 0,60% 0,60% 40%,100% 40%,100% 60%,60% 60%,60% 100%,40% 100%,40% 60%,0 60%,0 40%,40% 40%);filter:drop-shadow(0 0 4px #ffcd4b);animation:golden-spark 1.8s calc(var(--n)*-.23s) ease-out infinite}
@keyframes golden-rays{to{transform:rotate(360deg)}}@keyframes golden-breathe{to{opacity:.4;transform:scale(.85)}}@keyframes golden-spark{0%,100%{opacity:0;transform:translateY(8px) scale(.3)}35%{opacity:1;transform:translateY(0) scale(1)}80%{opacity:0;transform:translateY(-16px) scale(.4)}}
@media(max-width:760px){#pill-rain img{opacity:.18}.floor-units .unit-sprite{flex-basis:36px;width:36px;height:49px}}
@media(prefers-reduced-motion:reduce){#pill-rain{display:none}.floor-units .unit-sprite,#golden::before,#golden::after,.golden-sparks i{animation:none!important}.golden-sparks i{opacity:.7}}

/* Each department has its own illustrated panoramic environment. */
.production-floor{background:#15251e;border-bottom:4px ridge #586c4b}
.floor-label{background:#122219;color:#e4e2be;border-bottom:1px solid #586448;padding:7px 14px}
.floor-units{height:118px;min-height:118px;flex-wrap:nowrap;overflow:hidden;gap:4px;padding:35px 12px 10px;background-image:var(--floor-art);background-position:center var(--floor-y);background-size:auto 400%;background-repeat:no-repeat;image-rendering:pixelated;box-shadow:inset 0 5px 8px #06120c40}
.floor-units .unit-sprite{flex:0 0 50px;width:50px;height:67px;filter:drop-shadow(2px 3px 1px #061009b0)}
.floor-units .unit-sprite.advanced{height:50px;margin-bottom:3px}
@media(max-width:760px){.floor-units{height:110px;min-height:110px;padding-left:9px;padding-right:9px}.floor-units .unit-sprite{flex-basis:44px;width:44px;height:59px}.floor-units .unit-sprite.advanced{height:44px}}
