/* FMMSC v4.0.9 — reuse the real Player Card as testimonial identity. */
.v4-testimonial-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.v4-testimonial-card--player {
    padding: 22px;
    min-width: 0;
}

.v4-testimonial-card-layout {
    display: grid;
    grid-template-columns: 148px minmax(0, 1fr);
    gap: 20px;
    align-items: center;
}

.v4-testimonial-player-frame {
    width: 148px;
    height: 206px;
    position: relative;
    overflow: visible;
    align-self: center;
}

.v4-testimonial-player-scale {
    width: 390px;
    height: 542px;
    transform: scale(.38);
    transform-origin: top left;
    pointer-events: none;
    user-select: none;
}

/* Freeze the original 390x542 Player Card geometry before scaling it down.
   This keeps the testimonial thumbnail visually identical on desktop/mobile. */
.v4-testimonial-player-scale .fmmsc-player-card {
    width: 390px !important;
    max-width: none !important;
    aspect-ratio: 390 / 542 !important;
}
.v4-testimonial-player-scale .fmmsc-player-card__hero {
    height: 286px !important;
    grid-template-columns: 92px minmax(0,1fr) !important;
    padding: 23px 30px 0 34px !important;
}
.v4-testimonial-player-scale .fmmsc-player-card__rating { margin-top: 55px !important; }
.v4-testimonial-player-scale .fmmsc-player-card__rating strong { font-size: 3.85rem !important; }
.v4-testimonial-player-scale .fmmsc-player-card__position-logo {
    width: 46px !important;
    height: 46px !important;
    margin-top: 10px !important;
}
.v4-testimonial-player-scale .fmmsc-player-card__portrait {
    width: 228px !important;
    height: 266px !important;
}
.v4-testimonial-player-scale .fmmsc-player-card__portrait span { font-size: 4.5rem !important; }
.v4-testimonial-player-scale .fmmsc-player-card__tier-word {
    top: 112px !important;
    left: 98px !important;
    right: 24px !important;
    font-size: 4.25rem !important;
}
.v4-testimonial-player-scale .fmmsc-player-card--world-class .fmmsc-player-card__tier-word {
    top: 120px !important;
    font-size: 2.75rem !important;
}
.v4-testimonial-player-scale .fmmsc-player-card--legendary .fmmsc-player-card__tier-word { font-size: 3.05rem !important; }
.v4-testimonial-player-scale .fmmsc-player-card__identity { margin-inline: 36px !important; }
.v4-testimonial-player-scale .fmmsc-player-card__attributes { max-width: calc(100% - 72px) !important; }
.v4-testimonial-player-scale .fmmsc-player-card__meta { padding-inline: 40px !important; }
.v4-testimonial-player-scale .fmmsc-player-card__signature-playstyles {
    left: 18px !important;
    top: 352px !important;
}
.v4-testimonial-player-scale .fmmsc-player-card__signature-playstyle,
.v4-testimonial-player-scale .fmmsc-player-card__signature-playstyle img {
    width: 30px !important;
    height: 30px !important;
}

.v4-testimonial-copy {
    min-width: 0;
    display: flex;
    flex-direction: column;
    align-self: stretch;
}

.v4-testimonial-copy .v4-testimonial-stars {
    margin: 0 0 12px;
}

.v4-testimonial-copy blockquote {
    flex: 1;
    margin: 0;
}

.v4-testimonial-copy figcaption {
    margin-top: 18px;
    padding-top: 14px;
    border-top: 1px solid rgba(255,255,255,.1);
}

.v4-testimonial-copy figcaption strong,
.v4-testimonial-copy figcaption span {
    display: block;
}

.v4-testimonial-copy figcaption span {
    margin-top: 4px;
    color: rgba(255,255,255,.55);
    font-size: .78rem;
}

.v4-testimonial-player-missing {
    width: 148px;
    min-height: 206px;
    padding: 18px 14px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    border: 1px dashed rgba(224,175,52,.46);
    border-radius: 18px;
    background: linear-gradient(155deg, rgba(224,175,52,.13), rgba(255,255,255,.035));
}
.v4-testimonial-player-missing span,
.v4-testimonial-player-missing small { color: rgba(255,255,255,.55); }
.v4-testimonial-player-missing span { font-size: .62rem; font-weight: 950; letter-spacing: .11em; }
.v4-testimonial-player-missing strong { margin-top: 7px; color: #fff; line-height: 1.2; }
.v4-testimonial-player-missing small { margin-top: 4px; font-size: .72rem; }

@media (max-width: 980px) {
    .v4-testimonial-grid { grid-template-columns: 1fr; }
}

@media (max-width: 560px) {
    .v4-testimonial-card--player { padding: 18px; }
    .v4-testimonial-card-layout {
        grid-template-columns: 121px minmax(0, 1fr);
        gap: 15px;
        align-items: start;
    }
    .v4-testimonial-player-frame {
        width: 121px;
        height: 168px;
    }
    .v4-testimonial-player-scale { transform: scale(.31); }
    .v4-testimonial-player-missing {
        width: 121px;
        min-height: 168px;
        padding: 14px 11px;
        border-radius: 15px;
    }
}

@media (max-width: 390px) {
    .v4-testimonial-card-layout {
        grid-template-columns: 1fr;
    }
    .v4-testimonial-player-frame,
    .v4-testimonial-player-missing {
        justify-self: center;
    }
    .v4-testimonial-player-frame {
        width: 137px;
        height: 190px;
    }
    .v4-testimonial-player-scale { transform: scale(.35); }
    .v4-testimonial-player-missing { width: 137px; min-height: 190px; }
}
