.navbar{position:fixed;top:0;left:0;right:0;z-index:1000;padding:0 20px;transition:all .3s ease}.light-theme .navbar{background-color:var(--bg-secondary-light);border-bottom:1px solid var(--border-light);box-shadow:0 2px 8px #0000001a}.dark-theme .navbar{background-color:var(--bg-secondary-dark);border-bottom:1px solid var(--border-dark);box-shadow:0 2px 8px #0000004d}.navbar-container{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;height:70px}.navbar-logo{display:flex;align-items:center;gap:12px;font-weight:700;font-size:1.2rem;letter-spacing:1px;transition:opacity .3s ease}.navbar-logo:hover{opacity:.8}.logo-icon{font-size:1.5rem;color:var(--accent-light);filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.dark-theme .logo-icon{color:var(--accent-dark)}.navbar-menu{display:flex;list-style:none;align-items:center;gap:24px}.navbar-menu li a,.navbar-menu li button{font-weight:500;transition:opacity .3s ease;padding:8px 0}.navbar-menu li a:hover,.navbar-menu li button:hover{opacity:.7}.btn-register{padding:8px 16px;border-radius:6px;background-color:var(--accent-light);color:var(--text-primary-light)}.dark-theme .btn-register{background-color:var(--accent-dark);color:var(--text-primary-dark)}.btn-logout{background:none;color:inherit;font-size:inherit;font-weight:inherit}.theme-toggle{background:none;border:none;font-size:1.5rem;padding:4px 8px;cursor:pointer;transition:transform .3s ease}.theme-toggle:hover{transform:scale(1.1)}@media (max-width: 768px){.navbar-menu{gap:12px;font-size:.9rem}.navbar-logo span{display:none}}.footer{margin-top:auto;padding:40px 20px;border-top:1px solid var(--border-light);transition:all .3s ease;position:relative;z-index:1}.dark-theme .footer{border-top-color:var(--border-dark)}.footer-content{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:40px}.footer-section{display:flex;flex-direction:column;gap:16px}.footer-section h3{font-size:1.3rem;font-weight:700;margin-bottom:8px;color:var(--accent-light)}.dark-theme .footer-section h3{color:var(--accent-dark)}.footer-section p{opacity:.8;line-height:1.6;font-size:.95rem}.social-links{display:flex;flex-direction:column;gap:12px}.social-link{display:flex;align-items:center;gap:12px;padding:10px 0;transition:all .3s ease;color:inherit;opacity:.8}.social-link:hover{opacity:1;transform:translate(4px)}.social-link svg{width:24px;height:24px;flex-shrink:0;color:var(--accent-light)}.dark-theme .social-link svg{color:var(--accent-dark)}.social-link span{font-weight:500}@media (max-width: 768px){.footer{padding:30px 20px}.footer-content{grid-template-columns:1fr;gap:30px}}.home{min-height:100vh}.hero{padding:80px 20px;text-align:center}.hero-content{max-width:800px;margin:0 auto}.hero h1{font-size:4rem;font-weight:700;letter-spacing:3px;margin-bottom:20px;text-transform:uppercase}.hero-subtitle{font-size:1.5rem;font-weight:600;margin-bottom:20px;color:var(--accent-light)}.dark-theme .hero-subtitle{color:var(--accent-dark)}.hero-description{font-size:1.2rem;line-height:1.8;margin-bottom:40px;opacity:.9}.hero-buttons{display:flex;gap:20px;justify-content:center;flex-wrap:wrap}.teams-preview,.upcoming-events,.latest-news{padding:40px 20px}.teams-preview h2,.upcoming-events h2,.latest-news h2{text-align:center;font-size:2.5rem;margin-bottom:32px;margin-top:0}.teams-grid,.events-grid,.posts-grid{margin-bottom:40px}.team-card h3,.event-card h3,.post-card h3{font-size:1.5rem;margin-bottom:12px}.team-card p,.event-card p{margin-bottom:12px;opacity:.8;line-height:1.6}.team-card .team-sport{display:inline-block;margin-top:8px}.post-image{width:100%;height:200px;overflow:hidden;border-radius:6px;margin-bottom:16px}.post-image img{width:100%;height:100%;object-fit:cover}.post-excerpt{margin:12px 0;opacity:.8;line-height:1.6}.post-date{display:block;font-size:.9rem;opacity:.7;margin-top:12px}@media (max-width: 768px){.hero h1{font-size:2.5rem}.hero-subtitle{font-size:1.2rem}.hero-description{font-size:1rem}}.team-item{display:flex;gap:24px;align-items:flex-start}.image-container.team-logo{width:120px!important;height:120px;flex-shrink:0}.team-info h2{font-size:2rem;margin-bottom:8px}.team-sport{display:inline-block;width:160px;text-align:center;padding:6px 12px;box-sizing:border-box}.team-age{font-weight:600;margin-bottom:12px;color:var(--accent-light)}.dark-theme .team-age{color:var(--accent-dark)}.team-description{margin:12px 0;line-height:1.6;opacity:.9}.team-members{margin-top:12px;font-size:.9rem;opacity:.7}.team-leadership{margin-top:12px;padding-top:12px;border-top:1px solid var(--border-light)}.dark-theme .team-leadership{border-top-color:var(--border-dark)}.team-captain,.team-assistants{margin:6px 0;font-size:.9rem}.team-captain strong,.team-assistants strong{color:var(--accent-light);font-weight:600}.dark-theme .team-captain strong,.dark-theme .team-assistants strong{color:var(--accent-dark)}@media (max-width: 768px){.team-item{flex-direction:column}.team-logo{width:100%;height:200px}}.team-hero-image{height:400px;margin-bottom:40px}.team-header{display:flex;gap:32px;align-items:center;margin-bottom:40px}.team-logo-large{width:150px;height:150px;flex-shrink:0}.team-header-info h1{font-size:3rem;margin-bottom:12px}.team-content{display:flex;flex-direction:column;gap:40px}.team-description h2,.team-members h2{font-size:2rem;margin-bottom:20px}.team-description p{font-size:1.1rem;line-height:1.8;opacity:.9}.member-card{text-align:center}.member-card h3{font-size:1.1rem;margin-bottom:8px}.roster-positions{font-size:.95rem;color:var(--text-secondary-light)}.dark-theme .roster-positions{color:var(--text-secondary-dark)}.roster-details{display:flex;flex-wrap:wrap;gap:16px;font-size:.9rem;color:var(--text-secondary-light)}.dark-theme .roster-details{color:var(--text-secondary-dark)}.roster-details span{padding:4px 8px;background-color:var(--bg-primary-light);border-radius:4px}.dark-theme .roster-details span{background-color:var(--bg-primary-dark)}@media (max-width: 768px){.team-header{flex-direction:column;text-align:center}.team-logo-large{width:120px;height:120px}.team-header-info h1{font-size:2rem}}.event-item{display:flex;gap:24px;align-items:flex-start}.image-container.event-image{width:200px!important;height:200px;flex-shrink:0}.event-info{flex:1}.event-header h2{font-size:1.8rem}.event-description{line-height:1.6;opacity:.9;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.event-teams-section{margin:16px 0;padding:12px 0;border-top:1px solid var(--border-light)}.dark-theme .event-teams-section{border-top-color:var(--border-dark)}.event-teams-section strong{display:block;margin-bottom:8px;font-size:.9rem;color:var(--text-secondary-light)}.dark-theme .event-teams-section strong{color:var(--text-secondary-dark)}.event-teams-list{display:flex;flex-wrap:wrap;gap:8px}.event-team-badge{font-size:.85rem;padding:4px 10px}.events-controls{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px;flex-wrap:wrap}.show-passed-events-label{display:flex;align-items:center;gap:8px;cursor:pointer;padding:8px 12px;border-radius:6px;transition:background-color .2s ease;font-size:.9rem;color:var(--text-secondary-light);-webkit-user-select:none;user-select:none}.dark-theme .show-passed-events-label{color:var(--text-secondary-dark)}.show-passed-events-label:hover{background-color:var(--bg-secondary-light)}.dark-theme .show-passed-events-label:hover{background-color:var(--bg-secondary-dark)}.show-passed-events-label input[type=checkbox]{cursor:pointer;width:18px;height:18px;accent-color:var(--accent-color)}.events-sort{display:flex;align-items:center;gap:12px}.events-sort label{font-size:.9rem;color:var(--text-secondary-light);font-weight:500}.dark-theme .events-sort label{color:var(--text-secondary-dark)}.sort-select{padding:8px 12px;border:1px solid var(--border-light);border-radius:6px;background-color:var(--bg-primary-light);color:var(--text-primary-light);font-size:.9rem;cursor:pointer;transition:all .2s ease}.dark-theme .sort-select{border-color:var(--border-dark);background-color:var(--bg-primary-dark);color:var(--text-primary-dark)}.sort-select:hover{border-color:var(--accent-color)}.sort-select:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 3px #b8860b1a}@media (max-width: 768px){.events-controls{flex-direction:column;align-items:stretch}.events-sort{width:100%;justify-content:space-between}.sort-select{flex:1;max-width:200px}.event-item{flex-direction:column}.image-container.event-image{width:100%!important;height:250px}.event-header{flex-direction:column;gap:12px}.event-header h2{min-width:auto}}.event-hero-image{height:400px;margin-bottom:40px}.event-header h1{font-size:3rem;margin-bottom:16px}.event-meta{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px}.message{padding:16px;border-radius:6px;margin-bottom:24px;font-weight:600}.event-content{display:grid;grid-template-columns:2fr 1fr;gap:32px}.event-description h2,.event-details-card h2{font-size:1.8rem;margin-bottom:20px}.team-roster h2{font-size:2rem;margin-bottom:20px}.roster-list{display:flex;flex-direction:column;gap:16px}.roster-item{padding:16px;border:1px solid var(--border-light);border-radius:8px;background-color:var(--bg-secondary-light);transition:all .3s ease}.dark-theme .roster-item{border-color:var(--border-dark);background-color:var(--bg-secondary-dark)}.roster-item:hover{box-shadow:0 2px 8px #0000001a;transform:translateY(-2px)}.dark-theme .roster-item:hover{box-shadow:0 2px 8px #0000004d}.roster-player-info{display:flex;flex-direction:column;gap:8px}.roster-player-name{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.roster-player-name strong{font-size:1.1rem;color:var(--text-primary-light)}.dark-theme .roster-player-name strong{color:var(--text-primary-dark)}.roster-item .badge-captain,.roster-item .badge-assistant{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;font-size:.875rem;font-weight:700;margin-left:0;margin-right:4px}.roster-item .badge-captain{background-color:#f39c12;color:#fff}.dark-theme .roster-item .badge-captain{background-color:#e67e22;color:#fff}.roster-item .badge-assistant{background-color:#3498db;color:#fff}.dark-theme .roster-item .badge-assistant{background-color:#2980b9;color:#fff}.roster-item .badge-assistant-lml,.roster-item .badge.badge-assistant-lml{background-color:#4b9cd3!important;color:#fff!important}.dark-theme .roster-item .badge-assistant-lml,.dark-theme .roster-item .badge.badge-assistant-lml{background-color:#5ba8d8!important;color:#fff!important}.roster-item .badge-assistant-military,.roster-item .badge.badge-assistant-military{background-color:#4b5320!important;color:#fff!important}.dark-theme .roster-item .badge-assistant-military,.dark-theme .roster-item .badge.badge-assistant-military{background-color:#5c6b2a!important;color:#fff!important}.roster-item .badge-assistant-senior,.roster-item .badge.badge-assistant-senior{background-color:#800020!important;color:#fff!important}.dark-theme .roster-item .badge-assistant-senior,.dark-theme .roster-item .badge.badge-assistant-senior{background-color:#9a0025!important;color:#fff!important}.event-description p{font-size:1.1rem;line-height:1.8;opacity:.9}.spots-left{color:var(--accent-light);font-weight:600}.dark-theme .spots-left{color:var(--accent-dark)}.team-roster{grid-column:1 / -1}@media (max-width: 968px){.event-content{grid-template-columns:1fr}.event-header{flex-direction:column}.event-header h1{font-size:2rem}}.post-item{display:flex;gap:24px;align-items:flex-start}.image-container.post-image{width:200px!important;height:200px;flex-shrink:0}.post-header h2{font-size:1.8rem}.post-excerpt{margin:12px 0;line-height:1.6;opacity:.9;font-size:1.05rem}.post-meta{display:flex;gap:16px;margin-top:16px;font-size:.9rem;opacity:.7}.post-date,.post-author{display:flex;align-items:center}.no-posts{text-align:center;padding:60px 20px;font-size:1.2rem;opacity:.7}@media (max-width: 768px){.post-item{flex-direction:column}.post-image{width:100%;height:250px}.post-header{flex-direction:column}}.post-hero-image{height:400px;margin-bottom:40px}.post-header h1{font-size:3rem;margin-bottom:16px}.post-meta{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px}.post-content{max-width:800px;margin:0 auto}.post-info{display:flex;justify-content:space-between;align-items:center;padding:20px 0;margin-bottom:32px;border-top:1px solid var(--border-light);border-bottom:1px solid var(--border-light)}.dark-theme .post-info{border-top-color:var(--border-dark);border-bottom-color:var(--border-dark)}.post-author,.post-date{font-size:.95rem;opacity:.8}.post-body{font-size:1.1rem;line-height:1.8;opacity:.9}.post-body p{margin-bottom:20px}@media (max-width: 768px){.post-header h1{font-size:2rem}.post-info{flex-direction:column;align-items:start;gap:12px}}.login-page{display:flex;align-items:center;justify-content:center}.login-container{width:100%;max-width:450px}.login-header{text-align:center;margin-bottom:32px}.login-header h1{font-size:2.5rem;margin-bottom:8px}.login-header p{opacity:.8;font-size:1.1rem}.login-form{display:flex;flex-direction:column;gap:24px}.login-footer{text-align:center;margin-top:24px;padding-top:24px;border-top:1px solid var(--border-light)}.dark-theme .login-footer{border-top-color:var(--border-dark)}.login-footer p{opacity:.8}.login-footer a{color:var(--accent-light);font-weight:600;text-decoration:underline}.dark-theme .login-footer a{color:var(--accent-dark)}.image-cropper-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000c;display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px}.image-cropper-container{background-color:var(--bg-secondary-light);border-radius:12px;padding:24px;max-width:90vw;max-height:90vh;display:flex;flex-direction:column;gap:20px}.dark-theme .image-cropper-container{background-color:var(--bg-secondary-dark)}.image-cropper-header{text-align:center}.image-cropper-header h3{font-size:1.5rem;margin-bottom:8px}.image-cropper-header p{opacity:.8;font-size:.9rem}.image-cropper-wrapper{position:relative;width:100%;height:400px;background-color:#000;border-radius:8px;overflow:hidden}.image-cropper-controls{display:flex;justify-content:center;align-items:center;gap:16px}.zoom-control{display:flex;align-items:center;gap:12px;flex:1;max-width:400px}.zoom-control label{font-weight:600;min-width:50px}.zoom-control input[type=range]{flex:1;height:6px;border-radius:3px;background:var(--border-light);outline:none;-webkit-appearance:none}.dark-theme .zoom-control input[type=range]{background:var(--border-dark)}.zoom-control input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;border-radius:50%;background:var(--accent-light);cursor:pointer}.dark-theme .zoom-control input[type=range]::-webkit-slider-thumb{background:var(--accent-dark)}.zoom-control input[type=range]::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:var(--accent-light);cursor:pointer;border:none}.dark-theme .zoom-control input[type=range]::-moz-range-thumb{background:var(--accent-dark)}.zoom-control span{min-width:40px;text-align:right;font-weight:600}.image-cropper-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:16px;border-top:1px solid var(--border-light)}.dark-theme .image-cropper-actions{border-top-color:var(--border-dark)}@media (max-width: 768px){.image-cropper-container{padding:16px;max-width:95vw}.image-cropper-wrapper{height:300px}.zoom-control{flex-direction:column;gap:8px}.zoom-control label{min-width:auto}.zoom-control span{text-align:center}}.admin-dashboard{min-height:100vh;padding:40px 20px}.admin-header{margin-bottom:32px}.admin-header h1{font-size:3rem;margin-bottom:8px}.admin-header p{opacity:.8;font-size:1.1rem}.admin-message{padding:16px 20px;border-radius:6px;margin-bottom:24px;display:flex;justify-content:space-between;align-items:center;font-weight:600}.admin-message.success{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.dark-theme .admin-message.success{background-color:#1e4620;color:#90ee90;border:1px solid #2d5a2f}.admin-message.error{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.dark-theme .admin-message.error{background-color:#4a1e1e;color:#ff6b6b;border:1px solid #5a2e2e}.admin-message button{background:none;border:none;font-size:1.5rem;cursor:pointer;opacity:.7;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.admin-message button:hover{opacity:1}.admin-tabs{display:flex;gap:12px;margin-bottom:32px;border-bottom:2px solid var(--border-light)}.dark-theme .admin-tabs{border-bottom-color:var(--border-dark)}.admin-tabs button{padding:12px 24px;background:none;border:none;font-size:1rem;font-weight:600;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .3s ease;color:inherit}.admin-tabs button:hover{opacity:.7}.admin-tabs button.active{border-bottom-color:var(--accent-light);color:var(--accent-light)}.dark-theme .admin-tabs button.active{border-bottom-color:var(--accent-dark);color:var(--accent-dark)}.admin-content{min-height:400px}.admin-tab-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.admin-tab-header h2{font-size:2rem}.admin-list{display:flex;flex-direction:column;gap:16px}.admin-item{display:flex;justify-content:space-between;align-items:center;padding:24px;border-radius:8px;gap:24px}.light-theme .admin-item{background-color:var(--bg-secondary-light);border:1px solid var(--border-light)}.dark-theme .admin-item{background-color:var(--bg-secondary-dark);border:1px solid var(--border-dark)}.admin-item-content{flex:1}.admin-item-content h3{font-size:1.5rem;margin-bottom:8px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.admin-item-content p{opacity:.8;margin-bottom:8px}.badge-captain{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background-color:#f39c12;color:#fff;font-size:.875rem;font-weight:700;margin-left:4px}.dark-theme .badge-captain{background-color:#e67e22;color:#fff}.badge-assistant:not(.badge-assistant-lml):not(.badge-assistant-military):not(.badge-assistant-senior){display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background-color:#3498db;color:#fff;font-size:.875rem;font-weight:700;margin-left:4px}.dark-theme .badge-assistant:not(.badge-assistant-lml):not(.badge-assistant-military):not(.badge-assistant-senior){background-color:#2980b9;color:#fff}.badge-assistant-lml,.badge.badge-assistant-lml,.admin-item .badge-assistant-lml,.admin-item .badge.badge-assistant-lml,.admin-tab .badge-assistant-lml,.admin-tab .badge.badge-assistant-lml{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background-color:#4b9cd3!important;color:#fff!important;font-size:.875rem;font-weight:700;margin-left:4px}.dark-theme .badge-assistant-lml,.dark-theme .badge.badge-assistant-lml,.dark-theme .admin-item .badge-assistant-lml,.dark-theme .admin-item .badge.badge-assistant-lml,.dark-theme .admin-tab .badge-assistant-lml,.dark-theme .admin-tab .badge.badge-assistant-lml{background-color:#5ba8d8!important;color:#fff!important}.badge-assistant-military,.badge.badge-assistant-military,.admin-item .badge-assistant-military,.admin-item .badge.badge-assistant-military,.admin-tab .badge-assistant-military,.admin-tab .badge.badge-assistant-military{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background-color:#4b5320!important;color:#fff!important;font-size:.875rem;font-weight:700;margin-left:4px}.dark-theme .badge-assistant-military,.dark-theme .badge.badge-assistant-military,.dark-theme .admin-item .badge-assistant-military,.dark-theme .admin-item .badge.badge-assistant-military,.dark-theme .admin-tab .badge-assistant-military,.dark-theme .admin-tab .badge.badge-assistant-military{background-color:#5c6b2a!important;color:#fff!important}.badge-assistant-senior,.badge.badge-assistant-senior,.admin-item .badge-assistant-senior,.admin-item .badge.badge-assistant-senior,.admin-tab .badge-assistant-senior,.admin-tab .badge.badge-assistant-senior{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background-color:#800020!important;color:#fff!important;font-size:.875rem;font-weight:700;margin-left:4px}.dark-theme .badge-assistant-senior,.dark-theme .badge.badge-assistant-senior,.dark-theme .admin-item .badge-assistant-senior,.dark-theme .admin-item .badge.badge-assistant-senior,.dark-theme .admin-tab .badge-assistant-senior,.dark-theme .admin-tab .badge.badge-assistant-senior{background-color:#9a0025!important;color:#fff!important}.admin-item-actions{display:flex;gap:12px}.admin-item-actions button{padding:8px 16px;border-radius:6px;font-weight:600;cursor:pointer;transition:all .3s ease;background-color:transparent;border:2px solid currentColor;color:var(--text-primary-light)}.dark-theme .admin-item-actions button{color:#e0e0e0;border-color:#e0e0e0}.admin-item-actions button:hover{background-color:currentColor;color:var(--bg-primary-light)}.dark-theme .admin-item-actions button:hover{background-color:#e0e0e0;color:#1a1a1a;border-color:#e0e0e0}.btn-danger{color:#e74c3c;border-color:#e74c3c}.btn-danger:hover{background-color:#e74c3c;color:#fff}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px}.modal-content{background-color:var(--bg-secondary-light);border-radius:12px;max-width:700px;width:100%;max-height:90vh;overflow-y:auto;padding:32px}.dark-theme .modal-content{background-color:var(--bg-secondary-dark)}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.modal-header h2{font-size:2rem}.modal-close{background:none;border:none;font-size:2rem;cursor:pointer;opacity:.7;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;color:inherit}.modal-close:hover{opacity:1}.modal-form{display:flex;flex-direction:column;gap:20px}.modal-form .form-group{margin-bottom:0}.form-group.error label{color:#e74c3c}.form-group.error .error-field,.form-group.error input.error-field,.form-group.error select.error-field,.form-group.error textarea.error-field{border-color:#e74c3c;background-color:#fff5f5;box-shadow:0 0 0 2px #e74c3c1a}.dark-theme .form-group.error .error-field,.dark-theme .form-group.error input.error-field,.dark-theme .form-group.error select.error-field,.dark-theme .form-group.error textarea.error-field{border-color:#e74c3c;background-color:#2a1a1a;box-shadow:0 0 0 2px #e74c3c33}.form-group.error .error-container{border-color:#e74c3c;background-color:#fff5f5}.dark-theme .form-group.error .error-container{border-color:#e74c3c;background-color:#2a1a1a}.field-error{display:block;color:#e74c3c;font-size:.875rem;margin-top:6px;font-weight:500}.dark-theme .field-error{color:#ff6b6b}.roster-members-section{margin-top:16px;padding:16px;border:1px solid var(--border-light);border-radius:8px;background-color:var(--bg-primary-light)}.dark-theme .roster-members-section{border-color:var(--border-dark);background-color:var(--bg-primary-dark)}.roster-members-list{margin-bottom:20px;display:flex;flex-direction:column;gap:12px}.roster-member-item{display:flex;justify-content:space-between;align-items:center;padding:12px;border:1px solid var(--border-light);border-radius:6px;background-color:var(--bg-secondary-light)}.roster-member-info{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.roster-member-form{padding-top:20px;border-top:1px solid var(--border-light)}.dark-theme .roster-member-form{border-top-color:var(--border-dark)}.roster-member-form h4{margin-bottom:16px;font-size:1.2rem}.link-roster-member-modal p{margin-bottom:16px;font-size:.95rem;opacity:.9}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-row .form-group{margin-bottom:0}.checkbox-group{margin-top:8px}.checkbox-group label{display:flex;align-items:center;gap:8px;cursor:pointer;margin-bottom:0}.checkbox-group input[type=checkbox]{width:18px;height:18px;cursor:pointer;margin:0}.modal-form input[type=file]{width:100%;padding:8px;border:1px solid var(--border-light);border-radius:6px;font-size:.9rem;cursor:pointer}.dark-theme .modal-form input[type=file]{border-color:var(--border-dark);background-color:var(--bg-secondary-dark);color:var(--text-primary-dark)}.positions-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;padding:16px;border:1px solid var(--border-light);border-radius:6px;background-color:var(--bg-primary-light);max-height:300px;overflow-y:auto}.form-help{margin-top:8px;font-size:.85rem;color:var(--text-secondary-light);font-style:italic}.dark-theme .form-help{color:var(--text-secondary-dark)}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:24px;border-top:1px solid var(--border-light)}.dark-theme .modal-actions{border-top-color:var(--border-dark)}@media (max-width: 768px){.admin-item{flex-direction:column;align-items:start}.admin-item-actions{width:100%;justify-content:flex-end}.form-row{grid-template-columns:1fr}.modal-content{padding:20px}}.profile-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}.profile-header h1{font-size:3rem;margin:0}.profile-edit-form{margin-bottom:32px}.profile-edit-form h2{font-size:1.8rem;margin-bottom:24px}.form-actions{display:flex;gap:12px;margin-top:24px}.teams-selection-container{display:flex;flex-direction:column;gap:8px;max-height:200px;overflow-y:auto;padding:12px;border:1px solid var(--border-light);border-radius:6px;background-color:var(--bg-primary-light)}.dark-theme .teams-selection-container{border-color:var(--border-dark);background-color:var(--bg-primary-dark)}.profile-content{display:grid;grid-template-columns:1fr 2fr;gap:32px}.profile-info{display:flex;flex-direction:column;gap:24px}.info-card h2{font-size:1.8rem;margin-bottom:24px}.info-item{margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid var(--border-light)}.dark-theme .info-item{border-bottom-color:var(--border-dark)}.info-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.info-item strong{font-size:.9rem;text-transform:uppercase;letter-spacing:.5px;opacity:.7}.info-item span{font-size:1.1rem;font-weight:600;display:flex;gap:8px;flex-wrap:wrap}.profile-events h2{font-size:2rem;margin-bottom:24px}.event-card h3{font-size:1.5rem;margin-bottom:12px}.event-date{display:block;font-weight:600;color:var(--accent-light);margin-bottom:8px}.dark-theme .event-date{color:var(--accent-dark)}.event-location{display:block;opacity:.8;margin-bottom:12px}.profile-teams-list{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.profile-team-badge{display:inline-flex;align-items:center;gap:4px}.profile-team-badge .badge-captain{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background-color:#f39c12;color:#fff;font-size:.75rem;font-weight:700;padding:0;margin:0}.dark-theme .profile-team-badge .badge-captain{background-color:#e67e22}.profile-team-badge .badge-assistant{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background-color:#3498db;color:#fff;font-size:.75rem;font-weight:700;padding:0;margin:0}.dark-theme .profile-team-badge .badge-assistant{background-color:#2980b9}.profile-team-badge .badge-assistant-lml,.profile-team-badge .badge.badge-assistant-lml{background-color:#4b9cd3!important;color:#fff!important}.dark-theme .profile-team-badge .badge-assistant-lml,.dark-theme .profile-team-badge .badge.badge-assistant-lml{background-color:#5ba8d8!important;color:#fff!important}.profile-team-badge .badge-assistant-military,.profile-team-badge .badge.badge-assistant-military{background-color:#4b5320!important;color:#fff!important}.dark-theme .profile-team-badge .badge-assistant-military,.dark-theme .profile-team-badge .badge.badge-assistant-military{background-color:#5c6b2a!important;color:#fff!important}.profile-team-badge .badge-assistant-senior,.profile-team-badge .badge.badge-assistant-senior{background-color:#800020!important;color:#fff!important}.dark-theme .profile-team-badge .badge-assistant-senior,.dark-theme .profile-team-badge .badge.badge-assistant-senior{background-color:#9a0025!important;color:#fff!important}@media (max-width: 968px){.profile-content{grid-template-columns:1fr}}.roster-management-page{padding:40px 20px}.roster-management-content{display:grid;grid-template-columns:300px 1fr;gap:32px;margin-top:32px}.roster-sidebar .card{position:sticky;top:20px}.team-select{width:100%;padding:12px;border:1px solid var(--border-light);border-radius:6px;background-color:var(--bg-primary-light);color:var(--text-primary-light);font-size:1rem;margin-bottom:20px}.dark-theme .team-select{border-color:var(--border-dark);background-color:var(--bg-primary-dark);color:var(--text-primary-dark)}.team-info{padding-top:20px;border-top:1px solid var(--border-light)}.dark-theme .team-info{border-top-color:var(--border-dark)}.team-info h3{margin:0 0 8px;font-size:1.5rem}.team-info p{margin:8px 0;opacity:.8}.roster-count{font-weight:600;color:var(--accent-light)}.dark-theme .roster-count{color:var(--accent-dark)}.roster-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--border-light)}.dark-theme .roster-header{border-bottom-color:var(--border-dark)}.mode-toggle{display:flex;gap:8px}.roster-form-section{margin-bottom:32px;padding-bottom:32px;border-bottom:1px solid var(--border-light)}.dark-theme .roster-form-section{border-bottom-color:var(--border-dark)}.roster-form-section h3{margin-bottom:20px;font-size:1.5rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:6px;font-weight:600;font-size:.9rem}.form-group input,.form-group select{width:100%;padding:10px;border:1px solid var(--border-light);border-radius:6px;background-color:var(--bg-primary-light);color:var(--text-primary-light);font-size:1rem}.dark-theme .form-group input,.dark-theme .form-group select{border-color:var(--border-dark);background-color:var(--bg-primary-dark);color:var(--text-primary-dark)}.positions-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;max-height:200px;overflow-y:auto;padding:12px;border:1px solid var(--border-light);border-radius:6px;background-color:var(--bg-primary-light)}.dark-theme .positions-container{border-color:var(--border-dark);background-color:var(--bg-primary-dark)}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer}.checkbox-group{margin-top:16px}.form-actions{display:flex;gap:12px;margin-top:20px}.roster-list-section{margin-bottom:32px}.roster-list-section h3{margin-bottom:20px;font-size:1.5rem}.roster-members-list{display:flex;flex-direction:column;gap:12px}.roster-member-item{display:flex;justify-content:space-between;align-items:center;padding:16px;border:1px solid var(--border-light);border-radius:6px;background-color:var(--bg-secondary-light)}.dark-theme .roster-member-item{border-color:var(--border-dark);background-color:var(--bg-secondary-dark)}.roster-member-info{display:flex;align-items:center;gap:8px;flex-wrap:wrap;flex:1}.roster-member-positions{font-size:.9rem;opacity:.8}.roster-member-email,.roster-member-detail{font-size:.85rem;opacity:.7;margin-left:8px}.roster-member-item.user-account{border-left:3px solid var(--accent-light)}.dark-theme .roster-member-item.user-account{border-left-color:var(--accent-dark)}.roster-breakdown{font-size:.85rem;opacity:.7}.badge-info{background-color:#3498db;color:#fff;font-size:.75rem;padding:2px 6px;border-radius:4px;margin-left:4px}.dark-theme .badge-info{background-color:#2980b9}.badge-assistant-lml,.badge.badge-assistant-lml{background-color:#4b9cd3!important;color:#fff!important}.dark-theme .badge-assistant-lml,.dark-theme .badge.badge-assistant-lml{background-color:#5ba8d8!important;color:#fff!important}.badge-assistant-military,.badge.badge-assistant-military{background-color:#4b5320!important;color:#fff!important}.dark-theme .badge-assistant-military,.dark-theme .badge.badge-assistant-military{background-color:#5c6b2a!important;color:#fff!important}.badge-assistant-senior,.badge.badge-assistant-senior{background-color:#800020!important;color:#fff!important}.dark-theme .badge-assistant-senior,.dark-theme .badge.badge-assistant-senior{background-color:#9a0025!important;color:#fff!important}.roster-member-actions{display:flex;gap:8px}.roster-save-section{padding-top:24px;border-top:1px solid var(--border-light);text-align:center}.dark-theme .roster-save-section{border-top-color:var(--border-dark)}.btn-large{padding:14px 32px;font-size:1.1rem}.link-roster-member-modal{padding:20px;border:2px solid var(--accent-light);border-radius:8px;background-color:var(--bg-secondary-light);margin-bottom:20px}.dark-theme .link-roster-member-modal{border-color:var(--accent-dark);background-color:var(--bg-secondary-dark)}.link-roster-member-modal h4{margin-bottom:12px;font-size:1.2rem;color:var(--accent-light)}.dark-theme .link-roster-member-modal h4{color:var(--accent-dark)}.users-list-for-linking{display:flex;flex-direction:column;gap:12px;max-height:300px;overflow-y:auto;margin-bottom:16px}.user-link-item{display:flex;justify-content:space-between;align-items:center;padding:12px;border:1px solid var(--border-light);border-radius:6px;background-color:var(--bg-primary-light);transition:all .3s ease}.dark-theme .user-link-item{border-color:var(--border-dark);background-color:var(--bg-primary-dark)}.user-link-item.match{border-color:#27ae60;background-color:#e8f5e9}.dark-theme .user-link-item.match{border-color:#2ecc71;background-color:#1e3a1e}.user-link-info{display:flex;flex-direction:column;gap:4px;flex:1}.user-link-email{font-size:.85rem;opacity:.7}.match-badge{display:inline-block;padding:2px 8px;background-color:#27ae60;color:#fff;border-radius:4px;font-size:.75rem;font-weight:600;margin-top:4px}.dark-theme .match-badge{background-color:#2ecc71}.checkbox-label.disabled{opacity:.6;cursor:not-allowed}.checkbox-label.disabled input[type=checkbox]{cursor:not-allowed}.unavailable-badge{font-size:.75rem;color:#e74c3c;font-style:italic;margin-left:4px}.dark-theme .unavailable-badge{color:#ff6b6b}.copy-players-section{border:2px solid var(--accent-light);background-color:var(--bg-secondary-light)}.dark-theme .copy-players-section{border-color:var(--accent-dark);background-color:var(--bg-secondary-dark)}.copy-players-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;flex-wrap:wrap;gap:12px}.copy-players-actions{display:flex;gap:8px}.players-to-copy-list{max-height:300px;overflow-y:auto;border:1px solid var(--border-light);border-radius:6px;padding:12px;background-color:var(--bg-primary-light);margin-bottom:16px}.dark-theme .players-to-copy-list{border-color:var(--border-dark);background-color:var(--bg-primary-dark)}.player-to-copy-item{padding:10px;border-radius:4px;margin-bottom:8px;transition:all .2s ease}.player-to-copy-item:last-child{margin-bottom:0}.player-to-copy-item.selected{background-color:var(--accent-light);opacity:.2}.dark-theme .player-to-copy-item.selected{background-color:var(--accent-dark);opacity:.3}.player-to-copy-item.duplicate{opacity:.5;background-color:var(--bg-secondary-light)}.dark-theme .player-to-copy-item.duplicate{background-color:var(--bg-secondary-dark)}.player-to-copy-item .checkbox-label{cursor:pointer;display:flex;align-items:center;gap:8px}.player-to-copy-item .checkbox-label input[type=checkbox]:disabled{cursor:not-allowed}.player-positions{font-size:.9rem;opacity:.8;margin-left:4px}.duplicate-badge{color:#e74c3c;font-size:.85rem;font-weight:600;margin-left:8px}.dark-theme .duplicate-badge{color:#ff6b6b}@media (max-width: 968px){.roster-management-content{grid-template-columns:1fr}.roster-sidebar .card{position:static}.copy-players-header{flex-direction:column;align-items:flex-start}}.app{min-height:100vh;display:flex;flex-direction:column;position:relative}.app:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background-image:var(--arrow-bg);background-repeat:no-repeat;background-position:center;background-size:60% auto;opacity:.3;pointer-events:none;z-index:0}.main-content{flex:1;padding-top:80px;position:relative;z-index:1}.container{max-width:1200px;margin:0 auto;padding:0 20px}.page-header{text-align:center;padding:40px 20px;margin-bottom:40px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}.page-header h1{font-size:2.5rem;margin-bottom:10px;flex:1;text-align:center}.page-header p{font-size:1.1rem;opacity:.8}.page-header .btn{flex-shrink:0}.btn{padding:12px 24px;border-radius:6px;font-size:1rem;font-weight:600;transition:all .3s ease;display:inline-block;text-align:center}.btn-primary{background-color:var(--accent-light);color:var(--text-primary-light)}.dark-theme .btn-primary{background-color:var(--accent-dark);color:var(--text-primary-dark)}.btn-primary:hover{opacity:.9;transform:translateY(-2px)}.btn-secondary{background-color:transparent;border:2px solid currentColor;color:var(--text-primary-light)}.dark-theme .btn-secondary{color:#e0e0e0;border-color:#e0e0e0}.btn-secondary:hover{background-color:currentColor;color:var(--bg-primary-light)}.dark-theme .btn-secondary:hover{background-color:#e0e0e0;color:#1a1a1a;border-color:#e0e0e0}.card{border-radius:8px;padding:24px;transition:all .3s ease}.light-theme .card{background-color:var(--bg-secondary-light);border:1px solid var(--border-light);box-shadow:0 2px 8px #0000001a}.dark-theme .card{background-color:var(--bg-secondary-dark);border:1px solid var(--border-dark);box-shadow:0 2px 8px #0000004d}.card:hover{transform:translateY(-4px);box-shadow:0 4px 16px #00000026}.dark-theme .card:hover{box-shadow:0 4px 16px #00000080}.grid{display:grid;gap:24px}.grid-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:600}.form-group input,.form-group textarea,.form-group select{width:100%;padding:12px;border-radius:6px;border:1px solid var(--border-light);font-size:1rem;transition:border-color .3s ease}.dark-theme .form-group input,.dark-theme .form-group textarea,.dark-theme .form-group select{background-color:var(--bg-secondary-dark);border-color:var(--border-dark);color:var(--text-primary-dark)}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--accent-light)}.dark-theme .form-group input:focus,.dark-theme .form-group textarea:focus,.dark-theme .form-group select:focus{border-color:var(--accent-dark)}.error-message{color:#e74c3c;margin-top:8px;font-size:.9rem}.dark-theme .error-message{color:#ff6b6b}.success-message{color:#27ae60;margin-top:8px;font-size:.9rem}.dark-theme .success-message{color:#51cf66}.page{min-height:100vh;padding:40px 20px}.loading{text-align:center;padding:60px 20px;font-size:1.2rem}.error{text-align:center;padding:60px 20px;font-size:1.2rem;color:#e74c3c}.dark-theme .error{color:#ff6b6b}.list{display:flex;flex-direction:column;gap:24px}.list-item{padding:24px;border-radius:8px;transition:all .3s ease;overflow:hidden}.light-theme .list-item{background-color:var(--bg-secondary-light);border:1px solid var(--border-light);box-shadow:0 2px 8px #0000001a}.dark-theme .list-item{background-color:var(--bg-secondary-dark);border:1px solid var(--border-dark);box-shadow:0 2px 8px #0000004d}.list-item:hover{transform:translateY(-4px);box-shadow:0 4px 16px #00000026}.dark-theme .list-item:hover{box-shadow:0 4px 16px #00000080}.image-container{overflow:hidden;border-radius:8px;display:flex;align-items:center;justify-content:center;position:relative}.image-container.hero-image,.image-container.event-hero-image,.image-container.team-hero-image,.image-container.post-hero-image{width:100%}.image-container img{width:100%;height:100%;object-fit:cover;display:block;max-width:100%;max-height:100%}.image-preview{max-width:200px;max-height:200px;margin-top:12px;border-radius:6px;object-fit:cover;display:block}.badge{display:inline-block;padding:4px 12px;border-radius:4px;font-size:.9rem;font-weight:600;white-space:nowrap}.badge-primary{background-color:var(--accent-light);color:var(--text-primary-light)}.dark-theme .badge-primary{background-color:var(--accent-dark);color:var(--text-primary-dark)}.status{display:inline-block;padding:4px 12px;border-radius:4px;font-size:.85rem;font-weight:600}.status.active,.status.published{background-color:#d4edda;color:#155724}.dark-theme .status.active,.dark-theme .status.published{background-color:#1e4620;color:#90ee90}.status.inactive,.status.draft{background-color:#fff3cd;color:#856404}.dark-theme .status.inactive,.dark-theme .status.draft{background-color:#4a3e1e;color:gold}.filter-group{display:flex;gap:12px;margin-bottom:32px;flex-wrap:wrap}.filter-group button{padding:10px 20px;border-radius:6px;font-weight:600;transition:all .3s ease;background-color:transparent;border:2px solid currentColor;color:var(--text-secondary-light);border-color:var(--text-secondary-light)}.dark-theme .filter-group button{color:var(--text-secondary-dark);border-color:var(--text-secondary-dark)}.filter-group button:hover{background-color:currentColor;color:var(--bg-primary-light)}.dark-theme .filter-group button:hover{color:var(--bg-primary-dark)}.filter-group button.active{background-color:var(--accent-light);color:var(--text-primary-light);border-color:var(--accent-light)}.dark-theme .filter-group button.active{background-color:var(--accent-dark);color:var(--text-primary-dark);border-color:var(--accent-dark)}.content-section{display:flex;flex-direction:column;gap:16px}.content-header{display:flex;justify-content:space-between;align-items:start;gap:16px;flex-wrap:wrap}.content-header h2,.content-header h3{margin:0;flex:1;min-width:200px}.detail-list{display:flex;flex-direction:column;gap:8px}.detail-item{font-size:.95rem;line-height:1.5}.detail-item strong{margin-right:8px;color:var(--accent-light)}.dark-theme .detail-item strong{color:var(--accent-dark)}.empty-state{text-align:center;padding:60px 20px;font-size:1.2rem;opacity:.7}@media (max-width: 768px){.page{padding:30px 15px}.page-header{padding:30px 15px;margin-bottom:30px}.page-header h1{font-size:2rem}.content-header{flex-direction:column;gap:12px}.content-header h2,.content-header h3{min-width:auto}}*{margin:0;padding:0;box-sizing:border-box}:root{--bg-primary-light: #F5F5E8;--bg-secondary-light: #FFFFFF;--text-primary-light: #000000;--text-secondary-light: #333333;--accent-light: #C0A060;--accent-dark-light: #A08040;--border-light: #E0E0D0;--bg-primary-dark: #000000;--bg-secondary-dark: #1a1a1a;--text-primary-dark: #D0B070;--text-secondary-dark: #C0A060;--accent-dark: #A08040;--accent-light-dark: #B09050;--border-dark: #333333}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color .3s ease,color .3s ease}body.light-theme{background-color:var(--bg-primary-light);color:var(--text-primary-light)}body.dark-theme{background-color:var(--bg-primary-dark);color:var(--text-primary-dark)}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}a{text-decoration:none;color:inherit}button{cursor:pointer;border:none;font-family:inherit}input,textarea,select{font-family:inherit}
