/* Nexus Elements shell: render-blocking, single current visual owner. */
#player-window button{position:static;cursor:pointer;font:600 16px Georgia,serif;color:#ffe5b0;background:#082a36;border:1px solid #9d8148;border-radius:8px;padding:10px 18px;min-height:42px;box-shadow:inset 0 0 0 2px #b18d4515}
#player-window button:hover{background:#184451}
#player-window button:focus-visible,#player-window input:focus-visible{outline:3px solid #84eaff;outline-offset:3px}
#player-window .pw-tabs{display:flex;gap:10px}
#player-window kbd{font:12px system-ui;color:#b4d9e2;border:1px solid #7295a060;border-radius:4px;padding:2px 5px;margin-right:9px}
#player-window button[aria-pressed=true]{background:#36525a;border-color:#f3d28c}
#player-window{position:fixed;inset:0;margin:auto;width:min(1280px,96vw);height:min(850px,90dvh);max-width:none;max-height:none;padding:0;border:2px solid #caa55a;border-radius:16px;background:#051c28;color:#ffe5b0;overflow:hidden;box-shadow:0 15px 90px #000b}
#player-window::backdrop{background:#001018b8;backdrop-filter:blur(4px)}
#player-window .pw-bar{height:66px;display:flex;align-items:center;gap:20px;padding:10px 18px;border-bottom:1px solid #9c8048;background:#0b2a37;box-sizing:border-box}
#player-window h2{font:700 25px Georgia;margin:0;margin-right:auto}
#player-window .pw-close{font:24px Georgia;padding:4px 10px}
#player-window .pw-close kbd{margin:0;border:0}
#player-window .pw-tabs button{font-size:14px;padding:7px 12px}
#player-window .pw-content{height:calc(100% - 66px);overflow:auto;box-sizing:border-box}
#player-window iframe{border:0;width:100%;height:100%;display:block;background:#061419}
#player-window[data-mode=profile],#player-window[data-mode=character]{width:min(740px,94vw);height:min(600px,88dvh)}
#player-window .pw-profile{padding:30px 36px}
#player-window .pw-hero{display:flex;flex-direction:column;align-items:center;gap:10px;margin-bottom:28px}
#player-window .pw-hero .pd-portrait{width:96px;height:96px;}
#player-window h3{font:700 30px Georgia;margin:0}
#player-window .pw-hero p{margin:0;color:#adc9d2;font:14px system-ui}
#player-window form{max-width:480px;margin:auto}
#player-window form label{display:block;font:14px system-ui;margin-bottom:10px}
#player-window form>div{display:flex;gap:10px}
#player-window input{min-width:0;flex:1;padding:12px;color:#fbe4b4;background:#041823;border:1px solid #aa8a51;border-radius:7px;font:16px system-ui}
#player-window small{display:block;font:12px system-ui;color:#a1bcc5;margin-top:12px}
#player-window [role=status]{font:14px system-ui;color:#8ee4ef}
#player-window button:disabled{opacity:.45;cursor:default}
#player-window .pw-message{padding:30px;font:16px system-ui}
@media(max-width:650px){#player-window{width:98vw;height:94dvh;border-radius:10px}
#player-window .pw-bar{height:100px;flex-wrap:wrap;gap:5px;padding:8px 12px}
#player-window h2{font-size:21px}
#player-window .pw-tabs{order:3;width:100%;gap:6px;justify-content:center}
#player-window .pw-tabs button{font-size:12px;padding:5px 8px;min-height:34px}
#player-window .pw-close{min-height:32px}
#player-window .pw-close kbd{display:none}
#player-window .pw-content{height:calc(100% - 100px)}
#player-window .pw-profile{padding:20px 16px}
#player-window .pw-hero{margin-bottom:20px}
#player-window .pw-hero .pd-portrait{width:72px;height:72px;}}
.ce-icon{display:block;flex:none;width:54px;height:54px;color:#88a9aa;background-repeat:no-repeat;background-size:400% 200%;filter:drop-shadow(0 3px 5px #0009)}
.ce-icon svg{width:100%;height:100%;opacity:.65}
.ce-traveler-belt,.ce-field-satchel,.ce-explorer-backpack{background-image:url('/assets/profile-art-v1/items.png')}
.ce-traveler-belt{background-position:66.667% 0}
.ce-field-satchel{background-position:100% 0}
.ce-explorer-backpack{background-position:0 100%}
#player-dock#player-dock{box-sizing:border-box;color:#ffe5b0}#player-dock#player-dock[hidden],#player-dock#player-dock [hidden]{display:none!important}
#player-dock#player-dock button,#player-dock#player-dock select{cursor:pointer}#player-dock#player-dock button:disabled{cursor:default}
.pd-portrait{display:block;flex:none;border-radius:50%;background-color:#10333c;background-repeat:no-repeat}
.unified-dock .ud-original,.unified-dock [data-direction],.unified-dock #language,.unified-dock header .back,.unified-dock #idle-sound,.unified-dock #overlook-sound,.unified-dock .account-logout,.unified-dock .sr-close{opacity:0!important;pointer-events:none!important}

/* global-player-bar-v2.css — current behavior consolidated */
:root{--player-dock-height:calc(100vw * 96 / 1586 + env(safe-area-inset-bottom))}
@media(max-width:650px){:root{--player-dock-height:calc(100vw * 520 / 1787 + env(safe-area-inset-bottom))}}
body.global-player-bar{padding-bottom:var(--player-dock-height)}
body.global-player-bar #player-dock#player-dock{position:fixed;inset:auto 0 0;z-index:1100}
.global-dock-host{max-height:calc(100dvh - var(--player-dock-height) - 10px)!important;margin-bottom:calc(var(--player-dock-height) + 5px)!important}
#player-window.global-dock-host{bottom:var(--player-dock-height);margin:auto!important;max-height:calc(100dvh - var(--player-dock-height) - 12px)!important;overflow:visible}
#player-window .pw-content{overflow:auto}
body.global-player-bar .room-nav{display:none}
body.global-player-bar.magic-workshop .room{height:calc(100dvh - var(--player-dock-height));min-height:0}
body.global-bar-siege #unit-dock,body.global-bar-siege aside.command-deck,body.global-bar-siege .whole-hud-deck{bottom:var(--player-dock-height)!important}
@layer command{body.global-bar-siege.unit-management:not(.choosing) main{bottom:calc(var(--unit-dock-height) + var(--player-dock-height))!important}}
body.global-bar-siege:not(.unit-management) main{height:calc(100dvh - var(--control-head) - var(--deck-height) - var(--player-dock-height))!important}
body.global-player-bar #ud-skip{position:absolute;right:17%;bottom:calc(100% + 8px);min-height:42px;padding:8px 16px;background:#082a36;border:1px solid #c7a66b;color:#ffe5b0;font:700 16px Georgia;z-index:3}
body.global-player-bar #ud-skip[hidden]{display:none!important}
/* Scene styles often target every direct child of their dialog. */
body.global-player-bar #player-dock#player-dock#player-dock#player-dock{position:fixed!important;inset:auto 0 0!important;width:100vw!important;height:calc(var(--art-height) + env(safe-area-inset-bottom))!important;min-height:0!important;max-height:none!important;transform:none!important;padding:0!important;margin:0!important;flex:none!important}
#player-dock#player-dock::backdrop{background:transparent;pointer-events:none}
#player-window .pw-bar{position:relative;z-index:2;flex-shrink:0}
#player-window .pw-bar .pw-close{position:relative;flex:0 0 auto;align-self:center;z-index:3}

/* luxury-dock-v3.css — current behavior consolidated */
/* Each breakpoint displays one complete, unmodified ImageGen plate.
   Only empty canvas outside its painted border is clipped; no nine-slicing. */
#player-dock#player-dock.luxury-dock{--art-height:calc(100vw * 96 / 1586);height:calc(var(--art-height) + env(safe-area-inset-bottom));min-height:0;display:block!important;padding:0;margin:0;border:0;background:#041621;box-shadow:none;isolation:isolate;overflow:visible;z-index:1100}
#player-dock#player-dock.luxury-dock[hidden]{display:none!important}
#player-dock#player-dock.luxury-dock .luxury-dock-art{position:absolute;inset:0 0 auto;height:var(--art-height);overflow:hidden;pointer-events:none;z-index:-1}
#player-dock#player-dock.luxury-dock .luxury-dock-art img{position:absolute;left:0;top:calc(-100vw * 441 / 1586);display:block;width:100%;height:auto;max-width:none;user-select:none}
#player-dock#player-dock.luxury-dock .ud-routes,#player-dock#player-dock.luxury-dock .ud-controls,#player-dock#player-dock.luxury-dock .pd-actions{display:contents;margin:0;padding:0}
#player-dock#player-dock.luxury-dock :where(#ud-left,#ud-forward,#ud-back,#ud-right,#ud-sound,#ud-more,.pd-player,.pd-actions>button,#ud-language){position:absolute;box-sizing:border-box;top:calc(var(--art-height) * .2);height:calc(var(--art-height) * .62);min-height:0;min-width:0;margin:0;padding:0;border:0;border-radius:5px;background:transparent;box-shadow:none;color:#ffe3a0;font:700 clamp(12px,1.14vw,24px) Georgia,serif;cursor:pointer;text-shadow:0 2px 3px #000}
#player-dock#player-dock.luxury-dock :is(#ud-left,#ud-forward,#ud-back,#ud-right,#ud-sound,#ud-more){font-size:0;color:transparent;width:3%;transform:translateX(-50%)}
#player-dock#player-dock.luxury-dock #ud-left{left:3.47%}#player-dock#player-dock.luxury-dock #ud-forward{left:6.94%}#player-dock#player-dock.luxury-dock #ud-back{left:10.47%}#player-dock#player-dock.luxury-dock #ud-right{left:14.06%}
#player-dock#player-dock.luxury-dock #ud-sound{left:85.62%}#player-dock#player-dock.luxury-dock #ud-more{left:96.6%}
#player-dock#player-dock.luxury-dock #ud-language{position:absolute;top:calc(var(--art-height) * .2);height:calc(var(--art-height) * .62);padding:0;border:0;background:transparent;left:88.2%;width:6%;appearance:none;text-align:center;padding-right:1.6%;font-size:clamp(11px,1.05vw,20px)}#player-dock#player-dock.luxury-dock #ud-language option{background:#082a36;color:#ffe4a2;text-shadow:none}
#player-dock#player-dock.luxury-dock .pd-player{left:35.2%;top:calc(var(--art-height) * .11);width:12.3%;height:calc(var(--art-height) * .78);display:block}
#player-dock#player-dock.luxury-dock .pd-player .pd-portrait{position:absolute;left:18.3%;top:50%;transform:translate(-50%,-50%);height:72%;width:auto;aspect-ratio:1;box-sizing:border-box;border:0;box-shadow:none;border-radius:50%}
#player-dock#player-dock.luxury-dock .pd-player strong{position:absolute;left:44%;top:50%;transform:translateY(-50%);display:block;width:55%;max-width:none;font-size:clamp(10px,1.15vw,23px);line-height:1.1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center}
#player-dock#player-dock.luxury-dock .pd-actions>button[data-open=inventory]{left:48.2%;width:8.9%}#player-dock#player-dock.luxury-dock .pd-actions>button[data-open=character]{left:58.95%;width:8.9%}
#player-dock#player-dock.luxury-dock .pd-actions>button span{display:inline}#player-dock#player-dock.luxury-dock kbd{display:none}
#player-dock#player-dock.luxury-dock :is(button,select):focus-visible{outline:2px solid #fff1bd;outline-offset:1px}
#player-dock#player-dock.luxury-dock :is(button,select):hover:not(:disabled){background:#eac97816}
#player-dock#player-dock.luxury-dock :is(#ud-left,#ud-forward,#ud-back,#ud-right):disabled{opacity:1;background:#03182599;cursor:default}
#player-dock#player-dock.luxury-dock .pd-actions>button[aria-pressed=true]{background:#f3d37320}
#player-dock#player-dock.luxury-dock #ud-menu{position:absolute;inset:auto 8px calc(var(--art-height) + 8px) auto;min-width:180px;padding:10px;background:#082330;border:1px solid #b89951;box-shadow:0 5px 20px #0008;z-index:5}
#player-dock#player-dock.luxury-dock #ud-menu button{position:static;width:100%;height:auto;min-height:42px;margin:0;padding:8px 14px;color:#ffe5b0;background:#082a36;border:1px solid #9d8148;font:15px Georgia}
.pyramid-player-shell #player-window{max-height:calc(100dvh - var(--player-dock-height) - 12px);bottom:var(--player-dock-height)}
@media(max-width:650px){
 #player-dock#player-dock.luxury-dock{--art-height:calc(100vw * 520 / 1787)}
 #player-dock#player-dock.luxury-dock .luxury-dock-art img{top:calc(-100vw * 167 / 1787)}
 #player-dock#player-dock.luxury-dock :is(#ud-left,#ud-forward,#ud-back,#ud-right,#ud-more,.pd-actions>button){top:calc(var(--art-height) * .60);height:calc(var(--art-height) * .29);font-size:clamp(10px,3.1vw,18px)}
 #player-dock#player-dock.luxury-dock :is(#ud-left,#ud-forward,#ud-back,#ud-right,#ud-more){width:8%;font-size:0}
 #player-dock#player-dock.luxury-dock #ud-left{left:9%}#player-dock#player-dock.luxury-dock #ud-forward{left:18.1%}#player-dock#player-dock.luxury-dock #ud-back{left:27.1%}#player-dock#player-dock.luxury-dock #ud-right{left:36.2%}
 #player-dock#player-dock.luxury-dock .pd-actions>button[data-open=inventory]{left:42%;width:20.8%}#player-dock#player-dock.luxury-dock .pd-actions>button[data-open=character]{left:65.1%;width:20%}
 #player-dock#player-dock.luxury-dock #ud-more{left:90.5%;width:8%}
 #player-dock#player-dock.luxury-dock #ud-sound{left:81.5%;top:calc(var(--art-height) * .16);width:7%;height:calc(var(--art-height) * .26);font-size:0}
 #player-dock#player-dock.luxury-dock #ud-language{left:86.6%;top:calc(var(--art-height) * .16);width:8.8%;height:calc(var(--art-height) * .26);font-size:clamp(10px,2.8vw,16px);padding-right:3.3%}
 #player-dock#player-dock.luxury-dock .pd-player{left:44.5%;top:calc(var(--art-height) * .095);width:31.5%;height:calc(var(--art-height) * .34);display:block}
 #player-dock#player-dock.luxury-dock .pd-player .pd-portrait{left:17.3%;height:88%;width:auto}
 #player-dock#player-dock.luxury-dock .pd-player strong{left:41%;width:58%;font-size:clamp(10px,3vw,18px);display:block}
 #player-dock#player-dock.luxury-dock .pd-actions>button span{display:inline}
}
.pyramid-player-shell .acorn-game.pb-game.clockwork-game{height:calc(100dvh - var(--player-dock-height));inset:0 0 var(--player-dock-height)}
/* Pressed state must not paint over the generated musical-note artwork. */
#player-dock#player-dock.luxury-dock #ud-sound[aria-pressed]{background:transparent;border:0;box-shadow:none}
#player-dock#player-dock.luxury-dock #ud-sound[aria-pressed=false]{background:#03182555}
/* Approved restrained plate: straight sides and bottom reach viewport edges. */
#player-dock#player-dock.luxury-dock{--art-height:clamp(62px,5.76vw,110px);background:#031b24;border-radius:0!important}
#player-dock#player-dock.luxury-dock .luxury-dock-art img{top:auto;bottom:0;width:100%;height:calc(var(--art-height)*768/118)}
#player-dock#player-dock.luxury-dock :where(#ud-left,#ud-forward,#ud-back,#ud-right,#ud-sound,#ud-more,.pd-player,.pd-actions>button,#ud-language,#ud-map){top:calc(var(--art-height)*.18);height:calc(var(--art-height)*.66);font:500 clamp(10px,1vw,19px) system-ui,sans-serif;color:#efe6d0}
#player-dock#player-dock.luxury-dock :is(#ud-left,#ud-forward,#ud-back,#ud-right,#ud-sound,#ud-more){font-size:0;color:transparent;width:3.7%}
#player-dock#player-dock.luxury-dock #ud-left{left:2.8%}#player-dock#player-dock.luxury-dock #ud-forward{left:7%}#player-dock#player-dock.luxury-dock #ud-back{left:11.2%}#player-dock#player-dock.luxury-dock #ud-right{left:15.3%}
#player-dock#player-dock.luxury-dock .pd-player{left:40.8%;width:11.3%;top:calc(var(--art-height)*.13);height:calc(var(--art-height)*.76)}
#player-dock#player-dock.luxury-dock .pd-player .pd-portrait{left:22.7%;height:83%}
#player-dock#player-dock.luxury-dock .pd-player strong{left:45%;width:52%;font:500 clamp(10px,1vw,19px) system-ui,sans-serif}
#player-dock#player-dock.luxury-dock .pd-actions>button[data-open=inventory]{left:53.7%;width:9.8%;padding-left:3%}
#player-dock#player-dock.luxury-dock .pd-actions>button[data-open=character]{left:64%;width:10.1%;padding-left:3%}
#player-dock#player-dock.luxury-dock #ud-map{position:absolute;left:74.8%;width:8.9%;padding:0 0 0 3%;border:0;background:transparent;color:#f6d782;cursor:pointer}
#player-dock#player-dock.luxury-dock #ud-sound{left:86.75%;width:3.3%}
#player-dock#player-dock.luxury-dock #ud-language{left:89.1%;width:6.4%;padding-right:2.3%;font:500 clamp(10px,1vw,19px) system-ui}
#player-dock#player-dock.luxury-dock #ud-more{left:97.6%;width:3.2%}
#nexus-dock-map{width:min(1000px,96vw);padding:12px;background:#061e26;color:#ffe5b0;border:1px solid #c09b54;border-radius:8px;overflow:auto}
#nexus-dock-map header{display:flex;justify-content:space-between;align-items:center}#nexus-dock-map>header button{min-width:44px;min-height:44px;background:#102e38;color:#ffe5b0;border:1px solid #b38b46;border-radius:6px}#nexus-dock-map>img{display:block;width:100%;max-height:65vh;object-fit:contain}
@media(max-width:650px){
 #player-dock#player-dock.luxury-dock{--art-height:128px}
 #player-dock#player-dock.luxury-dock .luxury-dock-art img{top:auto;bottom:0;height:calc(var(--art-height)*724/407)}
 #player-dock#player-dock.luxury-dock :is(#ud-left,#ud-forward,#ud-back,#ud-right,#ud-more,.pd-actions>button,#ud-map){top:56%;height:37%;font-size:11px}
 #player-dock#player-dock.luxury-dock :is(#ud-left,#ud-forward,#ud-back,#ud-right,#ud-more){font-size:0;width:7.2%}
 #player-dock#player-dock.luxury-dock #ud-left{left:5%}#player-dock#player-dock.luxury-dock #ud-forward{left:13.1%}#player-dock#player-dock.luxury-dock #ud-back{left:21.3%}#player-dock#player-dock.luxury-dock #ud-right{left:29.5%}
 #player-dock#player-dock.luxury-dock .pd-player{left:40.3%;width:34.7%;top:8%;height:37%}
 #player-dock#player-dock.luxury-dock .pd-player .pd-portrait{left:10.5%;height:88%}
 #player-dock#player-dock.luxury-dock .pd-player strong{left:25%;width:73%;font-size:11px}
 #player-dock#player-dock.luxury-dock .pd-actions>button[data-open=inventory]{left:34.8%;width:20.3%;padding-left:6%}
 #player-dock#player-dock.luxury-dock .pd-actions>button[data-open=character]{left:56.6%;width:21.5%;padding-left:6%}
 #player-dock#player-dock.luxury-dock #ud-map{left:79.3%;width:9.5%;padding:0;font-size:0}
 #player-dock#player-dock.luxury-dock #ud-more{left:94.5%;width:8.5%}
 #player-dock#player-dock.luxury-dock #ud-sound{left:80.1%;width:7.5%;top:8%;height:37%;font-size:0}
 #player-dock#player-dock.luxury-dock #ud-language{left:85.2%;width:13.6%;top:8%;height:37%;padding-right:5%;font-size:12px}
}

/* character-equipment-v7.css — current behavior consolidated */
#player-window[data-mode=character]{width:min(1400px,98vw);height:calc(100dvh - var(--player-dock-height) - 20px);background:#071d25}
#player-window[data-mode=character] .pw-content{min-height:0;overflow:auto;flex:1}
.eq-sheet{min-height:100%;display:grid;grid-template-columns:minmax(0,1fr) 280px;color:#f5dfb3;background:#081c23;font:14px system-ui}
.eq-main{min-width:0;display:flex;flex-direction:column;justify-content:center;align-items:center;background:radial-gradient(ellipse,#19343b,#05141c);padding:8px}
#player-window .eq-name{font:600 24px Georgia;margin:4px 0 8px;text-align:center}
.eq-paper{position:relative;width:min(100%,calc((100dvh - var(--player-dock-height) - 170px)*1.5));aspect-ratio:1.5;flex:none;isolation:isolate}
.eq-hero{display:block;width:100%;height:100%;object-fit:contain;border-radius:8px}
.eq-mask{position:absolute;left:46.55%;top:5.5%;width:7.82%;height:11.72%;filter:drop-shadow(0 1px 1px #24150999);pointer-events:none}
#player-window .eq-slot{position:absolute;left:var(--side);top:calc(8% + var(--row)*17%);width:14%;height:14%;min-height:0;padding:3px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(140deg,#183942ef,#061821f5);border:1px solid #98763e;border-radius:7px;box-shadow:inset 0 0 0 2px #d0a65320,0 3px 8px #0006;color:#f7e0b2;font:12px system-ui;cursor:pointer}
#player-window .eq-slot[aria-pressed=true]{border:2px solid #ffdb86;background:#21434be8;box-shadow:0 0 12px #e9bd5944}
.eq-slot.eq-future{filter:saturate(.3);opacity:.7}.eq-slot.eq-filled{border-color:#ecc778}
.eq-slot .eq-glyph{font:24px Georgia;font-style:normal;color:#adbbb3;line-height:1}.eq-slot small{font-size:9px;color:#b1bcb9}.eq-slot span{white-space:nowrap}
.eq-item{width:46px;height:46px;object-fit:contain;flex:none}.eq-slot .eq-item{width:70%;height:65%;object-fit:contain}.eq-slot .ce-icon{width:36px;height:36px;font-size:0}
.eq-capacity{margin:7px;font-size:12px;color:#bdc9c8}
.eq-inspector{padding:20px 16px;overflow:auto;max-height:calc(100dvh - var(--player-dock-height) - 130px);border-left:1px solid #8f723c;background:linear-gradient(#12323b,#05151c)}
#player-window .eq-inspector h3{font:600 26px Georgia;margin:0 0 16px}.eq-inspector p{font:13px/1.5 system-ui;color:#c0ceca}
.eq-preview{display:block;width:150px;height:150px;margin:0 auto}
#player-window .eq-choice,#player-window .eq-action,#player-window .eq-retry,#player-window .eq-inventory{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:6px;min-height:44px;width:100%;margin:8px 0;padding:8px;border:1px solid #a18348;border-radius:6px;background:#173943;color:#fce8b9;font:14px system-ui;cursor:pointer}
#player-window .eq-choice span{flex:1;min-width:80px;text-align:left;overflow-wrap:anywhere}.eq-choice small{width:100%;color:#e8c67e}.eq-status:empty{display:none}
#player-window .eq-action{background:linear-gradient(#70572d,#44331b)}
#player-window .eq-sheet button:disabled{cursor:default;opacity:.5}#player-window .eq-sheet button:focus-visible{outline:3px solid #ffe5a1;outline-offset:2px}
@media(max-width:700px){.eq-sheet{grid-template-columns:1fr}.eq-paper{width:100%}.eq-main{padding:4px}.eq-inspector{border-left:0;border-top:1px solid #8f723c;max-height:none;padding:12px}.eq-preview{width:100px;height:100px;float:left;margin:0 10px 5px 0}#player-window .eq-name{font-size:20px}.eq-slot span{font-size:9px}.eq-slot .eq-glyph{font-size:17px}.eq-slot small{font-size:7px}#player-window .eq-slot{width:15%;height:15%;min-height:36px}.eq-slot .eq-item{width:25px;height:25px}.eq-capacity{margin:4px}.eq-inspector p{font-size:12px}}
@media(min-width:701px) and (max-height:650px){.eq-sheet{grid-template-columns:1fr 230px}.eq-inspector{padding:8px}.eq-paper{width:min(100%,calc((100dvh - var(--player-dock-height) - 115px)*1.5))}#player-window .eq-name{font-size:17px;margin:0}.eq-capacity{margin:2px}.eq-slot span{font-size:9px}.eq-slot small{font-size:7px}.eq-slot .eq-glyph{font-size:16px}.eq-slot .eq-item{width:25px;height:25px}}
@media(max-width:700px),(max-height:650px){
 #player-window .eq-slot{padding:2px;gap:0;line-height:1.1}
 .eq-slot.eq-future .eq-glyph{display:none}
 .eq-slot small{line-height:1.1}.eq-slot span{line-height:1.1}
 .eq-slot .eq-item{width:20px;height:20px}
 .eq-slot .ce-icon{width:20px;height:20px}
}

.eq-mask{left:47.1354%;top:6.4453%;width:7.2917%;height:10.7422%;filter:none}.eq-worn-detail{display:block;width:min(100%,240px);height:auto;margin:0 auto 12px;border-radius:8px;box-shadow:0 4px 18px #0006}@media(max-width:700px){.eq-worn-detail{width:130px;float:left;margin:0 12px 8px 0}}

.eq-mask{left:46.875%;top:5.2734375%;width:7.5520833%;height:12.6953125%}

/* Approved stylized adventurer, calibrated physical mask layer. */
.eq-mask{left:42.3177083%;top:9.27734375%;width:18.2291667%;height:28.3203125%}
.pd-portrait{background-image:url('/assets/adventurer-v6/character.png')!important;background-size:480% 320%!important;background-position:51.8092% 5.6818%!important;background-repeat:no-repeat!important}
/* Rendered equipment room: live controls on workshop materials. */
#player-window{border-color:#71502d;border-radius:8px;background:#21190f}
#player-window .pw-bar{background:linear-gradient(90deg,#20140dea,#4c301be6,#20140dea),url('/assets/equipment-room-v7/panel.png') center 5%/cover;border-bottom:2px solid #a3773e;box-shadow:0 4px 15px #0008;color:#ffe2a5}
#player-window .pw-bar h2{text-shadow:0 2px 3px #000;letter-spacing:.03em}
#player-window .pw-bar button{background:linear-gradient(#604326,#2c2116);border:1px solid #bc9154;border-radius:5px;box-shadow:inset 0 1px #efce8655,0 2px 3px #0009;color:#ffdf9d}
#player-window .pw-bar button[aria-pressed=true]{background:linear-gradient(#806335,#4e371f);box-shadow:inset 0 0 0 1px #d8b36e,0 0 12px #efb85933}
#player-window .pw-bar kbd{display:none}
#player-window[data-mode=character]{width:100vw;height:calc(100dvh - var(--player-dock-height));border:0;border-radius:0;box-shadow:none}
#player-window[data-mode=character] .pw-bar{height:58px;padding:7px 24px}
#player-window[data-mode=character] .pw-content{height:calc(100% - 58px);overflow:auto}
.eq-sheet{height:100%;min-height:100%;grid-template-columns:minmax(0,1fr) clamp(270px,23vw,360px);background:#291c12 url('/assets/equipment-room-v7/panel.png') center/cover;gap:0}
.eq-main{position:relative;isolation:isolate;overflow:hidden;background:#302419;padding:0 10px 6px;justify-content:center;gap:0}
.eq-main:before{content:'';position:absolute;inset:-20px;z-index:-1;background:linear-gradient(#17282c44,#1a120944),url('/assets/adventurer-v6/character.png') center/cover;filter:blur(14px) brightness(.62)}
#player-window .eq-name{position:relative;margin:10px 0 4px;padding:9px 42px;min-width:180px;font:600 24px Georgia;color:#ffe3a4;text-shadow:0 2px 3px #000;background:linear-gradient(90deg,#271b13bb,#604128ed,#271b13bb);border-top:1px solid #c1975966;border-bottom:1px solid #b18446aa;border-radius:40% 40% 25% 25%/15%;box-shadow:0 4px 14px #0004}
.eq-paper{width:min(100%,calc((100dvh - var(--player-dock-height) - 145px)*1.5));max-height:none}
.eq-hero{border-radius:0;mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}
#player-window .eq-slot{width:9.333333%;height:14%;min-height:0;padding:0;border:0;border-radius:6px;background:transparent!important;box-shadow:none;overflow:visible;isolation:isolate;transition:filter .15s,transform .15s}
#player-window .eq-slot:before{content:'';position:absolute;inset:0;background:url('/assets/equipment-room-v7/slots.png');background-size:400% 300%;background-position:var(--socket-x,0%) var(--socket-y,0%);z-index:-1;border-radius:5px;box-shadow:0 4px 8px #0009}
#player-window .eq-slot[data-equipment=head]{--socket-x:66.666667%;--socket-y:100%}
#player-window .eq-slot[data-equipment=neck]{--socket-x:33.333333%;--socket-y:0%}
#player-window .eq-slot[data-equipment=shoulders]{--socket-x:66.666667%;--socket-y:0%}
#player-window .eq-slot[data-equipment=chest]{--socket-x:100%;--socket-y:0%}
#player-window .eq-slot[data-equipment=hands]{--socket-x:0%;--socket-y:50%}
#player-window .eq-slot[data-equipment=belt]{--socket-x:33.333333%;--socket-y:50%}
#player-window .eq-slot[data-equipment=legs]{--socket-x:66.666667%;--socket-y:50%}
#player-window .eq-slot[data-equipment=feet]{--socket-x:100%;--socket-y:50%}
#player-window .eq-slot[data-equipment=satchel]{--socket-x:0%;--socket-y:100%}
#player-window .eq-slot[data-equipment=backpack]{--socket-x:33.333333%;--socket-y:100%}
#player-window .eq-slot[aria-pressed=true]{border:0;box-shadow:0 0 0 2px #ebc275,0 0 16px #ffc66777}
#player-window .eq-slot:hover:not(:disabled){transform:translateY(-2px);filter:brightness(1.16)}
#player-window .eq-slot .eq-glyph,#player-window .eq-slot .ce-icon{display:none}
#player-window .eq-slot .eq-item{width:84%;height:84%;object-fit:contain;filter:drop-shadow(0 2px 2px #000a)}
#player-window .eq-slot.eq-future{opacity:.85;filter:saturate(.55)}
#player-window .eq-slot.eq-future:before{filter:brightness(.68)}
#player-window .eq-slot span{position:absolute;top:100%;left:50%;transform:translateX(-50%);font:600 clamp(9px,.8vw,13px) Georgia;white-space:nowrap;color:#ffe2aa;text-shadow:0 2px 2px #000,0 0 5px #000;background:#261b10bb;padding:1px 6px;border-radius:4px}
#player-window .eq-slot small{position:absolute;bottom:7%;right:7%;margin:0;padding:1px 3px;font:9px system-ui;color:#f4deb2;background:#20170fdf;border-radius:3px}
.eq-empty-mask{opacity:.65;filter:saturate(.5)!important}
.eq-capacity{font:13px Georgia;color:#ffdf9d;text-shadow:0 1px 3px #000;background:#261b10aa;padding:5px 15px;border-radius:30px;margin:5px 0}
.eq-inspector{align-self:stretch;position:relative;min-height:0;max-height:none;margin:8px 8px 8px 0;padding:clamp(45px,7vh,70px) 11% 35px;border:0;background:url('/assets/equipment-room-v7/panel.png') center/100% 100%;box-shadow:-7px 0 25px #0005;scrollbar-width:thin;scrollbar-color:#9a7540 #172a29}
#player-window .eq-inspector h3{font:600 27px Georgia;text-align:center;color:#ffe5b2;text-shadow:0 2px 3px #000;padding-bottom:12px;margin-bottom:15px;border-bottom:1px solid #b58b4b66}
.eq-inspector p{color:#dfd1b1;font:14px/1.55 Georgia}.eq-worn-detail{border:2px solid #997541;box-shadow:0 5px 15px #000a;border-radius:6px;box-sizing:border-box}
#player-window .eq-choice,#player-window .eq-action,#player-window .eq-retry,#player-window .eq-inventory{background:linear-gradient(#6e4e2d,#352419);border:1px solid #bd965c;box-shadow:inset 0 1px 0 #e9c98655,inset 0 -3px 0 #20160f88,0 3px 5px #0008;color:#ffdfaa;font:600 15px Georgia;border-radius:5px;padding:10px}
#player-window .eq-action{background:linear-gradient(#a88039,#69471f);border-color:#e2b96b;color:#fff2c9}
#player-window .eq-choice:hover:not(:disabled),#player-window .eq-action:hover:not(:disabled),#player-window .eq-inventory:hover{filter:brightness(1.15)}
@media(max-width:700px){
 #player-window[data-mode=character] .pw-bar{height:52px;flex-wrap:nowrap;padding:5px 9px;gap:5px}
 #player-window[data-mode=character] .pw-bar h2{font-size:19px}
 #player-window[data-mode=character] .pw-tabs{display:none}
 #player-window[data-mode=character] .pw-content{height:calc(100% - 52px)}
 .eq-sheet{height:auto;grid-template-columns:1fr;background:#291c12}
 .eq-main{padding:0 3px 6px}
 #player-window .eq-name{font-size:20px;margin:5px 0 0;padding:6px 28px}
 .eq-paper{width:100%;min-height:0}
 #player-window .eq-slot{width:11%;height:16.5%;left:clamp(2%,var(--side),87%);min-height:0}
 #player-window .eq-slot span{font-size:8px;padding:0 3px;top:91%;z-index:2}
 #player-window .eq-slot small{font-size:7px;bottom:10%}
 .eq-capacity{font-size:12px;padding:4px 12px;margin:2px 0}
 .eq-inspector{margin:0 6px 6px;padding:42px 12% 32px;min-height:270px;background-size:100% 100%;box-shadow:none}
 #player-window .eq-inspector h3{font-size:23px;padding-bottom:6px;margin-bottom:9px}
 .eq-inspector p{font-size:13px}.eq-worn-detail{width:130px}
}
@media(min-width:701px) and (max-height:650px){
 #player-window[data-mode=character] .pw-bar{height:44px;padding:3px 12px}
 #player-window[data-mode=character] .pw-content{height:calc(100% - 44px)}
 .eq-sheet{grid-template-columns:minmax(0,1fr) 250px}
 #player-window .eq-name{font-size:17px;margin:2px;padding:3px 24px}
 .eq-paper{width:min(100%,calc((100dvh - var(--player-dock-height) - 99px)*1.5))}
 .eq-capacity{font-size:11px;padding:2px 8px;margin:2px}.eq-inspector{padding:35px 11% 20px;margin:3px 4px 3px 0}
 #player-window .eq-inspector h3{font-size:21px;margin-bottom:6px;padding-bottom:5px}
 #player-window .eq-slot span{font-size:8px}#player-window .eq-slot small{font-size:7px}
}
#player-window[data-mode=character] .pw-bar{background:linear-gradient(90deg,#21160ee8,#694525e8,#21160ee8),url('/assets/equipment-room-v7/panel.png') center top/cover}
#player-window .eq-slot.eq-filled:after{content:'•';position:absolute;right:9%;top:6%;font-size:20px;line-height:1;color:#ffdc86;text-shadow:0 0 5px #ffc248}
#player-window .eq-slot:not(.eq-filled):not(.eq-future):not([data-equipment=head]):before{filter:saturate(.55) brightness(.76)}

/* inventory-shell-v1.css — current behavior consolidated */
#player-window[data-mode=inventory]{border:0;border-radius:0;box-shadow:none;width:100vw;height:calc(100dvh - var(--player-dock-height))}
#player-window[data-mode=inventory] .pw-bar{height:58px;padding:7px 24px;background:linear-gradient(90deg,#21160ee8,#694525e8,#21160ee8),url('/assets/equipment-room-v7/panel.png') center top/cover}
#player-window[data-mode=inventory] .pw-content{height:calc(100% - 58px);overflow:hidden}
@media(max-width:650px){#player-window[data-mode=inventory] .pw-bar{height:52px;flex-wrap:nowrap;padding:5px 9px;gap:5px}#player-window[data-mode=inventory] .pw-tabs{display:none}#player-window[data-mode=inventory] .pw-content{height:calc(100% - 52px)}}

/* Reserve the final geometry before any module or media completes. */
:root{--player-dock-height:calc(clamp(62px,5.76vw,110px) + env(safe-area-inset-bottom))}
@media(max-width:650px){:root{--player-dock-height:calc(128px + env(safe-area-inset-bottom))}}
#player-dock#player-dock:not([data-shell-ready]){visibility:hidden!important;pointer-events:none!important}
#player-dock#player-dock[data-art-failed] :is(#ud-left,#ud-forward,#ud-back,#ud-right,#ud-sound,#ud-more,#ud-map){color:#ffe5b0;font-size:18px;background:#082a36;border:1px solid #9d8148}

/* Workshop feedback: current scene materials and real item artwork. */
#studio button:active:not(:disabled),#player-window button:active:not(:disabled),#player-dock#player-dock button:active:not(:disabled){filter:brightness(1.18)}
#studio button:focus-visible{outline:3px solid #a6f0ed;outline-offset:3px}
#studio[aria-busy=true]{cursor:progress}#studio[aria-busy=true] footer span::before{content:'◌ ';display:inline-block;animation:wf-spin 1s linear infinite}
.wf-notice{position:fixed;bottom:calc(var(--player-dock-height) + 12px);left:50%;transform:translateX(-50%);max-width:min(460px,88vw);box-sizing:border-box;padding:12px 20px;border:1px solid #c6a162;border-radius:10px;background:#092731f5;color:#ffe4ae;box-shadow:0 6px 24px #0008;font:600 16px/1.4 Georgia;text-align:center;pointer-events:none;z-index:1200}
.wf-flying-pot{position:fixed;width:28px;height:35px;background:linear-gradient(90deg,#ffffff40,transparent 40%,#0003),var(--pigment);border:2px solid #e7c788;border-radius:6px 6px 10px 10px;box-shadow:0 0 15px var(--pigment);pointer-events:none;z-index:1201}
.wf-flying-pot::before{content:'';position:absolute;inset:-5px -3px auto;height:6px;border-radius:3px;background:#dab781}
#studio.wf-complete{width:min(1080px,96vw);padding:0;overflow:auto;border:1px solid #cfa661;background:#162824 url('/assets/dock-approved-v2/workshop-last.png') center/cover;color:#ffe5b0}
.wf-result{box-sizing:border-box;min-height:min(610px,calc(100dvh - var(--player-dock-height) - 20px));padding:clamp(18px,3vw,42px);display:grid;grid-template-columns:minmax(0,1.1fr) minmax(260px,.9fr);gap:24px;align-items:center;background:linear-gradient(90deg,#102621c9,#102621f5)}
.wf-result-art{display:grid;place-items:center;position:relative;min-width:0;background:radial-gradient(ellipse,#e5bb5b38,transparent 68%)}
.wf-result-art canvas{width:min(100%,420px);height:auto;aspect-ratio:1;filter:drop-shadow(0 14px 12px #0008);animation:wf-arrive .45s ease-out both}
.wf-result-copy>small{font:700 12px system-ui;letter-spacing:.14em;color:#aac8bd}
#studio .wf-result-copy h2{font:700 clamp(25px,3vw,42px)/1.12 Georgia;margin:12px 0 20px;color:#ffe7af}
.wf-result-copy p{font:16px/1.6 system-ui;color:#cddbd0}.wf-result-copy strong{color:#ffe4ac}
.wf-result-actions{display:grid;gap:10px;margin-top:24px}#studio .wf-result-actions button{min-height:48px;white-space:normal;font:600 17px Georgia;padding:12px 18px}
.wf-result-actions .wf-primary{background:linear-gradient(#c39852,#775026);border-color:#e3bd77;color:#fff0ce;box-shadow:inset 0 1px #ffe3a044,0 4px 12px #0004}
.wf-result-copy [role=status]{min-height:24px;font-size:14px}.wf-result-copy [data-act=close]{margin-top:8px;background:transparent;border-color:#9d814866}
#studio .pm-next{min-height:44px;justify-self:center;padding:8px 20px;border-color:#efd08b;background:#725025;color:#fff0c7}
.magic-workshop .wf-hint::after,#player-workshop .wf-hint::after{content:'✦';position:absolute;left:50%;top:35%;color:#ffe6aa;font:24px Georgia;text-shadow:0 0 15px #f9c460;animation:wf-hint 2.4s ease-in-out 2;pointer-events:none}
.eq-mask.wf-equipped{animation:wf-mask-on .45s ease-out}.eq-slot.wf-equipped{animation:wf-glow .7s ease-out}
@keyframes wf-spin{to{transform:rotate(360deg)}}@keyframes wf-arrive{from{opacity:.4;transform:translateY(10px) scale(.96)}to{opacity:1;transform:none}}
@keyframes wf-mask-on{from{opacity:.1;filter:brightness(1.5)}to{opacity:1}}@keyframes wf-glow{50%{filter:brightness(1.7)}}@keyframes wf-hint{0%,100%{opacity:0;scale:.8}50%{opacity:.9;scale:1.1}}
@media(max-width:650px){.wf-result{grid-template-columns:1fr;gap:6px;padding:18px;min-height:0}.wf-result-art canvas{width:190px}.wf-result-copy{text-align:center}#studio .wf-result-copy h2{margin:6px 0 12px;font-size:27px}.wf-result-copy p{margin:8px 0}.wf-result-actions{margin-top:16px}.wf-notice{font-size:14px;padding:10px 14px}}
@media(prefers-reduced-motion:reduce){#studio[aria-busy=true] footer span::before,.wf-result-art canvas,.eq-mask.wf-equipped,.eq-slot.wf-equipped,.magic-workshop .wf-hint::after,#player-workshop .wf-hint::after{animation:none!important}.magic-workshop .wf-hint::after,#player-workshop .wf-hint::after{opacity:.6}}
#studio.wf-complete{height:min(680px,calc(100dvh - var(--player-dock-height) - 20px))}
#studio.wf-complete .wf-result{min-height:100%}
#studio .wf-result-actions .wf-primary{background:linear-gradient(#c39852,#775026);border-color:#e3bd77;color:#fff0ce}
@media(max-width:650px){#studio.wf-complete{height:auto}#studio.wf-complete .wf-result{min-height:0}}
