.nba-schedule-wrapper{padding:20px 0}
.schedule-header{background:linear-gradient(135deg,#1a1a2e,#16213e);color:#fff;padding:30px;border-radius:12px;text-align:center;margin-bottom:20px}
.schedule-header h1{font-size:1.8rem;color:#fff;margin-bottom:8px}
.schedule-desc{color:#aaa;font-size:.95rem}
.schedule-error{background:#fff3f3;border:1px solid #ffd7d7;color:#d32f2f;padding:20px;border-radius:8px;text-align:center;margin:20px 0}
.schedule-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:25px}
.stat-card{background:#fff;border-radius:10px;padding:18px;text-align:center;box-shadow:0 2px 8px rgba(0,0,0,.06);transition:transform .2s}
.stat-card:hover{transform:translateY(-3px);box-shadow:0 4px 15px rgba(0,0,0,.1)}
.stat-card .stat-num{display:block;font-size:1.6rem;font-weight:700;color:#1a1a2e}
.stat-card .stat-label{display:block;font-size:.82rem;color:#888;margin-top:4px}
.stat-card.completed .stat-num{color:#27ae60}
.stat-card.upcoming .stat-num{color:#e67e22}
.schedule-list{display:flex;flex-direction:column;gap:16px}
.schedule-day{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.06)}
.day-header{background:#1a1a2e;color:#fff;padding:14px 20px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:6px}
.day-date{font-size:1rem;font-weight:600}
.day-week{font-size:.85rem;color:#aaa}
.day-count{font-size:.82rem;background:rgba(255,255,255,.15);padding:3px 12px;border-radius:12px}
.day-matches{display:flex;flex-direction:column}
.match-card{display:flex;flex-direction:column;padding:16px 20px;border-bottom:1px solid #f0f0f0;transition:background .2s}
.match-card:last-child{border-bottom:none}
.match-card:hover{background:#f8f9ff}
.match-time{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.match-clock{font-size:.85rem;color:#999;font-weight:500}
.match-status{font-size:.78rem;padding:3px 10px;border-radius:10px;font-weight:500}
.match-status.finished{background:#e8f5e9;color:#27ae60}
.match-status.live{background:#fff3e0;color:#e67e22;display:flex;align-items:center;gap:4px}
.match-status.upcoming{background:#f0f4ff;color:#1a73e8}
.live-dot{display:inline-block;width:6px;height:6px;background:#e53935;border-radius:50%;animation:pulse-dot 1.2s ease-in-out infinite}
@keyframes pulse-dot{0%,100%{opacity:1}50%{opacity:.3}}
.match-teams{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center}
.team{display:flex;align-items:center;gap:10px}
.team.home{justify-content:flex-start}
.team.away{justify-content:flex-end}
.team-logo{width:28px;height:28px;object-fit:contain;flex-shrink:0}
.team-name{font-size:.95rem;font-weight:500;color:#333}
.team-score{font-size:1.1rem;font-weight:700;color:#e53935;margin-left:4px}
.match-vs{display:flex;flex-direction:column;align-items:center;gap:4px}
.vs-text{font-size:.78rem;font-weight:600;color:#bbb}
.vs-line{width:20px;height:2px;background:#ddd;border-radius:1px}
.match-videos{margin-top:10px;padding-top:10px;border-top:1px solid #f0f0f0;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.videos-label{font-size:.82rem;color:#888}
.video-link{font-size:.82rem;color:#1a73e8;text-decoration:none;padding:2px 8px;background:#f0f4ff;border-radius:4px;transition:background .2s}
.video-link:hover{background:#d0dbff}
.no-match,.schedule-empty{text-align:center;padding:30px;color:#999;font-size:.9rem}
@media(max-width:768px){
.schedule-header{padding:20px}
.schedule-header h1{font-size:1.35rem}
.schedule-stats{grid-template-columns:repeat(2,1fr);gap:8px}
.stat-card{padding:14px}
.stat-card .stat-num{font-size:1.3rem}
.day-header{flex-wrap:wrap;gap:4px;padding:12px 14px}
.day-date{font-size:.9rem}
.day-count{font-size:.75rem}
.match-card{padding:12px 14px}
.match-teams{grid-template-columns:1fr;gap:6px;text-align:center}
.team{justify-content:center!important}
.team-logo{width:22px;height:22px}
.team-name{font-size:.85rem}
.team-score{font-size:1rem}
.match-videos{justify-content:center}
}
@media(max-width:480px){
.schedule-header h1{font-size:1.15rem}
.schedule-stats{grid-template-columns:repeat(2,1fr)}
.stat-card .stat-num{font-size:1.1rem}
.team-name{font-size:.8rem}
}
