#starter-overlay:has(.work-lab){padding:0;background:transparent;z-index:180}
#lab-room.work-lab{width:100vw;height:100dvh;max-width:none;max-height:none;border:0;border-radius:0;overflow:hidden;box-shadow:none}
.work-lab>.oak-area,.work-lab>.lab-table,.work-lab>.lab-provenance,.work-lab #starter-confirm,.work-lab #starter-audio-state{display:none!important}
.work-lab #work-lab-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:4;pointer-events:none}
.work-lab .lab-heading{position:absolute;top:max(16px,env(safe-area-inset-top));left:20px;width:auto;right:180px;margin:0;font-size:clamp(19px,3vw,30px);text-align:left;z-index:6;color:#fff;text-shadow:0 2px 5px #123}
.work-lab #starter-options{position:absolute;inset:0;display:block;transform:none;width:100%;height:100%;z-index:6;pointer-events:none}
.work-lab #starter-options button{position:absolute;min-width:84px;min-height:92px;padding:0;border:0;background:none!important;box-shadow:none!important;transform:none!important;pointer-events:auto;touch-action:manipulation}
.work-lab #starter-options button>*{visibility:hidden}
.work-lab #starter-options button:focus-visible{outline:2px dashed #fff;outline-offset:2px;border-radius:16px}
.work-lab .lab-corner{position:absolute;left:auto;width:auto;top:max(12px,env(safe-area-inset-top));right:max(12px,env(safe-area-inset-right));bottom:auto;z-index:8}
.work-lab .lab-corner button{min-height:44px;font-size:12px}
.work-lab #lab-actions{position:absolute;top:65px;right:12px;bottom:auto;left:auto;z-index:8}
.work-lab #lab-actions button{min-height:44px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
@media(max-width:500px) and (orientation:portrait){.work-lab .lab-heading{right:12px;top:74px}.work-lab #lab-actions{top:120px}}

.work-overlay{position:fixed;inset:0;z-index:170;background:transparent;isolation:isolate;touch-action:manipulation}
.work-overlay canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.work-overlay h2{position:absolute;transform:translateX(-50%);margin:0;color:#fff6d2;text-shadow:0 2px 4px #123,1px 0 #123;white-space:nowrap}
.work-overlay button{min-height:44px;min-width:44px}
.work-skip,.work-defer{position:absolute;right:max(12px,env(safe-area-inset-right));top:max(10px,env(safe-area-inset-top));font-size:12px}
.work-defer{top:auto;bottom:max(12px,env(safe-area-inset-bottom))}
.work-reward-controls article>b,.work-reward-controls article>p,.work-reward-controls article>button{position:absolute;margin:0;text-align:center;color:#eef4ed;overflow:hidden}
.work-reward-controls article>b{white-space:nowrap;text-overflow:ellipsis}
.work-reward-controls article>p{line-height:1.3;display:flex;align-items:center;justify-content:center}
.work-reward-controls article>button{background:transparent;border:0;box-shadow:none;color:#193b36;font-size:17px}
.work-reward-controls article>button:focus-visible{outline:3px solid #fff19c}
.work-reward-host{visibility:hidden!important;pointer-events:none!important}

.work-gym-controls button{position:absolute;background:none;border:0;box-shadow:none;padding:0;touch-action:manipulation}.work-gym-controls button:focus-visible{outline:3px solid #fff2a0;outline-offset:2px}.work-gym-controls button:disabled{cursor:default}

body.mobile-ui #mobile-hud #journey-btn{display:flex;align-items:center;justify-content:center;gap:2px;width:54px;min-width:54px;min-height:44px;padding:2px;font-size:12px}body.mobile-ui #journey-btn img{width:20px;height:20px}body.mobile-portrait #mobile-hud #journey-btn{order:1;width:50px;min-width:50px}body.playing.mobile-portrait #mobile-stage{flex:1 1 calc(100% - 164px)}

body.playing #hud-topstats #journey-btn{min-height:44px}#journey-btn b{display:inline-block;min-width:3ch;font-variant-numeric:tabular-nums}

.work-gift-professor{width:30px;height:40px;object-fit:contain;vertical-align:middle;margin-right:7px;image-rendering:pixelated}

/* Work gym console: readable captions when both nameplates cannot fit in portrait. */
.gym-console-caption{position:absolute;left:12px;right:12px;display:grid;grid-template-columns:1fr 1fr;gap:8px;pointer-events:none}.gym-console-caption[hidden]{display:none}.gym-console-caption>div{padding:8px 10px;background:linear-gradient(115deg,#0b223cf2,#123658f2);border-top:2px solid #a3d9ee;min-width:0}.gym-console-caption>div+div{background:linear-gradient(115deg,#3c1727f2,#602639f2);border-color:#f2bb99}.gym-console-caption strong{display:block;font-size:18px;color:#fff7e8}.gym-console-caption small{display:block;font-size:11px;line-height:1.35;color:#e0c8be}
