/* Cutaway office scene. Scoped to ArenaOffice; production dashboard styles are untouched. */
.aw-world {
  --aw-ink:#030712; --aw-panel:#07101b; --aw-line:#203649; --aw-text:#eef7ff;
  --aw-green:#00ff41; --aw-cyan:#00f0ff; --aw-gold:#ffcc00;
  --ease-out:cubic-bezier(.23,1,.32,1);
  position:relative; width:100%; height:100%; min-height:280px; overflow:hidden;
  isolation:isolate; background:radial-gradient(ellipse at 53% 53%,#112236 0,#07101b 56%,#030712 100%);
  color:var(--aw-text); font:12px/1.4 system-ui,sans-serif;
}
.aw-world::after {content:"";position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 60px #02050b70;z-index:3;}
.aw-camera {position:absolute;left:0;top:0;width:1000px;height:620px;transform-origin:0 0;}
.aw-plan {position:absolute;inset:0;width:1000px;height:620px;pointer-events:none;}
.aw-plan text {font-family:ui-monospace,SFMono-Regular,Consolas,monospace;}
.aw-staff {position:absolute;left:0;top:0;width:76px;height:112px;border:0;background:none!important;padding:0;color:#e9f7ff;cursor:pointer;appearance:none;outline:none;-webkit-tap-highlight-color:transparent;}
.aw-staff::before {content:"";position:absolute;width:48px;height:20px;left:14px;bottom:17px;border-radius:50%;background:#0008;box-shadow:0 3px 6px #0008;}
.aw-pixel {position:absolute;display:block;width:48px;height:96px;left:14px;bottom:17px;background-repeat:no-repeat;background-size:336px 288px;image-rendering:pixelated;transform-origin:center 70%;filter:drop-shadow(1px 1px 0 #c9ecff28);}
.aw-seat-front {position:absolute;inset:0;display:none;pointer-events:none;}
.aw-seat-front svg {display:block;width:100%;height:100%;overflow:visible;}
.aw-staff[data-pose="seated"] .aw-seat-front {display:block;}
.aw-staff[data-pose="seated"]::before {opacity:.3;}
.aw-foot-ring {position:absolute;width:56px;height:24px;left:10px;bottom:14px;border:2px solid var(--person-color,#00f0ff);border-radius:50%;opacity:0;box-shadow:0 0 14px #00f0ff24;}
.aw-diamond {position:absolute;left:31px;top:-16px;width:14px;height:22px;clip-path:polygon(50% 0,100% 48%,50% 100%,0 48%);background:linear-gradient(90deg,#063e1d 0 49%,#00ff41 50%);filter:drop-shadow(0 0 5px #00ff4180);opacity:0;}
.aw-staff[aria-pressed="true"] .aw-foot-ring,.aw-staff[aria-pressed="true"] .aw-diamond {opacity:1;}
.aw-name {position:absolute;bottom:-4px;left:50%;transform:translateX(-50%);padding:3px 7px;border:1px solid #385169;border-radius:3px;background:#040d18ed;font-size:12px;font-weight:650;white-space:nowrap;line-height:16px;box-shadow:0 3px 8px #0005;}
.aw-name i {display:inline-block;width:5px;height:5px;margin:0 5px 1px 0;background:var(--person-color,#00f0ff);border-radius:50%;}
.aw-work-label {display:block;color:#89a7bb;font-size:9px;font-weight:500;line-height:13px;max-width:130px;overflow:hidden;text-overflow:ellipsis;}
.aw-staff[data-activity="reviewing"] .aw-work-label {color:#00f0ff;}
.aw-staff[data-activity="complete"] .aw-work-label {color:#00ff41;}
.aw-staff[data-activity="queued"] .aw-work-label {color:#ffcc00;}
.aw-staff[data-activity="error"] .aw-work-label {color:#ff9b9b;}
.aw-roster button[data-activity="reviewing"]::after {content:"";width:6px;height:6px;flex:0 0 6px;border:1px solid #00f0ff;transform:rotate(45deg);}
.aw-staff:disabled,.aw-roster button:disabled {cursor:default;}
.aw-staff[aria-pressed="true"] .aw-name {color:#00ff41;border-color:#00ff4199;background:#04130cf5;}
.aw-staff:focus-visible {outline:2px solid #fff;outline-offset:6px;border-radius:4px;}
.aw-speech {position:absolute;left:0;top:0;max-width:196px;padding:10px 12px;border-radius:7px 7px 7px 0;background:#e8f4ff;color:#07101b;font-size:12px;font-weight:650;line-height:1.35;box-shadow:0 5px 25px #0007;z-index:950;pointer-events:none;opacity:0;transition:opacity 160ms var(--ease-out);}
.aw-speech::after {content:"";position:absolute;left:15px;bottom:-7px;width:12px;height:8px;background:#e8f4ff;clip-path:polygon(0 0,100% 0,0 100%);}
.aw-speech[data-visible="true"] {opacity:1;}
.aw-speech small {display:block;margin-bottom:4px;color:#46627b;font-size:9px;letter-spacing:.09em;text-transform:uppercase;}
.aw-hud {position:absolute;left:18px;top:16px;z-index:1001;pointer-events:none;}
.aw-hud strong {display:block;font:700 13px/1.2 ui-monospace,monospace;letter-spacing:.1em;color:#dff7ff;}
.aw-hud small {display:block;margin-top:5px;font-size:10px;letter-spacing:.015em;color:#8ea9bd;}
.aw-tools {position:absolute;right:14px;top:12px;display:flex;gap:6px;z-index:1002;}
.aw-tools button {display:grid;place-items:center;min-width:36px;height:36px;padding:0 10px;border:1px solid #294158;border-radius:5px;background:#07101be8;color:#b9d5e8;font:600 11px/1 system-ui,sans-serif;cursor:pointer;}
.aw-tools button[aria-pressed="true"] {border-color:#00f0ff85;color:#00f0ff;}
.aw-tools button:focus-visible,.aw-roster button:focus-visible {outline:2px solid white;outline-offset:3px;}
.aw-caption {position:absolute;left:18px;bottom:16px;z-index:1001;display:flex;align-items:center;gap:9px;max-width:calc(100% - 36px);font:11px/1.3 ui-monospace,monospace;pointer-events:none;}
.aw-caption::before {content:"";width:5px;height:5px;flex:0 0 5px;border-radius:50%;background:#00f0ff;box-shadow:0 0 8px #00f0ff55;}
.aw-caption span {color:#b3cbdc;background:#030712ba;padding:5px 7px;border-radius:3px;}
.aw-roster {position:absolute;bottom:12px;left:12px;right:12px;z-index:1002;display:none;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;}
.aw-roster button {display:flex;align-items:center;justify-content:center;gap:5px;min-height:36px;padding:6px 3px;border:1px solid #284056;border-radius:4px;background:#06111feb;color:#c5daeb;font:600 10px/1.2 system-ui,sans-serif;cursor:pointer;}
.aw-roster button::before {content:"";height:5px;width:5px;border-radius:50%;background:var(--person-color);}
.aw-roster button[aria-pressed="true"] {color:#00ff41;border-color:#00ff4199;background:#072519f0;}
.aw-world.aw-compact .aw-hud {left:12px;right:130px;top:12px;}
.aw-world.aw-compact .aw-hud strong {font-size:10px;}
.aw-world.aw-compact .aw-hud small {font-size:9px;max-width:160px;}
.aw-world.aw-compact .aw-tools {right:8px;top:8px;gap:4px;}
.aw-world.aw-compact .aw-tools button {min-width:32px;height:32px;padding:0 7px;font-size:10px;}
.aw-world.aw-compact .aw-caption {left:12px;bottom:94px;font-size:10px;}
.aw-world.aw-compact .aw-roster {display:grid;}
.aw-world.aw-compact .aw-speech {max-width:178px;font-size:12px;padding:8px 10px;box-sizing:border-box;}
@media (hover:hover) and (pointer:fine) {
  .aw-staff:hover .aw-foot-ring {opacity:.8;}
  .aw-staff:hover .aw-name {border-color:#acdbf7;}
  .aw-tools button:hover,.aw-roster button:hover {border-color:#7babc9;color:white;}
}
@media (prefers-reduced-motion:reduce) {.aw-speech {transition:none;}}
/* Additional specialists visit shared workspaces; the roster remains complete. */
.aw-staff[hidden],.aw-tools button[hidden] {display:none!important;}
.aw-staff[data-custom="true"] .aw-name {border-style:dashed;max-width:154px;overflow:hidden;text-overflow:ellipsis;}
.aw-caption span {max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.aw-speech {overflow-wrap:anywhere;}
.aw-roster.aw-expanded {grid-template-columns:none;grid-template-rows:repeat(2,36px);grid-auto-flow:column;grid-auto-columns:118px;overflow-x:auto;overflow-y:hidden;max-height:80px;padding-bottom:4px;scrollbar-width:thin;scrollbar-color:#436880 #06111f;overscroll-behavior-x:contain;}
.aw-roster.aw-expanded button {min-width:0;white-space:normal;overflow:hidden;overflow-wrap:anywhere;line-height:1.15;}
.aw-roster button[data-custom="true"][data-present="false"]::before {background:transparent;border:1px solid var(--person-color);box-sizing:border-box;}
.aw-world.aw-team-open .aw-roster {display:grid;}
.aw-world.aw-team-open .aw-caption {bottom:102px;}
.aw-world.aw-compact .aw-tools [data-aw-team] {display:none;}
.aw-world.aw-compact .aw-roster.aw-expanded {grid-auto-columns:112px;}
.aw-world.aw-compact .aw-hud small {max-width:none;}
/* A short phone needs room for people, not two stacked copies of the team.
   Keep every original specialist button in a horizontal, touch-sized roster. */
@media (max-width:640px) and (max-height:740px) {
  .arena-shell.simulation-mode #dashboard-simulation {overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;}
  .arena-shell.simulation-mode .simulation-grid {min-height:260px;flex-shrink:0;}
  .arena-shell.simulation-mode .simulation-floor-card {min-height:260px;}
  .arena-shell.simulation-mode .simulation-canvas-wrap {min-height:202px;}
  .arena-shell.simulation-mode #simulation-team {display:flex;flex-wrap:nowrap;min-height:56px;gap:4px;padding:6px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#436880 #071522;}
  .arena-shell.simulation-mode #simulation-team .simulation-specialist {flex:0 0 104px;min-height:44px;max-width:104px;}
  .arena-shell.simulation-mode .arena-scorecard {height:68px;padding:7px 8px;}
  .arena-shell.simulation-mode .arena-scorecard>strong {font-size:22px;}
  .arena-shell.simulation-mode .arena-scoreboard {margin-bottom:4px;}
  .arena-shell.simulation-mode .arena-office-tabs {margin-top:2px;margin-bottom:4px;}
}

/* Phone office: a front-facing rectangular floor, with no scaled camera or
   diagonal floor plan. The desktop cutaway above remains the same scene. */
.aw-upright[hidden],.aw-room[hidden] {display:none!important;}
.aw-upright {grid-area:floor;display:grid;gap:14px;min-width:0;}
.aw-world.aw-upright-mode {height:auto;min-height:0;overflow:visible;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"heading tools" "floor floor";gap:14px 10px;padding:14px;box-sizing:border-box;background:#07101b;}
.aw-world.aw-upright-mode::after {display:none;}
.aw-world.aw-upright-mode>.aw-camera,.aw-world.aw-upright-mode>.aw-caption,.aw-world.aw-upright-mode>.aw-roster,.aw-world.aw-upright-mode>.aw-speech {display:none!important;}
.aw-world.aw-upright-mode>.aw-hud {grid-area:heading;position:static;max-width:none;align-self:center;}
.aw-world.aw-upright-mode>.aw-tools {grid-area:tools;position:static;align-self:center;}
.aw-world.aw-upright-mode .aw-tools [data-aw-view],.aw-world.aw-upright-mode .aw-tools [data-aw-team] {display:none!important;}
.aw-world.aw-upright-mode .aw-hud strong,#arena-office-world .aw-world.aw-upright-mode .aw-hud strong {font-size:13px;line-height:1.3;letter-spacing:.06em;}
.aw-world.aw-upright-mode .aw-hud small,#arena-office-world .aw-world.aw-upright-mode .aw-hud small {max-width:none;font-size:11px;line-height:1.45;}
.aw-world.aw-upright-mode .aw-tools button,#arena-office-world .aw-world.aw-upright-mode .aw-tools button {min-width:60px;min-height:44px;height:44px;padding:8px 10px;font-size:12px;}
.aw-room {min-width:0;border:1px solid #304b60;border-top:5px solid #3b556a;background:#0b1b29;box-shadow:0 4px 0 #040b12;}
.aw-room-heading {display:flex;align-items:center;justify-content:space-between;gap:6px;padding:10px 11px;border-bottom:1px solid #284054;background:linear-gradient(180deg,#172f42,#102438);}
.aw-room-heading h3,.simulation-workspace .aw-room-heading h3 {font:650 13px/1.25 system-ui,sans-serif;letter-spacing:.015em;color:#e2f5ff;margin:0;}
.aw-room-heading h3::before {content:"";display:inline-block;width:5px;height:12px;background:var(--room-color);margin:0 7px -1px 0;}
.aw-room-count {flex:0 0 auto;color:#8faec1;font:10px/1.3 ui-monospace,monospace;}
.aw-room-desks {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:10px;background:repeating-linear-gradient(0deg,transparent 0 23px,#29455730 23px 24px),repeating-linear-gradient(90deg,transparent 0 23px,#29455730 23px 24px),#0d2231;}
.aw-world .aw-mobile-staff {display:flex;position:relative;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;min-width:0;min-height:178px;width:100%;padding:0 5px 9px;border:1px solid transparent;border-radius:4px;background:#07131d66;color:#d6eef8;font-family:system-ui,sans-serif;text-align:center;cursor:pointer;box-shadow:none;transition:none;}
@media (hover:hover) and (pointer:fine) {.aw-world .aw-mobile-staff:hover {background:#102b3a;border-color:#456b7d;}}
.aw-world .aw-mobile-staff:active {transform:none;}
.aw-world .aw-mobile-staff:focus-visible {outline:2px solid #fff;outline-offset:3px;}
.aw-world .aw-mobile-staff[aria-pressed="true"] {border-color:#00ff4180;background:#0b35294d;box-shadow:inset 0 -2px #00ff41;}
.aw-world .aw-mobile-staff:disabled {opacity:1;cursor:default;}
.aw-mobile-workstation {display:block;height:105px;position:relative;flex:0 0 105px;pointer-events:none;}
.aw-mobile-chair {position:absolute;left:calc(50% - 22px);top:42px;width:44px;height:42px;background:#294c65;border:3px solid #4b6d84;border-radius:7px 7px 3px 3px;box-shadow:0 5px #122c3e;}
.aw-mobile-pixel {position:absolute;left:calc(50% - 24px);top:4px;width:48px;height:96px;background-repeat:no-repeat;background-size:336px 288px;image-rendering:pixelated;}
.aw-mobile-desk {position:absolute;left:calc(50% - 46px);top:74px;width:92px;height:13px;border-top:3px solid #678093;border-bottom:3px solid #152d3d;background:#355669;box-shadow:0 3px 0 #071421;}
.aw-mobile-desk::before,.aw-mobile-desk::after {content:"";position:absolute;top:10px;width:6px;height:17px;background:#1b3749;border-left:2px solid #345267;}
.aw-mobile-desk::before {left:3px;}.aw-mobile-desk::after {right:3px;}
.aw-mobile-desk i {position:absolute;left:37px;top:-6px;width:27px;height:5px;border:1px solid #617987;background:#a8bac1;}
.aw-mobile-monitor {position:absolute;left:calc(50% + 20px);top:58px;width:24px;height:18px;border:3px solid #47728c;border-bottom-width:4px;border-radius:2px;background:repeating-linear-gradient(0deg,#03111b 0 3px,var(--person-color) 3px 4px);box-shadow:0 3px #132b3f;}
.aw-mobile-name {display:block;color:#e6f4fb;font-size:12px;line-height:1.3;font-weight:700;overflow-wrap:anywhere;}
.aw-mobile-role {display:block;margin-top:3px;color:#a9c5d7;font-size:11px;line-height:1.35;overflow-wrap:anywhere;}
.aw-mobile-activity {display:block;margin-top:auto;padding-top:7px;color:#85a6ba;font-size:10px;line-height:1.3;overflow-wrap:anywhere;}
.aw-mobile-activity::before {content:"";display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--person-color);margin-right:5px;}
.aw-mobile-staff[data-activity="reviewing"] .aw-mobile-activity {color:#00f0ff;}
.aw-mobile-staff[data-activity="complete"] .aw-mobile-activity {color:#00ff41;}
.aw-mobile-staff[data-activity="queued"] .aw-mobile-activity {color:#ffcc00;}
.aw-mobile-staff[data-activity="error"] .aw-mobile-activity {color:#ff9b9b;}

@media (max-width:640px) {
  html:has(body.arena-shell.simulation-mode) {height:auto;min-height:100%;overflow-x:hidden;overflow-y:auto;}
  html body.arena-shell.simulation-mode {height:auto;min-height:100dvh;overflow:visible;}
  body.arena-shell.simulation-mode #dashboard-main {height:auto;min-height:calc(100dvh - 119px);overflow:visible;padding-bottom:88px;}
  .arena-shell.simulation-mode #dashboard-simulation {display:flex;height:auto;min-height:0;overflow:visible;flex:none;}
  .arena-shell.simulation-mode .simulation-grid {display:flex;flex-direction:column;gap:16px;min-height:0;flex:none;overflow:visible;}
  .arena-shell.simulation-mode .simulation-floor-card {min-height:0;height:auto;overflow:visible;flex:none;}
  .arena-shell.simulation-mode .simulation-canvas-wrap {min-height:0;height:auto;overflow:visible;flex:none;aspect-ratio:auto;}
  .arena-shell.simulation-mode #arena-office-world {height:auto;min-height:0;}
  .arena-shell.simulation-mode #simulation-team {display:none;}
  body.arena-shell.simulation-mode .simulation-review-card {display:none;position:static;inset:auto;order:-1;height:auto;max-height:none;overflow:visible;box-shadow:none;padding:16px;scroll-margin-top:78px;}
  body.arena-shell.simulation-mode.arena-staff-open .simulation-review-card {display:flex;}
  body.arena-shell.simulation-mode #arena-close-staff {min-height:44px;}
  body.arena-shell.simulation-mode .simulation-review-card button {min-height:44px;}
  body.arena-shell.simulation-mode .simulation-review-options input,body.arena-shell.simulation-mode .simulation-review-options select,body.arena-shell.simulation-mode .simulation-review-options textarea {font-size:16px;}
  .arena-shell.simulation-mode .arena-scorecard {height:96px;padding:9px 8px;}
  .arena-shell.simulation-mode .arena-scorecard h2 {font-size:10px;line-height:1.25;}
  .arena-shell.simulation-mode .arena-scorecard>strong {font-size:24px;}
  .arena-shell.simulation-mode .arena-scorecard>small {font-size:8px;line-height:1.2;}
  .arena-shell.simulation-mode .arena-scoreboard {margin-bottom:10px;}
  .arena-shell.simulation-mode .simulation-history,.arena-shell.simulation-mode .simulation-advanced {overflow:visible;}
}
