/* New overhead scene; all status copy stays outside the room. */
.office-app{max-width:1120px;padding-left:24px;padding-right:24px}
.topbar{margin-bottom:18px}h1{font-size:28px}.version{font-size:12px}
.scene-top{position:static;margin-bottom:12px;font-size:14px;gap:8px}
.scene{aspect-ratio:3/2;border-radius:18px;background:#514b41;border-color:#80776344;box-shadow:0 20px 60px #0004}
.room{image-rendering:auto;object-fit:fill;transition:filter 12s ease}
.room-light{z-index:4;mix-blend-mode:screen;background:radial-gradient(ellipse at 54% 33%,#ffd28c45,transparent 31%),radial-gradient(ellipse at 5% 64%,#ffc47650,transparent 26%)}
body[data-period="day"]{--room-filter:brightness(1.03) saturate(.96)}
body[data-period="morning"]{--room-filter:brightness(.98) saturate(.95)}
body[data-period="evening"]{--room-filter:brightness(.78) sepia(.13) saturate(.9)}
body[data-period="night"]{--room-filter:brightness(.54) saturate(.62)}
body[data-mode="offline"] .scene{filter:none}
.chief-position{display:contents}
.office-person,.scene #agent-inspect{position:absolute;inset:auto;left:var(--x,50%);top:var(--y,50%);bottom:auto;width:18%;height:auto;aspect-ratio:1;transform:translate(-50%,-50%);padding:0;border:0;border-radius:50%;background:transparent;z-index:3;touch-action:manipulation}
#seat-documents{--x:22.2%;--y:50%}#agent-inspect{--x:49.5%;--y:50%}#seat-fleet{--x:76.7%;--y:50%}
#seat-documents,#seat-fleet{left:var(--x);right:auto;top:var(--y)}
.office-person:focus-visible{outline:2px solid #f3dc98;outline-offset:-10px}.office-person:hover{background:#ffe8a209}
.person-art,.person-hands{display:block;width:100%;height:100%;background-image:url('/office-people-v36.png');background-size:300% 200%;background-repeat:no-repeat;background-position:var(--column) 0;pointer-events:none}
[data-role="documents"]{--column:0%;--accent:#e1a586}[data-role="chief"]{--column:50%;--accent:#9eb6d5}[data-role="fleet"]{--column:100%;--accent:#b1c690}
.person-art{position:relative;transform-origin:50% 60%;filter:var(--room-filter,brightness(1)) drop-shadow(1px 3px 2px #261a1830);animation:person-breathe 5.5s ease-in-out infinite}
.person-hands{position:absolute;inset:0;clip-path:polygon(18% 0,82% 0,82% 39%,18% 39%);opacity:0}
.office-person[data-mode="working"][data-pose="desk"] .person-hands{opacity:1;animation:person-type 1.05s ease-in-out infinite}
.office-person[data-mode="documents"][data-pose="desk"] .person-hands{opacity:1;animation:person-paper 3.7s ease-in-out infinite}
.office-person[data-role="fleet"][data-mode="working"] .person-hands{animation-duration:1.8s}
.office-person[data-pose="stretch"] .person-art{animation:person-stretch 4.5s ease-in-out infinite}
.office-person[data-pose="sleep"] .person-art{animation:person-breathe 7s ease-in-out infinite;transform:rotate(3deg)}
.office-person[data-pose="walk"] .person-art,.office-person[data-pose="break"] .person-art{background-position:var(--column) 100%;transform:rotate(var(--facing,0deg))}
.office-person[data-pose="walk"] .person-art{animation:person-walk .62s ease-in-out infinite}
.office-person[data-pose="break"] .person-art{animation:person-break 4s ease-in-out infinite}
.office-person[data-pose="attention"] .person-art{animation:person-notice 1.2s ease-in-out 1}
.office-person[data-mode="offline"] .person-art{filter:grayscale(.8) opacity(.5);animation:none}
.office-person[data-mode="offline"] .person-hands{display:none}
.desk-glow{position:absolute;top:30%;width:11%;height:13%;opacity:0;border-radius:40%;background:radial-gradient(ellipse,#b9e1ff55,transparent 70%);pointer-events:none;z-index:1;transition:opacity 1s}
.glow-documents{left:16.7%}.glow-chief{left:44%}.glow-fleet{left:71.2%}
.scene:has(#seat-documents[data-mode="documents"]) .glow-documents,.scene:has(#agent-inspect[data-mode="working"]) .glow-chief,.scene:has(#agent-inspect[data-mode="documents"]) .glow-chief,.scene:has(#seat-fleet[data-mode="working"]) .glow-fleet{opacity:1;animation:screen-glimmer 6s ease-in-out infinite}
.scene-caption{position:static;margin-top:12px;min-height:44px;line-height:1.4;font-size:14px;padding:10px 12px;align-items:center;background:none;border:0}.employee{font-size:13px;flex:none}
#life-label{overflow-wrap:anywhere}.team-legend{margin-top:2px;gap:12px}.team-legend button{min-height:64px;font-size:15px;background:#1b2c34;border-color:#3a4c50}.team-legend small{font-size:13px}.team-legend button:nth-child(1){border-top-color:#e1a586}.team-legend button:nth-child(2){border-top-color:#9eb6d5}.team-legend button:nth-child(3){border-top-color:#b1c690}
.team-bar{margin:16px 0}.status-panel{padding-top:18px}.status-panel p{font-size:16px}.status-panel h2{font-size:23px}#team-dialog{width:min(600px,calc(100vw - 28px))}
@keyframes person-breathe{0%,100%{scale:1}50%{scale:1.007}}
@keyframes person-type{0%,100%{translate:0 0}25%{translate:.35px -.6px}60%{translate:-.3px .5px}80%{translate:.3px -.4px}}
@keyframes person-paper{0%,80%,100%{rotate:0deg;translate:0 0}35%{rotate:-2deg;translate:-1px -1px}}
@keyframes person-stretch{0%,100%{rotate:0deg;scale:1}45%{rotate:3deg;scale:1.025}65%{rotate:-2deg;scale:1.015}}
@keyframes person-walk{0%,100%{translate:0 0;rotate:-1deg}50%{translate:0 -1.5px;rotate:1deg}}
@keyframes person-break{0%,100%{rotate:0deg}50%{rotate:3deg}}
@keyframes person-notice{0%,100%{rotate:0deg}45%{rotate:5deg}}
@keyframes screen-glimmer{0%,100%{opacity:.6}50%{opacity:1}}
@media(max-width:600px){.office-app{padding-left:14px;padding-right:14px}.scene{width:calc(100% + 28px);margin-left:-14px;border-radius:0;border-left:0;border-right:0}.team-legend{gap:6px}.team-legend button{font-size:14px;padding:8px 3px}.team-legend small{font-size:12px}h1{font-size:25px}.scene-top{font-size:12px}.scene-caption{padding-left:0;padding-right:0}.employee{font-size:12px}}
@media(prefers-reduced-motion:reduce){.person-art,.person-hands,.desk-glow{animation:none!important}.room{transition:none}}
