.battle-report {
    position: relative !important;
    overflow: visible !important;
}

.battle-report-titlebar.report-status-titlebar {
    position: relative !important;
    display: grid !important;
    grid-template-columns: 1fr auto 1fr !important;
    align-items: start !important;
    min-height: clamp(6.6rem, 9vw, 8.8rem) !important;
    padding: clamp(0.65rem, 1vw, 0.95rem) clamp(1rem, 1.4vw, 1.5rem) clamp(1.3rem, 1.8vw, 1.7rem) !important;
    isolation: isolate !important;
    z-index: 10 !important;
}

.report-status-meta {
    grid-column: 1 / -1 !important;
    justify-self: stretch !important;
    text-align: center !important;
    color: #f2d6a4 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.045em !important;
    z-index: 2 !important;
}

.report-status-mission-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    column-gap: clamp(17rem, 30vw, 34rem) !important;
    align-items: center !important;
    width: min(100%, 62rem) !important;
    margin: 0 auto 0.35rem !important;
    color: #f5c982 !important;
    font-size: clamp(0.95rem, 1.15vw, 1.35rem) !important;
    font-weight: 800 !important;
    line-height: 1.1 !important;
}

.report-status-deployment {
    justify-self: start !important;
    text-align: left !important;
}

.report-status-primary-mission {
    justify-self: end !important;
    text-align: right !important;
}

.report-status-summary {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: clamp(13rem, 22vw, 23rem) !important;
    margin: 0 !important;
    color: #ffe3ad !important;
    font-size: clamp(1rem, 1.35vw, 1.55rem) !important;
    font-weight: 800 !important;
    line-height: 1 !important;
}

.report-status-note {
    margin: 0.35rem 0 0 !important;
    color: rgba(255, 225, 170, 0.76) !important;
    font-size: clamp(0.62rem, 0.7vw, 0.78rem) !important;
    font-weight: 750 !important;
    letter-spacing: 0.08em !important;
}

.report-status-seal {
    position: absolute !important;
    left: 50% !important;
    top: clamp(0.15rem, 0.45vw, 0.55rem) !important;
    width: clamp(16.8rem, 20vw, 20.4rem) !important;
    height: auto !important;
    transform: translateX(-50%) !important;
    z-index: 30 !important;
    pointer-events: none !important;
    filter: drop-shadow(0 20px 30px rgba(0, 0, 0, 0.78)) !important;
}

.battle-report-titlebar .battle-report-actions {
    grid-column: 3 !important;
    justify-self: end !important;
    z-index: 31 !important;
}

.report-title-center,
.report-brand,
.report-aquila,
.report-meta-secondary {
    display: none !important;
}

.team-matchup-table {
    position: relative !important;
    z-index: 1 !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(5.1rem, 6.4rem) minmax(0, 1fr) !important;
    grid-auto-flow: row !important;
    align-items: stretch !important;
}

.team-matchup-header.team-matchup-left {
    grid-column: 1 !important;
    grid-row: 1 !important;
}

.team-matchup-header.team-matchup-right {
    grid-column: 3 !important;
    grid-row: 1 !important;
}

.team-matchup-vs-header {
    grid-column: 2 !important;
    grid-row: 1 / span 3 !important;
    align-self: stretch !important;
    z-index: 2 !important;
    padding-top: clamp(8.6rem, 10.5vw, 11.8rem) !important;
}

.team-matchup-vs-header span {
    position: relative !important;
    z-index: 1 !important;
}

.team-player-cell.team-matchup-left {
    grid-column: 1 !important;
}

.team-player-cell.team-matchup-right {
    grid-column: 3 !important;
}

.team-matchup-vs:not(.team-matchup-vs-header) {
    display: none !important;
}

.team-matchup-header .eyebrow,
.team-player-details .eyebrow {
    display: none !important;
}

.team-header-right {
    grid-template-columns: auto auto minmax(0, 1fr) !important;
    column-gap: 0.75rem !important;
    align-items: center !important;
}

.team-header-right > .outcome-tag {
    grid-column: 2 !important;
    justify-self: start !important;
    align-self: center !important;
}

.team-header-right > div:not(.team-score-badge) {
    grid-column: 3 !important;
    justify-self: end !important;
    align-self: center !important;
}

.team-header-right .team-title-line {
    justify-content: flex-end !important;
}

.team-matchup-table:has(.team-matchup-left .team-empty-slot) .team-player-cell.team-matchup-left:has(.team-player-card),
.team-matchup-table:has(.team-matchup-right .team-empty-slot) .team-player-cell.team-matchup-right:has(.team-player-card) {
    grid-row: auto !important;
    align-self: center !important;
    transform: translateY(calc(50% + 0.325rem)) !important;
    z-index: 2 !important;
}

.team-matchup-table:has(.team-matchup-left .team-empty-slot) .team-player-cell.team-matchup-right:has(.team-player-card),
.team-matchup-table:has(.team-matchup-right .team-empty-slot) .team-player-cell.team-matchup-left:has(.team-player-card) {
    transform: none !important;
}

.team-matchup-table:has(.team-matchup-left .team-empty-slot) .team-player-cell.team-matchup-left:has(.team-empty-slot),
.team-matchup-table:has(.team-matchup-right .team-empty-slot) .team-player-cell.team-matchup-right:has(.team-empty-slot) {
    visibility: hidden !important;
}

.team-empty-slot {
    opacity: 0 !important;
}

.team-player-card-left {
    grid-template-columns: minmax(0, 1fr) clamp(13.2rem, 14vw, 15rem) !important;
}

.team-player-card-right {
    grid-template-columns: clamp(13.2rem, 14vw, 15rem) minmax(0, 1fr) !important;
}

.team-player-card {
    min-height: clamp(15rem, 18vw, 20rem) !important;
}

.team-player-card .faction-emblem-frame {
    width: clamp(12.4rem, 13vw, 14.2rem) !important;
    height: clamp(12.4rem, 13vw, 14.2rem) !important;
}

.team-player-card .faction-emblem {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
}

.faction-public-grid {
    grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr)) !important;
    gap: 1rem !important;
}

.faction-public-card {
    grid-template-columns: 1fr !important;
    align-items: center !important;
    justify-items: center !important;
    text-align: center !important;
    min-height: 17rem !important;
    gap: 0.45rem !important;
    padding: 1rem 0.8rem 0.9rem !important;
}

.faction-public-preview {
    display: grid !important;
    place-items: center !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: inherit !important;
    cursor: zoom-in !important;
}

.faction-public-preview:focus-visible {
    outline: 2px solid rgba(240, 180, 90, 0.85) !important;
    outline-offset: 0.35rem !important;
}

.faction-public-icon {
    min-height: 14.2rem !important;
    width: 14.2rem !important;
    border-radius: 50% !important;
}

.faction-public-icon .matchup-emblem {
    width: 13.4rem !important;
    height: 13.4rem !important;
    max-height: 13.4rem !important;
}

.faction-public-body h2 {
    margin: -0.2rem 0 0 !important;
    font-size: clamp(0.78rem, 0.95vw, 1rem) !important;
    line-height: 0.95 !important;
    letter-spacing: 0.035em !important;
    text-align: center !important;
}

.faction-public-body code,
.faction-public-detachments {
    display: none !important;
}

body.modal-open {
    overflow: hidden !important;
}

.faction-preview-modal[hidden] {
    display: none !important;
}

.faction-preview-modal {
    position: fixed !important;
    inset: 0 !important;
    z-index: 1000 !important;
    display: grid !important;
    place-items: center !important;
    padding: 2rem !important;
}

.faction-preview-backdrop {
    position: absolute !important;
    inset: 0 !important;
    border: 0 !important;
    background: rgba(0, 0, 0, 0.76) !important;
    backdrop-filter: blur(3px) !important;
    cursor: zoom-out !important;
}

.faction-preview-panel {
    position: relative !important;
    z-index: 1 !important;
    display: grid !important;
    justify-items: center !important;
    gap: 0.65rem !important;
    width: min(92vw, 46rem) !important;
    padding: 1rem 1.2rem 1.35rem !important;
    border: 1px solid rgba(240, 180, 90, 0.72) !important;
    background:
        linear-gradient(135deg, rgba(240, 180, 90, 0.08), transparent 42%),
        rgba(12, 8, 6, 0.98) !important;
    color: #ffe1a6 !important;
    box-shadow: 0 24px 80px rgba(0, 0, 0, 0.78), inset 0 0 0 1px rgba(0, 0, 0, 0.72) !important;
    text-align: center !important;
}

.faction-preview-close {
    justify-self: end !important;
}

.faction-preview-panel img {
    width: min(72vw, 34rem) !important;
    height: min(72vw, 34rem) !important;
    object-fit: contain !important;
    filter: drop-shadow(0 0 28px rgba(240, 180, 90, 0.14)) !important;
}

.faction-preview-panel h2 {
    margin: 0 !important;
    color: #fff1d0 !important;
    font-size: clamp(1.2rem, 2vw, 2rem) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.06em !important;
}
