/* Approved VER187 desktop presentation. The shared controls retain their live game handlers. */
.pc-only,.pc-player-level,.pc-player-race,.pc-gold{display:none}
.pc-quickbar{display:contents}
.mobile-menu kbd{display:none}
body.mobile-game #mobileMenu .pc-only{display:none}

body:not(.mobile-game) #gameWrap{--pc-slot:53px;--pc-attack:76px;--pc-edge:22px}
body:not(.mobile-game) #gameWrap #dragonHud{display:none}
body:not(.mobile-game) #gameWrap .world-frame{opacity:.5}
body:not(.mobile-game) #gameWrap .place-plaque{position:absolute;top:88px;left:24px;margin:0;padding:0 0 0 10px;width:auto;min-height:0;max-width:300px;border:0;border-left:1px solid #a29a7777;box-shadow:none;background:none;filter:none;text-shadow:0 1px 3px #000}
body:not(.mobile-game) #gameWrap .place-plaque:before,body:not(.mobile-game) #gameWrap .place-plaque:after{display:none}
body:not(.mobile-game) #gameWrap .place{font-size:13px;line-height:20px;letter-spacing:.02em;color:#ded5b4}
body:not(.mobile-game) #gameWrap #monsterInfo{top:62px;width:210px;padding:0;border:0;background:none;box-shadow:none;filter:drop-shadow(0 2px 2px #000)}
body:not(.mobile-game) #gameWrap #monsterInfo .window-corners{display:none}
body:not(.mobile-game) #gameWrap #monsterName{font-size:13px;line-height:20px;margin-bottom:6px;font-weight:500;color:#e4d4b5}
body:not(.mobile-game) #gameWrap .target-gauge{height:12px;border:1px solid #716c58;background:#121b1ed6;box-shadow:none;margin-top:0}
body:not(.mobile-game) #gameWrap .target-gauge.hp>span{background:linear-gradient(#c3715b,#943823)}
body:not(.mobile-game) #gameWrap .target-gauge.mp{height:8px;margin-top:3px}
body:not(.mobile-game) #gameWrap .target-gauge.mp>span{background:linear-gradient(#a2c4c8,#527a86)}
body:not(.mobile-game) #gameWrap .target-gauge small{font-size:9px;line-height:10px}
body:not(.mobile-game) #gameWrap .target-gauge.mp small{font-size:7px;line-height:6px}

body:not(.mobile-game) #gameWrap .mobile-menu{position:absolute;display:flex;z-index:22;right:18px;top:12px;gap:5px;padding:0;background:none;border:0;pointer-events:auto}
body:not(.mobile-game) #gameWrap .mobile-menu button{width:52px;height:52px}
body:not(.mobile-game) #gameWrap #statusStrip{top:86px;right:22px;max-width:240px;gap:7px}
body:not(.mobile-game) #gameWrap .status-slot{width:30px;height:34px;min-width:30px;border:1px solid #8d937877;padding:2px;background:#19251daa;box-shadow:inset 0 0 0 1px #0b130d}
body:not(.mobile-game) #gameWrap .status-slot img,body:not(.mobile-game) #gameWrap .status-slot canvas{filter:saturate(.75);width:24px;height:24px}
body:not(.mobile-game) #gameWrap .status-slot small{font-size:9px;color:#d3d8c2;text-shadow:0 1px 2px #000}

body:not(.mobile-game) #gameWrap .pc-quickbar{position:absolute;right:var(--pc-edge);bottom:28px;z-index:25;display:flex;align-items:center;gap:9px;padding:8px 10px;background:linear-gradient(#14221c66,#101b179e);border-top:1px solid #b4ae8b77;border-bottom:1px solid #858d7155;box-shadow:0 -2px 0 #0c1718b3,0 1px 0 #090f0bcc;pointer-events:auto}
body:not(.mobile-game) #gameWrap .quick-group{position:static!important;inset:auto!important;transform:none!important;display:flex;width:auto;height:var(--pc-slot);gap:5px;pointer-events:auto}
body:not(.mobile-game) #gameWrap .quick-group.potions{border-left:1px solid #b4b09466;padding-left:9px}
body:not(.mobile-game) #gameWrap .quick-slot{width:var(--pc-slot);height:var(--pc-slot);min-width:var(--pc-slot);margin:0;border:1px solid #91886c;padding:4px;background:linear-gradient(130deg,#6c6c5666,#333b2de6 45%,#263025c2);box-shadow:inset 1px 1px 0 #b9ae8677,inset -2px -2px 0 #0e170eda,0 0 0 2px #070d0b91;border-radius:0}
body:not(.mobile-game) #gameWrap .quick-slot:before{border-color:#777d6266}
body:not(.mobile-game) #gameWrap .quick-slot.empty{background:linear-gradient(140deg,#5b615033,#111d157d);border-color:#7a806966}
body:not(.mobile-game) #gameWrap .slot-key{font-size:10px;color:#e5ddbe;background:#0e1914b3;top:1px;left:2px;padding:2px}
body:not(.mobile-game) #gameWrap .slot-count{font-size:11px;right:3px;bottom:2px}
body:not(.mobile-game) #gameWrap .slot-time{font-size:18px}
body:not(.mobile-game) #gameWrap #potions_2{display:none}
body:not(.mobile-game) #gameWrap .control-right{right:calc(var(--pc-edge) + 6px);bottom:125px;width:var(--pc-attack);height:var(--pc-attack);transform:none;z-index:25;pointer-events:auto}
body:not(.mobile-game) #gameWrap .combat-actions{position:static;display:flex;width:var(--pc-attack);height:var(--pc-attack);gap:0;grid-template-columns:none}
body:not(.mobile-game) #gameWrap #attackBtn{width:var(--pc-attack);height:var(--pc-attack);min-width:0;flex:0 0 var(--pc-attack);padding:0;border:0;border-radius:50%;background:none;box-shadow:none}
body:not(.mobile-game) #gameWrap #attackBtn:before{display:none}
body:not(.mobile-game) #gameWrap #hudTools{left:var(--pc-edge);right:auto;bottom:46px;flex-direction:column;gap:8px}
body:not(.mobile-game) #gameWrap #hudTools #autoBtn,body:not(.mobile-game) #gameWrap #hudTools #zoomLabel{width:50px;height:50px;min-width:50px;min-height:50px;padding:0}
body:not(.mobile-game) #gameWrap .mobile-exp{display:block;position:absolute;z-index:20;left:0;right:0;bottom:0;height:3px;background:#101c16aa;border:0;pointer-events:none}
body:not(.mobile-game) #gameWrap .mobile-exp>i{display:block;height:100%;background:linear-gradient(90deg,#777b56,#c5b783)}
body:not(.mobile-game) #gameWrap .mobile-exp>span{position:absolute;left:15px;bottom:12px;transform:none;color:#cad3be;text-shadow:0 1px 2px #000;font-size:10px;white-space:nowrap}
body:not(.mobile-game) #gameWrap .party-hud{left:22px;top:155px;width:210px;max-height:190px;overflow:auto;background:#15241fcc;border-color:#68776b}
body:not(.mobile-game) #gameWrap .context-actions{left:86px;bottom:48px;transform:none;display:flex;gap:6px;max-width:calc(100% - 370px);flex-wrap:wrap}
body:not(.mobile-game) #gameWrap .context-actions button{min-height:36px;width:auto;padding:5px 12px;border:1px solid #94927c;background:#15241fdd;color:#e1d6b9;font-size:12px}
body:not(.mobile-game) #gameWrap .loot-feed{left:86px;bottom:98px;max-width:290px;font-size:11px}

/* The desktop windows use the same steel/slate surfaces as the approved HUD. */
body:not(.mobile-game) #gameWrap .modal:not(.approved-window),body:not(.mobile-game) #gameWrap #itemDetailDialog:not(.approved-window),body:not(.mobile-game) #gameWrap #skillDetailDialog:not(.approved-window){background:linear-gradient(130deg,#273430f5,#15241ff5 65%);border:1px solid #94927c;border-radius:0;box-shadow:0 0 0 2px #111b15,inset 0 0 0 1px #596255,0 15px 35px #0009;color:#d0dac5}
body:not(.mobile-game) #gameWrap .modal:not(.approved-window){padding:5px;max-height:calc(100% - 40px)}
body:not(.mobile-game) #gameWrap :is(.modal,dialog):not(.approved-window) .modal-head b{font-size:14px;color:#e9dec1;font-weight:500;letter-spacing:.04em}
body:not(.mobile-game) #gameWrap .modal:not(.approved-window):before,body:not(.mobile-game) #gameWrap #itemDetailDialog:not(.approved-window):before,body:not(.mobile-game) #gameWrap #skillDetailDialog:not(.approved-window):before{border-color:#8c8b7328;inset:4px}
body:not(.mobile-game) #gameWrap .modal:not(.approved-window)>.window-corners,body:not(.mobile-game) #gameWrap dialog:not(.approved-window)>.window-corners{display:none}
body:not(.mobile-game) #gameWrap :is(.modal,dialog):not(.approved-window) .modal-head,body:not(.mobile-game) #gameWrap :is(.modal,dialog):not(.approved-window) .detail-window-head{min-height:39px;padding:5px 12px;background:linear-gradient(#374038,#1b2a22);border-bottom:1px solid #8c8b7377;color:#e9dec1;font-size:14px;font-weight:500;line-height:1.3;text-shadow:0 1px 2px #000}
body:not(.mobile-game) #gameWrap :is(.modal,dialog):not(.approved-window) .modal-head button,body:not(.mobile-game) #gameWrap :is(.modal,dialog):not(.approved-window) .detail-window-head button{width:29px;height:29px;min-height:29px;border:0;background:none;box-shadow:none;color:#c9bea4;padding:3px}
body:not(.mobile-game) #gameWrap #itemDetailDialog:not(.approved-window),body:not(.mobile-game) #gameWrap #skillDetailDialog:not(.approved-window){width:min(500px,calc(100% - 32px));font-size:13px}
body:not(.mobile-game) #gameWrap :is(.modal,dialog):not(.approved-window) .detail-art,body:not(.mobile-game) #gameWrap :is(.modal,dialog):not(.approved-window) .skill-detail-art{background:radial-gradient(ellipse,#4e654034,#101c15);border:1px solid #788569;box-shadow:inset 0 0 0 2px #0f1b13}
body:not(.mobile-game) #gameWrap :is(.modal,dialog):not(.approved-window) .item-detail-grid,body:not(.mobile-game) #gameWrap :is(.modal,dialog):not(.approved-window) .skill-detail-grid{padding:16px;gap:16px;grid-template-columns:minmax(100px,32%) minmax(0,1fr)}
body:not(.mobile-game) #gameWrap :is(.modal,dialog):not(.approved-window) .detail-info p,body:not(.mobile-game) #gameWrap :is(.modal,dialog):not(.approved-window) .skill-detail-info p{font-size:12px;line-height:1.7;color:#d0dac5}
body:not(.mobile-game) #gameWrap :is(.modal,dialog):not(.approved-window) .detail-info h3,body:not(.mobile-game) #gameWrap :is(.modal,dialog):not(.approved-window) .skill-detail-info h3{font-size:15px;font-weight:500}
body:not(.mobile-game) #gameWrap :is(.modal,dialog):not(.approved-window) .bag-tabs button,body:not(.mobile-game) #gameWrap :is(.modal,dialog):not(.approved-window) .settings-tabs button,body:not(.mobile-game) #gameWrap :is(.modal,dialog):not(.approved-window) .skill-tabs button{border:1px solid #626f5e;background:#122018;color:#b3c0a9;box-shadow:none;font-size:12px}
body:not(.mobile-game) #gameWrap :is(.modal,dialog):not(.approved-window) [role=tab][aria-selected=true]{background:linear-gradient(#67725588,#3b4c31);border-color:#aaa785;color:#f1e8cb}
body:not(.mobile-game) #gameWrap :is(.modal,dialog):not(.approved-window) .equipment-row,body:not(.mobile-game) #gameWrap :is(.modal,dialog):not(.approved-window) .inventory-item,body:not(.mobile-game) #gameWrap :is(.modal,dialog):not(.approved-window) .bag-empty-slot{background:#132119;border:1px solid #596a51;box-shadow:inset 1px 1px #90947822,inset -1px -1px #080f0a}
body:not(.mobile-game) #gameWrap :is(.modal,dialog):not(.approved-window) .skill-card.equipped{border-color:#b4aa7d;background:linear-gradient(95deg,#65724433,#16251b)}
body:not(.mobile-game) #gameWrap :is(.modal,dialog):not(.approved-window) .equipment-preview{border:1px solid #788569;background:radial-gradient(ellipse,#4e654034,#101c15);box-shadow:inset 0 0 0 2px #0f1b13}
body:not(.mobile-game) #gameWrap :is(.modal,dialog):not(.approved-window) .skill-detail-slots button,body:not(.mobile-game) #gameWrap :is(.modal,dialog):not(.approved-window) .detail-actions button,body:not(.mobile-game) #gameWrap :is(.modal,dialog):not(.approved-window) .item-action-pane button,body:not(.mobile-game) #gameWrap :is(.modal,dialog):not(.approved-window) .settings-actions button,body:not(.mobile-game) #gameWrap :is(.modal,dialog):not(.approved-window) .layout-controls button{border:1px solid #a3a078;background:linear-gradient(#617052,#34452d);color:#e8dfbd;box-shadow:inset 0 1px #a5a98655;min-height:35px;font-size:12px}
body:not(.mobile-game) #gameWrap :is(.modal,dialog):not(.approved-window) button:focus-visible{outline:2px solid #e4d1a7;outline-offset:3px}
body:not(.mobile-game) #gameWrap .modal:not(.approved-window) button:hover,body:not(.mobile-game) #gameWrap dialog:not(.approved-window) button:hover{filter:brightness(1.15)}

@media(max-width:1000px){



 body:not(.mobile-game) #gameWrap #monsterInfo{width:180px}
 body:not(.mobile-game) #gameWrap .mobile-menu button{width:37px}
}
@media(max-width:760px){
 body:not(.mobile-game) #gameWrap{--pc-slot:46px;--pc-edge:15px;--pc-attack:69px}



  body:not(.mobile-game) #gameWrap #monsterInfo{top:145px;left:125px;width:200px}
 body:not(.mobile-game) #gameWrap .mobile-menu{right:10px;gap:1px}
 body:not(.mobile-game) #gameWrap .mobile-menu button{width:33px}
 body:not(.mobile-game) #gameWrap .party-hud{top:210px;width:185px;max-height:110px}
 body:not(.mobile-game) #gameWrap .context-actions{left:86px;bottom:48px;max-width:calc(100% - 125px)}
 body:not(.mobile-game) #gameWrap .loot-feed{left:86px;bottom:95px}
}
@media(max-width:540px){
  body:not(.mobile-game) #gameWrap .place-plaque{top:141px}
 body:not(.mobile-game) #gameWrap .mobile-menu{top:111px}
 body:not(.mobile-game) #gameWrap #statusStrip{top:179px;max-width:160px}
 body:not(.mobile-game) #gameWrap #monsterInfo{top:181px;left:118px;width:185px}
 body:not(.mobile-game) #gameWrap .party-hud{top:230px}
 body:not(.mobile-game) #gameWrap .pc-quickbar{right:10px;padding:6px;gap:6px}
 body:not(.mobile-game) #gameWrap .quick-group.potions{padding-left:6px}
}
@media(max-height:520px){
 body:not(.mobile-game) #gameWrap{--pc-slot:44px;--pc-attack:64px}
 body:not(.mobile-game) #gameWrap #hudTools{bottom:40px}
 body:not(.mobile-game) #gameWrap .control-right{bottom:103px}
 body:not(.mobile-game) #gameWrap .pc-quickbar{bottom:22px;padding-top:6px;padding-bottom:6px}
}

/* Common desktop window action and list palette. */
body:not(.mobile-game) #gameWrap :is(.modal,dialog):not(.approved-window) :is(button,select,input){font-family:inherit;font-size:12px;color:#d0dac5;border-color:#788569;background-color:#17281d;min-height:30px;}
body:not(.mobile-game) #gameWrap :is(.modal,dialog):not(.approved-window) :is(.supply-row,.merchant-row,.skill-card){background:#142319;border-color:#606f55;}
body:not(.mobile-game) #gameWrap :is(.modal,dialog):not(.approved-window) :is(h3,strong){color:#e9dec1;}
body:not(.mobile-game) #gameWrap :is(.modal,dialog):not(.approved-window) :is(p,small){line-height:1.7;}
