/* components/lineup.css — soupisky obou týmů: řádek hráče, číslo dresu,
 * ikony událostí (karty, střídání, góly), lavička a trenér.
 *
 * Vytaženo z pages/match.css.
 */

/* Layout detailu zápasu: sekce jsou rows přes obě strany, aby Absence
   a Trenér byly výškově zarovnané. */
.lineup-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 50px;
    row-gap: 0;
    align-items: start;
    margin-top: 10px;
}

/* Titulek sekce zabírá obě sloupce – funguje jako oddělovač řádků v gridu */
.lineup-row-title {
    grid-column: 1 / -1;
    margin: 30px 0 12px;
    font-size: 0.8rem;
    text-transform: uppercase;
    color: var(--text-muted);
    letter-spacing: 1.5px;
    font-weight: 700;
    border-bottom: 1px solid var(--border);
    padding-bottom: 8px;
}

.lineup-row-title:first-child {
    margin-top: 0;
}

.lineup-cell {
    min-width: 0;
}

.lineup-row {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 0;
    border-bottom: 1px solid var(--hairline-soft);
    transition: background 0.2s;
}

.lineup-row:hover {
    background: var(--surface-1);
}

.lineup-shirt {
    width: 28px;
    font-weight: 800;
    color: var(--text-muted);
    font-size: 0.85rem;
    text-align: center;
}

.lineup-name {
    flex-grow: 1;
    text-decoration: none;
    color: white;
    font-size: 1rem;
    font-weight: 500;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-width: 0;
}

.lineup-name-text {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.lineup-name:hover {
    color: var(--accent);
}

/* --- ZRCADLOVÝ LAYOUT HOSTUJÍCÍHO TÝMU ---
   Domácí (zleva-doprava):  [shirt] [name + badges] [events: ⚽ ŽK ČK ↓]
   Hosté   (zprava-doleva): [events: ↓ ČK ŽK ⚽] [badges + name] [shirt]
   Dosaženo přes flex-direction: row-reverse na .lineup-row, .lineup-events i .lineup-name. */
.lineup-cell[data-side="away"] .lineup-row     { flex-direction: row-reverse; }
.lineup-cell[data-side="away"] .lineup-events  { flex-direction: row-reverse; }
.lineup-cell[data-side="away"] .lineup-name    { flex-direction: row-reverse; }
.lineup-cell[data-side="away"] .lineup-name-text { text-align: right; }
.lineup-cell[data-side="away"] .lineup-coach-card { text-align: right; }
.lineup-cell[data-side="away"] .lineup-empty      { text-align: right; }

.lineup-cap {
    color: var(--accent);
    font-weight: 800;
    font-size: 0.8rem;
}

/* Pozice u hráče (zatím jen „BR" = brankář). Vizuálně i pozičně se chová
   stejně jako „(C)" — inline label uvnitř .lineup-name, jen jiná barva.
   Schema nemá pole Position → identifikace běží přes heuristiku
   „první v shirt-asc pořadí" v šabloně. */
.lineup-pos-badge {
    color: var(--yc-bright);
    font-weight: 800;
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.bench-title {
    margin-top: 40px;
    font-size: 0.8rem;
    text-transform: uppercase;
    color: var(--text-muted);
    letter-spacing: 1.5px;
    border-bottom: 1px solid var(--border);
    padding-bottom: 8px;
}

/* --- IKONY UDÁLOSTÍ V SESTAVĚ --- */
.lineup-events {
    display: flex;
    align-items: center;
    gap: 8px;
}

.yc-icon { width: 10px; height: 14px; background: var(--yc); border-radius: 2px; box-shadow: 0 0 5px var(--yc-glow); }
.rc-icon { width: 10px; height: 14px; background: var(--rc); border-radius: 2px; box-shadow: 0 0 5px var(--rc-glow); }

/* Dvojitá žlutá karta = dva žluté obdélníky překryté pod úhlem.
   Druhá karta lehce posunutá vpravo nahoru, takže tvoří „dvojici". */
.yc-icon-double {
    display: inline-flex;
    align-items: center;
    position: relative;
    width: 16px;
    height: 16px;
}

.yc-icon-double .yc-icon {
    position: absolute;
    top: 1px;
    left: 0;
    box-shadow: 0 0 4px var(--scrim);
}

.yc-icon-double .yc-icon:first-child {
    transform: rotate(-8deg);
    z-index: 1;
}

.yc-icon-double .yc-icon:last-child {
    top: 0;
    left: 4px;
    transform: rotate(8deg);
    z-index: 2;
}

.sub-in { border-left: 5px solid transparent; border-right: 5px solid transparent; border-bottom: 8px solid var(--win); }
.sub-out { border-left: 5px solid transparent; border-right: 5px solid transparent; border-top: 8px solid var(--rc); }

/* Ikona gólu/ů u hráče v soupisce – stejná emoji jako v časové ose */
.lineup-goal {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    font-size: 0.9rem;
    line-height: 1;
}

.lineup-goal-icon {
    font-size: 0.95rem;
    line-height: 1;
}

.lineup-goal-count {
    font-size: 0.72rem;
    font-weight: 800;
    color: var(--text-muted);
}

.lineup-goal-own {
    opacity: 0.75;
    filter: grayscale(0.4);
}

.lineup-goal-own .lineup-goal-count {
    color: var(--rc-bright);
}

.lineup-empty {
    margin: 4px 0 12px;
    font-size: 0.85rem;
    font-style: italic;
}

/* Trenér jako poslední karta uvnitř soupisky — jen jméno, bez labelu a podbarvení.
   Drobný padding aby řádek držel sjednocenou výšku se sousedními .lineup-row. */
.lineup-coach-card {
    padding: 8px 0;
}

.lineup-coach-card .lineup-coach-name {
    color: var(--text-main);
    font-weight: 600;
}

/* --- RESPONZIVITA --- */
@media (max-width: 992px) {
    .lineup-grid      { grid-template-columns: 1fr; column-gap: 0; }
    .lineup-row-title { margin-top: 24px; }
}
