/* UI 017.3B.2.4 — premium iPhone item-sheet polish.
   Isolated to Character; B.1 geometry and Battle remain untouched. */

/* A modal is the active interaction: the Character dock must not show through
   or compete with the sheet. */
#i173a-character-layer.i173b2-sheet-open .i173a-local-dock{
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

/* True floating card geometry. Extra gutters prevent Safari subpixel clipping;
   all four corners are intentionally identical. */
#i173a-character-layer .i173b2-sheet{
  bottom:clamp(52px,calc(100vh - 100dvh + 52px),136px);
  width:min(calc(100% - 24px),424px);
  max-width:424px;
  max-height:min(76dvh,670px);
  box-sizing:border-box;
  overflow:hidden!important;
  isolation:isolate;
  border:1px solid rgba(220,177,83,.52)!important;
  border-radius:28px!important;
  background-clip:padding-box;
  box-shadow:
    0 -18px 52px rgba(0,0,0,.52),
    0 16px 38px rgba(0,0,0,.34),
    inset 0 1px rgba(255,229,164,.06),
    0 0 0 .5px color-mix(in srgb,var(--i173b2-accent) 28%,transparent);
}

#i173a-character-layer .i173b2-sheet.q-legendary,
#i173a-character-layer .i173b2-sheet.q-5{
  box-shadow:
    0 -18px 52px rgba(0,0,0,.52),
    0 16px 38px rgba(0,0,0,.34),
    0 0 34px rgba(228,189,92,.11),
    inset 0 1px rgba(255,232,170,.08),
    0 0 0 .5px rgba(228,189,92,.42);
}

/* Compact premium header. */
#i173a-character-layer .i173b2-handle-zone{
  padding:8px 16px 2px;
}

#i173a-character-layer .i173b2-head{
  grid-template-columns:62px minmax(0,1fr) 40px;
  gap:10px;
  align-items:start;
  padding:7px 14px 10px;
}

#i173a-character-layer .i173b2-icon{
  width:62px;
  height:62px;
  border-radius:17px;
  font-size:31px;
  box-shadow:
    inset 0 0 20px rgba(255,255,255,.025),
    0 8px 22px rgba(0,0,0,.28),
    0 0 22px color-mix(in srgb,var(--i173b2-accent) 15%,transparent);
}

#i173a-character-layer .i173b2-icon .i173b-armor-icon{
  width:49px;
  height:49px;
  color:var(--i173b2-accent);
  filter:drop-shadow(0 5px 9px rgba(0,0,0,.42));
}

#i173a-character-layer .i173b-slot-frame .i173b-armor-icon{
  width:58%;
  height:58%;
  color:#e6c876;
  filter:drop-shadow(0 4px 7px rgba(0,0,0,.46));
  pointer-events:none;
}

#i173a-character-layer .i173b2-head-copy{
  min-width:0;
  padding-top:1px;
}

#i173a-character-layer .i173b2-quality{
  font-size:9px;
  letter-spacing:.18em;
}

#i173a-character-layer .i173b2-title{
  display:block;
  overflow:visible;
  margin-top:3px;
  color:#fff1d1;
  font-size:clamp(19px,5.25vw,22.5px);
  line-height:1.02;
  -webkit-line-clamp:unset;
  -webkit-box-orient:initial;
  overflow-wrap:break-word;
  word-break:normal;
  text-overflow:clip;
  white-space:normal;
}

#i173a-character-layer .i173b2-subtitle{
  display:block;
  margin-top:5px;
  overflow:visible;
  color:#ad9f96;
  font-size:9.5px;
  font-weight:760;
  line-height:1.28;
  text-overflow:clip;
  white-space:normal;
  overflow-wrap:break-word;
}

#i173a-character-layer .i173b2-summary{
  display:flex;
  flex-wrap:wrap;
  gap:5px;
  margin-top:7px;
}

#i173a-character-layer .i173b2-summary span{
  padding:3px 7px;
  border:1px solid color-mix(in srgb,var(--i173b2-accent) 22%,transparent);
  border-radius:999px;
  background:color-mix(in srgb,var(--i173b2-accent) 6%,rgba(8,6,12,.78));
  color:#c9bba7;
  font-size:8px;
  font-weight:850;
  letter-spacing:.04em;
}

#i173a-character-layer .i173b2-close{
  width:40px;
  height:40px;
  align-self:start;
  margin-top:5px;
  border-color:rgba(225,184,93,.24);
  color:#e4cb91;
  font-size:24px;
  background:rgba(8,6,12,.64);
}

/* Denser body: less dead air, more useful information visible at once. */
#i173a-character-layer .i173b2-body{
  flex:1 1 auto;
  padding:10px 14px 14px;
}

#i173a-character-layer .i173b2-section{
  margin-top:15px;
}

#i173a-character-layer .i173b2-section:first-child{
  margin-top:0;
}

#i173a-character-layer .i173b2-section-title{
  margin-bottom:7px;
  color:#c7aa70;
}

#i173a-character-layer .i173b2-primary{
  gap:7px;
}

#i173a-character-layer .i173b2-stat{
  min-height:54px;
  padding:8px 10px;
  border-radius:12px;
}

#i173a-character-layer .i173b2-stat span{
  color:#8f8583;
  font-size:8.5px;
  line-height:1.12;
}

#i173a-character-layer .i173b2-stat strong{
  margin-top:4px;
  font-size:17px;
  line-height:1;
}

/* Old cached rating decorator may still exist in Safari: never show its unit.
   The label itself already says “Рейтинг ...”. */
#i173a-character-layer .i173b2-rating-unit{
  display:none!important;
}

/* Lore should read differently from a stat box. */
#i173a-character-layer .i173b2-lore{
  display:grid;
  grid-template-columns:18px minmax(0,1fr);
  gap:8px;
  align-items:start;
  border-color:rgba(205,163,81,.12);
  background:
    linear-gradient(90deg,rgba(180,132,58,.055),transparent 42%),
    rgba(7,6,12,.46);
}

#i173a-character-layer .i173b2-lore-mark{
  color:var(--i173b2-accent);
  font-size:13px;
  line-height:1.35;
  opacity:.72;
}

/* Actions are useful gameplay actions, not a duplicated Close button. */
#i173a-character-layer .i173b2-actions{
  position:relative;
  left:auto;
  right:auto;
  bottom:auto;
  flex:0 0 auto;
  gap:7px;
  padding:9px 14px calc(env(safe-area-inset-bottom) + 10px);
  border-top:1px solid rgba(205,157,72,.14);
  background:linear-gradient(180deg,rgba(12,8,17,.80),rgba(6,5,10,.96));
}

#i173a-character-layer .i173b2-action{
  min-height:46px;
  border-radius:12px;
  font-size:10px;
  letter-spacing:.11em;
}

#i173a-character-layer .i173b2-action.primary{
  background:linear-gradient(180deg,rgba(130,43,153,.92),rgba(75,24,91,.96));
  box-shadow:inset 0 0 0 1px rgba(255,226,153,.08),0 5px 16px rgba(91,30,110,.16);
}

#i173a-character-layer .i173b2-action:disabled{
  opacity:.55;
  pointer-events:none;
}

/* Empty state: one message, one useful action. */
#i173a-character-layer .i173b2-empty{
  padding:17px 14px 16px;
}

#i173a-character-layer .i173b2-empty-mark{
  width:54px;
  height:54px;
  margin-bottom:10px;
  font-size:27px;
}

#i173a-character-layer .i173b2-empty h3{
  display:none;
}

#i173a-character-layer .i173b2-empty p{
  display:block;
  margin:0 auto;
  max-width:300px;
  color:#a79b95;
  font-size:11px;
  line-height:1.48;
}

/* Disable old B.2.1 pseudo-message if it is present in cache. */
#i173a-character-layer .i173b2-empty::after{
  content:none!important;
  display:none!important;
}

html.arena-cool-mode #i173a-character-layer .i173b2-sheet,
html[data-performance="cool"] #i173a-character-layer .i173b2-sheet{
  box-shadow:0 -16px 42px rgba(0,0,0,.48),0 14px 32px rgba(0,0,0,.28),inset 0 1px rgba(255,229,164,.05);
}

@media (max-width:380px){
  #i173a-character-layer .i173b2-sheet{
    bottom:clamp(54px,calc(100vh - 100dvh + 54px),138px);
    width:calc(100% - 22px);
    max-width:calc(100% - 22px);
    max-height:min(78dvh,660px);
    border-radius:26px!important;
  }
  #i173a-character-layer .i173b2-head{
    grid-template-columns:56px minmax(0,1fr) 38px;
    gap:8px;
    padding-left:12px;
    padding-right:12px;
  }
  #i173a-character-layer .i173b2-icon{
    width:56px;
    height:56px;
    font-size:29px;
  }
  #i173a-character-layer .i173b2-icon .i173b-armor-icon{
    width:44px;
    height:44px;
  }
  #i173a-character-layer .i173b2-title{
    font-size:clamp(18.5px,5.35vw,21.5px);
  }
  #i173a-character-layer .i173b2-close{
    width:38px;
    height:38px;
    font-size:22px;
  }
  #i173a-character-layer .i173b2-body{
    padding-left:12px;
    padding-right:12px;
  }
  #i173a-character-layer .i173b2-actions{
    padding-left:12px;
    padding-right:12px;
  }
}
