/**
 * LiveScore PRO - Frontend Styles
 * RTL-aware styles for match displays
 */

/* Matches Container */
.ls-matches-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
}

/* League Section */
.ls-league-section {
    margin-bottom: 30px;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    overflow: hidden;
}

.ls-league-header {
    display: flex;
    align-items: center;
    padding: 15px 20px;
    background: #f8f9fa;
    border-bottom: 2px solid #e9ecef;
}

.ls-league-badge {
    width: 32px;
    height: 32px;
    object-fit: contain;
    margin-inline-end: 12px;
}

.ls-league-name {
    margin: 0;
    font-size: 18px;
    font-weight: 600;
    color: #212529;
}

/* Matches List */
.ls-matches-list {
    padding: 10px 0;
}

/* Match Row */
.ls-match-row {
    display: grid;
    grid-template-columns: 100px 1fr 80px;
    align-items: center;
    padding: 15px 20px;
    border-bottom: 1px solid #e9ecef;
    transition: background-color 0.2s;
}

.ls-match-row:hover {
    background-color: #f8f9fa;
    cursor: pointer;
}

.ls-match-row:last-child {
    border-bottom: none;
}

.ls-match-row.live {
    background-color: #fff3cd;
}

.ls-match-row.finished {
    opacity: 0.8;
}

/* Match Time */
.ls-match-time {
    text-align: center;
}

.ls-live-badge {
    display: inline-block;
    padding: 4px 8px;
    background: #dc3545;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    border-radius: 4px;
    text-transform: uppercase;
    animation: pulse 2s infinite;
}

@keyframes pulse {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.7; }
}

.ls-minute {
    display: block;
    margin-top: 5px;
    font-size: 13px;
    font-weight: 600;
    color: #dc3545;
}

.ls-kickoff {
    font-size: 14px;
    color: #6c757d;
}

.ls-status {
    font-size: 12px;
    color: #6c757d;
    font-weight: 600;
}

/* Match Teams */
.ls-match-teams {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.ls-team {
    display: flex;
    align-items: center;
    gap: 10px;
}

.ls-team-logo {
    width: 24px;
    height: 24px;
    object-fit: contain;
}

.ls-team-name {
    font-size: 15px;
    font-weight: 500;
    color: #212529;
}

/* Match Score */
.ls-match-score {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.ls-score {
    font-size: 20px;
    font-weight: 700;
    color: #212529;
    min-width: 30px;
    text-align: center;
}

/* Match Center (Detailed View) */
.ls-match-center {
    max-width: 800px;
    margin: 0 auto;
    padding: 30px;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 4px 6px rgba(0,0,0,0.1);
}

.ls-match-header {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 30px;
    padding-bottom: 20px;
    border-bottom: 2px solid #e9ecef;
}

.ls-match-header h3 {
    margin: 0 0 0 10px;
    font-size: 20px;
    color: #6c757d;
}

.ls-match-main {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    gap: 30px;
    align-items: center;
    margin-bottom: 30px;
}

.ls-team-container {
    text-align: center;
}

.ls-team-logo-large {
    width: 80px;
    height: 80px;
    object-fit: contain;
    margin-bottom: 15px;
}

.ls-team-container .ls-team-name {
    font-size: 22px;
    font-weight: 600;
    color: #212529;
}

.ls-score-container {
    text-align: center;
    min-width: 150px;
}

.ls-live-indicator {
    display: inline-block;
    padding: 6px 12px;
    background: #dc3545;
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    border-radius: 4px;
    margin-bottom: 15px;
    animation: pulse 2s infinite;
}

.ls-score-display {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    margin-bottom: 10px;
}

.ls-score-big {
    font-size: 48px;
    font-weight: 700;
    color: #212529;
}

.ls-separator {
    font-size: 36px;
    color: #6c757d;
}

.ls-halftime {
    font-size: 14px;
    color: #6c757d;
    margin-bottom: 10px;
}

.ls-match-status {
    font-size: 16px;
    font-weight: 600;
    color: #dc3545;
}

/* Match Media */
.ls-match-media {
    padding: 20px;
    background: #f8f9fa;
    border-radius: 8px;
}

.ls-match-media h3 {
    margin: 0 0 15px 0;
    font-size: 18px;
    color: #212529;
}

.ls-media-section {
    margin-bottom: 15px;
}

.ls-media-section:last-child {
    margin-bottom: 0;
}

.ls-media-section h4 {
    margin: 0 0 10px 0;
    font-size: 15px;
    color: #495057;
}

.ls-media-section ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.ls-media-section li {
    padding: 8px 12px;
    background: #fff;
    border-radius: 4px;
    margin-bottom: 5px;
    font-size: 14px;
}

/* No Matches */
.ls-no-matches {
    text-align: center;
    padding: 40px 20px;
    color: #6c757d;
    font-size: 16px;
}

/* RTL Support */
[dir="rtl"] .ls-league-badge,
html[dir="rtl"] .ls-league-badge {
    margin-inline-start: 12px;
    margin-inline-end: 0;
}

[dir="rtl"] .ls-team,
html[dir="rtl"] .ls-team {
    flex-direction: row-reverse;
}

/* Responsive */
@media (max-width: 768px) {
    .ls-match-row {
        grid-template-columns: 80px 1fr 60px;
        padding: 12px 15px;
    }

    .ls-team-name {
        font-size: 14px;
    }

    .ls-score {
        font-size: 18px;
    }

    .ls-match-main {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .ls-score-container {
        order: -1;
    }

    .ls-team-logo-large {
        width: 60px;
        height: 60px;
    }

    .ls-score-big {
        font-size: 36px;
    }
}

@media (max-width: 480px) {
    .ls-matches-container {
        padding: 10px;
    }

    .ls-match-center {
        padding: 20px 15px;
    }

    .ls-team-container .ls-team-name {
        font-size: 18px;
    }
}
