/* Matched view controls; a restrained architectural display surface. */
#views{align-items:stretch}
#views button,#views button[data-view=top]{height:42px;min-height:42px;margin:0;align-self:stretch;line-height:1;align-items:center}
#workspace-tools #model-settings-toggle{margin-left:0}
body{--stage-warm:201,190,171;--stage-cool:118,145,165}
body[data-time=morning]{--stage-warm:192,204,179;--stage-cool:99,162,153}
body[data-time=dusk]{--stage-warm:220,156,106;--stage-cool:153,121,153}
body[data-time=night]{--stage-warm:142,135,178;--stage-cool:94,128,161}
#scene-aura{position:fixed;inset:0;background:radial-gradient(ellipse at 50% 52%,#303538 0%,#1c2024 46%,#0e1116 100%);transition:opacity .5s}
#scene-aura::before,body[data-time] #scene-aura::before{width:95vw;height:90vh;border-radius:0;opacity:1;background:radial-gradient(ellipse,rgba(var(--stage-warm),.18),transparent 64%);transition:left .7s ease-out,top .7s ease-out,background .8s}
#scene-aura::after,body[data-time] #scene-aura::after{width:110vw;height:95vh;border-radius:0;opacity:1;background:radial-gradient(ellipse,rgba(var(--stage-cool),.16),transparent 67%);transition:left .9s ease-out,top .9s ease-out,background .8s}
.stage-grid{position:absolute;left:50%;top:50%;width:150vmax;height:105vmax;background-image:linear-gradient(#c4ccd528 1px,transparent 1px),linear-gradient(90deg,#c4ccd528 1px,transparent 1px);background-size:72px 72px;transform:translate(-50%,-34%) perspective(850px) rotateX(64deg) rotateZ(var(--stage-turn,0deg));transform-origin:50% 38%;mask-image:radial-gradient(ellipse at 50% 35%,#000,transparent 60%);opacity:.68;transition:transform .45s ease-out;pointer-events:none}
body.walking #scene-aura{opacity:.3}
#scene-aura::before{animation:stage-warm-drift 22s ease-in-out infinite alternate}
#scene-aura::after{animation:stage-cool-drift 29s ease-in-out infinite alternate}
@keyframes stage-warm-drift{from{transform:translate(-53%,-52%) scale(.98);opacity:.8}to{transform:translate(-47%,-48%) scale(1.05);opacity:1}}
@keyframes stage-cool-drift{from{transform:translate(-47%,-48%) scale(1.04);opacity:1}to{transform:translate(-53%,-52%) scale(.98);opacity:.75}}
@media(max-width:900px){.stage-grid{background-size:60px 60px;opacity:.4}}
@media(prefers-reduced-motion:reduce){#scene-aura,#scene-aura::before,#scene-aura::after,.stage-grid{transition:none;animation:none}}
