.world-layout.crew-mode{align-items:stretch}.world-layout.crew-mode .world-room{height:auto;min-height:var(--crew-height,660px)}.world-layout.crew-mode .world-inspector{height:auto;max-height:none;display:block;min-width:0}.crew-mode .world-agent,.crew-mode .world-paths,.crew-mode .world-station,.crew-mode .world-coordinate,.crew-mode .nexus-light,.crew-mode .world-nexus-label{display:none}.crew-mode .world-scenery{background-size:cover;opacity:.63}.crew-mode .world-vignette{background:linear-gradient(180deg,#06101dd9,transparent 30%,#06101d66 70%,#06101ded)}.crew-mode .world-film{opacity:.52}.crew-bay{position:relative;z-index:4;padding:94px 0 102px;min-width:0}.crew-team-heading{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:0 24px 14px}.crew-team-heading strong{font-size:11px;font-weight:500;color:#c2d7e6}.crew-team-heading>span{font-size:9px;color:#86a1b8}.crew-routine{margin:0 22px 12px;padding:14px 16px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:11px 15px;align-items:center;background:linear-gradient(120deg,#0a1627e8,#142335c7);border:1px solid #aecbd329;border-radius:12px;box-shadow:0 9px 30px #0002;backdrop-filter:blur(14px)}.crew-routine[hidden]{display:none}.crew-routine-title{display:grid;gap:6px}.crew-routine-title>span,.crew-inspector-heading,.crew-latest-receipt>span,.crew-deliverables>span{font-size:8px;letter-spacing:1.4px;color:#a6bcca}.crew-routine-title>strong{font-weight:500;font-size:16px;color:#e4edf2}.crew-routine-title>small{font-size:9px;color:#88a1b6}.crew-time-control{display:flex;gap:6px;align-items:flex-end;flex-wrap:wrap}.crew-time-control label{display:grid;gap:4px;font-size:8px;color:#9fb4c6}.crew-time-control select{appearance:auto;background:#0a1727;color:#e5edf3;border:1px solid #9bb8ce42;border-radius:5px;padding:7px 6px;min-height:32px;font-size:11px;width:auto;max-width:65px}.crew-time-control>span{width:100%;color:#8aa3ba;font-size:8px}.crew-bay .btn,.crew-dossier .btn{font-size:10px;min-height:33px;padding:8px 10px;border-radius:7px;line-height:1.35;white-space:normal}.crew-routine-actions{display:flex;flex-wrap:wrap;gap:7px}.crew-routine-actions .btn:last-child{border-color:#c8b78460;color:#f2deb2;background:#c4a86515}.crew-routine>p{font-size:9px;line-height:1.55;margin:0;color:#92a9bd;max-width:270px}.crew-cycle{grid-column:1/-1;padding-top:9px;border-top:1px solid #9fb7ca20;color:#9db6c7;font-size:9px;line-height:1.6}.crew-feedback{margin:0 23px 10px;padding:10px 12px;background:#10312cde;border:1px solid #81c9b84a;border-radius:8px;color:#b5e6d4;font-size:11px;line-height:1.55}.crew-feedback[hidden]{display:none}.crew-feedback.error{background:#30231fe8;color:#f1c1a5;border-color:#eab8944a}.crew-floor{position:relative;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:#607b9366 #07111a22;overscroll-behavior-x:contain;margin-top:12px;border-top:1px solid #a2c5d52a;border-bottom:1px solid #a2c5d52a;background:linear-gradient(180deg,#05101955,transparent 30%,#06132155);outline-offset:-3px}.crew-stage{position:relative;min-width:660px;isolation:isolate;background-image:linear-gradient(#a8cad208 1px,transparent 1px),linear-gradient(90deg,#a8cad208 1px,transparent 1px);background-size:55px 55px;background-position:0 40px}.crew-floor-paths{position:absolute;left:9%;right:9%;top:149px;bottom:43px;border-top:1px solid #a9d5d930;border-bottom:1px solid #a9d5d918;border-radius:40px;pointer-events:none;background:linear-gradient(90deg,transparent 16%,#7ad3e40e 16.1%,#7ad3e40e 16.3%,transparent 16.4%,transparent 49.8%,#7ad3e40e 49.9%,#7ad3e40e 50.1%,transparent 50.2%,transparent 83.1%,#7ad3e40e 83.2%,#7ad3e40e 83.4%,transparent 83.5%)}.crew-stations{position:absolute;left:0;right:0;top:19px;display:flex;justify-content:space-around;gap:15px;padding:0 28px;pointer-events:none}.crew-station{position:relative;color:#bdd8e2;font-size:8px;letter-spacing:1.4px;text-align:center;padding:12px 14px 13px;border:1px solid #b6d6df30;background:linear-gradient(120deg,#223848d9,#0b1c2dde);border-radius:8px;box-shadow:0 10px 30px #0003;min-width:145px}.crew-station:after{content:'';position:absolute;bottom:-15px;left:50%;height:15px;width:1px;background:#a6dce454}.crew-station small{display:block;margin-top:6px;color:#89aabd;font-size:8px;letter-spacing:.2px}.crew-home-pod{position:absolute;transform:translate(-50%,-50%);width:69px;height:24px;border:1px solid color-mix(in srgb,var(--crew-color),transparent 67%);border-radius:50%;background:radial-gradient(ellipse,color-mix(in srgb,var(--crew-color),transparent 84%),transparent 76%);box-shadow:0 4px 10px #0006}.crew-home-pod:after{content:'';position:absolute;inset:-5px;border:1px dashed color-mix(in srgb,var(--crew-color),transparent 83%);border-radius:50%}.crew-member{position:absolute;left:var(--crew-x,var(--home-x));top:var(--crew-y,var(--home-y));transform:translate(-50%,-100%);width:100px;height:109px;padding:0;border:0;background:none;color:var(--crew-color);cursor:pointer;isolation:isolate;transition:left 1.5s cubic-bezier(.35,.15,.25,1),top 1.5s cubic-bezier(.35,.15,.25,1);z-index:3;outline-offset:7px}.crew-member.is-working,.crew-member.is-walking{z-index:5}.crew-member.is-selected{z-index:6}.crew-character{position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:83px;height:109px;transform-origin:50% 93%;filter:drop-shadow(0 4px 4px #000b);animation:crew-ambient 7s ease-in-out infinite}.crew-character img{position:absolute;inset:0;height:100%;width:100%;object-fit:contain;object-position:center bottom;opacity:0;pointer-events:none;user-select:none}.crew-member.has-art .crew-character img{opacity:1}.crew-member.has-art .crew-character-fallback{opacity:0}.crew-character-fallback{position:absolute;inset:3px 16px 0;color:var(--crew-color);background:linear-gradient(105deg,#b6bdc755,#152b3cee 45%,#0b172a);clip-path:polygon(35% 2%,65% 2%,73% 11%,68% 24%,89% 33%,100% 69%,84% 74%,74% 49%,75% 72%,82% 100%,59% 100%,50% 76%,41% 100%,18% 100%,25% 72%,26% 49%,16% 74%,0 69%,11% 33%,32% 24%,27% 11%);filter:drop-shadow(0 0 2px currentColor)}.crew-character-fallback:before{content:'';position:absolute;left:33%;right:33%;top:10%;height:4px;background:currentColor;box-shadow:0 0 7px currentColor}.crew-character-fallback b{position:absolute;top:35%;left:0;width:100%;font:8px ui-monospace,monospace;letter-spacing:1px}.crew-member-shadow{position:absolute;bottom:-5px;left:50%;width:61px;height:18px;transform:translateX(-50%);border-radius:50%;background:#0108139e;box-shadow:0 0 12px #02081488;z-index:-1}.crew-nameplate{position:absolute;top:calc(100% + 12px);left:50%;transform:translateX(-50%);width:100px;max-width:100px;text-align:center;display:grid;gap:3px;padding:5px 3px;border:1px solid transparent;border-radius:6px;background:#091421a1;backdrop-filter:blur(7px)}.crew-nameplate strong{color:#e0eaf0;font-size:10px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.crew-nameplate small{display:none}.crew-nameplate em{font-size:8px;color:#94abba;font-style:normal}.crew-member.is-selected .crew-nameplate,.crew-member:hover .crew-nameplate{border-color:color-mix(in srgb,var(--crew-color),transparent 46%);background:#152738e8}.crew-member.is-selected .crew-character{filter:drop-shadow(0 0 9px color-mix(in srgb,var(--crew-color),transparent 58%)) drop-shadow(0 3px 3px #000b)}.crew-member.is-working .crew-nameplate em{color:#a5e9cf}.crew-member[data-state=blocked] .crew-nameplate em,.crew-member[data-state=failed] .crew-nameplate em,.crew-member[data-state=interrupted] .crew-nameplate em{color:#e5b591}.crew-work-signal{display:none;position:absolute;right:6px;top:33px;width:18px;height:24px;border:1px solid var(--crew-color);border-radius:3px;background:linear-gradient(0deg,transparent 25%,color-mix(in srgb,var(--crew-color),transparent 55%) 26%,transparent 30%,transparent 60%,color-mix(in srgb,var(--crew-color),transparent 55%) 61%,transparent 65%);transform:rotate(-10deg);box-shadow:0 0 12px color-mix(in srgb,var(--crew-color),transparent 78%)}.crew-member.is-working .crew-work-signal{display:block;animation:crew-terminal 2.2s ease-in-out infinite}.crew-member.is-working .crew-character{animation:crew-work 2.7s ease-in-out infinite}.crew-member.is-walking .crew-character{animation:crew-walk .38s ease-in-out infinite}.crew-member.is-walking .crew-work-signal{display:none}.crew-scene-key{display:flex;justify-content:space-between;gap:12px;margin:14px 24px 0;color:#86a0b3;font-size:8px;line-height:1.6}.crew-inspector-heading{display:flex;justify-content:space-between;gap:12px;padding:24px 20px 17px;border-bottom:1px solid #9dbdd321;line-height:1.5}.crew-inspector-heading span:last-child{font-size:8px;letter-spacing:0;color:#85a5bc}.crew-dossier{padding:16px 21px 25px}.crew-portrait{height:160px;border:1px solid #a8c8d526;border-radius:12px;overflow:hidden;background:radial-gradient(ellipse at 50% 70%,color-mix(in srgb,var(--crew-color),transparent 85%),transparent 70%),linear-gradient(130deg,#20344980,#09142240);display:grid;place-items:center;margin-bottom:17px}.crew-portrait img{height:160px;width:100%;object-fit:contain;object-position:center 5px;filter:drop-shadow(0 0 20px #d3e7ed16)}.crew-role-status{display:inline-block;border:1px solid #92aec831;border-radius:100px;padding:5px 9px;color:#9bb5c8;font-size:9px}.crew-role-status[data-state=running]{color:#a3e9cd;border-color:#a3e9cd4d}.crew-role-status[data-state=failed],.crew-role-status[data-state=blocked],.crew-role-status[data-state=interrupted]{color:#e9b68c;border-color:#e9b68c4d}.crew-dossier h2{font-size:28px!important;line-height:1.14;font-weight:400;letter-spacing:-.7px;margin:13px 0 8px;color:#e9f0f4}.crew-responsibility{font-size:12px;line-height:1.65;margin:0;color:#b5c9d8}.crew-role-scope{margin:16px 0;font-size:10px;color:#c6d9e2;text-transform:capitalize}.crew-role-scope small{display:block;color:#839db2;margin-top:6px;font-size:9px;text-transform:none}.crew-definition{padding:11px 0;border-top:1px solid #9dbdd320;font-size:10px;color:#8ba8be}.crew-definition summary{cursor:pointer}.crew-definition p{font:9px/1.7 ui-monospace,monospace;overflow-wrap:anywhere;color:#a5bacb}.crew-latest-receipt{display:grid;gap:8px;border:1px solid #a4c5d320;background:#0917227a;border-radius:9px;padding:12px;margin:9px 0 17px}.crew-latest-receipt>span{font-size:7px;line-height:1.5}.crew-latest-receipt strong{font-size:11px;font-weight:500;color:#c5dce6;line-height:1.55;overflow-wrap:anywhere}.crew-latest-receipt small{color:#7f9eb3;font-size:8px;line-height:1.55}.crew-latest-receipt p,.crew-deliverables p,.crew-boundary{font-size:10px;line-height:1.7;color:#8da7bb;margin:0}.crew-deliverables{display:grid;gap:8px}.crew-deliverables>span{font-size:7px;margin-bottom:2px}.crew-deliverables .btn{justify-content:flex-start;text-align:left;overflow-wrap:anywhere;background:#8fbdcc09;border-color:#a5c7d22a;color:#c3dbe5}.crew-dispatch{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 14px}.crew-dispatch .btn:first-child{color:#0b1823;background:#bdd8dc;border-color:#bdd8dc}.crew-boundary{font-size:9px;color:#7b96aa}.crew-blocker{font-size:10px;line-height:1.65;padding:10px 12px;border:1px solid #d9a87f33;border-radius:8px;background:#30201666;color:#e0b69c}.crew-inspector-empty{padding:25px;color:#9bb4c7;line-height:1.7}.crew-offline .crew-character,.crew-offline .crew-work-signal{animation:none!important}.crew-mode .world-room.motion-paused .crew-member{transition:none}.crew-mode button:disabled{opacity:.42;cursor:not-allowed}.crew-mode select:focus-visible,.crew-floor:focus-visible{outline:2px solid #b8dde7;outline-offset:3px}.crew-scoped .crew-bay{padding-top:92px}.crew-scoped .crew-team-heading{padding-bottom:8px}
@keyframes crew-ambient{0%,100%{translate:0 0}50%{translate:0 -1px}}@keyframes crew-work{0%,100%{rotate:-.7deg}50%{rotate:.7deg}}@keyframes crew-walk{0%,100%{rotate:-2deg;translate:0 0}50%{rotate:2deg;translate:0 -3px}}@keyframes crew-terminal{0%,100%{opacity:.65}50%{opacity:1}}
@media(max-width:1280px){.crew-routine{grid-template-columns:1fr}.crew-time-control{grid-row:2}.crew-routine-actions{grid-row:3}.crew-routine>p{max-width:none}.crew-team-heading{align-items:flex-start;flex-direction:column;gap:5px}.crew-dossier{padding:16px}.crew-inspector-heading{padding:22px 16px 16px}}
@media(max-width:1040px){.crew-mode .world-inspector{display:block}.crew-routine{grid-template-columns:minmax(0,1fr) auto}.crew-time-control{grid-row:auto}.crew-routine-actions{grid-row:auto}.crew-dossier{display:flow-root;padding:20px 24px}.crew-portrait{float:left;width:145px;height:174px;margin:0 22px 18px 0}.crew-portrait img{height:174px}.crew-definition{clear:both}.crew-inspector-heading{padding:20px 24px 16px}.crew-deliverables{grid-template-columns:1fr 1fr}.crew-deliverables>span,.crew-deliverables>p{grid-column:1/-1}}
@media(max-width:650px){.crew-bay,.crew-scoped .crew-bay{padding-top:90px;padding-bottom:106px}.crew-team-heading{padding:0 16px 13px}.crew-team-heading strong{font-size:10px}.crew-team-heading>span{font-size:8px}.crew-routine{margin:0 13px 12px;padding:13px;grid-template-columns:1fr}.crew-routine-title strong{font-size:16px}.crew-time-control{gap:7px}.crew-routine .btn{min-height:36px}.crew-routine>p{max-width:none}.crew-floor{margin-top:10px}.crew-scene-key{flex-direction:column;gap:5px;margin:13px 17px 0;font-size:8px}.crew-mode .world-stage-bottom{bottom:31px;left:17px;right:17px}.crew-mode .world-presence small{font-size:7px;line-height:1.4;max-width:140px}.crew-mode .world-camera-controls [data-world-action=reset]{display:none}.crew-mode .world-feed{max-width:109px;line-height:1.5;white-space:normal}.crew-dossier{padding:18px}.crew-portrait{width:115px;height:152px;margin-right:16px}.crew-portrait img{height:152px}.crew-dossier h2{font-size:26px!important}.crew-responsibility{font-size:11px}.crew-deliverables{grid-template-columns:1fr}.crew-inspector-heading{padding:19px 18px 15px}.crew-dispatch .btn{min-height:39px;font-size:11px}.crew-feedback{margin:0 13px 10px}.crew-cycle{font-size:9px}}
@media(prefers-reduced-motion:reduce){.crew-mode *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Keep the characters ahead of administration, including at tablet widths. */
.world-layout.crew-mode .world-room{min-height:0}.crew-bay,.crew-scoped .crew-bay{padding-top:82px;padding-bottom:98px}.crew-team-heading{padding-bottom:6px}.crew-team-heading>span{display:none}.crew-floor{margin-top:8px}.crew-stage{min-width:540px;background-size:45px 55px}.crew-stations{top:8px;padding:0 19px;gap:9px}.crew-station{padding:7px 9px;min-width:126px;font-size:7px;letter-spacing:1px}.crew-station small{font-size:7px;margin-top:4px}.crew-station:after{height:10px;bottom:-10px}.crew-floor-paths{top:156px;bottom:35px}.crew-member{height:98px;width:86px}.crew-character{height:98px;width:77px}.crew-nameplate{width:86px;max-width:86px;top:calc(100% + 8px);padding:4px 2px;gap:3px}.crew-nameplate strong{font-size:9px}.crew-nameplate em{font-size:8px}.crew-routine{margin:14px 20px 0;padding:12px 14px;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px}.crew-routine-title{gap:4px}.crew-routine-title>strong{font-size:14px}.crew-routine-title>span{font-size:7px}.crew-routine-title>small{font-size:8px}.crew-routine-actions{grid-column:2;grid-row:1;gap:6px;justify-content:flex-end}.crew-routine-actions .btn{min-height:32px;font-size:9px;padding:7px 9px}.crew-schedule-editor{grid-column:1/-1;grid-row:2;font-size:9px;color:#adc8d8}.crew-schedule-editor>summary{width:max-content;cursor:pointer;padding:4px 0}.crew-schedule-editor[open]>.crew-time-control{padding:9px 0 4px}.crew-routine>p{grid-column:1/-1;max-width:none;font-size:8px;line-height:1.5}.crew-cycle{padding-top:7px;font-size:8px}.crew-scene-key{margin-top:11px;font-size:7px}.crew-time-control{grid-row:auto}.crew-mode .world-stage-bottom{bottom:30px}
@media(max-width:650px){.crew-bay,.crew-scoped .crew-bay{padding-top:80px;padding-bottom:99px}.crew-team-heading{padding-bottom:5px}.crew-team-heading strong{font-size:9px}.crew-routine{margin:12px 13px 0;padding:11px 12px;grid-template-columns:1fr}.crew-routine-actions{grid-column:1;grid-row:2;justify-content:flex-start}.crew-schedule-editor{grid-row:3}.crew-routine-title>strong{font-size:14px}.crew-routine-actions .btn{min-height:34px}.crew-scene-key{gap:4px;margin-top:11px}}
/* Clear each nameplate before the next row, without shrinking the whole scene. */
.crew-stage{min-width:500px}.crew-member{height:85px;width:80px}.crew-character{height:85px;width:72px}.crew-nameplate{box-sizing:border-box;width:80px;max-width:80px;height:24px;top:calc(100% + 5px);padding:1px 2px;gap:0;grid-template-rows:10px 10px}.crew-nameplate strong{font-size:9px;line-height:10px}.crew-nameplate em{font-size:8px;line-height:10px}.crew-mode .world-film{opacity:.3}.crew-mode .world-scenery{opacity:.45}.crew-floor{background:linear-gradient(180deg,#05101988,#07111ca3 42%,#06132199)}
/* The original campus is the coordinate plane: people work inside its offices. */
.crew-offices-mode .world-room{background:#081321}.crew-offices-mode .crew-bay{padding-top:84px;padding-bottom:101px}.crew-offices-mode .crew-team-heading{padding-bottom:13px}.crew-offices-mode .crew-floor{overflow:visible;border:0;background:none;margin-top:0}.crew-offices-mode .crew-stage{container-type:inline-size;isolation:isolate;min-width:0;width:100%;height:auto;aspect-ratio:2688/1520;background:none;overflow:hidden}.crew-offices-mode .crew-stage .world-scenery{inset:0;background-size:100% 100%;background-position:center;opacity:1;animation:none;transform:none}.crew-offices-mode .crew-stage .world-film{inset:0;width:100%;height:100%;object-fit:fill;opacity:1}.crew-offices-mode .crew-stage .world-vignette{inset:0;background:linear-gradient(180deg,#06101d33,transparent 20%,transparent 85%,#06101d66)}.crew-offices-mode .crew-stage .world-atmosphere{inset:0;mix-blend-mode:screen;background:radial-gradient(ellipse at 50% 60%,#86d2f109,transparent 75%)}.crew-offices-mode .crew-stage .world-stars{inset:0}.crew-offices-mode .crew-stage [data-crew-offices],.crew-offices-mode .crew-stage [data-crew-desks],.crew-offices-mode .crew-stage [data-crew-characters]{position:absolute;inset:0;pointer-events:none}.crew-offices-mode .crew-stage [data-crew-offices]{z-index:1}.crew-offices-mode .crew-stage [data-crew-desks]{z-index:2}.crew-offices-mode .crew-stage [data-crew-characters]{z-index:3}.crew-office-boundary{position:absolute;border-bottom:1px solid color-mix(in srgb,var(--office-color),transparent 35%);border-left:1px solid color-mix(in srgb,var(--office-color),transparent 77%);border-right:1px solid color-mix(in srgb,var(--office-color),transparent 77%);border-radius:35% 35% 45% 45%;box-shadow:0 7px 10px -10px var(--office-color);background:linear-gradient(180deg,transparent 80%,color-mix(in srgb,var(--office-color),transparent 94%));pointer-events:none}.crew-office-door{position:absolute;transform:translate(-50%,-50%);display:grid;gap:3px;max-width:36%;padding:6px 9px;background:linear-gradient(120deg,#071422e8,#0c1e2bbb);border:1px solid color-mix(in srgb,var(--office-color),transparent 40%);border-radius:6px;box-shadow:0 3px 15px #0006;text-decoration:none;pointer-events:auto;backdrop-filter:blur(9px);text-align:center;z-index:7;white-space:nowrap}.crew-office-door strong{font-size:clamp(7px,1.5cqw,11px);font-weight:500;line-height:1.2;color:#ebf3f4}.crew-office-door small{font-size:clamp(5px,1.05cqw,8px);line-height:1.2;color:#a9c8d8}.crew-office-door:hover,.crew-office-door:focus-visible{border-color:var(--office-color);background:#19394ced;outline:2px solid #c7e7ed;outline-offset:3px}.crew-offices-mode .crew-member{pointer-events:auto;width:clamp(26px,4.7cqw,55px);height:clamp(27px,5.5cqw,67px);z-index:4;filter:drop-shadow(0 1px 1px #020c16)}.crew-offices-mode .crew-character{width:100%;height:100%;filter:drop-shadow(0 2px 2px #000b)}.crew-offices-mode .crew-character-fallback{inset:3px 5px 0}.crew-offices-mode .crew-character-fallback b{font-size:5px}.crew-offices-mode .crew-member-shadow{width:60%;height:10%;bottom:-2px;background:#020814aa;box-shadow:0 0 4px #04101a99}.crew-offices-mode .crew-nameplate{opacity:0;pointer-events:none;top:100%;width:100px;max-width:none;height:auto;min-height:26px;grid-template-rows:auto auto;padding:3px 5px;gap:2px;transition:opacity .2s;z-index:9;box-shadow:0 3px 15px #020b16aa;background:#071523ef}.crew-offices-mode .crew-nameplate strong{font-size:9px;line-height:1.2}.crew-offices-mode .crew-nameplate em{font-size:8px;line-height:1.2}.crew-offices-mode .crew-member:hover .crew-nameplate,.crew-offices-mode .crew-member:focus-visible .crew-nameplate,.crew-offices-mode .crew-member.is-selected .crew-nameplate{opacity:1}.crew-offices-mode .crew-member.is-selected,.crew-offices-mode .crew-member:hover,.crew-offices-mode .crew-member:focus-visible{z-index:10}.crew-offices-mode .crew-member.is-selected .crew-character{filter:drop-shadow(0 0 4px var(--crew-color)) drop-shadow(0 2px 2px #000b)}.crew-offices-mode .crew-work-signal{width:20%;height:26%;right:0;top:30%;border-width:1px;border-radius:2px;box-shadow:0 0 6px var(--crew-color)}.crew-desk{position:absolute;display:block;width:clamp(13px,2.5cqw,30px);height:clamp(7px,1.3cqw,16px);transform:translate(35%,-55%) skewY(-8deg);color:var(--crew-color);border:1px solid #c2d9e577;border-bottom-width:2px;background:linear-gradient(160deg,#7e8e994d,#0a1b27e6);border-radius:3px;box-shadow:2px 4px 5px #0005}.crew-desk:after{content:'';position:absolute;left:15%;right:15%;top:100%;height:5px;border-left:1px solid #96a5b499;border-right:1px solid #96a5b499}.crew-desk i{position:absolute;left:15%;bottom:80%;width:68%;height:110%;border:1px solid #a2c3d19c;background:linear-gradient(130deg,#233b48,#0c1725);border-radius:2px;box-shadow:0 0 5px #91bdd511;transform:skewY(8deg)}.crew-desk b,.crew-desk em{position:absolute;bottom:100%;width:20%;height:45%;border:1px solid #a3bac366;background:#697b884d}.crew-desk b{left:0}.crew-desk em{right:0}.crew-desk-mixing i{bottom:20%;height:60%;width:80%;left:10%;background:repeating-linear-gradient(90deg,#6f8998 0 1px,#183340 1px 3px)}.crew-desk-documents i,.crew-desk-archive i{height:40%;bottom:35%;width:45%;left:33%;background:#bcbab382;transform:rotate(-12deg)}.crew-desk-documents b,.crew-desk-archive b{height:50%;width:30%;border-color:#d3c89e99}.crew-desk-vitals i{background:linear-gradient(135deg,#09283a,#365c68)}.crew-desk.desk-active i{border-color:var(--crew-color);box-shadow:0 0 8px color-mix(in srgb,var(--crew-color),transparent 25%);background:linear-gradient(130deg,color-mix(in srgb,var(--crew-color),#092038 70%),#0b273a);animation:crew-terminal 2.2s ease-in-out infinite}.crew-offices-mode .crew-routine{margin-top:17px}.crew-offices-mode .crew-role-scope a{display:inline-block;margin-top:10px;font-size:10px;color:#bcdee5;text-decoration:none;border-bottom:1px solid #91bdca55;padding-bottom:3px}.crew-offices-mode .crew-role-scope a:hover{color:#fff}.crew-offices-mode .crew-scene-key{color:#9ab5c8}.crew-offices-mode .world-stage-bottom{bottom:30px}.crew-offices-mode .world-room[data-focus=overview] .crew-stage .world-scenery{transform:none}.crew-offices-mode .crew-stage .world-film.film-ready{opacity:1}.crew-offices-mode.crew-scoped .crew-member{width:clamp(45px,7cqw,80px);height:clamp(54px,9cqw,105px)}.crew-offices-mode.crew-scoped .crew-desk{width:clamp(23px,4cqw,48px);height:clamp(12px,2.1cqw,25px)}.crew-offices-mode.crew-scoped .crew-nameplate{opacity:1;max-width:145px;width:130px}.crew-offices-mode.crew-scoped .crew-stage{aspect-ratio:2688/1520}.crew-offices-mode.crew-scoped .crew-team-heading strong{font-size:10px}.crew-offices-mode .world-room.motion-paused .crew-desk i{animation-play-state:paused}.crew-offices-mode.crew-offline .crew-desk i{animation:none;box-shadow:none}.crew-offices-mode .crew-office-door:focus-visible{z-index:20}
@media(max-width:650px){.crew-offices-mode .crew-bay{padding-top:83px}.crew-offices-mode .crew-team-heading{padding:0 16px 10px}.crew-office-door{padding:4px 6px;gap:2px;border-radius:4px}.crew-office-door strong{font-size:7px}.crew-office-door small{font-size:5px}.crew-offices-mode .crew-member{height:clamp(22px,5.5cqw,40px);width:clamp(21px,4.7cqw,36px)}.crew-offices-mode .crew-nameplate{width:86px;padding:3px}.crew-offices-mode .crew-nameplate strong{font-size:8px}.crew-offices-mode .crew-nameplate em{font-size:7px}.crew-offices-mode.crew-scoped .crew-member{height:clamp(44px,10cqw,67px);width:clamp(38px,8cqw,57px)}.crew-offices-mode.crew-scoped .crew-nameplate{width:115px}.crew-offices-mode .crew-routine{margin-top:14px}}
.crew-offices-mode.crew-scoped .crew-member[data-id="fatherscan-foundation-rel"] .crew-nameplate{left:auto;right:50%;transform:translateX(8px);text-align:right}
/* A compact, keyboard-accessible roster supplements each office scene. */
.crew-team-selector{margin:16px 20px 0;padding:11px 12px 9px;border:1px solid #9dbbca2e;border-radius:11px;background:linear-gradient(120deg,#0d1e2cc7,#0b1622ab)}.crew-selector-heading{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:0 3px 8px}.crew-selector-heading>span{font-size:8px;letter-spacing:1.3px;color:#b4cad8}.crew-selector-heading>small{font-size:8px;color:#859eaf}.crew-team-choices{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(145px,1fr);gap:7px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#42657d #091420;padding:3px 3px 5px}.crew-team-choice{display:flex;align-items:center;gap:8px;min-height:64px;min-width:0;padding:6px 8px;background:#10203066;border:1px solid #95b7c824;border-radius:7px;text-align:left;color:#cbdce6;cursor:pointer;transition:border-color .18s,background .18s}.crew-team-choice:hover{border-color:#a9ced76b;background:#172e3c99}.crew-team-choice.is-selected{border-color:#b9d8dc99;background:#a8d1d714;box-shadow:inset 0 0 0 1px #c2e5e312}.crew-team-choice:focus-visible{outline:2px solid #c0e1e8;outline-offset:1px}.crew-choice-portrait{width:32px;height:46px;flex:0 0 32px;display:grid;place-items:center;border-radius:5px;background:radial-gradient(ellipse at 50% 70%,#94bec420,transparent 76%);overflow:hidden}.crew-choice-portrait img{width:100%;height:100%;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 2px 2px #0008);pointer-events:none}.crew-choice-copy{display:grid;gap:5px;min-width:0}.crew-choice-copy strong{font-size:10px;font-weight:500;line-height:1.35;color:#dce8ef;overflow-wrap:anywhere}.crew-choice-copy small{display:flex;gap:5px;align-items:center;font-size:9px;line-height:1.3;color:#99b2c4}.crew-choice-copy small:before{content:'';height:4px;width:4px;flex-shrink:0;border-radius:50%;background:#7f9bac}.crew-team-choice[data-state=running] .crew-choice-copy small{color:#a3ddc4}.crew-team-choice[data-state=running] .crew-choice-copy small:before{background:#a3ddc4}.crew-team-choice[data-state=failed] .crew-choice-copy small,.crew-team-choice[data-state=interrupted] .crew-choice-copy small,.crew-team-choice[data-state=blocked] .crew-choice-copy small{color:#e0b497}.crew-team-choice[data-state=unknown] .crew-choice-copy small{color:#b5a995}.crew-team-choice[data-state=unknown] .crew-choice-copy small:before{background:#a69884}.crew-workstation{margin-top:14px;padding-top:10px;border-top:1px solid #a0bdce26}.crew-workstation>span{display:block;margin-bottom:7px;font-size:8px;letter-spacing:1.3px;text-transform:uppercase;color:#9cb8cb}.crew-workstation .crew-responsibility{font-size:11px;line-height:1.65}
@media(max-width:650px){.crew-team-selector{margin:13px 13px 0;padding:10px 9px 7px}.crew-selector-heading{padding-bottom:7px}.crew-selector-heading>small{font-size:8px}.crew-team-choices{grid-auto-columns:minmax(148px,1fr)}.crew-team-choice{min-height:65px}.crew-choice-copy strong{font-size:10px}.crew-workstation .crew-responsibility{font-size:11px}}
/* Campus characters share the architecture's perspective and keep their feet planted. */
.crew-offices-mode:not(.crew-scoped) .crew-member{width:calc(var(--campus-height,3.3cqw)*.7);height:var(--campus-height,3.3cqw);z-index:var(--crew-depth,300);filter:none;outline-offset:2px}
.crew-member[hidden]{display:none!important}
.crew-offices-mode:not(.crew-scoped) .crew-character,.crew-offices-mode:not(.crew-scoped) .crew-member.is-selected .crew-character{transform-origin:50% 100%;filter:saturate(.82) brightness(.92) drop-shadow(.5px 1px .6px #08111b80)}
.crew-offices-mode:not(.crew-scoped) .crew-character{animation:crew-grounded-idle 7s ease-in-out infinite}
.crew-offices-mode:not(.crew-scoped) .crew-character img{transform:scaleX(var(--crew-facing,1))}
.crew-offices-mode:not(.crew-scoped) .crew-member-shadow{width:36%;height:8%;bottom:-1%;transform:translateX(-50%) skewX(-25deg);background:#07131acc;box-shadow:1px 0 2px #07131a70}
.crew-offices-mode:not(.crew-scoped) .crew-member.is-working .crew-character{animation:crew-work 2.7s ease-in-out infinite}
.crew-offices-mode:not(.crew-scoped) .crew-member.is-walking .crew-character{animation:crew-grounded-walk .4s ease-in-out infinite}
.crew-offices-mode:not(.crew-scoped) .crew-member:hover,.crew-offices-mode:not(.crew-scoped) .crew-member:focus-visible{z-index:1000}
.crew-offices-mode:not(.crew-scoped) .world-film[hidden]{display:none}
.crew-offices-mode:not(.crew-scoped) .world-room.motion-paused .crew-character,.crew-offices-mode:not(.crew-scoped) .world-room.motion-suspended .crew-character{animation-play-state:paused!important}
@keyframes crew-grounded-idle{0%,100%{rotate:-.25deg}50%{rotate:.25deg}}
@keyframes crew-grounded-walk{0%,100%{rotate:-1deg}50%{rotate:1deg}}
@media(prefers-reduced-motion:reduce){.crew-offices-mode:not(.crew-scoped) .crew-character{animation:none!important}}
/* Every headquarters role has a large direct entrance, including each tech app. */
.crew-office-directory .crew-team-choices{grid-auto-flow:row;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-columns:auto;overflow:visible}.crew-office-directory .crew-team-choice{min-height:82px;padding:9px 11px}.crew-office-directory .crew-choice-portrait{width:38px;height:58px;flex-basis:38px}.crew-choice-workspace{display:flex;align-items:center;gap:8px;font-size:9px;line-height:1.4;color:#b5d7df}.crew-choice-workspace b{margin-left:auto;font-size:14px;font-weight:400}.crew-offices-mode:not(.crew-scoped) .crew-nameplate{pointer-events:none}.crew-offices-mode.crew-scoped .crew-nameplate{pointer-events:auto}.crew-office-directory .crew-selector-heading{align-items:start}.crew-office-directory .crew-selector-heading>small{text-align:right}
@media(max-width:650px){.crew-office-directory .crew-team-choices{grid-template-columns:1fr;grid-auto-columns:auto}.crew-office-directory .crew-team-choice{min-height:76px}.crew-office-directory .crew-choice-copy strong{font-size:12px}.crew-choice-workspace{font-size:10px}.crew-office-directory .crew-selector-heading{flex-direction:column;gap:5px}.crew-office-directory .crew-selector-heading>small{text-align:left}}
/* Enterprize is a company floor: six headquarters teams plus its app leads. */
.crew-company .crew-company-summary{margin:0 20px 12px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;border:1px solid #91cbd22e;border-radius:10px;overflow:hidden;background:#71aecb22}.crew-company-summary>div{display:grid;gap:3px;padding:11px 13px;background:#102333}.crew-company-summary strong{font-size:22px;line-height:1.2;color:#e0f4fa;font-weight:500}.crew-company-summary span{font-size:9px;color:#9dbdcf}.crew-company-summary>p{grid-column:1/-1;margin:0;padding:10px 13px;background:#0b1c29;color:#a9c6d6;font-size:9px;line-height:1.6}.crew-department-tabs{display:flex;gap:5px;flex-wrap:wrap;margin:0 20px 12px}.crew-department-tabs button{min-height:31px;padding:6px 9px;border:1px solid #88b6ca30;border-radius:6px;background:#122333;color:#adc6d4;font-size:9px;cursor:pointer}.crew-department-tabs button[aria-pressed=true]{background:#a2d9e51d;border-color:#a6e2ee9a;color:#e4faff}.crew-department-tabs button:focus-visible{outline:2px solid #a9e6f2;outline-offset:2px}.crew-company .crew-member{width:clamp(22px,4.7cqw,60px)!important;height:clamp(30px,6cqw,76px)!important}.crew-company .crew-nameplate{opacity:0!important;pointer-events:none!important;width:130px}.crew-company .crew-member:focus-visible .crew-nameplate{opacity:1!important}@media(hover:hover){.crew-company .crew-member:hover .crew-nameplate{opacity:1!important}}.crew-company .crew-desk{width:clamp(13px,2.4cqw,32px)!important;height:clamp(7px,1.3cqw,17px)!important}.crew-company .is-department-muted{opacity:.22;filter:saturate(.4)}.crew-paged .crew-office-directory .crew-team-choices{grid-template-columns:repeat(3,minmax(0,1fr))}.crew-team-choice[hidden]{display:none!important}.crew-paged .crew-team-choice{min-height:83px;padding:8px}.crew-paged .crew-choice-portrait{width:30px;flex-basis:30px;height:54px}.crew-paged .crew-choice-copy strong{font-size:10px}.crew-paged .crew-choice-workspace{font-size:8px}.crew-offices-mode:not(.crew-scoped) .crew-member.crew-compact{width:clamp(13px,2.8cqw,35px);height:clamp(15px,3.1cqw,40px)}.crew-tool-access,.crew-handoffs{margin-top:17px;padding-top:12px;border-top:1px solid #a7c6d128}.crew-tool-access>span,.crew-handoffs>span{font-size:8px;letter-spacing:1.3px;color:#a6c8d7}.crew-tool-access>div{display:flex;flex-wrap:wrap;gap:5px;margin-top:9px}.crew-tool-access small{font-size:9px;padding:4px 6px;background:#87c1bd16;border:1px solid #8cc7c42b;border-radius:4px;color:#bcdedb}.crew-tool-access p{font-size:9px;line-height:1.6;color:#91aebf;margin:10px 0 0}.crew-handoffs a{display:grid;gap:5px;padding:9px;margin-top:7px;border:1px solid #a1c8da2a;border-radius:6px;text-decoration:none;color:#cde1eb;background:#13273866}.crew-handoffs strong{font-size:10px;font-weight:500;line-height:1.4}.crew-handoffs small{font-size:9px;color:#9dc4d7}
@media(max-width:1100px){.crew-paged .crew-office-directory .crew-team-choices{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.crew-company .crew-company-summary{margin:0 13px 10px}.crew-company-summary>div{padding:9px 7px}.crew-company-summary strong{font-size:20px}.crew-company-summary span{font-size:8px}.crew-department-tabs{margin:0 13px 11px}.crew-department-tabs button{min-height:36px}.crew-paged .crew-office-directory .crew-team-choices{grid-template-columns:1fr}.crew-company .crew-member{height:clamp(20px,6cqw,40px)!important;width:clamp(17px,4.7cqw,34px)!important}.crew-paged .crew-choice-copy strong{font-size:12px}.crew-paged .crew-choice-workspace{font-size:10px}}
/* Office navigation stays above the scenery in every world. Labels appear only on demand. */
.crew-office-navigation{display:flex;flex-wrap:wrap;gap:8px;margin:0 20px 16px}.crew-office-navigation[hidden]{display:none}.crew-office-navigation a{flex:1 1 130px;display:grid;gap:5px;padding:10px 12px;border:1px solid #97c1d337;border-radius:8px;background:#10202fc7;text-decoration:none;color:#cee7ee}.crew-office-navigation strong{font-size:10px;font-weight:500}.crew-office-navigation small{font-size:8px;color:#90b3c5}.crew-office-navigation a:hover,.crew-office-navigation a:focus-visible{background:#19374a;outline:1px solid #9bd8e3;outline-offset:2px}.crew-offices-mode .crew-nameplate{opacity:0!important;pointer-events:none!important}.crew-offices-mode .crew-member:focus-visible .crew-nameplate{opacity:1!important}@media(hover:hover){.crew-offices-mode .crew-member:hover .crew-nameplate{opacity:1!important}}

/* Scale people and their workstations with each room, including narrow screens.
   Large roster cards remain the touch targets when scene characters are small. */
.crew-offices-mode.crew-scoped:not(.crew-company) .crew-member{height:var(--office-height,9cqw);width:calc(var(--office-height,9cqw)*.7)}
.crew-offices-mode.crew-scoped:not(.crew-company) .crew-desk{width:4cqw;height:2.1cqw}

/* Do not flash the legacy two-operator scene before the scoped roster arrives. */
.world-layout.world-pending .world-room>:not(.room-heading),.world-layout.world-pending .world-inspector{visibility:hidden;pointer-events:none}
.world-layout.world-pending .world-room::after{content:"Loading workspace team…";position:absolute;inset:45% 20px auto;text-align:center;color:#9db6c7;font-size:12px}

/* Enterprize floor anchors follow the furniture; the team directory stays compact. */
.crew-company .crew-member{height:var(--office-height,3.6cqw)!important;width:calc(var(--office-height,3.6cqw)*.7)!important}
.crew-company .crew-character{transform-origin:50% 100%;animation:crew-grounded-idle 7s ease-in-out infinite;filter:saturate(.9) drop-shadow(0 1px 1px #08111b99)}
.crew-company .crew-member-shadow{width:38%;height:8%;bottom:0}
.crew-company .crew-company-summary{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:10px}
.crew-company-summary>div{display:flex;align-items:baseline;gap:6px;padding:8px 10px}
.crew-company-summary strong{font-size:17px}.crew-company-summary>p{padding:7px 10px}
.crew-paged .crew-team-selector{padding:12px;margin-top:12px}
.crew-company .crew-department-tabs{margin:8px 0 10px;flex-wrap:nowrap;overflow-x:auto;padding-bottom:5px;scrollbar-width:thin}
.crew-company .crew-department-tabs button{white-space:nowrap;flex-shrink:0;min-height:32px}
.crew-company-search input{width:100%;min-height:38px;margin:0;padding:9px 11px;border:1px solid #91b6c633;border-radius:7px;background:#071622;color:#dcebf3;font:inherit;font-size:12px}
.crew-company-search input:focus-visible{outline:2px solid #9bd8e3;outline-offset:2px}
.crew-paged .crew-office-directory .crew-team-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;align-content:start}
.crew-paged .crew-team-choice{min-height:64px;padding:6px 9px;gap:9px}
.crew-paged .crew-choice-portrait{width:25px;flex-basis:25px;height:42px}
.crew-paged .crew-choice-copy{gap:3px}
.crew-paged .crew-choice-copy strong{font-size:11px;line-height:1.3}
.crew-paged .crew-choice-workspace{font-size:9px}
.crew-paged .crew-choice-copy small{font-size:8px}
.crew-roster-pager{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:9px;border-top:1px solid #91b6c622;color:#9db6c7;font-size:11px}
.crew-roster-pager>div{display:flex;gap:6px}
.crew-roster-pager button{width:36px;min-height:34px;border:1px solid #91b6c644;border-radius:6px;background:#122738;color:#cdebf4;cursor:pointer;font-size:16px}
.crew-roster-pager button:disabled{opacity:.3;cursor:default}
.crew-roster-pager button:focus-visible{outline:2px solid #9bd8e3;outline-offset:2px}
.crew-roster-empty{color:#9db6c7;font-size:12px}
@media(max-width:650px){.crew-company-summary>div{display:grid;gap:3px;padding:7px}.crew-paged .crew-team-selector{margin:10px 12px 0;padding:10px}.crew-paged .crew-team-choice{min-height:72px;padding:6px;gap:6px}.crew-paged .crew-choice-copy strong{font-size:10px}.crew-roster-pager button{min-height:44px;width:44px}}
@media(prefers-reduced-motion:reduce){.crew-company .crew-character{animation:none!important}}

/* One compact toolbar keeps every department reachable without sideways scrolling. */
.crew-company-search{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:8px;margin-bottom:10px}
.crew-company-search select{width:100%;min-width:0;min-height:38px;margin:0;padding:8px;border:1px solid #91b6c633;border-radius:7px;background:#071622;color:#dcebf3;font:inherit;font-size:11px}
.crew-company-search select:focus-visible{outline:2px solid #9bd8e3;outline-offset:2px}
.crew-paged .crew-team-selector{container-type:inline-size}
@container(min-width:660px){.crew-paged .crew-team-choices{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:650px){.crew-company-search input,.crew-company-search select{min-height:44px;font-size:11px}}
