.sn-fixtures-container{width:100%;margin:30px auto;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif}.sn-fixtures-full{background:#fff;border-radius:20px;box-shadow:0 10px 40px rgba(2,42,91,.15);overflow:hidden}.sn-fixtures-header{background:linear-gradient(135deg,#54A1ED 0%,#022A5B 100%);padding:30px;text-align:center;color:#fff}.sn-fixtures-title{font-size:36px;font-weight:900;margin:0;text-transform:uppercase;letter-spacing:2px;text-shadow:0 3px 15px rgba(0,0,0,.3)}.sn-competition-filter{display:flex;gap:10px;padding:20px;background:#f8f9fa;border-bottom:2px solid #e9ecef;flex-wrap:wrap;justify-content:center}.sn-filter-btn{padding:10px 20px;border:2px solid #e9ecef;background:#fff;color:#495057;border-radius:25px;font-size:14px;font-weight:700;cursor:pointer;transition:all 0.3s ease;text-transform:uppercase;letter-spacing:.5px}.sn-filter-btn:hover{border-color:#54A1ED;color:#54A1ED;transform:translateY(-2px);box-shadow:0 4px 12px rgba(84,161,237,.2)}.sn-filter-btn.active{background:linear-gradient(135deg,#54A1ED 0%,#022A5B 100%);color:#fff;border-color:#54A1ED;box-shadow:0 4px 12px rgba(84,161,237,.3)}.sn-show-section{padding:20px;text-align:center;background:#f8f9fa;border-top:1px solid #e9ecef;border-bottom:1px solid #e9ecef}.sn-show-past-btn,.sn-show-future-btn{padding:15px 30px;border:2px solid #54A1ED;background:#fff;color:#54A1ED;border-radius:30px;font-size:15px;font-weight:700;cursor:pointer;transition:all 0.3s ease;text-transform:uppercase;letter-spacing:.5px}.sn-show-past-btn:hover,.sn-show-future-btn:hover{background:linear-gradient(135deg,#54A1ED 0%,#022A5B 100%);color:#fff;transform:translateY(-2px);box-shadow:0 6px 20px rgba(84,161,237,.3)}.sn-section-title{padding:20px;margin:0;background:linear-gradient(90deg,#f0f8ff,#fff);color:#022A5B;font-size:20px;font-weight:800;text-transform:uppercase;letter-spacing:1px;border-bottom:3px solid #54A1ED}.sn-tabs-navigation{display:flex;background:#f8f9fa;border-bottom:3px solid #e9ecef;padding:0 20px}.sn-tab-btn{padding:18px 30px;border:none;background:transparent;color:#6c757d;font-size:16px;font-weight:700;cursor:pointer;transition:all 0.3s ease;text-transform:uppercase;letter-spacing:.5px;position:relative;border-bottom:3px solid transparent;margin-bottom:-3px}.sn-tab-btn:hover{color:#54A1ED;background:rgba(84,161,237,.05)}.sn-tab-btn.active{color:#022A5B;border-bottom-color:#54A1ED;background:#fff}.sn-fixtures-grid-wrapper{position:relative;min-height:600px}.sn-tab-content{padding:30px 20px;display:none}.sn-tab-content.active{display:block}.sn-fixtures-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:25px;padding:30px 20px}.sn-grid-pagination{display:flex;justify-content:center;align-items:center;gap:20px;padding:20px;background:#f8f9fa;border-radius:15px;margin-top:20px}.sn-page-btn{padding:10px 20px;border:2px solid #54A1ED;background:#fff;color:#54A1ED;border-radius:20px;font-size:14px;font-weight:700;cursor:pointer;transition:all 0.3s ease}.sn-page-btn:hover:not(:disabled){background:linear-gradient(135deg,#54A1ED 0%,#022A5B 100%);color:#fff;transform:translateY(-2px);box-shadow:0 4px 15px rgba(84,161,237,.3)}.sn-page-btn:disabled{opacity:.3;cursor:not-allowed}.sn-page-info{font-size:16px;font-weight:800;color:#022A5B}.sn-fixtures-list{padding:20px}.sn-fixture-card{background:#fff;border:2px solid #e9ecef;border-radius:15px;padding:20px;margin-bottom:20px;transition:all 0.3s ease;box-shadow:0 2px 8px rgba(0,0,0,.05);overflow:hidden;position:relative}.sn-fixture-card:hover{transform:translateY(-3px);box-shadow:0 8px 25px rgba(84,161,237,.2);border-color:#54A1ED}.sn-match-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:10px;border-bottom:2px solid #f0f8ff}.sn-competition-badge{background:linear-gradient(135deg,#54A1ED 0%,#022A5B 100%);color:#fff;padding:8px 16px;border-radius:20px;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;display:flex;align-items:center;gap:8px}.sn-matchday{background:rgba(255,255,255,.25);padding:4px 10px;border-radius:12px;font-size:11px;font-weight:600}.sn-match-status{padding:6px 14px;border-radius:15px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.sn-match-status.sn-match-upcoming{background:#d1ecf1;color:#0c5460}.sn-match-status.sn-match-live{background:#28a745;color:#fff;animation:pulse 2s infinite}.sn-match-status.sn-match-finished{background:#6c757d;color:#fff}@keyframes pulse{0%,100%{opacity:1}50%{opacity:.7}}.sn-match-info{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:20px 0}.sn-team{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.sn-team:first-of-type,.sn-team:last-child{flex:1 1 0%;max-width:45%}.sn-team:last-child{flex-direction:row-reverse;text-align:right}.sn-team-crest{width:50px;height:50px;min-width:50px;object-fit:contain;flex-shrink:0}.sn-team-name{font-weight:700;font-size:18px;color:#212529;flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:100%}.sn-fixtures-full .sn-team-napoli .sn-team-name{color:#54A1ED;font-weight:900;font-size:20px;text-shadow:0 1px 3px rgba(84,161,237,.2)}.sn-fixtures-full .sn-team-napoli .sn-team-crest{width:60px;height:60px;filter:drop-shadow(0 3px 8px rgba(84,161,237,.3))}.sn-fixtures-compact .sn-team-napoli .sn-team-name,.sn-fixtures-next .sn-team-napoli .sn-team-name{color:#54A1ED;font-weight:900;text-shadow:0 1px 3px rgba(84,161,237,.2)}.sn-fixtures-compact .sn-team-napoli .sn-team-crest,.sn-fixtures-next .sn-team-napoli .sn-team-crest{filter:drop-shadow(0 3px 8px rgba(84,161,237,.3))}.sn-fixture-card.sn-napoli-home{border-left:6px solid #54A1ED}.sn-fixture-card.sn-napoli-away{border-right:6px solid #54A1ED}.sn-score{font-size:32px;font-weight:900;color:#022A5B;min-width:45px;width:45px;text-align:center;flex-shrink:0;display:inline-block}.sn-match-vs{display:flex;flex-direction:column;align-items:center;justify-content:center}.sn-vs-text{font-size:16px;font-weight:800;color:#6c757d;background:#f8f9fa;padding:8px 16px;border-radius:20px}.sn-match-datetime{display:flex;justify-content:center;align-items:center;gap:15px;padding:12px;background:#f0f8ff;border-radius:10px;margin-top:15px}.sn-match-date{font-size:15px;font-weight:700;color:#022A5B}.sn-match-time{font-size:18px;font-weight:900;color:#54A1ED;background:#fff;padding:6px 14px;border-radius:8px}.sn-match-venue{text-align:center;font-size:13px;color:#6c757d;margin-top:10px;font-weight:600}.sn-fixtures-compact{background:#fff;border-radius:15px;box-shadow:0 8px 25px rgba(2,42,91,.12);overflow:hidden;max-width:400px}.sn-fixtures-header-compact{background:linear-gradient(135deg,#54A1ED 0%,#022A5B 100%);padding:20px;text-align:center}.sn-fixtures-title-compact{font-size:20px;font-weight:900;margin:0;color:#fff;text-transform:uppercase;letter-spacing:1.5px;text-shadow:0 2px 10px rgba(0,0,0,.3)}.sn-fixtures-list-compact{padding:15px}.sn-fixture-card-compact{padding:15px;margin-bottom:15px}.sn-fixture-card-compact .sn-team-crest{width:40px;height:40px;min-width:40px}.sn-fixture-card-compact .sn-team-name{font-size:14px}.sn-fixture-card-compact .sn-score{font-size:22px;min-width:35px;width:35px}.sn-fixture-card-compact .sn-match-info{gap:10px}.sn-fixture-card-compact .sn-team{gap:10px}.sn-fixture-card-grid{padding:18px;display:flex;flex-direction:column;height:100%}.sn-fixture-card-grid .sn-team:first-of-type,.sn-fixture-card-grid .sn-team:last-child{max-width:47%}.sn-fixture-card-grid .sn-team-crest{width:45px;height:45px;min-width:45px}.sn-fixtures-full .sn-fixture-card-grid .sn-team-napoli .sn-team-crest{width:50px;height:50px;min-width:50px}.sn-fixture-card-grid .sn-team-name{font-size:15px;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;line-height:1.3;word-break:break-word;max-height:2.6em}.sn-fixture-card-grid .sn-score{font-size:28px;min-width:42px;width:42px}.sn-fixture-card-grid .sn-match-info{gap:12px}.sn-fixture-card-grid .sn-team{gap:10px}.sn-fixture-card-grid .sn-vs-text{font-size:14px;padding:8px 14px}.sn-fixture-card-grid .sn-competition-badge{font-size:11px;padding:6px 12px}.sn-fixture-card-grid .sn-match-datetime{margin-top:auto}.sn-fixtures-next{background:#fff;border-radius:20px;box-shadow:0 10px 40px rgba(2,42,91,.15);overflow:hidden;max-width:600px;margin:30px auto}.sn-fixtures-header-next{background:linear-gradient(135deg,#54A1ED 0%,#022A5B 100%);padding:25px;text-align:center}.sn-fixtures-title-next{font-size:28px;font-weight:900;margin:0;color:#fff;text-transform:uppercase;letter-spacing:2px;text-shadow:0 3px 15px rgba(0,0,0,.3)}.sn-fixture-card-next{padding:30px;border:none;border-radius:0;margin:0}.sn-fixture-card-next .sn-team-crest{width:70px;height:70px}.sn-fixture-card-next .sn-team-name{font-size:22px}.sn-fixture-card-next .sn-match-datetime{padding:18px;margin-top:20px}.sn-fixture-card-next .sn-match-date{font-size:17px}.sn-fixture-card-next .sn-match-time{font-size:22px}.sn-match-countdown{background:linear-gradient(135deg,#54A1ED 0%,#022A5B 100%);padding:20px;border-radius:15px;margin:20px 0;text-align:center;box-shadow:0 6px 20px rgba(84,161,237,.3)}.sn-countdown-label{font-size:14px;font-weight:700;color:rgba(255,255,255,.8);text-transform:uppercase;letter-spacing:1px;margin-bottom:10px}.sn-countdown-timer{display:flex;justify-content:center;gap:15px;flex-wrap:wrap}.sn-countdown-unit{background:rgba(255,255,255,.2);padding:12px 16px;border-radius:10px;min-width:70px}.sn-countdown-value{display:block;font-size:28px;font-weight:900;color:#fff;line-height:1;margin-bottom:5px}.sn-countdown-name{display:block;font-size:11px;font-weight:600;color:rgba(255,255,255,.8);text-transform:uppercase;letter-spacing:.5px}.sn-countdown-loading{color:#fff;font-size:16px;font-weight:700}.sn-fixture-card.sn-filtered-hidden{display:none}.sn-fixture-card.sn-match-live{border-color:#28a745;background:linear-gradient(to right,rgba(40,167,69,.05),rgba(255,255,255,1));box-shadow:0 8px 25px rgba(40,167,69,.2)}.sn-fixture-card.sn-match-upcoming{background:linear-gradient(to bottom,#f0f8ff,#fff)}.sn-fixture-card.sn-match-finished{opacity:.8}.sn-fixture-card.sn-match-finished:hover{opacity:1}@media (max-width:768px){.sn-fixtures-title{font-size:28px}.sn-fixture-card{padding:15px}.sn-team-crest{width:40px;height:40px}.sn-fixtures-full .sn-team-napoli .sn-team-crest{width:45px;height:45px}.sn-team-name{font-size:16px}.sn-fixtures-full .sn-team-napoli .sn-team-name{font-size:17px}.sn-competition-badge{font-size:11px;padding:6px 12px}.sn-filter-btn{font-size:12px;padding:8px 16px}.sn-section-title{font-size:18px;padding:15px}.sn-fixtures-grid{grid-template-columns:repeat(2,1fr);gap:20px;padding:20px 15px}.sn-tab-btn{font-size:14px;padding:15px 24px}}@media (max-width:480px){.sn-fixtures-full{border-radius:15px;margin:20px 10px}.sn-fixtures-header{padding:20px}.sn-fixtures-title{font-size:24px}.sn-fixtures-list{padding:10px}.sn-fixture-card{padding:12px;margin-bottom:15px}.sn-match-header{flex-direction:column;gap:10px;align-items:flex-start}.sn-match-info{flex-direction:column;gap:15px}.sn-team{width:100%;justify-content:flex-start}.sn-team:last-child{flex-direction:row;text-align:left}.sn-team-crest{width:35px;height:35px}.sn-fixtures-full .sn-team-napoli .sn-team-crest{width:40px;height:40px}.sn-team-name{font-size:14px}.sn-fixtures-full .sn-team-napoli .sn-team-name{font-size:16px}.sn-filter-btn{font-size:11px;padding:6px 12px}.sn-section-title{font-size:16px;padding:12px}.sn-show-past-btn,.sn-show-future-btn{font-size:13px;padding:12px 24px}.sn-score{font-size:24px}.sn-fixtures-grid{grid-template-columns:1fr;gap:15px;padding:15px 10px}.sn-tabs-navigation{padding:0 10px}.sn-tab-btn{font-size:12px;padding:12px 16px}.sn-grid-pagination{flex-direction:column;gap:15px}.sn-page-btn{width:100%}.sn-match-vs{width:100%}.sn-vs-text{font-size:14px;padding:6px 12px}.sn-match-datetime{flex-direction:column;gap:8px}.sn-match-date{font-size:13px}.sn-match-time{font-size:16px}.sn-competition-badge{font-size:10px;padding:5px 10px;flex-wrap:wrap}.sn-matchday{font-size:9px;padding:3px 8px}.sn-fixture-card-next{padding:20px}.sn-fixture-card-next .sn-team-crest{width:50px;height:50px}.sn-fixture-card-next .sn-team-name{font-size:16px}.sn-fixtures-compact{max-width:100%;margin:15px 10px}}.sn-fixtures-error{margin:20px 0;font-size:14px}.sn-fixtures-error strong{display:block;margin-bottom:5px;font-size:15px}