html{scroll-behavior:smooth}body{margin:0;font-family:Arial Black,Arial,sans-serif;background-color:#0a0a0a;color:#fff;line-height:1.4;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}#root{min-height:100vh;width:100%}button,input,textarea,select{font-family:inherit}img{max-width:100%;height:auto}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#1a1a1a}::-webkit-scrollbar-thumb{background:#ff6b35;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#ff8c42}::selection{background:#ff6b35;color:#fff}::-moz-selection{background:#ff6b35;color:#fff}*:focus{outline:2px solid #ff6b35;outline-offset:2px}*:focus:not(:focus-visible){outline:none}.hero{height:70vh;background:linear-gradient(#000000b3,#000c),url(/frontdesk.webp);background-size:cover;background-position:center;background-attachment:fixed;display:flex;align-items:center;position:relative}.user-menu{position:relative;display:inline-block}.user-menu-trigger{display:flex;align-items:center;gap:10px;background:#ffffff0d;border:1px solid rgba(255,255,255,.15);color:#fff;font-family:Arial,sans-serif;font-size:14px;font-weight:600;cursor:pointer;padding:10px 16px;border-radius:8px;transition:all .3s ease}.user-menu-trigger:hover{background:#ff6b3526;border-color:#ff6b35}.user-name{text-transform:capitalize}.dropdown-arrow{transition:transform .3s ease;opacity:.7}.dropdown-arrow.open{transform:rotate(180deg)}.user-menu-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:linear-gradient(135deg,#1a1a1a,#242424);border-radius:12px;border:1px solid #333;box-shadow:0 15px 40px #00000080;min-width:260px;z-index:1000;overflow:hidden;animation:dropdownFadeIn .2s ease-out}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.user-info{padding:16px 20px;background:#0d0d0d!important;border:none!important;border-bottom:1px solid #333!important;outline:none!important;box-shadow:none!important;border-radius:0!important}.user-info *,.user-info *:before,.user-info *:after{border:none!important;outline:none!important;box-shadow:none!important}.user-info .role-badge{border:1px solid #ff6b35!important}.user-name-full{font-size:15px;font-weight:700;margin-bottom:2px;color:#fff!important}.user-email{font-size:12px;color:#888!important;margin-bottom:8px}.user-roles{display:flex;gap:6px;flex-wrap:wrap}.role-badge{background:#ff6b3526!important;border:1px solid #ff6b35;padding:2px 10px;border-radius:12px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#ff6b35!important}.menu-items{padding:8px 0}.menu-item{display:flex;align-items:center;gap:12px;width:100%;padding:12px 20px;background:none;border:none;color:#ccc;font-size:14px;font-weight:500;text-decoration:none;cursor:pointer;transition:all .2s ease}.menu-item:hover{background:#ff6b351a;color:#ff6b35}.menu-item svg{flex-shrink:0;opacity:.7}.menu-item:hover svg{opacity:1}.logout-item{color:#ff6b6b}.logout-item:hover{background:#dc35451a;color:#ff6b6b}.menu-divider{height:1px;background:#333;margin:8px 16px}.auth-buttons{display:flex;align-items:center;gap:12px}.auth-button{font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;text-decoration:none;padding:10px 20px;border-radius:6px;transition:all .3s ease;border:none;cursor:pointer}.auth-button.login{color:#fff;background:transparent;border:2px solid rgba(255,255,255,.3)}.auth-button.login:hover{border-color:#ff6b35;color:#ff6b35}.auth-button.register{color:#fff;background:linear-gradient(135deg,#ff6b35,#ff8c42);border:none;box-shadow:0 4px 12px #ff6b354d}.auth-button.register:hover{transform:translateY(-2px);box-shadow:0 6px 16px #ff6b3566}@media (max-width: 768px){.user-menu-dropdown{min-width:240px;right:-10px}.auth-buttons{gap:8px}.auth-button{padding:8px 14px;font-size:12px}.user-menu-trigger{padding:8px 12px;font-size:13px}.user-name{display:none}}.hero{height:70vh;background:linear-gradient(#000000b3,#000c),url(/frontdesk.webp);background-size:cover;background-position:center;background-attachment:fixed;display:flex;align-items:center;position:relative}.contact-page{min-height:100vh;background-color:#0a0a0a;color:#fff}.contact-hero{height:50vh;background:linear-gradient(#000000b3,#000c),url(/trainers.webp);background-size:cover;background-position:center;background-attachment:fixed;display:flex;align-items:center;position:relative}.contact-hero:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(45deg,transparent,transparent 2px,rgba(255,107,53,.03) 2px,rgba(255,107,53,.03) 4px)}.contact-hero .hero-content h1{font-size:3.5rem;font-weight:900;color:#fff;text-shadow:3px 3px 6px rgba(0,0,0,.9);margin-bottom:20px;letter-spacing:3px;text-transform:uppercase;text-align:center}.contact-hero .hero-content p{font-size:1.2rem;color:#ccc;text-align:center;max-width:600px;margin:0 auto;line-height:1.6}.contact-content{padding:80px 0;background:linear-gradient(135deg,#111,#1a1a1a)}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}.contact-layout-centered{display:flex;justify-content:center;align-items:center;min-height:60vh}.contact-info-section-centered{max-width:1000px;width:100%;text-align:center}.contact-intro{margin-bottom:50px}.contact-intro h2{font-size:2.5rem;font-weight:900;color:#ff6b35;margin-bottom:20px;text-transform:uppercase;letter-spacing:2px}.contact-description{font-size:1.2rem;color:#ccc;line-height:1.6;max-width:700px;margin:0 auto}.info-cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:30px;margin-bottom:50px}.social-section-centered{background:#1a1a1acc;padding:40px;border-radius:12px;border:2px solid #333333;margin-top:30px}.social-section-centered h3{font-size:1.5rem;color:#ff6b35;margin-bottom:25px;font-weight:700;text-transform:uppercase;letter-spacing:1px}.social-section-centered .social-links{display:flex;gap:20px;justify-content:center;flex-wrap:wrap}.contact-form-section h2,.contact-info-section h2{font-size:2.2rem;font-weight:900;color:#ff6b35;margin-bottom:30px;text-transform:uppercase;letter-spacing:2px}.contact-form{background:#1a1a1acc;padding:40px;border-radius:12px;border:2px solid #333333;box-shadow:0 10px 30px #00000080}.form-group{margin-bottom:25px}.form-group label{display:block;font-size:1rem;font-weight:700;color:#fff;margin-bottom:8px;text-transform:uppercase;letter-spacing:1px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:15px;background:#0d0d0d;border:2px solid #333333;border-radius:6px;color:#fff;font-size:1rem;transition:all .3s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#ff6b35;box-shadow:0 0 10px #ff6b354d}.form-group textarea{resize:vertical;min-height:120px}.form-group select{cursor:pointer}.form-group select option{background:#0d0d0d;color:#fff}.checkbox-group{margin:30px 0}.checkbox-label{display:flex;align-items:center;cursor:pointer;font-size:1rem;color:#ccc;text-transform:none;letter-spacing:normal}.checkbox-label input[type=checkbox]{display:none}.checkmark{width:20px;height:20px;background:#0d0d0d;border:2px solid #333333;border-radius:4px;margin-right:12px;position:relative;transition:all .3s ease}.checkbox-label input[type=checkbox]:checked+.checkmark{background:#ff6b35;border-color:#ff6b35}.checkbox-label input[type=checkbox]:checked+.checkmark:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-weight:700;font-size:14px}.submit-btn{width:100%;padding:18px;background:linear-gradient(45deg,#ff6b35,#ff8c42);color:#fff;border:none;border-radius:6px;font-size:1.1rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #ff6b3566}.submit-btn:hover:not(:disabled){background:linear-gradient(45deg,#ff8c42,#ff6b35);box-shadow:0 6px 20px #ff6b3599;transform:translateY(-2px)}.submit-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.submit-message{margin-top:20px;padding:15px;background:#22c55e33;border:2px solid #22c55e;border-radius:6px;color:#22c55e;text-align:center;font-weight:700}.info-cards{display:grid;gap:25px;margin-bottom:40px}.info-card{background:#1a1a1acc;padding:30px;border-radius:12px;border:2px solid #333333;text-align:center;transition:all .3s ease}.info-card:hover{border-color:#ff6b35;box-shadow:0 8px 25px #ff6b3533;transform:translateY(-5px)}.info-icon{font-size:2.5rem;margin-bottom:15px;display:block}.info-card h3{font-size:1.3rem;color:#ff6b35;margin-bottom:15px;font-weight:700;text-transform:uppercase;letter-spacing:1px}.info-card p{color:#ccc;line-height:1.6;margin-bottom:10px}.info-card a{color:#fff;text-decoration:none;transition:color .3s ease}.info-card a:hover{color:#ff6b35}.info-note{font-size:.9rem;color:#888;font-style:italic}.map-link{display:inline-block;margin-top:10px;padding:8px 16px;background:#ff6b35;color:#fff!important;border-radius:4px;font-size:.9rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;transition:all .3s ease}.map-link:hover{background:#ff8c42;transform:translateY(-2px)}.hours-list{text-align:left}.hours-row{display:flex;justify-content:space-between;margin-bottom:8px;padding:5px 0;border-bottom:1px solid #333333}.hours-row:last-child{border-bottom:none}.social-section{background:#1a1a1acc;padding:30px;border-radius:12px;border:2px solid #333333;text-align:center}.social-section h3{font-size:1.3rem;color:#ff6b35;margin-bottom:20px;font-weight:700;text-transform:uppercase;letter-spacing:1px}.social-section .social-links{display:flex;gap:15px;justify-content:center;flex-wrap:wrap}.social-link{display:flex;align-items:center;gap:8px;padding:12px 20px;background:#0d0d0d;color:#ccc;text-decoration:none;border-radius:6px;font-weight:700;font-size:.9rem;text-transform:uppercase;letter-spacing:1px;transition:all .3s ease;border:2px solid #333333}.social-link:hover{color:#fff;border-color:#ff6b35;box-shadow:0 4px 15px #ff6b354d;transform:translateY(-2px)}.social-link.facebook:hover{background:#1877f2;border-color:#1877f2}.social-link.instagram:hover{background:linear-gradient(45deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888);border-color:#e6683c}.map-section{padding:60px 0;background:#0d0d0d;border-top:2px solid #333333}.map-section h2{font-size:2.2rem;font-weight:900;color:#ff6b35;margin-bottom:30px;text-transform:uppercase;letter-spacing:2px;text-align:center}.map-container{border-radius:12px;overflow:hidden;box-shadow:0 10px 30px #00000080;border:2px solid #333333}.map-container iframe{filter:grayscale(20%) contrast(1.2)}.faq-section{padding:80px 0;background:linear-gradient(135deg,#111,#1a1a1a)}.faq-section h2{font-size:2.2rem;font-weight:900;color:#ff6b35;margin-bottom:50px;text-transform:uppercase;letter-spacing:2px;text-align:center}.faq-item{background:#1a1a1acc;padding:30px;border-radius:12px;border:2px solid #333333;transition:all .3s ease}.faq-item:hover{border-color:#ff6b35;box-shadow:0 8px 25px #ff6b3533;transform:translateY(-5px)}.faq-item h3{font-size:1.2rem;color:#ff6b35;margin-bottom:15px;font-weight:700}.faq-item p{color:#ccc;line-height:1.6}@media (max-width: 1024px){.contact-layout{grid-template-columns:1fr;gap:40px}.contact-hero .hero-content h1{font-size:2.8rem}}@media (max-width: 768px){.contact-hero{height:40vh}.contact-hero .hero-content h1{font-size:2.2rem}.contact-hero .hero-content p{font-size:1.1rem}.contact-content{padding:60px 0}.contact-form{padding:30px 20px}.form-row{grid-template-columns:1fr;gap:0}.contact-form-section h2,.contact-info-section h2{font-size:1.8rem}.faq-grid{grid-template-columns:1fr}.social-section .social-links{flex-direction:column;align-items:center}.social-link{width:100%;max-width:200px;justify-content:center}}@media (max-width: 480px){.contact-hero .hero-content h1{font-size:1.8rem}.contact-hero .hero-content p{font-size:1rem}.contact-form{padding:20px 15px}.info-card{padding:20px}.contact-form-section h2,.contact-info-section h2,.map-section h2,.faq-section h2{font-size:1.5rem}.faq-grid{grid-template-columns:1fr}.faq-item{padding:20px}}.hero{height:70vh;background:linear-gradient(#000000b3,#000c),url(/frontdesk.webp);background-size:cover;background-position:center;background-attachment:fixed;display:flex;align-items:center;position:relative}.equipment-page{min-height:100vh;background-color:#0a0a0a;color:#fff}.equipment-hero{height:70vh;background:linear-gradient(#0009,#000000b3),url(/dumbbells.webp);background-size:cover;background-position:center;background-attachment:fixed;display:flex;align-items:center;position:relative}.equipment-hero:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(45deg,transparent,transparent 2px,rgba(255,107,53,.03) 2px,rgba(255,107,53,.03) 4px)}.equipment-hero .hero-content{text-align:center;position:relative;z-index:2}.equipment-hero .hero-content h1{font-size:4rem;font-weight:900;color:#fff;text-shadow:3px 3px 6px rgba(0,0,0,.9);margin-bottom:20px;letter-spacing:3px;text-transform:uppercase}.equipment-hero .hero-content p{font-size:1.3rem;color:#ccc;max-width:700px;margin:0 auto 40px;line-height:1.6}.equipment-categories,.facilities-overview,.equipment-gallery,.equipment-features{padding:80px 0}.equipment-categories{background:linear-gradient(135deg,#111,#1a1a1a)}.facilities-overview{background:#0d0d0d}.equipment-gallery{background:linear-gradient(135deg,#1a1a1a,#111)}.equipment-features{background:#0a0a0a}.equipment-categories h2,.facilities-overview h2,.equipment-gallery h2,.equipment-features h2{font-size:2.5rem;font-weight:900;color:#ff6b35;margin-bottom:15px;text-transform:uppercase;letter-spacing:2px;text-align:center}.section-subtitle{font-size:1.2rem;color:#ccc;text-align:center;margin-bottom:60px;max-width:600px;margin-left:auto;margin-right:auto}.categories-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:40px}.category-card{background:#1a1a1acc;border-radius:15px;overflow:hidden;border:2px solid #333333;transition:all .3s ease;box-shadow:0 10px 30px #00000080}.category-card:hover{border-color:#ff6b35;box-shadow:0 15px 40px #ff6b354d;transform:translateY(-10px)}.category-image{position:relative;height:250px;overflow:hidden}.category-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.category-card:hover .category-image img{transform:scale(1.1)}.category-overlay{position:absolute;inset:0;background:linear-gradient(45deg,#ff6b35cc,#ff8c42cc);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease}.category-card:hover .category-overlay{opacity:1}.category-icon{font-size:4rem;text-shadow:2px 2px 4px rgba(0,0,0,.8)}.category-content{padding:30px}.category-content h3{font-size:1.5rem;color:#ff6b35;margin-bottom:15px;font-weight:700;text-transform:uppercase;letter-spacing:1px}.category-description{color:#ccc;margin-bottom:20px;line-height:1.6}.equipment-list{list-style:none;padding:0}.equipment-list li{color:#fff;border-bottom:1px solid #333333;position:relative;padding:8px 0 8px 20px}.equipment-list li:last-child{border-bottom:none}.equipment-list li:before{content:"▶";color:#ff6b35;position:absolute;left:0;font-size:.8rem}.facilities-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:30px}.facility-card{background:#1a1a1acc;padding:40px 30px;border-radius:15px;border:2px solid #333333;text-align:center;transition:all .3s ease;box-shadow:0 10px 30px #00000080}.facility-card:hover{border-color:#ff6b35;box-shadow:0 15px 40px #ff6b354d;transform:translateY(-10px)}.facility-icon{font-size:3rem;margin-bottom:20px;display:block}.facility-card h3{font-size:1.3rem;color:#ff6b35;margin-bottom:15px;font-weight:700;text-transform:uppercase;letter-spacing:1px}.facility-card p{color:#ccc;line-height:1.6}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:25px}.gallery-item{position:relative;height:250px;border-radius:12px;overflow:hidden;border:2px solid #333333;transition:all .3s ease;box-shadow:0 10px 30px #00000080}.gallery-item.large{grid-column:span 2;height:350px}.gallery-item:hover{border-color:#ff6b35;box-shadow:0 15px 40px #ff6b354d;transform:translateY(-5px)}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.gallery-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#000000e6);padding:30px 20px 20px;transform:translateY(100%);transition:transform .3s ease}.gallery-overlay h4{color:#ff6b35;font-size:1.2rem;font-weight:700;margin-bottom:8px;text-transform:uppercase;letter-spacing:1px}.gallery-overlay p{color:#ccc;font-size:.9rem;line-height:1.4}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px}.feature-card{background:#1a1a1acc;padding:40px 30px;border-radius:15px;border:2px solid #333333;text-align:center;transition:all .3s ease;box-shadow:0 10px 30px #00000080}.feature-card:hover{border-color:#ff6b35;box-shadow:0 15px 40px #ff6b354d;transform:translateY(-10px)}.feature-icon{font-size:3rem;margin-bottom:20px;display:block}.feature-card h3{font-size:1.3rem;color:#ff6b35;margin-bottom:15px;font-weight:700;text-transform:uppercase;letter-spacing:1px}.feature-card p{color:#ccc;line-height:1.6}.equipment-cta{padding:80px 0;background:linear-gradient(135deg,#ff6b35,#ff8c42);text-align:center}.cta-content h2{font-size:2.5rem;font-weight:900;color:#fff;margin-bottom:20px;text-transform:uppercase;letter-spacing:2px;text-shadow:2px 2px 4px rgba(0,0,0,.3)}.cta-content p{font-size:1.2rem;color:#fff;max-width:600px;margin:0 auto 40px;line-height:1.6;opacity:.9}.btn-primary,.btn-secondary{padding:18px 35px;border:none;border-radius:8px;font-size:1.1rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-block}.btn-primary{background:#fff;color:#ff6b35;box-shadow:0 4px 15px #0003}.btn-primary:hover{background:#f0f0f0;box-shadow:0 6px 20px #0000004d;transform:translateY(-2px)}.btn-secondary:hover{background:#fff;color:#ff6b35;transform:translateY(-2px)}@media (max-width: 1024px){.equipment-hero .hero-content h1{font-size:3rem}.hero-stats{gap:40px}.categories-grid{grid-template-columns:1fr}.gallery-item.large{grid-column:span 1;height:250px}}@media (max-width: 768px){.equipment-hero{height:60vh}.equipment-hero .hero-content h1{font-size:2.5rem}.equipment-hero .hero-content p{font-size:1.1rem}.hero-stats{flex-direction:column;gap:20px;align-items:center}.stat{display:flex;align-items:center;gap:15px}.stat-number{font-size:2rem}.equipment-categories,.facilities-overview,.equipment-gallery,.equipment-features,.equipment-cta{padding:60px 0}.equipment-categories h2,.facilities-overview h2,.equipment-gallery h2,.equipment-features h2{font-size:2rem}.categories-grid{grid-template-columns:1fr;gap:30px}.category-card{margin:0 10px}.facilities-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px}.gallery-grid,.features-grid{grid-template-columns:1fr;gap:20px}.cta-buttons{flex-direction:column;align-items:center}.btn-primary,.btn-secondary{width:100%;max-width:300px}}@media (max-width: 480px){.equipment-hero .hero-content h1{font-size:2rem}.equipment-hero .hero-content p{font-size:1rem}.category-content{padding:20px}.facility-card,.feature-card{padding:30px 20px}.equipment-categories h2,.facilities-overview h2,.equipment-gallery h2,.equipment-features h2{font-size:1.8rem}.cta-content h2{font-size:2rem}.cta-content p{font-size:1.1rem}}.start-journey{min-height:100vh;background:#000;color:#fff}.mission-hero{background:linear-gradient(#0009,#0009),url(/equipment/mfc_bench_room.jpg);background-size:cover;background-position:center;background-attachment:fixed;min-height:100vh;display:flex;align-items:center;position:relative}.mission-overlay{width:100%;padding:2rem 0}.mission-content{text-align:center;max-width:1200px;margin:0 auto}.mission-content h1{font-size:4rem;font-weight:900;margin-bottom:2rem;text-shadow:2px 2px 4px rgba(0,0,0,.8);letter-spacing:2px}.mission-statement{background:#000c;padding:3rem;border-radius:10px;margin:2rem 0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1)}.mission-statement h2{font-size:2.5rem;color:#ff6b35;margin-bottom:2rem;font-weight:800;text-transform:uppercase;letter-spacing:1px}.mission-text{font-size:1.3rem;line-height:1.8;margin-bottom:2rem;text-align:left;max-width:900px;margin-left:auto;margin-right:auto}.mission-text strong{color:#ff6b35;font-weight:700}.mission-pillars{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin:3rem 0}.pillar{background:#ff6b351a;padding:2rem;border-radius:8px;border:1px solid rgba(255,107,53,.3);transition:transform .3s ease,box-shadow .3s ease}.pillar:hover{transform:translateY(-5px);box-shadow:0 10px 30px #ff6b3533}.pillar h3{color:#ff6b35;font-size:1.2rem;font-weight:700;margin-bottom:1rem;text-transform:uppercase;letter-spacing:1px}.pillar p{font-size:1rem;line-height:1.6;color:#ccc}.mission-cta{margin-top:3rem;padding:2rem;background:linear-gradient(135deg,#ff6b351a,#ff6b350d);border-radius:10px;border:1px solid rgba(255,107,53,.2)}.mission-cta h3{font-size:2rem;color:#ff6b35;margin-bottom:1.5rem;font-weight:800;text-transform:uppercase}.mission-cta p{font-size:1.2rem;line-height:1.7;margin-bottom:2rem;color:#e0e0e0}.cta-buttons{display:flex;gap:1.5rem;justify-content:center;flex-wrap:wrap}.btn-primary,.btn-secondary{padding:1rem 2rem;font-size:1.1rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;border:none;border-radius:5px;cursor:pointer;transition:all .3s ease;min-width:200px}.btn-primary{background:linear-gradient(135deg,#ff6b35,#ff8c42);color:#fff}.btn-primary:hover{background:linear-gradient(135deg,#ff8c42,#ff6b35);transform:translateY(-2px);box-shadow:0 8px 25px #ff6b3566}.btn-secondary{background:transparent;color:#ff6b35;border:2px solid #ff6b35}.btn-secondary:hover{background:#ff6b35;color:#fff;transform:translateY(-2px);box-shadow:0 8px 25px #ff6b354d}.facility-showcase{padding:5rem 0;background:#000}.facility-showcase h2{text-align:center;font-size:3rem;color:#ff6b35;margin-bottom:3rem;font-weight:800;text-transform:uppercase;letter-spacing:2px}.showcase-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;max-width:1200px;margin:0 auto}.showcase-item{position:relative;border-radius:10px;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease;background:#111}.showcase-item:hover{transform:translateY(-10px);box-shadow:0 20px 40px #ff6b354d}.showcase-item img{width:100%;height:250px;object-fit:cover;transition:transform .3s ease}.showcase-item:hover img{transform:scale(1.05)}.showcase-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#000000e6);padding:2rem 1.5rem 1.5rem;transform:translateY(0);transition:transform .3s ease}.showcase-item:hover .showcase-overlay{transform:translateY(-5px)}.showcase-overlay h4{color:#ff6b35;font-size:1.2rem;font-weight:700;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:1px}.showcase-overlay p{color:#ccc;font-size:.9rem;line-height:1.4;margin:0}.values-section{padding:5rem 0;background:linear-gradient(135deg,#111,#222)}.values-section h2{text-align:center;font-size:3rem;color:#ff6b35;margin-bottom:3rem;font-weight:800;text-transform:uppercase;letter-spacing:2px}.values-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;max-width:1200px;margin:0 auto}.value-item{text-align:center;padding:2.5rem 1.5rem;background:#ffffff0d;border-radius:10px;border:1px solid rgba(255,255,255,.1);transition:transform .3s ease,box-shadow .3s ease}.value-item:hover{transform:translateY(-10px);box-shadow:0 15px 40px #ff6b3533;border-color:#ff6b354d}.value-icon{font-size:3rem;margin-bottom:1.5rem;display:block}.value-item h4{color:#ff6b35;font-size:1.3rem;font-weight:700;margin-bottom:1rem;text-transform:uppercase;letter-spacing:1px}.value-item p{color:#ccc;line-height:1.6;font-size:1rem}@media (max-width: 768px){.mission-content h1{font-size:2.5rem}.mission-statement{padding:2rem 1.5rem;margin:1rem}.mission-statement h2{font-size:2rem}.mission-text{font-size:1.1rem}.mission-pillars{grid-template-columns:1fr;gap:1.5rem}.cta-buttons{flex-direction:column;align-items:center}.values-section h2{font-size:2.2rem}.values-grid{grid-template-columns:1fr;gap:1.5rem}.facility-showcase h2{font-size:2.2rem}.showcase-grid{grid-template-columns:1fr;gap:1.5rem}}@media (max-width: 480px){.mission-content h1{font-size:2rem}.mission-statement{padding:1.5rem 1rem}.mission-statement h2{font-size:1.8rem}.mission-text{font-size:1rem}.pillar{padding:1.5rem}.values-section{padding:3rem 0}.values-section h2{font-size:1.8rem}.value-item{padding:2rem 1rem}}.membership-hero{height:60vh;background:linear-gradient(#000000b3,#000c),url(/equipment/mfc_cardio_full.jpg);background-size:cover;background-position:center;background-attachment:fixed;display:flex;align-items:center;position:relative}.membership-hero:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(45deg,transparent,transparent 2px,rgba(255,107,53,.03) 2px,rgba(255,107,53,.03) 4px)}.membership-hero .hero-overlay{width:100%;position:relative;z-index:2}.membership-hero .hero-content{text-align:center;max-width:800px;margin:0 auto}.membership-hero h1{font-size:3.5rem;font-weight:900;color:#fff;text-shadow:3px 3px 6px rgba(0,0,0,.9);margin-bottom:20px;letter-spacing:3px;text-transform:uppercase}.membership-hero p{font-size:1.3rem;color:#ccc;margin-bottom:30px;font-weight:500}.hero-stats{display:flex;justify-content:center;gap:60px;margin-top:40px}.stat{text-align:center}.stat-number{display:block;font-size:3rem;font-weight:900;color:#ff6b35;text-shadow:2px 2px 4px rgba(0,0,0,.8)}.stat-label{display:block;font-size:1rem;color:#ccc;text-transform:uppercase;letter-spacing:1px;margin-top:5px}.section-header{text-align:center;margin-bottom:50px}.section-header h2{font-size:3rem;font-weight:900;color:#fff;margin-bottom:15px;text-transform:uppercase;letter-spacing:2px;text-shadow:2px 2px 4px rgba(0,0,0,.8)}.section-header p{font-size:1.2rem;color:#ccc;max-width:600px;margin:0 auto}.membership-plans{padding:80px 0;background:linear-gradient(135deg,#111,#1a1a1a)}.plans-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px;margin-top:40px}.plan-card{background:linear-gradient(135deg,#1a1a1a,#0d0d0d);border:2px solid #333333;border-radius:12px;padding:30px;position:relative;transition:all .3s ease;cursor:pointer;overflow:hidden}.plan-card:hover{transform:translateY(-10px);border-color:#ff6b35;box-shadow:0 15px 40px #ff6b3533}.plan-card.popular{border-color:#ff6b35;box-shadow:0 8px 25px #ff6b354d}.plan-card.selected{border-color:#ff6b35;background:linear-gradient(135deg,#2a1a1a,#1d0d0d);box-shadow:0 15px 40px #ff6b3566}.popular-badge{position:absolute;top:-10px;left:50%;transform:translate(-50%);background:linear-gradient(45deg,#ff6b35,#ff8c42);color:#fff;padding:8px 20px;border-radius:20px;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:1px}.plan-badge{position:absolute;top:15px;right:15px;background:linear-gradient(45deg,#28a745,#20c997);color:#fff;padding:5px 12px;border-radius:15px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:1px}.plan-header{text-align:center;margin-bottom:30px}.plan-header h3{font-size:1.8rem;font-weight:700;color:#fff;margin-bottom:15px;text-transform:uppercase;letter-spacing:1px}.plan-price{margin-bottom:15px}.plan-price .price{font-size:3rem;font-weight:900;color:#ff6b35;text-shadow:2px 2px 4px rgba(0,0,0,.8)}.plan-price .period{font-size:1rem;color:#ccc;margin-left:10px}.plan-description{font-size:1rem;color:#ccc;font-style:italic}.plan-features ul{list-style:none;padding:0;margin:0}.plan-features li{display:flex;align-items:center;margin-bottom:12px;font-size:1rem;color:#ccc}.plan-features .checkmark{color:#ff6b35;font-weight:700;margin-right:12px;font-size:1.2rem}.plan-cta{width:100%;padding:15px;background:linear-gradient(45deg,#ff6b35,#ff8c42);color:#fff;border:none;border-radius:8px;font-size:1.1rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:all .3s ease;margin-top:30px}.plan-cta:hover{background:linear-gradient(45deg,#ff8c42,#ff6b35);box-shadow:0 6px 20px #ff6b3566;transform:translateY(-2px)}.family-addons{padding:80px 0;background:#0d0d0d}.addons-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px;margin-bottom:40px}.addon-card{background:linear-gradient(135deg,#1a1a1a,#0d0d0d);border:2px solid #333333;border-radius:12px;padding:30px;text-align:center;transition:all .3s ease}.addon-card:hover{border-color:#ff6b35;transform:translateY(-5px);box-shadow:0 10px 25px #ff6b3533}.addon-card h3{font-size:1.5rem;font-weight:700;color:#fff;margin-bottom:15px;text-transform:uppercase}.addon-price{font-size:2.5rem;font-weight:900;color:#ff6b35;margin-bottom:15px;text-shadow:2px 2px 4px rgba(0,0,0,.8)}.addon-card p{font-size:1rem;color:#ccc}.family-note{background:linear-gradient(135deg,#2a1a1a,#1d0d0d);border:1px solid #ff6b35;border-radius:8px;padding:20px;text-align:center;margin-top:30px}.family-note p{font-size:1.1rem;color:#ccc;margin:0}.family-note strong{color:#ff6b35}.membership-benefits{padding:80px 0;background:linear-gradient(135deg,#111,#1a1a1a)}.benefits-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px}.benefit-card{background:linear-gradient(135deg,#1a1a1a,#0d0d0d);border:2px solid #333333;border-radius:12px;padding:30px;text-align:center;transition:all .3s ease}.benefit-card:hover{border-color:#ff6b35;transform:translateY(-5px);box-shadow:0 10px 25px #ff6b3533}.benefit-icon{font-size:3rem;margin-bottom:20px}.benefit-card h3{font-size:1.5rem;font-weight:700;color:#fff;margin-bottom:15px;text-transform:uppercase;letter-spacing:1px}.benefit-card p{font-size:1rem;color:#ccc;line-height:1.6}.membership-cta{padding:80px 0;background:linear-gradient(135deg,#0a0a0a,#1a1a1a);text-align:center}.cta-content h2{font-size:3rem;font-weight:900;color:#fff;margin-bottom:20px;text-transform:uppercase;letter-spacing:2px;text-shadow:2px 2px 4px rgba(0,0,0,.8)}.cta-content p{font-size:1.3rem;color:#ccc;margin-bottom:40px;max-width:600px;margin-left:auto;margin-right:auto}.cta-buttons{display:flex;gap:20px;justify-content:center;flex-wrap:wrap}.btn-primary,.btn-secondary{padding:15px 30px;font-size:1.1rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;border:none;cursor:pointer;transition:all .3s ease;border-radius:8px}.membership-faq{padding:80px 0;background:#0d0d0d}.faq-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:30px}.faq-item{background:linear-gradient(135deg,#1a1a1a,#0d0d0d);border:2px solid #333333;border-radius:12px;padding:25px;transition:all .3s ease}.faq-item:hover{border-color:#ff6b35;box-shadow:0 8px 25px #ff6b3533}.faq-item h3{font-size:1.3rem;font-weight:700;color:#ff6b35;margin-bottom:15px;text-transform:uppercase;letter-spacing:1px}.faq-item p{font-size:1rem;color:#ccc;line-height:1.6}.nav a.active{color:#ff6b35;text-shadow:0 0 8px rgba(255,107,53,.6)}.nav a.active:after{width:100%}@media (max-width: 768px){.membership-hero h1{font-size:2.5rem}.hero-stats{flex-direction:column;gap:30px}.section-header h2{font-size:2rem}.plans-grid,.addons-grid,.benefits-grid,.faq-grid{grid-template-columns:1fr}.cta-content h2{font-size:2rem}.cta-buttons{flex-direction:column;align-items:center}.btn-primary,.btn-secondary{width:100%;max-width:300px}}@media (max-width: 480px){.membership-hero h1{font-size:2rem}.membership-hero p{font-size:1.1rem}.stat-number{font-size:2rem}.plan-card{padding:20px}.plan-price .price{font-size:2.5rem}.addon-price{font-size:2rem}.benefit-icon{font-size:2.5rem}}.membership-signup-overlay{position:fixed;inset:0;background-color:#000c;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px;overflow-y:auto}.membership-signup-modal{background:#fff;border-radius:12px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;margin:auto;position:relative}.signup-header{display:flex;justify-content:space-between;align-items:center;padding:24px 32px;border-bottom:1px solid #e5e7eb;background:linear-gradient(135deg,#1f2937,#374151);color:#fff;border-radius:12px 12px 0 0}.signup-header h2{margin:0;font-size:24px;font-weight:600}.close-btn{background:none;border:none;font-size:28px;color:#fff;cursor:pointer;padding:0;width:32px;height:32px;display:flex;justify-content:center;align-items:center;border-radius:50%;transition:background-color .2s}.close-btn:hover{background-color:#ffffff1a}.signup-content{padding:32px}.selected-plan-summary{background:linear-gradient(135deg,#f3f4f6,#e5e7eb);padding:24px;border-radius:8px;margin-bottom:24px;border-left:4px solid #3b82f6}.selected-plan-summary h3{margin:0 0 12px;color:#1f2937;font-size:20px;font-weight:600}.selected-plan-summary .plan-price{display:flex;align-items:baseline;margin-bottom:8px}.selected-plan-summary .price{font-size:32px;font-weight:700;color:#3b82f6;margin-right:8px}.selected-plan-summary .period{font-size:16px;color:#6b7280}.selected-plan-summary p{margin:0;color:#4b5563}.auth-required{text-align:center;padding:40px 20px}.auth-required p{font-size:16px;color:#4b5563;margin-bottom:24px}.auth-buttons{display:flex;gap:16px;justify-content:center}.signup-form{display:flex;flex-direction:column;gap:24px}.membership-signup-modal .user-info,.plan-selection,.payment-info{padding:20px;border:1px solid #e5e7eb!important;border-radius:8px!important;background:#f9fafb!important}.plan-features{padding:12px 20px;border:none;border-radius:8px;background:transparent}.membership-signup-modal .user-info h4,.plan-selection h4,.payment-info h4{margin:0 0 16px;color:#1f2937;font-size:18px;font-weight:600}.plan-features h4{margin:0 0 8px;color:#1f2937;font-size:18px;font-weight:600}.membership-signup-modal .user-info p{margin:8px 0;color:#4b5563!important}.membership-signup-modal .plan-options{display:flex;flex-direction:column;gap:12px}.membership-signup-modal .plan-option{display:flex;align-items:center;padding:16px;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s;background:#f9fafb}.membership-signup-modal .plan-option:hover{border-color:#3b82f6;background:#f8fafc}.membership-signup-modal .plan-option input[type=radio]{margin-right:12px;transform:scale(1.2)}.membership-signup-modal .plan-option input[type=radio]:checked+.plan-details{color:#3b82f6}.membership-signup-modal .plan-option:has(input:checked){border-color:#3b82f6;background:#eff6ff}.membership-signup-modal .plan-details{display:flex;align-items:center;gap:12px;flex:1}.membership-signup-modal .plan-name{font-weight:600;flex:1}.membership-signup-modal .plan-price{font-weight:700;color:#059669}.membership-signup-modal .plan-duration{font-size:14px;color:#6b7280}.membership-signup-modal .plan-features ul{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:4px}.membership-signup-modal .plan-features li{color:#059669;font-weight:500;padding:2px 0}.payment-info{background:linear-gradient(135deg,#fef3c7,#fde68a);border-color:#f59e0b}.payment-note{color:#92400e;font-style:italic;margin-bottom:16px;padding:12px;background:#f59e0b1a;border-radius:6px;border-left:3px solid #f59e0b}.total{font-size:20px;color:#1f2937;text-align:center;padding:16px;background:#fff;border-radius:8px;border:2px solid #f59e0b}.error-message{color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;padding:12px;text-align:center;font-weight:500}.signup-actions{display:flex;gap:16px;justify-content:flex-end;padding-top:24px;border-top:1px solid #e5e7eb}.btn-primary,.btn-secondary{padding:12px 24px;border-radius:8px;font-weight:600;font-size:16px;cursor:pointer;transition:all .2s;border:none;min-width:120px}.btn-primary{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.btn-primary:disabled{background:#9ca3af;cursor:not-allowed;transform:none;box-shadow:none}.btn-secondary{background:#fff;color:#374151;border:2px solid #d1d5db}.btn-secondary:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.btn-secondary:disabled{background:#f3f4f6;color:#9ca3af;cursor:not-allowed}@media (max-width: 768px){.membership-signup-overlay{padding:10px}.signup-header,.signup-content{padding:20px}.signup-header h2{font-size:20px}.auth-buttons{flex-direction:column}.signup-actions{flex-direction:column-reverse}.membership-signup-modal .plan-details{flex-direction:column;align-items:flex-start;gap:4px}.membership-signup-modal .plan-features ul{grid-template-columns:1fr}}@media (max-width: 480px){.selected-plan-summary .plan-price{flex-direction:column;align-items:flex-start}.selected-plan-summary .price{font-size:28px}}.family-addons-section{padding:20px;border:1px solid #e5e7eb;border-radius:8px;background:#f9fafb}.family-addons-section h4{margin:0 0 8px;color:#1f2937;font-size:18px;font-weight:600}.family-addons-section>p{margin:0 0 20px;color:#6b7280}.family-addon-option{display:flex;justify-content:space-between;align-items:center;padding:16px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;margin-bottom:12px;transition:all .2s}.family-addon-option:hover{border-color:#3b82f6;box-shadow:0 2px 4px #0000000d}.addon-info{flex:1}.addon-name{display:block;font-weight:600;color:#1f2937;margin-bottom:4px}.addon-price{display:inline-block;color:#059669;font-weight:700;font-size:18px;margin-bottom:4px}.addon-description{font-size:14px;color:#6b7280;margin:0}.addon-selector{display:flex;align-items:center;gap:12px;background:#f3f4f6;padding:4px;border-radius:6px}.qty-btn{width:32px;height:32px;border:none;background:#fff;border-radius:4px;font-size:20px;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;box-shadow:none;text-shadow:none}.qty-btn:hover:not(:disabled){background:#3b82f6;color:#fff;transform:scale(1.1);box-shadow:none}.qty-btn:disabled{background:#e5e7eb;color:#9ca3af;cursor:not-allowed}.qty-value{min-width:30px;text-align:center;font-weight:600;font-size:16px;color:#1f2937;text-shadow:none;box-shadow:none}.family-summary{margin-top:16px;padding:16px;background:#eff6ff;border:1px solid #3b82f6;border-radius:6px}.family-summary h5{margin:0 0 12px;color:#1e40af;font-size:16px;font-weight:600}.family-summary ul{list-style:none;padding:0;margin:0}.family-summary li{color:#1e40af;padding:4px 0;font-weight:500}.price-breakdown{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.price-line{display:flex;justify-content:space-between;align-items:center;color:#4b5563}.price-line span:first-child{flex:1}.price-line span:last-child{font-weight:600}.total-line{padding-top:8px;border-top:2px solid #f59e0b;margin-top:8px;color:#1f2937;font-size:18px}.duration-note{text-align:center;color:#6b7280;font-size:14px;margin:0}@media (max-width: 768px){.family-addon-option{flex-direction:column;gap:12px}.addon-info{text-align:center}.addon-selector{width:100%;justify-content:center}}.testing-mode-banner{display:flex;align-items:center;gap:.75rem;background:#ffd60a;color:#1a1a1a;font-weight:700;border:2px solid #b8860b;line-height:1.4}.testing-mode-banner__icon{font-size:1.25rem;flex-shrink:0}.testing-mode-banner__text{font-size:.9rem}.testing-mode-banner--global{width:100%;padding:.6rem 1rem;border-left:none;border-right:none;border-top:none;position:sticky;top:0;z-index:9999;justify-content:center;text-align:center}.testing-mode-banner--inline{padding:.75rem 1rem;border-radius:6px;margin:.75rem 0}.hero{height:70vh;background:linear-gradient(#000000b3,#000c),url(/frontdesk.webp);background-size:cover;background-position:center;background-attachment:fixed;display:flex;align-items:center;position:relative}.privacy-page{min-height:100vh;background-color:#0a0a0a;color:#fff}.privacy-hero{height:50vh;background:linear-gradient(#000000b3,#000c),url(/frontdesk.webp);background-size:cover;background-position:center;background-attachment:fixed;display:flex;align-items:center;position:relative}.privacy-hero:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(45deg,transparent,transparent 2px,rgba(255,107,53,.03) 2px,rgba(255,107,53,.03) 4px)}.privacy-hero .hero-content h1{font-size:3.5rem;font-weight:900;color:#fff;text-shadow:3px 3px 6px rgba(0,0,0,.9);margin-bottom:20px;letter-spacing:3px;text-transform:uppercase;text-align:center}.privacy-hero .hero-content p{font-size:1.2rem;color:#ccc;text-align:center;max-width:600px;margin:0 auto;line-height:1.6}.privacy-content{padding:80px 0;background:linear-gradient(135deg,#111,#1a1a1a)}.policy-section{background:#1a1a1acc;padding:50px;border-radius:12px;border:2px solid #333333;box-shadow:0 10px 30px #00000080}.policy-intro{margin-bottom:40px;padding:30px;background:#ff6b350d;border-radius:8px;border-left:4px solid #ff6b35}.policy-intro p{font-size:1.1rem;color:#ccc;line-height:1.7;margin:0}.policy-item{margin-bottom:40px;padding-bottom:30px;border-bottom:1px solid #333333}.policy-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.policy-item h2{font-size:1.8rem;font-weight:900;color:#ff6b35;margin-bottom:20px;text-transform:uppercase;letter-spacing:2px;position:relative}.policy-item h2:after{content:"";position:absolute;bottom:-8px;left:0;width:60px;height:3px;background:linear-gradient(45deg,#ff6b35,#ff8c42);border-radius:2px}.policy-item h3{font-size:1.3rem;font-weight:700;color:#fff;margin:25px 0 15px;text-transform:uppercase;letter-spacing:1px}.policy-item p{font-size:1rem;color:#ccc;line-height:1.7;margin-bottom:15px}.policy-item ul{margin:15px 0 20px;padding-left:0;list-style:none}.policy-item li{font-size:1rem;color:#ccc;line-height:1.6;margin-bottom:10px;padding-left:25px;position:relative}.policy-item li:before{content:"▶";position:absolute;left:0;color:#ff6b35;font-size:.8rem;top:2px}.policy-item li strong{color:#fff;font-weight:700}.policy-item a{color:#ff6b35;text-decoration:none;transition:color .3s ease}.policy-item a:hover{color:#ff8c42;text-decoration:underline}@media (max-width: 1024px){.privacy-hero .hero-content h1{font-size:2.8rem}.policy-section{padding:40px}}@media (max-width: 768px){.privacy-hero{height:40vh}.privacy-hero .hero-content h1{font-size:2.2rem}.privacy-hero .hero-content p{font-size:1.1rem}.privacy-content{padding:60px 0}.policy-section{padding:30px 20px}.policy-item h2{font-size:1.5rem}.policy-item h3{font-size:1.2rem}.policy-intro,.contact-details{padding:20px}}@media (max-width: 480px){.privacy-hero .hero-content h1{font-size:1.8rem}.privacy-hero .hero-content p{font-size:1rem}.policy-section{padding:20px 15px}.policy-item h2{font-size:1.3rem}.policy-item h3{font-size:1.1rem}.policy-intro,.contact-details{padding:15px}.policy-item li{padding-left:20px}}*{margin:0;padding:0;box-sizing:border-box}.app{min-height:100vh;background-color:#0a0a0a;color:#fff;font-family:Arial Black,Arial,sans-serif;line-height:1.4}.container{max-width:1200px;margin:0 auto;padding:0 20px}.header{background:linear-gradient(135deg,#1a1a1a,#0d0d0d);border-bottom:3px solid #ff6b35;box-shadow:0 4px 20px #000c;position:sticky;top:0;z-index:1000}.header .container{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;gap:40px}.auth-section{display:flex;align-items:center;flex-shrink:0}.auth-buttons{display:flex;gap:15px}.auth-button{padding:12px 24px;text-decoration:none;font-weight:700;font-size:.9rem;text-transform:uppercase;letter-spacing:1px;border-radius:4px;transition:all .3s ease;border:2px solid #ff6b35}.auth-button.login{background:transparent;color:#ff6b35}.auth-button.login:hover{background:#ff6b35;color:#fff;box-shadow:0 4px 15px #ff6b3566;transform:translateY(-2px)}.auth-button.register{background:#ff6b35;color:#fff}.auth-button.register:hover{background:#ff8c42;box-shadow:0 4px 15px #ff6b3599;transform:translateY(-2px)}.logo-section{display:flex;flex-direction:column;align-items:center;gap:8px}.logo{height:50px;width:auto;filter:drop-shadow(0 0 10px rgba(255,107,53,.3))}.logo-text{text-align:center}.logo-text h1{font-size:1.6rem;font-weight:900;color:#fff;text-shadow:2px 2px 4px rgba(0,0,0,.8);letter-spacing:2px;margin-bottom:2px}.tagline{font-size:.8rem;color:#ff6b35;font-weight:700;letter-spacing:1px;text-transform:uppercase}.nav ul{display:flex;list-style:none;gap:40px;flex:1;justify-content:center}.nav a{color:#ccc;text-decoration:none;font-weight:700;font-size:.95rem;letter-spacing:1px;text-transform:uppercase;transition:all .3s ease;position:relative}.nav a:hover{color:#ff6b35;text-shadow:0 0 8px rgba(255,107,53,.6)}.nav a:after{content:"";position:absolute;bottom:-5px;left:0;width:0;height:2px;background:#ff6b35;transition:width .3s ease}.nav a:hover:after{width:100%}.hero{height:70vh;background:linear-gradient(#000000b3,#000c),url(/frontdesk.webp);background-size:cover;background-position:center;background-attachment:fixed;display:flex;align-items:center;position:relative}.hero:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(45deg,transparent,transparent 2px,rgba(255,107,53,.03) 2px,rgba(255,107,53,.03) 4px)}.hero-overlay{width:100%;position:relative;z-index:2}.hero-content{text-align:center;max-width:800px;margin:0 auto}.hero-content h2{font-size:4rem;font-weight:900;color:#fff;text-shadow:3px 3px 6px rgba(0,0,0,.9);margin-bottom:20px;letter-spacing:3px;text-transform:uppercase}.hero-description{font-size:1.3rem;color:#ccc;margin-bottom:15px;font-weight:500}.hero-stats{font-size:1.1rem;color:#ff6b35;font-weight:700;margin-bottom:40px;letter-spacing:2px;text-transform:uppercase}.hero-buttons{display:flex;gap:20px;justify-content:center;flex-wrap:wrap}.btn-primary,.btn-secondary{padding:15px 30px;font-size:1.1rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;border:none;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden}.btn-primary{background:linear-gradient(45deg,#ff6b35,#ff8c42);color:#fff;box-shadow:0 4px 15px #ff6b3566}.btn-primary:hover{background:linear-gradient(45deg,#ff8c42,#ff6b35);box-shadow:0 6px 20px #ff6b3599;transform:translateY(-2px)}.btn-secondary{background:transparent;color:#fff;border:2px solid #ffffff}.btn-secondary:hover{background:#fff;color:#0a0a0a;box-shadow:0 4px 15px #ffffff4d;transform:translateY(-2px)}.equipment-gallery{padding:80px 0;background:linear-gradient(135deg,#111,#1a1a1a)}.equipment-gallery h3{text-align:center;font-size:3rem;font-weight:900;color:#fff;margin-bottom:50px;text-transform:uppercase;letter-spacing:2px;text-shadow:2px 2px 4px rgba(0,0,0,.8)}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:30px;margin-top:40px}.gallery-item{position:relative;overflow:hidden;border-radius:8px;box-shadow:0 8px 25px #0009;transition:transform .3s ease}.gallery-item:hover{transform:translateY(-10px)}.gallery-item img{width:100%;height:250px;object-fit:cover;transition:transform .3s ease}.gallery-item:hover img{transform:scale(1.1)}.gallery-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#000000e6);color:#fff;padding:30px 20px 20px;transform:translateY(100%);transition:transform .3s ease}.gallery-item:hover .gallery-overlay{transform:translateY(0)}.gallery-overlay h4{font-size:1.5rem;font-weight:700;color:#ff6b35;margin-bottom:8px;text-transform:uppercase;letter-spacing:1px}.gallery-overlay p{font-size:1rem;color:#ccc}.contact-info{padding:60px 0;background:#0d0d0d;border-top:2px solid #333333}.contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:40px;text-align:center}.contact-item h4{font-size:1.3rem;color:#ff6b35;margin-bottom:15px;font-weight:700;text-transform:uppercase;letter-spacing:1px}.contact-item p{font-size:1.1rem;color:#ccc;line-height:1.6}.footer{background:linear-gradient(135deg,#0a0a0a,#1a1a1a);border-top:3px solid #ff6b35;padding:50px 0 20px}.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:40px;margin-bottom:30px}.footer-logo{height:50px;width:auto;margin-bottom:15px;filter:drop-shadow(0 0 8px rgba(255,107,53,.3))}.footer-section h5{font-size:1.2rem;color:#ff6b35;margin-bottom:20px;font-weight:700;text-transform:uppercase;letter-spacing:1px}.footer-section p{color:#ccc;line-height:1.6;margin-bottom:10px}.footer-section ul{list-style:none}.footer-section ul li{margin-bottom:8px}.footer-section ul li a{color:#ccc;text-decoration:none;transition:color .3s ease}.footer-section ul li a:hover{color:#ff6b35}.social-links{display:flex;gap:15px;flex-wrap:wrap}.social-link{color:#ccc;text-decoration:none;font-weight:700;font-size:.9rem;transition:all .3s ease;text-transform:uppercase;letter-spacing:1px}.social-link:hover{color:#ff6b35;text-shadow:0 0 8px rgba(255,107,53,.6)}.footer-bottom{border-top:1px solid #333333;padding-top:20px;text-align:center}.footer-bottom p{color:#888;font-size:.9rem}@media (max-width: 768px){.header .container{flex-direction:column;gap:20px}.nav ul{gap:20px;flex-wrap:wrap;justify-content:center}.hero-content h2{font-size:2.5rem}.hero-buttons{flex-direction:column;align-items:center}.btn-primary,.btn-secondary{width:100%;max-width:300px}.equipment-gallery h3{font-size:2rem}.gallery-grid{grid-template-columns:1fr}.contact-grid{grid-template-columns:1fr;gap:30px}.footer-content{grid-template-columns:1fr;text-align:center}.social-links{justify-content:center}}@media (max-width: 480px){.logo-text h1{font-size:1.4rem}.hero-content h2{font-size:2rem}.hero-description{font-size:1.1rem}.hero-stats{font-size:1rem}}.terms-page{min-height:100vh;background-color:#0a0a0a;color:#fff}.terms-hero{height:50vh;background:linear-gradient(#000000b3,#000c),url(/wrestle.webp);background-size:cover;background-position:center;background-attachment:fixed;display:flex;align-items:center;position:relative}.terms-hero:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(45deg,transparent,transparent 2px,rgba(255,107,53,.03) 2px,rgba(255,107,53,.03) 4px)}.terms-hero .hero-content h1{font-size:3.5rem;font-weight:900;color:#fff;text-shadow:3px 3px 6px rgba(0,0,0,.9);margin-bottom:20px;letter-spacing:3px;text-transform:uppercase;text-align:center}.terms-hero .hero-content p{font-size:1.2rem;color:#ccc;text-align:center;max-width:600px;margin:0 auto;line-height:1.6}.terms-content{padding:80px 0;background:linear-gradient(135deg,#111,#1a1a1a)}.content-wrapper{max-width:900px;margin:0 auto}.terms-section{background:#1a1a1acc;padding:50px;border-radius:12px;border:2px solid #333333;box-shadow:0 10px 30px #00000080}.last-updated{font-size:.9rem;color:#888;font-style:italic;margin-bottom:30px;text-align:center;padding:10px;background:#ff6b351a;border-radius:6px;border:1px solid rgba(255,107,53,.3)}.terms-intro{margin-bottom:40px;padding:30px;background:#ff6b350d;border-radius:8px;border-left:4px solid #ff6b35}.terms-intro p{font-size:1.1rem;color:#ccc;line-height:1.7;margin:0}.terms-item{margin-bottom:40px;padding-bottom:30px;border-bottom:1px solid #333333}.terms-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.terms-item h2{font-size:1.8rem;font-weight:900;color:#ff6b35;margin-bottom:20px;text-transform:uppercase;letter-spacing:2px;position:relative}.terms-item h2:after{content:"";position:absolute;bottom:-8px;left:0;width:60px;height:3px;background:linear-gradient(45deg,#ff6b35,#ff8c42);border-radius:2px}.terms-item h3{font-size:1.3rem;font-weight:700;color:#fff;margin:25px 0 15px;text-transform:uppercase;letter-spacing:1px}.terms-item p{font-size:1rem;color:#ccc;line-height:1.7;margin-bottom:15px}.terms-item ul{margin:15px 0 20px;padding-left:0;list-style:none}.terms-item li{font-size:1rem;color:#ccc;line-height:1.6;margin-bottom:10px;padding-left:25px;position:relative}.terms-item li:before{content:"▶";position:absolute;left:0;color:#ff6b35;font-size:.8rem;top:2px}.terms-item li strong{color:#fff;font-weight:700}.terms-item a{color:#ff6b35;text-decoration:none;transition:color .3s ease}.terms-item a:hover{color:#ff8c42;text-decoration:underline}.contact-details{background:#ff6b350d;padding:25px;border-radius:8px;border:1px solid rgba(255,107,53,.2);margin-top:20px}.contact-details p{margin-bottom:8px;color:#fff}.contact-details p:last-child{margin-bottom:0}.contact-details strong{color:#ff6b35;font-size:1.1rem}@media (max-width: 1024px){.terms-hero .hero-content h1{font-size:2.8rem}.terms-section{padding:40px}}@media (max-width: 768px){.terms-hero{height:40vh}.terms-hero .hero-content h1{font-size:2.2rem}.terms-hero .hero-content p{font-size:1.1rem}.terms-content{padding:60px 0}.terms-section{padding:30px 20px}.terms-item h2{font-size:1.5rem}.terms-item h3{font-size:1.2rem}.terms-intro,.contact-details{padding:20px}}@media (max-width: 480px){.terms-hero .hero-content h1{font-size:1.8rem}.terms-hero .hero-content p{font-size:1rem}.terms-section{padding:20px 15px}.terms-item h2{font-size:1.3rem}.terms-item h3{font-size:1.1rem}.terms-intro,.contact-details{padding:15px}.terms-item li{padding-left:20px}}.register-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a1a1a,#2d2d2d);padding:20px}.register-form{background:#fff;border-radius:12px;box-shadow:0 20px 40px #0000001a;padding:40px;width:100%;max-width:500px}.register-header{text-align:center;margin-bottom:30px}.register-header h1{color:#333;font-size:2rem;font-weight:700;margin-bottom:8px}.register-header p{color:#666;font-size:1rem;margin:0}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.form-group input[type=date]{color:#333!important;font-family:inherit;position:relative;background-color:#fff!important;-webkit-appearance:none;-moz-appearance:textfield}.form-group input[type=date]::-webkit-calendar-picker-indicator{background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%23666'%3e%3cpath fill-rule='evenodd' d='M6 2a1 1 0 00-1 1v1H4a2 2 0 00-2 2v10a2 2 0 002 2h12a2 2 0 002-2V6a2 2 0 00-2-2h-1V3a1 1 0 10-2 0v1H7V3a1 1 0 00-1-1zm0 5a1 1 0 000 2h8a1 1 0 100-2H6z' clip-rule='evenodd'/%3e%3c/svg%3e") no-repeat;background-size:20px 20px;width:20px;height:20px;cursor:pointer;margin-left:8px;opacity:.7}.form-group input[type=date]::-webkit-calendar-picker-indicator:hover{opacity:1}.form-group input[type=date]::-webkit-inner-spin-button,.form-group input[type=date]::-webkit-clear-button{display:none}.form-group input[type=date]::-webkit-datetime-edit-fields-wrapper{padding:0;display:flex;align-items:center}.form-group input[type=date]::-webkit-datetime-edit-text{color:#333!important;padding:0 .2em}.form-group input[type=date]::-webkit-datetime-edit-month-field,.form-group input[type=date]::-webkit-datetime-edit-day-field,.form-group input[type=date]::-webkit-datetime-edit-year-field{color:#333!important;background:transparent!important;border:none!important;padding:2px 4px;border-radius:3px}.form-group input[type=date]:focus::-webkit-datetime-edit-month-field,.form-group input[type=date]:focus::-webkit-datetime-edit-day-field,.form-group input[type=date]:focus::-webkit-datetime-edit-year-field{color:#ff6b35!important;background-color:#ff6b351a!important}.form-group input[type=date]::-moz-focus-inner{border:0}.form-group input[type=date]:invalid{color:#999}.form-group input[type=date]:valid{color:#333!important}.form-group input[type=password]{color:#333!important;background-color:#fff!important;font-family:inherit;-webkit-text-security:disc}.form-group input[type=password]:focus{color:#333!important;background-color:#fff!important}.form-group input[type=password]:valid{color:#333!important;background-color:#fff!important}.form-group input[type=password]:invalid{color:#333!important;background-color:#fff!important}.form-group input[type=password]::placeholder{color:#999!important;opacity:1}.form-group input[type=text],.form-group input[type=email]{color:#333!important;background-color:#fff!important}.form-group input[type=text]:focus,.form-group input[type=email]:focus{color:#333!important;background-color:#fff!important}.form-group input[type=text]::placeholder,.form-group input[type=email]::placeholder{color:#999!important;opacity:1}.register-button{width:100%;background:linear-gradient(135deg,#ff6b35,#f7931e);color:#fff;border:none;padding:14px 24px;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:10px}.register-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #ff6b354d}.register-button:disabled{opacity:.7;cursor:not-allowed;transform:none;box-shadow:none}.register-footer{text-align:center;margin-top:30px;padding-top:20px;border-top:1px solid #e1e5e9}.register-footer p{margin:10px 0;color:#666;font-size:.9rem}.register-footer a{color:#ff6b35;text-decoration:none;font-weight:600}.register-footer a:hover{text-decoration:underline}.password-requirements{margin-top:10px;padding:12px;background-color:#f8f9fa;border-radius:6px;border:1px solid #e1e5e9}.password-requirements p{margin:0 0 8px;font-size:.85rem;font-weight:600;color:#666}.password-requirements ul{margin:0;padding-left:20px;list-style:none}.password-requirements li{font-size:.8rem;color:#999;margin-bottom:4px;position:relative}.password-requirements li:before{content:"✗";position:absolute;left:-16px;color:#e74c3c;font-weight:700}.password-requirements li.valid{color:#27ae60}.password-requirements li.valid:before{content:"✓";color:#27ae60}.terms-text{font-size:.8rem!important;color:#999!important;line-height:1.4}.success-message{text-align:center;padding:40px 20px}.success-message h2{color:#27ae60;font-size:1.8rem;margin-bottom:15px}.success-message p{color:#666;font-size:1rem;margin:0}@media (max-width: 768px){.register-container{padding:10px}.register-form{padding:30px 20px}.register-header h1{font-size:1.6rem}.form-row{grid-template-columns:1fr;gap:0}.form-group{margin-bottom:15px}}@media (max-width: 480px){.register-form{padding:20px 15px}.register-header h1{font-size:1.4rem}.form-group input{padding:10px 12px}.register-button{padding:12px 20px}}.register-form .verification-warning{text-align:center;padding:10px 0}.register-form .verification-icon{color:#f7931e;margin-bottom:16px}.register-form .verification-warning h2{color:#333;font-size:1.4rem;margin-bottom:12px}.register-form .verification-warning p{color:#666;font-size:.95rem;line-height:1.6;margin-bottom:16px}.register-form .resend-button{width:100%;background:linear-gradient(135deg,#ff6b35,#f7931e);color:#fff;border:none;padding:14px 24px;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;margin-bottom:12px}.register-form .resend-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #ff6b354d}.register-form .resend-button:disabled{opacity:.7;cursor:not-allowed}.register-form .continue-button{width:100%;background:transparent;color:#666;border:2px solid #e1e5e9;padding:12px 24px;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .3s ease}.register-form .continue-button:hover{border-color:#999;color:#333}.register-form .resend-success{color:#27ae60;font-weight:600}.register-form .resend-error{color:#e74c3c;font-size:.9rem}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a1a1a,#2d2d2d);padding:20px}.login-form{background:#fff;border-radius:12px;box-shadow:0 20px 40px #0000001a;padding:40px;width:100%;max-width:400px}.login-header{text-align:center;margin-bottom:30px}.login-header h1{color:#333;font-size:2rem;font-weight:700;margin-bottom:8px}.login-header p{color:#666;font-size:1rem;margin:0}.form-group label{display:block;color:#333;font-weight:600;margin-bottom:8px;font-size:.9rem}.form-group input{width:100%;padding:12px 16px;border:2px solid #e1e5e9;border-radius:8px;font-size:1rem;transition:all .3s ease;background:#fff}.form-group input.error{border-color:#e74c3c;background-color:#fdf2f2}.form-group input:disabled{background-color:#f8f9fa;cursor:not-allowed;opacity:.7}.error-text{color:#e74c3c;font-size:.85rem;margin-top:5px;display:block}.error-message{background-color:#fdf2f2;border:1px solid #e74c3c;color:#e74c3c;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:.9rem}.general-error{text-align:center}.login-button{width:100%;background:linear-gradient(135deg,#ff6b35,#f7931e);color:#fff;border:none;padding:14px 24px;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:10px}.login-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #ff6b354d}.login-button:disabled{opacity:.7;cursor:not-allowed;transform:none;box-shadow:none}.login-footer{text-align:center;margin-top:30px;padding-top:20px;border-top:1px solid #e1e5e9}.login-footer p{margin:10px 0;color:#666;font-size:.9rem}.login-footer a{color:#ff6b35;text-decoration:none;font-weight:600}.login-footer a:hover{text-decoration:underline}@media (max-width: 768px){.login-container{padding:10px}.login-form{padding:30px 20px}.login-header h1{font-size:1.6rem}}@media (max-width: 480px){.login-form{padding:20px 15px}.login-header h1{font-size:1.4rem}.form-group input{padding:10px 12px}.login-button{padding:12px 20px}}.verification-warning{text-align:center;padding:10px 0}.verification-icon{color:#f7931e;margin-bottom:16px}.verification-warning h2{color:#333;font-size:1.4rem;margin-bottom:12px}.verification-warning p{color:#666;font-size:.95rem;line-height:1.6;margin-bottom:16px}.resend-button{width:100%;background:linear-gradient(135deg,#ff6b35,#f7931e);color:#fff;border:none;padding:14px 24px;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;margin-bottom:12px}.resend-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #ff6b354d}.resend-button:disabled{opacity:.7;cursor:not-allowed}.continue-button{width:100%;background:transparent;color:#666;border:2px solid #e1e5e9;padding:12px 24px;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .3s ease}.continue-button:hover{border-color:#999;color:#333}.resend-success{color:#27ae60;font-weight:600}.resend-error{color:#e74c3c;font-size:.9rem}.user-form-overlay{position:fixed;inset:0;background:#000000d9;display:flex;justify-content:center;align-items:center;z-index:2000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.user-form-modal{background:linear-gradient(135deg,#1a1a1a,#242424);border-radius:16px;max-width:550px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0009,0 0 0 1px #ff6b3533;border:1px solid #333}.user-form-header{display:flex;justify-content:space-between;align-items:center;padding:24px 28px;border-bottom:2px solid #ff6b35;background:#0d0d0d;border-radius:16px 16px 0 0}.user-form-header h3{color:#fff;font-size:1.4rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;margin:0}.close-btn{background:transparent;border:2px solid #666;color:#888;font-size:1.5rem;width:40px;height:40px;border-radius:50%;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;line-height:1}.close-btn:hover{background:#dc354533;border-color:#ff6b6b;color:#ff6b6b}.user-form{padding:28px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-group{margin-bottom:24px}.form-group label{display:block;color:#ccc;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px}.password-note{font-weight:400;text-transform:none;color:#888;font-size:.8rem}.form-group input[type=text],.form-group input[type=email],.form-group input[type=password],.form-group input[type=date]{width:100%;padding:14px 16px;background:#0d0d0d;border:2px solid #333;border-radius:8px;color:#fff;font-size:1rem;transition:all .2s ease}.form-group input:focus{outline:none;border-color:#ff6b35;box-shadow:0 0 0 3px #ff6b3533}.form-group input::placeholder{color:#666}.form-group input[type=date]::-webkit-calendar-picker-indicator{filter:invert(1);cursor:pointer}.roles-checkboxes{display:flex;flex-direction:column;gap:12px}.checkbox-label{display:flex;align-items:center;gap:12px;color:#fff;font-size:.95rem;cursor:pointer;padding:12px 16px;background:#0d0d0d;border:1px solid #333;border-radius:8px;transition:all .2s ease}.checkbox-label:hover{border-color:#ff6b35;background:#ff6b3514}.checkbox-label input[type=checkbox]{width:20px;height:20px;accent-color:#ff6b35;cursor:pointer}.role-description{color:#888;font-size:.85rem}.form-actions{display:flex;justify-content:flex-end;gap:16px;margin-top:32px;padding-top:24px;border-top:1px solid #333}.form-actions button{padding:14px 28px;border-radius:8px;font-size:.9rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:all .3s ease}.form-actions button[type=button]{background:transparent;color:#ccc;border:2px solid #555}.form-actions button[type=button]:hover{border-color:#888;color:#fff}.form-actions button[type=submit]{background:linear-gradient(135deg,#ff6b35,#ff8c42);color:#fff;border:none;box-shadow:0 4px 15px #ff6b354d}.form-actions button[type=submit]:hover{background:linear-gradient(135deg,#ff8c42,#ff6b35);transform:translateY(-2px);box-shadow:0 6px 20px #ff6b3566}.form-actions button:disabled{opacity:.6;cursor:not-allowed;transform:none}.error-message{background:#dc354526;color:#ff6b6b;padding:14px 16px;border-radius:8px;margin-bottom:20px;border:1px solid rgba(220,53,69,.3)}@media (max-width: 600px){.user-form-modal{width:95%;max-height:95vh}.user-form-header,.user-form{padding:20px}.form-row{grid-template-columns:1fr;gap:0}.form-actions{flex-direction:column}.form-actions button{width:100%}}.user-list{background:linear-gradient(135deg,#1a1a1a,#242424);border-radius:12px;border:1px solid #333;overflow:hidden;box-shadow:0 4px 20px #0000004d}.users-table{width:100%;border-collapse:collapse}.users-table th{background:#0d0d0d;color:#ff6b35;padding:16px 20px;text-align:left;font-size:.85rem;text-transform:uppercase;letter-spacing:1px;font-weight:700;border-bottom:2px solid #ff6b35}.users-table td{padding:16px 20px;color:#fff;border-bottom:1px solid #333;font-size:.95rem}.users-table tbody tr{transition:background .2s ease}.users-table tbody tr:hover{background:#ff6b3514}.users-table tbody tr:last-child td{border-bottom:none}.roles-container{display:flex;flex-wrap:wrap;gap:6px}.role-badge{display:inline-block;padding:4px 12px;border-radius:20px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;background:#ff6b3533;color:#ff6b35;border:1px solid #ff6b35}.role-badge.superuser{background:#dc354533;color:#ff6b6b;border-color:#ff6b6b}.role-badge.admin{background:#ff6b3533;color:#ff6b35;border-color:#ff6b35}.role-badge.staff{background:#17a2b833;color:#5bc0de;border-color:#5bc0de}.role-badge.user{background:#28a74533;color:#5cb85c;border-color:#5cb85c}.providers-container{display:flex;flex-wrap:wrap;gap:6px}.provider-badge{display:inline-block;padding:4px 10px;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:capitalize;background:#8883;color:#ccc;border:1px solid #555}.actions{display:flex;gap:10px}.edit-btn,.delete-btn{padding:8px 16px;border:none;border-radius:6px;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;transition:all .2s ease}.edit-btn{background:linear-gradient(135deg,#ff6b35,#ff8c42);color:#fff;box-shadow:0 2px 8px #ff6b354d}.edit-btn:hover{background:linear-gradient(135deg,#ff8c42,#ff6b35);transform:translateY(-2px);box-shadow:0 4px 12px #ff6b3566}.delete-btn{background:transparent;color:#ff6b6b;border:1px solid #ff6b6b}.delete-btn:hover{background:#dc354533;transform:translateY(-2px)}.no-users{text-align:center;padding:60px 20px;color:#888;font-size:1.1rem}@media (max-width: 1024px){.users-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.users-table th,.users-table td{padding:12px 16px;white-space:nowrap}}@media (max-width: 768px){.users-table thead{display:none}.users-table tbody,.users-table tr{display:block}.users-table tr{margin-bottom:16px;border:1px solid #333;border-radius:8px;padding:16px;background:linear-gradient(135deg,#1a1a1a,#242424)}.users-table td{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid #333}.users-table td:last-child{border-bottom:none}.users-table td:before{content:attr(data-label);font-weight:700;color:#ff6b35;text-transform:uppercase;font-size:.75rem;letter-spacing:.5px}.actions{justify-content:flex-end;width:100%}}.user-management{margin-top:30px}.user-management-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid #333}.user-management-header h2{color:#ff6b35;font-size:1.5rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;margin:0}.create-user-btn{background:linear-gradient(135deg,#ff6b35,#ff8c42);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:.9rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #ff6b354d}.create-user-btn:hover{background:linear-gradient(135deg,#ff8c42,#ff6b35);transform:translateY(-2px);box-shadow:0 6px 20px #ff6b3566}@media (max-width: 768px){.user-management-header{flex-direction:column;gap:16px;text-align:center}.create-user-btn{width:100%}}.admin-dashboard{max-width:1200px;margin:0 auto;padding:40px 20px;min-height:calc(100vh - 200px)}.admin-header{margin-bottom:40px;text-align:center}.admin-header h1{color:#fff;font-size:2.5rem;font-weight:900;text-transform:uppercase;letter-spacing:2px;margin-bottom:10px;text-shadow:2px 2px 4px rgba(0,0,0,.5)}.admin-header p{color:#ccc;font-size:1.1rem}.access-denied{text-align:center;padding:60px 40px;background:linear-gradient(135deg,#1a1a1a,#2d1f1f);border-radius:12px;margin-top:50px;border:2px solid #dc3545;box-shadow:0 4px 20px #dc354533}.access-denied h2{color:#ff6b6b;margin-bottom:15px;font-size:1.8rem;text-transform:uppercase;letter-spacing:1px}.access-denied p{color:#ccc;font-size:1.1rem}.error-message{background:#dc354526;color:#ff6b6b;padding:16px 20px;border-radius:8px;margin-bottom:20px;border:1px solid rgba(220,53,69,.3)}.stats-section{margin-bottom:50px}.stats-section h2{color:#ff6b35;font-size:1.5rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;margin-bottom:24px;padding-bottom:10px;border-bottom:2px solid #333}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px}.stat-card{background:linear-gradient(135deg,#1a1a1a,#242424);padding:28px;border-radius:12px;border:1px solid #333;transition:all .3s ease;box-shadow:0 4px 15px #0000004d}.stat-card:hover{transform:translateY(-4px);border-color:#ff6b35;box-shadow:0 8px 25px #ff6b3533}.stat-card h3{color:#ccc;font-size:.85rem;text-transform:uppercase;letter-spacing:1px;margin-bottom:12px;font-weight:600}.stat-number{font-size:2.5rem;font-weight:900;color:#ff6b35;margin-bottom:4px}.stat-subtitle{color:#888;font-size:.8rem;margin-top:8px}.stat-card.recurring{border-color:#28a745}.stat-card.recurring:hover{border-color:#28a745;box-shadow:0 8px 25px #28a74533}.stat-card.recurring .stat-number{color:#28a745}.stat-card.onetime{border-color:#17a2b8}.stat-card.onetime:hover{border-color:#17a2b8;box-shadow:0 8px 25px #17a2b833}.stat-card.onetime .stat-number{color:#17a2b8}@media (max-width: 768px){.admin-dashboard{padding:30px 15px}.admin-header h1{font-size:1.8rem}.stats-grid{grid-template-columns:1fr 1fr;gap:16px}.stat-card{padding:20px}.stat-number{font-size:2rem}}@media (max-width: 480px){.stats-grid{grid-template-columns:1fr}}.sub-member-management{background-color:#fff;border-radius:8px;padding:24px;margin-top:24px;border:1px solid #e0e0e0}.sub-member-management .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:12px}.sub-member-management h3{margin:0;color:#333;font-size:1.25rem}.slots-info{display:flex;align-items:center;gap:4px;background-color:#f5f5f5;padding:8px 16px;border-radius:20px;font-size:.9rem}.slots-used{font-weight:700;color:#ff6b35}.slots-separator{color:#999}.slots-total{font-weight:700;color:#333}.slots-label{color:#666;margin-left:4px}.sub-member-management .error-message{background-color:#ffebee;color:#c62828;padding:12px 16px;border-radius:6px;margin-bottom:16px;border-left:4px solid #c62828}.sub-member-management .success-message{background-color:#e8f5e9;color:#2e7d32;padding:12px 16px;border-radius:6px;margin-bottom:16px;border-left:4px solid #2e7d32}.sub-members-list{overflow-x:auto;margin-bottom:20px}.sub-members-list table{width:100%;border-collapse:collapse;font-size:.9rem}.sub-members-list th,.sub-members-list td{padding:12px;text-align:left;border-bottom:1px solid #e0e0e0}.sub-members-list th{background-color:#f5f5f5;font-weight:600;color:#333}.sub-members-list tbody tr:hover{background-color:#fafafa}.sub-members-list td.actions{display:flex;gap:8px;flex-wrap:wrap}.status-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase}.status-accepted{background-color:#e8f5e9;color:#2e7d32}.status-pending{background-color:#fff3e0;color:#ef6c00}.status-expired{background-color:#fce4ec;color:#c2185b}.status-revoked{background-color:#f5f5f5;color:#757575}.btn-small{padding:6px 12px;font-size:.8rem;border-radius:4px;border:none;cursor:pointer;transition:all .2s ease}.btn-small.btn-secondary{background-color:#e0e0e0;color:#333}.btn-small.btn-secondary:hover{background-color:#bdbdbd}.btn-small.btn-danger{background-color:#ffebee;color:#c62828}.btn-small.btn-danger:hover{background-color:#ffcdd2}.btn-invite{font-size:1rem;padding:12px 24px}.invite-section{margin-top:20px}.invite-form{background-color:#f9f9f9;padding:24px;border-radius:8px;border:1px solid #e0e0e0}.invite-form h4{margin:0 0 8px;color:#333;font-size:1.1rem}.invite-form .form-description{margin:0 0 20px;color:#666;font-size:.9rem;line-height:1.5}.invite-form .form-group{margin-bottom:16px}.invite-form label{display:block;margin-bottom:6px;font-weight:500;color:#333;font-size:.9rem}.invite-form input{width:100%;padding:10px 12px;font-size:1rem;border:1px solid #ddd;border-radius:6px;box-sizing:border-box;transition:border-color .2s ease}.invite-form input:focus{outline:none;border-color:#ff6b35;box-shadow:0 0 0 3px #ff6b351a}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px;padding-top:16px;border-top:1px solid #e0e0e0}.btn-primary{background-color:#ff6b35;color:#fff;padding:10px 20px;font-size:1rem;border:none;border-radius:6px;cursor:pointer;font-weight:500;transition:all .2s ease}.btn-secondary{background-color:#e0e0e0;color:#333;padding:10px 20px;font-size:1rem;border:none;border-radius:6px;cursor:pointer;font-weight:500;transition:all .2s ease}.btn-secondary:hover{background-color:#bdbdbd}.no-slots-message{text-align:center;color:#666;font-style:italic;padding:16px;background-color:#f5f5f5;border-radius:6px}.loading{text-align:center;color:#666;padding:24px}@media (max-width: 768px){.sub-member-management .section-header{flex-direction:column;align-items:flex-start}.form-row{grid-template-columns:1fr}.sub-members-list table{font-size:.8rem}.sub-members-list th,.sub-members-list td{padding:8px}.sub-members-list td.actions,.form-actions{flex-direction:column}.form-actions button{width:100%}}.headshot-upload{background:linear-gradient(135deg,#1a1a1a,#242424);border-radius:12px;padding:30px;margin-bottom:40px;box-shadow:0 4px 20px #0000004d;border:1px solid #333}.headshot-upload h3{margin:0 0 10px;color:#ff6b35;font-size:1.5rem;font-weight:700;text-transform:uppercase;letter-spacing:1px}.headshot-description{color:#888;font-size:.95rem;margin-bottom:25px;line-height:1.6}.headshot-loading{text-align:center;padding:40px;color:#ccc;font-size:1.1rem}.headshot-error{background:#dc354526;color:#ff6b6b;padding:16px 20px;border-radius:8px;margin-bottom:20px;border:1px solid rgba(220,53,69,.3);font-size:.95rem}.headshot-success{background:#28a74526;color:#5cb85c;padding:16px 20px;border-radius:8px;margin-bottom:20px;border:1px solid rgba(40,167,69,.3);font-size:.95rem}.headshot-content{display:flex;flex-direction:column;align-items:center;gap:20px}.upload-zone{width:100%;max-width:320px;padding:50px 25px;border:2px dashed #444;border-radius:12px;text-align:center;cursor:pointer;transition:all .3s ease;background:#0d0d0d}.upload-zone:hover{border-color:#ff6b35;background:#ff6b350d}.upload-zone.drag-active{border-color:#ff6b35;background:#ff6b351a;transform:scale(1.02)}.upload-icon{font-size:3.5rem;margin-bottom:16px}.upload-text{color:#fff;font-size:1rem;margin-bottom:12px;line-height:1.6}.upload-hint{color:#666;font-size:.85rem;margin:0}.current-headshot{display:flex;flex-direction:column;align-items:center;gap:16px}.current-headshot img{width:180px;height:180px;border-radius:50%;object-fit:cover;border:4px solid #ff6b35;box-shadow:0 4px 20px #ff6b354d}.headshot-status{font-size:.95rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.headshot-status .verified{color:#5cb85c;background:#28a74533;padding:6px 16px;border-radius:20px;border:1px solid #5cb85c}.headshot-status .unverified{color:#ffc107;background:#ffc10733;padding:6px 16px;border-radius:20px;border:1px solid #ffc107}.headshot-preview{position:relative;width:180px;height:180px}.headshot-preview img{width:100%;height:100%;border-radius:50%;object-fit:cover;border:4px solid #444}.upload-overlay{position:absolute;inset:0;background:#000000bf;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;gap:12px}.upload-spinner{width:40px;height:40px;border:4px solid rgba(255,107,53,.3);border-top-color:#ff6b35;border-radius:50%;animation:spin 1s linear infinite}.btn-delete-headshot{background:transparent;color:#ff6b6b;border:2px solid #ff6b6b;padding:10px 24px;border-radius:8px;cursor:pointer;font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;transition:all .3s ease}.btn-delete-headshot:hover:not(:disabled){background:#dc354533;transform:translateY(-2px)}.btn-delete-headshot:disabled{opacity:.5;cursor:not-allowed}.btn-change-headshot{background:linear-gradient(135deg,#ff6b35,#ff8c42);color:#fff;border:none;padding:12px 28px;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;transition:all .3s ease;box-shadow:0 4px 15px #ff6b354d}.btn-change-headshot:hover:not(:disabled){background:linear-gradient(135deg,#ff8c42,#ff6b35);transform:translateY(-2px);box-shadow:0 6px 20px #ff6b3566}.btn-change-headshot:disabled{opacity:.5;cursor:not-allowed}.headshot-requirements{margin-top:30px;padding:24px;background:#0d0d0d;border-radius:8px;border:1px solid #333}.headshot-requirements h4{margin:0 0 16px;color:#ff6b35;font-size:1rem;text-transform:uppercase;letter-spacing:.5px}.headshot-requirements ul{margin:0;padding:0;list-style:none}.headshot-requirements li{padding:10px 0;color:#ccc;font-size:.9rem;border-bottom:1px solid #333;line-height:1.5}.headshot-requirements li:last-child{border-bottom:none}.headshot-requirements li:before{content:"✓ ";color:#5cb85c;font-weight:700}@media (max-width: 768px){.headshot-upload{padding:20px;margin-bottom:30px}.headshot-upload h3{font-size:1.25rem}.current-headshot img,.headshot-preview,.headshot-preview img{width:150px;height:150px}.upload-zone{padding:40px 20px}.upload-icon{font-size:3rem}.headshot-requirements{padding:16px}}.checkin-history{background:linear-gradient(135deg,#1a1a1a,#242424);border-radius:12px;padding:24px;margin-top:24px;box-shadow:0 4px 20px #0000004d;border:1px solid #333}.checkin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:20px;border-bottom:2px solid #333}.checkin-header h2{margin:0;font-size:1.5rem;color:#ff6b35;font-weight:700;text-transform:uppercase;letter-spacing:1px}.total-visits{background:#28a74533;color:#5cb85c;padding:6px 16px;border-radius:20px;font-size:.875rem;font-weight:700;border:1px solid #5cb85c}.checkin-list{display:flex;flex-direction:column;gap:12px}.checkin-item{display:flex;flex-wrap:wrap;align-items:center;gap:16px;padding:16px 20px;background:#0d0d0d;border-radius:8px;border:1px solid #333;border-left:4px solid #5cb85c;transition:background .2s ease}.checkin-item:hover{background:#ff6b3514}.checkin-date{display:flex;flex-direction:column;min-width:100px}.checkin-date .date{font-weight:600;color:#fff}.checkin-date .time{font-size:.875rem;color:#888}.checkin-details{display:flex;flex-wrap:wrap;gap:8px;flex:1}.plan-name{background:#3498db33;color:#3498db;padding:4px 10px;border-radius:4px;font-size:.875rem;border:1px solid rgba(52,152,219,.4)}.day-pass-badge{background:#ff6b3533;color:#ff6b35;padding:4px 10px;border-radius:4px;font-size:.875rem;border:1px solid rgba(255,107,53,.4)}.location{color:#888;font-size:.875rem}.verified-by{font-size:.75rem;color:#666;width:100%;margin-top:4px}.no-checkins{text-align:center;padding:40px 20px;color:#888}.no-checkins p{margin:8px 0;color:#ccc}.no-checkins .hint{font-size:.875rem;color:#666}.pagination{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:20px;padding-top:16px;border-top:1px solid #333}.btn-pagination{padding:8px 16px;background:transparent;border:1px solid #ff6b35;border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:600;color:#ff6b35;transition:all .3s ease}.btn-pagination:hover:not(:disabled){background:#ff6b3533;transform:translateY(-2px)}.btn-pagination:disabled{opacity:.5;cursor:not-allowed}.page-info{font-size:.875rem;color:#888}.loading{text-align:center;padding:40px;color:#ccc}.error-message{background:#dc354526;color:#ff6b6b;padding:12px 16px;border-radius:8px;margin-bottom:16px;border:1px solid rgba(220,53,69,.3)}@media (max-width: 600px){.checkin-history{padding:16px}.checkin-header{flex-direction:column;gap:12px;align-items:flex-start}.checkin-item{flex-direction:column;align-items:flex-start}.checkin-date{flex-direction:row;gap:8px}}.waiver-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.waiver-modal{background:#fff;border-radius:12px;width:100%;max-width:700px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 4px 20px #00000026}.waiver-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #eee}.waiver-modal-header h2{margin:0;font-size:1.25rem;color:#333}.close-button{background:none;border:none;font-size:1.75rem;color:#666;cursor:pointer;padding:0;line-height:1}.close-button:hover{color:#333}.waiver-content{flex:1;overflow-y:auto;padding:24px;min-height:300px;max-height:400px;font-size:.9375rem;line-height:1.6;color:#444}.waiver-content h1,.waiver-content h2,.waiver-content h3{color:#333;margin-top:24px;margin-bottom:12px}.waiver-content h1:first-child,.waiver-content h2:first-child,.waiver-content h3:first-child{margin-top:0}.waiver-content p{margin:12px 0}.waiver-content ul,.waiver-content ol{padding-left:24px;margin:12px 0}.waiver-content li{margin:8px 0}.scroll-hint{text-align:center;padding:10px;background:#fff3e0;color:#e65100;font-size:.875rem}.waiver-actions{padding:20px 24px;border-top:1px solid #eee;background:#f8f9fa;border-radius:0 0 12px 12px}.agreement-checkbox{display:flex;gap:12px;align-items:flex-start;cursor:pointer;margin-bottom:20px}.agreement-checkbox.disabled{opacity:.5;cursor:not-allowed}.agreement-checkbox input{margin-top:3px;width:18px;height:18px;cursor:inherit}.agreement-checkbox span{font-size:.9375rem;color:#333;line-height:1.4}.button-group{display:flex;gap:12px;justify-content:flex-end}.btn-cancel{padding:12px 24px;background:#f5f5f5;border:1px solid #ddd;border-radius:8px;cursor:pointer;font-size:1rem;transition:background .2s}.btn-cancel:hover:not(:disabled){background:#e0e0e0}.btn-accept{padding:12px 24px;background:#4caf50;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:500;transition:background .2s}.btn-accept:hover:not(:disabled){background:#43a047}.btn-accept:disabled,.btn-cancel:disabled{opacity:.5;cursor:not-allowed}.version-info{text-align:center;margin:16px 0 0;font-size:.75rem;color:#999}.waiver-loading,.waiver-error{padding:60px 24px;text-align:center;color:#666}.waiver-error{color:#c62828}.error-message{background:#ffebee;color:#c62828;padding:10px 14px;border-radius:6px;margin-bottom:16px;font-size:.875rem}@media (max-width: 600px){.waiver-modal-overlay{padding:10px}.waiver-modal{max-height:95vh}.waiver-modal-header{padding:16px}.waiver-content{padding:16px;min-height:200px}.waiver-actions{padding:16px}.button-group{flex-direction:column-reverse}.btn-cancel,.btn-accept{width:100%}}.my-membership{max-width:1200px;margin:0 auto;padding:40px 20px;min-height:calc(100vh - 200px)}.quick-links-section{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:30px}.quick-link-card{display:flex;align-items:center;gap:8px;padding:12px 18px;background:#1a1a1a;border:1px solid #333;border-radius:8px;color:#ccc;text-decoration:none;font-size:.9rem;transition:all .2s}.quick-link-card:hover{background:#242424;border-color:#ff6b35;color:#fff}.quick-link-icon{font-size:1.1rem}.membership-header{text-align:center;margin-bottom:40px}.membership-header h1{font-size:2.5rem;font-weight:900;color:#fff;text-transform:uppercase;letter-spacing:2px;margin-bottom:10px;text-shadow:2px 2px 4px rgba(0,0,0,.5)}.membership-header p{font-size:1.1rem;color:#ccc}.auth-required{text-align:center;padding:60px 40px;background:linear-gradient(135deg,#1a1a1a,#242424);border-radius:12px;border:1px solid #333}.auth-required h2{color:#fff;margin-bottom:15px;font-size:1.5rem}.auth-required p{color:#ccc;margin-bottom:25px}.btn-primary{background:linear-gradient(135deg,#ff6b35,#ff8c42);color:#fff;border:none;padding:14px 30px;border-radius:8px;font-size:1rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #ff6b354d}.btn-primary:hover{background:linear-gradient(135deg,#ff8c42,#ff6b35);transform:translateY(-2px);box-shadow:0 6px 20px #ff6b3566}.my-membership .active-membership-card{background:linear-gradient(135deg,#1a1a1a,#242424);border-radius:12px;border:2px solid #28a745;padding:30px;margin-bottom:40px;box-shadow:0 4px 20px #0000004d}.my-membership .active-membership-card *{background-color:transparent}.my-membership .detail-row,.my-membership .membership-features{background:#0d0d0d!important}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid #333}.card-header h2{font-size:1.5rem;font-weight:700;color:#ff6b35;text-transform:uppercase;letter-spacing:1px;margin:0}.status-badge{padding:6px 16px;border-radius:20px;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.status-active{background:#28a74533;color:#5cb85c;border:1px solid #5cb85c}.status-pending{background:#ffc10733;color:#ffc107;border:1px solid #ffc107}.status-expired{background:#dc354533;color:#ff6b6b;border:1px solid #ff6b6b}.status-cancelled{background:#8883;color:#888;border:1px solid #888888}.status-suspended{background:#ffc10733;color:#ffc107;border:1px solid #ffc107}.status-frozen{background:#3498db33;color:#3498db;border:1px solid #3498db}.membership-details{display:grid;gap:12px;margin-bottom:30px}.detail-row{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#0d0d0d;border-radius:8px;border:1px solid #333}.detail-row .label{font-weight:600;color:#888;text-transform:uppercase;font-size:.85rem;letter-spacing:.5px}.detail-row .value{color:#fff;font-size:1.05rem}.days-remaining{color:#ff6b35;font-weight:700}.payment-type-recurring{color:#28a745}.payment-type-onetime{color:#17a2b8}.membership-features{margin-bottom:30px;padding:24px;background:#0d0d0d;border-radius:8px;border:1px solid #333}.membership-features h3{margin:0 0 15px;color:#ff6b35;font-size:1rem;text-transform:uppercase;letter-spacing:.5px}.membership-features ul{list-style:none;padding:0;margin:0}.membership-features li{padding:10px 0;color:#ccc;border-bottom:1px solid #333}.membership-features li:last-child{border-bottom:none}.sub-member-notice{margin:20px 0;padding:20px 24px;background:#28a7451a;border-radius:8px;border:1px solid rgba(40,167,69,.3)}.sub-member-notice h3{margin:0 0 12px;color:#5cb85c;font-size:1.1rem}.sub-member-notice p{margin:0 0 16px;color:#ccc;line-height:1.5}.sub-member-notice .parent-info{display:flex;gap:12px;padding:12px;background:#0003;border-radius:6px}.sub-member-notice .parent-info .label{color:#888;font-weight:600;text-transform:uppercase;font-size:.85rem}.sub-member-notice .parent-info .value{color:#fff}.membership-actions{display:flex;justify-content:flex-end;gap:15px;padding-top:20px;border-top:1px solid #333}.subscription-actions{width:100%}.subscription-note{color:#888;font-size:.9rem;margin-bottom:16px;padding:16px;background:#ffc1071a;border-radius:8px;border:1px solid rgba(255,193,7,.3)}.btn-danger{background:transparent;color:#ff6b6b;border:2px solid #ff6b6b;padding:12px 30px;border-radius:8px;font-size:.9rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:all .3s ease}.btn-danger:hover:not(:disabled){background:#dc354533;transform:translateY(-2px)}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.btn-freeze{background:transparent;color:#3498db;border:2px solid #3498db;padding:12px 30px;border-radius:8px;font-size:.9rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:all .3s ease}.btn-freeze:hover:not(:disabled){background:#3498db33;transform:translateY(-2px)}.btn-freeze:disabled{opacity:.5;cursor:not-allowed}.btn-unfreeze{background:transparent;color:#27ae60;border:2px solid #27ae60;padding:12px 30px;border-radius:8px;font-size:.9rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:all .3s ease}.btn-unfreeze:hover:not(:disabled){background:#27ae6033;transform:translateY(-2px)}.freeze-banner{background:#3498db26;border:1px solid rgba(52,152,219,.3);border-radius:8px;padding:16px 20px;margin-bottom:20px;display:flex;align-items:center;gap:12px}.freeze-banner-icon{font-size:1.5rem}.freeze-banner-text{flex:1}.freeze-banner-text strong{display:block;color:#3498db;margin-bottom:4px}.freeze-banner-text span{color:#888;font-size:.9rem}.cancel-pending-banner{background:#f39c1226;border:1px solid rgba(243,156,18,.3);border-radius:8px;padding:16px 20px;margin-bottom:20px;display:flex;align-items:center;gap:12px}.cancel-pending-icon{font-size:1.5rem}.cancel-pending-text{flex:1}.cancel-pending-text strong{display:block;color:#f39c12;margin-bottom:4px}.cancel-pending-text span{color:#888;font-size:.9rem}.waiver-status-section{margin:20px 0;padding:20px 24px;background:#0d0d0d;border-radius:8px;border:1px solid #333}.waiver-status-section h3{margin:0 0 12px;color:#ff6b35;font-size:1rem;text-transform:uppercase;letter-spacing:.5px}.waiver-valid{border-color:#28a74580}.waiver-expiring{border-color:#ffc10780}.waiver-expired{border-color:#dc354580}.waiver-status-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}.waiver-info p{margin:4px 0;color:#ccc;font-size:.9rem}.waiver-warning{color:#ffc107!important}.waiver-error{color:#ff6b6b!important}.btn-waiver{background:linear-gradient(135deg,#ff6b35,#ff8c42);color:#fff;border:none;padding:10px 20px;border-radius:6px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-waiver:hover{transform:translateY(-2px);box-shadow:0 4px 12px #ff6b354d}.no-membership-card{background:linear-gradient(135deg,#1a1a1a,#242424);border-radius:12px;border:1px solid #333;padding:60px 30px;text-align:center;margin-bottom:40px;box-shadow:0 4px 20px #0000004d}.no-membership-card h2{color:#fff;margin-bottom:15px;font-size:1.5rem}.no-membership-card p{color:#888;margin-bottom:25px;font-size:1.1rem}.membership-history{background:linear-gradient(135deg,#1a1a1a,#242424);border-radius:12px;border:1px solid #333;padding:30px;box-shadow:0 4px 20px #0000004d;overflow:hidden}.membership-history h2{margin:0 0 25px;color:#ff6b35;font-size:1.5rem;font-weight:700;text-transform:uppercase;letter-spacing:1px}.history-table{overflow-x:auto}.history-table table{width:100%;border-collapse:collapse}.history-table th{background:#0d0d0d;padding:16px 20px;text-align:left;font-weight:700;color:#ff6b35;border-bottom:2px solid #ff6b35;text-transform:uppercase;font-size:.85rem;letter-spacing:.5px}.history-table td{padding:16px 20px;border-bottom:1px solid #333;color:#fff}.history-table tr:last-child td{border-bottom:none}.history-table tbody tr{transition:background .2s ease}.history-table tbody tr:hover{background:#ff6b3514}@media (max-width: 768px){.my-membership{padding:30px 15px}.membership-header h1{font-size:1.8rem}.active-membership-card,.no-membership-card,.membership-history{padding:20px}.card-header{flex-direction:column;align-items:flex-start;gap:15px}.detail-row{flex-direction:column;align-items:flex-start;gap:8px}.membership-actions{justify-content:center}.btn-danger{width:100%}.history-table{font-size:.9rem}.history-table th,.history-table td{padding:12px 16px;white-space:nowrap}}.payment-complete-container{min-height:calc(100vh - 200px);display:flex;align-items:center;justify-content:center;padding:40px 20px}.payment-complete-card{background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;padding:40px;max-width:500px;width:100%;text-align:center}.status-icon{width:80px;height:80px;margin:0 auto 30px;position:relative}.status-icon svg{width:100%;height:100%}.status-icon.success svg{color:#28a745}.status-icon.error svg{color:#dc3545}.status-icon.processing .spinner,.status-icon.pending .spinner{width:80px;height:80px;border:4px solid #f3f3f3;border-top:4px solid var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.payment-complete-card h1{color:#333;font-size:24px;margin-bottom:30px}.membership-details{background:#f8f9fa;border-radius:8px;padding:20px;margin:30px 0;text-align:left}.membership-details h3{color:#333;font-size:18px;margin-bottom:15px}.membership-details p{color:#666;margin:10px 0}.membership-details strong{color:#333;font-weight:600}.payment-complete-card .btn-primary{background:var(--primary-color, #007bff);color:#fff;padding:12px 30px;border:none;border-radius:4px;font-size:16px;font-weight:600;cursor:pointer;transition:background-color .3s ease;margin-top:20px}.payment-complete-card .btn-primary:hover{background:var(--primary-color-dark, #0056b3)}@media (max-width: 768px){.payment-complete-container{padding:20px}.payment-complete-card{padding:30px 20px}.payment-complete-card h1{font-size:20px}}.accept-invitation{min-height:100vh;background:linear-gradient(135deg,#1a1a1a,#2d2d2d);padding:40px 20px}.accept-invitation .container{max-width:600px;margin:0 auto}.loading-card,.error-card{background:#fff;border-radius:12px;padding:48px;text-align:center;box-shadow:0 10px 40px #0000004d}.spinner{width:48px;height:48px;border:4px solid #f0f0f0;border-top-color:#ff6b35;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 16px}.loading-card p,.error-card p{color:#666;margin:0}.error-icon{font-size:48px;margin-bottom:16px}.error-card h2{color:#333;margin:0 0 16px}.error-card .btn-primary{margin-top:24px}.invitation-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 10px 40px #0000004d}.invitation-header{background:linear-gradient(135deg,#ff6b35,#e55a25);color:#fff;padding:32px;text-align:center}.invitation-header h1{margin:0 0 8px;font-size:2rem}.invitation-header .subtitle{margin:0;font-size:1.1rem;opacity:.95}.plan-info{background-color:#f9f9f9;padding:24px 32px;border-bottom:1px solid #e0e0e0}.plan-info h3{margin:0 0 16px;color:#333;font-size:1.2rem}.features-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px}.features-list li{color:#2e7d32;font-size:.9rem}.registration-form{padding:32px}.registration-form h2{margin:0 0 8px;color:#333;font-size:1.4rem}.form-note{color:#666;margin:0 0 24px;font-size:.95rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:6px;font-weight:500;color:#333;font-size:.9rem}.form-group input{width:100%;padding:12px;font-size:1rem;border:1px solid #ddd;border-radius:6px;box-sizing:border-box;transition:border-color .2s ease,box-shadow .2s ease}.form-group input:focus{outline:none;border-color:#ff6b35;box-shadow:0 0 0 3px #ff6b351a}.form-group input.error{border-color:#c62828}.field-error{display:block;color:#c62828;font-size:.8rem;margin-top:4px}.password-requirements{margin:8px 0 0;font-size:.8rem;color:#666;line-height:1.4}.error-message{background-color:#ffebee;color:#c62828;padding:12px 16px;border-radius:6px;margin-bottom:20px;border-left:4px solid #c62828}.btn-primary{background-color:#ff6b35;color:#fff;padding:12px 24px;font-size:1rem;border:none;border-radius:6px;cursor:pointer;font-weight:500;transition:all .2s ease}.btn-primary:hover{background-color:#e55a25}.btn-primary:disabled{background-color:#ccc;cursor:not-allowed}.btn-submit{width:100%;padding:16px;font-size:1.1rem;margin-top:8px}@media (max-width: 600px){.accept-invitation{padding:20px 16px}.invitation-header{padding:24px}.invitation-header h1{font-size:1.6rem}.plan-info,.registration-form{padding:24px}.form-row,.features-list{grid-template-columns:1fr}}.member-qr-code{min-height:calc(100vh - 200px);display:flex;justify-content:center;align-items:center;padding:20px}.member-qr-code .auth-required,.member-qr-code .loading,.member-qr-code .error-card{text-align:center;padding:40px;background:linear-gradient(135deg,#1a1a1a,#242424);border-radius:12px;border:1px solid #333;max-width:400px}.member-qr-code .auth-required h2,.member-qr-code .error-card h2{color:#fff;margin-bottom:15px}.member-qr-code .auth-required p,.member-qr-code .loading p,.member-qr-code .error-card p{color:#ccc}.member-qr-code .spinner{width:48px;height:48px;border:4px solid #333;border-top-color:#ff6b35;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 16px}.member-qr-code .error-icon{font-size:48px;margin-bottom:16px}.qr-card{background:linear-gradient(135deg,#1a1a1a,#242424);border-radius:16px;border:2px solid #ff6b35;overflow:hidden;max-width:360px;width:100%;box-shadow:0 10px 40px #00000080}.qr-header{background:linear-gradient(135deg,#ff6b35,#e55a25);padding:20px;text-align:center}.qr-header h1{margin:0;font-size:1.4rem;color:#fff;text-transform:uppercase;letter-spacing:2px}.qr-header .subtitle{margin:8px 0 0;color:#ffffffe6;font-size:.9rem}.member-info{padding:20px;text-align:center;border-bottom:1px solid #333}.member-info h2{margin:0 0 12px;color:#fff;font-size:1.3rem}.membership-status{display:inline-block;padding:6px 16px;border-radius:20px;font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.membership-status.active{background:#28a74533;color:#5cb85c;border:1px solid #5cb85c}.membership-status.inactive{background:#dc354533;color:#ff6b6b;border:1px solid #ff6b6b}.member-info .plan-name{margin:12px 0 0;color:#888;font-size:.9rem}.codes-container{padding:20px;display:flex;flex-direction:column;align-items:center;gap:24px}.code-label{margin:0 0 12px;color:#888;font-size:.8rem;text-transform:uppercase;letter-spacing:1px;font-weight:600}.qr-container{display:flex;flex-direction:column;align-items:center}.qr-wrapper{background:#fff;padding:8px;border-radius:12px;box-shadow:0 4px 20px #0000004d}.barcode-container{display:flex;flex-direction:column;align-items:center;width:100%}.barcode-wrapper{background:#fff;padding:12px 16px;border-radius:8px;box-shadow:0 4px 20px #0000004d;overflow:hidden}.barcode-wrapper svg{display:block;max-width:100%}.token-display{margin:0;padding:0 20px 20px;font-family:monospace;font-size:.85rem;color:#888;letter-spacing:1px;text-align:center}.qr-footer{padding:20px;text-align:center;background:#0d0d0d}.countdown-container{display:flex;flex-direction:column;align-items:center;margin-bottom:16px}.countdown-ring{position:relative;width:60px;height:60px}.countdown-svg{width:100%;height:100%;transform:rotate(-90deg)}.countdown-bg{fill:none;stroke:#333;stroke-width:3}.countdown-progress{fill:none;stroke:#ff6b35;stroke-width:3;stroke-linecap:round;transition:stroke-dasharray .3s ease}.countdown-number{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:1.2rem;font-weight:700;color:#ff6b35}.countdown-label{margin:8px 0 0;color:#888;font-size:.8rem;text-transform:uppercase;letter-spacing:1px}.qr-footer .instructions{margin:0 0 16px;color:#888;font-size:.85rem}.btn-refresh{background:transparent;color:#ff6b35;border:1px solid #ff6b35;padding:8px 20px;border-radius:6px;font-size:.85rem;cursor:pointer;transition:all .2s ease}.btn-refresh:hover{background:#ff6b351a}.btn-primary{background:linear-gradient(135deg,#ff6b35,#ff8c42);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:1rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:all .3s ease;margin-top:16px}.btn-primary:hover{background:linear-gradient(135deg,#ff8c42,#ff6b35);transform:translateY(-2px)}@media (max-width: 400px){.qr-card{margin:10px}.qr-header h1{font-size:1.2rem}.qr-wrapper svg{width:180px!important;height:180px!important}}.membership-scanner{max-width:600px;margin:0 auto;padding:40px 20px;min-height:calc(100vh - 200px)}.scanner-header{text-align:center;margin-bottom:30px}.scanner-header h1{font-size:2rem;font-weight:900;color:#fff;text-transform:uppercase;letter-spacing:2px;margin-bottom:10px}.scanner-header p{color:#888;font-size:1rem}.mode-toggle{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:20px}.toggle-switch{position:relative;display:inline-block;width:56px;height:28px}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;inset:0;background-color:#333;transition:.3s;border-radius:28px}.toggle-slider:before{position:absolute;content:"";height:20px;width:20px;left:4px;bottom:4px;background-color:#888;transition:.3s;border-radius:50%}.toggle-switch input:checked+.toggle-slider{background-color:#ff6b35}.toggle-switch input:checked+.toggle-slider:before{transform:translate(28px);background-color:#fff}.toggle-switch input:disabled+.toggle-slider{opacity:.5;cursor:not-allowed}.toggle-label{color:#fff;font-weight:600;font-size:1rem}.mode-description{color:#888;font-size:.85rem;margin-top:10px;font-style:italic}.auth-required,.access-denied{text-align:center;padding:60px 40px;background:linear-gradient(135deg,#1a1a1a,#242424);border-radius:12px;border:1px solid #333}.auth-required h2,.access-denied h2{color:#fff;margin-bottom:15px}.auth-required p,.access-denied p{color:#ccc}.error-message{background:#dc354526;color:#ff6b6b;padding:16px 20px;border-radius:8px;margin-bottom:20px;border:1px solid rgba(220,53,69,.3);text-align:center}.scanner-interface{background:linear-gradient(135deg,#1a1a1a,#242424);border-radius:12px;border:1px solid #333;padding:30px}.scanner-section,.manual-section{text-align:center}.scanner-section h3,.manual-section h3{color:#fff;margin:0 0 20px;font-size:1.1rem}.btn-start-scan{background:linear-gradient(135deg,#ff6b35,#ff8c42);color:#fff;border:none;padding:16px 40px;border-radius:8px;font-size:1.1rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #ff6b354d}.btn-start-scan:hover:not(:disabled){background:linear-gradient(135deg,#ff8c42,#ff6b35);transform:translateY(-2px);box-shadow:0 6px 20px #ff6b3566}.btn-start-scan:disabled{opacity:.5;cursor:not-allowed}.scanner-container{margin-top:20px}#qr-reader{width:100%;max-width:400px;margin:0 auto;border-radius:8px;overflow:hidden}#qr-reader video{border-radius:8px}.btn-stop-scan{margin-top:15px;background:transparent;color:#ff6b6b;border:2px solid #ff6b6b;padding:10px 30px;border-radius:8px;font-size:.9rem;font-weight:700;text-transform:uppercase;cursor:pointer;transition:all .3s ease}.btn-stop-scan:hover{background:#dc354533}.divider{text-align:center;margin:30px 0;position:relative}.divider:before{content:"";position:absolute;left:0;top:50%;width:100%;height:1px;background:#333}.divider span{position:relative;background:#1f1f1f;padding:0 20px;color:#666;font-weight:600}.manual-section form{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.manual-section input{flex:1;min-width:200px;max-width:300px;padding:12px 16px;font-size:1rem;font-family:monospace;letter-spacing:1px;border:1px solid #333;border-radius:8px;background:#0d0d0d;color:#fff;text-transform:uppercase}.manual-section input::placeholder{color:#555}.manual-section input:focus{outline:none;border-color:#ff6b35;box-shadow:0 0 0 3px #ff6b351a}.btn-verify{background:linear-gradient(135deg,#ff6b35,#ff8c42);color:#fff;border:none;padding:12px 30px;border-radius:8px;font-size:1rem;font-weight:700;text-transform:uppercase;cursor:pointer;transition:all .3s ease}.btn-verify:hover:not(:disabled){background:linear-gradient(135deg,#ff8c42,#ff6b35)}.btn-verify:disabled{opacity:.5;cursor:not-allowed}.verification-result{background:linear-gradient(135deg,#1a1a1a,#242424);border-radius:12px;border:2px solid #333;overflow:hidden;position:relative}.verification-result.continuous-mode{margin-bottom:20px}.auto-dismiss-indicator{position:absolute;top:0;left:0;right:0;height:4px;background:#0000004d;overflow:hidden}.dismiss-progress{height:100%;background:linear-gradient(90deg,#ff6b35,#ff8c42);animation:dismissProgress 4s linear forwards}@keyframes dismissProgress{0%{width:100%}to{width:0%}}.verification-result.valid{border-color:#333}.verification-result.invalid{border-color:#ff6b6b}.access-banner{display:flex;align-items:center;justify-content:center;gap:15px;padding:30px 20px;font-size:1.5rem;font-weight:900;text-transform:uppercase;letter-spacing:2px}.access-banner.status-active{background:linear-gradient(135deg,#28a745,#218838);color:#fff}.access-banner.status-denied{background:linear-gradient(135deg,#dc3545,#c82333);color:#fff}.access-banner.status-warning{background:linear-gradient(135deg,#ffc107,#e0a800);color:#1a1a1a}.access-icon{font-size:2rem}.member-details{padding:30px;text-align:center}.member-headshot-container{margin-bottom:20px}.member-headshot{position:relative;display:inline-block}.member-headshot img{width:140px;height:140px;border-radius:50%;object-fit:cover;border:4px solid #ff6b35;box-shadow:0 4px 20px #ff6b354d}.headshot-verified-badge{position:absolute;bottom:5px;right:5px;background:#28a745;color:#fff;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;border:3px solid #1a1a1a;box-shadow:0 2px 8px #0000004d}.member-headshot-placeholder{width:140px;height:140px;border-radius:50%;background:#0d0d0d;border:4px dashed #444;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;color:#666}.member-headshot-placeholder span{font-size:2.5rem;margin-bottom:4px}.member-headshot-placeholder small{font-size:.75rem;text-transform:uppercase;letter-spacing:.5px}.member-name{font-size:1.8rem;font-weight:700;color:#fff;margin-bottom:8px}.member-email{color:#888;margin-bottom:24px}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.detail-item{background:#0d0d0d;padding:16px;border-radius:8px;border:1px solid #333;text-align:left}.detail-item .label{display:block;color:#666;font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}.detail-item .value{color:#fff;font-weight:600}.detail-item .status-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:.75rem;font-weight:700}.detail-item .status-badge.status-active{background:#28a74533;color:#5cb85c}.detail-item .status-badge.status-denied{background:#dc354533;color:#ff6b6b}.detail-item .status-badge.status-warning{background:#ffc10733;color:#ffc107}.invalid-result{padding:40px;text-align:center}.invalid-result .error-icon{font-size:48px;margin-bottom:16px}.invalid-result h3{color:#ff6b6b;margin:0 0 12px}.invalid-result p{color:#888;margin:0}.btn-scan-again{display:block;width:100%;padding:16px;background:transparent;color:#ff6b35;border:none;border-top:1px solid #333;font-size:1rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:all .2s ease}.btn-scan-again:hover{background:#ff6b351a}.btn-dismiss{display:block;width:100%;padding:12px;background:transparent;color:#888;border:none;border-top:1px solid #333;font-size:.9rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:all .2s ease}.btn-dismiss:hover{background:#ffffff0d;color:#fff}.scan-history{background:linear-gradient(135deg,#1a1a1a,#242424);border-radius:12px;border:1px solid #333;margin-top:20px;overflow:hidden}.history-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #333}.history-header h3{color:#fff;font-size:1rem;margin:0}.btn-clear-history{background:transparent;color:#888;border:1px solid #444;padding:6px 14px;border-radius:6px;font-size:.8rem;font-weight:600;text-transform:uppercase;cursor:pointer;transition:all .2s ease}.btn-clear-history:hover{background:#ffffff0d;color:#fff;border-color:#666}.history-list{max-height:300px;overflow-y:auto}.history-item{display:flex;align-items:center;gap:12px;padding:14px 20px;border-bottom:1px solid #2a2a2a;transition:background .2s ease}.history-item:last-child{border-bottom:none}.history-item:hover{background:#ffffff05}.history-item.valid .history-status{color:#5cb85c}.history-item.invalid .history-status{color:#ff6b6b}.history-status{font-size:1.2rem;width:28px;text-align:center}.history-name{flex:1;color:#fff;font-weight:500}.history-time{color:#666;font-size:.85rem;font-family:monospace}.loading-overlay{position:fixed;inset:0;background:#000c;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1000}.loading-overlay .spinner{width:60px;height:60px;border:4px solid #333;border-top-color:#ff6b35;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}.loading-overlay p{color:#fff;font-size:1.2rem}@media (max-width: 600px){.membership-scanner{padding:20px 15px}.scanner-header h1{font-size:1.5rem}.mode-toggle{flex-direction:column;gap:8px}.scanner-interface{padding:20px}.access-banner{flex-direction:column;gap:10px;font-size:1.2rem}.member-name{font-size:1.4rem}.detail-grid{grid-template-columns:1fr}.manual-section form{flex-direction:column;align-items:stretch}.manual-section input{max-width:none}}.promo-code-input{margin-top:8px}.input-group{display:flex;gap:8px}.input-group input{flex:1;padding:12px 14px;border:1px solid #ddd;border-radius:8px;font-size:1rem;text-transform:uppercase;transition:border-color .2s}.input-group input:focus{outline:none;border-color:#1976d2}.input-group input::placeholder{text-transform:none;color:#999}.btn-apply{padding:12px 20px;background:#1976d2;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:.9375rem;font-weight:500;transition:background .2s;white-space:nowrap}.btn-apply:hover:not(:disabled){background:#1565c0}.btn-apply:disabled{opacity:.6;cursor:not-allowed}.promo-error{color:#c62828;font-size:.875rem;margin-top:8px}.promo-code-input.applied{background:#e8f5e9;border-radius:8px;padding:12px 16px}.applied-promo{display:flex;justify-content:space-between;align-items:center}.promo-details{display:flex;align-items:center;gap:12px}.promo-code{font-weight:600;color:#2e7d32}.promo-discount{background:#4caf50;color:#fff;padding:4px 10px;border-radius:4px;font-size:.875rem;font-weight:500}.btn-remove{padding:6px 12px;background:transparent;color:#c62828;border:1px solid #c62828;border-radius:6px;cursor:pointer;font-size:.875rem;transition:background .2s,color .2s}.btn-remove:hover{background:#c62828;color:#fff}@media (max-width: 480px){.input-group{flex-direction:column}.btn-apply{width:100%}}.day-pass-purchase{max-width:1000px;margin:0 auto;padding:24px}.purchase-header{text-align:center;margin-bottom:32px}.purchase-header h1{margin:0 0 8px;font-size:2rem;color:#333}.purchase-header p{color:#666;font-size:1.125rem}.purchase-content{display:grid;grid-template-columns:1fr 1.5fr;gap:32px;align-items:start}.price-card{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000001a;position:sticky;top:24px}.price-card h2{margin:0 0 16px;font-size:1.25rem;color:#333}.price-display{display:flex;align-items:center;gap:12px;margin-bottom:20px;flex-wrap:wrap}.final-price{font-size:2.5rem;font-weight:700;color:#4caf50}.original-price{font-size:1.5rem;color:#999;text-decoration:line-through}.discount-badge{background:#e8f5e9;color:#2e7d32;padding:4px 10px;border-radius:4px;font-size:.875rem;font-weight:500}.pass-features{list-style:none;padding:0;margin:0}.pass-features li{padding:10px 0;border-bottom:1px solid #f0f0f0;color:#555;display:flex;align-items:center;gap:8px}.pass-features li:before{content:"✓";color:#4caf50;font-weight:700}.pass-features li:last-child{border-bottom:none}.purchase-form{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000001a}.form-section{margin-bottom:28px}.form-section h3{margin:0 0 12px;font-size:1.125rem;color:#333}.section-note{color:#666;font-size:.875rem;margin:0 0 16px}.form-group label{display:block;margin-bottom:6px;font-weight:500;color:#333;font-size:.9375rem}.form-group input{width:100%;padding:12px 14px;border:1px solid #ddd;border-radius:8px;font-size:1rem;transition:border-color .2s,box-shadow .2s;box-sizing:border-box}.form-group input:focus{outline:none;border-color:#1976d2;box-shadow:0 0 0 3px #1976d21a}.purchase-summary{background:#f8f9fa;border-radius:8px;padding:16px;margin-bottom:20px}.summary-row{display:flex;justify-content:space-between;padding:8px 0;font-size:.9375rem;color:#555}.summary-row.discount{color:#2e7d32}.summary-row.total{border-top:2px solid #ddd;margin-top:8px;padding-top:12px;font-size:1.125rem;font-weight:600;color:#333}.btn-purchase{width:100%;padding:16px;background:#4caf50;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:1.125rem;font-weight:600;transition:background .2s}.btn-purchase:hover:not(:disabled){background:#43a047}.btn-purchase:disabled{opacity:.6;cursor:not-allowed}.secure-note{text-align:center;margin:16px 0 0;font-size:.875rem;color:#999}.secure-note:before{content:"🔒 "}.error-message{background:#ffebee;color:#c62828;padding:12px 16px;border-radius:8px;margin-bottom:20px}@media (max-width: 768px){.day-pass-purchase{padding:16px}.purchase-content{grid-template-columns:1fr}.price-card{position:static}.purchase-header h1{font-size:1.5rem}.final-price{font-size:2rem}}.day-pass-confirmation{max-width:600px;margin:0 auto;padding:24px}.confirmation-card{background:#fff;border-radius:16px;padding:32px;box-shadow:0 4px 12px #0000001a}.success-header{text-align:center;margin-bottom:32px}.success-icon{width:80px;height:80px;background:#4caf50;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;font-size:3rem;color:#fff}.success-header h1{margin:0 0 8px;font-size:1.75rem;color:#333}.success-header p{color:#666;margin:0}.qr-section{text-align:center;padding:24px;background:#f8f9fa;border-radius:12px;margin-bottom:24px}.qr-section h2{margin:0 0 8px;font-size:1.25rem;color:#333}.qr-instructions{color:#666;margin:0 0 20px;font-size:.9375rem}.qr-code{background:#fff;padding:16px;border-radius:12px;display:inline-block;box-shadow:0 2px 8px #0000001a}.qr-code img{display:block;width:250px;height:250px}.qr-pending{padding:40px 20px;color:#666}.qr-pending .hint{font-size:.875rem;color:#999;margin-top:8px}.pass-details{margin-bottom:24px}.pass-details h2{margin:0 0 16px;font-size:1.25rem;color:#333;padding-bottom:8px;border-bottom:1px solid #eee}.detail-row{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid #f0f0f0}.detail-row:last-child{border-bottom:none}.detail-row .label{color:#666}.detail-row .value{font-weight:500;color:#333}.status-badge{padding:4px 12px;border-radius:20px;font-size:.875rem;font-weight:500}.status-badge.valid{background:#e8f5e9;color:#2e7d32}.status-badge.pending{background:#fff3e0;color:#e65100}.status-badge.used{background:#e3f2fd;color:#1565c0}.important-notes{background:#fff8e1;border:1px solid #ffca28;border-radius:12px;padding:16px 20px;margin-bottom:24px}.important-notes h3{margin:0 0 12px;font-size:1rem;color:#f57c00}.important-notes ul{margin:0;padding-left:20px}.important-notes li{margin:8px 0;font-size:.9375rem;color:#5d4037}.action-buttons{display:flex;gap:12px}.btn-primary{flex:1;padding:14px 24px;background:#4caf50;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:500;transition:background .2s}.btn-primary:hover{background:#43a047}.btn-secondary{flex:1;padding:14px 24px;background:#fff;color:#333;border:1px solid #ddd;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:500;transition:background .2s}.btn-secondary:hover{background:#f5f5f5}.loading{text-align:center;padding:80px 20px}.spinner{width:50px;height:50px;border:4px solid #f0f0f0;border-top-color:#4caf50;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 20px}.loading p{color:#666}.error-container{text-align:center;padding:60px 20px;background:#fff;border-radius:16px;box-shadow:0 4px 12px #0000001a}.error-container h2{margin:0 0 12px;color:#c62828}.error-container p{color:#666;margin-bottom:24px}@media print{.day-pass-confirmation{padding:0;max-width:none}.confirmation-card{box-shadow:none;padding:20px}.action-buttons{display:none}.important-notes{border:2px solid #000}}@media (max-width: 600px){.day-pass-confirmation{padding:16px}.confirmation-card{padding:20px}.success-icon{width:60px;height:60px;font-size:2rem}.success-header h1{font-size:1.5rem}.qr-code img{width:200px;height:200px}.action-buttons{flex-direction:column}}.profile-settings{max-width:800px;margin:0 auto;padding:24px}.profile-settings h1{margin:0 0 32px;font-size:2rem;color:#333}.settings-section{background:#fff;border-radius:12px;padding:24px;margin-bottom:24px;box-shadow:0 2px 8px #0000001a}.settings-section h2{margin:0 0 16px;font-size:1.25rem;color:#333}.section-description{color:#666;margin-bottom:20px;font-size:.9375rem}.waiver-status-card{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;padding:20px;border-radius:8px;border:2px solid}.waiver-status-card.valid{background:#e8f5e9;border-color:#4caf50}.waiver-status-card.expiring-soon{background:#fff3e0;border-color:#ff9800}.waiver-status-card.expired,.waiver-status-card.not-signed{background:#ffebee;border-color:#ef5350}.waiver-info{flex:1}.status-badge{display:inline-block;padding:4px 12px;border-radius:20px;font-size:.875rem;font-weight:600;margin-bottom:8px}.status-badge.valid{background:#4caf50;color:#fff}.status-badge.expired{background:#ef5350;color:#fff}.waiver-details p{margin:4px 0;font-size:.9375rem;color:#333}.expiry-warning{color:#e65100;font-weight:500;margin-top:8px!important}.waiver-message{color:#c62828;margin:8px 0 0}.btn-sign-waiver{padding:12px 24px;background:#1976d2;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:500;transition:background .2s;white-space:nowrap}.btn-sign-waiver:hover{background:#1565c0}.emergency-contact-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-weight:500;color:#333;font-size:.9375rem}.form-group input,.form-group select{padding:12px 14px;border:1px solid #ddd;border-radius:8px;font-size:1rem;transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group select:focus{outline:none;border-color:#1976d2;box-shadow:0 0 0 3px #1976d21a}.form-group input::placeholder{color:#999}.btn-save{padding:14px 28px;background:#4caf50;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:500;transition:background .2s;align-self:flex-start}.btn-save:hover:not(:disabled){background:#43a047}.error-message{background:#ffebee;color:#c62828;padding:12px 16px;border-radius:8px;margin-bottom:16px}.success-message{background:#e8f5e9;color:#2e7d32;padding:12px 16px;border-radius:8px;margin-bottom:16px}.auth-required{text-align:center;padding:60px 20px}.auth-required h2{margin-bottom:12px}.auth-required p{color:#666}.loading{text-align:center;padding:60px;color:#666}@media (max-width: 600px){.profile-settings{padding:16px}.profile-settings h1{font-size:1.5rem}.settings-section{padding:16px}.waiver-status-card{flex-direction:column;align-items:flex-start}.btn-sign-waiver{width:100%;text-align:center}.btn-save{width:100%}}.forgot-password-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a1a1a,#2d2d2d);padding:20px}.forgot-password-form{background:#fff;border-radius:12px;box-shadow:0 20px 40px #0000001a;padding:40px;width:100%;max-width:400px}.forgot-password-header{text-align:center;margin-bottom:30px}.forgot-password-header h1{color:#333;font-size:2rem;font-weight:700;margin-bottom:8px}.forgot-password-header p{color:#666;font-size:1rem;margin:0}.forgot-password-form .form-group{margin-bottom:20px}.forgot-password-form .form-group label{display:block;color:#333;font-weight:600;margin-bottom:8px;font-size:.9rem}.forgot-password-form .form-group input{width:100%;padding:12px 16px;border:2px solid #e1e5e9;border-radius:8px;font-size:1rem;transition:all .3s ease;background:#fff}.forgot-password-form .form-group input::placeholder{color:#999}.forgot-password-form .form-group input:focus{outline:none;border-color:#ff6b35;box-shadow:0 0 0 3px #ff6b351a}.forgot-password-form .form-group input:disabled{background-color:#f8f9fa;cursor:not-allowed;opacity:.7}.forgot-password-form .error-message{background-color:#fdf2f2;border:1px solid #e74c3c;color:#e74c3c;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:.9rem}.forgot-password-form .general-error{text-align:center}.success-message{text-align:center;padding:20px 0}.success-message p{color:#666;font-size:.95rem;margin:10px 0;line-height:1.5}.forgot-password-button{width:100%;background:linear-gradient(135deg,#ff6b35,#f7931e);color:#fff;border:none;padding:14px 24px;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:10px}.forgot-password-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #ff6b354d}.forgot-password-button:disabled{opacity:.7;cursor:not-allowed;transform:none;box-shadow:none}.forgot-password-footer{text-align:center;margin-top:30px;padding-top:20px;border-top:1px solid #e1e5e9}.forgot-password-footer p{margin:10px 0;color:#666;font-size:.9rem}.forgot-password-footer a{color:#ff6b35;text-decoration:none;font-weight:600}.forgot-password-footer a:hover{text-decoration:underline}@media (max-width: 768px){.forgot-password-container{padding:10px}.forgot-password-form{padding:30px 20px}.forgot-password-header h1{font-size:1.6rem}}@media (max-width: 480px){.forgot-password-form{padding:20px 15px}.forgot-password-header h1{font-size:1.4rem}.forgot-password-form .form-group input{padding:10px 12px}.forgot-password-button{padding:12px 20px}}.reset-password-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a1a1a,#2d2d2d);padding:20px}.reset-password-form{background:#fff;border-radius:12px;box-shadow:0 20px 40px #0000001a;padding:40px;width:100%;max-width:400px}.reset-password-header{text-align:center;margin-bottom:30px}.reset-password-header h1{color:#333;font-size:2rem;font-weight:700;margin-bottom:8px}.reset-password-header p{color:#666;font-size:1rem;margin:0}.reset-password-form .form-group{margin-bottom:20px}.reset-password-form .form-group label{display:block;color:#333;font-weight:600;margin-bottom:8px;font-size:.9rem}.reset-password-form .form-group input{width:100%;padding:12px 16px;border:2px solid #e1e5e9;border-radius:8px;font-size:1rem;transition:all .3s ease;background:#fff}.reset-password-form .form-group input::placeholder{color:#999}.reset-password-form .form-group input:focus{outline:none;border-color:#ff6b35;box-shadow:0 0 0 3px #ff6b351a}.reset-password-form .form-group input.error{border-color:#e74c3c;background-color:#fdf2f2}.reset-password-form .form-group input:disabled{background-color:#f8f9fa;cursor:not-allowed;opacity:.7}.reset-password-form .error-text{color:#e74c3c;font-size:.85rem;margin-top:5px;display:block}.reset-password-form .error-message{background-color:#fdf2f2;border:1px solid #e74c3c;color:#e74c3c;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:.9rem}.reset-password-form .general-error{text-align:center}.reset-password-form .success-message{text-align:center;padding:20px 0}.reset-password-form .success-message p{color:#666;font-size:.95rem;margin:10px 0;line-height:1.5}.reset-password-button{width:100%;background:linear-gradient(135deg,#ff6b35,#f7931e);color:#fff;border:none;padding:14px 24px;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:10px}.reset-password-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #ff6b354d}.reset-password-button:disabled{opacity:.7;cursor:not-allowed;transform:none;box-shadow:none}.reset-password-footer{text-align:center;margin-top:30px;padding-top:20px;border-top:1px solid #e1e5e9}.reset-password-footer p{margin:10px 0;color:#666;font-size:.9rem}.reset-password-footer a{color:#ff6b35;text-decoration:none;font-weight:600}.reset-password-footer a:hover{text-decoration:underline}@media (max-width: 768px){.reset-password-container{padding:10px}.reset-password-form{padding:30px 20px}.reset-password-header h1{font-size:1.6rem}}@media (max-width: 480px){.reset-password-form{padding:20px 15px}.reset-password-header h1{font-size:1.4rem}.reset-password-form .form-group input{padding:10px 12px}.reset-password-button{padding:12px 20px}}.announcement-banner-container{width:100%;margin-bottom:0;z-index:100}.announcement-toggle{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px 20px;background:#1a1a1a;border:none;border-bottom:1px solid #333;color:#ccc;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:background .2s ease}.announcement-toggle:hover{background:#242424}.announcement-toggle-count{color:#ff6b35}.announcement-toggle-arrow{font-size:.7rem;transition:transform .2s ease;display:inline-block}.announcement-toggle-arrow.collapsed{transform:rotate(-90deg)}.announcement-list{display:flex;flex-direction:column}.announcement-item{display:flex;align-items:flex-start;justify-content:space-between;padding:14px 20px;border-bottom:1px solid rgba(255,255,255,.08);gap:12px}.announcement-item:last-child{border-bottom:none}.announcement-info{background:#3498db1f;border-left:4px solid #3498db}.announcement-warning{background:#ff8c001f;border-left:4px solid #ff8c00}.announcement-alert{background:#dc35451f;border-left:4px solid #dc3545}.announcement-promotion{background:#28a7451f;border-left:4px solid #28a745}.announcement-maintenance{background:#ffc1071f;border-left:4px solid #ffc107}.announcement-content{flex:1;display:flex;flex-wrap:wrap;align-items:center;gap:8px}.announcement-type-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#fff;background:#ffffff26}.announcement-info .announcement-type-badge{background:#3498db59;color:#6cb4ee}.announcement-warning .announcement-type-badge{background:#ff8c0059;color:#ffb347}.announcement-alert .announcement-type-badge{background:#dc354559;color:#ff6b6b}.announcement-promotion .announcement-type-badge{background:#28a74559;color:#5cb85c}.announcement-maintenance .announcement-type-badge{background:#ffc10759;color:#ffd54f}.announcement-pinned-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;background:#ff6b3540;color:#ff6b35}.announcement-title{color:#fff;font-weight:600;font-size:.95rem}.announcement-message{width:100%;margin:4px 0 0;color:#aaa;font-size:.85rem;line-height:1.4}.announcement-dismiss{background:none;border:none;color:#888;font-size:1.3rem;cursor:pointer;padding:0 4px;line-height:1;transition:color .2s ease;flex-shrink:0}.announcement-dismiss:hover{color:#fff}@media (max-width: 768px){.announcement-item{padding:12px 16px}.announcement-title{font-size:.88rem}.announcement-message{font-size:.8rem}}.notification-center{position:relative;display:inline-flex;align-items:center}.notification-bell-btn{position:relative;background:none;border:none;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:background .2s ease}.notification-bell-btn:hover{background:#ffffff14}.notification-bell-icon{width:22px;height:22px;color:#ccc;transition:color .2s ease}.notification-bell-btn:hover .notification-bell-icon{color:#fff}.notification-badge{position:absolute;top:2px;right:2px;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:linear-gradient(135deg,#ff6b35,#ff8c42);color:#fff;font-size:.65rem;font-weight:700;display:flex;align-items:center;justify-content:center;line-height:1;box-shadow:0 2px 6px #ff6b3566}.notification-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:360px;max-height:480px;background:#1a1a1a;border:1px solid #333;border-radius:12px;box-shadow:0 8px 30px #00000080;z-index:1000;display:flex;flex-direction:column;overflow:hidden}.notification-dropdown-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #333}.notification-dropdown-header h3{margin:0;font-size:1rem;font-weight:700;color:#fff;text-transform:uppercase;letter-spacing:.5px}.notification-mark-all{background:none;border:none;color:#ff6b35;font-size:.8rem;font-weight:600;cursor:pointer;padding:4px 8px;border-radius:4px;transition:background .2s ease}.notification-mark-all:hover{background:#ff6b351f}.notification-dropdown-body{overflow-y:auto;flex:1}.notification-dropdown-body::-webkit-scrollbar{width:6px}.notification-dropdown-body::-webkit-scrollbar-track{background:transparent}.notification-dropdown-body::-webkit-scrollbar-thumb{background:#444;border-radius:3px}.notification-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;color:#666}.notification-empty-icon{width:40px;height:40px;color:#444;margin-bottom:12px}.notification-empty p{margin:0;font-size:.9rem;color:#666}.notification-group{border-bottom:1px solid #2a2a2a}.notification-group:last-child{border-bottom:none}.notification-group-label{padding:10px 20px 6px;font-size:.7rem;font-weight:700;color:#ff6b35;text-transform:uppercase;letter-spacing:1px}.notification-item{display:flex;align-items:flex-start;gap:10px;width:100%;padding:12px 20px;background:none;border:none;text-align:left;cursor:pointer;transition:background .15s ease;font-family:inherit}.notification-item:hover{background:#ffffff0a}.notification-item.unread{background:#ff6b350a}.notification-item.unread:hover{background:#ff6b3514}.notification-unread-dot{width:8px;height:8px;min-width:8px;border-radius:50%;background:#ff6b35;margin-top:6px;box-shadow:0 0 6px #ff6b3566}.notification-item.read .notification-item-content{opacity:.6}.notification-item-content{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.notification-item-title{color:#fff;font-size:.88rem;font-weight:600;line-height:1.3}.notification-item-message{color:#999;font-size:.8rem;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.notification-item-time{color:#666;font-size:.72rem;margin-top:2px}.notification-item-arrow{color:#555;font-size:1.4rem;line-height:1;margin-top:2px;flex-shrink:0}.notification-item:hover .notification-item-arrow{color:#ff6b35}@media (max-width: 768px){.notification-dropdown{position:fixed;inset:auto 0 0;width:100%;max-height:70vh;border-radius:16px 16px 0 0;border-bottom:none}}.class-schedule{max-width:1200px;margin:0 auto;padding:40px 20px;min-height:calc(100vh - 200px)}.class-schedule__header{text-align:center;margin-bottom:32px}.class-schedule__header h1{font-size:2.5rem;font-weight:900;color:#fff;text-transform:uppercase;letter-spacing:2px;margin-bottom:10px;text-shadow:2px 2px 4px rgba(0,0,0,.5)}.class-schedule__header p{font-size:1.1rem;color:#ccc}.class-schedule__error{background:#dc354526;color:#ff6b6b;padding:14px 20px;border-radius:8px;margin-bottom:20px;border:1px solid rgba(220,53,69,.3);display:flex;justify-content:space-between;align-items:center}.class-schedule__error button{background:none;border:none;color:#ff6b6b;font-size:1.3rem;cursor:pointer;padding:0 4px;line-height:1}.class-schedule__loading{text-align:center;padding:60px 20px;font-size:1.2rem;color:#ccc}.class-schedule__filters{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;flex-wrap:wrap}.class-schedule__filter-group{display:flex;gap:12px;flex-wrap:wrap}.class-schedule__select{background:#1a1a1a;color:#fff;border:1px solid #444;padding:10px 16px;border-radius:8px;font-size:.9rem;cursor:pointer;min-width:160px;appearance:auto;transition:border-color .2s ease}.class-schedule__select:hover,.class-schedule__select:focus{border-color:#ff6b35;outline:none}.class-schedule__view-toggle{display:flex;border:1px solid #444;border-radius:8px;overflow:hidden}.view-toggle-btn{background:#1a1a1a;color:#888;border:none;padding:10px 20px;font-size:.85rem;font-weight:600;cursor:pointer;text-transform:uppercase;letter-spacing:.5px;transition:all .2s ease}.view-toggle-btn--active{background:#ff6b35;color:#fff}.view-toggle-btn:hover:not(.view-toggle-btn--active){background:#242424;color:#ccc}.class-schedule__nav{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding:16px 20px;background:linear-gradient(135deg,#1a1a1a,#242424);border-radius:12px;border:1px solid #333}.nav-btn{background:transparent;color:#ff6b35;border:1px solid #ff6b35;padding:8px 20px;border-radius:6px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s ease}.nav-btn:hover{background:#ff6b3526}.nav-center{display:flex;align-items:center;gap:12px}.nav-range{color:#fff;font-size:1.1rem;font-weight:700;letter-spacing:.5px}.nav-today-btn{background:transparent;color:#ccc;border:1px solid #555;padding:4px 12px;border-radius:4px;font-size:.8rem;cursor:pointer;transition:all .2s ease}.nav-today-btn:hover{border-color:#ff6b35;color:#ff6b35}.class-schedule__week{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.day-column{background:linear-gradient(135deg,#1a1a1a,#1e1e1e);border-radius:10px;border:1px solid #333;overflow:hidden;min-height:200px}.day-column--today{border-color:#ff6b35;box-shadow:0 0 12px #ff6b3526}.day-column__header{display:flex;flex-direction:column;align-items:center;padding:12px 8px;border-bottom:1px solid #333;background:#0003}.day-column__name{font-size:.75rem;font-weight:700;color:#888;text-transform:uppercase;letter-spacing:1px}.day-column__date{font-size:1.3rem;font-weight:800;color:#fff;margin-top:2px}.day-column__date--today{color:#ff6b35}.day-column__classes{padding:6px;display:flex;flex-direction:column;gap:6px}.day-column__empty{text-align:center;padding:20px 8px;color:#555;font-size:.8rem}.class-card{background:#0d0d0d;border:1px solid #333;border-radius:8px;padding:10px;cursor:pointer;transition:all .2s ease}.class-card:hover{border-color:#ff6b35;background:#151515;transform:translateY(-1px);box-shadow:0 4px 12px #0000004d}.class-card:focus{outline:2px solid #ff6b35;outline-offset:2px}.class-card--booked{border-color:#28a74580;background:#28a7450d}.class-card--past{opacity:.5}.class-card--compact .class-card__time{font-size:.75rem;margin-bottom:4px}.class-card--compact .class-card__name{font-size:.8rem;margin-bottom:2px}.class-card--compact .class-card__instructor{font-size:.7rem}.class-card--compact .class-card__meta{margin-top:6px;gap:4px}.class-card--compact .difficulty-badge,.class-card--compact .class-card__duration,.class-card--compact .class-card__spots,.class-card--compact .booking-badge{font-size:.65rem;padding:2px 5px}.class-card:not(.class-card--compact){display:grid;grid-template-columns:100px 1fr auto;align-items:center;gap:16px;padding:16px 20px}.class-card__time{color:#ff6b35;font-weight:700;font-size:.9rem}.class-card__info{display:flex;flex-direction:column;gap:2px}.class-card__name{color:#fff;font-size:1rem;font-weight:700;margin:0}.class-card__instructor{color:#888;font-size:.85rem}.class-card__meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.class-card__duration{color:#888;font-size:.8rem;background:#ffffff0d;padding:3px 8px;border-radius:4px}.class-card__spots{font-size:.8rem;font-weight:600;color:#5cb85c;background:#28a7451a;padding:3px 8px;border-radius:4px}.class-card__spots--low{color:#ffc107;background:#ffc1071a}.class-card__spots--full{color:#ff6b6b;background:#dc35451a}.difficulty-badge{display:inline-block;padding:3px 8px;border-radius:4px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.difficulty-badge--beginner{color:#5cb85c;background:#28a74526;border:1px solid rgba(40,167,69,.3)}.difficulty-badge--intermediate{color:#ffc107;background:#ffc10726;border:1px solid rgba(255,193,7,.3)}.difficulty-badge--advanced{color:#ff6b6b;background:#dc354526;border:1px solid rgba(220,53,69,.3)}.booking-badge{font-size:.75rem;font-weight:700;color:#5cb85c;background:#28a74526;border:1px solid rgba(40,167,69,.3);padding:3px 8px;border-radius:4px;text-transform:uppercase;letter-spacing:.3px}.booking-badge--waitlisted{color:#ffc107;background:#ffc10726;border-color:#ffc1074d}.class-schedule__list{display:flex;flex-direction:column;gap:8px}.class-schedule__empty{text-align:center;padding:60px 30px;background:linear-gradient(135deg,#1a1a1a,#242424);border-radius:12px;border:1px solid #333}.class-schedule__empty h3{color:#fff;margin-bottom:10px;font-size:1.3rem}.class-schedule__empty p{color:#888;font-size:1rem}.class-modal-overlay{position:fixed;inset:0;background:#000c;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.class-modal{background:linear-gradient(135deg,#1a1a1a,#242424);border-radius:12px;border:1px solid #444;padding:32px;width:100%;max-width:560px;max-height:85vh;overflow-y:auto;position:relative;box-shadow:0 8px 40px #00000080;animation:slideUp .2s ease}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.class-modal__close{position:absolute;top:16px;right:16px;background:none;border:none;color:#888;font-size:1.8rem;cursor:pointer;line-height:1;padding:4px 8px;transition:color .2s ease}.class-modal__close:hover{color:#fff}.class-modal__header{margin-bottom:16px;padding-right:40px}.class-modal__header h2{color:#fff;font-size:1.6rem;font-weight:800;text-transform:uppercase;letter-spacing:1px;margin:0 0 8px}.class-modal__category{display:inline-block;color:#ff6b35;font-size:.85rem;font-weight:600;text-transform:capitalize;background:#ff6b351a;padding:4px 12px;border-radius:4px;border:1px solid rgba(255,107,53,.3)}.class-modal__description{color:#ccc;line-height:1.6;margin-bottom:20px;font-size:.95rem}.class-modal__details{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.class-modal__detail-row{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;background:#0d0d0d;border-radius:8px;border:1px solid #333}.class-modal__detail-row .label{font-weight:600;color:#888;text-transform:uppercase;font-size:.8rem;letter-spacing:.5px}.class-modal__detail-row .value{color:#fff;font-size:.95rem}.class-modal__equipment{margin-bottom:16px;padding:18px;background:#0d0d0d;border-radius:8px;border:1px solid #333}.class-modal__equipment h4{color:#ff6b35;font-size:.85rem;text-transform:uppercase;letter-spacing:.5px;margin:0 0 10px}.class-modal__equipment ul{list-style:none;padding:0;margin:0}.class-modal__equipment li{color:#ccc;padding:6px 0;border-bottom:1px solid #2a2a2a;font-size:.9rem}.class-modal__equipment li:last-child{border-bottom:none}.class-modal__equipment li:before{content:"- ";color:#ff6b35}.class-modal__notes{margin-bottom:20px;padding:18px;background:#ffc1070d;border-radius:8px;border:1px solid rgba(255,193,7,.2)}.class-modal__notes h4{color:#ffc107;font-size:.85rem;text-transform:uppercase;letter-spacing:.5px;margin:0 0 8px}.class-modal__notes p{color:#ccc;margin:0;font-size:.9rem;line-height:1.5}.class-modal__actions{display:flex;flex-direction:column;align-items:center;gap:12px;padding-top:20px;border-top:1px solid #333}.class-modal__past-label{color:#888;font-size:.95rem;font-style:italic}.booking-status-text{color:#5cb85c;font-weight:600;font-size:.95rem}.booking-status-text--waitlisted{color:#ffc107}.btn-book{background:linear-gradient(135deg,#ff6b35,#ff8c42);color:#fff;border:none;padding:14px 40px;border-radius:8px;font-size:1rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #ff6b354d;width:100%}.btn-book:hover:not(:disabled){background:linear-gradient(135deg,#ff8c42,#ff6b35);transform:translateY(-2px);box-shadow:0 6px 20px #ff6b3566}.btn-book:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-cancel-booking{background:transparent;color:#ff6b6b;border:2px solid #ff6b6b;padding:12px 40px;border-radius:8px;font-size:.9rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:all .3s ease;width:100%}.btn-cancel-booking:hover:not(:disabled){background:#dc354526;transform:translateY(-2px)}.btn-cancel-booking:disabled{opacity:.5;cursor:not-allowed}.class-schedule__my-bookings{margin-top:40px;background:linear-gradient(135deg,#1a1a1a,#242424);border-radius:12px;border:1px solid #333;padding:30px;box-shadow:0 4px 20px #0000004d}.class-schedule__my-bookings h2{margin:0 0 20px;color:#ff6b35;font-size:1.3rem;font-weight:700;text-transform:uppercase;letter-spacing:1px}.my-bookings-list{display:flex;flex-direction:column;gap:10px}.my-booking-card{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#0d0d0d;border-radius:8px;border:1px solid #333;transition:border-color .2s ease}.my-booking-card:hover{border-color:#444}.my-booking-card__info{display:flex;flex-direction:column;gap:4px}.my-booking-card__info h4{color:#fff;font-size:1rem;font-weight:700;margin:0}.my-booking-card__time{color:#ff6b35;font-size:.85rem;font-weight:600}.my-booking-card__instructor{color:#888;font-size:.8rem}.my-booking-card__actions{display:flex;align-items:center;gap:12px}.btn-cancel-small{background:transparent;color:#ff6b6b;border:1px solid #ff6b6b;padding:6px 14px;border-radius:6px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-cancel-small:hover:not(:disabled){background:#dc354526}.btn-cancel-small:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 1024px){.class-schedule__week{grid-template-columns:repeat(7,1fr);gap:4px}.day-column__header{padding:8px 4px}.day-column__name{font-size:.65rem}.day-column__date{font-size:1.1rem}.class-card--compact{padding:6px}.class-card--compact .class-card__name{font-size:.7rem}}@media (max-width: 768px){.class-schedule{padding:30px 15px}.class-schedule__header h1{font-size:1.8rem}.class-schedule__week{grid-template-columns:1fr;gap:16px}.day-column{min-height:auto}.day-column__header{flex-direction:row;justify-content:flex-start;gap:10px;padding:12px 16px}.day-column__empty{padding:12px 8px}.class-card:not(.class-card--compact){grid-template-columns:1fr;gap:8px}.class-card__meta{justify-content:flex-start}.class-schedule__filters{flex-direction:column;align-items:stretch}.class-schedule__filter-group{flex-direction:column}.class-schedule__select{min-width:auto;width:100%}.class-schedule__view-toggle{align-self:center}.class-schedule__nav{padding:12px 16px}.nav-range{font-size:.9rem}.nav-btn{padding:8px 14px;font-size:.8rem}.class-modal{padding:24px 20px;max-height:90vh}.class-modal__header h2{font-size:1.3rem}.class-modal__detail-row{flex-direction:column;align-items:flex-start;gap:6px}.my-booking-card{flex-direction:column;align-items:flex-start;gap:12px}.my-booking-card__actions{width:100%;justify-content:space-between}}@media (max-width: 480px){.class-schedule__header h1{font-size:1.5rem;letter-spacing:1px}.nav-center{flex-direction:column;gap:6px}.class-modal__header h2{font-size:1.1rem}}.health-questionnaire{max-width:900px;margin:0 auto;padding:40px 20px;min-height:calc(100vh - 200px)}.hq-header{text-align:center;margin-bottom:40px}.hq-header h1{font-size:2.5rem;font-weight:900;color:#fff;text-transform:uppercase;letter-spacing:2px;margin-bottom:10px;text-shadow:2px 2px 4px rgba(0,0,0,.5)}.hq-header p{font-size:1.1rem;color:#ccc}.hq-auth-required{text-align:center;padding:60px 40px;background:linear-gradient(135deg,#1a1a1a,#242424);border-radius:12px;border:1px solid #333}.hq-auth-required h2{color:#fff;margin-bottom:15px;font-size:1.5rem}.hq-auth-required p{color:#ccc;margin-bottom:25px}.hq-loading{text-align:center;padding:60px 20px;font-size:1.2rem;color:#ccc}.hq-error-message{background:#dc354526;color:#ff6b6b;padding:16px 20px;border-radius:8px;margin-bottom:20px;border:1px solid rgba(220,53,69,.3);text-align:center}.hq-progress{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:40px;position:relative;padding:0 20px}.hq-progress-step{display:flex;flex-direction:column;align-items:center;z-index:1;flex:0 0 auto}.hq-step-number{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1rem;background:#333;color:#888;border:2px solid #444;transition:all .3s ease;margin-bottom:8px}.hq-progress-step.active .hq-step-number{background:linear-gradient(135deg,#ff6b35,#ff8c42);color:#fff;border-color:#ff6b35;box-shadow:0 0 15px #ff6b3566}.hq-progress-step.completed .hq-step-number{background:#28a745;color:#fff;border-color:#28a745}.hq-step-label{font-size:.8rem;color:#666;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.hq-progress-step.active .hq-step-label,.hq-progress-step.completed .hq-step-label{color:#ccc}.hq-progress-bar{position:absolute;top:20px;left:60px;right:60px;height:3px;background:#333;z-index:0}.hq-progress-fill{height:100%;background:linear-gradient(90deg,#28a745,#ff6b35);transition:width .4s ease;border-radius:2px}.hq-form-card{background:linear-gradient(135deg,#1a1a1a,#242424);border-radius:12px;border:1px solid #333;padding:36px;box-shadow:0 4px 20px #0000004d}.hq-step h2{font-size:1.5rem;font-weight:700;color:#ff6b35;text-transform:uppercase;letter-spacing:1px;margin:0 0 8px}.hq-step-description{color:#888;margin-bottom:28px;font-size:.95rem}.hq-checkbox-group{display:grid;gap:12px;margin-bottom:24px}.hq-checkbox-label{display:flex;align-items:center;gap:12px;padding:14px 18px;background:#0d0d0d;border:1px solid #333;border-radius:8px;color:#ccc;cursor:pointer;transition:all .2s ease;font-size:.95rem}.hq-checkbox-label:hover{border-color:#ff6b35;background:#ff6b350d}.hq-checkbox-label input[type=checkbox]{display:none}.hq-checkbox-custom{width:20px;height:20px;min-width:20px;border:2px solid #555;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.hq-checkbox-label input[type=checkbox]:checked+.hq-checkbox-custom{background:#ff6b35;border-color:#ff6b35}.hq-checkbox-label input[type=checkbox]:checked+.hq-checkbox-custom:after{content:"✓";color:#fff;font-size:.75rem;font-weight:700}.hq-form-group{margin-bottom:20px}.hq-form-group label{display:block;color:#ccc;font-weight:600;margin-bottom:8px;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px}.hq-form-group textarea,.hq-form-group input,.hq-form-group select{width:100%;padding:14px 16px;background:#0d0d0d;border:1px solid #333;border-radius:8px;color:#fff;font-size:1rem;font-family:inherit;transition:border-color .2s ease,box-shadow .2s ease;box-sizing:border-box}.hq-form-group textarea:focus,.hq-form-group input:focus,.hq-form-group select:focus{outline:none;border-color:#ff6b35;box-shadow:0 0 0 3px #ff6b3526}.hq-form-group textarea::placeholder,.hq-form-group input::placeholder{color:#555}.hq-form-group select option{background:#1a1a1a;color:#fff}.hq-goals-grid{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}.hq-goal-chip{padding:10px 18px;border:1px solid #444;border-radius:24px;background:#0d0d0d;color:#ccc;cursor:pointer;font-size:.9rem;transition:all .2s ease}.hq-goal-chip:hover{border-color:#ff6b35;color:#fff}.hq-goal-chip.selected{background:#ff6b3533;border-color:#ff6b35;color:#ff8c42;font-weight:600}.hq-physician-section{margin-top:28px;padding-top:24px;border-top:1px solid #333}.hq-physician-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px;padding:20px;background:#ff6b350d;border-radius:8px;border:1px solid rgba(255,107,53,.15)}.hq-review-section{padding:20px;background:#0d0d0d;border-radius:8px;border:1px solid #333;margin-bottom:16px}.hq-review-section h3{margin:0 0 14px;color:#ff6b35;font-size:.95rem;text-transform:uppercase;letter-spacing:.5px}.hq-review-items{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.hq-review-tag{padding:6px 14px;background:#ff6b3526;border:1px solid rgba(255,107,53,.3);border-radius:20px;color:#ff8c42;font-size:.85rem;font-weight:600}.hq-review-none{color:#666;font-style:italic;font-size:.9rem}.hq-review-text{color:#aaa;font-size:.9rem;margin:8px 0 0;line-height:1.5}.hq-review-row{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #222}.hq-review-row:last-child{border-bottom:none;padding-bottom:0}.hq-review-label{color:#888;font-weight:600;font-size:.85rem;text-transform:uppercase;letter-spacing:.5px}.hq-review-value{color:#fff;font-size:.95rem;text-align:right;max-width:60%}.hq-acknowledgment{margin-top:24px;padding:20px;background:#ffc10714;border:1px solid rgba(255,193,7,.2);border-radius:8px}.hq-acknowledgment .hq-checkbox-label{background:transparent;border:none;padding:0;line-height:1.5}.hq-nav{display:flex;align-items:center;margin-top:32px;padding-top:24px;border-top:1px solid #333}.hq-nav-spacer{flex:1}.hq-btn-primary{background:linear-gradient(135deg,#ff6b35,#ff8c42);color:#fff;border:none;padding:14px 30px;border-radius:8px;font-size:1rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #ff6b354d}.hq-btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#ff8c42,#ff6b35);transform:translateY(-2px);box-shadow:0 6px 20px #ff6b3566}.hq-btn-primary:disabled{opacity:.5;cursor:not-allowed}.hq-btn-secondary{background:transparent;color:#ccc;border:2px solid #555;padding:12px 28px;border-radius:8px;font-size:.95rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:all .3s ease}.hq-btn-secondary:hover{border-color:#888;color:#fff;transform:translateY(-2px)}.hq-success-card{background:linear-gradient(135deg,#1a1a1a,#242424);border-radius:12px;border:2px solid #28a745;padding:60px 40px;text-align:center;box-shadow:0 4px 20px #0000004d}.hq-success-icon{width:64px;height:64px;border-radius:50%;background:#28a74533;border:2px solid #28a745;display:flex;align-items:center;justify-content:center;margin:0 auto 24px;font-size:2rem;color:#28a745}.hq-success-card h2{color:#fff;margin-bottom:16px;font-size:1.5rem}.hq-success-card p{color:#ccc;margin-bottom:30px;line-height:1.6;max-width:500px;margin-left:auto;margin-right:auto}@media (max-width: 768px){.health-questionnaire{padding:30px 15px}.hq-header h1{font-size:1.8rem}.hq-form-card{padding:24px 18px}.hq-step-label{display:none}.hq-progress{padding:0 10px}.hq-progress-bar{left:30px;right:30px}.hq-physician-fields{grid-template-columns:1fr}.hq-review-row{flex-direction:column;gap:4px}.hq-review-value{text-align:left;max-width:100%}.hq-nav{flex-wrap:wrap;gap:12px}.hq-nav-spacer{display:none}.hq-btn-primary,.hq-btn-secondary{width:100%;text-align:center}}.billing-history{max-width:1200px;margin:0 auto;padding:40px 20px;min-height:calc(100vh - 200px)}.bh-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:40px;flex-wrap:wrap;gap:20px}.bh-header-text h1{font-size:2.5rem;font-weight:900;color:#fff;text-transform:uppercase;letter-spacing:2px;margin:0 0 10px;text-shadow:2px 2px 4px rgba(0,0,0,.5)}.bh-header-text p{font-size:1.1rem;color:#ccc;margin:0}.bh-auth-required{text-align:center;padding:60px 40px;background:linear-gradient(135deg,#1a1a1a,#242424);border-radius:12px;border:1px solid #333}.bh-auth-required h2{color:#fff;margin-bottom:15px;font-size:1.5rem}.bh-auth-required p{color:#ccc;margin-bottom:25px}.bh-loading{text-align:center;padding:60px 20px;font-size:1.2rem;color:#ccc}.bh-error-message{background:#dc354526;color:#ff6b6b;padding:16px 20px;border-radius:8px;margin-bottom:20px;border:1px solid rgba(220,53,69,.3);text-align:center}.bh-empty-state{background:linear-gradient(135deg,#1a1a1a,#242424);border-radius:12px;border:1px solid #333;padding:80px 40px;text-align:center;box-shadow:0 4px 20px #0000004d}.bh-empty-icon{font-size:3rem;margin-bottom:20px;opacity:.6}.bh-empty-state h2{color:#fff;margin-bottom:12px;font-size:1.5rem}.bh-empty-state p{color:#888;margin-bottom:30px;font-size:1.05rem}.bh-table-card{background:linear-gradient(135deg,#1a1a1a,#242424);border-radius:12px;border:1px solid #333;padding:0;box-shadow:0 4px 20px #0000004d;overflow:hidden}.bh-table-wrapper{overflow-x:auto}.bh-table{width:100%;border-collapse:collapse}.bh-table th{background:#0d0d0d;padding:18px 24px;text-align:left;font-weight:700;color:#ff6b35;border-bottom:2px solid #ff6b35;text-transform:uppercase;font-size:.85rem;letter-spacing:.5px;white-space:nowrap}.bh-table td{padding:18px 24px;border-bottom:1px solid #2a2a2a;color:#fff;font-size:.95rem}.bh-table tbody tr{transition:background .2s ease}.bh-table tbody tr:hover{background:#ff6b350f}.bh-table tbody tr:last-child td{border-bottom:none}.bh-description{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bh-amount{font-weight:700;color:#fff;font-variant-numeric:tabular-nums}.bh-status-badge{display:inline-block;padding:5px 14px;border-radius:20px;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.bh-status-paid{background:#28a74533;color:#5cb85c;border:1px solid #5cb85c}.bh-status-pending{background:#ffc10733;color:#ffc107;border:1px solid #ffc107}.bh-status-failed{background:#dc354533;color:#ff6b6b;border:1px solid #ff6b6b}.bh-status-refunded{background:#3498db33;color:#3498db;border:1px solid #3498db}.bh-status-default{background:#8883;color:#888;border:1px solid #888888}.bh-receipt-btn{background:transparent;color:#ff6b35;border:1px solid #ff6b35;padding:6px 16px;border-radius:6px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap}.bh-receipt-btn:hover{background:#ff6b3526;transform:translateY(-1px)}.bh-no-receipt{color:#555}.bh-btn-primary{background:linear-gradient(135deg,#ff6b35,#ff8c42);color:#fff;border:none;padding:14px 30px;border-radius:8px;font-size:1rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #ff6b354d;white-space:nowrap}.bh-btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#ff8c42,#ff6b35);transform:translateY(-2px);box-shadow:0 6px 20px #ff6b3566}.bh-btn-primary:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.billing-history{padding:30px 15px}.bh-header{flex-direction:column;text-align:center;align-items:center}.bh-header-text h1{font-size:1.8rem}.bh-btn-primary{width:100%;text-align:center}.bh-table th,.bh-table td{padding:14px 16px;white-space:nowrap}.bh-table th:nth-child(2),.bh-table td:nth-child(2){max-width:160px}.bh-empty-state{padding:50px 24px}}.trainer-directory{max-width:1200px;margin:0 auto;padding:40px 20px;min-height:calc(100vh - 200px)}.td-header{text-align:center;margin-bottom:40px}.td-header h1{font-size:2.5rem;font-weight:900;color:#fff;text-transform:uppercase;letter-spacing:2px;margin-bottom:10px;text-shadow:2px 2px 4px rgba(0,0,0,.5)}.td-header p{font-size:1.1rem;color:#ccc}.td-loading{text-align:center;padding:60px 20px;font-size:1.2rem;color:#ccc}.td-error-message{background:#dc354526;color:#ff6b6b;padding:16px 20px;border-radius:8px;margin-bottom:20px;border:1px solid rgba(220,53,69,.3);text-align:center}.td-success-message{background:#28a74526;color:#5cb85c;padding:16px 20px;border-radius:8px;margin-bottom:20px;border:1px solid rgba(40,167,69,.3);text-align:center}.td-empty-state{background:linear-gradient(135deg,#1a1a1a,#242424);border-radius:12px;border:1px solid #333;padding:80px 40px;text-align:center;box-shadow:0 4px 20px #0000004d}.td-empty-state h2{color:#fff;margin-bottom:12px;font-size:1.5rem}.td-empty-state p{color:#888;font-size:1.05rem}.td-layout{display:grid;grid-template-columns:1fr;gap:30px}.td-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px}.td-card{background:linear-gradient(135deg,#1a1a1a,#242424);border-radius:12px;border:1px solid #333;overflow:hidden;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #0003}.td-card:hover{border-color:#ff6b35;transform:translateY(-4px);box-shadow:0 8px 24px #0000004d}.td-card.selected{border-color:#ff6b35;box-shadow:0 0 0 2px #ff6b354d,0 8px 24px #0000004d}.td-card-photo{width:100%;height:200px;overflow:hidden;background:#0d0d0d}.td-card-photo img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.td-card:hover .td-card-photo img{transform:scale(1.05)}.td-card-avatar{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:3.5rem;font-weight:900;color:#ff6b35;background:linear-gradient(135deg,#0d0d0d,#1a1a1a)}.td-card-info{padding:20px}.td-card-info h3{color:#fff;font-size:1.15rem;font-weight:700;margin:0 0 10px}.td-specializations{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.td-spec-tag{padding:4px 10px;background:#ff6b351f;border:1px solid rgba(255,107,53,.25);border-radius:12px;color:#ff8c42;font-size:.75rem;font-weight:600;white-space:nowrap}.td-spec-more{padding:4px 10px;color:#888;font-size:.75rem;font-weight:600}.td-card-rate{color:#28a745;font-size:1.1rem;font-weight:700}.td-detail-panel{background:linear-gradient(135deg,#1a1a1a,#242424);border-radius:12px;border:2px solid #ff6b35;padding:30px;box-shadow:0 4px 20px #0000004d}.td-detail-loading{text-align:center;padding:40px;color:#ccc}.td-detail-header{display:flex;align-items:center;gap:20px;margin-bottom:28px;padding-bottom:24px;border-bottom:2px solid #333}.td-detail-photo{width:80px;height:80px;min-width:80px;border-radius:50%;overflow:hidden;border:3px solid #ff6b35}.td-detail-photo img{width:100%;height:100%;object-fit:cover}.td-detail-avatar{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:900;color:#ff6b35;background:#0d0d0d}.td-detail-title{flex:1}.td-detail-title h2{color:#fff;font-size:1.5rem;font-weight:700;margin:0 0 6px}.td-detail-rate{color:#28a745;font-size:1.2rem;font-weight:700}.td-close-btn{width:36px;height:36px;border-radius:50%;background:transparent;border:1px solid #555;color:#888;font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.td-close-btn:hover{border-color:#ff6b6b;color:#ff6b6b;background:#dc35451a}.td-detail-section{margin-bottom:24px}.td-detail-section h3{color:#ff6b35;font-size:.95rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin:0 0 12px}.td-detail-section p{color:#ccc;line-height:1.7;margin:0;font-size:.95rem}.td-detail-tags{display:flex;flex-wrap:wrap;gap:8px}.td-cert-list{list-style:none;padding:0;margin:0}.td-cert-list li{padding:10px 16px;background:#0d0d0d;border:1px solid #333;border-radius:8px;color:#ccc;margin-bottom:8px;font-size:.9rem}.td-cert-list li:before{content:"✓";color:#28a745;font-weight:700;margin-right:8px}.td-avail-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}.td-avail-slot{display:flex;flex-direction:column;padding:12px 16px;background:#0d0d0d;border:1px solid #333;border-radius:8px}.td-avail-day{color:#ff8c42;font-weight:700;font-size:.85rem;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.td-avail-time{color:#ccc;font-size:.9rem}.td-book-btn{width:100%;margin-top:8px}.td-booking-form{margin-top:24px;padding:24px;background:#0d0d0d;border:1px solid #333;border-radius:8px}.td-booking-form h3{color:#ff6b35;font-size:1rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin:0 0 20px}.td-booking-error{margin-bottom:16px}.td-form-group{margin-bottom:18px}.td-form-group label{display:block;color:#ccc;font-weight:600;margin-bottom:8px;font-size:.85rem;text-transform:uppercase;letter-spacing:.5px}.td-form-group input,.td-form-group select{width:100%;padding:12px 14px;background:#1a1a1a;border:1px solid #444;border-radius:8px;color:#fff;font-size:1rem;font-family:inherit;transition:border-color .2s ease,box-shadow .2s ease;box-sizing:border-box}.td-form-group input:focus,.td-form-group select:focus{outline:none;border-color:#ff6b35;box-shadow:0 0 0 3px #ff6b3526}.td-form-group select option{background:#1a1a1a;color:#fff}.td-form-group input[type=datetime-local]::-webkit-calendar-picker-indicator{filter:invert(1);cursor:pointer}.td-booking-actions{display:flex;gap:12px;margin-top:24px}.td-btn-primary{background:linear-gradient(135deg,#ff6b35,#ff8c42);color:#fff;border:none;padding:14px 30px;border-radius:8px;font-size:1rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #ff6b354d}.td-btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#ff8c42,#ff6b35);transform:translateY(-2px);box-shadow:0 6px 20px #ff6b3566}.td-btn-primary:disabled{opacity:.5;cursor:not-allowed}.td-btn-secondary{background:transparent;color:#ccc;border:2px solid #555;padding:12px 28px;border-radius:8px;font-size:.95rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:all .3s ease}.td-btn-secondary:hover{border-color:#888;color:#fff;transform:translateY(-2px)}@media (max-width: 768px){.trainer-directory{padding:30px 15px}.td-header h1{font-size:1.8rem}.td-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}.td-detail-panel{padding:20px}.td-detail-header{flex-wrap:wrap}.td-detail-photo{width:60px;height:60px;min-width:60px}.td-avail-grid{grid-template-columns:1fr}.td-booking-actions{flex-direction:column}.td-btn-primary,.td-btn-secondary{width:100%;text-align:center}.td-physician-fields{grid-template-columns:1fr}}@media (min-width: 992px){.td-layout{grid-template-columns:1fr 400px}.td-detail-panel{position:sticky;top:20px;max-height:calc(100vh - 40px);overflow-y:auto}}.admin-settings{max-width:900px;margin:0 auto;padding:40px 20px;min-height:calc(100vh - 200px)}.admin-settings h1{font-size:2rem;font-weight:900;color:#fff;text-transform:uppercase;letter-spacing:2px;margin-bottom:10px}.admin-settings .section-description{color:#888;margin-bottom:30px}.settings-category{margin-bottom:30px}.settings-category h2{color:#ff6b35;font-size:1.2rem;text-transform:uppercase;letter-spacing:1px;margin-bottom:16px;padding-bottom:8px;border-bottom:1px solid #333}.settings-list{display:flex;flex-direction:column;gap:12px}.setting-item{background:#1a1a1a;border:1px solid #333;border-radius:8px;padding:16px 20px}.setting-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.setting-key{font-weight:700;color:#fff;font-family:monospace;font-size:.95rem}.setting-type{font-size:.75rem;padding:2px 8px;border-radius:4px;text-transform:uppercase;font-weight:600}.type-string{background:#3498db33;color:#3498db}.type-number{background:#2ecc7133;color:#2ecc71}.type-boolean{background:#9b59b633;color:#9b59b6}.type-json{background:#f1c40f33;color:#f1c40f}.setting-description{color:#888;font-size:.85rem;margin-bottom:10px}.setting-value-row{display:flex;justify-content:space-between;align-items:center;gap:12px}.setting-value{color:#ccc;font-family:monospace;font-size:.9rem;word-break:break-all}.setting-edit{flex:1}.setting-edit input,.setting-edit select,.setting-edit textarea{width:100%;padding:8px 12px;background:#0d0d0d;border:1px solid #444;border-radius:6px;color:#fff;font-size:.9rem;font-family:monospace;margin-bottom:10px}.setting-edit textarea{resize:vertical;font-family:monospace}.edit-actions{display:flex;gap:8px}.btn-edit{background:transparent;color:#ff6b35;border:1px solid #ff6b35;padding:6px 14px;border-radius:6px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-edit:hover{background:#ff6b351a}.btn-save{background:linear-gradient(135deg,#ff6b35,#ff8c42);color:#fff;border:none;padding:6px 16px;border-radius:6px;font-size:.85rem;font-weight:600;cursor:pointer}.btn-cancel{background:transparent;color:#888;border:1px solid #555;padding:6px 14px;border-radius:6px;font-size:.85rem;cursor:pointer}.btn-cancel:hover{color:#fff;border-color:#888}.no-settings{text-align:center;padding:40px;color:#888;background:#1a1a1a;border-radius:8px;border:1px solid #333}.loading{text-align:center;padding:60px 20px;font-size:1.2rem;color:#ccc}.locker-management{max-width:1200px;margin:0 auto;padding:40px 20px;min-height:calc(100vh - 200px)}.locker-management h1{font-size:2rem;font-weight:900;color:#fff;text-transform:uppercase;letter-spacing:2px;margin-bottom:30px}.locker-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-bottom:24px}.stat-card{background:#1a1a1a;border:1px solid #333;border-radius:8px;padding:16px;text-align:center}.stat-card.available{border-color:#5cb85c80}.stat-card.assigned{border-color:#3498db80}.stat-card.maintenance{border-color:#ffc10780}.stat-value{font-size:1.8rem;font-weight:900;color:#fff}.stat-label{font-size:.8rem;color:#888;text-transform:uppercase;letter-spacing:.5px}.locker-filters{display:flex;gap:12px;margin-bottom:24px;flex-wrap:wrap}.locker-filters select{padding:8px 14px;background:#1a1a1a;border:1px solid #444;border-radius:6px;color:#ccc;font-size:.9rem}.locker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}.locker-card{background:#1a1a1a;border:1px solid #333;border-radius:8px;padding:16px;text-align:center;transition:border-color .2s}.locker-card.status-available{border-left:3px solid #5cb85c}.locker-card.status-assigned{border-left:3px solid #3498db}.locker-card.status-maintenance{border-left:3px solid #ffc107}.locker-card.status-out_of_service{border-left:3px solid #ff6b6b}.locker-number{font-size:1.3rem;font-weight:900;color:#fff;margin-bottom:6px}.locker-meta{display:flex;justify-content:center;gap:8px;margin-bottom:6px}.locker-size,.locker-section{font-size:.75rem;padding:2px 8px;border-radius:4px;background:#ffffff1a;color:#aaa}.locker-status{font-size:.8rem;font-weight:700;text-transform:uppercase;margin-bottom:6px}.locker-assignee{font-size:.85rem;color:#3498db;margin-bottom:8px}.locker-actions{display:flex;gap:6px;justify-content:center;flex-wrap:wrap}.btn-sm{padding:4px 10px;border-radius:4px;font-size:.75rem;font-weight:600;cursor:pointer;border:1px solid;background:transparent;transition:all .2s}.btn-assign{color:#5cb85c;border-color:#5cb85c}.btn-assign:hover{background:#5cb85c26}.btn-release{color:#ff6b6b;border-color:#ff6b6b}.btn-release:hover{background:#ff6b6b26}.btn-maint{color:#ffc107;border-color:#ffc107}.btn-maint:hover{background:#ffc10726}.btn-restore{color:#5cb85c;border-color:#5cb85c}.btn-restore:hover{background:#5cb85c26}.no-lockers{grid-column:1 / -1;text-align:center;padding:40px;color:#888}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#1a1a1a;border:1px solid #444;border-radius:12px;padding:30px;width:100%;max-width:400px}.modal-content h3{color:#fff;margin-bottom:20px}.form-group{margin-bottom:16px}.form-group label{display:block;color:#888;font-size:.85rem;margin-bottom:6px;text-transform:uppercase;letter-spacing:.5px}.form-group input{width:100%;padding:10px 14px;background:#0d0d0d;border:1px solid #444;border-radius:6px;color:#fff;font-size:.95rem}.modal-actions{display:flex;gap:10px;justify-content:flex-end}.btn-save{background:linear-gradient(135deg,#ff6b35,#ff8c42);color:#fff;border:none;padding:8px 20px;border-radius:6px;font-weight:600;cursor:pointer}.btn-save:disabled{opacity:.5;cursor:not-allowed}.btn-cancel{background:transparent;color:#888;border:1px solid #555;padding:8px 16px;border-radius:6px;cursor:pointer}.error-message{background:#dc354526;color:#ff6b6b;padding:12px 16px;border-radius:8px;margin-bottom:20px;border:1px solid rgba(220,53,69,.3)}.success-message{background:#28a74526;color:#5cb85c;padding:12px 16px;border-radius:8px;margin-bottom:20px;border:1px solid rgba(40,167,69,.3)}.loading{text-align:center;padding:60px;color:#ccc;font-size:1.2rem}@media (max-width: 768px){.locker-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.locker-filters{flex-direction:column}}.verify-email-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a1a1a,#2d2d2d);padding:20px}.verify-email-card{background:#fff;border-radius:12px;box-shadow:0 20px 40px #0000001a;padding:50px 40px;width:100%;max-width:420px;text-align:center}.verify-email-card h1{color:#333;font-size:1.8rem;font-weight:700;margin-bottom:12px}.verify-email-card p{color:#666;font-size:1rem;line-height:1.6;margin-bottom:24px}.verify-email-icon{width:72px;height:72px;margin:0 auto 24px;display:flex;align-items:center;justify-content:center}.verify-email-icon.success{color:#27ae60}.verify-email-icon.success svg{width:64px;height:64px}.verify-email-icon.error{color:#e74c3c}.verify-email-icon.error svg{width:64px;height:64px}.spinner{width:48px;height:48px;border:4px solid #e1e5e9;border-top-color:#ff6b35;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.verify-email-button{display:inline-block;background:linear-gradient(135deg,#ff6b35,#f7931e);color:#fff;border:none;padding:14px 32px;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;text-decoration:none}.verify-email-button:hover{transform:translateY(-2px);box-shadow:0 8px 25px #ff6b354d;color:#fff}@media (max-width: 768px){.verify-email-container{padding:10px}.verify-email-card{padding:40px 20px}.verify-email-card h1{font-size:1.5rem}}.admin-layout{display:flex;min-height:calc(100vh - 80px);background:#f5f5f5}.admin-sidebar{width:220px;background:#1a1a1a;color:#fff;padding:24px 0;flex-shrink:0}.admin-sidebar-title{padding:0 24px 16px;margin:0;font-size:18px;letter-spacing:2px;border-bottom:1px solid #333}.admin-sidebar nav{display:flex;flex-direction:column;margin-top:12px}.admin-nav-link{display:block;padding:10px 24px;color:#ccc;text-decoration:none;font-size:14px;border-left:3px solid transparent}.admin-nav-link:hover{background:#2a2a2a;color:#fff}.admin-nav-link.active{background:#2a2a2a;color:#ff6b00;border-left-color:#ff6b00}.admin-main{flex:1;padding:24px 32px;overflow-x:auto}@media (max-width: 768px){.admin-layout{flex-direction:column}.admin-sidebar{width:100%;padding:12px 0}.admin-sidebar nav{flex-direction:row;flex-wrap:wrap;margin-top:8px}.admin-nav-link{padding:8px 12px;border-left:none;border-bottom:3px solid transparent}.admin-nav-link.active{border-left:none;border-bottom-color:#ff6b00}}.admin-analytics{padding:1.5rem;max-width:1400px}.admin-analytics h1{margin:0 0 1.5rem}.admin-analytics h2{font-size:1.1rem;margin:0 0 .75rem}.analytics-error{background:#fee;border:1px solid #f99;color:#900;padding:1rem;border-radius:4px}.stat-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-bottom:1.5rem}.stat-card{background:#fff;border:1px solid #ddd;border-radius:6px;padding:1rem}.stat-label{font-size:.85rem;color:#666;text-transform:uppercase;letter-spacing:.03em}.stat-value{font-size:1.75rem;font-weight:700;margin:.25rem 0}.stat-sub{font-size:.8rem;color:#777}.analytics-section{background:#fff;border:1px solid #ddd;border-radius:6px;padding:1rem;margin-bottom:1.5rem}.analytics-section.two-col{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;background:transparent;border:none;padding:0}.analytics-section.two-col>div{background:#fff;border:1px solid #ddd;border-radius:6px;padding:1rem}.analytics-table{width:100%;border-collapse:collapse;font-size:.9rem}.analytics-table th,.analytics-table td{text-align:left;padding:.5rem .75rem;border-bottom:1px solid #eee}.analytics-table th{background:#f7f7f7;font-weight:600}.analytics-table tr:hover td{background:#fafafa}@media (max-width: 800px){.analytics-section.two-col{grid-template-columns:1fr}}.admin-audit-logs{padding:1.5rem;max-width:1400px;margin:0 auto}.audit-header h1{margin:0 0 .25rem;font-size:1.75rem}.audit-subtitle{margin:0 0 1.25rem;color:#666}.audit-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.75rem;background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;padding:1rem;margin-bottom:1rem;align-items:end}.filter-field{display:flex;flex-direction:column;gap:.25rem}.filter-field label{font-size:.75rem;font-weight:600;color:#555;text-transform:uppercase;letter-spacing:.03em}.filter-field input{padding:.5rem .625rem;border:1px solid #ccc;border-radius:4px;font-size:.875rem;background:#fff}.filter-actions{display:flex;gap:.5rem}.btn{padding:.5rem 1rem;border-radius:4px;border:1px solid transparent;font-size:.875rem;font-weight:500;cursor:pointer}.btn[disabled]{opacity:.5;cursor:not-allowed}.btn-primary{background:#2563eb;color:#fff}.btn-primary:hover:not([disabled]){background:#1d4ed8}.btn-secondary{background:#fff;color:#333;border-color:#ccc}.btn-secondary:hover:not([disabled]){background:#f1f3f5}.audit-error{background:#fee;border:1px solid #fcc;color:#c33;padding:.75rem 1rem;border-radius:4px;margin-bottom:1rem}.audit-table-wrap{background:#fff;border:1px solid #e0e0e0;border-radius:8px;overflow-x:auto}.audit-loading,.audit-empty{padding:2rem;text-align:center;color:#666}.audit-table{width:100%;border-collapse:collapse;font-size:.875rem}.audit-table th,.audit-table td{padding:.625rem .75rem;text-align:left;border-bottom:1px solid #eee;vertical-align:top}.audit-table thead th{background:#f8f9fa;font-weight:600;font-size:.75rem;text-transform:uppercase;color:#555}.audit-table tbody tr:hover{background:#fafbfc}.audit-table .row-open{background:#f0f7ff}.audit-table code{background:#f1f3f5;padding:.125rem .375rem;border-radius:3px;font-size:.8125rem}.toggle-btn{width:22px;height:22px;border:1px solid #ccc;background:#fff;border-radius:4px;cursor:pointer;font-weight:700;line-height:1}.toggle-btn:hover{background:#f1f3f5}.details-row td{background:#fafbfc;border-bottom:1px solid #e0e0e0}.details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:.75rem;padding:.5rem 0}.details-grid .ua{grid-column:1 / -1;word-break:break-all}.details-grid pre{background:#1e1e1e;color:#e0e0e0;padding:.625rem;border-radius:4px;font-size:.75rem;max-height:280px;overflow:auto;margin:.25rem 0 0}.audit-pagination{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:1rem}.page-info{font-size:.875rem;color:#555}.admin-announcements{padding:1rem}.admin-announcements .aa-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.admin-announcements h1{margin:0}.admin-announcements .btn-primary{background:#3498db;color:#fff;border:none;padding:.6rem 1.2rem;border-radius:4px;cursor:pointer;font-weight:600}.admin-announcements .btn-primary:hover{background:#2980b9}.admin-announcements .error-message{background:#f8d7da;color:#721c24;padding:.75rem;border-radius:4px;margin-bottom:1rem}.admin-announcements .success-message{background:#d4edda;color:#155724;padding:.75rem;border-radius:4px;margin-bottom:1rem}.admin-announcements .loading,.admin-announcements .empty{text-align:center;padding:2rem;color:#888}.aa-form{background:#fff;border:1px solid #e0e0e0;border-radius:6px;padding:1.5rem;margin-bottom:1.5rem}.aa-form h3{margin-top:0}.aa-form .form-group{margin-bottom:1rem}.aa-form .form-group label{display:block;font-weight:600;margin-bottom:.4rem}.aa-form input[type=text],.aa-form input[type=number],.aa-form input[type=datetime-local],.aa-form select,.aa-form textarea{width:100%;padding:.5rem;border:1px solid #ccc;border-radius:4px;font-size:.95rem;box-sizing:border-box}.aa-form .form-row{display:flex;gap:1rem;align-items:flex-start}.aa-form .form-row .form-group{flex:1}.aa-form .role-checkboxes{display:flex;gap:1rem;flex-wrap:wrap}.aa-form .role-checkbox,.aa-form .inline-check{display:flex;align-items:center;gap:.4rem;font-weight:400;cursor:pointer}.aa-form .form-actions{display:flex;gap:.5rem;margin-top:1rem}.aa-form .btn-save{background:#5cb85c;color:#fff;border:none;padding:.6rem 1.2rem;border-radius:4px;cursor:pointer;font-weight:600}.aa-form .btn-save:disabled{opacity:.6;cursor:not-allowed}.aa-form .btn-cancel{background:#ccc;color:#333;border:none;padding:.6rem 1.2rem;border-radius:4px;cursor:pointer}.aa-table-wrap{overflow-x:auto;background:#fff;border-radius:6px;border:1px solid #e0e0e0}.aa-table{width:100%;border-collapse:collapse}.aa-table th,.aa-table td{padding:.75rem;text-align:left;border-bottom:1px solid #eee;vertical-align:top}.aa-table th{background:#f7f7f7;font-weight:600}.aa-table tr:hover{background:#fafafa}.aa-table .dates{font-size:.85rem}.aa-table .muted{color:#888}.type-badge{display:inline-block;padding:.2rem .5rem;border-radius:3px;font-size:.75rem;font-weight:600;color:#fff}.type-info{background:#3498db}.type-warning{background:#ffc107;color:#333}.type-alert{background:#ff6b6b}.type-promotion{background:#9b59b6}.type-maintenance{background:#888}.btn-sm{padding:.3rem .6rem;border:none;border-radius:3px;font-size:.8rem;cursor:pointer;margin-right:.3rem}.btn-delete{background:#ff6b6b;color:#fff}.admin-waivers{padding:1.5rem;max-width:1200px;margin:0 auto}.admin-waivers h1{margin-bottom:.5rem}.admin-waivers .section-description{color:#666;margin-bottom:1.5rem}.admin-waivers .loading{padding:2rem;text-align:center;color:#666}.admin-waivers .error-message{background:#fee;color:#c00;padding:.75rem 1rem;border-radius:6px;margin-bottom:1rem;border:1px solid #fcc}.admin-waivers .success-message{background:#efe;color:#060;padding:.75rem 1rem;border-radius:6px;margin-bottom:1rem;border:1px solid #cfc}.waiver-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:2rem}.stat-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1.25rem;box-shadow:0 1px 3px #0000000a}.stat-card .stat-label{font-size:.85rem;color:#666;text-transform:uppercase;letter-spacing:.5px}.stat-card .stat-value{font-size:2rem;font-weight:700;color:#222;margin-top:.25rem}.stat-card.warn .stat-value{color:#d97706}.stat-card.danger .stat-value{color:#c00}.stat-card.good .stat-value{color:#059669}.waiver-section{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1.5rem;margin-bottom:1.5rem}.waiver-section h2{margin-top:0;margin-bottom:1rem;font-size:1.25rem}.waiver-form .form-row{display:flex;gap:1rem;margin-bottom:1rem;flex-wrap:wrap}.waiver-form .form-group{display:flex;flex-direction:column;flex:1;min-width:180px}.waiver-form label{font-weight:600;font-size:.9rem;margin-bottom:.35rem;color:#333}.waiver-form input,.waiver-form textarea{padding:.6rem .75rem;border:1px solid #ccc;border-radius:6px;font-family:inherit;font-size:.95rem}.waiver-form textarea{resize:vertical;min-height:220px;font-family:ui-monospace,monospace;font-size:.85rem}.waiver-form .form-actions{margin-top:1rem}.waiver-form button{background:#2563eb;color:#fff;border:none;padding:.65rem 1.25rem;border-radius:6px;cursor:pointer;font-weight:600}.waiver-form button:disabled{opacity:.6;cursor:not-allowed}.collapsible-section{background:#fff;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:1rem;overflow:hidden}.collapsible-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;cursor:pointer;-webkit-user-select:none;user-select:none;background:#f9fafb}.collapsible-header:hover{background:#f3f4f6}.collapsible-header h2{margin:0;font-size:1.1rem}.collapsible-header .badge{background:#e5e7eb;padding:.2rem .6rem;border-radius:999px;font-size:.85rem;font-weight:600}.collapsible-header .badge.danger{background:#fee2e2;color:#c00}.collapsible-header .badge.warn{background:#fef3c7;color:#b45309}.collapsible-body{padding:1rem 1.25rem;border-top:1px solid #e5e7eb}.waiver-table{width:100%;border-collapse:collapse}.waiver-table th,.waiver-table td{padding:.6rem .75rem;text-align:left;border-bottom:1px solid #eee;font-size:.9rem}.waiver-table th{background:#f9fafb;font-weight:600;color:#444}.waiver-table tr:last-child td{border-bottom:none}.empty-row{text-align:center;color:#888;padding:1rem}.admin-promo-codes{padding:1.5rem}.apc-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.apc-header h2{margin:0}.apc-btn{padding:.5rem 1rem;border:1px solid #ccc;background:#fff;border-radius:4px;cursor:pointer;font-size:.9rem}.apc-btn:hover{background:#f5f5f5}.apc-btn-primary{background:#2563eb;color:#fff;border-color:#2563eb}.apc-btn-primary:hover{background:#1d4ed8}.apc-btn-danger{background:#dc2626;color:#fff;border-color:#dc2626}.apc-btn-danger:hover{background:#b91c1c}.apc-btn-sm{padding:.3rem .6rem;font-size:.8rem;margin-right:.25rem}.apc-btn:disabled{opacity:.5;cursor:not-allowed}.apc-alert{padding:.75rem 1rem;border-radius:4px;margin-bottom:1rem}.apc-alert-error{background:#fee;color:#c00;border:1px solid #fcc}.apc-alert-success{background:#efe;color:#060;border:1px solid #cfc}.apc-form{background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;padding:1.25rem;margin-bottom:1.5rem}.apc-form h3{margin-top:0}.apc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem}.apc-grid label{display:flex;flex-direction:column;font-size:.85rem;color:#374151}.apc-grid input,.apc-grid select{margin-top:.25rem;padding:.5rem;border:1px solid #d1d5db;border-radius:4px;font-size:.9rem}.apc-checkbox{flex-direction:row!important;align-items:center;gap:.5rem}.apc-checkbox input{margin:0}.apc-form-actions{display:flex;gap:.5rem;margin-top:1rem}.apc-table-wrap{overflow-x:auto}.apc-table{width:100%;border-collapse:collapse;background:#fff}.apc-table th,.apc-table td{padding:.75rem;text-align:left;border-bottom:1px solid #e5e7eb;font-size:.9rem}.apc-table th{background:#f3f4f6;font-weight:600}.apc-table tr:hover{background:#fafafa}.apc-desc{font-size:.75rem;color:#6b7280;margin-top:.2rem}.apc-actions{white-space:nowrap}.apc-badge{padding:.2rem .6rem;border-radius:12px;font-size:.75rem;font-weight:600}.apc-badge-on{background:#d1fae5;color:#065f46}.apc-badge-off{background:#fee2e2;color:#991b1b}.apc-loading,.apc-empty{padding:2rem;text-align:center;color:#6b7280}.apc-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.apc-modal{background:#fff;border-radius:6px;padding:1.5rem;max-width:500px;width:90%;max-height:80vh;overflow-y:auto}.apc-modal h3{margin-top:0}.apc-stats{margin:1rem 0}.apc-stat-row{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid #f3f4f6}.apc-stat-key{color:#6b7280;text-transform:capitalize}.apc-stat-val{font-weight:600}.admin-locations{padding:1.5rem;color:#fff}.admin-locations .loading{padding:2rem;text-align:center;color:#aaa}.loc-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.loc-header h1{margin:0}.admin-locations .error-message{background:#4a1a1a;color:#ff8a8a;padding:.75rem 1rem;border-radius:4px;margin-bottom:1rem;border:1px solid #ff6b6b}.admin-locations .success-message{background:#1a4a2a;color:#8aff9e;padding:.75rem 1rem;border-radius:4px;margin-bottom:1rem;border:1px solid #5cb85c}.btn-primary{background:#3498db;color:#fff;border:none;padding:.6rem 1.1rem;border-radius:4px;font-weight:600;cursor:pointer}.loc-create-form,.inline-edit{background:#1e1e1e;border:1px solid #333;padding:1.25rem;border-radius:6px;margin-bottom:1.25rem}.loc-create-form h3,.inline-edit h4{margin:0 0 1rem;color:#fff}.loc-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.loc-form-grid .form-group.full{grid-column:1 / -1}.form-group label{display:block;font-size:.85rem;color:#bbb;margin-bottom:.3rem}.form-group input{width:100%;padding:.5rem .7rem;background:#2a2a2a;border:1px solid #444;border-radius:4px;color:#fff;box-sizing:border-box}.form-group.checkbox label{display:flex;align-items:center;gap:.5rem;color:#fff;cursor:pointer}.form-actions{display:flex;gap:.75rem;margin-top:1rem}.btn-save{background:#5cb85c;color:#fff;border:none;padding:.55rem 1.1rem;border-radius:4px;cursor:pointer;font-weight:600}.btn-cancel{background:#555;color:#fff;border:none;padding:.55rem 1.1rem;border-radius:4px;cursor:pointer}.btn-cancel:hover{background:#666}.loc-table-wrap{background:#1e1e1e;border:1px solid #333;border-radius:6px;overflow-x:auto}.loc-table{width:100%;border-collapse:collapse}.loc-table th,.loc-table td{padding:.85rem 1rem;text-align:left;border-bottom:1px solid #333}.loc-table th{background:#252525;color:#ccc;font-weight:600;font-size:.85rem;text-transform:uppercase}.loc-table td.empty{text-align:center;color:#888;padding:2rem}.loc-table tr.editing-row td{background:#181818}.badge{display:inline-block;padding:.2rem .6rem;border-radius:12px;font-size:.75rem;font-weight:600}.badge-primary{background:#3498db;color:#fff}.badge-active{background:#5cb85c;color:#fff}.badge-inactive{background:#777;color:#fff}.btn-sm{padding:.35rem .75rem;border:none;border-radius:4px;cursor:pointer;font-size:.8rem;margin-right:.4rem;color:#fff}.btn-edit{background:#3498db}.btn-edit:hover{background:#2980b9}.btn-delete{background:#ff6b6b}.btn-delete:hover{background:#e55353}@media (max-width: 700px){.loc-form-grid{grid-template-columns:1fr}}.admin-trainers{padding:1.5rem;max-width:1400px;margin:0 auto}.admin-trainers h1{margin:0}.admin-trainers-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;flex-wrap:wrap;gap:.5rem}.header-actions{display:flex;gap:.75rem;align-items:center}.inline-check{display:flex;align-items:center;gap:.4rem;font-size:.9rem}.loading{padding:2rem;text-align:center;color:#666}.error-message{background:#fee;color:#c33;padding:.75rem 1rem;border-radius:4px;margin-bottom:1rem;border:1px solid #fcc}.success-message{background:#efe;color:#2a7;padding:.75rem 1rem;border-radius:4px;margin-bottom:1rem;border:1px solid #cfc}.btn-primary{background:#3498db;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-weight:600}.btn-primary:hover{background:#2980b9}.btn-sm{padding:.3rem .6rem;font-size:.8rem;border:1px solid #ccc;background:#fff;border-radius:3px;cursor:pointer;margin-right:.25rem}.btn-sm:hover{background:#f4f4f4}.btn-save{background:#5cb85c;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer}.btn-save:hover{background:#4cae4c}.btn-cancel{background:#888;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer}.trainer-create-form,.trainer-edit-form{background:#f9f9f9;padding:1rem;border-radius:6px;margin-bottom:1rem;border:1px solid #e0e0e0}.trainer-create-form h3,.trainer-edit-form h4{margin-top:0}.trainer-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem;margin-bottom:.75rem}.trainer-form-grid input,.trainer-form-grid textarea{padding:.5rem;border:1px solid #ccc;border-radius:4px;font-size:.9rem;font-family:inherit}.trainer-bio-input{grid-column:1 / -1;resize:vertical}.form-actions{display:flex;gap:.5rem;margin-top:.5rem}.trainers-table-wrap{overflow-x:auto;background:#fff;border-radius:6px;border:1px solid #e0e0e0}.trainers-table{width:100%;border-collapse:collapse;font-size:.9rem}.trainers-table th,.trainers-table td{padding:.75rem;text-align:left;border-bottom:1px solid #eee;vertical-align:top}.trainers-table thead th{background:#f4f4f4;font-weight:600}.bio-cell{max-width:300px;color:#555;font-size:.85rem}.spec-tag{display:inline-block;background:#e7f3fb;color:#2980b9;padding:.15rem .5rem;border-radius:10px;font-size:.75rem;margin:.1rem .15rem .1rem 0}.status-pill{display:inline-block;padding:.2rem .6rem;border-radius:10px;font-size:.75rem;font-weight:600}.status-pill.active,.status-pill.confirmed{background:#dff5df;color:#2a7}.status-pill.inactive,.status-pill.cancelled{background:#f5dfdf;color:#c33}.status-pill.completed{background:#e0e7fb;color:#3a4fbf}.actions-cell{white-space:nowrap}.inactive-row{background:#fafafa;color:#888}.edit-row>td,.sessions-row>td{background:#fbfbfd}.sessions-panel{padding:.5rem 0}.sessions-panel h4{margin:0 0 .5rem}.sessions-table{width:100%;border-collapse:collapse;font-size:.85rem;background:#fff}.sessions-table th,.sessions-table td{padding:.5rem;border-bottom:1px solid #eee;text-align:left}.sessions-table thead th{background:#f0f0f0}.empty-row{text-align:center;color:#888;padding:1.5rem}.admin-classes{padding:1.5rem;max-width:1400px;margin:0 auto}.admin-classes h1{margin:0 0 1rem}.ac-tabs{display:flex;gap:.5rem;border-bottom:2px solid #e5e7eb;margin-bottom:1.5rem}.ac-tabs button{background:none;border:none;padding:.75rem 1.25rem;font-size:1rem;cursor:pointer;color:#6b7280;border-bottom:3px solid transparent;margin-bottom:-2px}.ac-tabs button.active{color:#111827;border-bottom-color:#2563eb;font-weight:600}.ac-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;gap:1rem;flex-wrap:wrap}.ac-btn{background:#2563eb;color:#fff;border:none;padding:.55rem 1rem;border-radius:6px;cursor:pointer;font-size:.9rem}.ac-btn:hover{background:#1d4ed8}.ac-btn.secondary{background:#6b7280}.ac-btn.danger{background:#dc2626}.ac-btn.small{padding:.35rem .65rem;font-size:.8rem}.ac-table{width:100%;border-collapse:collapse;background:#fff;box-shadow:0 1px 3px #00000014;border-radius:8px;overflow:hidden}.ac-table th,.ac-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid #f3f4f6;font-size:.9rem}.ac-table th{background:#f9fafb;font-weight:600;color:#374151}.ac-table tr:last-child td{border-bottom:none}.ac-empty{text-align:center;padding:2rem;color:#6b7280}.ac-alert{padding:.75rem 1rem;border-radius:6px;margin-bottom:1rem}.ac-alert.error{background:#fee2e2;color:#991b1b}.ac-alert.success{background:#d1fae5;color:#065f46}.ac-modal-bg{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.ac-modal{background:#fff;border-radius:8px;padding:1.5rem;max-width:520px;width:90%;max-height:90vh;overflow-y:auto}.ac-modal h2{margin:0 0 1rem}.ac-form-row{margin-bottom:.85rem}.ac-form-row label{display:block;font-size:.85rem;font-weight:500;margin-bottom:.25rem;color:#374151}.ac-form-row input,.ac-form-row select,.ac-form-row textarea{width:100%;padding:.5rem .65rem;border:1px solid #d1d5db;border-radius:6px;font-size:.9rem;box-sizing:border-box}.ac-form-row textarea{min-height:70px;resize:vertical}.ac-modal-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:1rem}.ac-badge{display:inline-block;padding:.15rem .55rem;border-radius:999px;font-size:.75rem;background:#e5e7eb;color:#374151}.ac-badge.beginner{background:#d1fae5;color:#065f46}.ac-badge.intermediate{background:#fef3c7;color:#92400e}.ac-badge.advanced{background:#fee2e2;color:#991b1b}.ac-loading{text-align:center;padding:2rem;color:#6b7280}.admin-resources{padding:1.5rem;max-width:1200px;margin:0 auto}.admin-resources h1{margin-bottom:1rem}.admin-resources section{background:#fff;border:1px solid #e2e2e2;border-radius:8px;padding:1.25rem;margin-bottom:1.5rem}.admin-resources h2{margin-top:0;display:flex;justify-content:space-between;align-items:center}.ar-table{width:100%;border-collapse:collapse}.ar-table th,.ar-table td{text-align:left;padding:.6rem;border-bottom:1px solid #eee;font-size:.92rem}.ar-table th{background:#f7f7f7}.ar-btn{background:#2563eb;color:#fff;border:none;padding:.45rem .85rem;border-radius:5px;cursor:pointer;font-size:.85rem}.ar-btn:hover{background:#1d4ed8}.ar-btn.secondary{background:#6b7280}.ar-btn.danger{background:#dc2626}.ar-btn.success{background:#059669}.ar-btn:disabled{opacity:.6;cursor:not-allowed}.ar-form{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;margin-top:1rem;padding:1rem;background:#f9fafb;border-radius:6px}.ar-form label{display:flex;flex-direction:column;font-size:.85rem;gap:.25rem}.ar-form input,.ar-form select,.ar-form textarea{padding:.45rem;border:1px solid #d1d5db;border-radius:4px;font-size:.9rem}.ar-form .full{grid-column:1 / -1}.ar-form .actions{grid-column:1 / -1;display:flex;gap:.5rem;justify-content:flex-end}.ar-alert{padding:.7rem 1rem;border-radius:5px;margin-bottom:1rem}.ar-alert.error{background:#fee2e2;color:#991b1b}.ar-alert.success{background:#d1fae5;color:#065f46}.ar-badge{display:inline-block;padding:.15rem .55rem;border-radius:10px;font-size:.75rem;font-weight:600}.ar-badge.active{background:#d1fae5;color:#065f46}.ar-badge.inactive{background:#e5e7eb;color:#4b5563}.ar-empty{text-align:center;padding:1.5rem;color:#6b7280}.admin-health{padding:1.5rem;max-width:1200px;margin:0 auto}.admin-health h1{margin-bottom:1.5rem}.health-section{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:1.25rem 1.5rem;margin-bottom:1.5rem;box-shadow:0 1px 2px #0000000a}.health-section h2{margin:0 0 1rem;font-size:1.15rem;color:#111827}.health-stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:.75rem}.health-stat-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;padding:.75rem 1rem}.health-stat-label{font-size:.78rem;color:#6b7280;text-transform:uppercase;letter-spacing:.04em}.health-stat-value{font-size:1.6rem;font-weight:600;color:#111827;margin-top:.25rem}.health-freq{margin-top:1rem}.health-freq h3{font-size:.95rem;margin:0 0 .5rem}.health-freq ul{margin:0;padding-left:1.25rem;color:#374151}.health-controls{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.health-controls select,.health-lookup-form input{padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.9rem}.health-lookup-form{display:flex;gap:.5rem;margin-bottom:1rem}.health-lookup-form button{padding:.5rem 1rem;background:#2563eb;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.9rem}.health-lookup-form button:disabled{background:#9ca3af;cursor:not-allowed}.health-table{width:100%;border-collapse:collapse}.health-table th,.health-table td{text-align:left;padding:.6rem .75rem;border-bottom:1px solid #e5e7eb;font-size:.9rem}.health-table th{background:#f9fafb;color:#374151;font-weight:600}.health-badge{display:inline-block;padding:.15rem .55rem;border-radius:999px;font-size:.75rem;font-weight:600}.health-badge-yes{background:#fef2f2;color:#b91c1c}.health-badge-no{background:#f0fdf4;color:#15803d}.health-detail{display:flex;flex-direction:column;gap:.5rem}.health-detail-row{display:flex;justify-content:space-between;align-items:center;padding:.6rem .75rem;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;font-size:.9rem}.health-error{background:#fef2f2;color:#b91c1c;border:1px solid #fecaca;padding:.6rem .85rem;border-radius:6px;margin-bottom:.75rem}.health-empty{color:#6b7280;font-style:italic}.admin-roles{padding:20px}.admin-roles h1{margin-bottom:20px}.admin-roles h2{margin-top:30px;margin-bottom:12px;font-size:1.2rem}.admin-roles .error-message{background:#fee;color:#c33;padding:10px;border-radius:4px;margin-bottom:12px}.admin-roles .success-message{background:#efe;color:#393;padding:10px;border-radius:4px;margin-bottom:12px}.admin-roles .loading{padding:20px;text-align:center;color:#888}.roles-available{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.role-badge{background:#3498db;color:#fff;padding:6px 12px;border-radius:16px;font-size:.85rem}.role-badge.unassignable{background:#888}.roles-form{display:flex;gap:10px;align-items:end;flex-wrap:wrap;background:#f7f7f7;padding:16px;border-radius:6px;margin-bottom:20px}.roles-form .form-group{display:flex;flex-direction:column}.roles-form label{font-size:.8rem;color:#555;margin-bottom:4px}.roles-form input,.roles-form select{padding:8px;border:1px solid #ccc;border-radius:4px;min-width:160px}.roles-form button{padding:8px 16px;background:#5cb85c;color:#fff;border:none;border-radius:4px;cursor:pointer}.roles-form button:disabled{background:#aaa;cursor:not-allowed}.roles-filter{margin-bottom:12px}.roles-filter select{padding:6px;border:1px solid #ccc;border-radius:4px}.roles-table{width:100%;border-collapse:collapse;background:#fff}.roles-table th,.roles-table td{padding:10px;border-bottom:1px solid #eee;text-align:left}.roles-table th{background:#f0f0f0;font-size:.85rem}.btn-remove{background:#ff6b6b;color:#fff;border:none;padding:6px 12px;border-radius:4px;cursor:pointer}.btn-remove:hover{background:#e55}.no-data{text-align:center;padding:20px;color:#888}.admin-day-passes{padding:20px}.admin-day-passes h1{margin-bottom:20px}.error-message{background:#fee;color:#c33;padding:10px 15px;border-radius:4px;margin-bottom:15px}.success-message{background:#efe;color:#2a7;padding:10px 15px;border-radius:4px;margin-bottom:15px}.dp-filters{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:20px;align-items:end}.dp-filters .field{display:flex;flex-direction:column;font-size:.85em}.dp-filters select,.dp-filters input{padding:8px 10px;border:1px solid #ccc;border-radius:4px;font-size:14px}.dp-stats{display:flex;gap:12px;margin-bottom:20px;flex-wrap:wrap}.dp-stat{background:#fff;border:1px solid #e0e0e0;border-radius:6px;padding:12px 18px;min-width:100px}.dp-stat .v{font-size:1.6em;font-weight:600}.dp-stat .l{font-size:.8em;color:#666;text-transform:uppercase}.dp-table-wrap{overflow-x:auto;background:#fff;border-radius:6px;border:1px solid #e0e0e0}.dp-table{width:100%;border-collapse:collapse}.dp-table th,.dp-table td{padding:10px 12px;text-align:left;border-bottom:1px solid #eee;font-size:14px}.dp-table th{background:#f7f7f7;font-weight:600;font-size:.85em;text-transform:uppercase;color:#555}.dp-table tr:hover{background:#fafafa}.status-badge{display:inline-block;padding:3px 10px;border-radius:12px;font-size:.75em;font-weight:600;text-transform:uppercase}.status-badge.valid{background:#d4edda;color:#155724}.status-badge.used{background:#cce5ff;color:#004085}.status-badge.cancelled{background:#f8d7da;color:#721c24}.status-badge.expired{background:#e2e3e5;color:#383d41}.status-badge.pending{background:#fff3cd;color:#856404}.dp-actions{display:flex;gap:6px}.btn-sm{padding:5px 10px;font-size:12px;border:none;border-radius:4px;cursor:pointer}.btn-use{background:#3498db;color:#fff}.btn-cancel-pass{background:#e74c3c;color:#fff}.btn-sm:disabled{opacity:.5;cursor:not-allowed}.no-data{text-align:center;padding:40px;color:#888}.loading{text-align:center;padding:40px;color:#666}.admin-memberships{padding:20px;max-width:1400px;margin:0 auto}.admin-memberships h1{margin-bottom:20px}.admin-memberships .loading{text-align:center;padding:40px;color:#888}.error-message{background:#fdecea;border:1px solid #f5c2c0;color:#b71c1c;padding:10px 14px;border-radius:4px;margin-bottom:12px}.success-message{background:#e6f4ea;border:1px solid #b7dfc1;color:#1b5e20;padding:10px 14px;border-radius:4px;margin-bottom:12px}.am-tabs{display:flex;gap:4px;border-bottom:2px solid #e0e0e0;margin-bottom:20px}.am-tabs button{background:transparent;border:none;padding:12px 20px;font-size:15px;font-weight:500;cursor:pointer;color:#666;border-bottom:3px solid transparent;margin-bottom:-2px}.am-tabs button.active{color:#3498db;border-bottom-color:#3498db}.am-section{background:#fff;border-radius:6px}.am-filters{display:flex;gap:10px;margin-bottom:16px;align-items:center}.am-filters select,.am-filters input{padding:8px 12px;border:1px solid #ccc;border-radius:4px;font-size:14px}.btn-refresh,.btn-create{padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-size:14px}.btn-refresh{background:#ecf0f1;color:#333}.btn-create{background:#5cb85c;color:#fff;font-weight:500}.btn-create:hover{background:#4cae4c}.am-table-wrap{overflow-x:auto;border:1px solid #e0e0e0;border-radius:6px}.am-table{width:100%;border-collapse:collapse;background:#fff}.am-table th,.am-table td{padding:12px;text-align:left;border-bottom:1px solid #eee;vertical-align:top}.am-table th{background:#f8f9fa;font-weight:600;font-size:13px;text-transform:uppercase;color:#555}.am-table td small{color:#888;font-size:12px}.am-table .empty{text-align:center;color:#888;padding:30px}.status-badge{display:inline-block;padding:3px 10px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase}.status-active{background:#d4edda;color:#155724}.status-pending{background:#fff3cd;color:#856404}.status-expired{background:#f8d7da;color:#721c24}.status-cancelled{background:#e2e3e5;color:#383d41}.status-suspended{background:#d1ecf1;color:#0c5460}.feature-list{margin:0;padding-left:18px;font-size:13px}.btn-sm{padding:5px 10px;border:none;border-radius:3px;cursor:pointer;font-size:12px;margin-right:4px}.btn-edit{background:#3498db;color:#fff}.btn-delete{background:#e74c3c;color:#fff}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content{background:#fff;border-radius:8px;padding:24px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto}.modal-content h3{margin-top:0}.form-group{margin-bottom:14px}.form-group label{display:block;font-size:13px;font-weight:500;margin-bottom:4px;color:#444}.form-group input[type=text],.form-group input[type=number],.form-group input[type=email],.form-group select,.form-group textarea{width:100%;padding:8px 10px;border:1px solid #ccc;border-radius:4px;font-size:14px;font-family:inherit;box-sizing:border-box}.form-row{display:flex;gap:12px}.form-row .form-group{flex:1}.form-group.checkbox label{display:flex;align-items:center;gap:6px;margin-top:24px}.form-group.checkbox input{width:auto}.modal-actions{display:flex;gap:10px;margin-top:20px;justify-content:flex-end}.btn-save,.btn-cancel{padding:9px 18px;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500}.btn-save{background:#5cb85c;color:#fff}.btn-save:disabled{opacity:.6;cursor:not-allowed}.btn-cancel{background:#ecf0f1;color:#333}
