/* Player profile: Bestiary Arena panels (textured window, title band with icon, striped
   tables with dark group rows), the replay history and the records per city. */
.pf-tabs{display:flex;gap:2px;margin:0 0 6px}
.pf-tabs button{flex:1;min-height:26px}
.pf-tabs button.active,.pf-chips button.active{color:#fff;border-color:#c5b47c;box-shadow:inset 0 0 0 1px #c5b47c}
.pf-panel{margin:0 0 8px;border:1px solid #111;box-shadow:1px 1px #6a6a6a,inset 1px 1px #6a6a6a;background:#3d3d3d url('/assets/ui/classic/panel-texture.png') repeat}
.pf-head{display:flex;align-items:center;gap:4px;margin:0;padding:2px 6px;height:19px;font:11px 'Tibia Pixel',Verdana,sans-serif;color:#c0c0c0;background:#2f2f2f;border-bottom:1px solid #111;box-shadow:0 1px #5e5e5e}
.pf-head small{color:#a9a9a9}
.pf-body{padding:6px}
.pf-icon{width:16px;height:16px;object-fit:contain;image-rendering:pixelated;vertical-align:middle;margin-right:4px;flex:0 0 auto}
.pf-head .pf-icon{width:14px;height:14px}
.pf-empty{padding:10px;text-align:center;color:#a9a9a9}
.pf-note{margin:4px 0 6px;color:#a9a9a9}
.pf-good{color:#5fc85f}
.pf-mini{min-height:22px;padding:2px 6px}

/* Player information */
.pf-player{display:flex;gap:8px;align-items:center}
.pf-avatar{position:relative;flex:0 0 64px;height:64px;background:#262626;border:1px solid #121212;box-shadow:inset 0 0 0 1px #3c3c3c}
.pf-avatar .ba-sprite{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;image-rendering:pixelated}
.pf-player-main{flex:1;min-width:0}
.pf-name{display:flex;align-items:center;justify-content:space-between;gap:6px}
.pf-name strong{font:bold 11px 'Tibia Pixel',Verdana,sans-serif;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pf-level{display:flex;justify-content:space-between;margin:4px 0 2px;color:#a9a9a9}
.pf-bar{height:6px;background:#111;border:1px solid #000;box-shadow:1px 1px #5e5e5e}
.pf-bar i{display:block;height:100%;background:#d8a53b;box-shadow:inset 0 1px #f2cf73}
.pf-edit{display:grid;grid-template-columns:1fr 1fr auto;gap:6px;align-items:end;margin-top:6px}
.pf-edit label{display:flex;flex-direction:column;gap:2px;min-width:0}
.pf-edit input,.pf-edit select{width:100%}
.pf-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.pf-facts div{display:flex;flex-direction:column;gap:2px;min-width:0}
.pf-facts small{color:#a9a9a9}

/* Stats table */
.pf-table{width:100%;border-collapse:collapse;background:#2b2b2b;border:1px solid #111;box-shadow:1px 1px #5e5e5e}
.pf-table td,.pf-table th{padding:3px 6px;border:1px solid #1a1a1a;text-align:left;font-size:11px}
.pf-table td:last-child{text-align:center;color:#fff;width:34%}
.pf-table tr:nth-child(even) td{background:#323232}
.pf-table .pf-group th{background:#1c1c1c;color:#fff;font-weight:bold}
.pf-table td:first-child{display:flex;align-items:center}
.pf-table small{color:#a9a9a9}
.pf-records td:first-child{display:table-cell}
.pf-records td,.pf-records th{text-align:center}
.pf-records td:first-child,.pf-records th:first-child{text-align:left}
.pf-records td:last-child{width:auto}
.pf-dim td{color:#777}

/* Last 7 days */
.pf-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;align-items:end}
.pf-day{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:0}
.pf-col{position:relative;display:flex;flex-direction:column-reverse;width:100%;max-width:26px;height:64px;background:#1e1e1e;border:1px solid #111;box-shadow:1px 1px #5e5e5e}
.pf-col i{display:block;width:100%}
.pf-win{background:#4f8a46;box-shadow:inset 0 1px #77a46d}
.pf-loss{background:#8a3a34;box-shadow:inset 0 1px #a5605a}
.pf-day small{color:#a9a9a9;text-transform:capitalize}
.pf-strip{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:center;margin:6px 0;padding:3px 6px;background:#262626;border:1px solid #111}
.pf-strip span{display:inline-flex;align-items:center}
.pf-subtitle{margin:6px 0 4px;color:#a9a9a9}
.pf-favs,.pf-team,.pf-collection{display:grid;grid-template-columns:repeat(auto-fill,minmax(40px,1fr));gap:4px}
.pf-team{grid-template-columns:repeat(5,minmax(0,1fr));margin-bottom:6px}
.pf-team .ba-slot,.pf-collection .ba-slot{max-width:56px}
.pf-fav{display:flex;flex-direction:column;align-items:center;gap:2px}
.pf-farm{display:flex;gap:8px;align-items:center}
.pf-farm>div:first-child{position:relative;flex:0 0 48px;height:48px;background:#262626;border:1px solid #121212}
.pf-farm>div:first-child .ba-sprite{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;image-rendering:pixelated}
.pf-farm>div:last-child{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.pf-farm-line{display:flex;flex-wrap:wrap;gap:2px 10px}
.pf-farm-line span{display:inline-flex;align-items:center}

/* Replay history */
.pf-filter-box{margin:0 0 4px;padding:3px 6px;background:#2f2f2f;border:1px solid #111}
.pf-filter-box summary{cursor:pointer;min-height:20px;line-height:20px}
.pf-filter-box summary b{color:#e4ca78}
.pf-filter-box[open] summary{margin-bottom:4px}
.pf-filter-box #pf-clear{margin-top:4px}
.pf-note-row{display:flex;align-items:center;gap:6px;justify-content:space-between}
.pf-note-row .pf-note{flex:1}
.pf-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px 6px}
.pf-filter{display:flex;flex-direction:column;gap:2px;min-width:0}
.pf-filter span{color:#a9a9a9}
.pf-filter select{width:100%}
.pf-chips{display:flex;flex-wrap:wrap;gap:3px;margin:6px 0 0}
.pf-chips button{min-height:22px;padding:2px 6px}
.pf-day-title{margin:8px 0 4px;font:bold 11px 'Tibia Pixel',Verdana,sans-serif;color:#e4ca78;text-transform:capitalize}
.pf-replays{display:flex;flex-direction:column;gap:5px}
.pf-replay{border:1px solid #111;border-left:3px solid #4f8a46;background:#353535;box-shadow:1px 1px #5e5e5e;padding:4px 6px;content-visibility:auto;contain-intrinsic-size:auto 112px}
.pf-replay.is-loss{border-left-color:#8a3a34}
.pf-replay header,.pf-replay footer{display:flex;flex-wrap:wrap;align-items:center;gap:2px 8px}
.pf-replay header strong{flex:1 1 140px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pf-replay header small,.pf-replay footer small{color:#a9a9a9}
.pf-result{color:#5fc85f}
.is-loss .pf-result{color:#e8756c}
.pf-source{padding:0 4px;border:1px solid #111;background:#262626}
.pf-replay-body{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px;margin:4px 0}
.pf-members{display:flex;gap:3px}
.pf-member{position:relative;width:36px}
.pf-member.is-down .ba-slot{filter:grayscale(1) brightness(.6)}
.pf-mvp{position:absolute;left:1px;top:-1px;font:bold 11px/11px 'Tibia Pixel',Verdana,sans-serif;font-style:normal;color:#e8c547;text-shadow:1px 0 #000,-1px 0 #000,0 1px #000,0 -1px #000;pointer-events:none}
.pf-loot{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px}
.pf-loot>span{display:inline-flex;align-items:center}
.pf-capture{position:relative;width:32px;height:32px}
.pf-capture .ba-slot{width:32px}
.pf-capture>.ba-sprite{width:32px;height:32px;object-fit:contain;image-rendering:pixelated;background:#262626;border:1px solid #121212}
.pf-tags{display:flex;flex-wrap:wrap;align-items:center;gap:3px;margin-bottom:3px}
.pf-tag{padding:0 4px;border:1px solid #111;background:#262626;color:#e4ca78;font-weight:normal}
.pf-tag-shiny{color:#9fe8ff}.pf-tag-record{color:#e8c547}.pf-tag-capture{color:#7cf08a}.pf-tag-flawless{color:#9fd3ff}
.pf-replay footer{justify-content:flex-end}
.pf-replay footer small:first-child{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pf-more{display:block;width:100%;margin-top:6px}

/* Records */
.pf-city{margin:0 0 6px}
.pf-city summary{display:flex;justify-content:space-between;gap:6px;padding:3px 6px;cursor:pointer;background:#2f2f2f;border:1px solid #111}
.pf-city .pf-table{margin-top:2px}

@media (max-width:520px){
 .pf-filters{grid-template-columns:repeat(2,minmax(0,1fr))}
 .pf-edit{grid-template-columns:1fr 1fr}
 .pf-edit button{grid-column:1/-1}
 .pf-member{width:32px}
}

/* Replay modal: the battle inside a gold client frame with banners on both sides. */
dialog.window.replay-modal{width:min(1000px,calc(100vw - 12px));max-height:calc(100dvh - 12px)}
#replay-body{padding:8px 6px 8px;overflow:auto;max-height:calc(100dvh - 40px);overscroll-behavior:contain}
.rp-stage{--peek:clamp(18px,calc((100% - 640px) / 2),220px);--frame:min(640px,calc(100% - 2 * var(--peek)));position:relative;display:flex;justify-content:center;padding:6px 0 4px}
.rp-ribbon{position:absolute;top:14px;z-index:0;width:calc(var(--peek) + 44px);aspect-ratio:4/1;max-height:76px;pointer-events:none}
.rp-ribbon svg{width:100%;height:100%;display:block;filter:drop-shadow(0 2px 0 #0008)}
.rp-left{right:calc(50% + var(--frame) / 2 - 44px)}
.rp-right{left:calc(50% + var(--frame) / 2 - 44px);transform:scaleX(-1)}
.rp-frame{position:relative;z-index:1;width:var(--frame);padding:6px;
  background:#3b3b3b url('/assets/ui/classic/panel-texture.png') repeat;border:3px solid #c9a24a;
  box-shadow:0 0 0 1px #2a1d06,inset 0 0 0 1px #f3d98b,inset 0 0 0 2px #2a1d06,0 3px 8px #000a}
.rp-frame::before,.rp-frame::after{content:'';position:absolute;bottom:-7px;width:10px;height:10px;background:#c9a24a;border:1px solid #2a1d06;box-shadow:inset 1px 1px #f3d98b;transform:rotate(45deg)}
.rp-frame::before{left:calc(50% - 26px)}.rp-frame::after{right:calc(50% - 26px)}
.rp-gem{position:absolute;left:50%;top:-10px;width:16px;height:16px;margin-left:-8px;transform:rotate(45deg);background:radial-gradient(circle at 35% 35%,#ff9a8a,#b8231a 55%,#5a0d08);border:2px solid #c9a24a;box-shadow:0 0 0 1px #2a1d06}
.rp-caption{display:flex;flex-direction:column;align-items:center;gap:1px;padding:4px 0 6px;text-align:center}
.rp-caption strong{font:bold 11px 'Tibia Pixel',Verdana,sans-serif}
.rp-caption small{color:#c0c0c0}
.rp-win{color:#7cf08a}.rp-loss{color:#ff8b7e}
.rp-emblem{position:relative;width:32px;height:28px}
.rp-emblem img{position:absolute;left:0;top:-2px;width:32px;height:32px;image-rendering:pixelated}
.rp-emblem img+img{transform:scaleX(-1)}
.rp-screen{position:relative;padding:0;background:#0d0d0d;border:1px solid #000;box-shadow:0 0 0 1px #6a5320;overflow:hidden;max-height:none}
.rp-screen canvas{display:block;image-rendering:pixelated}
.rp-screen .board-zoom{z-index:4}
.rp-end{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;background:#000b}
.rp-end[hidden]{display:none}
.rp-end strong{font:bold 22px 'Tibia Pixel',Verdana,sans-serif;text-shadow:1px 1px #000}
.rp-end.is-win strong{color:#7cf08a}.rp-end.is-loss strong{color:#ff8b7e}
.rp-controls{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:4px;margin:12px auto 0;width:min(640px,100%);padding:4px;background:#2b2b2b;border:1px solid #111;box-shadow:1px 1px #5e5e5e}
.rp-controls>button{min-width:30px;min-height:26px;padding:2px 6px}
.rp-time{min-width:96px;text-align:center;color:#fff;font-variant-numeric:tabular-nums}
.rp-speeds{display:inline-flex;gap:1px}
.rp-speeds button{min-width:30px;min-height:26px;padding:2px 4px}
.rp-speeds button[aria-pressed="true"]{color:#fff;border-color:#c5b47c;box-shadow:inset 0 0 0 1px #c5b47c}
#rp-seek{flex:1 1 100%;min-height:18px;padding:0;accent-color:#c9a24a;box-shadow:none;background:none;border:0}
.rp-info{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:8px;width:min(640px,100%);margin:8px auto 0}
.rp-info section{padding:4px 6px;background:#2f2f2f;border:1px solid #111}
.rp-info h4{margin:0 0 4px;font:11px 'Tibia Pixel',Verdana,sans-serif;color:#e4ca78}
.rp-meter{display:flex;flex-direction:column;gap:2px}
.rp-row{position:relative;display:flex;justify-content:space-between;gap:6px;padding:1px 4px;background:#1e1e1e;overflow:hidden}
.rp-row i{position:absolute;left:0;top:0;bottom:0;background:#4f8a4688;z-index:0}
.rp-row span,.rp-row b{position:relative;z-index:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rp-row.is-down span{color:#8a8a8a;text-decoration:line-through}
.rp-loot{display:flex;flex-wrap:wrap;gap:4px 10px}
.rp-loot span{display:inline-flex;align-items:center}
.rp-keys{margin:6px 0 0;color:#8a8a8a}
@media (max-width:520px){.rp-info{grid-template-columns:1fr}.rp-keys{display:none}.rp-time{min-width:84px}}

/* Saving: video or replay file */
.rp-save{position:relative;display:inline-flex}
.rp-save-menu{position:absolute;bottom:calc(100% + 4px);right:0;z-index:6;display:flex;flex-direction:column;gap:2px;min-width:190px;padding:4px;background:#3b3b3b url('/assets/ui/classic/panel-texture.png') repeat;border:1px solid #111;box-shadow:1px 1px #6a6a6a,0 4px 10px #000a}
.rp-save-menu[hidden]{display:none}
.rp-save-menu button{text-align:left}
.rp-record{flex:1 1 100%;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px;padding:3px 6px;background:#1e1e1e;border:1px solid #111}
.rp-record[hidden]{display:none}
.rp-rec-dot{width:9px;height:9px;border-radius:50%;background:#e04b3a;box-shadow:0 0 4px #e04b3a;animation:rp-rec 1s steps(2) infinite}
@keyframes rp-rec{50%{opacity:.25}}
.pf-open-file{display:inline-flex;align-items:center;gap:4px;margin:0 0 6px}
.pf-open-file input{display:none}
/* Live battle (Arena PvP): "Ao vivo" tag, scoreboard of creatures still standing, countdown and result card at the end. */
.rp-live-tag{display:inline-flex;align-items:center;gap:4px;font:bold 11px 'Tibia Pixel',Verdana,sans-serif;color:#ff8b7e;text-transform:uppercase;text-shadow:1px 1px #000}
.rp-live-tag i{width:6px;height:6px;background:#e8584c;box-shadow:1px 1px #000;animation:rp-blink 1s steps(2,end) infinite}
@keyframes rp-blink{50%{opacity:.25}}
@media (prefers-reduced-motion:reduce){.rp-live-tag i{animation:none}}
.rp-score{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto minmax(0,1fr);align-items:center;gap:6px;width:min(420px,100%);font:11px 'Tibia Pixel',Verdana,sans-serif}
.rp-score span{color:#c0c0c0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rp-score span:first-child{text-align:right}
.rp-score span.is-me{color:#e4ca78}
.rp-score b{min-width:22px;padding:1px 4px;font-weight:bold;color:#fff;text-align:center;background:#1c1c1c;border:1px solid #111;box-shadow:inset 1px 1px #000,1px 1px #6a6a6a;text-shadow:1px 1px #000}
.rp-score em{font-style:normal;color:#a9a9a9;min-width:46px;text-align:center}
.rp-count strong{font-size:22px;transform:scale(2);color:#f4d35e;text-shadow:2px 2px #000}
.rp-end.is-draw strong{color:#e4ca78}
.rp-live-end small{max-width:90%;text-align:center}
.rp-live-controls{justify-content:center}
.rp-live-note{color:#a9a9a9}
.rp-live-info{grid-template-columns:repeat(2,minmax(0,1fr))}
.rp-hp i{background:#5fc85f55}
.rp-live-info section:last-child .rp-hp i{background:#e8584c55}
@media (max-width:520px){.rp-live-info{grid-template-columns:repeat(2,minmax(0,1fr))}.rp-live-note{flex-basis:100%;text-align:center}}
