/* ==========================================================================
   BOJ — Průběh boje (bj-) + Vyhlášení výsledku (bv-)          js/boj.js
   --------------------------------------------------------------------------
   Selektory jdou přes :is(#centerContent,body) — jinak je přebijí starší
   globální skiny `.parchment button:not(…)` (0,4,1) a `#centerContent h2/p/em`.
   ========================================================================== */

:is(#centerContent,body) .bj,
:is(#centerContent,body) .bv{
  --bj-zlato:#e2bf6a;
  --bj-zlato-sv:#f7dc8e;
  --bj-bronz:#8a6424;
  --bj-panel:rgba(9,12,22,.84);
  --bj-panel-okraj:rgba(201,162,74,.55);
  --bj-text:#e9dfc6;
  --bj-tlumene:#a99e84;
  --bj-hrac:#5fd068;
  --bj-souper:#ff6a5c;
  --bj-dmg:#ff7a66;
  --bj-krit:#ffc93c;
  --bj-minul:#9a948a;
  --bj-blok:#9fc0e0;
  --bj-uhyb:#4fd8e8;
  --bj-xp:#6fd3ff;
  --bj-leceni:#7de08c;
  position:relative;
  color:var(--bj-text);
  font-family:var(--tl-pismo-text, 'EB Garamond', Georgia, serif);
}

/* ---------------------------------------------------------------- rám ---- */
:is(#centerContent,body) .bj{
  display:flex;flex-direction:column;gap:14px;
  padding:14px 16px 16px;
  border:1px solid var(--bj-bronz);
  border-radius:6px;
  background:
    radial-gradient(120% 70% at 50% 42%, rgba(0,0,0,0) 0%, rgba(5,6,12,.55) 62%, rgba(5,6,12,.9) 100%),
    linear-gradient(180deg, rgba(6,8,16,.55) 0%, rgba(6,8,16,.25) 40%, rgba(6,8,16,.8) 100%),
    url(../img/boj/arena_v1.jpg) center 35%/cover no-repeat,
    #0b0d16;
  box-shadow:0 0 0 1px #1d1608, inset 0 0 0 1px rgba(233,200,120,.14), 0 10px 30px rgba(0,0,0,.55);
  overflow:hidden;
}

:is(#centerContent,body) .bj-hlava{
  display:flex;flex-direction:column;align-items:center;gap:2px;
  padding-bottom:6px;
  border-bottom:1px solid rgba(201,162,74,.35);
}
:is(#centerContent,body) .bj-hlava-t{
  font:700 clamp(20px,2.3vw,28px)/1.15 var(--tl-pismo-nadpis, 'Cinzel', Georgia, serif);
  letter-spacing:.12em;text-transform:uppercase;
  background:var(--tl-zlato-gradient, linear-gradient(180deg,#fff3c4,#c8952f));
  -webkit-background-clip:text;background-clip:text;color:transparent;
  filter:drop-shadow(0 2px 3px rgba(0,0,0,.9));
}
:is(#centerContent,body) .bj-hlava-druh{
  font-size:14px;color:var(--bj-tlumene);letter-spacing:.06em;text-shadow:0 1px 2px #000;
}

/* ------------------------------------------------------ scéna 3 sloupce -- */
:is(#centerContent,body) .bj-scena{
  display:grid;
  grid-template-columns:minmax(200px,268px) minmax(0,1fr) minmax(200px,268px);
  gap:14px;align-items:stretch;
}

/* staty po stranách */
:is(#centerContent,body) .bj-staty{
  display:flex;flex-direction:column;gap:1px;
  padding:8px 8px;
  background:var(--bj-panel);
  border:1px solid var(--bj-panel-okraj);
  border-radius:5px;
  box-shadow:inset 0 0 18px rgba(0,0,0,.6);
  align-self:center;
}
:is(#centerContent,body) .bj-staty-h{border-left:3px solid rgba(95,208,104,.65)}
:is(#centerContent,body) .bj-staty-s{border-right:3px solid rgba(255,106,92,.65)}
:is(#centerContent,body) .bj-stat{
  display:grid;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:7px;
  padding:3px 5px;border-radius:3px;cursor:help;
  font-size:15px;line-height:1.2;
}
:is(#centerContent,body) .bj-stat:hover{background:rgba(226,191,106,.12)}
:is(#centerContent,body) .bj-stat .tl-ik{width:18px;height:18px}
:is(#centerContent,body) .bj-stat-n{color:var(--bj-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
:is(#centerContent,body) .bj-stat-n .bj-kr{display:none}
:is(#centerContent,body) .bj-stat b{color:var(--bj-zlato-sv);font-weight:600;white-space:nowrap;text-align:right}
:is(#centerContent,body) .bj-stat-cara{
  height:1px;margin:5px 4px;
  background:linear-gradient(90deg,transparent,rgba(226,191,106,.55),transparent);
}

/* aréna: bojovníci + VS */
:is(#centerContent,body) .bj-arena{
  display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
  align-items:center;gap:10px;
  padding:12px 4px 8px;
  min-height:300px;
}
:is(#centerContent,body) .bj-bojovnik{
  display:flex;flex-direction:column;align-items:center;gap:8px;min-width:0;
  transition:filter .5s, opacity .5s;
}
:is(#centerContent,body) .bj-portret{
  position:relative;
  width:clamp(120px,15vw,190px);aspect-ratio:4/5;
  border-radius:8px;
  padding:3px;
  background:linear-gradient(180deg,#f4d98d,#a3741f 55%,#5e3f0b);
  box-shadow:0 8px 22px rgba(0,0,0,.75), 0 0 0 1px #1d1608;
}
:is(#centerContent,body) .bj-h .bj-portret{box-shadow:0 8px 22px rgba(0,0,0,.75), 0 0 18px rgba(95,208,104,.28), 0 0 0 1px #1d1608}
:is(#centerContent,body) .bj-s .bj-portret{box-shadow:0 8px 22px rgba(0,0,0,.75), 0 0 18px rgba(255,106,92,.28), 0 0 0 1px #1d1608}
:is(#centerContent,body) .bj-portret-img,
:is(#centerContent,body) .bj-portret > img{
  /* absolutně: obsah nesmí rámeček natáhnout (aspect-ratio + min-height:auto) */
  position:absolute;inset:3px;display:block;width:calc(100% - 6px);height:calc(100% - 6px);
  object-fit:cover;object-position:center 22%;border-radius:6px;background:#10131f;
}
:is(#centerContent,body) .bj-portret-bozstvo{object-fit:cover;object-position:center 20%}
:is(#centerContent,body) .bj-portret > .ico,
:is(#centerContent,body) .bj-emoji{
  position:absolute;inset:3px;
  display:flex;align-items:center;justify-content:center;width:calc(100% - 6px);height:calc(100% - 6px);
  font-size:64px;border-radius:6px;background:#10131f;
}
:is(#centerContent,body) .bj-jmenovka{text-align:center;min-width:0;max-width:100%}
:is(#centerContent,body) .bj-jmeno{
  font:700 clamp(15px,1.5vw,19px)/1.2 var(--tl-pismo-nadpis, 'Cinzel', Georgia, serif);
  color:var(--bj-zlato-sv);text-shadow:0 2px 3px #000;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
:is(#centerContent,body) .bj-uroven{font-size:14px;color:var(--bj-tlumene);text-shadow:0 1px 2px #000}

/* HP lišty */
:is(#centerContent,body) .bj-hp{
  position:relative;width:min(100%,230px);height:20px;
  border-radius:10px;overflow:hidden;
  background:linear-gradient(180deg,#0a0c12,#1b1f2b);
  border:1px solid rgba(201,162,74,.6);
  box-shadow:inset 0 2px 5px rgba(0,0,0,.8);
}
:is(#centerContent,body) .bj-hp > i{
  position:absolute;left:0;top:0;bottom:0;width:100%;
  transition:width .45s cubic-bezier(.2,.8,.3,1);
}
:is(#centerContent,body) .bj-hp-h > i{background:linear-gradient(180deg,#8ff08f 0%,#3fb04a 50%,#23772b 100%)}
:is(#centerContent,body) .bj-hp-s > i{background:linear-gradient(180deg,#ff9a88 0%,#d8392c 50%,#8e1b13 100%)}
:is(#centerContent,body) .bj-hp > span{
  position:relative;z-index:1;display:block;text-align:center;
  font:600 13px/20px var(--tl-pismo-text, Georgia, serif);color:#fff;text-shadow:0 1px 2px #000, 0 0 3px #000;
}

/* VS znak */
:is(#centerContent,body) .bj-vs{
  position:relative;display:flex;align-items:center;justify-content:center;
  width:clamp(58px,6vw,82px);aspect-ratio:1;border-radius:50%;
  background:
    radial-gradient(circle at 50% 38%, #c9322a 0%, #7a1212 58%, #3a0707 100%);
  box-shadow:
    0 0 0 3px #d6a847, 0 0 0 5px #5e3f0b, 0 0 0 6px #1d1608,
    0 0 22px rgba(255,120,60,.45), 0 6px 16px rgba(0,0,0,.8),
    inset 0 2px 6px rgba(255,220,160,.35), inset 0 -6px 10px rgba(0,0,0,.5);
}
:is(#centerContent,body) .bj-vs span{
  font:800 clamp(18px,2vw,26px)/1 var(--tl-pismo-nadpis, 'Cinzel', Georgia, serif);
  background:var(--tl-zlato-gradient, linear-gradient(180deg,#fff3c4,#c8952f));
  -webkit-background-clip:text;background-clip:text;color:transparent;
  filter:drop-shadow(0 1px 1px rgba(0,0,0,.9));
}

/* plovoucí čísla nad portrétem */
:is(#centerContent,body) .bj-plov{
  position:absolute;left:50%;top:38%;z-index:3;pointer-events:none;
  transform:translate(-50%,0);
  font:800 26px/1 var(--tl-pismo-nadpis, 'Cinzel', Georgia, serif);
  text-shadow:0 2px 0 #000, 0 0 8px rgba(0,0,0,.9);
  animation:bj-plov 1.05s ease-out forwards;
  white-space:nowrap;
}
:is(#centerContent,body) .bj-plov-dmg{color:#ff5a4d}
:is(#centerContent,body) .bj-plov-krit{color:var(--bj-krit);font-size:34px}
:is(#centerContent,body) .bj-plov-uhyb{color:var(--bj-uhyb);font-size:20px;letter-spacing:.08em}
:is(#centerContent,body) .bj-plov-minul{color:#d8d2c6;font-size:20px;letter-spacing:.08em}
:is(#centerContent,body) .bj-plov-blok{color:var(--bj-blok);font-size:18px;top:18%;letter-spacing:.08em}
:is(#centerContent,body) .bj-plov-leceni{color:var(--bj-leceni);font-size:22px;top:60%}
@keyframes bj-plov{
  0%  {opacity:0;transform:translate(-50%,10px) scale(.7)}
  15% {opacity:1;transform:translate(-50%,0) scale(1.12)}
  30% {transform:translate(-50%,-6px) scale(1)}
  100%{opacity:0;transform:translate(-50%,-52px) scale(.95)}
}

/* animace bojovníků */
@keyframes bj-vypad-p{0%{transform:none}40%{transform:translateX(34%) scale(1.04)}100%{transform:none}}
@keyframes bj-vypad-l{0%{transform:none}40%{transform:translateX(-34%) scale(1.04)}100%{transform:none}}
@keyframes bj-zasah{
  0%,100%{transform:none;filter:none}
  20%{transform:translateX(-7px);filter:brightness(1.6) saturate(1.4) drop-shadow(0 0 10px rgba(255,40,20,.8))}
  45%{transform:translateX(6px)}
  70%{transform:translateX(-3px)}
}
@keyframes bj-krit{
  0%,100%{transform:none;filter:none}
  15%{transform:scale(1.06) rotate(-2deg);filter:brightness(2) drop-shadow(0 0 16px rgba(255,200,60,.95))}
  35%{transform:translateX(9px) rotate(1.5deg)}
  60%{transform:translateX(-6px)}
  80%{transform:translateX(3px)}
}
@keyframes bj-uhyb{0%,100%{transform:none;opacity:1}35%{transform:translateX(-22px) skewX(-6deg);opacity:.55}}
@keyframes bj-smrt{
  0%{transform:none;filter:none;opacity:1}
  100%{transform:translateY(14px) rotate(-4deg) scale(.94);filter:grayscale(1) brightness(.45);opacity:.72}
}
:is(#centerContent,body) .bj-bojovnik.bj-a-vypad-p{animation:bj-vypad-p .5s ease-in-out}
:is(#centerContent,body) .bj-bojovnik.bj-a-vypad-l{animation:bj-vypad-l .5s ease-in-out}
:is(#centerContent,body) .bj-bojovnik.bj-a-zasah .bj-portret{animation:bj-zasah .42s ease-out}
:is(#centerContent,body) .bj-bojovnik.bj-a-krit .bj-portret{animation:bj-krit .6s ease-out}
:is(#centerContent,body) .bj-bojovnik.bj-a-uhyb .bj-portret{animation:bj-uhyb .45s ease-out}
:is(#centerContent,body) .bj-bojovnik.bj-a-smrt{animation:bj-smrt 1.1s ease-in forwards}

/* ------------------------------------------------------------------ log -- */
:is(#centerContent,body) .bj-log{
  height:clamp(170px,26vh,260px);overflow-y:auto;overscroll-behavior:contain;
  padding:10px 14px;
  background:rgba(6,8,15,.88);
  border:1px solid var(--bj-panel-okraj);border-radius:5px;
  box-shadow:inset 0 0 22px rgba(0,0,0,.7);
  font-size:16px;line-height:1.45;
  scrollbar-width:thin;scrollbar-color:#8a6424 transparent;
}
:is(#centerContent,body) .bj-l{padding:2px 0 2px 8px;border-left:2px solid transparent;color:var(--bj-text)}
:is(#centerContent,body) .bj-l-kolo{
  margin:8px 0 3px;padding:0;border:0;
  font:700 13px/1.3 var(--tl-pismo-nadpis, 'Cinzel', Georgia, serif);
  letter-spacing:.14em;text-transform:uppercase;color:var(--bj-zlato);
  display:flex;align-items:center;gap:10px;
}
:is(#centerContent,body) .bj-l-kolo::before,
:is(#centerContent,body) .bj-l-kolo::after{content:"";flex:1;height:1px;background:linear-gradient(90deg,transparent,rgba(226,191,106,.5),transparent)}
:is(#centerContent,body) .bj-l-kolo:first-child{margin-top:0}
:is(#centerContent,body) .bj-l-hrac{border-left-color:rgba(95,208,104,.55)}
:is(#centerContent,body) .bj-l-souper{border-left-color:rgba(255,106,92,.55)}
:is(#centerContent,body) .bj-l-krit{border-left-color:var(--bj-krit);background:linear-gradient(90deg,rgba(255,201,60,.1),transparent 70%)}
:is(#centerContent,body) .bj-l-minul{color:var(--bj-minul)}
:is(#centerContent,body) .bj-l-uhyb{border-left-color:var(--bj-uhyb)}
:is(#centerContent,body) .bj-l-blok{border-left-color:var(--bj-blok)}
:is(#centerContent,body) .bj-l-leceni{border-left-color:var(--bj-leceni)}
:is(#centerContent,body) .bj-l-xp{border-left-color:var(--bj-xp);font-weight:600}
:is(#centerContent,body) .bj-l-dulezite{
  border-left-color:var(--bj-zlato);color:var(--bj-zlato-sv);font-weight:700;
  background:linear-gradient(90deg,rgba(226,191,106,.12),transparent 75%);
}
:is(#centerContent,body) .bj-jm-h{color:var(--bj-hrac);font-weight:700}
:is(#centerContent,body) .bj-jm-s{color:var(--bj-souper);font-weight:700}
:is(#centerContent,body) .bj-dmg{color:var(--bj-dmg)}
:is(#centerContent,body) .bj-t-krit{color:var(--bj-krit);font-weight:700}
:is(#centerContent,body) .bj-t-krit .bj-dmg{color:var(--bj-krit)}
:is(#centerContent,body) .bj-t-minul{color:var(--bj-minul);font-style:italic}
:is(#centerContent,body) .bj-t-uhyb{color:var(--bj-uhyb);font-weight:700}
:is(#centerContent,body) .bj-t-blok{color:var(--bj-blok);font-weight:700}
:is(#centerContent,body) .bj-t-dvoj{color:#e7a6ff;font-weight:700}
:is(#centerContent,body) .bj-t-xp{color:var(--bj-xp)}
:is(#centerContent,body) .bj-t-zlato{color:var(--bj-zlato-sv)}
:is(#centerContent,body) .bj-hp-plus{color:var(--bj-leceni)}

/* ------------------------------------------------------------ ovládání -- */
:is(#centerContent,body) .bj-ovladani{
  display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:14px 26px;
}
:is(#centerContent,body) .bj-preskoc{
  display:inline-flex;align-items:center;gap:9px;
  min-width:250px;justify-content:center;
  padding:11px 26px;
  font:700 15px/1 var(--tl-pismo-nadpis, 'Cinzel', Georgia, serif);
  letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;
  color:#fbe7b0;text-shadow:0 1px 2px #000;
  background:
    linear-gradient(180deg, rgba(255,255,255,.14) 0%, transparent 45%),
    linear-gradient(180deg,#a8272a 0%,#7a1212 55%,#4a0a0a 100%);
  border:1px solid #d6a847;border-radius:4px;
  box-shadow:0 0 0 1px #1d1608, inset 0 1px 0 rgba(255,220,160,.3), 0 4px 10px rgba(0,0,0,.6);
  cursor:pointer;
  transition:filter .12s, transform .08s;
}
:is(#centerContent,body) .bj-preskoc:hover{filter:brightness(1.15)}
:is(#centerContent,body) .bj-preskoc:active{transform:translateY(1px)}
:is(#centerContent,body) .bj-preskoc.bj-ceka{
  background:
    linear-gradient(180deg, rgba(255,255,255,.2) 0%, transparent 45%),
    linear-gradient(180deg,#f1cd72 0%,#c8952f 55%,#8a5e17 100%);
  color:#2a1805;text-shadow:0 1px 0 rgba(255,240,200,.6);
  animation:bj-pulz 1.4s ease-in-out infinite;
}
@keyframes bj-pulz{0%,100%{box-shadow:0 0 0 1px #1d1608, 0 4px 10px rgba(0,0,0,.6)}50%{box-shadow:0 0 0 1px #1d1608, 0 0 18px rgba(241,205,114,.65)}}
:is(#centerContent,body) .bj-preskoc-ik{font-size:16px}
/* ⏩ Přeskočit boj — po kliknutí zamčené (jednou za souboj) */
:is(#centerContent,body) .bj-preskoc:disabled{filter:grayscale(.65) brightness(.75);cursor:default;transform:none}

:is(#centerContent,body) .bj-auto{
  display:inline-flex;align-items:center;gap:10px;
  font:600 15px/1 var(--tl-pismo-text, Georgia, serif);color:var(--bj-text);text-shadow:0 1px 2px #000;
}
:is(#centerContent,body) .bj-prepinac{
  display:inline-flex;align-items:center;gap:9px;
  padding:4px 12px 4px 4px;min-width:0;
  background:rgba(8,10,18,.9);
  border:1px solid rgba(201,162,74,.6);border-radius:20px;
  box-shadow:inset 0 2px 5px rgba(0,0,0,.7);
  font:700 13px/1 var(--tl-pismo-nadpis, 'Cinzel', Georgia, serif);letter-spacing:.08em;
  color:var(--bj-tlumene);text-shadow:none;cursor:pointer;
}
:is(#centerContent,body) .bj-knoflik{
  position:relative;width:40px;height:22px;border-radius:11px;flex:0 0 auto;
  background:#2a2d38;box-shadow:inset 0 1px 3px rgba(0,0,0,.8);
  transition:background .2s;
}
:is(#centerContent,body) .bj-knoflik::after{
  content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;
  background:linear-gradient(180deg,#f7ecd0,#b9a67a);box-shadow:0 1px 3px rgba(0,0,0,.7);
  transition:transform .2s;
}
:is(#centerContent,body) .bj-prepinac.zap{color:var(--bj-hrac)}
:is(#centerContent,body) .bj-prepinac.zap .bj-knoflik{background:linear-gradient(180deg,#4fc25a,#23772b)}
:is(#centerContent,body) .bj-prepinac.zap .bj-knoflik::after{transform:translateX(18px)}
:is(#centerContent,body) .bj-prepinac:focus-visible,
:is(#centerContent,body) .bj-preskoc:focus-visible,
:is(#centerContent,body) .bv-pokracuj:focus-visible{outline:2px solid var(--bj-zlato-sv);outline-offset:3px}

:is(#centerContent,body) .bj-prazdny{align-items:center}
:is(#centerContent,body) .bj-prazdny-t{color:var(--bj-tlumene);padding:40px 0}

/* ------------------------------------------ tooltip statu (v .item-tip) -- */
.item-tip:has(.bj-tip){max-width:min(400px, calc(100vw - 16px))}
.item-tip .bj-tip{min-width:320px;max-width:386px;padding:10px 14px 10px}
.bj-tip-hlava{
  display:grid;grid-template-columns:26px minmax(0,1fr) auto;align-items:center;gap:9px;
  padding-bottom:7px;margin-bottom:6px;border-bottom:1px solid rgba(214,178,98,.35);
}
.bj-tip-hlava .tl-ik{width:24px;height:24px}
.bj-tip-nazev{font:700 18px/1.15 var(--tl-pismo-nadpis, 'Cinzel', Georgia, serif);color:#f0c75e}
.bj-tip-hlava b{font:700 22px/1 var(--tl-pismo-nadpis, 'Cinzel', Georgia, serif);color:#fff3c4}
.bj-tip-kdo{font-size:13px;color:#a99e84;margin:-2px 0 6px}
.bj-tip-r{display:flex;justify-content:space-between;gap:16px;font-size:15px;line-height:1.5}
.bj-tip-r span{color:#a99e84}
.bj-tip-r b{color:#e6ddc6;font-weight:600;text-align:right}
.bj-tip-r em.bj-plus{font-style:normal;color:#5fd068}
.bj-tip-pozn{font-size:13px;color:#a99e84;font-style:italic;margin-top:3px}
.bj-tip-popis{
  margin-top:8px;padding-top:7px;border-top:1px solid rgba(214,178,98,.25);
  font-size:14.5px;line-height:1.4;color:#d9cfb6;
}
.bj-tip-ucinek{margin-top:6px;font-size:14px;color:#6fd3ff;font-weight:600}

/* ==========================================================================
   VYHLÁŠENÍ VÝSLEDKU (bv-)
   ========================================================================== */
:is(#centerContent,body) .bv{
  display:grid;grid-template-columns:minmax(0,1fr);gap:14px;
  padding:16px;
  border:1px solid var(--bj-bronz);border-radius:6px;
  background:
    radial-gradient(90% 55% at 50% 12%, rgba(226,191,106,.16), transparent 70%),
    linear-gradient(180deg, rgba(6,8,16,.72) 0%, rgba(6,8,16,.9) 45%, rgba(6,8,16,.96) 100%),
    url(../img/boj/arena_v1.jpg) center 30%/cover no-repeat,
    #0b0d16;
  box-shadow:0 0 0 1px #1d1608, inset 0 0 0 1px rgba(233,200,120,.14), 0 10px 30px rgba(0,0,0,.55);
  animation:bv-prichod .45s ease-out;
}
:is(#centerContent,body) .bv.bv-prohra{
  background:
    radial-gradient(90% 55% at 50% 12%, rgba(166,28,28,.22), transparent 70%),
    linear-gradient(180deg, rgba(6,8,16,.78) 0%, rgba(6,8,16,.92) 45%, rgba(6,8,16,.97) 100%),
    url(../img/boj/arena_v1.jpg) center 30%/cover no-repeat,
    #0b0d16;
}
@keyframes bv-prichod{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

:is(#centerContent,body) .bv-hlavni{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,1.25fr) minmax(0,1fr);
  align-items:center;gap:14px;
}

/* banner */
:is(#centerContent,body) .bv-banner{text-align:center;padding:6px 0}
:is(#centerContent,body) .bv-banner-ik{font-size:44px;line-height:1;filter:drop-shadow(0 3px 6px rgba(0,0,0,.8));animation:bv-ik .6s cubic-bezier(.2,1.6,.4,1) both}
@keyframes bv-ik{from{transform:scale(.4);opacity:0}to{transform:none;opacity:1}}
:is(#centerContent,body) .bv-titul{
  margin:6px 0 4px;
  font:800 clamp(30px,4.2vw,52px)/1.05 var(--tl-pismo-nadpis, 'Cinzel', Georgia, serif);
  letter-spacing:.14em;text-transform:uppercase;
  background:var(--tl-zlato-gradient, linear-gradient(180deg,#fff3c4,#c8952f));
  -webkit-background-clip:text;background-clip:text;color:transparent;
  text-shadow:none;
  filter:drop-shadow(0 3px 4px rgba(0,0,0,.95));
}
:is(#centerContent,body) .bv-prohra .bv-titul{background:linear-gradient(180deg,#ffb3a8 0%,#e0463a 45%,#7a1212 100%);-webkit-background-clip:text;background-clip:text}
:is(#centerContent,body) .bv-podtitul{font-size:18px;color:var(--bj-text);text-shadow:0 1px 2px #000}
:is(#centerContent,body) .bv-kola{margin-top:4px;font-size:14px;color:var(--bj-tlumene);letter-spacing:.04em}

/* účastníci */
:is(#centerContent,body) .bv-ucastnik{
  display:flex;flex-direction:column;align-items:center;gap:8px;min-width:0;
  padding:12px 10px;border-radius:6px;
  background:var(--bj-panel);border:1px solid rgba(201,162,74,.3);
  transition:filter .3s;
}
:is(#centerContent,body) .bv-ucastnik.bv-vitez{
  border-color:var(--bj-zlato);
  box-shadow:0 0 0 1px #1d1608, 0 0 22px rgba(241,205,114,.3), inset 0 0 18px rgba(241,205,114,.08);
}
:is(#centerContent,body) .bv-ucastnik.bv-porazeny{filter:grayscale(.75) brightness(.7)}
:is(#centerContent,body) .bv-portret{
  width:clamp(96px,10vw,140px);aspect-ratio:1;padding:3px;border-radius:8px;
  background:linear-gradient(180deg,#f4d98d,#a3741f 55%,#5e3f0b);
}
:is(#centerContent,body) .bv-porazeny .bv-portret{background:linear-gradient(180deg,#8f8a80,#4a4740)}
:is(#centerContent,body) .bv-portret-img,
:is(#centerContent,body) .bv-portret > img,
:is(#centerContent,body) .bv-portret > .ico,
:is(#centerContent,body) .bv-portret .bj-emoji{
  display:flex;align-items:center;justify-content:center;
  width:100%;height:100%;object-fit:cover;border-radius:6px;background:#10131f;font-size:48px;
}
:is(#centerContent,body) .bv-info{text-align:center;width:100%;min-width:0}
:is(#centerContent,body) .bv-jmeno{
  font:700 17px/1.2 var(--tl-pismo-nadpis, 'Cinzel', Georgia, serif);color:var(--bj-zlato-sv);
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
:is(#centerContent,body) .bv-uroven{font-size:14px;color:var(--bj-tlumene);display:flex;gap:6px;justify-content:center;flex-wrap:wrap}
:is(#centerContent,body) .bv-hp{position:relative;height:16px;margin:6px auto 0;max-width:190px;border-radius:8px;overflow:hidden;background:#0a0c12;border:1px solid rgba(201,162,74,.5)}
:is(#centerContent,body) .bv-hp > i{position:absolute;left:0;top:0;bottom:0}
:is(#centerContent,body) .bv-hp-h > i{background:linear-gradient(180deg,#8ff08f,#23772b)}
:is(#centerContent,body) .bv-hp-s > i{background:linear-gradient(180deg,#ff9a88,#8e1b13)}
:is(#centerContent,body) .bv-hp > span{position:relative;display:block;text-align:center;font:600 12px/16px var(--tl-pismo-text, Georgia, serif);color:#fff;text-shadow:0 1px 2px #000}

/* panely */
:is(#centerContent,body) .bv-panel{
  padding:12px 14px 14px;border-radius:6px;
  background:var(--bj-panel);border:1px solid var(--bj-panel-okraj);
  box-shadow:inset 0 0 18px rgba(0,0,0,.55);min-width:0;
}
:is(#centerContent,body) .bv-panel-h{
  margin:0 0 10px;padding:0;
  font:700 15px/1.2 var(--tl-pismo-nadpis, 'Cinzel', Georgia, serif);
  letter-spacing:.16em;text-transform:uppercase;color:var(--bj-zlato);
  display:flex;align-items:center;gap:10px;text-shadow:0 1px 2px #000;
}
:is(#centerContent,body) .bv-panel-h::after{content:"";flex:1;height:1px;background:linear-gradient(90deg,rgba(226,191,106,.55),transparent)}

/* odměny */
:is(#centerContent,body) .bv-dlazdice-rada{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(150px,100%),1fr));gap:10px;margin-bottom:12px}
:is(#centerContent,body) .bv-dlazdice{
  display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto;column-gap:10px;align-items:center;
  padding:10px 12px;border-radius:5px;min-width:0;
  background:linear-gradient(180deg,rgba(30,34,50,.9),rgba(12,14,24,.9));
  border:1px solid rgba(201,162,74,.4);
}
:is(#centerContent,body) .bv-d-nazev{grid-column:2;grid-row:1;font-size:13px;color:var(--bj-tlumene);letter-spacing:.05em;text-transform:uppercase}
:is(#centerContent,body) .bv-dlazdice b{grid-column:2;grid-row:2;font:700 21px/1.15 var(--tl-pismo-nadpis, 'Cinzel', Georgia, serif);color:var(--bj-zlato-sv)}
:is(#centerContent,body) .bv-d-ik{
  grid-column:1;grid-row:1 / span 2;width:34px;height:34px;
  background:center/contain no-repeat;
}
:is(#centerContent,body) .bv-d-xp .bv-d-ik{background-image:url(../img/ui/xp.png)}
:is(#centerContent,body) .bv-d-zlato .bv-d-ik{background-image:url(../img/ui/gold.png)}
:is(#centerContent,body) .bv-d-pocta .bv-d-ik,
:is(#centerContent,body) .bv-d-pocta-stav .bv-d-ik{background-image:url(../img/ui/pocta.png)}
:is(#centerContent,body) .bv-d-xp b{color:var(--bj-xp)}
:is(#centerContent,body) .bv-dlazdice.minus b{color:var(--bj-souper)}
:is(#centerContent,body) .bv-d-safir .bv-d-ik::before,
:is(#centerContent,body) .bv-d-postup .bv-d-ik::before,
:is(#centerContent,body) .bv-d-skore .bv-d-ik::before,
:is(#centerContent,body) .bv-d-znameni .bv-d-ik::before,
:is(#centerContent,body) .bv-d-poradi .bv-d-ik::before{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:26px}
:is(#centerContent,body) .bv-d-safir .bv-d-ik::before{content:"💎"}
:is(#centerContent,body) .bv-d-postup .bv-d-ik::before{content:"🏛"}
:is(#centerContent,body) .bv-d-skore .bv-d-ik::before{content:"⚡"}
:is(#centerContent,body) .bv-d-znameni .bv-d-ik::before{content:"✦";color:var(--bj-zlato-sv)}
:is(#centerContent,body) .bv-d-poradi .bv-d-ik::before{content:"🏆"}

:is(#centerContent,body) .bv-predmety-h{
  margin:2px 0 8px;font:700 13px/1 var(--tl-pismo-nadpis, 'Cinzel', Georgia, serif);
  letter-spacing:.14em;text-transform:uppercase;color:var(--bj-tlumene);
}
:is(#centerContent,body) .bv-predmety{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:8px}
:is(#centerContent,body) .bv-predmet{
  display:flex;align-items:center;gap:10px;min-width:0;
  padding:6px 10px 6px 6px;border-radius:5px;
  background:rgba(16,19,31,.9);border:1px solid rgba(201,162,74,.3);
  cursor:default;
}
:is(#centerContent,body) .bv-predmet[data-tip]{cursor:help}
:is(#centerContent,body) .bv-predmet-ram{
  position:relative;flex:0 0 auto;width:52px;height:52px;border-radius:5px;
  display:flex;align-items:center;justify-content:center;
  background:radial-gradient(circle at 50% 40%,#2a2f42,#0c0e17);
  box-shadow:inset 0 0 0 2px rgba(150,140,120,.45);
}
:is(#centerContent,body) .bv-predmet-img{width:44px;height:44px;object-fit:contain;font-size:28px;display:flex;align-items:center;justify-content:center}
:is(#centerContent,body) .bv-predmet-ram em{
  position:absolute;right:2px;bottom:1px;font:700 12px/1 var(--tl-pismo-text, Georgia, serif);font-style:normal;
  color:#fff;text-shadow:0 1px 2px #000, 0 0 2px #000;
}
:is(#centerContent,body) .bv-predmet-t{display:flex;flex-direction:column;min-width:0}
:is(#centerContent,body) .bv-predmet-t b{font-size:16px;line-height:1.2;color:var(--bj-text);font-weight:700;overflow-wrap:anywhere}
/* název v barvě rarity (sdílený .rar-txt; tady jen přebití ID specificity) */
:is(#centerContent,body) .bv-predmet-t b.rar-txt{color:var(--rc)}
:is(#centerContent,body) .bv-predmet-t b.rar-txt.rar-black{color:#ddd3f7;text-shadow:0 0 6px rgba(170,140,255,.55),0 1px 2px #000}
:is(#centerContent,body) .bv-predmet-t small{font-size:13px;color:var(--bj-tlumene)}
:is(#centerContent,body) .bv-predmety-nic,
:is(#centerContent,body) .bv-odmeny-nic{color:var(--bj-tlumene);font-style:italic;font-size:16px}
:is(#centerContent,body) .bv-odmeny-nic{margin-bottom:10px;color:#e8b3aa;font-style:normal;font-weight:600}
:is(#centerContent,body) .bv-odmeny-nic.bv-chyba{color:#ffb070}
:is(#centerContent,body) .bv-pozn{margin-top:10px;font-size:15px;color:var(--bj-zlato-sv)}

/* bonusy */
:is(#centerContent,body) .bv-bonus{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline;padding:3px 0;font-size:16px}
:is(#centerContent,body) .bv-bonus b{color:var(--bj-hrac)}
:is(#centerContent,body) .bv-bonus span{color:var(--bj-text)}

/* statistiky + průběh */
:is(#centerContent,body) .bv-dolni{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:14px;align-items:start}
:is(#centerContent,body) .bv-st{display:block}
:is(#centerContent,body) .bv-st-tab{width:100%;border-collapse:collapse;table-layout:fixed;font-size:15px;line-height:1.5}
:is(#centerContent,body) .bv-st-tab th,
:is(#centerContent,body) .bv-st-tab td{padding:3px 6px;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
:is(#centerContent,body) .bv-st-tab th:first-child,
:is(#centerContent,body) .bv-st-tab td:first-child{text-align:left;width:46%;color:var(--bj-tlumene)}
:is(#centerContent,body) .bv-st-tab thead th{
  font:700 13px/1.3 var(--tl-pismo-nadpis, 'Cinzel', Georgia, serif);letter-spacing:.04em;
  padding-bottom:6px;border-bottom:1px solid rgba(201,162,74,.35);
}
:is(#centerContent,body) .bv-st-tab thead th{white-space:normal;overflow-wrap:anywhere;vertical-align:bottom}
:is(#centerContent,body) .bv-st-tab th.bv-st-h{color:var(--bj-hrac)}
:is(#centerContent,body) .bv-st-tab th.bv-st-s{color:var(--bj-souper)}
:is(#centerContent,body) .bv-st-tab tbody td{color:var(--bj-text);font-weight:600}
:is(#centerContent,body) .bv-st-tab tbody tr:nth-child(even){background:rgba(255,255,255,.025)}
:is(#centerContent,body) .bv-st-tab td small{color:var(--bj-tlumene);font-size:12.5px;font-weight:400}
:is(#centerContent,body) .bv-st-tab tfoot td{padding-top:7px;border-top:1px dashed rgba(201,162,74,.3);color:var(--bj-text);font-weight:600}
:is(#centerContent,body) .bv-st-tab tfoot td:first-child{color:var(--bj-tlumene);font-weight:400}
:is(#centerContent,body) .bv-st-pozn{margin-top:8px;font-size:13.5px;color:var(--bj-tlumene)}

:is(#centerContent,body) .bv-log{
  max-height:340px;overflow-y:auto;overscroll-behavior:contain;padding-right:6px;
  font-size:15px;line-height:1.45;
  scrollbar-width:thin;scrollbar-color:#8a6424 transparent;
}
:is(#centerContent,body) .bv-kolo{padding:4px 0 6px;border-bottom:1px solid rgba(201,162,74,.12)}
:is(#centerContent,body) .bv-kolo-h{
  font:700 12px/1.4 var(--tl-pismo-nadpis, 'Cinzel', Georgia, serif);letter-spacing:.14em;text-transform:uppercase;
  color:var(--bj-zlato);margin-bottom:2px;
}
:is(#centerContent,body) .bv-kolo-konec{border-bottom:0;padding-top:8px}

/* jediné CTA */
:is(#centerContent,body) .bv-cta{display:flex;justify-content:center;padding-top:2px}
:is(#centerContent,body) .bv-pokracuj{
  min-width:min(320px,100%);padding:14px 34px;
  font:800 18px/1 var(--tl-pismo-nadpis, 'Cinzel', Georgia, serif);letter-spacing:.14em;text-transform:uppercase;
  color:#2a1805;text-shadow:0 1px 0 rgba(255,240,200,.6);
  background:
    linear-gradient(180deg, rgba(255,255,255,.28) 0%, transparent 45%),
    var(--tl-zlato-plocha, linear-gradient(180deg,#f8e6a8,#b88632));
  border:1px solid #5e3f0b;border-radius:5px;
  box-shadow:0 0 0 1px #1d1608, inset 0 1px 0 rgba(255,255,255,.55), 0 5px 14px rgba(0,0,0,.6), 0 0 20px rgba(241,205,114,.25);
  cursor:pointer;transition:filter .12s, transform .08s;
}
:is(#centerContent,body) .bv-pokracuj:hover:not(:disabled){filter:brightness(1.1)}
:is(#centerContent,body) .bv-pokracuj:active:not(:disabled){transform:translateY(1px)}
:is(#centerContent,body) .bv-pokracuj:disabled{opacity:.6;cursor:wait}
:is(#centerContent,body) .bv-prazdny{text-align:center;padding:40px 16px}

/* ============================================================== mobil ==== */
@media (max-width: 900px){
  :is(#centerContent,body) .bj-scena{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  :is(#centerContent,body) .bj-arena{grid-column:1 / -1;grid-row:1;min-height:0}
  :is(#centerContent,body) .bj-staty-h{grid-column:1;grid-row:2;align-self:stretch}
  :is(#centerContent,body) .bj-staty-s{grid-column:2;grid-row:2;align-self:stretch}
  :is(#centerContent,body) .bv-dolni{grid-template-columns:minmax(0,1fr)}
}
@media (max-width: 640px){
  :is(#centerContent,body) .bj{padding:10px 8px 12px;gap:10px}
  :is(#centerContent,body) .bj-arena{gap:6px;padding:6px 0 2px}
  :is(#centerContent,body) .bj-portret{width:clamp(92px,32vw,130px)}
  :is(#centerContent,body) .bj-vs{width:48px}
  :is(#centerContent,body) .bj-scena{gap:8px}
  :is(#centerContent,body) .bj-staty{padding:5px 4px}
  :is(#centerContent,body) .bj-stat{grid-template-columns:16px minmax(0,1fr) auto;gap:4px;padding:3px 3px;font-size:13.5px}
  :is(#centerContent,body) .bj-stat .tl-ik{width:15px;height:15px}
  :is(#centerContent,body) .bj-log{font-size:15px;height:210px;padding:8px 10px}
  :is(#centerContent,body) .bj-ovladani{flex-direction:column;gap:10px}
  :is(#centerContent,body) .bj-preskoc{width:100%;min-width:0}
  :is(#centerContent,body) .bj-plov{font-size:21px}
  :is(#centerContent,body) .bj-plov-krit{font-size:26px}

  /* pořadí dle zadání: výsledek, účastníci, odměny, statistiky, log, pokračovat */
  :is(#centerContent,body) .bv{padding:12px 10px}
  :is(#centerContent,body) .bv-hlavni{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}
  :is(#centerContent,body) .bv-banner{grid-column:1 / -1;grid-row:1}
  :is(#centerContent,body) .bv-ucastnik{padding:8px 6px}
  :is(#centerContent,body) .bv-portret{width:clamp(72px,24vw,100px)}
  :is(#centerContent,body) .bv-dlazdice-rada{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  :is(#centerContent,body) .bv-dlazdice{padding:8px 8px;column-gap:7px}
  :is(#centerContent,body) .bv-dlazdice b{font-size:17px;overflow-wrap:anywhere}
  :is(#centerContent,body) .bv-d-nazev{font-size:11.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  :is(#centerContent,body) .bj-stat-n .bj-dl{display:none}
  :is(#centerContent,body) .bj-stat-n .bj-kr{display:inline}
  :is(#centerContent,body) .bv-st-tab td:first-child{white-space:normal}
  :is(#centerContent,body) .bv-predmety{grid-template-columns:minmax(0,1fr)}
  :is(#centerContent,body) .bv-st-tab{font-size:13.5px}
  :is(#centerContent,body) .bv-st-tab th,
  :is(#centerContent,body) .bv-st-tab td{padding:3px 4px}
  :is(#centerContent,body) .bv-st-tab th:first-child,
  :is(#centerContent,body) .bv-st-tab td:first-child{width:44%}
  :is(#centerContent,body) .bv-log{max-height:300px}
  :is(#centerContent,body) .bv-pokracuj{width:100%}
  .item-tip .bj-tip{min-width:0;max-width:calc(100vw - 40px)}
}

@media (prefers-reduced-motion: reduce){
  :is(#centerContent,body) .bj-bojovnik,
  :is(#centerContent,body) .bj-bojovnik .bj-portret,
  :is(#centerContent,body) .bv,
  :is(#centerContent,body) .bv-banner-ik,
  :is(#centerContent,body) .bj-preskoc.bj-ceka{animation-duration:.01ms !important}
}
