/* Таблица результатов матча из FACEIT на странице матча (/tour/match/show): подгружается на месте, без перехода на FACEIT.
   Таблицы игроков используют общие стили .match-sb-* из app.css; здесь только то, чего там нет. */

.match-fc {
    margin-top: 24px;
}

.match-fc-body {
    min-height: 60px;
}

/* Вкладки карт */
.match-fc-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 4px 0 6px;
}

.match-fc-tab {
    padding: 7px 14px;
    border: 1px solid var(--line);
    border-radius: var(--radius-sm);
    background: transparent;
    color: var(--white-1);
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: border-color var(--transition), color var(--transition), background var(--transition);
}

.match-fc-tab:hover {
    color: #fff;
}

.match-fc-tab.is-active {
    border-color: var(--accent);
    background: rgba(31, 215, 66, 0.12);
    color: #fff;
}

.match-fc-tab small {
    margin-left: 8px;
    font-size: 11.5px;
    font-weight: 700;
    opacity: 0.7;
}

.match-fc-panel[hidden] {
    display: none;
}

/* Таблица: уже, чем полная статистика сайта */
.match-sb-table.match-fc-table {
    min-width: 640px;
}

.match-fc-level {
    width: 22px;
    height: 22px;
    margin-left: 2px;
}

.match-fc-diff-pos {
    color: #4ade80;
}

.match-fc-diff-neg {
    color: #ff6b6b;
}

.match-fc-foot {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 6px 16px;
    margin-top: 12px;
}

.match-fc-source {
    color: var(--accent-hover);
    font-size: 12.5px;
    font-weight: 600;
}

.match-fc-source:hover {
    color: #fff;
}

/* Не загрузилось / матч ещё идёт */
.match-fc-state {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 8px 16px;
    padding: 16px;
    border: 1px dashed var(--line);
    border-radius: var(--radius);
    color: var(--white-1);
    font-size: 13.5px;
}

/* Состояние загрузки */
.match-fc-skel {
    height: 14px;
    margin: 12px 0;
    border-radius: 6px;
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.13), rgba(255, 255, 255, 0.05));
    background-size: 200% 100%;
    animation: match-fc-shimmer 1.4s linear infinite;
}

.match-fc-skel:nth-child(2) { width: 85%; }
.match-fc-skel:nth-child(3) { width: 70%; }
.match-fc-skel:nth-child(4) { width: 90%; }

@keyframes match-fc-shimmer {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

@media (prefers-reduced-motion: reduce) {
    .match-fc-skel {
        animation: none;
    }
}

/* «Топ игроков» турнира (/tour/top) */
.top-fc {
    margin-top: 8px;
}

.top-fc-player-line {
    display: inline-flex;
    align-items: center;
    gap: 10px;
}

.top-fc-place {
    display: inline-block;
    min-width: 54px;
    padding: 3px 8px;
    border: 1px solid var(--line);
    border-radius: 4px;
    color: var(--white-1);
    font-size: 11.5px;
    font-weight: 800;
    letter-spacing: 0.3px;
    text-align: center;
}

.top-fc-place-mvp {
    border-color: #ffd54a;
    background: rgba(255, 213, 74, 0.12);
    color: #ffd54a;
}

.top-fc-place-evp {
    border-color: #c9cdd6;
    background: rgba(201, 205, 214, 0.1);
    color: #e6e8ee;
}

.top-fc-place-3 {
    border-color: #d99a64;
    background: rgba(217, 154, 100, 0.1);
    color: #e3aa78;
}

.top-fc-note {
    margin: 10px 0 0;
}

.top-fc-how {
    margin-top: 14px;
    padding: 12px 14px;
    border: 1px solid var(--line);
    border-radius: var(--radius);
    color: var(--white-1);
    font-size: 12.5px;
    line-height: 1.55;
}

.top-fc-how strong {
    color: #fff;
}

/* «Топ игроков»: общая сводка, список матчей и рейтинг по матчам */
.top-fc-summary {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin: 4px 0 6px;
}

.top-fc-stat {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 110px;
    padding: 10px 16px;
    border: 1px solid var(--line);
    border-radius: var(--radius);
    background: var(--box);
}

.top-fc-stat-value {
    color: #fff;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.1;
}

.top-fc-stat-label {
    color: var(--white-1);
    font-size: 12px;
}

.top-fc-subtitle {
    margin: 18px 0 8px;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
}

.top-fc-matches th,
.top-fc-matches td {
    padding: 8px 10px;
    font-size: 13px;
    white-space: nowrap;
    text-align: left;
}

.top-fc-teams a {
    color: #fff;
    font-weight: 600;
}

.top-fc-teams a:hover {
    color: var(--accent-hover);
}

.top-fc-matchno {
    display: inline-block;
    min-width: 62px;
    padding: 2px 8px;
    border: 1px solid var(--line);
    border-radius: 4px;
    color: var(--white-1);
    font-size: 11.5px;
    font-weight: 800;
    text-align: center;
}

.top-fc-badge {
    display: inline-block;
    padding: 2px 8px;
    border: 1px solid var(--line);
    border-radius: 4px;
    color: var(--white-1);
    font-size: 11.5px;
    font-weight: 700;
}

.top-fc-badge-ok {
    border-color: #4ade80;
    color: #4ade80;
}

.top-fc-badge-wait {
    border-color: #ffd54a;
    color: #ffd54a;
}

.top-fc-cell {
    display: inline-block;
    min-width: 40px;
    padding: 2px 6px;
    border-radius: 4px;
    background: rgba(255, 255, 255, 0.08);
    color: #fff;
    font-size: 12px;
    font-weight: 700;
}

.top-fc-cell.match-sb-rating-high {
    background: rgba(74, 222, 128, 0.16);
    color: #4ade80;
}

.top-fc-cell.match-sb-rating-low {
    background: rgba(255, 107, 107, 0.16);
    color: #ff6b6b;
}

.top-fc-cell-empty {
    color: #6b6d76;
}
