/* Shared canonical weapon icon rendering.
   JS identifies canonical weapon images and adds .shared-weapon-frame plus
   per-weapon optical variables. Non-weapon skill/path artwork is untouched. */

.shared-weapon-frame{
  position:relative!important;
  display:grid;
  place-items:center;
  overflow:hidden
}

.shared-weapon-frame>img[data-weapon-slug]{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  padding:4%!important;
  box-sizing:border-box!important;
  object-fit:contain!important;
  object-position:center center!important;
  transform:translate(var(--weapon-icon-x,0%),var(--weapon-icon-y,0%)) scale(var(--weapon-icon-scale,1))!important;
  transform-origin:center center!important;
  filter:none!important;
  opacity:1!important;
  visibility:visible!important;
  image-rendering:auto!important;
  z-index:2!important
}

/* Global policy: never show letter fallbacks. Empty frames are intentional
   so adding real PNGs later is clean and requires no HTML edits. */
.icon-fallback,
.weapon-guide-fallback,
.martial-path-fallback{
  display:none!important
}

.shared-weapon-frame>.icon-fallback,
.shared-weapon-frame>.weapon-guide-fallback,
.shared-weapon-frame>.martial-path-fallback{display:none!important}

/* weapon-guides.css used to provide hard-coded pseudo-element weapon art.
   Keep pseudo imagery disabled globally; the real canonical <img> owns it. */
.weapon-guide-icon::after,
.weapon-guide-meta .weapon-guide-link.has-shared-weapon-icon::before{
  display:none!important;
  content:none!important;
  background-image:none!important
}

.weapon-guide-meta .weapon-guide-link:not([href*="../martial-paths/"]){position:relative}
.shared-weapon-icon{
  position:absolute!important;
  left:12px!important;
  top:50%!important;
  width:var(--quick-weapon-icon-size,108px)!important;
  height:var(--quick-weapon-icon-size,108px)!important;
  transform:translateY(-50%)!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  box-sizing:border-box!important;
  pointer-events:none!important
}

/* The partner holder stays the same 108/90px optical area as the main icon,
   but it is visually transparent so the Default Partner link is one card,
   not a bordered square nested inside another bordered card. */
@media(max-width:600px){
  .shared-weapon-frame>img[data-weapon-slug]{padding:4%!important}
}
