/* Load after merge.css. The arsenal overlays the field; opening it never resizes play. */
body:not(.site-page) .game-shell{height:calc(100dvh - 124px);min-height:360px;max-height:860px}
.arsenal-dock{position:absolute;right:14px;bottom:15px;z-index:12;width:min(310px,calc(100% - 28px));max-height:calc(100% - 105px);color:#6d5147;isolation:isolate}
.arsenal-toggle{display:grid;grid-template-columns:46px minmax(0,1fr) auto 14px;align-items:center;gap:8px;width:100%;min-height:66px;padding:8px 10px;border:2px solid #a28369;border-radius:18px 15px 17px 14px;background:#fff7df;box-shadow:0 4px #b8997880,inset 0 2px #fffdf4;color:#735448;text-align:left}
.arsenal-toggle:hover:not(:disabled){background:#fff0ca;filter:none}
#arsenal-current-art{display:grid;place-items:center;width:46px;height:44px;background:#f8e8c4;border:1px solid #ddc29a;border-radius:12px;overflow:hidden}
#arsenal-current-art img,#arsenal-current-art svg{display:block;width:43px;height:35px;object-fit:contain}
.arsenal-toggle-copy{min-width:0;display:grid;gap:4px}
#arsenal-current-name{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:850;line-height:1.35}
#arsenal-current-dps{display:block;font-size:10px;line-height:1.35;color:#9b7755}
#arsenal-badge{align-self:center;max-width:77px;padding:5px 7px;border:1px solid #c2a06c;border-radius:9px;background:#ffe3a2;color:#8c642f;font-size:10px;font-weight:800;line-height:1.35;text-align:center}
.arsenal-chevron{font-size:13px;font-weight:900;line-height:1;color:#9a795e;transition:transform .15s ease}
.arsenal-toggle[aria-expanded="true"] .arsenal-chevron{transform:rotate(180deg)}
.arsenal-dock[data-open="true"]{display:flex;flex-direction:column;width:min(400px,calc(100% - 28px));height:calc(100% - 105px);max-height:680px}
.arsenal-dock[data-open="true"]>.arsenal-toggle{display:none}
.arsenal-panel{display:flex;flex-direction:column;min-height:0;max-height:100%;border:2px solid #a28369;border-radius:20px 17px 18px 16px;background:#fff9e9;box-shadow:0 5px #b5967780,0 12px 32px #5f46312b;overflow:hidden}
.arsenal-dock[data-open="true"]>.arsenal-panel{height:100%}
.arsenal-header{display:flex;flex:0 0 auto;align-items:center;justify-content:space-between;gap:10px;min-height:65px;padding:9px 10px 8px 14px;background:#f9ebce;border-bottom:1px solid #cfb694}
.arsenal-header h3{margin:0 0 3px;color:#775747;font-size:16px;line-height:1.35}
.arsenal-header small{display:block;color:#8e7862;font-size:10px;line-height:1.5}
#close-arsenal{flex:0 0 44px;display:grid;place-items:center;width:44px;height:44px;min-height:44px;padding:0;border:1.5px solid #ba938b;border-radius:13px;background:#f4d7cf;box-shadow:0 2px #c7a298;color:#916457;font-size:22px;line-height:1}
.arsenal-body{flex:1 1 auto;min-height:0;padding:9px 11px 13px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#cdb292 #fff4dc;scroll-padding:12px;touch-action:pan-y}
.arsenal-dock button{touch-action:manipulation}
.arsenal-dock button:focus-visible{outline:3px solid #708fc0;outline-offset:2px}
.arsenal-dock #quick-weapons{display:flex;gap:7px;width:100%;height:auto;min-height:72px;margin:0 0 9px;padding:2px 1px 6px;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:#cfb895 transparent;overscroll-behavior-x:contain}
.arsenal-dock #quick-weapons button{flex:0 0 142px;min-width:0;min-height:60px;padding:6px 8px;grid-template-columns:40px minmax(0,1fr);column-gap:5px;border-radius:12px;box-shadow:0 2px #cfb499}
.arsenal-dock #quick-weapons img,.arsenal-dock #quick-weapons svg{width:40px;height:36px}
.arsenal-dock #quick-weapons span{overflow:hidden;text-overflow:ellipsis;font-size:10px}
.arsenal-dock #quick-weapons small{font-size:9px;line-height:1.45;white-space:normal}
.arsenal-dock #merge-hint{width:100%;min-height:44px;margin:0 0 9px;padding:9px 10px;border:1.5px solid #cbaa75;border-radius:11px;background:#fff0c5;box-shadow:none;color:#926831;font-size:11px;line-height:1.5;text-align:left}
.arsenal-dock[data-open="false"]>#merge-hint{box-shadow:0 3px #b8997840}
.arsenal-quick-label{font-size:10px;color:#967b62;margin:0 0 6px}
.arsenal-help{min-height:44px;padding:6px 8px;border:1px solid #c6ad87;border-radius:10px;background:#fff7df;color:#836446;font-size:11px;white-space:nowrap}
.arsenal-dock #forge-return{width:100%;min-height:44px;margin:4px 0 9px;font-size:12px}
.arsenal-dock #bag-grid .guide-recommended{box-shadow:0 0 0 2px #dca54e,0 3px #cfb499;background:#fff0c2}
.arsenal-dock #panel-bag{padding:0;overflow:visible}
.arsenal-panel:not([hidden]) #panel-bag{display:block!important}
.arsenal-dock #panel-bag>.panel-heading,.arsenal-dock #close-bag{display:none}
.arsenal-dock #bag-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}
.arsenal-dock #bag-grid .slot{height:75px;min-height:64px;min-width:0;padding:12px 3px 5px;border-radius:11px;gap:3px;box-shadow:0 2px #d2b898}
.arsenal-dock #bag-grid .slot img,.arsenal-dock #bag-grid .slot svg{width:51px;max-width:100%;height:34px;object-fit:contain}
.arsenal-dock #bag-grid .slot small{font-size:9px;line-height:1.3;text-align:center}
.arsenal-dock #bag-grid .slot.equipped:before{top:3px;left:3px;font-size:7px}
.arsenal-dock #bag-grid .tier-dot{top:3px;right:3px;font-size:8px}
.arsenal-dock #weapon-detail{min-height:40px;padding:10px 1px 8px;font-size:11px;line-height:1.7;color:#78584d}
.arsenal-dock #weapon-detail small{font-size:10px;line-height:1.6;color:#968073}
.arsenal-dock .bag-actions{gap:8px;margin:0 0 10px;padding:0}
.arsenal-dock .bag-actions button,.arsenal-dock #buy-gun,.arsenal-dock #forge-confirm,.arsenal-dock #forge-again{min-height:44px;padding:10px 9px;font-size:11px;line-height:1.4}
.arsenal-dock #buy-gun{align-items:center;gap:8px}
.arsenal-dock .small-note{font-size:10px;line-height:1.7;margin:9px 0 0;color:#937b67}
.arsenal-dock .forge{padding:10px;margin:0 0 11px}
.arsenal-dock .forge-heading{min-height:44px}
.arsenal-dock .forge-heading strong{font-size:12px}
.arsenal-dock .forge-heading button{min-height:44px;padding:5px 6px;font-size:11px}
.arsenal-dock .forge-recipe{grid-template-columns:minmax(0,1fr) 13px minmax(0,1fr) 13px minmax(0,1fr);gap:4px}
.arsenal-dock .forge-ingredient,.arsenal-dock .forge-output{height:80px;min-height:44px;padding:4px}
.arsenal-dock .forge-ingredient img,.arsenal-dock .forge-output img,.arsenal-dock .forge-ingredient svg,.arsenal-dock .forge-output svg{height:37px}
.arsenal-dock .forge-ingredient small,.arsenal-dock .forge-output small{font-size:9px}
.arsenal-dock .forge-instruction,.arsenal-dock .forge-explain{font-size:10px;line-height:1.55;margin:5px 0 9px}
.arsenal-dock .forge-comparison{flex-wrap:wrap;justify-content:space-between;gap:5px;font-size:10px;line-height:1.5;margin:9px 0 6px}
.arsenal-dock .forge.is-merging{min-height:198px}
.arsenal-dock .forge.is-revealed{padding:12px 10px}
.arsenal-dock .forge-result-art{height:70px}
.arsenal-dock .forge-result-art img,.arsenal-dock .forge-result-art svg{height:67px}
.arsenal-dock .forge-result-power{margin:8px 0 6px}
.arsenal-dock #forge-result-status{margin:8px 0 10px;line-height:1.6}
.fusion-guide{margin:0 0 12px;padding:10px;border:1.5px solid #a7bca0;border-radius:14px;background:#eef5df;color:#6f815b}
.fusion-guide-top{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:35px}
#fusion-guide-step{font-size:12px;line-height:1.4;font-weight:850;color:#6f8054}
#dismiss-fusion-guide{flex:0 0 auto;width:44px;min-width:44px;min-height:44px;margin:-6px -5px -4px 0;padding:6px;border:0;border-radius:9px;background:transparent;color:#8b9478;font-size:11px}
#dismiss-fusion-guide:hover{background:#dde8cf}
#fusion-guide-copy{font-size:11px;line-height:1.65;margin:2px 0 9px;color:#7c8969}
.fusion-guide-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;list-style:none;counter-reset:fusion-step;padding:0;margin:0 0 9px}
.fusion-guide-steps li{counter-increment:fusion-step;display:flex;align-items:center;gap:4px;min-width:0;padding:6px 4px;border:1px solid #c9d6b8;border-radius:8px;background:#f7faef;color:#8a947a;font-size:10px;line-height:1.4}
.fusion-guide-steps li:before{content:counter(fusion-step);display:grid;place-items:center;flex:0 0 17px;width:17px;height:17px;border-radius:50%;background:#e3eacd;color:#8a9470;font-size:9px;font-weight:850}
.fusion-guide-steps li.active,.fusion-guide-steps li.is-active,.fusion-guide-steps li[aria-current="step"]{border-color:#aba46d;background:#fff0bd;color:#96783a}
.fusion-guide-steps li.active:before,.fusion-guide-steps li.is-active:before,.fusion-guide-steps li[aria-current="step"]:before{background:#e5c37a;color:#fff}
.fusion-guide-steps li.done,.fusion-guide-steps li.is-done{color:#6a8b62;background:#e7f0d8}
.fusion-guide-steps li.done:before,.fusion-guide-steps li.is-done:before{content:'✓';background:#bbd0a4;color:#fff}
#start-fusion-guide{width:100%;min-height:44px;padding:9px 12px;border:1.5px solid #8fa57a;border-radius:10px;background:#d5e8bb;box-shadow:0 2px #adc494;color:#6a8050;font-size:11px;font-weight:800;line-height:1.4}
body:not(.site-page) .game-shell .canvas-bottom{top:12px;bottom:auto;left:auto;right:62px;z-index:2}
body:not(.site-page) .game-shell .auto-btn{min-height:36px;padding:7px 9px;font-size:10px}
body.arsenal-open .game-shell:after{content:'';position:absolute;inset:0;z-index:8;background:#62534526;pointer-events:none}
body.arsenal-open .game-shell #joystick,body.arsenal-open .game-shell #fire-btn,body.arsenal-open .game-shell .canvas-bottom,body.arsenal-open .game-shell .world-hud{pointer-events:none;opacity:.4}
body.arsenal-open .game-shell .combat-controls{opacity:.3}

@media(max-width:730px){
 body:not(.site-page){height:auto;min-height:100dvh;overflow-x:hidden;overflow-y:auto}
 body:not(.site-page) .app{height:auto;min-height:100dvh;padding:0 7px calc(8px + env(safe-area-inset-bottom))}
 body:not(.site-page) .layout{display:flex;gap:8px;margin:0;padding:5px 0 0}
 body:not(.site-page) .play-column{min-width:0;flex:0 0 auto}
 body:not(.site-page) .layout .game-shell{height:calc(100dvh - 200px);min-height:320px;max-height:none}
 body:not(.site-page) .layout .panel-column{height:130px;min-height:130px;max-height:130px;flex:0 0 130px;overflow:auto;overscroll-behavior:contain;scroll-padding-top:42px}
 body:not(.site-page) .panel-column .tabs{height:38px;min-height:38px;padding:3px 7px 0;z-index:3}
 body:not(.site-page) .panel-column .tabs button{min-height:34px}
 body:not(.site-page) .panel-column .tab-panel{padding:8px}
 body:not(.site-page) #panel-upgrade #upgrades{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;align-items:start}
 body:not(.site-page) #panel-upgrade .upgrade{margin:0;padding:7px 5px;border-radius:11px;min-width:0}
 body:not(.site-page) #panel-upgrade .upgrade-top{gap:4px;flex-wrap:wrap}
 body:not(.site-page) #panel-upgrade .upgrade-icon{width:25px;height:25px;border-radius:8px}
 body:not(.site-page) #panel-upgrade .upgrade h3{font-size:10px;line-height:1.3;margin:0}
 body:not(.site-page) #panel-upgrade .upgrade p{display:none}
 body:not(.site-page) #panel-upgrade .upgrade .level{margin-left:auto;font-size:8px;padding:2px 3px}
 body:not(.site-page) #panel-upgrade .upgrade button{min-height:44px;margin-top:6px;padding:6px 5px;font-size:9px;gap:3px;border-radius:9px}
 body:not(.site-page) #panel-upgrade .upgrade button span{font-size:9px}
 body:not(.site-page) #panel-upgrade .rebirth-card{margin-top:10px}
 .arsenal-dock{left:11px;right:11px;bottom:12px;width:auto;max-height:calc(100% - 102px)}
 .arsenal-toggle{min-height:63px;grid-template-columns:43px minmax(0,1fr) auto 13px;gap:7px;padding:7px 9px;border-radius:15px 13px 16px 12px}
 #arsenal-current-art{width:43px;height:42px}
 #arsenal-current-name{font-size:12px}
 #arsenal-current-dps{font-size:9px}
 #arsenal-badge{font-size:9px;max-width:73px;padding:5px 6px}
 .arsenal-dock[data-open="true"]{left:auto;right:10px;bottom:11px;width:min(400px,calc(100% - 20px));height:calc(100% - 102px);max-height:680px}
 .arsenal-header{min-height:62px;padding:8px 9px 8px 12px}
 .arsenal-header h3{font-size:15px}
 .arsenal-header small{font-size:9px}
 .arsenal-body{padding:8px 9px 11px}
 .arsenal-dock #bag-grid{gap:6px}
 .arsenal-dock #bag-grid .slot{height:72px;padding:12px 2px 4px}
 .arsenal-dock #bag-grid .slot img,.arsenal-dock #bag-grid .slot svg{width:46px;height:31px}
 .arsenal-dock #bag-grid .slot small{font-size:8px}
 .arsenal-dock .forge{padding:8px}
 .arsenal-dock .forge-recipe{grid-template-columns:minmax(0,1fr) 11px minmax(0,1fr) 11px minmax(0,1fr);gap:3px}
 .arsenal-dock .forge-ingredient,.arsenal-dock .forge-output{height:76px}
 .arsenal-dock .forge-ingredient small,.arsenal-dock .forge-output small{font-size:8px}
 .fusion-guide{padding:8px;margin-bottom:10px}
 .fusion-guide-steps li{padding:5px 3px;font-size:9px;gap:3px}
 body:not(.site-page) .game-shell #joystick{bottom:89px;left:15px}
 body:not(.site-page) .game-shell #fire-btn{bottom:91px;right:13px}
 body:not(.site-page) .game-shell .canvas-bottom{top:10px;right:57px}
 body:not(.site-page) .game-shell .auto-btn{font-size:9px;min-height:34px;padding:6px 7px}
 body:not(.site-page) .game-shell .auto-btn b{font-size:8px;margin-left:4px}
}

@media(max-width:359px){
 .arsenal-toggle{grid-template-columns:39px minmax(0,1fr) auto 11px;gap:5px;padding:7px}
 #arsenal-current-art{width:39px;height:40px}
 #arsenal-current-art img,#arsenal-current-art svg{width:37px;height:32px}
 #arsenal-current-name{font-size:11px}
 #arsenal-badge{max-width:62px;font-size:8px;padding:4px}
 .arsenal-dock #bag-grid{gap:5px}
 .arsenal-dock #bag-grid .slot{height:68px}
 .fusion-guide-steps{gap:3px}
 .fusion-guide-steps li{gap:2px;font-size:8px;padding:5px 2px}
 body:not(.site-page) #panel-upgrade .upgrade .level{margin-left:0}
}

@media(max-height:560px) and (max-width:930px){
 body:not(.site-page){overflow-y:auto}
 body:not(.site-page) .layout .game-shell{height:calc(100dvh - 90px);min-height:300px;max-height:none}
 .arsenal-dock[data-open="true"]{height:calc(100% - 72px);max-height:calc(100% - 72px)}
}

@media(prefers-reduced-motion:reduce){.arsenal-chevron{transition:none}}

/* Keep the current tutorial step close to its materials. */
.arsenal-dock[data-merging="true"] .arsenal-quick-label,.arsenal-dock[data-merging="true"] #quick-weapons{display:none}
.arsenal-dock[data-merging="true"] #panel-bag{display:flex!important;flex-direction:column}
.arsenal-dock[data-merging="true"] #bag-grid{order:0;margin-bottom:10px}
.arsenal-dock[data-merging="true"] #bag-grid .empty-slot{display:none}
.arsenal-dock[data-merging="true"] #forge{order:1}
.arsenal-dock[data-merging="true"] .bag-actions{order:2}
.arsenal-dock[data-merging="true"] #weapon-detail,.arsenal-dock[data-merging="true"] #equip-btn,.arsenal-dock[data-merging="true"] #buy-gun,.arsenal-dock[data-merging="true"] .small-note{display:none}
.arsenal-dock[data-result="true"] #bag-grid,.arsenal-dock[data-result="true"] .bag-actions{display:none}
.arsenal-dock[data-merging="true"] .forge-heading,.arsenal-dock[data-merging="true"] .forge-instruction{display:none}
.arsenal-dock[data-merging="true"] .fusion-guide{margin-bottom:9px}

@media(max-width:730px){.arsenal-dock[data-open="false"]>#merge-hint{position:absolute;left:0;bottom:150px;margin:0}}
