html{overflow-x:hidden}body{margin:0;overflow-x:hidden;width:100%}#root{max-width:1126px;width:100%;margin:0 auto;text-align:center;min-height:100svh;display:flex;flex-direction:column;box-sizing:border-box;overflow-x:hidden}h1,h2{font-weight:500}h1{font-size:56px;letter-spacing:-1.68px;margin:32px 0}@media (max-width: 1024px){h1{font-size:36px;margin:20px 0}}h2{font-size:24px;line-height:118%;letter-spacing:-.24px;margin:0 0 8px}@media (max-width: 1024px){h2{font-size:20px}}p{margin:0}code,.counter{display:inline-flex;border-radius:4px}code{font-size:15px;line-height:135%;padding:4px 8px}.home-container{padding:2rem;color:#000;text-align:left}.tagline{text-align:center;margin:2rem 0;font-size:1.2rem;padding:1.5rem 2rem;background:#f8f9fa;border-left:4px solid #007bff;border-radius:4px}.tagline p{margin:0;color:#333}.content-card{background:#ffffff;border:1px solid #dee2e6;border-radius:8px;padding:2rem;box-shadow:0 2px 4px #0000000d;line-height:1.6;font-size:1.05rem;max-width:900px;margin:0 auto}.content-card p{margin-bottom:1.25rem}.content-card p:last-child{margin-bottom:0}@media (max-width: 768px){.home-container{padding:1rem}.content-card{font-size:.95rem;padding:1rem;line-height:1.7}.content-card p{margin-bottom:1rem}.tagline{padding:1rem;font-size:.95rem;margin:1.5rem 0}}@supports (padding: max(0px)){.home-container{padding-left:max(1rem,env(safe-area-inset-left));padding-right:max(1rem,env(safe-area-inset-right))}}@media (max-width: 375px){.content-card{font-size:.9rem;padding:.875rem}.tagline{font-size:.9rem}}*{margin:0;padding:0;box-sizing:border-box}html,body{overflow-x:hidden;width:100%;position:relative}body{font-family:Arial,sans-serif;color:#000;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.page-header{margin-bottom:2rem;border-bottom:3px solid #003da5;padding-bottom:1rem;margin-top:0}.page-header .header-content{display:flex;align-items:flex-start;justify-content:space-between;gap:2rem;min-height:100px}.page-header .header-title{flex:1;text-align:left}.page-header .header-logo{display:flex;align-items:center;flex-shrink:0;padding-top:.5rem}.page-header .vancouver-logo{max-width:200px;height:auto}.page-header h1{color:#003da5;font-size:2.5rem;margin:0 0 .5rem;font-weight:700;line-height:1.2}.page-subtitle{color:#666;font-size:1.1rem;margin:0;font-style:italic;text-align:left}@media (max-width: 768px){.page-header .header-content{flex-direction:column;gap:1rem;align-items:flex-start}.page-header .header-title{text-align:left}.page-header h1{font-size:1.8rem;line-height:1.3}.page-header .page-subtitle{font-size:.95rem;text-align:left}.page-header .vancouver-logo{max-width:120px}}@media (max-width: 375px){.page-header h1{font-size:1.35rem}.page-header .page-subtitle{font-size:.85rem}}.app-container{display:flex;flex-direction:column;min-height:100vh;background-color:#fff;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;width:100%;overflow-x:hidden}.mobile-header{display:none;position:fixed;top:0;left:0;right:0;height:60px;background:#ffffff;border-bottom:2px solid #dee2e6;z-index:1001;align-items:center;padding:0 1rem;box-shadow:0 2px 4px #0000001a}.mobile-view .mobile-header{display:flex}.mobile-header-logo{flex:1;display:flex;justify-content:center;align-items:center}.mobile-header-logo img{height:40px;width:auto}.mobile-menu-toggle{background:none;border:none;padding:.5rem;cursor:pointer;display:flex;align-items:center;z-index:1002}.hamburger-icon{display:flex;flex-direction:column;width:28px;gap:5px}.hamburger-icon span{display:block;height:3px;background:#000;border-radius:2px;transition:all .3s ease}.mobile-menu-toggle:hover .hamburger-icon span{background:#007bff}.mobile-menu-overlay{display:none;position:fixed;top:60px;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);z-index:999}.mobile-view .mobile-menu-overlay{display:block}.app-content-wrapper{display:flex;flex:1;min-height:calc(100vh - 150px)}.mobile-view .app-content-wrapper{margin-top:60px}.sidebar{width:200px;background-color:#fff;padding:1.5rem 1rem;position:fixed;height:100vh;overflow-y:auto;border-right:1px solid #eee;transition:transform .3s ease}.sidebar-mobile{position:fixed;top:60px;left:0;bottom:0;width:280px;transform:translate(-100%);z-index:1000;box-shadow:2px 0 8px #00000026;border-right:2px solid #dee2e6}.sidebar-mobile.sidebar-open{transform:translate(0)}.sidebar-logo{display:flex;justify-content:center;margin-bottom:1.5rem}.sidebar-ses-logo{max-width:100%;height:auto}.nav-menu{display:flex;flex-direction:column;gap:.1rem}.nav-item{margin-left:15px;color:#000;text-decoration:none;padding:.2rem 0;font-size:14px;line-height:1.3;display:block;transition:color .2s}.sidebar-mobile .nav-item{padding:.75rem 1rem;margin-left:0;font-size:16px;border-radius:4px}.sidebar-mobile .nav-item:hover{background:#f8f9fa}.nav-list{list-style-type:none;padding-left:0;margin-top:.5rem}.nav-list li{display:flex;align-items:flex-start}.sidebar-mobile .nav-list li{margin-bottom:.5rem}.nav-list li:before{content:"➤";font-size:12px;width:1.2em;flex-shrink:0;padding-top:.15em}.sidebar-mobile .nav-list li:before{font-size:14px;padding-top:.75rem}.nav-list li:first-child:before{visibility:hidden}.nav-item:hover{text-decoration:underline;color:#007bff}.nav-item.active{font-weight:700;color:#007bff}.main-content{margin-left:200px;flex:1;padding:2rem;min-height:calc(100vh - 200px);display:flex;flex-direction:column}.page-content-wrapper{flex:1;min-height:100%;width:100%}.app-footer{background:#f8f9fa;border-top:2px solid #dee2e6;padding:2rem;margin-top:auto;margin-left:200px}.footer-content{max-width:1200px;margin:0 auto;text-align:center}.footer-content p{margin:.5rem 0;font-size:.95rem;line-height:1.6;color:#6c757d}.footer-content p:first-child{font-weight:500}.footer-date{font-weight:600;color:#495057}@media (max-width: 768px){.app-container,.app-content-wrapper{flex-direction:column}.sidebar:not(.sidebar-mobile){display:none}.main-content{margin-left:0;width:100%;min-height:calc(100vh - 280px);display:flex;flex-direction:column}.page-content-wrapper{flex:1;min-height:100%}.app-footer{padding:1.5rem 1rem;margin-left:0}.footer-content p{font-size:.85rem}}@supports (-webkit-touch-callout: none){.mobile-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}input,textarea,select{font-size:16px!important}}@media (max-width: 768px) and (orientation: landscape){.sidebar-mobile{width:250px}.mobile-header{height:50px}.app-content-wrapper{margin-top:50px}.mobile-menu-overlay,.sidebar-mobile{top:50px}}.registration-container{color:#000;text-align:left;padding:2rem}.input-error{border-color:#dc3545!important}.success-message{color:#155724;background:#d4edda;border:1px solid #c3e6cb;border-radius:6px;font-weight:600;padding:1rem 1.5rem;margin:1.5rem auto;border-left:4px solid #28a745;max-width:800px}.error-message{color:#721c24;background:#f8d7da;border:1px solid #f5c6cb;border-radius:6px;font-weight:600;padding:1rem 1.5rem;margin:1.5rem auto;border-left:4px solid #dc3545;max-width:800px}.registration-container h2{color:#000;font-weight:400;text-align:center;margin-bottom:2rem;font-size:1.75rem}.registration-container p{margin-bottom:1em;max-width:800px;margin-left:auto;margin-right:auto}.registration-info-box{background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;padding:1.5rem;margin:2rem auto;max-width:800px}.registration-info-box h3{margin:0 0 1rem;color:#000;font-size:1.1rem;font-weight:600}.registration-info-box .info-item{padding:1rem;margin-bottom:1rem;background:white;border-left:4px solid #007bff;border-radius:4px}.registration-info-box .info-item:last-child{margin-bottom:0}.registration-info-box .info-item.important{border-left-color:#dc3545;background:#fff5f5}.registration-info-box .info-item p{margin:0;line-height:1.6}.registration-container ul{list-style-position:inside;padding-left:0}.registration-container li{line-height:1.6}.reg-form{max-width:800px;background:#ffffff;padding:2rem;border-radius:8px;border:1px solid #dee2e6;margin:2rem auto}.form-group{display:flex;flex-direction:column;margin-bottom:1.5rem}.form-group label{font-weight:600;margin-bottom:.5rem;color:#333;font-size:.95rem}.form-group input[type=text],.form-group input[type=email],.form-group input[type=tel]{padding:.75rem;border:2px solid #dee2e6;border-radius:4px;font-size:1rem;transition:border-color .2s,box-shadow .2s;background:white;color:#000}.form-group input[type=text]:focus,.form-group input[type=email]:focus,.form-group input[type=tel]:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.form-group input.input-error{border-color:#dc3545}.form-group input.input-error:focus{box-shadow:0 0 0 3px #dc35451a}.form-hint{color:#6c757d;font-size:.875rem;margin-top:.25rem;font-style:italic}.form-agreement{display:flex;align-items:flex-start;gap:.75rem;margin:2rem 0;padding:1rem;background:#f8f9fa;border-radius:4px;border:1px solid #dee2e6}.form-agreement input[type=checkbox]{margin-top:.25rem;width:18px;height:18px;cursor:pointer}.form-agreement label{cursor:pointer;color:#333;line-height:1.5}.form-submit{display:flex;justify-content:center;margin-top:2rem}.form-submit button{padding:.875rem 3rem;font-size:1.1rem;font-weight:600;border-radius:6px;cursor:pointer;transition:all .3s;border:none}.form-submit button.submit-active{background:#007bff;color:#fff;box-shadow:0 2px 4px #007bff4d}.form-submit button.submit-active:hover{background:#0056b3;box-shadow:0 4px 8px #007bff66;transform:translateY(-2px)}.form-submit button.submit-disabled{background:#e9ecef;color:#6c757d;cursor:not-allowed;opacity:.6}.resend-email-section{max-width:800px;margin:4rem auto 0}.resend-email-divider{text-align:center;position:relative;margin:3rem 0 2rem}.resend-email-divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:#dee2e6;z-index:0}.resend-email-divider span{background:white;padding:0 1rem;position:relative;z-index:1;color:#6c757d;font-weight:600;font-size:1rem}.resend-email-card{background:#ffffff;border:1px solid #dee2e6;border-radius:8px;padding:2rem;box-shadow:0 2px 4px #0000000d}.resend-email-card h2{color:#007bff;margin-top:0;margin-bottom:1rem;font-weight:600}.resend-email-card p{color:#555;line-height:1.6;margin-bottom:1.5rem}.resend-form{display:flex;gap:1rem;align-items:flex-end}.resend-form-group{flex:1;display:flex;flex-direction:column;gap:.5rem}.resend-form-group label{font-weight:600;color:#333;font-size:.95rem}.resend-form-group input{padding:.75rem;border:2px solid #dee2e6;border-radius:4px;font-size:1rem;transition:border-color .2s,box-shadow .2s;background:white;color:#000}.resend-form-group input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.resend-form-group input:disabled{background:#f8f9fa;cursor:not-allowed;opacity:.6}.resend-button{padding:.75rem 2rem;border-radius:4px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s;border:none}.resend-button-active{background:#007bff;color:#fff;box-shadow:0 2px 4px #007bff4d}.resend-button-active:hover{background:#0056b3;box-shadow:0 4px 8px #007bff66;transform:translateY(-2px)}.resend-button-disabled{background:#e9ecef;color:#6c757d;cursor:not-allowed;opacity:.6}.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:white;border-radius:8px;box-shadow:0 8px 32px #0000004d;min-width:400px;max-width:90vw;animation:slideUp .3s ease;border:2px solid #dc3545}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{padding:1.5rem 2rem;border-bottom:1px solid #dee2e6;background:#f8d7da}.modal-header h3{margin:0;color:#721c24;font-weight:600;display:flex;align-items:center;gap:.5rem}.modal-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:#fff;color:#dc3545;font-weight:700;font-size:1.25rem;flex-shrink:0}.modal-content.modal-success{border-color:#28a745}.modal-content.modal-success .modal-header{background:#d4edda}.modal-content.modal-success .modal-header h3{color:#155724}.modal-content.modal-success .modal-icon{color:#28a745}.modal-content.modal-success .modal-close-button{background:#28a745}.modal-content.modal-success .modal-close-button:hover{background:#218838;box-shadow:0 4px 8px #28a74566}.modal-body{padding:2rem}.modal-body p{margin:0;line-height:1.6;color:#333}.modal-footer{padding:1rem 2rem 1.5rem;text-align:right;border-top:1px solid #dee2e6}.modal-close-button{padding:.75rem 2rem;background:#dc3545;color:#fff;border:none;border-radius:4px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s}.modal-close-button:hover{background:#c82333;box-shadow:0 4px 8px #dc354566;transform:translateY(-2px)}@media (max-width: 768px){.registration-container{padding:.875rem}.registration-container h1{font-size:1.65rem;margin-bottom:.75rem}.registration-container h2{font-size:1.2rem;margin-bottom:1.5rem}.registration-container p{font-size:.95rem}.reg-form,.registration-info-box,.resend-email-section{padding:1rem}.reg-form{box-shadow:none;border:1px solid #dee2e6}.form-group{margin-bottom:1.25rem}.form-group label{font-size:1rem}.form-group input[type=text],.form-group input[type=email],.form-group input[type=tel]{font-size:16px;padding:.875rem}.form-agreement{padding:1rem;margin:1.5rem 0}.form-agreement input[type=checkbox]{width:20px;height:20px;flex-shrink:0}.form-agreement label{font-size:.95rem}.form-submit button{width:100%;padding:1rem;font-size:1.05rem}.form-submit button.submit-active:hover{transform:none}.resend-form{flex-direction:column;align-items:stretch;gap:1rem}.resend-form-group input{font-size:16px}.resend-button{width:100%;padding:.875rem}.modal-content{min-width:300px;margin:1rem;max-width:calc(100vw - 2rem)}.modal-header,.modal-body,.modal-footer{padding:1rem}.success-message,.error-message{font-size:.95rem;padding:1rem;margin:1rem auto}}@supports (padding: max(0px)){@media (max-width: 768px){.registration-container{padding-left:max(.875rem,env(safe-area-inset-left));padding-right:max(.875rem,env(safe-area-inset-right));padding-bottom:max(.875rem,env(safe-area-inset-bottom))}}}@media (max-width: 375px){.registration-container h1{font-size:1.5rem}.registration-container h2{font-size:1.1rem}.reg-form,.registration-info-box{padding:.875rem}.form-group input[type=text],.form-group input[type=email],.form-group input[type=tel]{padding:.75rem}}} .slot-book-link{background:#e3f2fd;border:none;border-radius:4px;padding:.4rem .6rem;color:#007bff;font-weight:600;cursor:pointer;font-size:.95rem;text-decoration:none;display:inline-block;transition:all .2s}.slot-book-link:hover,.slot-book-link:focus{background:#bbdefb;color:#0056b3;text-decoration:underline}.slot-book-link.slot-occupied{background:#f8d7da;color:#721c24}.slot-book-link.slot-occupied:hover,.slot-book-link.slot-occupied:focus{background:#ef9a9a;color:#fff;text-decoration:underline}.slot-row td{border-bottom:1px solid #dee2e6}.slot-table-wrapper{background:#fff;border:1px solid #dee2e6;border-radius:8px;box-shadow:0 2px 4px #0000000d;padding:2rem;margin:2rem auto;max-width:1200px;overflow-x:auto}.slot-table{width:100%;border-collapse:collapse;font-size:1rem;table-layout:fixed}.slot-table th,.slot-table td{border:1px solid #dee2e6;padding:.75rem;text-align:center}.slot-table th{background:#f8f9fa;font-weight:600;color:#333}.slot-expand-btn{width:100%;background:#f8f9fa;border:2px solid #dee2e6;border-radius:4px;padding:.5rem;font-size:1rem;color:#333;font-weight:600;cursor:pointer;transition:all .2s}.slot-expand-btn:hover{background:#e9ecef;border-color:#007bff}.slot-expand-btn[aria-expanded=true]{background:#e9ecef;border-color:#007bff;color:#007bff}.book-slot-container{padding:2rem;color:#000;text-align:left;background:#fff}.bookslot-explanation{text-align:left;margin:2rem auto;font-size:1.1rem;padding:1.5rem 2rem;background:#f8f9fa;border-left:4px solid #007bff;border-radius:4px;max-width:900px}.bookslot-explanation p{margin:0;color:#333;line-height:1.6}.date-dropdown-row{display:flex;align-items:center;gap:1rem;margin:2rem auto;padding:1.5rem 2rem;background:#ffffff;border:1px solid #dee2e6;border-radius:8px;box-shadow:0 2px 4px #0000000d;max-width:900px}.date-dropdown-label{font-weight:600;color:#333;font-size:1rem}.date-dropdown{flex:1;padding:.75rem;border:2px solid #dee2e6;border-radius:4px;font-size:1rem;background:#fff;color:#000;transition:border-color .2s,box-shadow .2s;cursor:pointer}.bands-modes-excel{max-width:100%;overflow-x:auto;margin-top:1rem;display:block;position:relative;background:linear-gradient(90deg,#fff 0%,transparent 20px),linear-gradient(90deg,transparent calc(100% - 20px),#fff 100%),linear-gradient(90deg,rgba(0,0,0,.15) 0%,transparent 20px),linear-gradient(90deg,transparent calc(100% - 20px),rgba(0,0,0,.15) 100%);background-repeat:no-repeat;background-size:20px 100%,20px 100%,20px 100%,20px 100%;background-position:0 0,100% 0,0 0,100% 0;background-attachment:local,local,scroll,scroll}.bands-modes-excel:before{content:"← Scroll to see all bands →";display:block;text-align:center;font-size:.85rem;color:#666;font-style:italic;padding:.25rem 0 .5rem}.excel-table{border-collapse:collapse;width:auto;min-width:100%;font-size:.95rem;background:#fff}.excel-table th,.excel-table td{border:1px solid #dee2e6;padding:.5rem;text-align:center;min-width:60px}.excel-table th{background:#f8f9fa;font-weight:600;color:#333}.excel-x{color:#dc3545;font-weight:700;font-size:1.1rem}@media (max-width: 768px){.book-slot-container{padding:.875rem}.book-slot-container h1{font-size:1.65rem;margin-bottom:.75rem}.bookslot-explanation{padding:1rem;font-size:.95rem;margin:1rem auto}.date-dropdown-row{flex-direction:column;align-items:stretch;padding:1rem;gap:.75rem}.date-dropdown-label{font-size:.95rem}.date-dropdown{width:100%;font-size:16px;padding:.875rem}.slot-table-wrapper{padding:.75rem;margin:1rem auto;overflow-x:auto;-webkit-overflow-scrolling:touch}.slot-table{font-size:.85rem}.slot-table th,.slot-table td{padding:.625rem .375rem;font-size:.875rem}.slot-expand-btn{padding:.625rem;font-size:.95rem}.slot-book-link{padding:.5rem .75rem;font-size:.9rem;display:block;text-align:center}.bands-modes-excel{margin-top:.75rem}.bands-modes-excel:before{font-size:.8rem;padding:.5rem 0}.excel-table{font-size:.8rem}.excel-table th,.excel-table td{padding:.5rem .375rem;font-size:.85rem;min-width:60px}.success-message,.error-message{font-size:.95rem;padding:1rem;margin:1rem auto}}@supports (padding: max(0px)){@media (max-width: 768px){.book-slot-container{padding-left:max(.875rem,env(safe-area-inset-left));padding-right:max(.875rem,env(safe-area-inset-right));padding-bottom:max(.875rem,env(safe-area-inset-bottom))}.slot-table-wrapper{margin-left:max(0,env(safe-area-inset-left));margin-right:max(0,env(safe-area-inset-right))}}}@media (max-width: 375px){.book-slot-container h1{font-size:1.5rem}.bookslot-explanation{font-size:.9rem;padding:.875rem}.date-dropdown-row{padding:.875rem}.slot-table-wrapper{padding:.5rem}.excel-table th,.excel-table td{padding:.4rem .25rem;font-size:.8rem;min-width:55px}.slot-book-link{font-size:.85rem;padding:.4rem .6rem}}.view-schedule-container{padding:2rem;color:#000;text-align:left}.schedule-explanation{text-align:center;margin:2rem 0;font-size:1.1rem;padding:1.5rem 2rem;background:#f8f9fa;border-left:4px solid #007bff;border-radius:4px}.schedule-explanation p{margin:0;color:#333;line-height:1.6}.date-selector{display:flex;align-items:center;gap:1rem;margin-bottom:2rem;padding:1.5rem 2rem;background:#ffffff;border:1px solid #dee2e6;border-radius:8px;box-shadow:0 2px 4px #0000000d}.date-label{font-weight:600;color:#333;font-size:1rem}.date-dropdown{flex:1;max-width:500px;padding:.75rem;border:2px solid #dee2e6;border-radius:4px;font-size:1rem;background-color:#fff;cursor:pointer;transition:border-color .2s,box-shadow .2s;color:#000}.date-dropdown:hover{border-color:#007bff}.date-dropdown:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.loading-message{text-align:center;padding:2rem;font-size:1.1rem;color:#666}.no-bookings-message{text-align:center;padding:2rem;background-color:#f8f9fa;border-radius:8px;border:2px dashed #dee2e6;margin:2rem 0}.no-bookings-message p{margin:0;font-size:1.1rem;color:#666}.schedule-grid{background-color:#fff;border:1px solid #dee2e6;border-radius:8px;box-shadow:0 2px 4px #0000000d;overflow:hidden}.schedule-header{display:grid;grid-template-columns:150px 1fr 1fr 1fr;gap:1rem;padding:1rem 1.5rem;background:#007bff;color:#fff;font-weight:600;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px}.header-cell{display:flex;align-items:center}.time-column{font-weight:700}.time-slot-group{border-bottom:1px solid #dee2e6}.time-slot-group:last-child{border-bottom:none}.time-slot-header{background-color:#f8f9fa;padding:.75rem 1rem;border-bottom:1px solid #dee2e6}.time-badge{display:inline-block;color:#000;font-weight:600;font-size:1rem;letter-spacing:.5px}.bookings-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem;padding:1rem}.booking-card{display:flex;align-items:center;gap:1rem;padding:1rem;background:#ffffff;border:2px solid #dee2e6;border-radius:6px;transition:all .3s ease}.booking-card:hover{border-color:#007bff;box-shadow:0 4px 8px #007bff26;transform:translateY(-2px)}.booking-band{flex-shrink:0}.band-badge{display:inline-block;padding:.5rem .75rem;background:#28a745;color:#fff;border-radius:4px;font-weight:600;font-size:.9rem;min-width:60px;text-align:center}.booking-mode{flex-shrink:0}.mode-badge{display:inline-block;padding:.5rem .75rem;background:#fd7e14;color:#fff;border-radius:4px;font-weight:600;font-size:.9rem;min-width:70px;text-align:center}.booking-callsign{flex:1;font-size:1rem;color:#000;font-weight:600;letter-spacing:1px}.booking-callsign strong{font-weight:700}@media (max-width: 768px){.view-schedule-container{padding:.875rem}.view-schedule-container h1{font-size:1.75rem;margin-bottom:.75rem}.schedule-explanation{padding:1rem;font-size:.95rem;margin:1rem 0}.schedule-header{display:none}.date-selector{flex-direction:column;align-items:stretch;padding:1rem;gap:.75rem}.date-label{font-size:.95rem}.date-dropdown{max-width:100%;font-size:.95rem;padding:.875rem}.bookings-list{grid-template-columns:1fr;padding:.75rem;gap:.75rem}.booking-card{flex-direction:column;align-items:stretch;gap:.75rem;padding:1rem}.booking-card:hover{transform:none}.booking-band,.booking-mode{display:flex;justify-content:center}.band-badge,.mode-badge{width:100%;font-size:1rem;padding:.625rem}.booking-callsign{text-align:center;font-size:1.1rem;padding:.5rem;background:#f8f9fa;border-radius:4px}.time-badge{font-size:1rem}.time-slot-header{padding:.875rem .75rem}.loading-message,.no-bookings-message{font-size:1rem;padding:1.5rem 1rem}}@supports (padding: max(0px)){@media (max-width: 768px){.view-schedule-container{padding-left:max(.875rem,env(safe-area-inset-left));padding-right:max(.875rem,env(safe-area-inset-right));padding-bottom:max(.875rem,env(safe-area-inset-bottom))}}}@media (max-width: 375px){.view-schedule-container h1{font-size:1.5rem}.schedule-explanation{font-size:.9rem;padding:.875rem}.date-selector,.booking-card{padding:.875rem}.band-badge,.mode-badge{font-size:.95rem}.booking-callsign{font-size:1.05rem}}.booking-callsign{flex-basis:100%;text-align:center;margin-top:.5rem}} .wc-schedule-container{color:#000;text-align:left}.filters-section{background:#f8f9fa;padding:1.5rem;border-radius:8px;margin-bottom:2rem;display:flex;gap:2rem;align-items:center;flex-wrap:wrap;box-shadow:0 2px 4px #0000001a;max-width:1600px;margin-left:auto;margin-right:auto}.filter-group{display:flex;align-items:center;gap:.5rem}.filter-group label{font-weight:600;color:#333;white-space:nowrap}.filter-select{padding:.5rem 1rem;border:2px solid #ddd;border-radius:4px;font-size:1rem;background:white;cursor:pointer;min-width:180px;transition:all .2s ease}.filter-select:hover{border-color:#003da5}.filter-select:focus{outline:none;border-color:#003da5;box-shadow:0 0 0 3px #003da51a}.results-count{margin-left:auto;color:#666;font-size:.95rem;font-weight:500}.table-wrapper{position:relative;background:white;border-radius:8px;max-width:1600px;margin-left:auto;margin-right:auto;box-shadow:0 2px 8px #0000001a}.scroll-indicator{text-align:center;padding:.5rem;background:linear-gradient(180deg,#e2e8f0 0%,#cbd5e0 100%);color:#4a5568;font-size:.75rem;font-weight:600;letter-spacing:1px;border-bottom:1px solid #cbd5e0}.scroll-indicator-top{border-radius:8px 8px 0 0}.scroll-indicator-bottom{border-top:1px solid #cbd5e0;border-bottom:none;border-radius:0 0 8px 8px;background:linear-gradient(0deg,#e2e8f0 0%,#cbd5e0 100%)}.table-container{max-height:600px;overflow-y:auto;overflow-x:auto;position:relative}.table-container::-webkit-scrollbar{width:10px;height:10px}.table-container::-webkit-scrollbar-track{background:#f1f1f1}.table-container::-webkit-scrollbar-thumb{background:#888;border-radius:5px}.table-container::-webkit-scrollbar-thumb:hover{background:#555}.matches-table{width:100%;border-collapse:collapse;font-size:.9rem}.matches-table thead{background:#4a5568;color:#fff}.matches-table th{padding:.75rem;text-align:left;font-weight:600;font-size:.85rem;text-transform:uppercase;letter-spacing:.5px;border-right:1px solid rgba(255,255,255,.1)}.matches-table th:last-child{border-right:none}.date-header-row{background:#5a6c7d}.date-header-row td{padding:.5rem .75rem;font-weight:700;color:#fff;font-size:.9rem;letter-spacing:.3px;text-align:left}.match-row{border-bottom:1px solid #e2e8f0;transition:background-color .2s ease}.match-row:nth-child(2n){background:#f8f9fa}.match-row:hover{background:#e6f2ff}.match-row td{padding:.625rem .75rem;color:#2d3748}.match-id{font-weight:600;color:#4a5568;text-align:center}.stage-cell{font-weight:600;color:#2c5282}.team-cell{font-weight:500;color:#1a202c}.city-cell{color:#2563eb;font-weight:500}.callsign-cell{font-family:Courier New,monospace;font-weight:700;color:#003da5;font-size:1rem;letter-spacing:.5px}.loading-state,.error-state,.empty-state{text-align:center;padding:3rem;background:#f8f9fa;border-radius:8px;margin-top:2rem;max-width:1600px;margin-left:auto;margin-right:auto}.loading-state p{color:#666;font-size:1.1rem}.error-state{background:#fff3cd;border:2px solid #ffc107}.error-state p{color:#856404;margin-bottom:1rem;font-weight:500}.error-state button{background:#003da5;color:#fff;border:none;padding:.75rem 2rem;border-radius:4px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.error-state button:hover{background:#002a75;transform:translateY(-2px);box-shadow:0 4px 12px #003da54d}.empty-state p{color:#666;font-size:1.1rem}@media (max-width: 1024px){.wc-schedule-container{padding:1rem}.table-container{max-height:500px}.matches-table{min-width:800px}.filters-section{flex-direction:column;align-items:stretch;gap:1rem}.filter-group{flex-direction:column;align-items:stretch}.filter-select{width:100%}.results-count{margin-left:0;text-align:center}}@media (max-width: 768px){.table-container{max-height:400px}.matches-table{font-size:.8rem}.matches-table th,.match-row td{padding:.5rem .4rem}.date-header-row td{padding:.45rem .4rem;font-size:.85rem}.scroll-indicator{font-size:.7rem;padding:.4rem}}.news-container{padding:2rem;color:#000;text-align:left}@media (max-width: 768px){.news-container{padding:1rem}.coming-soon-section{padding:2rem 1.5rem;margin:2rem auto}.coming-soon-icon{font-size:3rem}.coming-soon-section h2{font-size:1.5rem}.coming-soon-section>p{font-size:1rem}.info-box{padding:1rem}}.certificates-container{padding:2rem;color:#000;text-align:left}@media (max-width: 768px){.certificates-container{padding:1rem}.coming-soon-section{padding:2rem 1.5rem;margin:2rem auto}.coming-soon-icon{font-size:3rem}.coming-soon-section h2{font-size:1.5rem}.coming-soon-section>p{font-size:1rem}.info-box{padding:1rem}}.supporters-container{padding:2rem;color:#000;text-align:left}.coming-soon-section{max-width:800px;margin:3rem auto;padding:3rem 2rem;background:#ffffff;border:1px solid #dee2e6;border-radius:8px;box-shadow:0 2px 4px #0000000d;text-align:center}.coming-soon-icon{font-size:4rem;margin-bottom:1.5rem;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}.coming-soon-section h2{font-size:2rem;color:#003da5;margin-bottom:1rem;font-weight:600}.coming-soon-section>p{font-size:1.1rem;color:#495057;line-height:1.6;margin-bottom:2rem}.info-box{background:#f8f9fa;border-left:4px solid #007bff;border-radius:4px;padding:1.5rem;margin-top:2rem;text-align:left}.info-box p{font-weight:600;color:#333;margin-bottom:1rem;font-size:1rem}.info-box ul{list-style-type:none;padding-left:0;margin:0}.info-box li{color:#495057;line-height:1.5;position:relative;padding:.5rem 0 .5rem 1.5rem}.info-box li:before{content:"✓";position:absolute;left:0;color:#28a745;font-weight:700;font-size:1.1rem}@media (max-width: 768px){.supporters-container{padding:1rem}.coming-soon-section{padding:2rem 1.5rem;margin:2rem auto}.coming-soon-icon{font-size:3rem}.coming-soon-section h2{font-size:1.5rem}.coming-soon-section>p{font-size:1rem}.info-box{padding:1rem}}@media (max-width: 375px){.coming-soon-section{padding:1.5rem 1rem}.coming-soon-icon{font-size:2.5rem}.coming-soon-section h2{font-size:1.3rem}}.contact-container{padding:2rem;color:#000;text-align:left}.contact-content{max-width:900px;margin:0 auto}.contact-intro{font-size:1.05rem;line-height:1.6;color:#495057;margin-bottom:2.5rem}.contact-list{background:#ffffff;border:1px solid #dee2e6;border-radius:8px;padding:2rem;box-shadow:0 2px 4px #0000000d}.contact-item{padding:1.5rem 0;border-bottom:1px solid #e9ecef}.contact-item:last-child{border-bottom:none;padding-bottom:0}.contact-item:first-child{padding-top:0}.contact-label{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.contact-bullet{color:#003da5;font-size:1.5rem;line-height:1}.contact-label strong{font-size:1.1rem;color:#003da5;font-weight:600}.contact-desc{margin:.5rem 0 .75rem 2rem;font-size:.95rem;color:#6c757d;line-height:1.5}.contact-link{display:inline-block;margin-left:2rem;color:#007bff;text-decoration:none;font-size:.95rem;font-weight:500;transition:color .2s ease}.contact-link:hover{color:#0056b3;text-decoration:underline}.contact-note{margin-top:2rem;padding:1.25rem;background:#f8f9fa;border-left:3px solid #007bff;border-radius:4px}.contact-note p{margin:0;font-size:.95rem;line-height:1.6;color:#495057}.contact-note strong{color:#003da5}@media (max-width: 768px){.contact-container{padding:1rem}.contact-intro{font-size:1rem;margin-bottom:2rem}.contact-list{padding:1.5rem}.contact-item{padding:1.25rem 0}.contact-label strong{font-size:1rem}.contact-desc,.contact-link{margin-left:1.5rem;font-size:.9rem}.contact-note{padding:1rem;margin-top:1.5rem}.contact-note p{font-size:.9rem}}@media (max-width: 375px){.contact-list{padding:1rem}.contact-item{padding:1rem 0}.contact-label strong{font-size:.95rem}.contact-desc{margin-left:1.25rem;font-size:.85rem}.contact-link{margin-left:1.25rem;font-size:.85rem;word-break:break-all}}
