.navbar{background:#fff;box-shadow:0 2px 4px #0000001a;position:relative;z-index:1000;color:#222}.navbar-container{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;padding:1rem}.navbar-brand{font-size:1.5rem;font-weight:700;color:inherit;text-decoration:none;cursor:default}.navbar-brand a{color:#007bff;text-decoration:none;font-size:1.5em;font-weight:700}.navbar-toggle{display:none}.navbar-menu{display:block;position:static;background:none;box-shadow:none;z-index:2000}.navbar-menu ul{list-style:none;padding:0;margin:0;display:flex;gap:2rem;flex-direction:row;align-items:center;justify-content:flex-end}.navbar-menu li{border:none;width:auto;background:none}.navbar-menu a{text-decoration:none;font-weight:500;padding:.5rem 1rem;border-radius:4px;transition:background .2s,color .2s;background:none;color:#222;display:block}.navbar-menu a:hover{color:#007bff;background:#f0f6ff}.navbar-auth{align-items:center;gap:.3em}.navbar-user-icon{font-size:1.3em;vertical-align:middle;margin-right:4px;cursor:pointer;color:#2a4d69}.navbar-login-icon{font-size:1.3em;color:#2a4d69;margin-left:4px;vertical-align:middle;text-decoration:none;cursor:pointer}.navbar-logout-btn{background:none;border:none;color:#2a4d69;cursor:pointer;font-weight:500;font-size:1em;padding:0;margin-left:2px;text-decoration:underline}.navbar-logout-btn:hover,.navbar-login-icon:hover{color:#007bff}@media (max-width: 768px){.navbar{position:relative}.navbar-container{padding-left:.5rem;padding-right:.5rem}.navbar-toggle{display:block;background:none;border:none;font-size:1.5em;cursor:pointer;color:#007bff;position:absolute;right:1rem;top:50%;transform:translateY(-50%);z-index:1001;padding:.5rem;margin:0}.navbar-menu{display:none;position:absolute;top:100%;left:0;right:0;background:#b0c4de;padding:1rem;box-shadow:0 2px 4px #0000001a;z-index:999}.navbar-menu.active{display:block}.navbar-menu ul{flex-direction:column;gap:1rem;align-items:stretch;justify-content:flex-start}.navbar-menu li{width:100%;border-top:1px solid #e0e0e0;background:none}.navbar-menu a{padding:1rem;text-align:center;border-radius:0;background:none;color:#222}.navbar-menu a:hover{background:#f0f6ff;color:#007bff}.navbar-user-icon{padding-left:40%;color:#2a4d69}}@media (prefers-color-scheme: dark){.navbar{background-color:#111;color:#c9e1ff}.navbar-brand a{color:#7bb6ff}.navbar-menu{background-color:#23272a!important;box-shadow:0 2px 8px #0006}.navbar-menu ul{background:none}.navbar-menu li{background:none;border-top:1px solid #222e3c}.navbar-menu a{color:#c9e1ff;background:none}.navbar-menu a:hover{background:#2a4d69;color:#fff}.navbar-user-icon,.navbar-login-icon,.navbar-logout-btn{color:#c9e1ff}.navbar-logout-btn:hover,.navbar-login-icon:hover{color:#7bb6ff}}.teams-container{display:flex;gap:2rem;padding:1rem;max-width:1200px;margin:0 auto}.teams-column{flex:1;min-width:300px}.team-list-header{margin:1rem 0}.all-matches-link{color:#007bff;text-decoration:none;font-weight:500}.all-matches-link:hover{text-decoration:underline}.team-list-info{color:#666;margin-bottom:1rem}.team-list{list-style:none;padding:0;margin:0}.team-list li{margin-bottom:.5rem}.team-list a{display:block;padding:.8rem 1rem;color:#333;text-decoration:none;background:#f8f9fa;border-radius:4px;transition:all .2s ease}.team-list a:hover{background:#e9ecef;color:#007bff}.team-page{max-width:1200px;margin:0 auto;padding:1rem}.team-name{color:#1a3557;margin-bottom:1.5rem}.schedule-section,.roster-section{margin-bottom:2rem}.calendar-download{margin:1rem 0}.calendar-link{display:inline-block;background:#eaf2fa;color:#007bff;padding:.6em 1.2em;border-radius:6px;text-decoration:none;font-weight:600;transition:all .2s ease}.calendar-link:hover{background:#d2e6fa}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}.schedule-table,.roster-table{width:100%;border-collapse:collapse;margin:1rem 0}.schedule-table th,.roster-table th{background:#f8f9fa;font-weight:600;text-align:left}.schedule-table td,.schedule-table th,.roster-table td,.roster-table th{padding:.8rem;border-bottom:1px solid #dee2e6}.team-link{color:#007bff;text-decoration:none}.team-link:hover{text-decoration:underline}.loading{text-align:center;padding:2rem;color:#666}.date-time{display:flex;flex-direction:column;gap:.25rem}.date{font-weight:500}.time{color:#666;font-size:.9em}.time-container{display:flex;align-items:center;gap:.5rem}.calendar-icon{font-size:.9em;color:#007bff;text-decoration:none;opacity:.7;transition:all .2s ease}.calendar-icon:hover{opacity:1;transform:scale(1.1)}.groupme-link{display:inline-block;padding:.25em .75em;background:#00aff0;color:#fff;border-radius:4px;text-decoration:none;font-weight:700;font-size:.95em}.groupme-link:hover{background:#007caa}.find-sub-mobile{display:none}@media (max-width: 900px){.find-sub-mobile{display:inline-block;margin-left:.5em}}.find-sub-icon{font-size:1.2em;margin-left:.1em;color:#00aff0;text-decoration:none;vertical-align:middle;transition:color .2s}.find-sub-icon:hover{color:#007caa}@media (max-width: 800px){.teams-container{flex-direction:column;gap:2rem}.teams-column{width:100%;min-width:0}}@media (max-width: 768px){.schedule-table,.roster-table{font-size:.9em}.schedule-table td,.schedule-table th,.roster-table td,.roster-table th{padding:.6rem}}.find-sub-modal{position:fixed;z-index:9999;left:0;top:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center}.find-sub-modal-content{background:#fff;color:#222;padding:1.5em;border-radius:8px;max-width:90vw;width:350px;box-shadow:0 4px 24px #0003;text-align:center}.find-sub-modal-content textarea{font-size:1em;padding:.5em;border-radius:4px;border:1px solid #ccc;resize:none}.copy-btn,.close-btn{margin:.5em .5em 0;padding:.5em 1.2em;border:none;border-radius:4px;font-size:1em;cursor:pointer}.copy-btn{background:#00aff0;color:#fff}.copy-btn:hover{background:#007caa}.close-btn{background:#eee;color:#333}.close-btn:hover{background:#ccc}.results-section{margin-top:2rem;padding:1.5rem;background:#f8f9fa;border-radius:8px;border:1px solid #e9ecef}.match-results h3{color:#2a4d69;margin-bottom:1rem;font-size:1.5rem;border-bottom:2px solid #2a4d69;padding-bottom:.5rem}.results-table-container{overflow-x:auto}.results-table{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px #0000001a}.results-table th{background:#2a4d69;color:#fff;padding:12px;text-align:left;font-weight:600}.results-table td{padding:12px;border-bottom:1px solid #e9ecef}.results-table tr:hover{background:#f8f9fa}.results-table tr.win{background:#d4edda}.results-table tr.loss{background:#f8d7da}.result{display:inline-block;padding:4px 8px;border-radius:4px;font-weight:700;font-size:.9rem}.result.win{background:#28a745;color:#fff}.result.loss{background:#dc3545;color:#fff}.match-results-loading,.match-results-error,.match-results-empty{text-align:center;padding:2rem;color:#6c757d;font-style:italic}.match-results-error{color:#dc3545;background:#f8d7da;border:1px solid #f5c6cb;border-radius:4px}@media (max-width: 768px){.results-table th,.results-table td{padding:8px;font-size:.9rem}.results-table th:nth-child(4),.results-table td:nth-child(4),.results-table th:nth-child(5),.results-table td:nth-child(5){display:none}}main{max-width:700px;margin:32px auto 0;background:#fff;border-radius:12px;box-shadow:0 2px 16px #2a4d691a;padding:36px 28px 28px}h1{color:#2a4d69;font-size:2.1em;margin-bottom:.7em;text-align:center;letter-spacing:1px}p{text-align:center;font-size:1.08em;color:#333;margin-bottom:2em}.groupme-section{display:none;flex-direction:column;align-items:center;transition:opacity .3s;padding:18px 10px 12px;background:#f8f9fa;border:1px solid #b3c6e0;border-radius:8px;box-shadow:0 2px 4px #0000000d;gap:18px;flex-wrap:wrap;width:100%;max-width:380px;margin:0 auto 12px}.groupme-section h2{color:#1a3557;margin-bottom:1rem}.groupme-section p{margin-bottom:1.5rem;color:#666}.groupme-info{min-width:180px}.groupme-link{display:inline-block;margin-bottom:8px;font-size:1.05em;color:#fff;word-break:break-all;background:#00b2ff;padding:.8em 1.6em;border-radius:6px;font-weight:600;text-decoration:none;transition:all .2s ease;box-shadow:0 2px 6px #00b2ff33}.groupme-link:hover{background:#009ce0;transform:translateY(-1px);box-shadow:0 4px 12px #00b2ff4d}.qr-img{display:block;margin:0 auto;width:100%;height:auto;border:1px solid #b3c6e0;border-radius:6px;background:#fff;padding:2px;box-shadow:0 1px 4px #2a4d6912}.carousel-container{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;margin:2rem 0;position:relative;width:100%;max-width:440px;margin-left:auto;margin-right:auto}.carousel-nav{display:flex;justify-content:center;gap:1.5rem;margin-bottom:.7rem;width:100%}.carousel-track{width:100%;max-width:420px;min-width:0;min-height:220px;display:flex;flex-direction:column;align-items:stretch;justify-content:center;position:relative}.carousel-btn{background:#2a4d69;color:#fff;border:none;border-radius:50%;width:44px;height:44px;font-size:1.7em;cursor:pointer;transition:background .2s;display:flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none;box-shadow:0 2px 6px #2a4d6914}.carousel-btn:active,.carousel-btn:focus{outline:none;background:#007bff}.carousel-btn:hover{background:#007bff}.carousel{position:relative;width:100%;overflow:hidden;border-radius:8px;box-shadow:0 4px 12px #0000001a}.carousel-image{width:100%;height:100%;object-fit:contain;background:#000}.carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);background:#ffffffe6;border:none;border-radius:50%;width:48px;height:48px;font-size:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:2;animation:pulse 1.5s infinite;transition:all .3s ease;color:#007bff}.carousel-arrow.left{left:16px}.carousel-arrow.right{right:16px}@keyframes pulse{0%{box-shadow:0 0 #007bffb3;transform:translateY(-50%) scale(1)}50%{box-shadow:0 0 0 15px #007bff00;transform:translateY(-50%) scale(1.1)}to{box-shadow:0 0 #007bff00;transform:translateY(-50%) scale(1)}}.subs-page{max-width:1200px;margin:0 auto;padding:1rem}.groupme-container{display:grid;gap:2rem;margin-top:2rem}.sub-rules{background:#eaf2fa;padding:2rem;border-radius:8px;margin-top:1rem}.sub-rules h2{color:#1a3557;margin-bottom:1rem}.sub-rules ul{list-style-type:none;padding:0}.sub-rules li{margin-bottom:.8rem;padding-left:1.5rem;position:relative}.sub-rules li:before{content:"•";color:#007bff;position:absolute;left:0}@media (max-width: 600px){main{padding:8px 0vw 12px}h1{font-size:1.1em}.groupme-section{align-items:flex-start;gap:10px;padding:10px 2vw}.qr-img{max-width:90%;width:100%;height:auto;min-width:0}.carousel-container{max-width:99vw;padding:0 2vw}.carousel-track{max-width:99vw;min-height:160px}.carousel-btn{width:38px;height:38px;font-size:1.3em}.carousel-nav{gap:1rem;margin-bottom:.4rem}}@media (min-width: 768px){.groupme-container{grid-template-columns:1fr 1fr}.sub-rules{grid-column:1 / -1}}@media (prefers-color-scheme: dark){main{background:#181a1b;box-shadow:0 2px 16px #00000080}h1{color:#b3d1ff}p{color:#e0e0e0}.groupme-section{background:#23272a;border:1px solid #3a4a60;box-shadow:0 2px 4px #00000026}.groupme-section h2{color:#b3d1ff}.groupme-section p{color:#b0b0b0}.groupme-link{background:#007caa;color:#fff;box-shadow:0 2px 6px #00b2ff1f}.groupme-link:hover{background:#005f7a;box-shadow:0 4px 12px #00b2ff2e}.qr-img{background:#23272a;border:1px solid #3a4a60}.carousel{background:#23272a;box-shadow:0 4px 12px #00000040}.carousel-btn,.carousel-arrow{background:#23272a;color:#b3d1ff;box-shadow:0 2px 6px #0000002e}.carousel-btn:active,.carousel-btn:focus,.carousel-btn:hover,.carousel-arrow:hover{background:#1a3557;color:#fff}.carousel-image{background:#181a1b}.sub-rules{background:#23272a;color:#e0e0e0}.sub-rules h2{color:#b3d1ff}.sub-rules li{color:#e0e0e0}.sub-rules li:before{color:#00b2ff}}.green-island-page{max-width:1200px;margin:0 auto;padding:1rem}.court-info,.court-details,.court-rules{background:#f8f9fa;padding:1.5rem;border-radius:8px;margin-bottom:2rem;box-shadow:0 2px 4px #0000000d}.map-link{margin-top:1rem}.map-link a{display:inline-flex;align-items:center;gap:.5rem;color:#007bff;text-decoration:none;font-weight:500;padding:.5rem 1rem;background:#eaf2fa;border-radius:4px;transition:all .2s ease}.map-link a:hover{background:#d2e6fa}.court-details ul,.court-rules ul{list-style-type:none;padding:0}.court-details li,.court-rules li{margin-bottom:.8rem;padding-left:1.5rem;position:relative}.court-details li:before,.court-rules li:before{content:"•";color:#007bff;position:absolute;left:0}.image-section{text-align:center;margin:2rem auto}.image-container{max-width:800px;margin:0 auto}.responsive-image{width:100%;height:auto;border-radius:8px;margin-bottom:1rem}.image-caption{color:#666;line-height:1.5}@media (min-width: 768px){.green-island-page,.court-info,.court-details,.court-rules{padding:2rem}}body{background:#f8fafc;font-family:Segoe UI,Arial,sans-serif;margin:0;padding:0}h1{font-size:2rem;margin:1.2rem 0 .8rem;text-align:center;color:#007bff;letter-spacing:1px}h2{font-size:1.2rem;margin:1.5rem 0 .5rem;color:#0056b3;border-left:4px solid #007BFF;padding-left:.5rem}section{background:#fff;margin:1rem auto;padding:1rem 1.2rem;border-radius:8px;box-shadow:0 2px 8px #0000000a;max-width:600px}ul{padding-left:1.2rem;margin:.5rem 0 0}li{margin-bottom:.7rem;line-height:1.6;font-size:1.05rem;list-style:disc}strong{color:#007bff}@media (max-width: 600px){body{font-size:1rem;padding:0;background:#f4f8fb}h1{font-size:1.3rem;margin:1rem 0 .7rem;padding:0 .5rem}h2{font-size:1.05rem;padding-left:.4rem;margin:1.1rem 0 .4rem}section{padding:.7rem .5rem;margin:.7rem .2rem;box-shadow:0 1px 4px #0000000a;max-width:100vw}ul{padding-left:1rem}li{font-size:.98rem;margin-bottom:.6rem;list-style:disc}}nav.toc{background:#eaf2fa;border-radius:8px;box-shadow:0 1px 4px #0000000a;max-width:600px;margin:1.2rem auto 1.5rem;padding:1rem 1.2rem .7rem}nav.toc .toc-title{font-weight:700;color:#007bff;margin-bottom:.5rem;letter-spacing:.5px;font-size:1.1rem}nav.toc ul{list-style:none;padding-left:0;margin:0}nav.toc li{margin-bottom:.6rem;padding-left:2em;position:relative;list-style:none;font-style:italic}nav.toc a{color:#0056b3;text-decoration:none;font-weight:500;transition:color .2s}nav.toc a:hover{color:#2a4d69;text-decoration:underline}@media (prefers-color-scheme: dark){body{background:#181a1b;color:#e0e0e0}section{background:#23272a;box-shadow:0 2px 8px #0000002e}h1{color:#c9e1ff}h2{color:#c9e1ff;border-left:4px solid #2a4d69}strong{color:#6cb6ff}nav.toc{background:#23272a;box-shadow:0 1px 4px #0000002e}nav.toc .toc-title{color:#c9e1ff}nav.toc a{color:#c9e1ff}nav.toc a:hover{color:#6cb6ff}}.rules-page{max-width:1200px;margin:0 auto;padding:1rem}.rules-section{background:#f8f9fa;padding:1.5rem;border-radius:8px;margin-bottom:1.5rem;box-shadow:0 2px 4px #0000000d}.rules-section h2{color:#1a3557;margin-bottom:1rem;font-size:1.3em}.rules-section ul{list-style-type:none;padding:0;margin:0}.rules-section li{margin-bottom:.8rem;padding-left:1.5rem;position:relative;line-height:1.5}.rules-section li:before{content:"•";color:#007bff;position:absolute;left:0}@media (min-width: 768px){.rules-page,.rules-section{padding:2rem}}@media (prefers-color-scheme: dark){.rules-section{background:#2a2d2e}.rules-section h2{color:#c9e1ff}.rules-section li:before{color:#6cb6ff}}.login-page{max-width:380px;margin:56px auto 0;padding:36px 32px 32px;background:#fff;border-radius:16px;box-shadow:0 6px 32px #2a4d6926,0 1.5px 4px #2a4d6912;display:flex;flex-direction:column}.login-page h2{color:#2a4d69;text-align:center;margin-bottom:1.2em;font-size:2em;font-weight:700;letter-spacing:1px}.login-page form{width:100%;display:flex;flex-direction:column;gap:.7em;margin-bottom:1.2em}.login-page label{color:#2a4d69;font-weight:500;margin-bottom:.2em}.login-page input[type=email],.login-page input[type=password]{width:100%;margin-bottom:.5em;padding:12px 14px;border:1px solid #b3c2d1;border-radius:6px;font-size:1.08em;background:#f6fafd;color:#222;transition:border .2s}.login-page input[type=email]:focus,.login-page input[type=password]:focus{border:1.5px solid #00aff0;outline:none;background:#f0f7fa}.login-page button[type=submit]{width:100%;padding:.8em 0;background:#00aff0;color:#fff;border:none;border-radius:6px;font-size:1.12em;font-weight:600;margin-top:.5em;margin-bottom:.7em;cursor:pointer;transition:background .2s;box-shadow:0 2px 8px #2a4d6914}.login-page button[type=submit]:hover,.login-page button[type=submit]:focus{background:#007caa}.login-page .error{color:#c0392b;background:#ffeaea;border-radius:4px;padding:.5em .8em;margin-bottom:.7em;text-align:center;font-size:1em}.login-page>div{width:100%;display:flex;flex-direction:column;gap:.5em;align-items:center;margin-bottom:.7em}.login-page button[type=button]{width:100%;padding:.7em 0;background:#f6fafd;color:#2a4d69;border:1px solid #b3c2d1;border-radius:6px;font-size:1.08em;font-weight:500;margin-bottom:.2em;cursor:pointer;transition:background .2s,color .2s;display:flex;align-items:center;justify-content:center;gap:.5em;box-shadow:0 1px 4px #2a4d690f}.login-page button[type=button]:hover,.login-page button[type=button]:focus{background:#e6f7ff;color:#007caa}.login-page .apple-btn{background:#111;color:#fff;border:none}.login-page .apple-btn:hover,.login-page .apple-btn:focus{background:#222}.login-page .copy-btn,.login-page .close-btn{margin:.5em .5em 0;padding:.5em 1.2em;border:none;border-radius:4px;font-size:1em;cursor:pointer}.login-page .copy-btn{background:#00aff0;color:#fff}.login-page .copy-btn:hover{background:#007caa}.login-page .close-btn{background:#eee;color:#333}.login-page .close-btn:hover{background:#ccc}.login-page .switch-link{background:none;border:none;color:#00aff0;font-weight:500;cursor:pointer;text-decoration:underline;font-size:1em;margin-left:.3em;padding:0}.login-page .switch-link:hover{color:#007caa}@media (prefers-color-scheme: dark){.login-page{background:#181a1b;box-shadow:0 4px 24px #00000080}.login-page h2{color:#b3d1ff}.login-page label{color:#e0e0e0}.login-page input[type=email],.login-page input[type=password]{background:#23272a;color:#e0e0e0;border:1px solid #444}.login-page input[type=email]:focus,.login-page input[type=password]:focus{background:#23272a;border:1.5px solid #00aff0}.login-page button[type=submit]{background:#2a4d69;color:#fff}.login-page button[type=submit]:hover,.login-page button[type=submit]:focus{background:#1a3557}.login-page button[type=button]{background:#23272a;color:#b3d1ff;border:1px solid #444}.login-page button[type=button]:hover,.login-page button[type=button]:focus{background:#1a3557;color:#fff}.login-page .apple-btn{background:#111;color:#fff;border:none}.login-page .apple-btn:hover,.login-page .apple-btn:focus{background:#222}.login-page .copy-btn{background:#007caa;color:#fff}.login-page .copy-btn:hover{background:#005f7a}.login-page .close-btn{background:#23272a;color:#e0e0e0}.login-page .close-btn:hover{background:#333}.login-page .error{background:#3a2323;color:#ffb3b3}}.add-score-page{max-width:1200px;margin:0 auto;padding:20px;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a}@media (prefers-color-scheme: dark){.add-score-page{background:#2d3748;color:#e2e8f0}.form-section{background:#4a5568;border-color:#718096}.form-group input,.form-group select,.form-group textarea{background:#2d3748;border-color:#718096;color:#e2e8f0}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#63b3ed;box-shadow:0 0 0 3px #63b3ed1a}.form-group label{color:#e2e8f0}.form-section h2{color:#e2e8f0;border-bottom-color:#e2e8f0}.add-score-page h1{color:#e2e8f0}.user-info{background:#4a5568;padding:15px;border-radius:6px;margin-bottom:20px;border:1px solid #718096}.user-info p{color:#e2e8f0;margin:0}.error-message{background:#742a2a;color:#fed7d7;border-color:#f56565}.success-message{background:#22543d;color:#c6f6d5;border-color:#48bb78}.submit-button{background:#2b6cb0}.submit-button:hover:not(:disabled){background:#2c5282}.match-details{background:#4a5568;border-color:#718096}.match-details h3,.match-info p,.match-info strong{color:#e2e8f0}}.add-score-page h1{color:#2a4d69;text-align:center;margin-bottom:30px;font-size:2.5rem}.user-info{background:#e8f4fd;padding:15px;border-radius:6px;margin-bottom:20px;border:1px solid #bee3f8}.user-info p{color:#2a4d69;margin:0;font-weight:500}.match-details{background:#f8f9fa;padding:20px;border-radius:6px;margin-top:15px;border:1px solid #dee2e6}.match-details h3{color:#2a4d69;margin:0 0 15px;font-size:1.2rem}.match-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}.match-info p{margin:0;color:#495057;font-size:.95rem}.match-info strong{color:#2a4d69}.score-form{display:flex;flex-direction:column;gap:30px}.form-section{background:#f8f9fa;padding:25px;border-radius:8px;border:1px solid #e9ecef}.form-section h2{color:#2a4d69;margin-bottom:20px;font-size:1.5rem;border-bottom:2px solid #2a4d69;padding-bottom:10px}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-weight:600;color:#495057;font-size:.9rem}.form-group input,.form-group select,.form-group textarea{padding:12px;border:2px solid #dee2e6;border-radius:6px;font-size:1rem;transition:border-color .2s ease;min-height:48px}.form-group select{cursor:pointer}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#2a4d69;box-shadow:0 0 0 3px #2a4d691a}.form-group input[type=text]{margin-bottom:8px}.form-group input[type=text]:last-child{margin-bottom:0}.score-row{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:20px;max-width:100%;overflow:hidden}@media (max-width: 768px){.score-row{grid-template-columns:1fr;gap:15px}}.score-group{display:flex;flex-direction:column;gap:8px}.score-group label{font-weight:600;color:#495057;font-size:.9rem;text-align:center}.score-inputs{display:flex;align-items:center;gap:10px}.score-inputs input{flex:1;text-align:center;font-weight:600;font-size:1.1rem}.score-inputs span{font-weight:600;color:#6c757d;font-size:1.2rem}.error-message{background:#f8d7da;color:#721c24;padding:15px;border-radius:6px;border:1px solid #f5c6cb;margin:20px 0;text-align:center;font-weight:600}.success-message{background:#d4edda;color:#155724;padding:15px;border-radius:6px;border:1px solid #c3e6cb;margin:20px 0;text-align:center;font-weight:600}.submit-button{background:#2a4d69;color:#fff;border:none;padding:15px 30px;border-radius:6px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:background-color .2s ease;margin-top:20px;align-self:center;min-width:200px}.submit-button:hover:not(:disabled){background:#1e3a52}.submit-button:disabled{background:#6c757d;cursor:not-allowed}@media (max-width: 768px){.add-score-page{padding:15px}.add-score-page h1{font-size:2rem}.form-row{grid-template-columns:1fr}.score-inputs{flex-direction:column;gap:5px}.score-inputs span{display:none}}.submit-button:disabled{position:relative}.submit-button:disabled:after{content:"";position:absolute;width:20px;height:20px;top:50%;left:50%;margin-left:-10px;margin-top:-10px;border:2px solid #ffffff;border-radius:50%;border-top-color:transparent;animation:spin 1s ease-in-out infinite}@keyframes spin{to{transform:rotate(360deg)}}.form-group input:invalid,.form-group select:invalid{border-color:#dc3545}.form-group input:valid,.form-group select:valid{border-color:#28a745}.form-group select{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");background-position:right 12px center;background-repeat:no-repeat;background-size:16px;padding-right:40px;-webkit-appearance:none;-moz-appearance:none;appearance:none}.form-group textarea{resize:vertical;min-height:80px;font-family:inherit}.form-section:not(:last-child){margin-bottom:30px}body{font-family:Arial,sans-serif;margin:0;padding:0;background:#fdfdfd;color:#222;line-height:1.6}footer{padding:1rem;background:#eee;text-align:center;color:#222}main{max-width:900px;margin:auto;padding:1rem}details{margin-bottom:1rem;border:1px solid #ccc;background:#fafafa;padding:.5rem}summary{font-weight:700;font-size:1.1em;cursor:pointer}table,.schedule-table{width:100%;border-collapse:collapse;margin-top:.5rem;background:#fff;color:#222}th,td,.schedule-table th,.schedule-table td{border:1px solid #ccc;padding:.5rem;text-align:left;background:#fff;color:#222}.nav-placeholder{width:100%;height:50px}.team-list a{display:block;text-align:center;padding:.75rem;margin:.5rem 0;background-color:#007bff;color:#fff;text-decoration:none;border-radius:5px;transition:background-color .3s}li,.team-list ul{list-style:none}.team-link{display:inline-block;padding:.5rem 1rem;background-color:#007bff;color:#fff;text-decoration:none;border-radius:5px;transition:background-color .3s}.team-link:hover{background-color:#0056b3}.teams-container{display:flex;flex-wrap:wrap;gap:20px;padding:20px}.teams-column{flex:1 1 300px;min-width:0}.team-list{padding:0}.team-list li{margin:10px 0}.team-list a{display:inline-block;padding:10px 15px;background-color:#007bff;color:#fff;text-decoration:none;border-radius:5px;transition:background-color .3s}.team-list a:hover{background-color:#0056b3}html,body{width:100%;max-width:100vw;overflow-x:hidden;margin:0;padding:0}ul{list-style:none;padding-left:0}.disc{list-style-type:disc}.header{background-color:#007bff;color:#fff;padding:1rem 0;text-align:center;width:100%;box-sizing:border-box;position:relative;z-index:1000;border-bottom:2px solid #0056b3}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch;margin-top:1rem;margin-bottom:1rem}.highlight{background-color:#ffe066;color:#23272a;font-weight:700;transition:background .2s,color .2s;border:2px solid #fff176;box-shadow:0 0 0 2px #bfa80044}.responsive-image{max-width:100%;height:auto;border-radius:5px}.announcement-bar{background:linear-gradient(90deg,#eaf2fa,#d2e6fa);color:#1a3557;font-size:1.13em;padding:.7em 1.2em;text-align:center;border-bottom:2px solid #007BFF;font-weight:500;letter-spacing:.01em;box-shadow:0 2px 8px #2a4d690a;margin-bottom:1.2em}.announcement-bar strong{color:#007bff}@media (max-width: 800px){.teams-container{flex-direction:column;gap:0}.teams-column{width:100%;min-width:0}}@media (max-width: 768px){table{font-size:.9rem}th,td{padding:.4rem}.team-list{padding:0}}@media (max-width: 600px){.announcement-bar{font-size:1em;padding:.7em .5em;margin-bottom:.7em;border-radius:0}}@media (prefers-color-scheme: dark){body{background:#181a1b;color:#e0e0e0}h1,h2,h3,h4,h5,h6{color:#c9e1ff}.schedule-table,table{background:#23272a;color:#e0e0e0}.schedule-table th,.schedule-table td,th,td{border-color:#444;background:#23272a;color:#e0e0e0}.date-row{background-color:#222e3c;color:#c9e1ff}.court-header,.time-header{background:#1a1f23;color:#c9e1ff;border-right:2px solid #2a4d69}.match-cell{background:#23272a}.team-num{background:#2a4d69;color:#fff}footer{background:#23272a;color:#c9e1ff}.highlight{background-color:#ff0;color:#23272a;border:2px solid yellow;box-shadow:0 0 0 2px #bfa80044}details{background:#23272a;border-color:#444;color:#e0e0e0}summary{color:#c9e1ff}.announcement-bar{background:linear-gradient(90deg,#23272a,#2a4d69);color:#c9e1ff;border-bottom:2px solid #2a4d69}.announcement-bar strong{color:#7bb6ff}}
