/* PvP nas Zonas Selvagens (web/js/pvp.js; the owner's mockup v1 with his corrections, 2026-10-31): the client's pieces
   (pf-panel, an-kv, aw-path, ba-outcome) with blood red over the grey, "macabro, sinistro". The skulls keep their
   original 11 px (enlarged, they blurred in the mockup). The red of the map beats softly and never covers it. */
.pv-skull{width:11px;height:11px;image-rendering:pixelated;vertical-align:-1px}

/* the windows of the zone: a title soaked in blood, the frame darker */
.pv-win .window-title,.ba-outcome.pv-out .ba-outcome-window>.window-title{background:linear-gradient(#4a0606,#1e0202);color:#e8584c;text-shadow:1px 1px #000}
.pv-win .window-title span{color:#e8584c}
.pv-win .wb,.pv-out .ba-outcome-window{background-color:#1b1515;box-shadow:inset 0 0 40px #3a0000}
.pv-win .pf-panel{background:#201818;border-color:#0d0505}
.pv-win .pf-head{background:linear-gradient(#3a0a0a,#240404);color:#e4ca78}
.pv-out .ba-outcome-banner{background:radial-gradient(ellipse at 50% 30%,#5a0000 0,#2a0202 55%,#120000 100%)}
.pv-out .ba-outcome-banner strong{color:#ff5a4a;text-shadow:0 0 6px #8a0000,1px 1px #000}
.pv-out .ba-outcome-banner small{color:#d8a0a0;font-style:italic}
.pv-out .st-art{background:#0d0000;box-shadow:inset 0 0 12px #8a0000}
.pv-art{display:grid;place-items:center;width:32px;height:32px}
.pv-dead-art{position:relative;display:grid;place-items:center}
.pv-dead-art .pv-skull{position:absolute;right:0;top:0}
.pv-dead .st-art{position:relative}
.pv-dead .st-art::after{content:"";position:absolute;inset:auto 2px 2px 2px;height:10px;background:radial-gradient(ellipse at 40% 50%,#8a0303 0,#5a0000 60%,transparent 70%)}

/* Caçar: the hunt's tile and its panel */
.rp-tile.pv-wild{position:relative;box-shadow:inset 0 0 14px #8a000099}
.rp-tile .pv-tag{position:absolute;top:2px;left:2px;display:grid;place-items:center;width:15px;height:15px;background:#120000;border:1px solid #5a0000}
.pv-zone{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:6px;align-items:center;margin:4px 6px;padding:3px 6px;background:linear-gradient(90deg,#3a0000,#1a0505);border:1px solid #5a0000;box-shadow:inset 0 0 10px #000}
.pv-zone b{display:block;font:12px/14px 'Tibia Pixel',Verdana,sans-serif;color:#ff5a4a;font-weight:normal}
.pv-zone small{display:block;font:10px/12px 'Tibia Pixel',Verdana,sans-serif;color:#d8a0a0;overflow-wrap:anywhere}

/* the map of a zone: the light eaten from the edges, blood red (Admin › Regras › PvP: on, strength, beat) */
.pv-vignette{position:absolute;inset:0;pointer-events:none;z-index:2;opacity:0;background:radial-gradient(ellipse at 50% 46%,transparent 42%,#5a000088 70%,#200000ee 100%)}
body.pv-fx .pv-vignette{opacity:calc(var(--pv-a,.6) * .7);animation:pv-beat var(--pv-beat,2400ms) ease-in-out infinite alternate}
body.pv-fx.pv-fight .pv-vignette{animation-duration:calc(var(--pv-beat,2400ms) / 2);animation-name:pv-beat-fight}
@keyframes pv-beat{from{opacity:calc(var(--pv-a,.6) * .45)}to{opacity:calc(var(--pv-a,.6) * .75)}}
@keyframes pv-beat-fight{from{opacity:calc(var(--pv-a,.6) * .7)}to{opacity:var(--pv-a,.6)}}
@media (prefers-reduced-motion:reduce){body.pv-fx .pv-vignette{animation:none}}
body.pv-on #nx{background:linear-gradient(90deg,#3a0000,#140303);border-color:#5a0000}

/* the attack */
.pv-alert{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:6px;align-items:center;margin:2px 4px 0;padding:3px 5px;background:#2a0000;border:1px solid #8a0000;box-shadow:0 0 10px #8a0000aa,inset 0 0 8px #000;animation:pv-pulse 1.2s ease-in-out infinite alternate}
.pv-alert .pv-face{display:grid;place-items:center;width:36px;height:36px;background:#0d0000;overflow:hidden}
.pv-alert .t{min-width:0}
.pv-alert b{display:block;font:12px/14px 'Tibia Pixel',Verdana,sans-serif;color:#fff;font-weight:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pv-alert small{display:block;font:10px/12px 'Tibia Pixel',Verdana,sans-serif;color:#ff8a7a}
.pv-alert .pv-acts{display:flex;gap:3px}
@keyframes pv-pulse{from{box-shadow:0 0 4px #8a0000aa,inset 0 0 8px #000}to{box-shadow:0 0 12px #c00000,inset 0 0 8px #000}}
@media (prefers-reduced-motion:reduce){.pv-alert{animation:none}}

/* a line that opens a window (Party › Defesa, Status › Caveiras) */
.pv-line{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:6px;align-items:center;width:100%;margin:4px 0 0;padding:4px 6px;text-align:left}
.pv-line b{display:block;font:12px/14px 'Tibia Pixel',Verdana,sans-serif;font-weight:normal}
.pv-line small{display:block;font:10px/12px 'Tibia Pixel',Verdana,sans-serif;color:#a9a9a9;overflow-wrap:anywhere}
.pf-panel>.pv-line{width:calc(100% - 8px);margin:4px}

/* Caveiras */
.pv-me{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:center;padding:6px}
.pv-me .cy-well{display:grid;place-items:center;width:52px;height:52px}
.pv-me b{display:block;font:13px/15px 'Tibia Pixel',Verdana,sans-serif;color:#fff;font-weight:normal}
.pv-me small{display:block;font:11px/13px 'Tibia Pixel',Verdana,sans-serif;color:#d8a0a0}
.pv-me small b{display:inline;font:inherit;color:#fff}
.pv-me small.bad{color:#e8584c}
.pv-frag-rows{display:grid;gap:3px;padding:4px}
.pv-frag{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:6px;align-items:center;font:11px/13px 'Tibia Pixel',Verdana,sans-serif;color:#c0c0c0}
.pv-frag b{color:#e4ca78;font-weight:normal}
.pv-frag.is-near b{color:#ff5a4a}
.pv-frags{display:flex;gap:2px;min-width:0}
.pv-frags i{flex:1;height:8px;background:#1c1010;border:1px solid #0d0505;box-shadow:1px 1px #4a2a2a}
.pv-frags i.on{background:linear-gradient(#c00000,#5a0000)}
.pv-deaths{display:grid;gap:3px;padding:4px}
.pv-death{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:6px;align-items:center;padding:2px 5px;background:#1a0f0f;border:1px solid #0d0505;box-shadow:inset 1px 1px #000,1px 1px #4a2a2a;font:11px/13px 'Tibia Pixel',Verdana,sans-serif}
.pv-death .cy-well{display:grid;place-items:center;width:34px;height:34px;overflow:hidden}
.pv-death .t{min-width:0}
.pv-death b{display:block;color:#fff;font-weight:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pv-death small{display:block;color:#d8a0a0;font-size:10px;overflow-wrap:anywhere}
.pv-death i{font-style:normal;font-size:10px;color:#8a6a6a;white-space:nowrap}

/* Defesa */
.pv-def .aw-path p{margin:0;font:10px/12px 'Tibia Pixel',Verdana,sans-serif;color:#a9a9a9;text-align:center}
.pv-def .aw-path b{font:12px/14px 'Tibia Pixel',Verdana,sans-serif;color:#e8584c;font-weight:normal}
.pv-def .aw-path.active b{color:#fff}
.pv-def .pv-big{display:grid;place-items:center;height:16px}
.pv-chips{padding:4px}
