.pvp-page{font-size:14px}
.pvp-page [hidden],.pvp-dialog [hidden]{display:none!important}
.pvp-caption{margin:6px 4px;color:#999;text-align:center;font-size:12px;line-height:16px}
.pvp-field{margin:5px 4px 0;padding:0 0 8px;overflow:hidden}
.pvp-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}
.pvp-tank-card{position:relative;min-width:0;aspect-ratio:1.2;border:1px solid #55564f;border-radius:8px;overflow:hidden;background:#202222 url('assets/battles/arena-background.png') center/cover no-repeat}
.pvp-tank-card::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(transparent 45%,#171919a6)}
.pvp-player-name{position:absolute;z-index:3;top:8px;left:4px;width:calc(100% - 8px);padding:0;border:0;background:none;color:#20c335;text-align:center;text-decoration:none;font:700 15px/18px Arial,Helvetica,sans-serif;text-shadow:0 1px #000;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pvp-enemy .pvp-player-name{color:#ff5349}
.pvp-player-name:hover{text-decoration:underline}
.pvp-player-name:focus-visible{outline:2px solid #b5d9f5;outline-offset:-2px}
.pvp-tank-visual{position:absolute;z-index:1;inset:29px 0 25px}
.pvp-tank-visual img{position:absolute;left:-27%;top:-24%;display:block;width:154%;height:154%;object-fit:contain;transform:scaleX(var(--tank-direction,1));filter:drop-shadow(0 5px 3px #000b)}
.pvp-tank-visual img[data-model=t34]{left:-15%;top:-12%;width:130%;height:130%}
.pvp-tank-visual img[data-model=is7]{left:2%;top:2%;width:96%;height:96%}
.pvp-tank-card[data-destroyed=true] .pvp-tank-visual{filter:grayscale(1) brightness(.5)}
.pvp-tank-card .battle-meter{position:absolute;z-index:3;bottom:5px;left:5px;width:calc(100% - 10px)}
.pvp-tank-card .battle-meter-value{min-width:38px;font-size:12px}
.pvp-ammo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:6px 5px 4px}
.pvp-tactics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin:0 5px}
.pvp-ammo .game-button,.pvp-tactics .game-button{min-width:0;padding:2px}
.pvp-ammo .ammo-button.active{border-color:#f4d465;box-shadow:inset 0 0 0 1px #806d28}
.pvp-count{margin:9px 0 4px;text-align:center;font-size:19px;font-weight:700;line-height:24px}
.pvp-hint{min-height:18px}
.pvp-status{margin:3px 0;color:#35c5db;font-size:14px;line-height:18px}
.pvp-exit,.pvp-return{display:flex;align-items:center;justify-content:center;width:calc(100% - 8px);margin:7px 4px 0;text-decoration:none}
.pvp-log{margin:7px 4px 0;padding:7px 9px;color:#e9eaec;font-size:14px;line-height:18px}
.pvp-log h2{margin:0 0 5px;text-align:center;font-size:16px;line-height:20px}
.pvp-log-content{max-height:144px;overflow:auto;overflow-wrap:anywhere;scrollbar-width:thin;scrollbar-color:#666 #242424}
.pvp-log p{margin:2px 0}
.pvp-log-player{display:inline;padding:0;border:0;background:none;font:inherit;text-decoration:underline;color:#f4d465;cursor:pointer}
.pvp-log-player[data-player-id="0"]{color:#20c335}
.pvp-log-player:hover{color:#fff}
.pvp-log-player:focus-visible,.pvp-log-content:focus-visible{outline:2px solid #b5d9f5;outline-offset:1px}
.pvp-log-damage{color:#ff5349}
.pvp-log-ricochet{color:#35c5db}
.pvp-result{margin:7px 4px 0;text-align:center;font-size:14px}
.pvp-result h2{margin:0 0 6px;color:#f4d465;font-size:19px}
.pvp-result p{margin:4px 0}
.pvp-result-rating{margin:7px 0;padding:7px;border-block:1px solid #3b3c3e}
.pvp-result-rating p{margin:0 0 4px;font-weight:700}
.pvp-result-rating p strong{color:#f4d465}
.pvp-result-rating>div{display:flex;align-items:center;justify-content:center;gap:5px}
.pvp-result-rating .battles-league-badge{width:24px;height:24px;object-fit:contain}
.pvp-result-list{margin-top:8px;text-align:left}
.pvp-result-list>div{display:flex;justify-content:space-between;gap:8px;border-top:1px solid #3b3c3e;padding:6px 0;font-size:12px}
.pvp-result-list strong{color:#35c5db;font-variant-numeric:tabular-nums}
.pvp-page .bottom-nav{margin:7px 4px 0}
.pvp-page button:disabled{opacity:.5;cursor:default;filter:none}
.pvp-empty{text-align:center;margin:5px 4px}
.pvp-empty h1{margin:0 0 8px;font-size:19px}
.pvp-empty p{font-size:14px;line-height:18px}
.pvp-dialog{font-size:14px;max-height:calc(100dvh - 24px);overflow:auto}
.pvp-dialog h2{font-size:19px}
.pvp-dialog p{min-height:0;margin:7px 0;line-height:18px}
.pvp-dialog-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin-top:12px}
.pvp-dialog-actions .game-button{min-width:0}
.pvp-profile-tank{display:block;width:100%;height:150px;object-fit:contain;background:#222 url('assets/battles/arena-background.png') center/cover;border:1px solid #454644;border-radius:6px}
.pvp-profile-note{color:#999;font-size:12px}
@media(max-width:390px){.pvp-tactics{gap:3px}.pvp-tactics .game-button{letter-spacing:0}.pvp-ammo{gap:5px}.pvp-player-name{font-size:15px}}

/* Shared direct-combat field. Keep every battle mode on this component. */
.combat-field .pvp-player{background-image:url('assets/division/special/player-assault-background-v1.png');background-position:center 58%;background-size:cover}
.combat-field .pvp-player .pvp-tank-visual img[data-model=is7]{left:2%;top:2%;width:96%;height:96%;object-fit:contain}
.combat-field .war-practice-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
