/* ========================================================================
   VS Footy Stats — Club Detail Page
   ======================================================================== */

/* ── Hero ── */
.vfs-c-hero__inner {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 24px 18px 20px;
}

.vfs-c-hero__logo {
    width: 52px;
    height: 52px;
    border-radius: 50%;
    object-fit: contain;
    background: rgba(0,0,0,0.04);
    flex-shrink: 0;
}

.vfs-c-hero__logo-ph {
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background: rgba(0,0,0,0.06);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.3rem;
    color: #999;
    flex-shrink: 0;
}

.vfs-c-hero__name {
    font-size: 1.4rem;
    font-weight: 800;
    color: #1a1a2e;
    margin: 0 0 4px;
    line-height: 1.2;
}

.vfs-c-hero__country {
    font-size: 0.82rem;
    color: #999;
    font-weight: 500;
}

/* ── Competition Selector ── */
.vfs-c-comp-select {
    width: 100%;
    padding: 8px 12px;
    font-size: 0.82rem;
    font-weight: 600;
    color: #1a1a2e;
    background: #f0f2f5;
    border: 1px solid rgba(0,0,0,0.08);
    border-radius: 8px;
    cursor: pointer;
    appearance: auto;
}

/* ── Form Strip ── */
.vfs-c-form-strip__inner {
    display: flex;
    align-items: center;
    padding: 10px 18px;
}

.vfs-c-form-badges {
    display: flex;
    gap: 5px;
    flex: 1;
}

.vfs-c-fb {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.68rem;
    font-weight: 800;
}

.vfs-c-fb--w { background: #239954; color: #fff; }
.vfs-c-fb--d { background: #e5b05e; color: #fff; }
.vfs-c-fb--l { background: #c85f46; color: #fff; }

.vfs-c-ppg {
    display: flex;
    flex-direction: column;
    align-items: center;
    background: #f0f2f5;
    border-radius: 8px;
    padding: 4px 10px;
}

.vfs-c-ppg__val {
    font-size: 1rem;
    font-weight: 800;
    color: #1a1a2e;
    line-height: 1.2;
}

.vfs-c-ppg__key {
    font-size: 0.55rem;
    font-weight: 700;
    text-transform: uppercase;
    color: #999;
}

/* ── Detail Table (3-col: Overall / Home / Away) ── */
.vfs-c-dt {
    border: 1px solid rgba(0,0,0,0.08);
    border-radius: 10px;
    overflow: hidden;
}

.vfs-c-dt__header {
    display: flex;
    background: #f6f8fa;
    padding: 8px 12px;
}

.vfs-c-dt__header .vfs-c-dt__label {
    flex: 1;
}

.vfs-c-dt__header .vfs-c-dt__col {
    width: 65px;
    text-align: center;
    font-size: 0.6rem;
    font-weight: 700;
    text-transform: uppercase;
    color: #999;
    letter-spacing: 0.3px;
}

.vfs-c-dt__row {
    display: flex;
    padding: 9px 12px;
    border-bottom: 1px solid rgba(0,0,0,0.05);
}

.vfs-c-dt__row:last-child {
    border-bottom: none;
}

.vfs-c-dt__label {
    flex: 1;
    font-size: 0.78rem;
    font-weight: 600;
    color: #666;
}

.vfs-c-dt__val {
    width: 65px;
    text-align: center;
    font-size: 0.82rem;
    font-weight: 700;
    color: #1a1a2e;
}

/* ── Text colors (percentages) ── */
.vfs-c-tc--excellent { color: #1a7f37; font-weight: 700; }
.vfs-c-tc--good      { color: #3d8b37; font-weight: 700; }
.vfs-c-tc--average   { color: #b08830; font-weight: 700; }
.vfs-c-tc--poor      { color: #cf222e; font-weight: 700; }

/* ── League Table Row ── */
.vfs-c-trow {
    cursor: pointer;
    transition: background 0.1s;
}

.vfs-c-trow:hover td {
    background: rgba(0,0,0,0.02);
}

.vfs-c-trow--current td {
    background: rgba(140,214,82,0.12);
    font-weight: 700;
}

/* ── Squad ── */
.vfs-c-pos-label {
    font-size: 0.62rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #999;
    padding: 14px 0 8px;
    border-bottom: 1px solid rgba(0,0,0,0.05);
}

.vfs-c-player {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 0;
    border-bottom: 1px solid rgba(0,0,0,0.05);
    text-decoration: none;
    color: inherit;
    transition: opacity 0.1s;
}

.vfs-c-player:last-child {
    border-bottom: none;
}

.vfs-c-player:hover {
    opacity: 0.7;
}

.vfs-c-player__info {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.vfs-c-player__name {
    font-size: 0.88rem;
    font-weight: 600;
    color: #1a1a2e;
}

.vfs-c-player__meta {
    font-size: 0.7rem;
    color: #999;
}

.vfs-c-player__stat {
    font-size: 0.82rem;
    font-weight: 800;
    color: #fff;
    background: #239954;
    border-radius: 6px;
    padding: 2px 8px;
    flex-shrink: 0;
}

.vfs-c-player__stat--muted {
    background: #f0f2f5;
    color: #666;
}

.vfs-c-player__stat-label {
    font-size: 0.6rem;
    font-weight: 600;
    opacity: 0.8;
}

.vfs-c-player__arrow {
    font-size: 1rem;
    color: #999;
    flex-shrink: 0;
}

/* ── Error ── */
.vfs-c-error {
    text-align: center;
    padding: 4rem 2rem;
    color: #999;
    font-size: 0.95rem;
}

/* ── Responsive ── */
@media (max-width: 600px) {
    .vfs-c-hero__name {
        font-size: 1.15rem;
    }

    .vfs-c-hero__logo,
    .vfs-c-hero__logo-ph {
        width: 44px;
        height: 44px;
    }

    .vfs-c-dt__col,
    .vfs-c-dt__val {
        width: 55px;
        font-size: 0.75rem;
    }
}
