/* 10-22 老闆新版首頁設計稿 design/ui-v4/home-city-mockup.png：
   城市大地圖當背景；左上頭像＋LV＋經驗／體力；上方資源列（每格右側＋）；右上四顆圓鈕＋紅色驚嘆；
   地圖左右直排圓鈕；底部白色圓角長條八分頁、選中金色光暈。淺底深字、不捲動、不用深墨綠。 */
body.home-v4{--v4-card:#fffffff2;--v4-ink:#1d2433;--v4-sub:#5b6474;--v4-line:#d9dee8;--v4-gold:#f2b51d;--v4-gold-soft:#fff3c4;--v4-red:#e5383b;--v4-blue:#2f8cf0}

/* ── 頂列 ── */
body.home-v4 .app-shell>.topbar{display:flex;align-items:center;gap:8px;height:auto;min-height:0;padding:6px 10px;background:transparent;border:0;box-shadow:none;pointer-events:none}
body.home-v4 .app-shell>.topbar>*{pointer-events:auto}
body.home-v4 .topbar>.brand{display:none}
body.home-v4:not(#v4a):not(#v4b) .game-hud{position:relative;flex:0 0 auto!important;display:flex!important;align-items:center;gap:6px;width:auto!important;min-width:0!important;max-width:none!important;height:auto;margin:0;padding:3px 10px 3px 3px;border:1px solid var(--v4-line);border-radius:30px;background:var(--v4-card);box-shadow:0 3px 10px #0003;color:var(--v4-ink)}
body.home-v4 .game-hud .hud-avatar{width:46px;height:46px;flex:0 0 46px;border:3px solid var(--v4-gold);border-radius:50%;box-shadow:0 0 0 2px #fff}
body.home-v4 .game-hud .hud-main{display:grid;gap:3px;width:150px;min-width:0}
body.home-v4 .game-hud .hud-name{display:flex;align-items:center;gap:5px;margin:0;font-size:12px;line-height:1.1;color:var(--v4-ink)}
body.home-v4 .game-hud .hud-level{position:absolute;left:0;bottom:-2px;min-width:30px;padding:1px 5px;border:2px solid #fff;border-radius:10px;background:#283246;color:#fff;font-size:11px;text-align:center}
body.home-v4 .game-hud .hud-nick{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-weight:800}
body.home-v4 .game-hud .hud-xp,body.home-v4 .game-hud .hud-energy{position:relative;display:block;height:13px}
body.home-v4 .game-hud .hud-xp i,body.home-v4 .game-hud .hud-energy i{display:block;height:13px;border-radius:7px;background:#e5e9f0;overflow:hidden;box-shadow:inset 0 1px 2px #0002}
body.home-v4 .game-hud .hud-xp em{display:block;height:100%;background:linear-gradient(90deg,#ffcf3f,#f29b12)}
body.home-v4 .game-hud .hud-energy em{display:block;height:100%;background:linear-gradient(90deg,#5fc4ff,#2f8cf0)}
body.home-v4 .game-hud .hud-xp small,body.home-v4 .game-hud .hud-energy small{position:absolute;inset:0;display:grid;place-items:center;color:#1d2433;font:800 9.5px/13px sans-serif;text-shadow:0 0 2px #fff,0 0 2px #fff}
body.home-v4 .game-hud .hud-wallet{display:contents}
body.home-v4 .game-hud .hud-cash,body.home-v4 .game-hud .hud-s{display:none}
body.home-v4 .game-hud .hud-debt{position:absolute;left:54px;top:100%;margin-top:2px;padding:1px 6px;border-radius:8px;background:#fff;color:#b42318;font-size:10px;white-space:nowrap;box-shadow:0 1px 4px #0002}
body.home-v4 .game-hud .hud-debt[hidden]{display:none}

/* 資源列 */
.v4-res{flex:1 1 auto;display:flex;justify-content:center;gap:6px;min-width:0}
.v4-res-cell{position:relative;display:flex;align-items:center;gap:4px;min-width:88px;flex:0 1 128px;height:34px;padding:0 4px 0 3px;border:1px solid var(--v4-line);border-radius:18px;background:var(--v4-card);color:var(--v4-ink);box-shadow:0 2px 8px #0002;cursor:pointer}
.v4-res-ico{flex:0 0 26px;font-size:20px;line-height:26px;text-align:center}
.v4-res-cell b{flex:1 1 auto;min-width:0;overflow:hidden;font:800 14px/1 sans-serif;text-align:left;white-space:nowrap;text-overflow:ellipsis}
.v4-plus{flex:0 0 22px;height:22px;border-radius:50%;background:linear-gradient(180deg,#ffd75a,#f2a51d);color:#4a2a00;font:900 15px/22px sans-serif;font-style:normal;text-align:center}
.v4-res-cell:hover,.v4-res-cell:focus-visible{border-color:var(--v4-gold);outline:0;box-shadow:0 0 0 2px var(--v4-gold-soft),0 2px 8px #0002}

/* 右上四鈕（遊戲時鐘保留在左邊） */
body.home-v4 .top-actions{flex:0 0 auto;display:flex;align-items:center;gap:6px;margin-left:auto}
body.home-v4 .top-actions .game-clock{min-height:30px;padding:2px 8px;border:1px solid var(--v4-line);border-radius:15px;background:var(--v4-card);color:var(--v4-ink);font-size:12px;font-weight:800;box-shadow:0 2px 8px #0002}
body.home-v4 .top-actions>#mail-toggle{position:absolute!important;width:1px!important;min-width:0!important;height:1px!important;min-height:0!important;padding:0!important;overflow:hidden;clip-path:inset(50%);border:0!important}
.v4-top{display:flex;gap:6px}
.v4-round{position:relative;display:grid;place-items:center;width:42px;height:42px;padding:0;border:2px solid #fff;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff,#eef2f8);color:var(--v4-ink);font-size:22px;line-height:1;box-shadow:0 3px 8px #0003;cursor:pointer}
.v4-round img{width:34px;height:34px;object-fit:contain}
.v4-round:hover,.v4-round:focus-visible{outline:0;border-color:var(--v4-gold);box-shadow:0 0 0 3px var(--v4-gold-soft),0 0 12px #f2b51daa}
.v4-alert{position:absolute;top:-4px;right:-4px;width:17px;height:17px;border:2px solid #fff;border-radius:50%;background:var(--v4-red);color:#fff;font:900 11px/13px sans-serif;font-style:normal;text-align:center}
.v4-alert[hidden]{display:none}

/* 每日轉盤／簽到／每日・每週禮包：收進「禮物」鈕，點了才在右上展開 */
body.home-v4 .topbar>.daily-reward-entries{position:absolute;z-index:60;top:58px;right:120px;display:none;padding:6px;border:1px solid var(--v4-line);border-radius:16px;background:var(--v4-card);box-shadow:0 8px 22px #0004}
body.home-v4.v4-gift-open .topbar>.daily-reward-entries{display:flex}

/* ── 地圖左右直排 ── */
.v4-rail{position:absolute;z-index:24;top:76px;display:flex;flex-direction:column;gap:7px}
.v4-rail-left{left:10px}
.v4-rail-right{right:10px;align-items:flex-end}/* 10-31 老闆：任務追蹤卡較寬，圓鈕靠右對齊不被推歪 */
/* 10-22 狀態欄讓出右直排（提高權重蓋過舊版 right 規則） */
body.home-v4:not(#v4a):not(#v4b) .panel-home .mission-rail.status-rail{right:62px!important}

/* ── 底部白色圓角長條八分頁 ── */
body.home-v4 .panel-home .quick-bar{left:50%!important;right:auto!important;bottom:6px;width:min(1120px,calc(100% - 20px));min-height:0;padding:4px 8px!important;transform:translateX(-50%);border:1px solid var(--v4-line)!important;border-radius:26px!important;background:var(--v4-card)!important;box-shadow:0 6px 20px #0004!important;backdrop-filter:none}
body.home-v4 .panel-home .quick-bar .qb-track{display:grid;grid-template-columns:repeat(var(--qb-n,8),minmax(0,1fr));gap:2px;padding:0;overflow:hidden}
body.home-v4 .panel-home .quick-bar .qb-more-cue{display:none}
body.home-v4 .panel-home .quick-bar .qb-track .qb-page{position:relative}
body.home-v4 .panel-home .quick-bar .qb-page-icon{font:900 26px/1 sans-serif;color:var(--v4-gold)}

/* 10-25 老闆「兩排的icon比例要在放大」：圖 44→56、按鈕 66→80（矮螢幕另縮） */
body.home-v4 .panel-home .quick-bar .qb-track button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;width:auto;min-width:0;height:80px;min-height:0;padding:2px 0;border:0;border-radius:18px;background:transparent;box-shadow:none;transform:none;color:var(--v4-ink)}
body.home-v4 .panel-home .quick-bar .qb-art,body.home-v4 .panel-home .quick-bar .qb-art img{width:56px;height:56px}
body.home-v4 .panel-home .quick-bar .qb-art img{filter:drop-shadow(0 2px 2px #0003)}
body.home-v4 .panel-home .quick-bar .qb-emoji{font-size:42px;line-height:56px;text-align:center}
body.home-v4 .panel-home .quick-bar .qb-track button b{position:static!important;width:auto!important;height:auto!important;overflow:visible!important;clip:auto!important;clip-path:none!important;color:var(--v4-ink)!important;font:800 13px/1.1 sans-serif!important;text-shadow:none!important;white-space:nowrap;background:none!important;padding:0!important}
body.home-v4:not(#v4a):not(#v4b) .panel-home .quick-bar .qb-track button[aria-pressed=true]{background:radial-gradient(ellipse at 50% 60%,#fff3c4 0%,#ffe08a 55%,#fff6d6 80%)!important;box-shadow:inset 0 0 0 2px var(--v4-gold),0 0 14px #f2b51d99!important}
body.home-v4:not(#v4a):not(#v4b) .panel-home .quick-bar .qb-track button[aria-pressed=true] b{color:#7a4b00!important}
body.home-v4 .panel-home .quick-bar .qb-badge{top:2px;right:calc(50% - 30px)}
body.home-v4 .panel-home .quick-bar .qb-dot{top:4px;right:calc(50% - 26px);border-color:#fff}

/* ── 844×390 等矮螢幕：全部縮一號，地圖仍露出最多 ── */
@media (max-height:520px){
  body.home-v4 .app-shell>.topbar{padding:4px 8px;gap:6px}
  body.home-v4 .game-hud .hud-avatar{width:38px;height:38px;flex-basis:38px}
  body.home-v4 .game-hud .hud-main{width:112px}
  /* 11-06 老闆「沒有等級顯示」：等級徽章在 hud-name 裡面，只藏暱稱，不可整個隱藏 */
  body.home-v4 .game-hud .hud-name{display:contents}
  body.home-v4 .game-hud .hud-nick{display:none}
  body.home-v4 .game-hud .hud-level{position:absolute}
  .v4-res{gap:3px}
  .v4-res-cell{flex-basis:78px;min-width:60px;height:30px}
  .v4-res-ico{flex-basis:18px;font-size:14px}
  .v4-res-cell{padding:0 4px 0 2px;justify-content:center}
  .v4-res-cell b{flex:0 0 auto;font-size:12px;overflow:visible;text-overflow:clip}
  /* 10-22 844 寬：拿掉＋號讓數字完整顯示（整格仍可點） */
  .v4-plus{display:none}
  body.home-v4 .top-actions .game-clock{font-size:11px;padding:1px 6px;min-height:26px}
  .v4-top{gap:4px}
  .v4-round{width:34px;height:34px;font-size:17px}
  .v4-round img{width:28px;height:28px}
  .v4-rail{top:54px;gap:4px}
  body.home-v4 .topbar>.daily-reward-entries{top:46px}
  /* 10-22 狀態欄讓出右直排（提高權重蓋過舊版 right 規則） */
  body.home-v4:not(#v4a):not(#v4b) .panel-home .mission-rail.status-rail{right:50px!important}
  body.home-v4 .panel-home .quick-bar{bottom:4px}
  body.home-v4 .panel-home .quick-bar .qb-track button{height:62px}
  body.home-v4 .panel-home .quick-bar .qb-art,body.home-v4 .panel-home .quick-bar .qb-art img{width:42px;height:42px}
  body.home-v4 .panel-home .quick-bar .qb-emoji{font-size:32px;line-height:42px}
  body.home-v4 .panel-home .quick-bar .qb-track button b{font-size:12px!important}
}

/* 10-22 乾淨無介面城市背景（assets/img/home-city-bg-v4.webp，16:9） */
body.home-v4 .panel-home .character-home-hero,
body.home-v4[data-ui-version="3"] .panel-home .character-home-hero{background-image:url('../img/home-city-bg-v4.webp')!important;background-position:center!important;background-size:cover!important;background-repeat:no-repeat!important}

/* 10-22 城市大地圖第一階段：世界地圖層（隨拖曳縮放移動），HUD 固定；舊背景、舊標籤與車流層在 V4 隱藏 */
body.home-v4[data-ui-version="3"] .panel-home .character-home-hero{background-image:none!important;background-color:#cfe8f5!important}
body.home-v4 .panel-home .character-home-hero>.city-map-ui,body.home-v4 .panel-home .character-home-hero>.home-traffic-plane{display:none!important}
.v4-world{position:absolute;inset:0;z-index:0;overflow:hidden;touch-action:none;user-select:none;-webkit-user-select:none;cursor:grab}
.v4-world.is-dragging{cursor:grabbing}
.v4-world-plane{position:absolute;left:0;top:0;transform-origin:0 0;will-change:transform}
.v4-world-plane>img{position:absolute;inset:0;width:100%;height:100%;display:block;pointer-events:none;-webkit-user-drag:none}
body.home-v4:not(#v4a):not(#v4b) .v4-region{position:absolute;display:flex;align-items:center;justify-content:center;padding:0;border:2px solid transparent!important;border-radius:28px!important;background:transparent!important;box-shadow:none!important;min-height:0!important;cursor:pointer;transition:border-color .15s,box-shadow .15s,background .15s}
body.home-v4:not(#v4a):not(#v4b) .v4-region:hover,body.home-v4:not(#v4a):not(#v4b) .v4-region:focus-visible,body.home-v4:not(#v4a):not(#v4b) .v4-region.is-selected{outline:0;border-color:#f5d27a!important;background:#fff3c826!important;box-shadow:0 0 0 3px #ffe7a066,0 0 22px #ffd76a99!important}
body.home-v4:not(#v4a):not(#v4b) .v4-region-tag{display:inline-flex;align-items:center;gap:5px;padding:4px 12px 4px 6px;border:1px solid #ffffffd9;border-radius:999px;background:#fffffff0;color:#1f2a37;box-shadow:0 3px 10px #0003;white-space:nowrap;pointer-events:none}
body.home-v4:not(#v4a):not(#v4b) .v4-region-tag i{font-style:normal;font-size:18px;line-height:1}
body.home-v4:not(#v4a):not(#v4b) .v4-region-tag b{font:800 14px/1.2 sans-serif}
body.home-v4:not(#v4a):not(#v4b) .v4-region.is-selected .v4-region-tag{border-color:#f0c24f;box-shadow:0 0 0 2px #ffe08a,0 3px 10px #0003}
@media (max-height:520px){body.home-v4:not(#v4a):not(#v4b) .v4-region-tag{padding:3px 9px 3px 5px}body.home-v4:not(#v4a):not(#v4b) .v4-region-tag i{font-size:15px}body.home-v4:not(#v4a):not(#v4b) .v4-region-tag b{font-size:12px}}
/* 10-22 老闆：地圖不要再有白底標示——舊目的地標籤、老闆座車、九區名牌一律無底描邊字 */
html body:not(#nw1):not(#nw2) .city-destination,html body:not(#nw1):not(#nw2) .city-destination i,html body:not(#nw1):not(#nw2) .city-destination[aria-pressed=true]{background:none!important;border-color:transparent!important;box-shadow:none!important;filter:none!important}
html body:not(#nw1):not(#nw2) .city-destination b,html body:not(#nw1):not(#nw2) .city-destination i,html body:not(#nw1):not(#nw2) .boss-car-badge,html body:not(#nw1):not(#nw2) .v4-region-tag{color:#fff!important;text-shadow:0 0 2px #1b2633,0 0 3px #1b2633,0 1px 3px #000c!important}
html body:not(#nw1):not(#nw2) .city-destination[aria-pressed=true] b{color:#ffe08a!important}
html body:not(#nw1):not(#nw2) .boss-car-badge{background:none!important;border-color:transparent!important;box-shadow:none!important}
html body:not(#nw1):not(#nw2) .boss-car-badge img{background:none!important;filter:drop-shadow(0 1px 2px #000a)}
html body:not(#nw1):not(#nw2) .v4-region-tag{background:none!important;border-color:transparent!important;box-shadow:none!important;padding:0!important}
html body:not(#nw1):not(#nw2) .v4-region-tag b{font-size:12px!important;color:#fff!important}
html body:not(#nw1):not(#nw2) .v4-region-tag i{font-size:14px!important;filter:drop-shadow(0 1px 2px #000a)}
html body:not(#nw1):not(#nw2) .v4-region.is-selected .v4-region-tag b{color:#ffe08a!important}
/* 10-22 老闆樣板圖：右側只留四顆白圓鈕（指南針／日夜／相機／地形），舊右側狀態欄整個拿掉 */
body.home-v4:not(#v4a):not(#v4b) .panel-home .mission-rail.status-rail{display:none!important}
/* 10-23 老闆：無底圖示會被大地圖底色吃掉看不見 → 改回白色圓底＋白框 */
body.home-v4:not(#v4a):not(#v4b) .v4-rail-left .v4-round span{font-size:24px}
/* 九區名牌平常不顯示，點到的那一區才短暫顯示描邊字 */
body.home-v4:not(#v4a):not(#v4b) .v4-region-tag{opacity:0;transition:opacity .2s}
body.home-v4:not(#v4a):not(#v4b) .v4-region.is-selected .v4-region-tag,body.home-v4:not(#v4a):not(#v4b) .v4-region:hover .v4-region-tag{opacity:1}
/* 日夜切換、拍照模式 */
/* 10-22 夜晚：只把地圖淡藍暗化（不轉色相、HUD 不受影響） */
/* 10-22 地圖第2批：老闆定案正常探索時城市底圖不准壓暗（原夜間 brightness .62＋藍色 multiply 遮罩已移除）；夜間只留極淡冷色，不降亮度 */
body.home-v4.v4-night .v4-world-plane>img{filter:saturate(.95) hue-rotate(-4deg)}
body.home-v4.v4-photo .app-shell>.topbar,body.home-v4.v4-photo .panel-home .quick-bar,body.home-v4.v4-photo .v4-rail-left{visibility:hidden}
@media (max-height:520px){body.home-v4:not(#v4a):not(#v4b) .v4-rail-left .v4-round span{font-size:24px}}
/* 10-22 地圖上的車子、建築、標示圖都不能被單獨拖走 */
.character-home-hero img,.home-traffic-plane,.home-traffic-plane *,.boss-car-badge,.v4-world-plane{-webkit-user-drag:none;user-select:none;-webkit-user-select:none}
@media (max-height:520px){body.home-v4:not(#v4a):not(#v4b) .v4-rail-left{top:66px}}
/* 10-22 幣種圓章：G 高登幣金色、T 黑金幣黑底金字（正式幣種圖示未生，先用字母圓章） */
.v4-coin{display:grid;place-items:center;width:22px;height:22px;flex:0 0 22px!important;border-radius:50%;font:900 13px/1 sans-serif!important;box-shadow:inset 0 -2px 0 #0003}
.v4-coin-cash{background:linear-gradient(180deg,#ffe27a,#f2a51d);color:#5a3500;border:1px solid #c98a10}
.v4-coin-t{background:linear-gradient(180deg,#3a3a3a,#111);color:#f5c84a;border:1px solid #c9a23a}

/* 10-22 右側地形鈕：顯示九區名稱 */
body.home-v4.v4-terrain:not(#v4a):not(#v4b) .v4-region-tag{opacity:1}
/* 10-22 T 幣格只顯示數量不接面板：disabled 不要灰掉（全域 button:disabled 會壓成 0.45 看不清） */
body.home-v4 .v4-res-cell:disabled{opacity:1!important;cursor:default!important;filter:none!important}
/* 10-22 v4 圖示總圖：HUD 圖示改圖片＋T 幣說明卡 */
.v4-res-ico img{width:26px;height:26px;object-fit:contain;display:block;filter:drop-shadow(0 1px 1px #0003)}
.v4-round img{filter:drop-shadow(0 1px 2px #0003)}
body.home-v4:not(#v4a):not(#v4b) .v4-region-tag i img{width:26px;height:26px;object-fit:contain;display:block}
.v4-tip{position:absolute;left:50%;top:calc(100% + 6px);z-index:60;transform:translateX(-50%);width:220px;padding:8px 10px;border:1px solid #e7c25a;border-radius:10px;background:#fffdf4;color:#1f2a37;font:700 13px/1.45 sans-serif;text-align:left;white-space:normal;box-shadow:0 4px 14px #0003}
@media (max-height:500px){.v4-res-ico img{width:18px;height:18px}body.home-v4:not(#v4a):not(#v4b) .v4-region-tag i img{width:20px;height:20px}.v4-tip{width:190px;font-size:12px}}
/* 10-22 地圖四層第1批：層級選單、即將開放卡；淺底深字、選中金色、不捲動 */
/* 10-23 老闆：麵包屑不單獨放首頁左上，改放進地圖層級選單（標題下方一條） */
.v4-map-crumbs{display:flex;align-items:center;gap:4px;margin:0 0 8px;padding:5px 10px;border-radius:999px;background:#f3f6fb;color:#2a2f3a;font-size:13px;overflow:hidden;white-space:nowrap}
.v4-map-crumbs button{border:0;background:none;color:#2563c9;font:inherit;font-weight:700;padding:2px 4px;cursor:pointer}
.v4-map-crumbs button:disabled{color:#9aa0aa;cursor:default}
.v4-map-crumbs b{color:#7a4f00;background:#ffd76a;border-radius:999px;padding:2px 8px}
.v4-map-crumbs i{font-style:normal;color:#8a8f99}
.v4-map-layer-menu{position:absolute;z-index:30;left:84px;top:50%;transform:translateY(-50%);width:min(340px,calc(100% - 100px));padding:10px 12px 12px;border-radius:16px;background:#fffdf6;color:#2a2f3a;box-shadow:0 8px 24px #0004;overflow:hidden}
.v4-map-layer-menu[hidden],.v4-map-soon[hidden]{display:none}
.v4-map-layer-menu header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:16px}
.v4-map-menu-x{border:0;background:#eef1f6;color:#2a2f3a;width:30px;height:30px;border-radius:50%;font-size:18px;cursor:pointer}
.v4-map-layer-list{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.v4-map-layer{display:grid;justify-items:center;gap:2px;padding:8px 6px;border:2px solid #dfe5ee;border-radius:12px;background:#fff;color:#2a2f3a;cursor:pointer;font:inherit}
.v4-map-layer img{width:52px;height:52px;object-fit:contain}
.v4-map-layer b{font-size:15px}
.v4-map-layer small{font-size:12px;color:#5b6472}
.v4-map-layer.is-current{border-color:#e0a400;background:#fff3c4;box-shadow:0 0 0 2px #ffd76a inset}
.v4-map-layer.is-current small{color:#7a4f00;font-weight:700}
.v4-map-layer.is-locked{cursor:not-allowed;background:#f1f2f4}
.v4-map-layer.is-locked img{filter:grayscale(1);opacity:.55}
.v4-map-layer.is-locked b,.v4-map-layer.is-locked small{color:#8a8f99}
.v4-map-legacy{display:block;width:100%;margin-top:10px;padding:8px;border:0;border-radius:10px;background:#3b82f6;color:#fff;font:inherit;font-weight:700;cursor:pointer}
.v4-map-soon{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:8px;padding:24px;text-align:center;background:linear-gradient(180deg,#e9f4ff,#fdf8ea);color:#2a2f3a;cursor:default;overflow:hidden}
.v4-map-soon img{width:120px;height:120px;object-fit:contain}
.v4-map-soon h3{margin:0;font-size:22px;color:#7a4f00}
.v4-map-soon p{margin:0;font-size:15px;color:#3d4452}
.v4-map-soon.has-pic{display:block;padding:0;background:#cfe6f7}
.v4-layer-pic{position:absolute;left:0;top:0}
.v4-layer-pic>img{position:absolute;inset:0;width:100%;height:100%;display:block;pointer-events:none;-webkit-user-drag:none}
.v4-layer-spot{position:absolute;transform:translate(-50%,-50%);display:grid;justify-items:center;gap:1px;padding:3px 10px;border:2px solid #fff;border-radius:999px;background:#fffdf6;color:#2a2f3a;font:inherit;font-size:14px;box-shadow:0 2px 6px #0003;cursor:pointer;white-space:nowrap}
.v4-layer-spot:hover{border-color:#e0a400;background:#fff3c4}
.v4-layer-spot.is-selected{border-color:#df9e11;background:#fff0b7;box-shadow:0 0 0 3px #e9b63066,0 3px 10px #0004}
.v4-layer-spot.is-locked{background:#eef0f3;color:#8a8f99;cursor:default}
.v4-layer-spot small{font-size:11px}
.v4-layer-card{position:absolute;left:96px;bottom:84px;width:min(390px,calc(100% - 120px));max-height:min(58vh,520px);padding:10px 14px;border-radius:14px;background:#fffdf6f2;color:#2a2f3a;box-shadow:0 4px 12px #0003;text-align:left;display:flex;flex-direction:column}
.v4-layer-card b{font-size:17px;color:#7a4f00}
.v4-layer-card p{margin:4px 0 6px;font-size:13px;color:#3d4452}
.v4-district-merchants{display:grid;gap:7px;min-height:0;overflow:auto;font-size:12px}
.v4-district-merchants .v4-merchant-card{display:grid;grid-template-columns:1fr auto;gap:2px 9px;padding:8px 10px;border:1px solid #c7a665;border-radius:9px;background:#fff9e9;color:#3e321d;text-align:left;font:inherit;cursor:pointer}
.v4-merchant-card b{font-size:13px!important;color:#3e321d!important}
.v4-merchant-card small{grid-column:1;color:#6d6253;line-height:1.35}
.v4-merchant-card span{grid-column:2;grid-row:1/3;align-self:center;color:#946002;font-weight:700}
.v4-district-merchants .v4-merchant-card:hover{background:#ffe2a0}
.v4-merchant-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;align-items:stretch}
.v4-merchant-row .v4-merchant-card{min-width:0}
.v4-district-merchants .v4-merchant-walk,.v4-region-details .v4-merchant-walk{padding:4px 9px;border:1px solid #c7a665;border-radius:9px;background:#f8d66b;color:#3e321d;font:inherit;font-size:12px;font-weight:700;line-height:1.25;cursor:pointer}
body[data-ui-version="3"] :is(#app,dialog,.mail-dlg) .v4-merchant-row button.v4-merchant-walk{background-color:#f8d66b!important;color:#3e321d!important;border-color:#c7a665!important}
body[data-ui-version="3"] :is(#app,dialog,.mail-dlg) .v4-merchant-row button.v4-merchant-walk:hover{background-color:#ffe2a0!important}
.v4-district-merchants span{color:#5d6470}
.v4-merchant-map-nav{display:flex;gap:6px;margin-top:7px}
.v4-merchant-map-nav button{flex:1;padding:7px 9px;border:1px solid #c7a665;border-radius:8px;background:#fff9e9;color:#563c11;font:inherit;font-weight:700;cursor:pointer}
.v4-merchant-map-nav button:hover{background:#ffe2a0}
/* 區域圖直達商家時，保留內部店家功能但不露出舊四區生活商圈。 */
body.home-v4 .life-map-screen.region-shop-route > :not(#merchant-scene){display:none!important}
.v4-map-soon-back{margin-top:6px;padding:8px 18px;border:0;border-radius:999px;background:#ffc93c;color:#4a3200;font:inherit;font-weight:800;cursor:pointer}
.xiaowulai-venue{width:min(820px,calc(100vw - 28px));max-height:min(90vh,900px);padding:0;border:1px solid #a78a58;border-radius:20px;background:#f8f3e9;color:#203229;box-shadow:0 22px 80px #0008;overflow:auto}
.xiaowulai-venue::backdrop{background:#0e201cbb}
.xiaowulai-venue>img{display:block;width:100%;max-height:440px;object-fit:cover}
.xiaowulai-close{position:absolute;right:14px;top:14px;width:40px;height:40px;border:0;border-radius:50%;background:#fffdf0e9;color:#243a2c;font-size:26px;cursor:pointer}
.xiaowulai-body{padding:20px 24px 24px}.xiaowulai-body small{color:#8a6b37;letter-spacing:.12em}.xiaowulai-body h2{margin:4px 0;font-size:28px}.xiaowulai-body p{margin:8px 0 16px;line-height:1.55}
.xiaowulai-services{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.xiaowulai-services button{padding:12px 6px;border:1px solid #b69b69;border-radius:10px;background:#eaf0e5;color:#264233;font:inherit;font-weight:700;cursor:pointer}.xiaowulai-services button:hover,.xiaowulai-services button:focus-visible{background:#d8e9d3;border-color:#5d875d}.xiaowulai-body .xiaowulai-detail{margin-bottom:0;padding:12px;border-radius:10px;background:#fff;border:1px solid #e2d8bd}
@media(max-width:600px){.xiaowulai-venue>img{max-height:300px}.xiaowulai-body{padding:16px}.xiaowulai-services{grid-template-columns:repeat(2,minmax(0,1fr))}}
body.home-v4.v4-photo .v4-map-crumbs,body.home-v4.v4-photo .v4-map-layer-menu{display:none}
body.home-v4 .v4-map-layer-menu .v4-map-legacy{background:#3b82f6!important;color:#fff!important;border:0!important}
body.home-v4 .v4-map-layer-menu .v4-map-layer{background:#fff!important;border:2px solid #dfe5ee!important}
body.home-v4 .v4-map-layer-menu .v4-map-layer.is-current{background:#fff3c4!important;border-color:#e0a400!important}
body.home-v4 .v4-map-layer-menu .v4-map-layer.is-locked{background:#f1f2f4!important}
body.home-v4 .v4-map-soon .v4-map-soon-back{background:#ffc93c!important;color:#4a3200!important;border:0!important}
@media (max-height:520px){
  .v4-map-layer-menu{top:64px;transform:none;width:min(460px,calc(100% - 100px));padding:8px 10px}
  .v4-map-layer-menu header{margin-bottom:6px;font-size:14px}
  .v4-map-menu-x{width:26px;height:26px;font-size:16px}
  .v4-map-layer-list{grid-template-columns:repeat(4,1fr);gap:6px}
  .v4-map-layer{padding:5px 4px}
  .v4-map-layer img{width:36px;height:36px}
  .v4-map-layer b{font-size:13px}
  .v4-map-layer small{font-size:11px}
  .v4-map-legacy{margin-top:6px;padding:6px}
  .v4-map-soon img{width:72px;height:72px}
  .v4-map-soon h3{font-size:18px}
}
/* 10-24 公會盾徽 SVG 放進下排 */
body.home-v4 .panel-home .quick-bar .qb-svg{display:grid;place-items:center}body.home-v4 .panel-home .quick-bar .qb-svg svg{width:40px;height:40px}
@media (max-height:520px){body.home-v4 .panel-home .quick-bar .qb-svg svg{width:30px;height:30px}}
/* 10-24 街道全螢幕（商業街等）本來就會藏頂列，但上面 .game-hud 的 display:flex!important 權重更高把它蓋掉 → 「← 回大地圖」被頭像擋住按不到；條件照 interface-layers／ui-v3 的全螢幕條件 */
@media (orientation:landscape) and (min-width:900px),(min-width:900px) and (max-height:700px),(orientation:landscape) and (max-height:520px) and (max-width:899px){
body.home-v4:not(#v4a):not(#v4b):not(#v4c):has(.life-map-screen.street-full:not([hidden])) :is(.game-hud,.v4-res,.v4-top,.brand,.top-actions){display:none!important}
}
/* 10-24 街道全螢幕時提示（例如「本街商家 LV10 開放」）原本浮在畫面中下方蓋住商家卡片 → 貼到最底下的空白處 */
body.home-v4:has(.life-map-screen.street-full:not([hidden]))>.toast[role="status"]{bottom:calc(10px + env(safe-area-inset-bottom,0px))!important}

/* 10-24 老闆「採集區有兩個路口 礦區/材料區」：下排採集區選單（id 選擇器壓過 v654 的 dialog button 配色） */
dialog#qb-gather.qb-gather{padding:18px 20px 20px;border:2px solid #c99a2e;border-radius:18px;background:#fff8e6;color:#3a2a12;width:min(460px,calc(100% - 32px))}
dialog#qb-gather.qb-gather::backdrop{background:#0008}
dialog#qb-gather.qb-gather h2{margin:0 0 12px;font-size:18px;text-align:center;color:#3a2a12}
dialog#qb-gather.qb-gather .qb-gather-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
/* 10-26 三路口版：橫放三顆，窄螢幕自動換行 */
dialog#qb-gather.qb-gather .qb-gather-row.qb-gather-three{grid-template-columns:repeat(auto-fit,minmax(118px,1fr))}
dialog#qb-gather.qb-gather .qb-gather-row button{display:grid;justify-items:center;gap:4px;padding:14px 8px;border:2px solid #c99a2e!important;border-radius:14px;background:#fff!important;color:#3a2a12!important;font-weight:800;cursor:pointer}
dialog#qb-gather.qb-gather .qb-gather-row button b{font-size:34px;line-height:1}
dialog#qb-gather.qb-gather .qb-gather-row .qb-gather-icon{display:block;width:72px;height:72px;max-width:100%;object-fit:contain}
dialog#qb-gather.qb-gather .qb-gather-row button small{font-size:12px;font-weight:700;color:#7a6440!important}
dialog#qb-gather.qb-gather .qb-gather-row button.is-locked{cursor:not-allowed;opacity:.7;background:#ece7dc!important}
dialog#qb-gather.qb-gather .qb-gather-x{position:absolute;top:8px;right:10px;border:0!important;background:none!important;color:#3a2a12!important;font-size:18px;cursor:pointer}

/* Keep the two original reward/task icons directly under the player HUD. */
body.home-v4:not(#v4a):not(#v4b) .game-hud{overflow:visible!important}
body.home-v4 .game-hud .v4-player-shortcuts{position:absolute;left:0;top:calc(100% + 6px);display:flex;gap:5px;padding:4px;border:1px solid var(--v4-line);border-radius:12px;background:var(--v4-card);pointer-events:auto;z-index:65}
/* 10-30 老闆：員工待辦移到右側、只顯示標題鈕（點了前往） */body.home-v4 .v4-staff-reminders{position:absolute;top:calc(100% + 8px);right:0;left:auto;width:auto;max-height:none;overflow:visible;padding:0;border:0;background:none;box-shadow:none;z-index:66}
body.home-v4 .v4-staff-reminders[hidden]{display:none}
body.home-v4 .v4-staff-reminders>strong{display:block;padding:2px 5px 6px;font:800 12px/1.3 sans-serif}
body.home-v4 .v4-staff-reminders .v4-staff-reminder{display:block;width:auto;min-height:0;margin:0;padding:8px 12px;border:1px solid #bf9440;border-radius:10px;background:#fffaf0;color:#453012;text-align:left;white-space:nowrap;font:800 12px/1.3 sans-serif;box-shadow:0 3px 10px #0003}
body.home-v4 .v4-staff-reminders .v4-staff-reminder.is-urgent{border-color:#c74b35;background:#fff0e9;color:#8a251b}
body.home-v4 .v4-player-shortcuts button{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;width:74px;min-height:58px;padding:3px;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--v4-ink);font:700 11px/1.2 sans-serif;cursor:pointer}
body.home-v4 .v4-player-shortcuts button[hidden]{display:none!important}
body.home-v4 .v4-player-shortcuts .v4-newbie-day{position:absolute;top:2px;right:3px;display:grid;place-items:center;min-width:19px;height:19px;padding:0 3px;border-radius:10px;background:#d95335;color:#fff;font:800 11px/1 sans-serif}
body.home-v4 .v4-player-shortcuts img{display:block;width:32px;height:32px;object-fit:contain}
body.home-v4 .v4-player-shortcuts [data-pet-lineup-count]{position:absolute;top:2px;right:2px;min-width:22px;padding:1px 3px;border-radius:9px;background:#163958;color:#fff;font:700 10px/1.3 sans-serif}
body.home-v4 .v4-player-shortcuts button:hover,body.home-v4 .v4-player-shortcuts button:focus-visible,body.home-v4 .v4-player-shortcuts button:active{background:#ffe086;border-color:#b58a25;color:#3a2a08}
.v4-player-reward-dot{display:none;position:absolute;right:9px;top:4px;width:7px;height:7px;background:#d33;border-radius:50%;border:1px solid white}
.v4-player-wheel-dot{display:none;position:absolute;right:9px;top:4px;width:7px;height:7px;background:#d33;border-radius:50%;border:1px solid white}
body.v4-gift-dot .v4-player-reward-dot,body.v4-wheel-dot .v4-player-wheel-dot{display:block}
body.home-v4 .game-hud:has(.hud-debt:not([hidden])) .v4-player-shortcuts{top:calc(100% + 24px)}
@media(max-width:600px){body.home-v4 .v4-player-shortcuts button{width:clamp(45px,calc((100vw - 40px)/7),65px);min-height:52px;font-size:10px}body.home-v4 .v4-player-shortcuts img{width:28px;height:28px}}
/* 10-30 桃園／台灣／世界地圖不顯示首頁寵物（原本疊在商家卡上擋住進店／外縣市按鈕） */
.character-home-hero.is-region-map .avatar-3d-stage{display:none!important}
/* 10-30 大地圖任務追蹤（主線／每日＋寵物進階） */
body.home-v4 .v4-quest-track{display:flex;flex-direction:column;gap:4px;margin-top:6px;padding:6px 8px;max-width:210px;border:1px solid #bf9440;border-radius:12px;background:#fffaf0f2;box-shadow:0 3px 10px #0003;color:#453012}
body.home-v4 .v4-quest-track>b{font:900 12px/1.2 sans-serif;color:#7a4d0a}
body.home-v4 .v4-quest-track button{display:block;width:100%;min-height:0;margin:0;padding:4px 6px;border:1px solid #e6cf9a;border-radius:8px;background:#fff;color:#2f2410;text-align:left;font:800 12px/1.3 sans-serif;white-space:normal}
body.home-v4 .v4-quest-track button small{display:block;color:#2f6fb0;font:800 11px/1.2 sans-serif}
body.home-v4 .v4-quest-track button.is-ready{border-color:#d9a520;background:#fff3c4}

/* 地圖縣市／海外市場：選單留在卡內，不讓整張地圖上下捲動。 */
.v4-region-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;max-height:112px;min-height:0;overflow:auto;padding:2px;margin:4px 0 7px}
.v4-region-choices button,.v4-region-details>button{min-width:0;padding:6px 4px;border:1px solid #c7a665;border-radius:8px;background:#fff9e9;color:#49330f;font:600 12px/1.25 system-ui,sans-serif;cursor:pointer}
.v4-region-choices button[aria-pressed="true"]{background:#f8d66b;border-color:#ab741d}
.v4-region-choices button:disabled{color:#72767c;background:#e9e9e9;border-color:#c9c9c9;cursor:not-allowed}
.v4-region-details{display:grid;gap:6px;min-height:0;overflow:auto;font-size:12px}
.v4-region-details .v4-merchant-card{display:grid;grid-template-columns:1fr auto;gap:2px 9px;padding:8px 10px;border:1px solid #c7a665;border-radius:9px;background:#fff9e9;color:#3e321d;text-align:left;font:inherit;cursor:pointer}
.v4-region-details .v4-merchant-card:hover{background:#ffe2a0}
@media(max-width:600px){.v4-layer-card{left:10px;width:min(390px,calc(100% - 20px));bottom:68px}.v4-region-choices{grid-template-columns:repeat(2,minmax(0,1fr));max-height:96px}}

/* 11-06 老闆「任務列被擋住」：只保留一張追蹤卡，且不壓到底部選單 */
body.home-v4 .v4-rail-right .v4-quest-track~.v4-quest-track{display:none}
body.home-v4 .v4-quest-track{max-height:calc(100dvh - 330px);min-height:72px;overflow:auto}
body.home-v4 .v4-quest-track[hidden],body.home-v4 .v4-quest-list[hidden]{display:none!important}
body.home-v4 .v4-quest-track{width:min(242px,30vw);max-width:none;min-height:0;max-height:min(48dvh,360px);overflow:hidden;padding:8px;border-color:#d5bc84;background:#fffdf8f5}
body.home-v4 .v4-quest-track.is-collapsed{width:auto;max-height:none}
body.home-v4 .v4-quest-track header{display:flex;align-items:center;justify-content:space-between;gap:8px;font:800 13px/1.25 sans-serif;color:#574016}
body.home-v4 .v4-quest-track header button{flex:0 0 32px;width:32px;min-height:32px;padding:0;text-align:center;font-size:19px}
body.home-v4 .v4-quest-list{display:grid;gap:5px;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
body.home-v4 .v4-quest-list button{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 4px;align-items:center;min-height:42px;padding:6px 8px;font-weight:700}
body.home-v4 .v4-quest-list button small{grid-column:1/-1}
body.home-v4 .v4-quest-list button span{min-width:0;overflow-wrap:anywhere}
body.home-v4 .v4-quest-list button i{font-style:normal;font-size:18px;color:#8b641c}
body.home-v4 .v4-quest-list button.v4-quest-more{display:block;min-height:36px;text-align:center;color:#235783}
body.home-v4 .v4-quest-track button:focus-visible{outline:3px solid #286cb2;outline-offset:1px}
@media(max-width:700px){body.home-v4 .v4-quest-track{width:min(206px,34vw);max-height:min(46dvh,230px)}body.home-v4 .v4-quest-list button{min-height:38px;font-size:11px}}
@media(orientation:landscape) and (max-height:500px){
 body.home-v4 .v4-quest-track{position:fixed;right:68px;bottom:84px;z-index:45;width:min(242px,40vw);max-height:max(112px,calc(100dvh - 275px));margin:0;box-shadow:0 5px 18px #102b4259}
 body.home-v4 .v4-quest-track.is-collapsed{width:auto;max-height:none}
 body.home-v4 .v4-quest-track header{min-height:30px}
 body.home-v4 .v4-quest-track header button{min-height:30px}
}

/* Home map: keep tools, tracked quests and bottom navigation in separate lanes. */
body.home-v4 .v4-rail-right{top:clamp(62px,12dvh,96px);right:max(10px,env(safe-area-inset-right));flex-direction:row;align-items:center;gap:5px}
body.home-v4 .v4-rail-right>.v4-round{flex:none}
body.home-v4 .v4-rail-right .main-resume-run{flex:none;min-height:42px;padding:5px 10px;border:1px solid #c99d39;border-radius:12px;background:#fff3ce;color:#46300b;box-shadow:0 3px 10px #14283c33;font:800 12px/1.2 sans-serif;cursor:pointer}
body.home-v4 .v4-rail-right .main-resume-run[hidden]{display:none}
body.home-v4 .v4-rail-right .v4-quest-track{position:absolute;top:calc(100% + 8px);right:0;bottom:auto;width:min(244px,34vw);max-height:calc(100dvh - clamp(62px,12dvh,96px) - 56px - 102px - env(safe-area-inset-bottom));margin:0;overflow:hidden;z-index:45}
body.home-v4 .v4-rail-right:has(> .v4-staff-reminders:not([hidden])) .v4-quest-track{top:calc(100% + 52px);max-height:calc(100dvh - clamp(62px,12dvh,96px) - 100px - 102px - env(safe-area-inset-bottom))}
body.home-v4 .v4-rail-right .v4-quest-track.is-collapsed{width:auto;max-height:none}
body.home-v4 .v4-rail-right .v4-staff-reminders{top:calc(100% + 8px);right:0}
body.home-v4 .v4-player-shortcuts{max-width:min(650px,calc(100vw - 20px));overflow-x:auto;scrollbar-width:thin}
body.home-v4 .v4-player-shortcuts .v4-shortcuts-toggle{flex:0 0 28px;width:28px;min-height:44px;border-color:#d9dee8;background:#f4f8fc;font-size:20px}
body.home-v4 .v4-player-shortcuts.is-collapsed{overflow:visible}
body.home-v4 .v4-player-shortcuts.is-collapsed>[data-player-shortcut]{display:none}
body.home-v4 .panel-home .quick-bar{box-sizing:border-box;max-width:calc(100vw - 20px)}
body.home-v4 .panel-home .quick-bar .qb-track{overflow-x:auto;scrollbar-width:thin}
body.home-v4 .panel-home .quick-bar .qb-track button{min-width:64px}
@media(max-height:520px){
 body.home-v4 .v4-rail-right{top:54px;gap:4px}
 body.home-v4 .v4-rail-right .v4-quest-track{top:calc(100% + 6px);width:min(208px,36vw);max-height:calc(100dvh - 54px - 40px - 82px - env(safe-area-inset-bottom))}
 body.home-v4 .v4-rail-right:has(> .v4-staff-reminders:not([hidden])) .v4-quest-track{top:calc(100% + 46px);max-height:calc(100dvh - 54px - 80px - 82px - env(safe-area-inset-bottom))}
 body.home-v4 .v4-rail-right .v4-staff-reminders{top:calc(100% + 6px)}
}
@media(max-width:700px){
 body.home-v4 .v4-rail-right .v4-round{width:34px;height:34px}
 body.home-v4 .v4-rail-right .v4-round img{width:27px;height:27px}
 body.home-v4 .v4-rail-right .v4-quest-track{width:min(206px,42vw)}
 body.home-v4 .panel-home .quick-bar .qb-track{grid-auto-columns:minmax(64px,1fr);grid-auto-flow:column;grid-template-columns:none}
}
body.home-v4[data-ui-version="3"] .panel-home #avatar-3d-stage .home-pet[data-map-slot]{width:64px!important;max-width:64px!important}
body.home-v4[data-ui-version="3"] .panel-home #avatar-3d-stage .home-pet[data-map-slot="1"]{left:104px!important;bottom:0!important}
body.home-v4[data-ui-version="3"] .panel-home #avatar-3d-stage .home-pet[data-map-slot="2"]{left:-102px!important;bottom:0!important}
body.home-v4[data-ui-version="3"] .panel-home #avatar-3d-stage .home-pet[data-map-slot="3"]{left:204px!important;bottom:12px!important}
body.home-v4[data-ui-version="3"] .panel-home #avatar-3d-stage .home-pet[data-map-slot="4"]{left:-202px!important;bottom:12px!important}
@media(max-width:899px){
 body.home-v4[data-ui-version="3"] .panel-home #avatar-3d-stage .home-pet[data-map-slot]{width:48px!important;max-width:48px!important}
 body.home-v4[data-ui-version="3"] .panel-home #avatar-3d-stage .home-pet[data-map-slot="1"]{left:72px!important}
 body.home-v4[data-ui-version="3"] .panel-home #avatar-3d-stage .home-pet[data-map-slot="2"]{left:-70px!important}
 body.home-v4[data-ui-version="3"] .panel-home #avatar-3d-stage .home-pet[data-map-slot="3"]{left:142px!important}
 body.home-v4[data-ui-version="3"] .panel-home #avatar-3d-stage .home-pet[data-map-slot="4"]{left:-140px!important}
}

/* 11-06 產線不能開工時的原因說明 */
.line-blocked-note{margin:6px 0 0;padding:6px 8px;border-radius:8px;background:#fff4d6;color:#6b4300;font-size:12px;line-height:1.35}
/* 11-07 手機橫向多了每日轉盤：快捷鈕縮窄，不蓋到右側任務追蹤 */
@media(max-height:520px){body.home-v4 .v4-player-shortcuts button{width:64px}}
@media(max-height:520px){body.home-v4 .v4-player-shortcuts:has([data-player-shortcut="newbie-seven"]:not([hidden])) button{width:55px;font-size:10px}}

/* Homepage HUD: aligned resources, compact navigation and a disclosure for map tools. */
body.home-v4 .app-shell>.topbar{gap:12px;padding:8px 12px;align-items:center}
body.home-v4 .v4-res{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;max-width:740px;margin-inline:auto}
body.home-v4 .v4-res-cell{box-sizing:border-box;width:100%;min-width:0;height:36px;border-radius:12px;gap:4px}
body.home-v4 .v4-res-cell b{font-size:13px}
body.home-v4 .v4-tools-toggle{min-width:84px;min-height:44px;padding:8px 14px;border:1px solid var(--v4-line);border-radius:14px;background:var(--v4-card);color:var(--v4-ink);font:800 14px/1.2 sans-serif;box-shadow:0 3px 10px #0002;cursor:pointer}
body.home-v4 .v4-tools-toggle[aria-expanded=true]{border-color:var(--v4-gold);background:var(--v4-gold-soft)}
body.home-v4 .v4-tools-panel{position:absolute;top:calc(100% + 8px);right:0;z-index:65;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;width:224px;padding:8px;border:1px solid var(--v4-line);border-radius:18px;background:#fffffff7;box-shadow:0 8px 24px #0004}
body.home-v4 .v4-tools-panel[hidden]{display:none}
body.home-v4 .v4-tools-panel .v4-round{display:flex;justify-content:flex-start;gap:6px;width:100%;height:48px;padding:4px;border:1px solid var(--v4-line);border-radius:12px;box-shadow:none;font-size:12px}
body.home-v4 .v4-tools-panel .v4-round img{width:30px;height:30px;flex:none}
body.home-v4 .v4-tools-panel .v4-map-caption{display:none}
body.home-v4 .v4-tool-label{font:700 12px/1.2 sans-serif;text-align:left}
body.home-v4 .v4-tools-toggle:focus-visible{outline:3px solid var(--v4-gold);outline-offset:2px}
body.home-v4 .panel-home .quick-bar{padding:4px 6px!important;border-radius:20px!important}
body.home-v4 .panel-home .quick-bar .qb-track button{height:58px;min-height:44px;border-radius:14px}
body.home-v4 .panel-home .quick-bar .qb-art,body.home-v4 .panel-home .quick-bar .qb-art img{width:38px;height:38px}
body.home-v4 .panel-home .quick-bar .qb-track button b{font-size:12px!important}
@media (max-height:520px) and (orientation:landscape){
 body.home-v4 .app-shell>.topbar{padding:4px 8px;gap:6px}
 body.home-v4 .v4-res-cell{height:30px}
 body.home-v4 .v4-res-cell b{font-size:12px}
 body.home-v4 .panel-home .quick-bar .qb-track button{height:48px}
 body.home-v4 .panel-home .quick-bar .qb-art,body.home-v4 .panel-home .quick-bar .qb-art img{width:30px;height:30px}
 body.home-v4 .panel-home .quick-bar .qb-track button b{font-size:11px!important}
}
@media (max-width:700px) and (orientation:portrait){
 body.home-v4 .app-shell>.topbar{flex-wrap:wrap;gap:8px;padding:6px 8px}
 body.home-v4 .v4-res{order:3;flex-basis:100%;max-width:none;gap:4px}
 body.home-v4 .v4-res-cell{height:32px;padding:2px;gap:2px}
 body.home-v4 .v4-res-cell b{font-size:11px}
 body.home-v4 .v4-res-ico{flex-basis:18px;font-size:15px;line-height:18px}
 body.home-v4 .v4-res-ico img{width:18px;height:18px}
 body.home-v4 .v4-plus{display:none}
 body.home-v4 .v4-rail-right{top:116px}
 body.home-v4 .v4-player-shortcuts{max-width:calc(100vw - 16px)}
}

/* Unified blue and gold home controls; existing game artwork stays prominent. */
body.home-v4 .game-hud .v4-player-shortcuts{gap:2px;padding:5px 8px 5px 4px;border:1px solid #d5b56b;border-radius:18px;background:linear-gradient(180deg,#f3fbffe8,#d9edfad9);box-shadow:inset 0 1px #fff,0 4px 12px #16395738;overflow:visible}
body.home-v4 .v4-player-shortcuts [data-player-shortcut]{width:72px;min-height:62px;padding:3px 4px;border:1px solid transparent;border-radius:12px;background:transparent;box-shadow:none;color:#203e5b;gap:2px}
body.home-v4 .v4-player-shortcuts img{width:38px;height:38px;filter:drop-shadow(0 2px 2px #17355025)}
body.home-v4 .v4-player-shortcuts button b{font-size:11px;white-space:nowrap;text-shadow:0 1px #fff}
body.home-v4 .v4-player-shortcuts .v4-shortcuts-toggle{width:26px;min-height:44px;align-self:center;border:0;border-right:1px solid #9cbcd15c;border-radius:8px 0 0 8px;background:transparent;box-shadow:none;color:#345b7a}
body.home-v4 .v4-player-shortcuts [data-player-shortcut]:hover,body.home-v4 .v4-player-shortcuts [data-player-shortcut]:active{background:#fff1b7a8;border-color:#d5b56b}
body.home-v4 .v4-player-shortcuts button:focus-visible{outline:3px solid #2f8cf0;outline-offset:1px}
body.home-v4 .v4-tools-toggle,body.home-v4 .v4-rail-right .v4-quest-track,body.home-v4 .v4-tools-panel{border:1px solid #d5b56b;border-radius:16px;background:linear-gradient(180deg,#f3fbfff2,#d9edfaed);box-shadow:inset 0 1px #fff,0 4px 12px #16395738;color:#203e5b}
body.home-v4 .v4-tools-toggle{min-width:88px}
body.home-v4 .v4-tools-toggle[aria-expanded=true]{background:linear-gradient(#fff5cf,#f6dda2);border-color:#b88b2b}
body.home-v4 .v4-tools-panel .v4-round{border-color:#b9d0df;background:#ffffff70;color:#203e5b}
body.home-v4 .v4-tools-panel .v4-round:hover{border-color:#d5b56b;background:#fff1b7}
body.home-v4 .v4-rail-right .v4-quest-track{padding:6px 8px}
body.home-v4 .v4-rail-right .v4-quest-track.is-collapsed{width:180px;box-sizing:border-box}
body.home-v4 .v4-quest-track header{color:#203e5b;gap:10px}
body.home-v4 .v4-quest-track header b{display:flex;align-items:center;gap:8px;white-space:nowrap;flex-shrink:0}
body.home-v4 .v4-quest-count{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 4px;box-sizing:border-box;border:1px solid #dec27c;border-radius:7px;background:#fff1c3;color:#725011;font:800 11px/1 sans-serif}
body.home-v4 .v4-quest-track header button{width:36px;min-height:36px;border-color:#aac6da;background:#ffffff85;color:#345b7a}
body.home-v4 .v4-quest-list button{border-color:#b9d0df;background:#ffffffb8;color:#203e5b}
body.home-v4 .panel-home .quick-bar .qb-track button[aria-pressed=true]{background:linear-gradient(#fff8d8,#ffe6a0);box-shadow:inset 0 0 0 1px #dfbd64}
body.home-v4 .panel-home .quick-bar .qb-track button:focus-visible{outline:3px solid #2f8cf0;outline-offset:-3px}
@media(max-height:520px) and (orientation:landscape){
 body.home-v4 .game-hud .v4-player-shortcuts{padding:3px 6px 3px 3px;border-radius:14px}
 body.home-v4 .v4-player-shortcuts [data-player-shortcut]{width:60px;min-height:48px;gap:0;padding:1px 3px}
 body.home-v4 .v4-player-shortcuts img{width:30px;height:30px}
 body.home-v4 .v4-player-shortcuts button b{font-size:10px}
}
@media(max-width:700px) and (orientation:portrait){
 body.home-v4 .game-hud .v4-player-shortcuts{display:grid;grid-template-columns:24px repeat(6,minmax(0,1fr));gap:1px;width:calc(100vw - 20px);padding:4px;box-sizing:border-box}
 body.home-v4 .v4-player-shortcuts [data-player-shortcut]{width:100%;min-width:0;min-height:54px;padding:2px 0}
 body.home-v4 .v4-player-shortcuts img{width:30px;height:30px}
 body.home-v4 .v4-player-shortcuts button b{font-size:9px;white-space:normal}
 body.home-v4 .v4-player-shortcuts.is-collapsed{display:flex;width:auto}
 body.home-v4 .v4-player-shortcuts.is-collapsed [data-player-shortcut]{display:none}
}

html body .v4-photo-exit{position:fixed;top:calc(env(safe-area-inset-top,0px) + 10px);right:calc(env(safe-area-inset-right,0px) + 12px);z-index:12000;padding:8px 16px;border:2px solid #d9a521;border-radius:999px;background:#fffdf5;color:#1f2a37;font:700 16px/1.2 system-ui,sans-serif;box-shadow:0 3px 10px rgba(0,0,0,.25);cursor:pointer}
html body .v4-photo-exit[hidden]{display:none}
/* 11-08 生活商家店外、店內拍照：藏走動畫面的按鈕、搖桿、提示、小地圖 */
body.v4-photo .walk25d-top,body.v4-photo .walk25d-joy,body.v4-photo .walk25d-hint,body.v4-photo .walk25d-enter,body.v4-photo .walk25d-talk,body.v4-photo .walk25d-seat,body.v4-photo .walk-minimap,body.v4-photo .walk-map-tools,body.v4-photo .walk25d .city-quest,body.v4-photo .walk25d .walk25d-quest,body.v4-photo .dealer-pages{visibility:hidden}
/* 11-08 老闆：拍照模式要有快門鈕；預覽框淺底深字 */
html body .v4-photo-shutter{position:fixed;left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 18px);transform:translateX(-50%);z-index:12000;padding:12px 28px;border:3px solid #d9a521;border-radius:999px;background:#fffdf5;color:#1f2a37;font:800 20px/1.2 system-ui,sans-serif;box-shadow:0 4px 14px rgba(0,0,0,.3);cursor:pointer}
html body .v4-photo-shutter:disabled{opacity:.6}
html body .v4-photo-shutter[hidden]{display:none}
html body .v4-photo-busy{position:fixed;left:50%;top:40%;transform:translateX(-50%);z-index:12001;padding:10px 20px;border-radius:12px;background:#fffdf5;color:#1f2a37;border:2px solid #d9a521;font:700 16px/1.3 system-ui,sans-serif}
html body .v4-photo-preview{position:fixed;inset:0;z-index:12002;display:flex;align-items:center;justify-content:center;padding:12px;background:rgba(12,26,43,.6)}
html body .v4-photo-card{display:flex;flex-direction:column;gap:10px;max-width:min(860px,100%);max-height:100%;padding:12px;border-radius:16px;background:#fffaf0;border:2px solid #d9a521;box-shadow:0 18px 44px #0005}
html body .v4-photo-card img{display:block;max-width:100%;max-height:calc(100dvh - 110px);object-fit:contain;border-radius:10px;border:1px solid #e7dac2}
html body .v4-photo-actions{display:flex;gap:10px;justify-content:center}
html body .v4-photo-actions button{min-height:42px;padding:8px 20px;border-radius:999px;border:2px solid #d9a521;background:#fff;color:#1f2a37;font:700 16px/1.2 system-ui,sans-serif;cursor:pointer}
html body .v4-photo-actions [data-photo=save]{background:#ffd54f}
/* 11-08 新手村：畢業前外面的入口變灰並寫「離開新手村後開放」（文字由 panel-home.js 放在 --village-lock-text） */
html.village-locked body :is([data-qb-action="gather"],[data-qb-action="dungeons"],[data-qb-action="team"],[data-qb-action="dock"],[data-player-shortcut="boss-hall"],[data-player-shortcut="festival-boss"],[data-player-shortcut="guild"],[data-player-shortcut="auction"],[data-player-shortcut="bank"],[data-character-go="character-shop"],[data-social-tab="guild"]){position:relative;filter:grayscale(1);opacity:.62}
html.village-locked body :is([data-qb-action="gather"],[data-qb-action="dungeons"],[data-qb-action="team"],[data-qb-action="dock"],[data-player-shortcut="boss-hall"],[data-player-shortcut="festival-boss"],[data-player-shortcut="guild"],[data-player-shortcut="auction"],[data-player-shortcut="bank"])::after{content:var(--village-lock-text);position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:max-content;max-width:110%;padding:2px 5px;border-radius:6px;background:#fff;color:#3a2a00;font:700 9px/1.25 system-ui,sans-serif;text-align:center;white-space:normal;box-shadow:0 1px 3px rgba(0,0,0,.35);pointer-events:none;z-index:2}
html body .game-hud.is-village .hud-cash-g{font-size:.92em;white-space:nowrap}
/* 11-08 老闆：等級不到的入口整個藏起來，到了才陸續出現（panel-home.js 依 FEATURE_UNLOCKS 標 data-feature-locked） */
html body [data-feature-locked]{display:none!important}
html body dialog.feature-unlock:not(#a):not(#b){width:min(440px,calc(100vw - 32px));padding:20px 22px;border:2px solid #e2b23c;border-radius:18px;background:#fffaf0;color:#2b2110;box-shadow:0 12px 40px rgba(0,0,0,.35)}
html body dialog.feature-unlock:not(#a):not(#b) h2{margin:0 0 12px;font-size:20px;color:#7a4b00}
html body dialog.feature-unlock:not(#a):not(#b) ul{margin:0 0 16px;padding:0;list-style:none;display:grid;gap:10px}
html body dialog.feature-unlock:not(#a):not(#b) li{display:grid;gap:3px;padding:10px 12px;border-radius:12px;background:#fff;border:1px solid #f0dca8}
html body dialog.feature-unlock:not(#a):not(#b) li b{font-size:16px;color:#2b2110}
html body dialog.feature-unlock:not(#a):not(#b) li span{font-size:14px;line-height:1.5;color:#4a3d24}
html body dialog.feature-unlock:not(#a):not(#b) [data-feature-ok]{display:block;margin:0 auto;min-width:140px}

/* 11-08 老闆：經驗值移到下排快捷列最底部的綠色細線；左上角人物卡不再顯示經驗條 */
html body.home-v4 .game-hud .hud-xp{display:none!important}
html body .quick-bar .qb-xp{position:absolute;left:14px;right:14px;bottom:1px;height:4px;border-radius:4px;background:#1d243326;overflow:hidden;pointer-events:none}
html body .quick-bar .qb-xp em{display:block;height:100%;border-radius:4px;background:linear-gradient(90deg,#3ddc6a,#1fae4b);box-shadow:0 0 6px #3ddc6a99;transition:width .3s}
/* 11-08 老闆：關卡畫面沒有快捷列 → 人物卡經驗條改成卡片底部綠色細線，不顯示文字與數字 */
html body:not(.home-v4) .game-hud .hud-xp{position:absolute!important;left:14px;right:14px;bottom:2px;height:4px;margin:0!important;display:block!important;pointer-events:none}
html body:not(.home-v4) .game-hud .hud-xp small{display:none!important}
html body:not(.home-v4) .game-hud .hud-xp i{display:block;height:4px!important;border-radius:4px;background:#1d243326!important;overflow:hidden}
html body:not(.home-v4) .game-hud .hud-xp em{background:linear-gradient(90deg,#3ddc6a,#1fae4b)!important;box-shadow:0 0 6px #3ddc6a99}
/* 11-08 新手村大立繪 NPC 說明（js/npc-talk.js）：人物佔畫面約一半高，淺底深字 */
html body .npc-talk{position:fixed;inset:0;z-index:9000;display:flex;align-items:flex-end;justify-content:center;gap:0;padding:0 12px calc(12px + env(safe-area-inset-bottom,0px));background:linear-gradient(180deg,#0000 30%,#1d243366)}
html body .npc-talk-img{flex:0 0 auto;height:min(52vh,460px);max-width:46vw;object-fit:contain;object-position:bottom;filter:drop-shadow(0 6px 14px #0005);pointer-events:none}
html body .npc-talk-box{flex:0 1 560px;margin:0 0 6px -18px;padding:14px 16px 12px;border:2px solid #f0c860;border-radius:16px;background:#fffaf0;color:#2b2110;box-shadow:0 8px 24px #0004}
html body .npc-talk-box b{display:flex;align-items:baseline;gap:8px;font-size:17px;color:#7a4b00}
html body .npc-talk-box b small{font-size:12px;font-weight:600;color:#6b5a3a}
html body .npc-talk-box p{margin:8px 0 12px;font-size:16px;line-height:1.6;color:#2b2110}
html body .npc-talk-next{display:block;margin-left:auto;min-height:44px;padding:0 18px;border:0;border-radius:12px;background:#f5b72c;color:#2b2110;font-weight:800;font-size:15px}
html body .npc-talk-sprite{display:block;aspect-ratio:3/4;background:url(../img/npc-sheet-mobile-v81.webp) no-repeat;background-size:400% 200%}
/* 11-10 老闆「講到哪個按鈕就讓開」：npcTalk 的 focus 會挑不擋按鈕的一邊，並框出講到的按鈕 */
@media (min-width:601px){html body .npc-talk.npc-talk-left{justify-content:flex-start}html body .npc-talk.npc-talk-right{justify-content:flex-end}html body .npc-talk.npc-talk-top{align-items:flex-start;padding-top:12px;background:linear-gradient(0deg,#0000 30%,#1d243366)}html body .npc-talk.npc-talk-top .npc-talk-box{margin-top:24px}}
html body .npc-talk-ring{position:fixed;border:3px solid #f5b72c;border-radius:16px;box-shadow:0 0 0 4px #fff9,0 0 18px #f5b72ccc;pointer-events:none;animation:npcRing 1.2s ease-in-out infinite alternate}
html body .npc-talk-ring[hidden]{display:none}
@keyframes npcRing{to{box-shadow:0 0 0 7px #fff6,0 0 26px #f5b72c}}
@media (max-width:600px){html body .npc-talk{flex-direction:column;align-items:center}html body .npc-talk-img{height:42vh;max-width:80vw}html body .npc-talk-box{margin:-24px 0 0;width:100%}}
/* 11-08 合成材料名稱原本深底深字（對比 1.0）看不見 → 淺底深字 */
html body .synthesis-recipe>div{background:#fffaf0;border:1px solid #ead9a8}
html body .synthesis-recipe>div b{color:#2b2110}
html body .synthesis-recipe>div small{color:#5a4a2a}
html body .synthesis-disclaimer{color:#6b5a3a}
/* 11-08 老闆：畢業後新手導覽入口變灰，只留複習（淺灰底深灰字，不用淡字） */
html body .operation-mode-options button[data-village-review]:not(.selected){background:#e6e6e6!important;border-color:#bdbdbd!important;color:#3a3a3a!important;filter:grayscale(1)}
html body .operation-mode-options button[data-village-review]:not(.selected) small{color:#4a4a4a!important}
/* 11-08 五輪實測：材料抽籤結果原為深底＋被覆蓋成深字（對比 1.4）→ 淺底深字；碟盤部標籤加深色底條 */
html body .material-draw-result{background:#fffaf0!important;border-color:#e2d3b0!important;color:#2b2110!important}
html body .material-draw-result>b{color:#8a5a00!important}
html body .material-draw-result small{color:#5a4a2a!important}
html body .department-product-art>span{background:#fffaf0;color:#2b2110!important;padding:1px 8px;border-radius:6px}
html body .handoff-line{background:#fffaf0!important;border:1px solid #e2d3b0;color:#2b2110!important}
html body .handoff-line :is(span,strong,b){color:#2b2110!important}
html body .mini-factory{background:#fffaf0!important;color:#7a5200!important}
html body .mini-factory.coating{color:#1f5f86!important}
/* 11-08 五輪實測第 4～8 站：深底卡片的字被覆蓋成深色（對比 1.0～3.2）→ 一律淺底深字 */
html body :is(.vehicle-arrival,.question-visual,.campaign-board,.feedback-device,.speech,.booking-source,.booking-source.referral){background:#fffaf0!important;border-color:#e2d3b0!important;color:#2b2110!important}
html body :is(.vehicle-arrival,.question-visual>div:last-child,.campaign-board,.feedback-device,.booking-source)>span{color:#8a5a00!important}
html body :is(.vehicle-arrival,.booking-source)>b,html body :is(.question-visual>div:last-child,.campaign-board,.feedback-device)>p{color:#2b2110!important}
html body :is(.vehicle-arrival,.booking-source)>small{color:#5a4a2a!important}

/* 11-09 五輪實測：結算頁分數圈是淺底，卻被 panels.css 強制成淺字（36、見習任務員看不見）；頁首標題直接放在淺色頁面上也是淡金字 → 改深字。全域「上一頁」和結算頁自己的返回鈕重複，結算頁只留自己的 */
html body .result-page:not(#a)>.eyebrow{display:inline-block;padding:4px 12px;border-radius:999px;background:#fffaf0;color:#7a4f00!important}
html body .result-page:not(#a) .score-ring,html body .result-page:not(#a) .score-ring *{color:#30251a!important}
html body .result-page:not(#a) .score-ring strong{color:#8a5a00!important}
html body:has(.result-page) #app-back{display:none!important}
/* 11-09 老闆：玩家卡正下方＝戰鬥設定＋行事曆兩顆小圓鈕（淺底金框，跟玩家快捷列同款） */
body.home-v4 .game-hud .v4-player-tools{position:absolute;left:0;top:calc(100% + 6px);display:flex;gap:6px;pointer-events:auto;z-index:66}
body.home-v4 .game-hud:has(.hud-debt:not([hidden])) .v4-player-tools{top:calc(100% + 24px)}
body.home-v4 .game-hud .v4-player-tools .v4-round{display:flex;flex-direction:column;justify-content:center;gap:1px;width:48px;height:48px;border:1px solid #d5b56b;border-radius:14px;background:linear-gradient(180deg,#f3fbff,#d9edfa);color:#1f2a37;box-shadow:inset 0 1px #fff,0 3px 8px #16395738}
body.home-v4 .game-hud .v4-player-tools .v4-tool-ico{font-size:20px;line-height:22px;color:#8a5a12}
body.home-v4 .game-hud .v4-player-tools .cal-mini{min-width:22px;height:22px;line-height:15px;font-size:12px}
body.home-v4 .game-hud .v4-player-tools .v4-player-tool-name{font-size:10px;font-weight:800;line-height:1.1;white-space:nowrap;color:#203e5b}
@media(hover:hover){body.home-v4 .game-hud .v4-player-tools .v4-round:hover{background:#fff1b7}}
@media(max-height:520px) and (orientation:landscape){
 body.home-v4 .game-hud .v4-player-tools{top:calc(100% + 4px);gap:4px}
 body.home-v4 .game-hud .v4-player-tools .v4-round{width:42px;height:42px;border-radius:12px}
 body.home-v4 .game-hud .v4-player-tools .v4-tool-ico{font-size:17px;line-height:18px}
 body.home-v4 .game-hud .v4-player-tools .v4-player-tool-name{font-size:9px}
}

/* 11-10 老闆「位置移動」：禮包、轉盤、新手任務搬到玩家卡下方小圓鈕；圖片圖示與紅點 */
body.home-v4 .game-hud .v4-player-tools .v4-round{position:relative}
body.home-v4 .game-hud .v4-player-tools .v4-round-art img{width:28px;height:28px;object-fit:contain;margin:0 auto;display:block}
body.home-v4 .game-hud .v4-player-tools .v4-round[hidden]{display:none}
body.home-v4 .game-hud .v4-player-tools .v4-player-reward-dot,body.home-v4 .game-hud .v4-player-tools .v4-player-wheel-dot,body.home-v4 .game-hud .v4-player-tools .v4-player-newbie-dot{right:3px;top:3px}
body.home-v4 .game-hud .v4-player-tools .v4-player-newbie-dot{display:block;position:absolute;width:7px;height:7px;background:#d33;border-radius:50%;border:1px solid #fff}
body.home-v4 .game-hud .v4-player-tools .v4-player-newbie-dot[hidden]{display:none}
body.home-v4 .v4-quest-track header [data-qt-open]{cursor:pointer}
@media(max-height:500px) and (orientation:landscape){body.home-v4 .game-hud .v4-player-tools .v4-round-art img{width:22px;height:22px}}
/* 11-10 員工待辦放進任務追蹤卡片；採集選單的「回到採集」 */
body.home-v4 .v4-quest-track>.v4-staff-reminders{position:static;margin:6px 0 0;display:block}
body.home-v4 .v4-quest-track>.v4-staff-reminders[hidden]{display:none}
body.home-v4 .v4-quest-track>.v4-staff-reminders .v4-staff-reminder{width:100%}
.qb-gather .qb-gather-resume{display:block;width:100%;margin:0 0 10px;padding:10px 12px;border:1px solid #d5b56b;border-radius:12px;background:linear-gradient(180deg,#fff7d6,#f6df98);color:#4a3306;font-weight:800;font-size:15px;cursor:pointer}
/* 11-10 老闆「任務欄位往上對齊」：員工待辦收進任務追蹤後不再把任務追蹤往下推（:has 改成只認直接放在右側直排的員工待辦） */
/* 11-10 老闆「將天數跟左上角的人像結合」：天數時鐘貼在人物卡右上角 */
html body .app-shell .game-hud{position:relative}
html body .app-shell .game-hud > .game-clock{position:absolute!important;top:-9px!important;right:-6px!important;left:auto!important;bottom:auto!important;display:block!important;width:auto!important;min-width:0!important;max-width:none!important;height:auto!important;min-height:0!important;margin:0!important;padding:1px 7px!important;border:1px solid #d5b56b!important;border-radius:9px!important;background:#fff3c4!important;color:#5a3a00!important;font:800 11px/16px system-ui,sans-serif!important;letter-spacing:0!important;white-space:nowrap!important;text-shadow:none!important;box-shadow:0 2px 6px #0003!important;z-index:67;pointer-events:none}
/* 11-10 老闆「不要分開」：戰鬥設定／行事曆／禮包／轉盤合成一條 */
body.home-v4 .game-hud .v4-player-tools{gap:0;border:1px solid #d5b56b;border-radius:14px;overflow:hidden;background:linear-gradient(180deg,#f3fbff,#d9edfa);box-shadow:inset 0 1px #fff,0 3px 8px #16395738}
body.home-v4 .game-hud .v4-player-tools .v4-round{border:0;border-radius:0;background:transparent;box-shadow:none}
body.home-v4 .game-hud .v4-player-tools .v4-round + .v4-round{border-left:1px solid #d5b56b80}
