/* 模拟器与榜单实装共用300×426原图坐标、背景和技能边框；数据入口各自保持独立。 */
#equipment-dialog.gear-ui .gear-build.d3-paperdoll{width:316px;box-sizing:border-box;padding:0 7px 14px;background:#181818}
.gear-ui .d3-paperdoll .gear-section{display:none}.gear-ui .d3-paperdoll .gear-build-heading{padding:10px 2px}
/* 固定外层高度，长套装说明只在脱离排版的浮层内滚动。 */
#equipment-dialog.gear-ui{width:min(380px,calc(100vw - 16px));height:min(880px,calc(100dvh - 24px));max-height:calc(100dvh - 24px);padding:16px;scrollbar-gutter:stable;scrollbar-width:thin;overscroll-behavior:contain}
#equipment-dialog.gear-ui #equipment-content{grid-template-columns:minmax(0,1fr);justify-items:center;gap:0}
#equipment-dialog.gear-ui #equipment-hover.is-pinned{pointer-events:auto;user-select:text;overscroll-behavior:contain}
#equipment-dialog.gear-ui .gear-preview-close{position:sticky;bottom:4px;display:block;margin:8px 4px 0 auto;padding:0 7px;border:1px solid #685538;background:#161616;color:#ddd;font-size:20px}
.gear-ui .d3-paperdoll .skill-button{cursor:pointer}
.gear-ui .d3-paperdoll .paperdoll-active small{display:none}
.gear-ui .d3-paperdoll{background:#181818}
.gear-ui .d3-paperdoll .panel-heading{display:none}
.gear-ui .d3-paperdoll .actor-tabs{padding:8px 10px;border:0;gap:5px;z-index:5}
.gear-ui .d3-paperdoll .actor-tabs button{display:flex;align-items:center;gap:5px;text-align:left;padding:2px 4px;border:2px solid transparent;min-height:36px;background:transparent;color:#aaa}
.gear-ui .d3-paperdoll .actor-tabs button[aria-pressed=true]{border-color:#008cff;background:#111;color:#fff}
.gear-ui .d3-paperdoll .actor-tabs button::before{content:"";width:26px;height:26px;flex:none;background:var(--portrait) center/contain no-repeat}
.gear-ui .d3-paperdoll :is(#paper-wrap,.paperdoll-wrap),.gear-ui .d3-paperdoll :is(#paper-wrap,.paperdoll-wrap).follower-wrap{width:300px;height:426px;margin:0 auto;transform:none}
.gear-ui .d3-paperdoll :is(#paper,.paperdoll-board){width:300px;height:426px;transform:none;zoom:1;border:0;box-shadow:inset 0 0 2px 2px #181818;background-color:#30291e;background-size:300px 426px;overflow:visible}
.gear-ui .d3-paperdoll :is(#paper,.paperdoll-board)::before{display:none}
.gear-ui .d3-paperdoll :is(#paper,.paperdoll-board) .gear-item{padding:0;border:0;border-radius:0;box-shadow:none;background:var(--slot-frame) center/100% 100% no-repeat;overflow:visible}
.gear-ui .d3-paperdoll :is(#paper,.paperdoll-board) .gear-item.empty{background:none;box-shadow:none;opacity:1}
.gear-ui .d3-paperdoll :is(#paper,.paperdoll-board) .gear-item:not(.empty)::before{content:"";position:absolute;inset:0;border-radius:4px;background:var(--gear-large-bg) center/100% 100% no-repeat;pointer-events:none}
.gear-ui .d3-paperdoll :is(#paper,.paperdoll-board) :is(.gear-slot-6,.gear-slot-11,.gear-slot-12,.gear-slot-13):not(.empty)::before{background-image:var(--gear-small-bg)}
.gear-ui .d3-paperdoll :is(#paper,.paperdoll-board) .ethereal-frame::before{background:linear-gradient(135deg,#77aca255,#a2dedba0,#305a5655)}
.gear-ui .d3-paperdoll :is(#paper,.paperdoll-board) .sanctified-frame::before{background:repeating-linear-gradient(135deg,#b5c4c955,#ecf5f588 2px,#55666b66 3px)}
.gear-ui .d3-paperdoll :is(#paper,.paperdoll-board) .gear-item.selected{outline:1px solid #efda96;outline-offset:2px}
.gear-ui .d3-paperdoll :is(#paper,.paperdoll-board) .gear-item:focus-visible{outline:2px solid #008cff;outline-offset:2px}
.gear-ui .d3-paperdoll :is(#paper,.paperdoll-board) .gear-item:hover{filter:brightness(1.1)}
.gear-ui .d3-paperdoll :is(#paper,.paperdoll-board) .gear-slot-label,.gear-ui .d3-paperdoll .follower-bottom .gear-slot-label{display:none}
.gear-ui .d3-paperdoll :is(#paper,.paperdoll-board) .gear-item .gear-icon{position:absolute;left:var(--icon-x);top:var(--icon-y);max-width:none;max-height:none;transform:none;filter:none;z-index:2}
.gear-ui .d3-paperdoll :is(#paper,.paperdoll-board) .gear-slot-1{left:118px;top:9px;width:62px;height:62px;--icon-x:-1px;--icon-y:-33px;--slot-frame:url('/gear-assets/paperdoll/frame-head.png');z-index:2}
.gear-ui .d3-paperdoll :is(#paper,.paperdoll-board) .gear-slot-2{left:110px;top:77px;width:78px;height:111px;--icon-x:-2px;--icon-y:-27px;--slot-frame:url('/gear-assets/paperdoll/frame-torso.png')}
.gear-ui .d3-paperdoll :is(#paper,.paperdoll-board) .gear-slot-3{left:227px;top:285px;width:60px;height:124px;--icon-x:-2px;--icon-y:-2px;--slot-frame:url('/gear-assets/paperdoll/frame-offhand.png')}
.gear-ui .d3-paperdoll :is(#paper,.paperdoll-board) .gear-slot-4{left:11px;top:285px;width:60px;height:124px;--icon-x:-2px;--icon-y:-2px;--slot-frame:url('/gear-assets/paperdoll/frame-mainhand.png')}
.gear-ui .d3-paperdoll :is(#paper,.paperdoll-board) .gear-slot-5{left:10px;top:130px;width:62px;height:83px;--icon-x:-1px;--icon-y:-23px;--slot-frame:url('/gear-assets/paperdoll/frame-hands.png')}
.gear-ui .d3-paperdoll :is(#paper,.paperdoll-board) .gear-slot-6{left:110px;top:196px;width:78px;height:29px;--icon-x:7px;--icon-y:-18px;--slot-frame:url('/gear-assets/paperdoll/frame-waist.png')}
.gear-ui .d3-paperdoll :is(#paper,.paperdoll-board) .gear-slot-7{left:118px;top:326px;width:62px;height:84px;--icon-x:-1px;--icon-y:-22px;--slot-frame:url('/gear-assets/paperdoll/frame-feet.png')}
.gear-ui .d3-paperdoll :is(#paper,.paperdoll-board) .gear-slot-8{left:36px;top:31px;width:62px;height:84px;--icon-x:-1px;--icon-y:-22px;--slot-frame:url('/gear-assets/paperdoll/frame-shoulders.png')}
.gear-ui .d3-paperdoll :is(#paper,.paperdoll-board) .gear-slot-9{left:118px;top:234px;width:62px;height:84px;--icon-x:-1px;--icon-y:-22px;--slot-frame:url('/gear-assets/paperdoll/frame-legs.png')}
.gear-ui .d3-paperdoll :is(#paper,.paperdoll-board) .gear-slot-10{left:226px;top:130px;width:62px;height:83px;--icon-x:-1px;--icon-y:-23px;--slot-frame:url('/gear-assets/paperdoll/frame-wrists.png')}
.gear-ui .d3-paperdoll :is(#paper,.paperdoll-board) .gear-slot-11{left:22px;top:230px;width:38px;height:38px;--icon-x:-13px;--icon-y:-13px;--slot-frame:url('/gear-assets/paperdoll/frame-leftfinger.png')}
.gear-ui .d3-paperdoll :is(#paper,.paperdoll-board) .gear-slot-12{left:238px;top:230px;width:38px;height:38px;--icon-x:-13px;--icon-y:-13px;--slot-frame:url('/gear-assets/paperdoll/frame-rightfinger.png')}
.gear-ui .d3-paperdoll :is(#paper,.paperdoll-board) .gear-slot-13{left:202px;top:52px;width:50px;height:50px;--icon-x:-7px;--icon-y:-7px;--slot-frame:url('/gear-assets/paperdoll/frame-neck.png')}
.gear-ui .d3-paperdoll :is(#paper,.paperdoll-board) .gear-sockets{gap:0;z-index:3}
.gear-ui .d3-paperdoll :is(#paper,.paperdoll-board) .gear-gem{width:32px;height:32px;padding:0;border:0;background:none;box-shadow:none}
.gear-ui .d3-paperdoll :is(#active-skills,.paperdoll-active){position:relative;display:block;width:287px;height:60px;padding:0;margin:8px auto 0;background:url('/gear-assets/paperdoll/skills.png') no-repeat}
.gear-ui .d3-paperdoll :is(#active-skills,.paperdoll-active) .skill-button{position:absolute;top:2px;left:3px;width:42px;height:42px;padding:0;border:0;box-shadow:none;background:none}
.gear-ui .d3-paperdoll :is(#active-skills,.paperdoll-active) .skill-button:nth-child(2){left:51px}
.gear-ui .d3-paperdoll :is(#active-skills,.paperdoll-active) .skill-button:nth-child(3){left:99px}
.gear-ui .d3-paperdoll :is(#active-skills,.paperdoll-active) .skill-button:nth-child(4){left:147px}
.gear-ui .d3-paperdoll :is(#active-skills,.paperdoll-active) .skill-button:nth-child(5){left:197px;top:3px;width:40px;height:40px}
.gear-ui .d3-paperdoll :is(#active-skills,.paperdoll-active) .skill-button:nth-child(6){left:244px;top:3px;width:40px;height:40px}
.gear-ui .d3-paperdoll :is(#active-skills,.paperdoll-active) .skill-button>span,.gear-ui .d3-paperdoll :is(#cube-slots,.paperdoll-cube) .skill-button>span{display:none}
.gear-ui .d3-paperdoll :is(#passive-skills,.paperdoll-passives){width:240px;height:42px;padding:0;margin:5px auto 0;gap:24px}
.gear-ui .d3-paperdoll :is(#passive-skills,.paperdoll-passives) .skill-button{width:42px;height:42px;border:0;box-shadow:none;padding:0;background:#080808;border-radius:50%;overflow:visible}
.gear-ui .d3-paperdoll :is(#passive-skills,.paperdoll-passives) .skill-button svg{border-radius:50%}
.gear-ui .d3-paperdoll :is(#passive-skills,.paperdoll-passives) .skill-button::after{content:"";position:absolute;left:-5px;top:-5px;width:51px;height:51px;background:url('/gear-assets/paperdoll/passive.png') 0 0 no-repeat;pointer-events:none}
.gear-ui .d3-paperdoll :is(#cube-slots,.paperdoll-cube){width:100%;height:52px;margin:12px auto 0;padding:0;gap:14px}
.gear-ui .d3-paperdoll :is(#cube-slots,.paperdoll-cube) .skill-button{width:52px;height:52px;border:0;box-shadow:none;padding:4px 6px 8px;background:url('/gear-assets/paperdoll/cube.png') no-repeat}
.gear-ui .d3-paperdoll .paper-help{font-size:10px;color:#aaa;margin-top:12px}
.gear-ui .d3-paperdoll .follower-bottom{width:300px;max-width:100%;margin:auto;padding:8px 4px 0;gap:8px}
.gear-ui .d3-paperdoll .follower-bottom .gear-slot-14{width:76px;height:76px;border:0;padding:9px;background:url('/gear-assets/paperdoll/relic.png') center/contain no-repeat;box-shadow:none}
.gear-ui .d3-paperdoll .follower-skill-grid{grid-template-columns:repeat(4,47px);grid-template-rows:repeat(2,47px);gap:3px}
.gear-ui .d3-paperdoll .follower-skill-grid .skill-button{width:47px;height:47px;padding:1px}
@media(min-width:651px) and (max-width:1120px){.planner-page .planner-layout{grid-template-columns:316px minmax(310px,1fr) 224px}}
@media(min-width:651px) and (max-width:900px){.planner-page .planner-layout{grid-template-columns:316px minmax(0,1fr)}}
@media(max-width:350px){.gear-ui .d3-paperdoll :is(#paper-wrap,.paperdoll-wrap),.gear-ui .d3-paperdoll :is(#paper-wrap,.paperdoll-wrap).follower-wrap{width:282px;height:401px}.gear-ui .d3-paperdoll :is(#paper,.paperdoll-board){transform:scale(.94);transform-origin:top left}.gear-ui .d3-paperdoll .follower-bottom{padding:8px 1px 0;gap:4px}.gear-ui .d3-paperdoll .follower-skill-grid{grid-template-columns:repeat(4,44px);grid-template-rows:repeat(2,44px)}.gear-ui .d3-paperdoll .follower-skill-grid .skill-button{width:44px;height:44px}}
/* 弹窗窄屏仍用同一原图坐标，仅整体缩放，不回退旧版拉伸规则。 */
#equipment-dialog.gear-ui .d3-paperdoll .paperdoll-board{zoom:1}
@media(max-width:370px){#equipment-dialog.gear-ui{width:calc(100vw - 8px);max-width:calc(100vw - 8px);padding:8px}#equipment-dialog.gear-ui .gear-build.d3-paperdoll{width:284px;padding:0 0 12px}#equipment-dialog.gear-ui .d3-paperdoll .paperdoll-wrap{width:282px;height:401px}#equipment-dialog.gear-ui .d3-paperdoll .paperdoll-board{transform:scale(.94);transform-origin:top left}}
