body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;background:linear-gradient(135deg,#667eea,#764ba2);color:#333;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh}*{box-sizing:border-box}@media(max-width:768px){button,a,input,select{min-height:44px}}.app{width:100%;min-height:100vh;background:#fffffff2;box-shadow:0 0 50px #0000001a}.navigation{background:linear-gradient(135deg,#667eea,#764ba2);padding:15px 20px;box-shadow:0 4px 12px #00000026}.nav-container{display:flex;justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto}.nav-brand h2{color:#fff;margin:0;font-weight:700;text-shadow:2px 2px 4px rgba(0,0,0,.2);font-size:1.8rem}.nav-links{display:flex;gap:15px}.nav-link{color:#fff;text-decoration:none;padding:10px 20px;background:#fff3;transition:all .3s ease;border-radius:25px;font-weight:500;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.nav-link:hover{background:#ffffff4d;transform:translateY(-2px);box-shadow:0 4px 12px #0003}.nav-link.active{background:#fff;color:#667eea;font-weight:600;box-shadow:0 4px 15px #ffffff4d}@media(max-width:768px){.nav-container{flex-direction:column;height:auto;padding:15px 20px;gap:15px}.nav-brand h2{font-size:1.3rem}.nav-links{width:100%;justify-content:center}.nav-link{flex:1;text-align:center;padding:10px 15px;font-size:.95rem}}@media(max-width:480px){.nav-brand h2{font-size:1.2rem}.nav-links{flex-direction:column;gap:8px}.nav-link{width:100%;padding:10px}}.calendar-container{padding:30px;max-width:1400px;margin:0 auto}.calendar-header{margin-bottom:30px;text-align:center}.calendar-header h1{margin:0 0 10px;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-size:2.5rem;font-weight:700}.calendar-header h2{margin:0;color:#666;font-weight:500}.filters{display:flex;gap:15px;margin-bottom:25px;padding:20px;background:linear-gradient(135deg,#667eea1a,#764ba21a);border:2px solid rgba(102,126,234,.2);border-radius:15px;flex-wrap:wrap;box-shadow:0 4px 15px #0000001a}.filter-group{display:flex;align-items:center;gap:10px}.filter-group label{font-weight:600;color:#667eea}.filter-group select{padding:8px 15px;border:2px solid #667eea;background:#fff;cursor:pointer;transition:all .3s;border-radius:8px;font-weight:500}.filter-group select:hover{border-color:#764ba2;box-shadow:0 2px 8px #667eea33}.clear-filters{padding:8px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;cursor:pointer;transition:all .3s;border-radius:20px;font-weight:600;box-shadow:0 4px 12px #667eea4d}.clear-filters:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.calendar{border-radius:15px;overflow:hidden;box-shadow:0 10px 30px #00000026;border:2px solid rgba(102,126,234,.2)}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);background:linear-gradient(135deg,#667eea,#764ba2);text-align:center}.weekday{padding:15px;color:#fff;font-weight:600;text-transform:uppercase;letter-spacing:1px;font-size:.9rem}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);background:#fff}.calendar-day{border:1px solid rgba(102,126,234,.15);min-height:120px;padding:10px;transition:all .3s ease;background:#fff}.calendar-day:hover{transform:scale(1.02);box-shadow:0 4px 15px #667eea33;z-index:1}.calendar-day.empty{background:#00000005}.calendar-day.has-events{background:linear-gradient(135deg,#667eea0d,#764ba20d);animation:fadeIn .5s}@keyframes fadeIn{0%{opacity:.5}to{opacity:1}}.day-number{font-weight:700;margin-bottom:8px;color:#667eea;font-size:1.2rem}.event-indicator{margin-bottom:8px}.event-dot{width:10px;height:10px;background:linear-gradient(135deg,#f093fb,#f5576c);border-radius:50%;display:inline-block;animation:pulse 2s infinite;box-shadow:0 2px 8px #f5576c66}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.event-count{font-size:.8rem;margin-left:5px}.event-item{border:2px solid rgba(102,126,234,.3);padding:8px;margin-bottom:6px;font-size:.75rem;cursor:pointer;background:#fff;transition:all .3s ease;animation:slideIn .4s;border-radius:8px}.event-item:hover{background:linear-gradient(135deg,#667eea1a,#764ba21a);transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d;border-color:#667eea}@keyframes slideIn{0%{transform:translateY(-10px);opacity:0}to{transform:translateY(0);opacity:1}}.event-time{font-weight:700;color:#667eea}.event-sport{color:#764ba2;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.event-teams{margin-top:4px;color:#333;font-weight:500}@media(max-width:768px){.calendar-container{padding:15px}.calendar-header h1{font-size:2rem}.calendar-header h2{font-size:1.4rem}.calendar-day{min-height:100px;padding:8px}.day-number{font-size:1rem}.weekday{padding:12px 5px;font-size:.8rem}.event-item{font-size:.7rem;padding:5px 6px}.event-time{font-size:.7rem}.event-sport{font-size:.65rem}}@media(max-width:480px){.calendar-container{padding:5px}.calendar-header h1{font-size:1.3rem}.calendar-header h2{font-size:1rem}.calendar-day{min-height:90px;padding:3px;font-size:.75rem}.day-number{font-size:.85rem;margin-bottom:3px}.weekday{padding:8px 2px;font-size:.65rem}.event-indicator{gap:3px}.event-dot{width:8px;height:8px}.event-count{font-size:.7rem}.event-preview{gap:4px}.event-item{font-size:.6rem;padding:3px 4px;margin-bottom:3px;min-height:40px}.event-time{font-size:.6rem;margin-bottom:1px}.event-sport{font-size:.55rem}.event-teams{font-size:.6rem;line-height:1.1}}@media(max-width:360px){.calendar-container{padding:3px}.calendar-header h1{font-size:1.1rem}.calendar-header h2{font-size:.9rem}.calendar-day{min-height:85px;padding:2px}.day-number{font-size:.75rem}.weekday{padding:6px 1px;font-size:.6rem}.event-item{font-size:.55rem;padding:2px 3px;min-height:35px}.event-teams{font-size:.55rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}.event-detail-container{padding:30px;max-width:1200px;margin:0 auto;animation:fadeIn .5s}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.event-detail-header{margin-bottom:25px}.back-button{padding:12px 25px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;cursor:pointer;transition:all .3s ease;border-radius:25px;font-weight:600;box-shadow:0 4px 15px #667eea4d}.back-button:hover{transform:translateY(-3px);box-shadow:0 6px 25px #667eea66}.status-badge{padding:8px 16px;display:inline-block;margin-left:15px;border-radius:20px;font-weight:600;font-size:.9rem}.status-badge.played{background:linear-gradient(135deg,#11998e,#38ef7d);color:#fff;box-shadow:0 4px 15px #38ef7d4d}.status-badge.scheduled{background:linear-gradient(135deg,#ffd26f,#ffb547);color:#fff;box-shadow:0 4px 15px #ffb5474d}.event-detail-card{background:#fff;border-radius:20px;padding:30px;animation:slideUp .6s ease;box-shadow:0 10px 40px #00000026;border:2px solid rgba(102,126,234,.2)}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.event-detail-header-info{margin-bottom:25px;padding-bottom:20px;border-bottom:2px solid rgba(102,126,234,.2)}.competition-info h3{margin:0 0 8px;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-size:1.8rem;font-weight:700}.stage-info{margin:0;color:#666;font-size:1.1rem}.sport-badge{padding:8px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:inline-block;margin-top:15px;border-radius:20px;font-weight:600;text-transform:uppercase;letter-spacing:1px;box-shadow:0 4px 15px #667eea4d}.date-time-info{margin-bottom:25px;padding:15px;background:linear-gradient(135deg,#667eea0d,#764ba20d);border-radius:10px}.date{font-weight:700;margin-bottom:8px;color:#667eea;font-size:1.2rem}.time{color:#764ba2;font-size:1.1rem;font-weight:600}.teams-section{display:flex;align-items:center;justify-content:space-around;margin:20px 0}.team{flex:1;text-align:center}.team-name{font-size:1.5rem;font-weight:700;margin-bottom:5px}.team-details{font-size:.9rem;color:#666}.team-abbr{margin-right:10px}.score-section{text-align:center}.score{font-size:2rem;font-weight:700;animation:scaleIn .7s ease}@keyframes scaleIn{0%{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}.team-score.winner{background:linear-gradient(135deg,#11998e,#38ef7d);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:highlight 1s ease}@keyframes highlight{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.vs-section{font-size:1.5rem;font-weight:700;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.venue-info{margin:20px 0;padding:20px;background:linear-gradient(135deg,#667eea14,#764ba214);border:2px solid rgba(102,126,234,.2);border-radius:15px}.venue-info h4{margin:0 0 10px;color:#667eea;font-weight:700;font-size:1.2rem}.venue-info p{margin:0;color:#555;font-weight:500}.additional-info{margin-top:25px;padding-top:20px;border-top:2px solid rgba(102,126,234,.2)}.info-item{margin-bottom:15px;padding:10px;background:#667eea08;border-radius:8px}.info-label{font-weight:700;margin-right:8px;color:#667eea}.result-message{margin-top:20px;padding:20px;background:linear-gradient(135deg,#ffd26f,#ffb547);border:none;border-radius:15px;box-shadow:0 4px 15px #ffb5474d}.result-message p{margin:0;color:#fff;font-weight:600;font-size:1.1rem}.event-not-found{text-align:center;padding:40px 20px}.event-not-found h2{margin-bottom:20px}@media(max-width:768px){.event-detail-container{padding:15px}.event-detail-card{padding:20px}.event-detail-header-info{flex-direction:column;gap:15px}.sport-badge{align-self:flex-start}.competition-info h3{font-size:20px}.teams-section{flex-direction:column;gap:30px}.team,.home-team,.away-team{text-align:center}.home-team .team-details,.away-team .team-details{justify-content:center}.team-name{font-size:24px}.score{font-size:36px}.vs-section{font-size:24px}.additional-info{grid-template-columns:1fr}.back-button{padding:10px 18px;font-size:14px}}@media(max-width:480px){.event-detail-container{padding:10px}.event-detail-card{padding:15px}.back-button{padding:12px 20px;font-size:16px}.competition-info h3{font-size:18px}.date{font-size:16px}.time{font-size:14px}.team-name{font-size:18px}.team-details{font-size:.85rem}.score{font-size:28px}.vs-section{font-size:20px}.venue-info{padding:8px}.venue-info h4,.info-item{font-size:14px}}.add-event-container{max-width:600px;margin:30px auto;padding:30px;background:#fff;border-radius:20px;box-shadow:0 10px 40px #00000026;border:2px solid rgba(102,126,234,.2);animation:fadeInUp .5s}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.add-event-container h2{margin-bottom:25px;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-size:2rem;font-weight:700;text-align:center}form div{margin-bottom:20px}form label{display:block;margin-bottom:8px;font-weight:600;color:#667eea}form input,form select{width:100%;padding:12px 15px;border:2px solid rgba(102,126,234,.3);box-sizing:border-box;transition:all .3s;border-radius:10px;font-size:1rem;background:#fff}form input:focus,form select:focus{outline:none;border-color:#667eea;box-shadow:0 0 15px #667eea33;transform:translateY(-2px)}.buttons{margin-top:25px;display:flex;gap:15px}.buttons button{padding:12px 30px;cursor:pointer;transition:all .3s ease;border-radius:25px;font-weight:600;font-size:1rem;flex:1}.buttons button:hover{transform:translateY(-3px);box-shadow:0 6px 20px #0003}button[type=submit]{background:linear-gradient(135deg,#11998e,#38ef7d);color:#fff;border:none;box-shadow:0 4px 15px #38ef7d4d}button[type=submit]:hover{box-shadow:0 6px 25px #38ef7d66}button[type=button]{background:linear-gradient(135deg,#e0e0e0,#f5f5f5);border:2px solid rgba(102,126,234,.2);color:#667eea}button[type=button]:hover{background:linear-gradient(135deg,#d0d0d0,#e5e5e5);border-color:#667eea}@media(max-width:768px){.add-event-container{margin:10px;padding:15px}.buttons{flex-direction:column}.buttons button{width:100%;padding:12px;font-size:16px}}@media(max-width:480px){.add-event-container{margin:5px;padding:12px;max-width:100%}.add-event-container h2{font-size:1.3rem}form input,form select{padding:10px;font-size:16px}form label{font-size:14px}.buttons button{padding:14px;font-size:16px}}
