body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.hamburger-btn{background:#0000;border:none;color:#fff;cursor:pointer;display:none;font-size:32px}.app-shell{min-height:100vh}.app-shell,.header-wrapper{display:flex;flex-direction:column}.header-wrapper{width:100%}.top-header{background-color:#1a237e;box-shadow:0 4px 12px #00000029;box-sizing:border-box;color:#fff;flex-wrap:nowrap;gap:10px;justify-content:flex-start;padding:20px 24px;width:100%}.site-branding,.top-header{align-items:center;display:flex}.site-branding{flex:1 1;gap:12px;min-width:0}.site-logo{flex-shrink:0;height:80px;object-fit:contain;width:80px}.site-title{display:inline-block;font-size:2rem;font-weight:800;letter-spacing:1px;line-height:1.15;margin:0;overflow:hidden;text-overflow:ellipsis;text-shadow:0 0 8px #8bc34a8c;text-transform:uppercase;white-space:nowrap}.logo-placeholder{align-items:center;background:#ffffff14;border:2px dashed #ffffff59;border-radius:16px;color:#fffffff2;display:flex;font-size:.95rem;justify-content:center;margin-left:0;min-height:64px;min-width:64px;padding:12px;text-align:center}.layout-row{display:flex;width:100%}.sidebar{background-color:#1a237e;box-shadow:4px 0 18px #0000002e;min-width:260px;padding:12px 16px 16px 20px;width:260px}.main-nav{display:flex;flex-direction:column;gap:6px}.app-content{background:#f3f5ff;flex:1 1;min-width:0;overflow:hidden;padding:24px}.main-nav a,.user-menu-btn{align-items:center;background:#8bc34a1f;border:1px solid #ffffff1f;border-radius:14px;color:#fff;display:flex;font-size:1rem;font-weight:600;padding:12px 14px;text-decoration:none;transition:background-color .25s ease,color .25s ease,transform .2s ease;width:100%}.main-nav a:hover,.user-menu-btn:hover{background:#8bc34a40;color:#fff;transform:translateX(2px)}.user-menu-container{position:relative;width:100%}.user-menu-btn{background:none;background:#ffffff0a;border:none;border-radius:14px;color:#e8eaf6;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 14px;text-align:left;transition:background-color .25s ease,color .25s ease;width:100%}.user-menu-btn:hover{background:#8bc34a26;color:#fff}.user-dropdown{background-color:#0d1856;border:1px solid #8bc34a;border-radius:14px;box-shadow:0 6px 18px #00000038;left:0;position:absolute;top:calc(100% + 8px);width:100%;z-index:1001}.user-dropdown button{background:none;border:none;color:#e8eaf6;cursor:pointer;display:block;font-size:.98rem;padding:14px 16px;text-align:left;transition:background-color .2s ease;width:100%}.user-dropdown button:hover{background-color:#8bc34a1f;color:#fff}.logout-btn{background:none}.dropdown-btn,.dropdown-content,.dropdown-content a,.dropdown-nav,header nav a:after{display:none}@media (max-width:960px){.app-shell{flex-direction:column}.sidebar{float:none;padding-left:0;width:100%}.app-content{margin-left:0;padding:18px}}@media (max-width:640px){.site-logo{height:40px;width:40px}.logo-placeholder{display:none}.hamburger-btn{display:block}.top-header{align-items:center;flex-direction:row;gap:12px;padding:18px 20px}.site-title{font-size:1.1rem;line-height:1.2;overflow:visible;text-overflow:clip;white-space:normal}.logo-placeholder{margin-left:auto;min-width:50px;width:auto}.sidebar{box-sizing:border-box;display:none;min-width:100%;padding:12px;width:100%}.sidebar.open{display:block}.app-content{margin-left:0}.layout-row{display:block}.app-content{width:100%}.main-nav{gap:8px}.main-nav a,.user-menu-btn{font-size:.95rem;padding:12px 14px}}.main-nav>*{display:inline-flex;vertical-align:middle}.tournament-item{background:#f5f8ff;border:1.5px solid #b3c6e6;display:block!important;margin-bottom:16px;padding:10px 8px}.tournament-menu-btn{background:none;font-size:1.2rem;margin-left:8px;margin-right:0;padding:0}.home-page{background-color:#f4f7f9;display:flex;flex-direction:column;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;margin:0;min-height:100vh;padding:0}.section-title{color:#1a237e;font-size:2.2rem;font-weight:700;margin-bottom:40px;padding-top:20px;text-align:center}.hero-section{background:#fff;height:auto}.hero-content h1{font-size:3.5rem;letter-spacing:2px;margin-bottom:10px;text-shadow:2px 2px 4px #000000b3}.hero-content .subtitle{font-size:1.3rem;font-weight:300;margin-bottom:30px}.cta-button{border-radius:5px;display:inline-block;font-weight:600;margin:0 10px;padding:12px 30px;text-decoration:none;transition:background-color .3s ease,transform .2s ease}.cta-button.primary{background-color:#8bc34a;border:2px solid #8bc34a;color:#1a237e}.cta-button.primary:hover{background-color:#7cb342;transform:translateY(-3px)}.cta-button.secondary{background-color:initial;border:2px solid #fff;color:#fff}.cta-button.secondary:hover{background-color:#ffffff1a;transform:translateY(-3px)}.tournament-spotlight{padding:40px 20px}.card-container{display:flex;flex-wrap:wrap;gap:30px;justify-content:center}.tournament-card{background-color:#fff;border-radius:10px;border-top:5px solid #1a237e;box-shadow:0 6px 20px #0000001a;max-width:300px;padding:30px;transition:transform .3s ease,box-shadow .3s ease;width:100%}.tournament-card:hover{box-shadow:0 10px 30px #00000026;transform:translateY(-8px)}.tournament-card h3{border-bottom:2px dashed #e8eaf6;color:#1a237e;font-size:1.5rem;margin-bottom:15px;margin-top:0;padding-bottom:10px}.tournament-card p{color:#555;line-height:1.6}.card-link{border-bottom:1px solid #0000;color:#8bc34a;display:block;font-weight:600;margin-top:20px;text-decoration:none}.card-link:hover{border-bottom:1px solid #8bc34a}.academy-stats{background-color:#e8eaf6;padding:60px 20px;text-align:center}.stats-grid{display:flex;gap:50px;justify-content:center;margin-top:30px}.stat-item{align-items:center;display:flex;flex-direction:column}.stat-number{color:#1a237e;font-size:3rem;font-weight:800;line-height:1;margin-bottom:5px}.stat-label{color:#555;font-size:1rem;letter-spacing:1px;text-transform:uppercase}@media (max-width:768px){.hero-content h1{font-size:2.5rem}.cta-button{margin:10px 5px}.stats-grid{flex-direction:column;gap:30px}}.tournament-list{align-items:flex-start;background:#fffffff5;border-radius:8px;box-shadow:0 6px 18px #00000014;display:flex;flex-direction:column;gap:1px;justify-content:flex-start;margin-left:1%;margin-top:96px;max-height:58vh;max-width:430px;overflow-y:auto;padding:12px;position:relative;width:90%;z-index:5}.tournament-list h2{border-bottom:2px solid #e8eaf6;color:#1a237e;font-size:1.5rem;font-weight:800;margin:0 0 4px;padding:0 0 4px}.tournament-item{background:#fff;border:2px solid #d1d9e6;border-radius:18px;box-shadow:0 6px 24px #1e2a5a21;box-sizing:border-box;font-size:1.13rem;margin-bottom:36px;max-width:100%;overflow:visible;padding:32px 28px 24px;position:relative;text-align:left;transition:box-shadow .2s,border-color .2s;width:100%}.tournament-item:hover{border-color:#a3b1d1;box-shadow:0 4px 16px #1e2a5a29}@media (max-width:768px){.tournament-item{width:95%}.tournament-list{margin-top:-50px}}.tournament-button{background:#e8eaf6;border:2px solid #1a237e;border-radius:6px;color:#1a237e;cursor:pointer;display:inline-block;font-size:1.1rem;font-weight:700;padding:12px 18px;transition:transform .12s ease,box-shadow .12s ease;width:100%}.tournament-button:hover{box-shadow:0 8px 20px #1a237e1f;transform:translateY(-3px)}.tournament-button:focus{box-shadow:0 0 0 3px #8bc34a2e;outline:none}.tournament-row{align-items:flex-start;display:flex;flex-direction:column;gap:2px;width:100%}.tournament-link{color:#1a237e;display:block;font-size:.9rem;font-weight:700;line-height:1;margin:0;padding:0}.attendance-controls{align-items:stretch;display:flex;flex-wrap:nowrap;gap:20px;margin-top:0;min-height:60px}.attendance-btn{align-items:center;background:#f7f9ff;border:1px solid #cfd8ff;border-radius:6px;color:#1a237e;cursor:pointer;display:inline-flex;flex-shrink:0;font-size:.8rem;font-weight:700;gap:6px;height:24px;justify-content:center;line-height:1;max-width:60px;min-width:60px;padding:2px 6px}.attendance-btn.active{background:#1a237e;border-color:#16204f;color:#fff}.attendance-btn.out{margin-top:-8px}.attendance-btn .emoji{font-size:1.05rem;line-height:1}.attendance-btn .label{font-size:.9rem}.attendance-column{align-items:center;display:flex;flex-direction:column;gap:4px;height:100%;justify-content:flex-start;width:auto}.attendance-names{font-size:.8rem;line-height:1.3;max-width:180px;overflow-wrap:break-word;padding-left:4px;white-space:normal;word-break:break-word}.attendance-names.in{color:#2e7d32}.attendance-names.out{color:#c62828}.user-list{align-items:flex-start;display:flex;flex-direction:column;gap:6px;margin-top:8px}.user-name{background:#fff;border-radius:6px;box-shadow:0 4px 12px #0000000f;color:#333;font-weight:600;max-width:640px;padding:8px 12px;width:90%}.tournament-button,.user-name{text-align:left}.home-layout{align-items:flex-start;display:flex;flex:1 0 auto;gap:8px;padding:8px 3%}.main-column{flex:1 1}.right-column{background:#fff;border-radius:6px;box-shadow:0 6px 12px #0000000f;height:-webkit-fit-content;height:fit-content;margin-left:0;margin-right:0;max-width:36%;padding:8px;width:260px}.excel-table-container{background:#f7f8fa;border:1.5px solid #dfe6ff;border-radius:12px;box-shadow:0 2px 8px #3949ab12;margin:0 auto 24px;max-width:420px;padding:18px 18px 12px;text-align:center}.excel-table-container h3{color:#1a237e;margin:0 0 12px}.table-scroll{margin:0 auto;max-width:400px;overflow-x:auto}.excel-table{background:#fff;border:1px solid #dfe6ff;border-collapse:collapse;border-radius:8px;box-shadow:0 1px 4px #3949ab0d;font-size:.78rem;margin:0 auto;table-layout:fixed;width:100%}.excel-table thead th{background:linear-gradient(180deg,#f1f3ff,#e8eaf6);border-bottom:2px solid #dfe6ff;color:#1a237e;font-size:.78rem;font-weight:700;text-align:left}.excel-table tbody td,.excel-table thead th{border-right:1px solid #dfe6ff;padding:4px 6px}.excel-table tbody td{border-bottom:1px solid #f0f2fb;color:#333;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.excel-table td:first-child,.excel-table th:first-child{border-right:1px solid #dfe6ff;text-align:center;width:15%}.excel-table td:nth-child(2),.excel-table th:nth-child(2){border-right:1px solid #dfe6ff;text-align:left;width:60%}.excel-table td:nth-child(3),.excel-table th:nth-child(3){text-align:center;width:25%}.excel-table tbody tr:nth-child(2n){background:#fbfcff}.refresh-btn{background:#1a237e;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.78rem;font-weight:600;padding:4px 6px}.refresh-btn:hover{background:#16204f}.last-updated{color:#666;font-size:.8rem}@media (max-width:1024px){.right-column{width:300px}}@media (max-width:768px){.home-layout{flex-direction:column;padding:0 4%}.right-column{margin-top:16px;max-width:100%;width:100%}}.auth-dialog-overlay{align-items:center;background:#0006;display:flex;inset:0;justify-content:center;position:fixed;z-index:9999}.auth-dialog-box{background:#fff;border-radius:8px;box-shadow:0 12px 30px #0003;max-width:320px;padding:18px;text-align:center;width:90%}.auth-dialog-box h4{margin:0 0 8px}.auth-dialog-box p{color:#444;font-size:.95rem;margin:0 0 14px}.auth-dialog-actions{display:flex;gap:10px;justify-content:center}.auth-btn{border:none;border-radius:6px;cursor:pointer;font-weight:700;padding:8px 10px}.auth-btn.login{background:#1a237e;color:#fff}.auth-btn.register{background:#8bc34a;color:#123}.auth-btn.cancel{background:#f0f0f0;color:#333}.tournament-menu-btn{background:#0000;border:none;border-radius:4px;color:#1a237e;cursor:pointer;font-size:1.5rem;font-weight:700;line-height:1;padding:4px 8px;transition:background-color .2s ease}.tournament-menu-btn:hover{background:#e8eaf6}.tournament-menu-dropdown{background:#fff;border:1px solid #e8eaf6;border-radius:6px;box-shadow:0 4px 12px #00000026;margin-top:4px;max-height:none;min-width:200px;overflow:visible;position:absolute;right:0;top:100%;z-index:1000}.tournament-menu-dropdown button{background:#fff;border:none;border-bottom:1px solid #f5f5f5;color:#333;cursor:pointer;display:block;font-size:.9rem;padding:12px 16px;text-align:left;transition:background-color .2s ease;white-space:nowrap;width:100%}.tournament-menu-dropdown button:last-child{border-bottom:none}.tournament-menu-dropdown button:hover{background:#f7f9ff;color:#1a237e}@media (max-width:768px){.hero-section,.home-layout,.main-column{overflow-x:auto!important}}.schedule-dialog-overlay{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;overflow-y:auto;padding:20px;position:fixed;z-index:9999}.schedule-dialog-box{background:#fff;border-radius:12px;box-shadow:0 12px 40px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:900px;width:90%}.schedule-dialog-header{align-items:center;border-bottom:2px solid #e8eaf6;display:flex;justify-content:space-between;padding:20px 24px}.schedule-dialog-header h3{color:#1a237e;font-size:1.5rem;margin:0}.schedule-dialog-content{flex:1 1;overflow-y:auto;padding:24px}.match-count{color:#666;font-size:.9rem;margin:0 0 20px}.schedule-table-container{overflow-x:auto}.schedule-table{border-collapse:collapse;font-size:.95rem;width:100%}.schedule-table thead{background:linear-gradient(180deg,#f1f3ff,#e8eaf6)}.schedule-table th{border-bottom:2px solid #dfe6ff;color:#1a237e;font-weight:700;padding:12px 16px;text-align:left}.schedule-table tbody tr{border-bottom:1px solid #f0f2fb;transition:background-color .2s ease}.schedule-table tbody tr:hover{background-color:#f7f9ff}.schedule-table td{color:#333;padding:12px 16px}.player-name{font-weight:600}.court-info,.time-info{color:#666}.action-cell,.score-cell,.winner-cell{text-align:center}.ranking-input,.score-input,.winner-select{border:1px solid #ccc;border-radius:4px;font-size:.9rem;max-width:150px;padding:6px 8px;width:100%}.ranking-input{max-width:80px;text-align:center}.ranking-input:focus,.score-input:focus,.winner-select:focus{border-color:#1a237e;box-shadow:0 0 0 2px #1a237e1a;outline:none}.ranking-cell{color:#1a237e;font-weight:600;text-align:center}.add-result-btn{background:#8bc34a;border:1px solid #8bc34a;border-radius:4px;color:#1a237e;cursor:pointer;font-size:.85rem;font-weight:600;padding:6px 12px;transition:all .2s ease}.add-result-btn:hover:not(:disabled){background:#7cb342}.add-result-btn:disabled{cursor:not-allowed;opacity:.5}.action-buttons{display:flex;gap:6px;justify-content:center}.cancel-result-btn,.save-result-btn{align-items:center;border:none;border-radius:4px;cursor:pointer;display:flex;font-size:1rem;font-weight:700;height:30px;justify-content:center;transition:all .2s ease;width:30px}.save-result-btn{background:#4caf50;color:#fff}.save-result-btn:hover{background:#388e3c}.cancel-result-btn{background:#f44336;color:#fff}.cancel-result-btn:hover{background:#d32f2f}.status-cell{text-align:center}.status-completed,.status-in-progress,.status-scheduled{border-radius:12px;display:inline-block;font-size:.85rem;font-weight:600;padding:4px 12px}.status-scheduled{background-color:#e3f2fd;color:#1976d2}.status-in-progress{background-color:#fff3e0;color:#f57c00}.status-completed{background-color:#e8f5e9;color:#388e3c}.schedule-dialog-actions{border-top:2px solid #e8eaf6;display:flex;gap:12px;justify-content:flex-end;padding:20px 24px}.close-dialog-btn{background:#1a237e;border:2px solid #1a237e;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;padding:10px 24px;transition:all .2s ease}.close-dialog-btn:hover{background:#16204f}@media (max-width:768px){.schedule-dialog-box{max-height:95vh;width:95%}.schedule-table{font-size:.85rem}.schedule-table td,.schedule-table th{padding:8px 10px}}.search-page-container{height:100vh;overflow:hidden}.search-page-container .site-footer{bottom:0;left:0;position:absolute;width:100%;z-index:100}.search-tournament-list{margin:40px auto 0}.search-tournament-list.has-items{max-height:none;min-height:200px}.draw-selector-panel{background:#fafafa;border:1px solid #e0e0e0;border-radius:10px;margin-left:16px;padding:12px 14px}.draw-selector-panel,.draw-selector-row{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.draw-selector-row span{color:#333;font-weight:600}.draw-selector-row select{background:#fff;border:1px solid #ccc;border-radius:8px;color:#1a237e;min-width:230px;padding:10px 12px}.draw-selector-message{color:#555;margin-top:10px}.search-header-row{align-items:center;display:flex;flex-direction:row;flex-wrap:wrap;gap:12px;justify-content:center;margin-bottom:0;width:100%}.filter-panel-inline{align-items:flex-end;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000000f;display:flex;flex-direction:row;gap:24px;padding:12px 18px}.search-page-container{display:flex;flex-direction:column;min-height:100vh;position:relative}.search-tournament-list{flex:1 1 auto;margin-left:auto;margin-right:auto;margin-top:40px;max-height:calc(100vh - 220px);max-width:500px;min-height:200px;overflow-y:auto;width:100%}.page-title{color:#1a237e;font-size:2.1rem;font-weight:700;line-height:1.1;margin-bottom:0;margin-right:18px;text-align:center}.filter-panel{background-color:#fff;border-radius:10px;box-shadow:0 4px 15px #0000001a;margin-bottom:40px;padding:24px 20px 20px;position:-webkit-sticky;position:sticky;top:40px}.filter-panel h3{color:#1a237e;font-size:1.2rem;font-weight:700;letter-spacing:1px;margin-bottom:18px;margin-top:0}.filter-group{display:flex;flex-direction:column;gap:6px;margin-bottom:18px}.filter-group label{color:#555;font-weight:600}.filter-group select{background-color:#f9f9f9;border:1px solid #ccc;border-radius:5px;cursor:pointer;font-size:1rem;padding:10px}.search-bar{display:flex;margin-bottom:20px}.search-bar input[type=text]{border:2px solid #e8eaf6;border-radius:5px 0 0 5px;flex-grow:1;font-size:1rem;outline:none;padding:12px 15px}.search-button{background-color:#1a237e;border:none;border-radius:0 5px 5px 0;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 25px;transition:background-color .3s ease}.search-button:hover{background-color:#0d1358}.filter-options{align-items:center;display:flex;flex-wrap:wrap;gap:20px}.filter-options label{color:#555;font-weight:600}.filter-options select{background-color:#f9f9f9;border:1px solid #ccc;border-radius:5px;cursor:pointer;padding:10px}.tournament-list h2{border-bottom:2px solid #8bc34a;color:#333;font-size:1.8rem;margin-bottom:20px;padding-bottom:10px}.tournament-item{align-items:center;background-color:#fff;border:1px solid #e8eaf6;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:15px;padding:20px 25px;transition:box-shadow .3s ease}.tournament-item:hover{box-shadow:0 6px 20px #0000001a}.item-details h3{color:#1a237e;font-size:1.3rem;margin:0 0 5px}.fee-info{color:#8bc34a;font-weight:600}.item-actions{align-items:center;display:flex;gap:20px}.status-tag{border-radius:20px;font-size:.85rem;font-weight:600;padding:5px 12px}.status-tag.open{background-color:#e8f5e9;color:#388e3c}.status-tag.closed{background-color:#ffebee;color:#d32f2f}.details-button{background-color:#8bc34a;border-radius:5px;color:#1a237e;font-weight:600;padding:8px 15px;text-decoration:none;transition:background-color .3s ease}.details-button:hover{background-color:#7cb342}@media (max-width:768px){.filter-controls,.tournament-item{flex-direction:column}.tournament-item{align-items:flex-start}.item-details{margin-bottom:15px}.item-actions{width:100%}.filter-options,.item-actions{justify-content:space-between}}.register-container{align-items:center;background-color:#f4f7f9;display:flex;justify-content:center;min-height:80vh;padding:50px 20px}.register-card{background-color:#fff;border-radius:10px;box-shadow:0 8px 30px #0000001a;max-width:600px;padding:40px;width:100%}.register-card h1{color:#1a237e;font-size:2rem;margin-bottom:30px;text-align:center}.form-row{display:flex;gap:20px;margin-bottom:15px}.form-group{flex:1 1;margin-bottom:15px}.form-group input[type=date],.form-group input[type=password],.form-group input[type=tel],.form-group input[type=text],.form-group select{border:1px solid #ccc;border-radius:5px;box-sizing:border-box;font-size:1rem;padding:12px;width:100%}.register-button{background-color:#8bc34a;border:none;border-radius:5px;color:#1a237e;cursor:pointer;font-size:1.1rem;font-weight:700;margin-top:20px;padding:15px;transition:background-color .3s ease;width:100%}.register-button:hover{background-color:#7cb342}@media (max-width:600px){.form-row{flex-direction:column;gap:0}.register-card{padding:25px}}.login-container{align-items:center;background-color:#f4f7f9;display:flex;justify-content:center;min-height:80vh;padding:50px 20px}.login-card{background-color:#fff;border-radius:10px;box-shadow:0 8px 30px #0000001a;max-width:400px;padding:40px;width:100%}.login-card h1{color:#1a237e;font-size:2rem;margin-bottom:30px;text-align:center}.form-group{margin-bottom:20px}.form-group label{color:#333;display:block;font-weight:600;margin-bottom:8px}.form-group input[type=password],.form-group input[type=text]{border:1px solid #ccc;border-radius:5px;box-sizing:border-box;font-size:1rem;padding:12px;width:100%}.login-button{background-color:#8bc34a;border:none;border-radius:5px;color:#1a237e;cursor:pointer;font-size:1.1rem;font-weight:700;margin-top:10px;padding:15px;transition:background-color .3s ease;width:100%}.login-button:hover{background-color:#7cb342}.register-redirect{font-size:.95rem;margin-top:20px;text-align:center}.register-redirect a{color:#1a237e;font-weight:600;text-decoration:none}.register-redirect a:hover{text-decoration:underline}.status-message{border-radius:5px;font-weight:600;margin-bottom:20px;padding:10px;text-align:center}.status-message.success{background-color:#e8f5e9;border:1px solid #a5d6a7;color:#388e3c}.status-message.error{background-color:#ffebee;border:1px solid #ef9a9a;color:#d32f2f}.site-footer{background-color:#1a237e;border-top:5px solid #8bc34a;color:#e8eaf6;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;margin-top:1px;padding:20px 60px 10px}.footer-content{border-bottom:1px solid #ffffff1a;display:flex;flex-wrap:wrap;gap:30px;justify-content:space-around;padding-bottom:30px}.site-footer h3,.site-footer h4{color:#fff;font-weight:600;letter-spacing:1px;margin-bottom:15px;text-transform:uppercase}.site-footer p{font-size:.95rem;line-height:1.6;margin-bottom:10px}.site-footer a{color:#8bc34a;text-decoration:none;transition:color .3s ease}.site-footer a:hover{color:#fff;text-decoration:underline}.footer-links a{border-radius:6px;display:inline-block;padding:6px 10px}.footer-links a:focus{outline:3px solid #8bc34a2e}.footer-links ul{list-style:none;margin:0;padding:0}.footer-links li{margin-bottom:8px}.footer-bottom{align-items:center;display:flex;font-size:.85rem;justify-content:space-between;padding-top:20px}.social-links a{color:#e8eaf6;font-size:1.2rem;margin-left:15px;opacity:.7;transition:color .3s ease,opacity .3s ease}.social-links a:hover{color:#8bc34a;opacity:1}@media (max-width:768px){.site-footer{padding:30px 20px 15px;text-align:center}.footer-content{align-items:center;flex-direction:column}.footer-brand,.footer-contact,.footer-links{margin-bottom:20px;width:100%}.footer-links ul{display:flex;flex-wrap:wrap;gap:15px;justify-content:center}.footer-links a{text-decoration:underline}.footer-bottom{flex-direction:column-reverse;gap:10px;text-align:center}.social-links{margin-bottom:10px}.social-links a{margin:0 8px}}.admin-reports-container{background:#fff;border-radius:8px;box-shadow:0 2px 8px #00000014;margin:40px auto;max-width:950px;padding:32px 24px}.report-table-wrapper{overflow-x:auto;width:100%}.admin-reports-list{list-style:none;padding:0}.admin-reports-list li{background:#f9f9f9;border:1px solid #e0e0e0;border-radius:6px;margin-bottom:32px;padding:18px 16px}.report-desc{color:#555;margin:8px 0 12px}.view-report-btn{background:#1976d2;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:7px 18px;transition:background .2s}.view-report-btn:hover{background:#125ea2}.report-table{border-collapse:collapse;margin-top:8px;width:100%}.report-table td,.report-table th{border:1px solid #e0e0e0;padding:8px 10px;text-align:left}.report-table th{background:#f1f5fb;font-weight:600}.report-table tr:nth-child(2n){background:#f9f9f9}@media (max-width:640px){.admin-reports-container{margin:16px;max-width:100%;padding:16px}.report-desc{font-size:.95rem}.view-report-btn{font-size:.95rem;padding:8px 12px}.report-table td,.report-table th{font-size:.95rem;padding:6px 8px}.report-table-wrapper{-webkit-overflow-scrolling:touch}}.profile-tabs button{border:1.5px solid #b3c6e6;border-radius:8px;font-size:1rem;padding:6px 18px}.profile-tabs button.active{background:#1a237e;border-color:#1a237e;color:#fff}.profile-tab-content{min-height:220px;padding:12px 0 0}.user-matches-table{border-radius:8px;box-shadow:0 1px 4px #3949ab0d;font-size:.92rem}.user-matches-table td,.user-matches-table th{padding:8px 10px}.my-profile-page{background:#fff;border-radius:14px;box-shadow:0 4px 18px #1e2a5a1f;margin:40px auto;max-width:760px;padding:36px 32px 28px}.profile-tabs button{background:#f5f8ff;border:2px solid #b3c6e6;border-radius:10px;color:#1a237e;cursor:pointer;font-size:1.18rem;font-weight:600;padding:10px 28px;transition:background .18s,color .18s,border-color .18s}.profile-tab-content{min-height:320px;padding:18px 0 0}.user-matches-table{border-radius:10px;box-shadow:0 2px 8px #3949ab14;font-size:1.05rem;width:100%}.user-matches-table td,.user-matches-table th{padding:12px 16px}@media (max-width:640px){.my-profile-page{margin:12px;max-width:100%;padding:16px}.profile-tabs button{font-size:.95rem;padding:8px 14px}.profile-tab-content{min-height:auto;padding:12px 0 0}.user-matches-table{display:block;overflow-x:auto;white-space:nowrap;width:100%}.user-matches-table td,.user-matches-table th{font-size:.95rem;padding:8px 10px}}.match-row-flex{align-items:center;background:#f9fbe7;border-radius:8px;box-shadow:0 2px 8px #3949ab12;display:flex;gap:14px;margin-bottom:12px;padding:8px 10px;.vs-label{align-items:center;color:#fb8c00;display:flex;font-size:1.1rem;font-weight:500;height:100%;margin:0 6px}}.match-label{color:#1976d2;font-weight:600;min-width:70px}.player-dropdown{min-width:120px}.court-input,.player-dropdown,.time-slot-input{border:1px solid #bdbdbd;border-radius:6px;font-size:1rem;padding:4px 8px}.court-input,.time-slot-input{min-width:90px}.vs-label{color:#fb8c00;font-size:1.1rem;font-weight:500;margin:0 6px}.draw-dialog-overlay{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;overflow-y:auto;padding:20px;position:fixed;z-index:99999}.draw-dialog-box{background:#fff;border-radius:12px;box-shadow:0 12px 40px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:800px;width:90%}.draw-dialog-header{align-items:center;border-bottom:2px solid #e8eaf6;display:flex;justify-content:space-between;padding:20px 24px}.draw-dialog-header h3{color:#1a237e;font-size:1.5rem;margin:0}.close-btn{background:#0000;border:none;color:#666;cursor:pointer;font-size:2rem;height:32px;line-height:1;padding:0;width:32px}.close-btn:hover{color:#1a237e}.draw-dialog-content{flex:1 1;overflow-y:auto;padding:24px}.tournament-info{color:#1a237e;font-size:1.1rem;margin:0 0 8px}.player-count{color:#666;font-size:.9rem;margin:0 0 20px}.matches-container{margin-bottom:20px}.no-matches{color:#999;font-style:italic;padding:40px 20px;text-align:center}.match-row{background:#f7f9ff;border:2px solid #e8eaf6;border-radius:8px;margin-bottom:16px;padding:16px}.match-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.match-number{color:#1a237e;font-size:1rem;font-weight:700}.remove-match-btn{align-items:center;background:#ff5252;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.2rem;height:24px;justify-content:center;line-height:1;width:24px}.remove-match-btn:hover{background:#d32f2f}.match-fields{grid-gap:12px;align-items:start;display:grid;gap:12px;grid-template-columns:1fr auto 1fr}.vs-label{color:#1a237e;font-weight:700;padding-top:28px;text-align:center}.field-group{display:flex;flex-direction:column;gap:4px}.field-group label{color:#555;font-size:.85rem;font-weight:600}.field-group input,.field-group select{background:#fff;border:1px solid #ccc;border-radius:6px;font-size:.95rem;padding:8px 12px}.field-group input:focus,.field-group select:focus{border-color:#1a237e;box-shadow:0 0 0 2px #1a237e1a;outline:none}.add-match-btn{background:#8bc34a;border:2px solid #8bc34a;border-radius:6px;color:#1a237e;cursor:pointer;font-size:1rem;font-weight:700;padding:12px;transition:all .2s ease;width:100%}.add-match-btn:hover{background:#7cb342;border-color:#7cb342}.draw-dialog-actions{border-top:2px solid #e8eaf6;display:flex;gap:12px;justify-content:flex-end;padding:20px 24px}.cancel-btn,.save-btn{border-radius:6px;cursor:pointer;font-size:1rem;font-weight:700;padding:10px 24px;transition:all .2s ease}.save-btn{background:#1a237e;border:2px solid #1a237e;color:#fff}.save-btn:hover:not(:disabled){background:#16204f}.save-btn:disabled{cursor:not-allowed;opacity:.5}.cancel-btn{background:#fff;border:2px solid #ccc;color:#666}.cancel-btn:hover{background:#f5f5f5}@media (max-width:768px){.match-fields{gap:12px;grid-template-columns:1fr}.vs-label{padding-top:0}.draw-dialog-box{max-height:95vh;width:95%}}.tournaments-menu-container{margin:40px auto;max-width:900px;padding:32px;text-align:center}.tournament-tabs{display:flex;flex-wrap:nowrap;justify-content:center;margin-bottom:32px}@media (max-width:640px){.tournaments-menu-container{margin:12px auto;padding:12px}.tournament-tabs{flex-direction:column;gap:8px}.tournament-tab-btn{border:1px solid #1976d2!important;border-radius:8px!important;font-size:15px!important;padding:10px 12px!important;width:100%}}
/*# sourceMappingURL=main.d2420c73.css.map*/