/* Beast Tactics v6.28 — minimal vertical battle timeline + small clickable spell stacks. */
.battle-log-actions{display:none!important}
.battle-log-panel{
  width:72px!important;
  max-width:72px!important;
  min-width:72px!important;
  overflow:visible!important;
  border:1px solid rgba(129,222,231,.16)!important;
  border-radius:10px!important;
  background:linear-gradient(180deg,rgba(7,38,48,.62),rgba(4,23,31,.68))!important;
  box-shadow:0 7px 18px rgba(0,0,0,.20)!important;
  backdrop-filter:blur(4px)!important;
  -webkit-backdrop-filter:blur(4px)!important;
  opacity:.72;
}
.battle-log-panel:hover,.battle-log-panel:focus-within{opacity:.96}
.battle-log-panel.is-collapsed{width:72px!important;max-width:72px!important}
.battle-log-panel.is-collapsed .battle-log,
.battle-log-panel.is-collapsed #battleLogHint{display:block!important}
.battle-log-head{
  min-height:22px!important;
  padding:3px!important;
  border-bottom:1px solid rgba(255,255,255,.05)!important;
  background:rgba(255,255,255,.018)!important;
  text-align:center;
}
.battle-log-head strong{
  display:block!important;
  font-size:0!important;
  color:rgba(221,246,248,.75)!important;
}
.battle-log-head strong::before{
  content:'↻';
  display:block;
  font:700 13px/1 system-ui,sans-serif;
}
.battle-log-head span{display:none!important}
.battle-log-panel .battle-log{
  display:flex!important;
  flex-direction:column!important;
  gap:3px!important;
  padding:4px!important;
  max-height:min(45dvh,430px)!important;
  overflow-y:auto!important;
  overflow-x:visible!important;
  background:rgba(0,0,0,.05)!important;
  scrollbar-width:none;
}
.battle-log-panel .battle-log::-webkit-scrollbar{display:none}
.battle-log-panel .battle-log:empty::before{
  content:'•';
  display:grid;
  place-items:center;
  min-height:26px;
  font-size:14px;
  color:rgba(180,220,225,.36)!important;
}
.battle-log-line{
  display:block!important;
  min-width:0!important;
  margin:0!important;
  padding:3px!important;
  border:1px solid rgba(255,255,255,.045)!important;
  border-radius:6px!important;
  background:rgba(0,0,0,.10)!important;
  color:rgba(221,235,241,.82)!important;
}
.battle-log-line:hover,.battle-log-line:focus-within{background:rgba(255,255,255,.045)!important}
.bt-log-event-main{
  display:grid;
  grid-template-columns:28px minmax(0,1fr);
  align-items:center;
  gap:3px;
  width:100%;
  min-width:0;
  padding:0;
  border:0;
  color:inherit;
  background:transparent;
  cursor:pointer;
  text-align:left;
}
.bt-log-thumb,.battle-log-icon{
  position:relative;
  display:grid!important;
  place-items:center!important;
  width:28px!important;
  height:34px!important;
  border:1px solid rgba(118,216,228,.24)!important;
  border-radius:4px!important;
  overflow:hidden;
  background:rgba(6,22,31,.82)!important;
  font:800 11px/1 system-ui,sans-serif!important;
  color:rgba(222,248,251,.82)!important;
}
.bt-log-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.bt-log-label,.battle-log-text{
  display:block!important;
  min-width:0!important;
  font:800 6.5px/1.12 system-ui,sans-serif!important;
  letter-spacing:.015em!important;
  text-transform:uppercase;
  color:rgba(223,236,241,.76)!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
}
.bt-log-detail{
  display:none;
  margin-top:4px;
  padding:3px;
  border-top:1px solid rgba(255,255,255,.05);
  color:rgba(210,226,232,.75);
  font:600 7px/1.25 system-ui,sans-serif;
  white-space:normal;
  overflow-wrap:anywhere;
  word-break:normal;
}
.battle-log-line.is-open .bt-log-detail{display:block}
.battle-log-meta{display:none!important}

/* Duel event: tiny card X card, matching the reference timeline. */
.battle-log-line.is-duel{padding:4px 2px!important}
.bt-duel-row{
  display:grid!important;
  grid-template-columns:23px 10px 23px!important;
  justify-content:center!important;
  align-items:center!important;
  gap:2px!important;
}
.bt-duel-card{
  position:relative;
  width:23px!important;
  height:31px!important;
  border:0;
  border-radius:3px!important;
  overflow:hidden;
  padding:0;
  background:#08131c;
  box-shadow:0 1px 4px rgba(0,0,0,.34)!important;
  cursor:pointer;
}
.bt-duel-card img{width:100%;height:100%;object-fit:cover;display:block}
.bt-duel-card::after{content:'';position:absolute;inset:0;border:1px solid rgba(137,224,234,.2);border-radius:inherit}
.bt-duel-card:hover,.bt-duel-card:focus-visible{outline:1px solid rgba(142,231,255,.55);outline-offset:1px}
.bt-duel-versus{
  width:10px;height:20px;border:0;padding:0;background:transparent;
  color:rgba(255,226,139,.72);font:900 8px/1 system-ui,sans-serif;cursor:pointer;text-align:center;
}
.bt-duel-versus:hover,.bt-duel-versus:focus-visible{color:#fff1a6;outline:0}
.bt-duel-damage{display:none!important}
.bt-duel-calc{
  display:none;
  margin-top:4px;
  padding:4px 3px;
  border-radius:5px;
  background:rgba(2,8,13,.72);
  color:rgba(219,232,237,.8);
  font:600 6.5px/1.25 system-ui,sans-serif;
  white-space:normal;
  overflow-wrap:anywhere;
}
.battle-log-line.is-duel.is-open .bt-duel-calc{display:block}
.bt-duel-calc b{color:rgba(255,255,255,.92)}

@media(max-width:900px){
  .battle-log-panel{width:66px!important;max-width:66px!important;min-width:66px!important;left:7px!important;bottom:82px!important}
  .bt-log-event-main{grid-template-columns:25px minmax(0,1fr)}
  .bt-log-thumb,.battle-log-icon{width:25px!important;height:31px!important}
}
@media(max-width:620px){
  .battle-log-panel{left:6px!important;bottom:74px!important;width:62px!important;max-width:62px!important;min-width:62px!important;border-radius:8px!important}
  .battle-log-panel:not(.is-open-mobile) .battle-log,
  .battle-log-panel:not(.is-open-mobile) #battleLogHint{display:block!important}
  .bt-log-event-main{grid-template-columns:23px minmax(0,1fr);gap:2px}
  .bt-log-thumb,.battle-log-icon{width:23px!important;height:29px!important}
  .bt-log-label,.battle-log-text{font-size:6px!important}
  .bt-duel-row{grid-template-columns:21px 8px 21px!important;gap:1px!important}
  .bt-duel-card{width:21px!important;height:28px!important}
}

/* Persistent spell cards: much smaller than the Beast, still behind it and clickable. */
.slot{overflow:visible!important;isolation:isolate}
.slot > .card{position:relative;z-index:6}
.bt-duration-spell-layer{
  --bt-stack-index:0;
  z-index:2!important;
  pointer-events:auto!important;
  cursor:pointer;
  width:34%!important;
  height:46%!important;
  right:calc(-8% - var(--bt-stack-index) * 4%)!important;
  left:auto!important;
  bottom:auto!important;
  top:calc(-3% + var(--bt-stack-index) * 7%)!important;
  transform:rotate(calc(5deg + var(--bt-stack-index) * 4deg))!important;
  transform-origin:center!important;
  opacity:.9;
  filter:drop-shadow(0 3px 6px rgba(0,0,0,.48));
  transition:transform .16s ease,filter .16s ease,opacity .16s ease;
}
.bt-duration-spell-layer .card{
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  min-height:0!important;
  border-radius:4px!important;
}
.bt-duration-spell-layer:hover,.bt-duration-spell-layer:focus-within{
  z-index:8!important;
  transform:translate(18%,-5%) rotate(2deg) scale(1.08)!important;
  opacity:1;
  filter:drop-shadow(0 6px 11px rgba(0,0,0,.66));
}
.bt-duration-spell-layer .card{pointer-events:auto!important;cursor:pointer}
.bt-duration-spell-layer .bt-duration-badge{
  z-index:10;
  min-width:13px!important;
  height:13px!important;
  padding:0 2px!important;
  right:-4px!important;
  top:-4px!important;
  font-size:7px!important;
}
.bt-duration-board-layer{display:none!important}
