.office-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:14px}.office-toolbar>div:first-child{display:flex;align-items:center;gap:12px;margin-right:auto}.office-toolbar strong{font-size:14px}.office-toolbar span{font-size:12px;color:#8c877c}.office-toolbar .button{font-size:12px}
.team-office[hidden]{display:none}.team-office{margin-bottom:24px;border:1px solid #50402f;border-radius:9px;background:#211e26;color:#e5c99c;overflow:hidden;box-shadow:0 10px 28px #17131d20}.office-header{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 23px;background:#252332;border-bottom:1px solid #4a3c33}.office-eyebrow{font-size:9px;font-weight:700;letter-spacing:3px;color:#b68e59}.office-header h2{font-size:20px;font-weight:600;letter-spacing:-.4px;margin:6px 0 0;color:#f0d7aa}.office-summary{font-size:11px;padding:8px 12px;border:1px solid #6c5138;border-radius:3px;background:#342b2b;white-space:nowrap;color:#dfbd81}
.office-rooms{margin:0;overflow:hidden;background:#111115}.office-map-scroll{overflow-x:auto;overscroll-behavior-x:contain;scrollbar-color:#765638 #19171f}.office-map-scroll:focus-visible{outline:2px solid #d2a360;outline-offset:-2px}.office-map{display:block;width:100%;min-width:720px;height:auto}.office-map polygon,.office-map polyline{shape-rendering:crispEdges}.pixel-sprite,.pixel-sprite image{image-rendering:pixelated;image-rendering:crisp-edges}.room-label{font:700 20px monospace;fill:#583e28;fill-opacity:.55;text-anchor:middle;letter-spacing:2px;pointer-events:none;user-select:none}
.office-actor{cursor:pointer;outline:none}.actor-hit{fill:transparent;stroke:transparent;stroke-width:1}.office-actor:hover .actor-hit,.office-actor:focus-visible .actor-hit{fill:#ffe4a00a;stroke:#ffcc80;stroke-dasharray:3 3}.actor-standing{display:none}.actor-seated{display:block}.actor-bubble{opacity:0;transition:opacity .15s}.office-actor:hover .actor-bubble,.office-actor:focus-visible .actor-bubble,.is-working .actor-bubble,.is-waiting .actor-bubble,.is-running .actor-bubble,.is-visiting .actor-bubble{opacity:1}.actor-bubble rect,.actor-bubble path{fill:#f5ecd9;stroke:#211b1b;stroke-width:2}.actor-bubble text{font:600 12px monospace;text-anchor:middle;fill:#28232a}.actor-caption rect{fill:#27222bea;stroke:#9a7245;stroke-width:1}.actor-caption text{text-anchor:middle;font:600 11px monospace;fill:#f0d7aa;pointer-events:none}.actor-caption .actor-status{font-size:8px;font-weight:400;fill:#c29968}.is-working .actor-status{fill:#b1c078}.is-waiting .actor-bubble rect,.is-waiting .actor-bubble path{fill:#f3d69e}.is-working .actor-seated{animation:pixel-type .8s steps(2,end) infinite}.desk-lamp-glow{pointer-events:none;animation:pixel-lamplight 7s steps(4,end) infinite}.is-facing-left .actor-facing{transform:scaleX(-1)}
.is-running .actor-seated,.is-visiting .actor-seated{display:none}.is-visiting .actor-standing{display:block;animation:pixel-greet .8s steps(2,end) infinite}.is-running .actor-bubble rect,.is-running .actor-bubble path{fill:#ffe7ae}.is-visiting .actor-bubble rect,.is-visiting .actor-bubble path{fill:#e5e7b6}
.office-map-note{display:flex;justify-content:space-between;gap:12px;padding:13px 17px;background:#25212c;border-top:1px solid #58402e;font-size:10px;color:#c3a177}.office-map-note>span:first-child{display:flex;align-items:center;gap:7px;letter-spacing:1.7px;font-size:9px;font-weight:700;white-space:nowrap}.office-live-dot{display:inline-block;width:5px;height:5px;background:#d6b568;box-shadow:0 0 0 2px #d6b56822}.office-footer{display:flex;justify-content:space-between;gap:16px;padding:11px 17px;font-size:10px;color:#b59670;line-height:1.7;background:#211d27}.office-footer>span>span{margin-left:12px}
@keyframes pixel-type{50%{transform:translateY(-1px)}}@keyframes pixel-lamplight{50%{opacity:.7}}@keyframes pixel-greet{50%{transform:translateY(-1px)}}
@media(max-width:600px){.office-header{padding:14px;align-items:flex-start;flex-direction:column;gap:12px}.office-header h2{font-size:20px}.office-footer,.office-map-note{flex-direction:column;gap:7px}.office-toolbar>div:first-child{align-items:flex-start;flex-direction:column;gap:3px;flex-basis:100%}}
@media(prefers-reduced-motion:reduce){.team-office:not(.office-motion-on) *{animation:none!important}}.team-office.office-motion-off *{animation:none!important}

.vacant-workstation{visibility:hidden}.vacant-workstation.is-vacant{visibility:visible}.is-working .actor-seated{animation:none}.office-actor:not(.is-running):not(.is-visiting) .actor-bubble{transform:translateY(-25px)}

.office-test .vacant-workstation{visibility:visible;cursor:pointer}.office-test .vacant-workstation:hover,.office-test .vacant-workstation:focus-visible{filter:brightness(1.2)}.office-test .actor-seated{display:none}.office-test .office-actor{pointer-events:none}
.desk-test-target{display:none}.office-test .vacant-workstation *{pointer-events:none}.office-test .desk-test-target{display:block;pointer-events:all;cursor:pointer}.office-test .desk-test-target:focus-visible{stroke:#ffd780;stroke-width:2}


.actor-run-cycle{display:none}.is-running .actor-run-cycle{display:block}
.office-drink,.office-tea-server{pointer-events:none}.drink-liquid{fill:#a55b24;opacity:0}.is-coffee .drink-liquid{fill:#493023}.is-full .drink-liquid{opacity:1}.drink-steam{opacity:0}.is-full .drink-steam{opacity:.65}.is-facing-left .tea-server-facing{transform:scaleX(-1)}
.is-running .actor-bubble,.is-visiting .actor-bubble{transform:translateY(-28px)}
.office-test-toolbar{align-items:flex-end}.office-test-toolbar>label{margin:0;display:flex;flex-direction:column;gap:8px}.office-test-toolbar>label select{margin:0;height:42px;box-sizing:border-box}.office-test-toolbar>.button{height:42px;box-sizing:border-box;margin:0;display:inline-flex;align-items:center;justify-content:center}
.office-tea-server{pointer-events:all;cursor:pointer;outline:none}.office-tea-server:hover .tea-server-hit,.office-tea-server:focus-visible .tea-server-hit{stroke:#ffcc80;stroke-dasharray:3 3}

/* Read-only viewer: explicit character hit areas; decoration stays inert. */
.office-map *{pointer-events:none}.office-map .office-actor .actor-hit,.office-map .office-actor .actor-caption rect,.office-map .office-actor .actor-caption text{pointer-events:all}
