/* Gladiatorz – Hotfix CSS
   V0.107zk
   Purpose: reserved for quick CSS hotfixes.
*/

/* ===== Profil (Modal) – profil.png als HERO + Inventar darunter ===== */

/* Root layout */
#modal .gzProfileScene{
  display:flex;
  flex-direction:column;
}

/* HERO = der reine Bildbereich (1536x1200), damit das Inventar "unter dem Bild" startet */
#modal .gzProfileHero{
  position: relative;
  width: 100%;
  padding: 0 !important;
  min-height: 0 !important;
  /* profil.png in 1536x1200 ratio */
  aspect-ratio: 1536 / 1200;
  /* do not upscale beyond the native asset */
  max-width: 1536px;
  max-height: 1200px;
  margin: 0 auto;
  background: #0b1117 url("/img/profil.png") center top / contain no-repeat;
}
/* Readability overlay */
#modal .gzProfileHero:before{
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, rgba(0,0,0,.45), rgba(0,0,0,.16), rgba(0,0,0,0));
  pointer-events: none;
}

/* Stats grid overlay */
#modal .gzProfileGrid{
  position: absolute;
  z-index: 2;
  left: calc(26px * var(--gzFrameScale));
  top:  calc(78px * var(--gzFrameScale));
  max-width: calc(560px * var(--gzFrameScale));
  padding: calc(10px * var(--gzFrameScale)) calc(12px * var(--gzFrameScale));
  border-radius: calc(14px * var(--gzFrameScale));
  background: rgba(0,0,0,.20);
  border: 1px solid rgba(255,255,255,.10);
  backdrop-filter: blur(2px);
}

/* Inventory block sits below hero */
#modal .gzProfileInvBlock{
  background: rgba(0,0,0,.60);
  border-top: 1px solid rgba(255,255,255,.12);
  padding: calc(14px * var(--gzFrameScale)) calc(18px * var(--gzFrameScale)) calc(18px * var(--gzFrameScale));
}

#modal .gzProfileInvTitle{
  font-weight: 900;
  font-size: 14px;
  margin-bottom: calc(10px * var(--gzFrameScale));
}

#modal .gzProfileInvHint{
  margin-top: calc(10px * var(--gzFrameScale));
  font-size: 12px;
  opacity: .75;
}

#modal .gzProfileInvMount{
  display: flex;
  flex-direction: column;
  gap: calc(8px * var(--gzFrameScale));
  overflow: auto;
  padding-right: calc(4px * var(--gzFrameScale));
  /* Embedded-Inventar ist nur Quick-Equip: begrenzen und innerhalb scrollen */
  max-height: clamp(220px, 34vh, 520px);
}

#modal .gzProfInvRow{
  appearance: none;
  -webkit-appearance: none;
  display: flex;
  align-items: center;
  gap: calc(10px * var(--gzFrameScale));
  width: 100%;
  text-align: left;
  border: 1px solid var(--gz-border2);
  background: rgba(26,19,12,.82);
  color: var(--gz-text);
  padding: calc(10px * var(--gzFrameScale)) calc(12px * var(--gzFrameScale));
  border-radius: calc(14px * var(--gzFrameScale));
  cursor: pointer;
}

#modal .gzProfInvRow:hover{
  background: rgba(26,19,12,.95);
}

#modal .gzProfInvRow.isBusy{
  opacity: .65;
  cursor: progress;
}

#modal .gzProfInvRow:disabled{
  opacity: .55;
  cursor: not-allowed;
}

#modal .gzProfInvIcon{
  width: calc(36px * var(--gzFrameScale));
  height: calc(36px * var(--gzFrameScale));
  border-radius: calc(12px * var(--gzFrameScale));
  border: 1px solid var(--gz-border2);
  background: rgba(255,255,255,.06);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  flex: 0 0 auto;
}

#modal .gzProfInvName{
  font-weight: 900;
  font-size: 14px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  min-width: 0;
  flex: 1 1 auto;
}

#modal .gzProfInvType{
  opacity: .9;
  flex: 0 0 auto;
}

#modal .gzProfInvGo{
  margin-left: auto;
  font-weight: 900;
  padding: 6px 10px;
  border-radius: 12px;
  border: 1px solid rgba(168,199,255,.55);
  background: rgba(168,199,255,.10);
  color: var(--gz-text);
  flex: 0 0 auto;
}


/* ===== Modal – position + subtle scrollbar (like Markt) ===== */
:root{
  /* Keeps the decorative banner from being clipped at the very top */
  --gzModalTop: 72px;
  --gzModalBottomGap: 22px;
}
@media (max-width: 520px){
  :root{ --gzModalTop: 52px; --gzModalBottomGap: 10px; }
}

/* Reposition modal slightly downward (override inline centering) */
#modal.gzFrameModal.gzFrameModalDesktop,
#modal.gzFrameModal.gzFrameModalMobile{
  top: var(--gzModalTop) !important;
  transform: translateX(-50%) !important;
}

/* Keep scroll area within viewport (and make scrollbar subtle) */
#modal.gzFrameModal.gzFrameModalDesktop .gzModalScroll{
  max-height: calc(100vh - var(--gzModalTop) - var(--gzModalBottomGap) - var(--gzFramePadTop, 12px) - var(--gzFramePadBottom, 12px));
  padding-right: 6px;
  scrollbar-width: thin;
  scrollbar-color: rgba(255,255,255,.14) rgba(0,0,0,.15);
}
#modal.gzFrameModal.gzFrameModalMobile .gzModalScroll{
  max-height: none;
  padding-right: 6px;
  scrollbar-width: thin;
  scrollbar-color: rgba(255,255,255,.14) rgba(0,0,0,.15);
}
@supports (height: 100dvh){
  #modal.gzFrameModal.gzFrameModalDesktop .gzModalScroll{
    max-height: calc(100dvh - var(--gzModalTop) - var(--gzModalBottomGap) - var(--gzFramePadTop, 12px) - var(--gzFramePadBottom, 12px));
  }
  #modal.gzFrameModal.gzFrameModalMobile .gzModalScroll{
    max-height: none;
  }
}

/* Soften scrollbar like Markt */
#modal.gzFrameModal.gzFrameModalDesktop .gzModalScroll::-webkit-scrollbar,
#modal.gzFrameModal.gzFrameModalMobile .gzModalScroll::-webkit-scrollbar{ width:10px; }
#modal.gzFrameModal.gzFrameModalDesktop .gzModalScroll::-webkit-scrollbar-thumb,
#modal.gzFrameModal.gzFrameModalMobile .gzModalScroll::-webkit-scrollbar-thumb{ background:rgba(255,255,255,.14); border-radius:10px; }
#modal.gzFrameModal.gzFrameModalDesktop .gzModalScroll::-webkit-scrollbar-track,
#modal.gzFrameModal.gzFrameModalMobile .gzModalScroll::-webkit-scrollbar-track{ background:rgba(0,0,0,.15); border-radius:10px; }
