:root{--gi:#294b43;--gp:#fffcf0;--gl:#637d65;--gs:0 4px 0 #24403726,0 12px 28px #183a3020}
body:has(#office-game){background:#c5dbc8}
body:has(#office-game) .top{position:fixed;top:18px;left:20px;right:auto;border:2px solid var(--gl);background:var(--gp);border-radius:18px;padding:10px 15px;box-shadow:var(--gs);z-index:12}
body:has(#office-game) .top h1{font-size:19px;letter-spacing:1px}body:has(#office-game) .top>a{font-size:0}body:has(#office-game) .top>a:before{content:'‹';font-size:26px}
body:has(#office-game) #at{display:none}body:has(#office-game) .vw{margin-left:8px}.vw button{min-height:36px}
body:has(#office-game) main{max-width:none;margin:0;padding:0}body:has(#office-game) #scene{height:100dvh!important;min-height:540px;border-radius:0}
body:has(#office-game) .legend{position:fixed;left:24px;top:86px;background:#fffbeeeb;border:1px solid #617c6233;border-radius:12px;padding:6px 12px;z-index:10;font-size:11px}
body:has(#office-game) #floor{padding:130px 24px 150px}body:has(#office-game) .o3-hint{top:120px;background:#314a3dcc}
body:has(#office-game) .o3-chips{bottom:92px;left:20px;right:20px;width:max-content;max-width:calc(100% - 40px);margin:auto;padding:7px;border:1px solid #526a5938;background:#fffbeee8;backdrop-filter:blur(10px);border-radius:15px;scrollbar-width:thin;z-index:4}
body:has(#office-game) .o3-chips button{min-height:36px;background:#fffef7;border:1px solid #50634528;box-shadow:none;font-size:12px}
#office-game{color:var(--gi);font:14px/1.45 -apple-system,BlinkMacSystemFont,'Microsoft JhengHei',sans-serif;pointer-events:none;position:fixed;inset:0;z-index:11}
#office-game button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation}#office-game button:focus-visible{outline:3px solid #efb548;outline-offset:3px}
.og-card{background:var(--gp);border:2px solid var(--gl);border-radius:20px;box-shadow:var(--gs);pointer-events:auto}
.og-time{position:absolute;top:18px;right:20px;display:flex;gap:15px;align-items:center;padding:9px 17px;border-radius:16px}.og-time strong{display:block;font-size:17px;font-variant-numeric:tabular-nums}.og-time small{display:block;font-size:10px;letter-spacing:1px;color:#78816e}
.og-quiet{border:0;border-left:1px solid #c8d1bc;padding:7px 0 7px 14px;background:none;min-height:42px;font-weight:600!important}
.og-notebook{position:absolute;right:20px;top:104px;width:246px;padding:18px;background:repeating-linear-gradient(#fffbee 0 29px,#e9e8d6 30px 31px)}
.og-notebook:before{content:'';position:absolute;width:74px;height:17px;background:#d1b98d99;top:-9px;left:83px;transform:rotate(3deg)}.og-eyebrow{font-size:10px;font-weight:800;letter-spacing:2px;color:#858b70}
.og-notebook h2{font-size:18px;margin:5px 0 13px}.og-notebook p{font-size:13px;line-height:1.7;margin:6px 0 13px}.og-statrow{display:flex;gap:8px;margin:13px 0}.og-statrow span{flex:1;background:#e5efdc;border-radius:10px;padding:8px;text-align:center;font-size:11px}.og-statrow b{display:block;font-size:23px;line-height:1.1}
.og-note-action{background:#e7ecd9;border:1px solid #9bad8c;border-radius:10px;padding:10px;width:100%;min-height:44px}.og-notebook footer{font-size:10px;color:#7b8878;margin-top:12px}
.og-dock{position:absolute;bottom:19px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:21px;max-width:calc(100vw - 26px);white-space:nowrap}
.og-dock button{border:0;border-radius:12px;min-width:65px;min-height:54px;background:transparent;padding:4px 12px;font-size:11px!important;transition:background .15s,transform .15s}.og-dock button:hover{background:#e6efd8;transform:translateY(-2px)}.og-dock button[aria-pressed=true]{background:#d4e8d6;box-shadow:inset 0 0 0 1px #92b299}.og-dock i{font-style:normal;display:block;font-size:22px;line-height:26px}
.og-alarm{position:absolute;right:20px;bottom:170px;background:#ffdfa0;border:2px solid #8e713b;border-radius:15px;min-height:46px;padding:10px 16px;pointer-events:auto;box-shadow:var(--gs)}
.og-toast{position:absolute;left:50%;bottom:156px;transform:translateX(-50%);background:#283d34eb;color:#fffbe9;padding:10px 18px;border-radius:13px;max-width:min(440px,90vw);text-align:center;font-size:13px}
.og-sheet{position:absolute;left:50%;bottom:101px;transform:translateX(-50%);width:min(480px,calc(100vw - 26px));padding:17px;max-height:65vh;overflow:auto}.og-sheet header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.og-sheet header strong{font-size:17px}.og-sheet header button{border:0;background:#e5ebd9;border-radius:10px;min-width:44px;min-height:44px}
.og-persons{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.og-persons button{background:#fffef8;border:1px solid #bbc9af;border-radius:12px;padding:10px 5px;min-height:80px;white-space:normal}.og-persons i{display:block;font-size:27px;font-style:normal}.og-persons small{display:block;font-size:10px;color:#7a8970}
.og-calm .og-notebook{display:none}.og-calm .og-dock{opacity:.8}body.og-calm-mode .legend,body.og-calm-mode .o3-hint{display:none}body.og-calm-mode .o3-chips{opacity:.65}
body:has(#office-game) #sheet .in{border:2px solid var(--gl);background:var(--gp);border-radius:24px 24px 0 0}
@media(max-width:1100px){.og-notebook{width:214px;padding:14px}.og-notebook:before{left:65px}}
@media(max-width:1100px){
 body:has(#office-game) .top{top:10px;left:10px;padding:7px 10px;border-radius:14px;gap:7px}body:has(#office-game) .top h1{font-size:15px;letter-spacing:0}body:has(#office-game) .top .vw{display:none}
 .og-time{top:10px;right:10px;padding:5px 9px;gap:7px;border-radius:14px}.og-time strong{font-size:13px}.og-time small{display:none}.og-quiet{font-size:11px!important;min-height:35px;padding-left:8px}
 body:has(#office-game) .legend{top:66px;left:10px;right:10px;padding:6px 9px;gap:7px;font-size:10px;justify-content:center}.og-notebook{top:110px;right:10px;width:176px;padding:12px}.og-notebook:before{left:50px;width:60px}.og-notebook h2{font-size:15px;margin-bottom:6px}.og-notebook p{font-size:11px;margin-bottom:8px}.og-eyebrow{font-size:8px}.og-statrow{margin:7px 0;gap:5px}.og-statrow span{padding:5px;font-size:10px}.og-statrow b{font-size:18px}.og-notebook footer{font-size:9px}.og-note-action{font-size:11px!important}
 body:has(#office-game) .o3-hint{top:auto;bottom:158px;font-size:11px}.og-dock{bottom:max(10px,env(safe-area-inset-bottom));padding:5px;gap:1px;border-radius:17px;width:calc(100vw - 20px);justify-content:space-around}.og-dock button{min-width:0;min-height:52px;padding:3px 7px;font-size:10px!important;flex:1}.og-dock i{font-size:20px}
 body:has(#office-game) .o3-chips{bottom:81px;left:10px;right:10px;max-width:calc(100% - 20px);padding:5px}.og-alarm{right:10px;bottom:133px;font-size:12px!important}.og-toast{bottom:180px;min-width:250px}.og-sheet{bottom:82px}body:has(#office-game) #floor{padding:105px 10px 150px}.floor{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){#office-game *{transition:none!important}}
.og-fold{display:none}
dialog.og-sheet{margin:0;top:auto;color:var(--gi)}dialog.og-sheet:not([open]){display:none}dialog.og-sheet::backdrop{background:#233a344a;backdrop-filter:blur(3px)}
body.og-list-view .og-notebook{display:none}
body:has(#gate:not([hidden])) #office-game{visibility:hidden}
@media(max-width:1100px){
 .og-fold{display:flex;align-items:center;justify-content:space-between;width:100%;border:0;background:none;min-height:30px;padding:0;font-weight:700!important;font-size:12px!important}
 #office-game:not(.og-notes-open) #og-note-body{display:none}.og-notes-open .og-fold{margin-bottom:10px}
 .og-notebook{width:156px;top:110px;padding:9px 12px}.og-notebook:before{left:42px}
 body:has(#office-game) .o3-hint{bottom:190px}
}
/* Player controls belong to Ray; coworker routines are autonomous. */
.og-boss-controls{position:absolute;inset:0;pointer-events:none}
.og-boss-controls[hidden]{display:none}
.og-pad{position:absolute;left:22px;bottom:155px;display:grid;grid-template-columns:48px 48px 48px;grid-template-rows:48px 48px 48px;gap:3px;padding:9px;border-radius:50%;background:#fffbeeea;touch-action:none;user-select:none}
.og-pad button{border:0;border-radius:14px;background:#e4eadb;font-size:26px!important;touch-action:none;user-select:none;-webkit-user-select:none}
.og-pad button.pressed{background:#99bd9f;box-shadow:inset 0 2px 4px #304c3740}
.og-pad [data-dir=up]{grid-area:1/2}.og-pad [data-dir=left]{grid-area:2/1}.og-pad [data-dir=right]{grid-area:2/3}.og-pad [data-dir=down]{grid-area:3/2}
.og-pad span{grid-area:2/2;place-self:center;font-size:11px;color:#82907c}
.og-boss-actions{position:absolute;right:22px;bottom:155px;display:grid;grid-template-columns:1fr;gap:6px;padding:12px;min-width:150px}
.og-boss-actions small{font-size:11px;text-align:center;color:#657966}
.og-boss-actions button{background:#e8ecda;border:1px solid #a6b696;border-radius:10px;min-height:44px;padding:6px 13px}
.og-boss-actions button:disabled{opacity:.45;cursor:default}
body:has(.og-is-boss) .o3-chips{display:none}
.og-is-boss .og-alarm{bottom:370px}.og-is-boss .og-toast{bottom:90px}
body.og-list-view .og-boss-controls{display:none}
@media(max-width:1100px){
 .og-pad{left:12px;bottom:95px;grid-template-columns:44px 44px 44px;grid-template-rows:44px 44px 44px;padding:7px}
 .og-boss-actions{right:12px;bottom:95px;min-width:130px;padding:9px}
 .og-is-boss .og-alarm{bottom:286px}.og-is-boss .og-toast{bottom:276px}
 body:has(.og-is-boss) .o3-hint{display:none}
}
@media(max-height:600px){.og-notebook{display:none}.og-pad,.og-boss-actions{bottom:85px}.og-is-boss .og-alarm{top:90px;bottom:auto}}
.og-roster{pointer-events:auto;position:fixed;margin:auto;width:min(600px,calc(100vw - 24px));max-height:80dvh;overflow:auto;padding:18px;color:var(--gi)}
.og-roster::backdrop{background:#233a3480}.og-roster header{display:flex;align-items:center;justify-content:space-between;gap:12px}.og-roster header button{min-width:44px;min-height:44px;border:0;border-radius:10px;background:#e5ebd9}.og-roster-scope{font-size:12px;color:#526751}.og-roster article{background:#fffef8;border:1px solid #bbc9af;border-radius:12px;margin:8px 0;padding:12px;overflow-wrap:anywhere}.og-roster article p{margin:5px 0}.og-roster small{font-size:11px}.og-agent-state{display:block;color:#42624c;font-size:12px}.og-roster h3{font-size:15px;margin:16px 0 6px}

.og-quality{pointer-events:auto;position:absolute;left:20px;top:125px;padding:6px 10px;font-size:12px}.og-quality select{font:inherit;min-height:36px;border:0;background:transparent;color:inherit}.og-quality small{font-size:11px}@media(max-width:700px){.og-quality{left:10px;top:110px;padding:3px 6px;max-width:calc(100vw - 190px)}}
/* First-person controls leave the employee and the room in view. */
.og-look{position:absolute;right:22px;bottom:105px;width:132px;height:132px;display:grid;place-items:center;border-radius:50%;background:#fffbeedb;color:#627969;touch-action:none;user-select:none;-webkit-user-select:none;cursor:grab}
.og-look:active{background:#d9e9d2}.og-reticle{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:28px;color:#fff;text-shadow:0 1px 4px #2d493b;pointer-events:none}
.og-is-boss .og-notebook{display:none}.og-is-boss .og-pad{bottom:105px}.og-is-boss .og-boss-actions{left:50%;right:auto;bottom:95px;transform:translateX(-50%);grid-template-columns:repeat(3,1fr);width:min(370px,calc(100vw - 350px));min-width:230px;padding:8px;gap:5px}
.og-boss-actions small{grid-column:1/-1}.og-boss-actions button{padding:5px 8px;font-size:12px!important}
.og-is-boss .og-toast{bottom:225px;pointer-events:none}.og-is-boss .og-alarm{bottom:auto;top:104px;font-size:11px;padding:6px 10px;min-height:36px}
body:has(.og-is-boss) .legend{display:none}body:has(.og-is-boss) #scene canvas{touch-action:none}
body:has(.og-is-boss) .o3-bub{max-width:250px;font-size:12px;pointer-events:none}
.og-room-visits{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:14px 0}.og-room-visits button{min-height:48px;border:1px solid #acbea5;border-radius:12px;background:#e9efdf;color:#345c50;font:inherit}
@media(max-width:700px){
 .og-is-boss .og-pad{left:10px;bottom:88px;grid-template-columns:38px 38px 38px;grid-template-rows:38px 38px 38px;padding:6px;gap:2px}
 .og-look{right:12px;bottom:90px;width:126px;height:126px}
 .og-is-boss .og-boss-actions{bottom:228px;left:50%;width:calc(100vw - 30px);min-width:0;max-width:370px;padding:6px;border-radius:14px}
 .og-is-boss .og-toast{bottom:321px;min-width:0;width:calc(100vw - 44px);font-size:13px}
 .og-is-boss .og-alarm{top:100px;right:10px;max-width:180px}.og-is-boss .og-quality{top:67px;max-width:160px}
 .og-room-visits{grid-template-columns:repeat(2,1fr)}
}
@media(max-height:600px) and (min-width:701px){.og-is-boss .og-pad,.og-look{bottom:85px;width:auto}.og-look{width:120px;height:120px}.og-is-boss .og-boss-actions{bottom:87px}.og-is-boss .og-toast{bottom:185px}}
.og-presence{position:absolute;left:50%;bottom:104px;transform:translateX(-50%);padding:8px 16px;font-size:12px;white-space:nowrap;background:#fff6dbdc}.og-presence[hidden]{display:none}
body:has(.og-is-boss) .o3-hint{display:none}
@media(max-width:700px){.og-presence{bottom:87px}.og-calm .og-toast{bottom:150px}}
@media(max-width:700px){
 .og-is-boss .og-pad{bottom:165px}.og-look{bottom:165px}
 .og-is-boss .og-boss-actions{bottom:79px}
 .og-is-boss .og-toast{bottom:325px}
}

/* Give the game room the screen; the work notebook expands on request. */
.og-fold{display:flex;align-items:center;justify-content:space-between;width:100%;border:0;background:none;min-height:30px;padding:0;font-weight:700!important}
#office-game:not(.og-notes-open) #og-note-body{display:none}
.og-notes-open .og-fold{margin-bottom:10px}

/* Mobile room picker; desktop room strip is unchanged. */
.og-region-button,.og-progress-mini{display:none}
.og-regions-sheet{position:fixed;inset:0;margin:auto;width:min(560px,calc(100vw - 28px));max-height:calc(100dvh - 48px - env(safe-area-inset-top) - env(safe-area-inset-bottom));padding:14px;background:#fff9ed;color:#284d43;border:1px solid #91a88c;border-radius:18px;box-sizing:border-box;overflow:auto;z-index:120}
.og-regions-sheet::backdrop{background:#182d285c}.og-regions-sheet header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.og-regions-sheet header button{min-width:44px;min-height:44px;border:1px solid #9eb29b;border-radius:10px;background:#edf3e8;color:inherit}.og-region-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.og-region-grid button{white-space:normal;overflow-wrap:anywhere;min-height:48px;padding:8px;border:1px solid #bccbb2;border-radius:12px;background:#edf3e6;color:inherit;font:inherit}
@media(max-width:700px){
 body.og-mobile-layout .o3-chips{display:none!important}
 body.og-mobile-layout .legend{box-sizing:border-box;max-width:calc(100vw - 20px);padding:4px 6px;gap:4px;font-size:9px!important;justify-content:flex-start!important}
 .og-region-button{display:inline-flex;align-items:center;gap:4px;min-height:44px;padding:6px 16px;border:1.5px solid #8fa985;border-radius:14px;background:#fff9ed;color:#284d43;font:inherit;font-size:16px;font-weight:700;box-shadow:0 2px 6px #2d493b22}   /* 10/28 Ray「區域按鈕太小」：32→44px、字 12→16 */
 .og-progress-mini:not([hidden]){display:inline-block;max-width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:4px 6px;background:#e6efdd;border-radius:8px;font-size:11px}
 body.og-mobile-layout:not(:has(.og-is-boss)) .og-quality{top:140px}
 body.og-mobile-layout:not(:has(.og-is-boss)) .og-notebook{top:140px}
 body.og-mobile-layout.og-list-view .og-region-button,body.og-mobile-layout.og-list-view .og-progress-mini,body.coffee-watching .og-region-button,body.coffee-watching .og-progress-mini{display:none}
}
.og-regions-sheet{pointer-events:auto}@media(max-width:700px){body.og-mobile-layout:not(:has(.og-is-boss)) .og-notebook{width:min(176px,calc((100vw - 30px)/2))}body.og-mobile-layout:not(:has(.og-is-boss)) .og-quality{max-width:calc((100vw - 30px)/2)}}

.og-regions-sheet[hidden]{display:none!important}.og-regions-sheet:not([hidden]){display:block;box-shadow:0 0 0 100vmax #182d285c}
.og-regions-backdrop{position:fixed;inset:0;background:#182d285c;z-index:119;pointer-events:auto}.og-regions-backdrop[hidden]{display:none!important}.og-regions-sheet:not([hidden]){box-shadow:0 12px 40px #182d2845}
body.og-mobile-layout .og-regions-sheet .o3-chips{display:grid!important;position:static;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;max-width:none;max-height:none;overflow:visible;margin:0;padding:0;border:0;background:none;backdrop-filter:none;gap:8px}.og-regions-sheet .og-region-grid{display:block}.og-regions-sheet .o3-chips button{white-space:normal;min-height:48px;border-radius:12px;padding:8px}
/* 10/28 Ray「這裡也可以大一點」：區域選單按鈕撐滿寬度、加高、字放大 */
.og-regions-sheet .o3-chips{width:100%!important;max-width:none!important;border:0!important;padding:0!important;background:none!important;gap:10px!important;box-shadow:none!important}.og-regions-sheet .o3-chips button{min-height:64px!important;font-size:18px!important;font-weight:700!important;border-radius:14px!important;padding:10px 8px!important}.og-regions-sheet header strong{font-size:20px}
