.landing-container{color:#fff;background-color:#0d0d0d;flex-direction:column;min-height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;display:flex;position:relative;overflow-x:clip}.landing-glow{filter:blur(140px);z-index:0;pointer-events:none;opacity:.12;border-radius:50%;width:600px;height:600px;position:absolute}.landing-glow.glow-1{background:#d97706;top:-200px;left:-200px}.landing-glow.glow-2{background:#f59e0b;bottom:200px;right:-200px}.landing-nav{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:100;background:#0d0d0dd9;border-bottom:1px solid #ffffff0f;justify-content:space-between;align-items:center;padding:16px 40px;display:flex;position:sticky;top:0}.nav-brand{color:#fff;letter-spacing:.5px;-webkit-user-select:none;user-select:none;align-items:center;gap:12px;font-size:20px;font-weight:800;display:flex}.nav-logo{object-fit:cover;border:1px solid #d977064d;border-radius:8px;width:38px;height:38px}.nav-links{align-items:center;gap:8px;display:flex}.nav-link-btn{color:#ccc;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:8px 16px;font-size:14px;font-weight:600;transition:all .2s}.nav-link-btn:hover{color:#fff;background:#ffffff0f}.nav-actions{align-items:center;gap:12px;display:flex}.mobile-menu-toggle{color:#fff;cursor:pointer;background:0 0;border:1px solid #333;border-radius:8px;justify-content:center;align-items:center;width:40px;height:40px;font-size:22px;display:none}.btn-primary{color:#fff;cursor:pointer;background:#d97706;border:none;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:10px 20px;font-size:14px;font-weight:600;transition:all .25s;display:inline-flex;box-shadow:0 4px 14px #d9770640}.btn-primary:hover{background:#b45309;transform:translateY(-2px);box-shadow:0 6px 18px #d9770659}.btn-primary.btn-large{border-radius:10px;padding:14px 28px;font-size:15px}.btn-outline{color:#fff;cursor:pointer;background:0 0;border:1px solid #3a3a3a;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:10px 20px;font-size:14px;font-weight:600;transition:all .25s;display:inline-flex}.btn-outline:hover{color:#d97706;background:#ffffff0f;border-color:#d97706}.btn-outline.btn-large{border-radius:10px;padding:14px 28px;font-size:15px}.landing-main{z-index:1;flex-direction:column;flex:1;align-items:center;gap:100px;width:100%;max-width:1200px;margin:0 auto;padding:40px 20px 80px;display:flex;position:relative}.section-container{flex-direction:column;align-items:center;width:100%;scroll-margin-top:90px;display:flex}.section-header{text-align:center;max-width:700px;margin-bottom:48px}.section-tag{color:#d97706;letter-spacing:1.2px;text-transform:uppercase;background:#d977061f;border:1px solid #d977064d;border-radius:20px;margin-bottom:14px;padding:5px 12px;font-size:11px;font-weight:700;display:inline-block}.section-title{color:#fff;letter-spacing:-.5px;margin:0 0 14px;font-size:34px;font-weight:800}.section-subtitle{color:#888;margin:0;font-size:16px;line-height:1.6}.hero-section{text-align:center;width:100%;max-width:900px;margin-top:20px;scroll-margin-top:90px}.hero-badge{letter-spacing:1.5px;color:#ccc;text-transform:uppercase;background:#ffffff0d;border:1px solid #ffffff1f;border-radius:20px;margin-bottom:24px;padding:6px 16px;font-size:11px;font-weight:700;display:inline-block}.hero-title{color:#fff;letter-spacing:-1px;margin:0 0 24px;font-size:52px;font-weight:800;line-height:1.15}.gym-status-badges{flex-wrap:wrap;justify-content:center;gap:14px;margin-bottom:24px;display:flex}.status-badge{letter-spacing:.5px;border-radius:30px;align-items:center;gap:8px;padding:7px 16px;font-size:12px;font-weight:700;display:flex}.status-badge.open{color:#22c55e;background:#22c55e1f;border:1px solid #22c55e4d}.status-badge.closed{color:#ef4444;background:#ef44441f;border:1px solid #ef44444d}.schedule-badge{color:#e0e0e0;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:30px;align-items:center;gap:8px;padding:7px 16px;font-size:12px;font-weight:600;display:flex}.hero-subtitle{color:#999;max-width:740px;margin:0 auto 36px;font-size:17px;line-height:1.6}.hero-actions{flex-wrap:wrap;justify-content:center;gap:16px;margin-bottom:60px;display:flex}.gallery-container{width:100%;margin-top:20px}.gallery-header-label{text-align:center;margin-bottom:20px}.gallery-header-label span{letter-spacing:1.5px;color:#777;font-size:12px;font-weight:700}.landing-gallery{grid-template-columns:repeat(3,1fr);gap:16px;width:100%;display:grid}.gallery-item{background:#181818;border:1px solid #282828;border-radius:12px;width:100%;height:220px;transition:transform .3s,border-color .3s;position:relative;overflow:hidden;box-shadow:0 6px 20px #0006}.gallery-item:hover{border-color:#d97706;transform:translateY(-4px)}.gallery-item img{object-fit:cover;width:100%;height:100%;transition:transform .4s}.gallery-item:hover img{transform:scale(1.05)}.gallery-overlay{color:#fff;letter-spacing:.5px;opacity:0;background:linear-gradient(#0000,#000c);padding:12px 16px;font-size:12px;font-weight:600;transition:opacity .3s;position:absolute;bottom:0;left:0;right:0}.gallery-item:hover .gallery-overlay{opacity:1}.pricing-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;width:100%;display:grid}.pricing-card{background:#161616;border:1px solid #2a2a2a;border-radius:16px;flex-direction:column;justify-content:space-between;padding:32px 28px;transition:transform .3s,border-color .3s,box-shadow .3s;display:flex;position:relative;box-shadow:0 8px 24px #0006}.pricing-card:hover{border-color:#d97706;transform:translateY(-6px);box-shadow:0 12px 32px #d9770626}.pricing-header{margin-bottom:24px}.pricing-plan-badge{color:#d97706;text-transform:uppercase;letter-spacing:.8px;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:6px;margin-bottom:12px;padding:4px 10px;font-size:11px;font-weight:700;display:inline-block}.pricing-plan-name{color:#fff;margin:0 0 16px;font-size:20px;font-weight:800}.pricing-price-box{color:#fff;align-items:baseline;gap:4px;display:flex}.pricing-price-box .currency{color:#d97706;font-size:22px;font-weight:700}.pricing-price-box .amount{letter-spacing:-1px;color:#fff;font-size:40px;font-weight:900}.pricing-price-box .period{color:#888;font-size:14px;font-weight:500}.pricing-features{border-top:1px solid #262626;flex-direction:column;gap:12px;margin-bottom:32px;padding-top:20px;display:flex}.pricing-feature-item{color:#ccc;align-items:center;gap:10px;font-size:14px;display:flex}.feature-check-icon{color:#22c55e;flex-shrink:0;font-size:18px}.btn-pricing-action{color:#fff;cursor:pointer;background:#242424;border:1px solid #333;border-radius:8px;justify-content:center;align-items:center;gap:8px;width:100%;height:44px;font-size:14px;font-weight:600;transition:all .2s;display:flex}.pricing-card:hover .btn-pricing-action{color:#fff;background:#d97706;border-color:#d97706}.coaches-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;width:100%;display:grid}.need-coach-card{background:#181818;border:1px solid #2e2e2e;border-radius:16px;flex-direction:column;justify-content:space-between;padding:32px 24px;display:flex;position:relative;overflow:hidden;box-shadow:0 8px 24px #0006}.need-coach-card:before{content:"";background:#d97706;height:4px;position:absolute;top:0;left:0;right:0}.need-coach-badge{color:#d97706;letter-spacing:1px;background:#d977061f;border:1px solid #d977064d;border-radius:20px;align-items:center;gap:6px;width:fit-content;margin-bottom:20px;padding:5px 12px;font-size:11px;font-weight:700;display:inline-flex}.need-coach-title{color:#fff;letter-spacing:-.5px;margin:0 0 14px;font-size:28px;font-weight:900}.need-coach-text{color:#aaa;margin:0 0 28px;font-size:14px;line-height:1.6}.btn-coach-inquire{color:#fff;cursor:pointer;background:#d97706;border:none;border-radius:8px;justify-content:center;align-items:center;gap:8px;width:100%;height:44px;font-size:14px;font-weight:600;transition:all .2s;display:flex}.btn-coach-inquire:hover{background:#b45309;transform:translateY(-2px)}.coach-card{background:#161616;border:1px solid #2a2a2a;border-radius:16px;height:340px;transition:transform .3s,border-color .3s;position:relative;overflow:hidden;box-shadow:0 8px 24px #0006}.coach-card:hover{border-color:#d97706;transform:translateY(-6px)}.coach-image-wrapper{width:100%;height:100%;position:relative;overflow:hidden}.coach-image-wrapper img{object-fit:cover;filter:grayscale(25%);width:100%;height:100%;transition:transform .4s,filter .4s}.coach-card:hover .coach-image-wrapper img{filter:grayscale(0%);transform:scale(1.06)}.coach-hover-overlay{opacity:.85;background:linear-gradient(#0000 0%,#0d0d0dcc 30%,#0d0d0df2 100%);flex-direction:column;gap:4px;padding:24px 18px 18px;transition:transform .3s,opacity .3s;display:flex;position:absolute;bottom:0;left:0;right:0;transform:translateY(20px)}.coach-card:hover .coach-hover-overlay{opacity:1;transform:translateY(0)}.coach-name{color:#fff;margin:0;font-size:17px;font-weight:800}.coach-role{color:#d97706;letter-spacing:.5px;text-transform:uppercase;font-size:12px;font-weight:700}.coach-bio{color:#bbb;opacity:0;max-height:0;margin:4px 0 0;font-size:12px;line-height:1.4;transition:max-height .3s,opacity .3s;overflow:hidden}.coach-card:hover .coach-bio{opacity:1;max-height:60px}.contact-grid{grid-template-columns:repeat(3,1fr);gap:20px;width:100%;margin-bottom:24px;display:grid}.contact-card{background:#161616;border:1px solid #2a2a2a;border-radius:14px;align-items:center;gap:16px;padding:24px;transition:transform .25s,border-color .25s;display:flex}.contact-card:hover{border-color:#d97706;transform:translateY(-3px)}.contact-icon-box{color:#d97706;background:#d977061f;border:1px solid #d9770640;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:50px;height:50px;font-size:24px;display:flex}.contact-details{flex-direction:column;gap:4px;min-width:0;display:flex}.contact-label{color:#888;text-transform:uppercase;letter-spacing:.5px;font-size:12px;font-weight:600}.contact-value{color:#fff;white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:700;text-decoration:none;transition:color .2s;overflow:hidden}.contact-value:hover{color:#d97706}.location-banner{background:#161616;border:1px solid #2a2a2a;border-radius:14px;grid-template-columns:1fr 1fr;gap:24px;width:100%;padding:24px 32px;display:grid}.location-banner-item{align-items:flex-start;gap:14px;display:flex}.location-banner-item .banner-icon{color:#d97706;flex-shrink:0;margin-top:2px;font-size:24px}.location-banner-item strong{color:#fff;margin-bottom:4px;font-size:14px;display:block}.location-banner-item p{color:#888;margin:0;font-size:14px}.landing-footer{z-index:10;background:#0d0d0d;border-top:1px solid #ffffff0f;width:100%;padding:30px 40px}.footer-content{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;max-width:1200px;margin:0 auto;display:flex}.footer-brand{color:#fff;align-items:center;gap:10px;font-size:16px;font-weight:700;display:flex}.footer-logo{object-fit:cover;border-radius:6px;width:28px;height:28px}.footer-text{color:#666;margin:0;font-size:13px}@media (width<=900px){.landing-gallery{grid-template-columns:repeat(2,1fr)}.contact-grid,.location-banner{grid-template-columns:1fr}}@media (width<=768px){.landing-nav{padding:14px 20px}.mobile-menu-toggle{display:flex}.nav-links{background:#141414;border-bottom:1px solid #282828;flex-direction:column;gap:8px;padding:16px;display:none;position:absolute;top:100%;left:0;right:0}.nav-links.open{display:flex}.nav-link-btn{text-align:left;width:100%;padding:12px 16px}.hero-title{font-size:36px}.hero-subtitle{font-size:15px}.landing-gallery{grid-template-columns:1fr}.landing-main{gap:70px;padding:20px 16px 60px}.footer-content{text-align:center;flex-direction:column;align-items:center}}*{box-sizing:border-box;margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}body{background:#121212}.login-page{background:#121212;justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex;position:relative;overflow:hidden}.glow{filter:blur(140px);pointer-events:none;background:radial-gradient(circle,#d9770629 0%,#0000 70%);border-radius:50%;width:600px;height:600px;position:absolute}.glow-left{top:-200px;left:-200px}.glow-right{bottom:-200px;right:-200px}.login-container{z-index:10;flex-direction:column;align-items:center;width:100%;max-width:440px;display:flex}.logo-section{text-align:center;margin-bottom:24px}.logo-badge{background:#1e1e1e;border:1px solid #2e2e2e;border-radius:14px;justify-content:center;align-items:center;width:68px;height:68px;margin:0 auto 14px;text-decoration:none;transition:border-color .2s,transform .2s;display:flex;box-shadow:0 8px 24px #0006}.logo-badge:hover{border-color:#d97706;transform:translateY(-2px)}.logo-badge:focus-visible{outline-offset:4px;outline:2px solid #d97706}.logo{object-fit:contain;width:44px;height:auto}.logo-section h1{color:#fff;letter-spacing:-.02em;margin-bottom:4px;font-size:24px;font-weight:700}.logo-section p{color:#888;font-size:13.5px;font-weight:400}.login-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1c1c1c;border:1px solid #2e2e2e;border-radius:16px;width:100%;padding:32px;box-shadow:0 20px 50px #000000a6}.login-card h2{color:#fff;letter-spacing:-.01em;margin-bottom:4px;font-size:20px;font-weight:600}.login-card p{color:#888;margin-bottom:20px;font-size:13px}.btn-google-login{color:#fff;cursor:pointer;background:#141414;border:1px solid #333;border-radius:8px;justify-content:center;align-items:center;gap:10px;width:100%;height:44px;margin-bottom:20px;font-size:14px;font-weight:600;transition:all .2s;display:flex}.btn-google-login:hover:not(:disabled){background:#222;border-color:#444;transform:translateY(-1px)}.btn-google-login:disabled{opacity:.6;cursor:not-allowed}.google-icon{font-size:20px}.login-or-divider{text-align:center;color:#666;letter-spacing:.06em;align-items:center;margin-bottom:20px;font-size:11px;font-weight:600;display:flex}.login-or-divider:before,.login-or-divider:after{content:"";border-bottom:1px solid #2e2e2e;flex:1}.login-or-divider span{padding:0 10px}.role-selector-toggle{background:#141414;border:1px solid #2a2a2a;border-radius:10px;gap:4px;margin-bottom:20px;padding:4px;display:flex}.role-btn{color:#888;cursor:pointer;background:0 0;border:none;border-radius:7px;flex:1;justify-content:center;align-items:center;gap:6px;height:36px;font-size:13px;font-weight:500;transition:all .2s;display:flex}.role-btn-icon{font-size:16px}.role-btn.active{color:#fff;background:#2a2a2a;box-shadow:0 2px 8px #0000004d}.role-btn:hover:not(.active){color:#ccc}.input-group{margin-bottom:16px}.input-group label{color:#ccc;margin-bottom:6px;font-size:13px;font-weight:500;display:block}.input-box{background:#141414;border:1px solid #333;border-radius:8px;align-items:center;gap:10px;padding:11px 14px;transition:all .2s;display:flex}.input-box:focus-within{border-color:#d97706;box-shadow:0 0 0 3px #d9770626}.input-box-icon{color:#888;justify-content:center;align-items:center;font-size:18px;display:flex}.input-box input{color:#fff;background:0 0;border:none;outline:none;width:100%;font-size:14px}.input-box input::placeholder{color:#666}.form-secondary-row{justify-content:flex-end;margin-top:4px;margin-bottom:12px;display:flex}.forgot{color:#aaa;cursor:pointer;font-size:12.5px;transition:color .2s}.forgot:hover{color:#d97706;text-decoration:underline}.remember{color:#888;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;margin-bottom:22px;font-size:13px;display:flex}.remember input[type=checkbox]{accent-color:#d97706;cursor:pointer;border-radius:4px;width:16px;height:16px}.remember label{cursor:pointer}.login-error-message{color:#f87171;background:#ef44441f;border:1px solid #ef44444d;border-radius:8px;margin-bottom:18px;padding:10px 14px;font-size:13px}.login-button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#d97706 0%,#b45309 100%);border:none;border-radius:8px;justify-content:center;align-items:center;gap:8px;width:100%;height:46px;font-size:15px;font-weight:600;transition:all .2s;display:flex;box-shadow:0 4px 14px #d977064d}.login-button:hover:not(:disabled){background:linear-gradient(135deg,#f59e0b 0%,#d97706 100%);transform:translateY(-1px);box-shadow:0 6px 18px #f59e0b66}.login-button:active:not(:disabled){transform:translateY(0)}.login-button:disabled{opacity:.65;cursor:not-allowed}.login-btn-arrow{font-size:18px}.divider{border-top:1px solid #2e2e2e;margin:22px 0 16px}.secure{color:#666;letter-spacing:.06em;justify-content:center;align-items:center;gap:6px;font-size:11px;font-weight:600;display:flex}.secure-icon{color:#666;font-size:14px}@media (width<=1024px){.login-card{padding:28px}}@media (width<=600px){.login-page{padding:16px}.login-container{max-width:100%}.logo-badge{width:58px;height:58px}.logo-section h1{font-size:21px}.logo-section p{font-size:12.5px}.login-card{border-radius:14px;padding:24px 20px}.login-card h2{font-size:18px}.input-box{padding:10px 12px}.login-button{height:44px;font-size:14px}}.sidebar{color:#fff;background:#141414;border-right:1px solid #222;flex-direction:column;width:250px;min-height:100vh;display:flex}.sidebar-top{border-bottom:1px solid #222;align-items:center;gap:14px;padding:24px 20px;display:flex}.sidebar-top img{object-fit:contain;border-radius:6px;width:40px;height:40px}.sidebar-top h2{color:#fff;margin:0;font-size:16px;font-weight:700;line-height:1.2}.sidebar-top p{color:#888;margin:2px 0 0;font-size:12px}.sidebar-nav{flex-direction:column;gap:6px;padding:16px 12px;display:flex}.sidebar-link{color:#b0b0b0;border-radius:10px;align-items:center;gap:14px;padding:12px 16px;font-size:15px;font-weight:500;text-decoration:none;transition:all .2s ease-in-out;display:flex}.sidebar-link svg{color:#a0a0a0;font-size:22px;transition:color .2s}.sidebar-link:hover{color:#fff;background:#222}.sidebar-link:hover svg{color:#fff}.sidebar-link.active{color:#fff;background:#d97706;font-weight:600;box-shadow:0 4px 14px #d977064d}.sidebar-link.active svg{color:#fff}.sidebar-bottom{border-top:1px solid #222;margin-top:auto;padding:16px 12px 24px}.sidebar-logout-btn{color:#888;cursor:pointer;background:0 0;border:none;border-radius:10px;align-items:center;gap:14px;width:100%;padding:12px 16px;font-size:15px;font-weight:600;transition:all .2s ease-in-out;display:flex}.sidebar-logout-btn svg{color:#888;font-size:22px;transition:color .2s}.sidebar-logout-btn:hover{color:#ef4444;background:#ef44441f}.sidebar-logout-btn:hover svg{color:#ef4444}.sidebar-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:999;opacity:0;pointer-events:none;background:#000000b3;transition:opacity .3s;display:none;position:fixed;inset:0}.sidebar-backdrop.open{opacity:1;pointer-events:auto}.sidebar-close-btn{color:#888;cursor:pointer;background:0 0;border:none;border-radius:6px;margin-left:auto;padding:4px;font-size:24px;transition:color .2s,background-color .2s;display:none}.sidebar-close-btn:hover{color:#fff;background:#ffffff1a}@media (width<=1024px){.sidebar{width:220px}}@media (width<=768px){.sidebar-backdrop{display:block}.sidebar-close-btn{display:flex}.sidebar{z-index:1000;border-right:1px solid #282828;width:270px;min-height:100vh;transition:transform .3s cubic-bezier(.4,0,.2,1);position:fixed;top:0;bottom:0;left:0;transform:translate(-100%);box-shadow:10px 0 30px #000c}.sidebar.mobile-open{transform:translate(0)}.sidebar-top{padding:20px}.sidebar-nav{flex-direction:column;padding:16px 12px;overflow-y:auto}.sidebar-link{padding:12px 16px;font-size:15px}.sidebar-bottom{display:block}}.navbar{background:#141414;border-bottom:1px solid #222;justify-content:space-between;align-items:center;height:80px;padding:0 32px;display:flex}.navbar-left{align-items:center;gap:14px;display:flex}.mobile-burger-btn{color:#fff;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:4px;font-size:26px;transition:background-color .2s;display:none}.mobile-burger-btn:hover{background:#ffffff1a}.navbar-title{color:#fff;letter-spacing:-.02em;margin:0;font-size:28px;font-weight:700}.navbar-right{align-items:center;gap:20px;display:flex}.navbar-divider{background:#2e2e2e;width:1px;height:32px}.admin-profile{align-items:center;gap:14px;display:flex}.admin-info{flex-direction:column;align-items:flex-end;display:flex}.admin-name{color:#fff;font-size:14px;font-weight:600;line-height:1.2}.admin-role{color:#888;margin-top:2px;font-size:12px}.admin-avatar{cursor:pointer;background:radial-gradient(circle at 30% 30%,#d4af37,#b89d54);border:2px solid #333;border-radius:50%;width:40px;height:40px;box-shadow:0 2px 8px #0006}.navbar-logout-btn{color:#aaa;cursor:pointer;background:#ffffff0d;border:1px solid #333;border-radius:8px;align-items:center;gap:6px;height:38px;padding:0 14px;font-size:13px;font-weight:600;transition:all .2s;display:inline-flex}.navbar-logout-btn svg{color:#aaa;font-size:18px;transition:color .2s}.navbar-logout-btn:hover{color:#ef4444;background:#ef44441f;border-color:#ef44444d}.navbar-logout-btn:hover svg{color:#ef4444}@media (width<=768px){.navbar{height:64px;padding:0 16px}.mobile-burger-btn{display:flex}.navbar-title{font-size:20px}.admin-info,.navbar-divider{display:none}}@media (width<=480px){.navbar-title{font-size:17px}.navbar-logout-btn span{display:none}.navbar-logout-btn{padding:0 10px}}.dashboard-layout{background:#141414;min-height:100vh;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;display:flex}.dashboard-main{flex-direction:column;flex:1;min-width:0;display:flex;overflow-x:hidden}.dashboard-content{box-sizing:border-box;background:#141414;flex:1;width:100%;padding:32px}.dashboard-content .table-responsive{overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;scrollbar-width:auto;scrollbar-color:#d97706 #242424;width:100%;min-width:0;max-width:100%;display:block;overflow:auto hidden}.dashboard-content .table-responsive::-webkit-scrollbar{height:12px}.dashboard-content .table-responsive::-webkit-scrollbar-track{background:#242424;border-radius:6px}.dashboard-content .table-responsive::-webkit-scrollbar-thumb{background:#9a5707;border:2px solid #242424;border-radius:6px}.dashboard-content .table-responsive::-webkit-scrollbar-thumb:hover{background:#d97706}.dashboard-content .table-responsive th{color:#c4c4c4;font-size:12px}@media (width<=1024px){.dashboard-content{padding:24px}}@media (width<=768px){.dashboard-layout{flex-direction:column}.dashboard-content{padding:16px}}@media (width<=480px){.dashboard-content{padding:12px}.dashboard-content .table-responsive{overflow-x:scroll}}.dashboard-grid{grid-template-columns:3fr 1.3fr;gap:20px;display:grid}.cards{grid-column:1/span 2;grid-template-columns:repeat(4,1fr);gap:20px;display:grid}@media (width<=1024px){.dashboard-grid{grid-template-columns:minmax(0,1fr)}.cards{grid-column:1;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}}@media (width<=480px){.dashboard-grid{gap:14px}.cards{gap:10px}}@media (width<=360px){.cards{grid-template-columns:minmax(0,1fr)}}.stat-card:hover{border-color:#d97706;transform:translateY(-2px);box-shadow:0 6px 24px #d9770633}.stat-card-header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.stat-icon-wrapper.green{color:#22c55e;background:#22c55e1f;border-color:#22c55e40}.stat-icon-wrapper.red{color:#ef4444;background:#ef44441f;border-color:#ef444440}.stat-icon-wrapper.amber{color:#d97706;background:#d977061f;border-color:#d9770640}.stat-growth-badge{color:#22c55e;background:#22c55e26;border:1px solid #22c55e4d;border-radius:6px;padding:3px 8px;font-size:11px;font-weight:700}.stat-growth-badge.amber{color:#f59e0b;background:#d9770626;border-color:#d977064d}.stat-growth-badge.red{color:#ef4444;background:#ef444426;border-color:#ef44444d}.stat-card-body{flex-direction:column;gap:4px;display:flex}.stat-title{color:#999;margin:0;font-size:13px;font-weight:500}.stat-value{color:#fff;letter-spacing:-.02em;white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:clamp(20px,4vw,28px);font-weight:800;overflow:hidden}.analytics{color:#fff;background:#1c1c1c;border:1px solid #2a2a2a;border-radius:12px;flex-direction:column;min-height:380px;padding:24px;display:flex;box-shadow:0 4px 20px #0003}.analytics-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.analytics-header h2{color:#e0e0e0;margin:0;font-size:18px;font-weight:700}.analytics-subtitle{color:#888;background:#242424;border:1px solid #333;border-radius:16px;padding:6px 12px;font-size:13px}.chart-container{flex:1;width:100%;min-height:280px;position:relative}.chart-loading{color:#888;font-size:14px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.custom-tooltip{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1c1c1cf2;border:1px solid #333;border-radius:8px;padding:12px 16px;box-shadow:0 8px 24px #0006}.tooltip-label{color:#a0a0a0;margin:0 0 4px;font-size:13px}.tooltip-value{color:#d97706;margin:0;font-size:16px;font-weight:800}.recent{color:#fff;background:#1c1c1c;border:1px solid #303030;border-radius:10px;min-width:0;padding:20px}.recent-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.recent-header h2{margin:0;font-size:18px}.recent-view-all{color:#f59e0b;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:5px;padding:6px 8px;font-size:12px;font-weight:700;display:inline-flex}.recent-view-all:hover{color:#fbbf24;background:#f59e0b1a}.recent-activity-list{gap:8px;display:grid}.activity{background:#242424;border:1px solid #303030;border-radius:8px;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:11px;min-width:0;padding:12px;display:grid}.activity-icon{border-radius:8px;place-items:center;width:36px;height:36px;font-size:19px;display:grid}.activity-icon.member{color:#60a5fa;background:#3b82f61f}.activity-icon.payment{color:#34d399;background:#10b9811f}.activity-icon.attendance{color:#fbbf24;background:#f59e0b1f}.activity-copy{min-width:0}.activity-copy strong{color:#f5f5f5;text-overflow:ellipsis;white-space:nowrap;font-size:13px;display:block;overflow:hidden}.activity-copy p{color:#b3b3b3;margin:4px 0 0;font-size:12px;line-height:1.4}.activity time{color:#a3a3a3;white-space:nowrap;font-size:11px}.recent-state{color:#b3b3b3;text-align:center;margin:0;padding:20px 8px;font-size:13px}@media (width<=480px){.recent{padding:16px}.activity{grid-template-columns:34px minmax(0,1fr);gap:9px;padding:10px}.activity-icon{width:34px;height:34px}.activity time{grid-column:2;margin-top:-5px}}.system-modal-backdrop{-webkit-backdrop-filter:blur(6px);z-index:9999;background:#000000bf;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.system-modal-card{text-align:center;background:#1a1a1a;border:1px solid #2e2e2e;border-radius:18px;flex-direction:column;align-items:center;gap:16px;width:460px;max-width:95%;max-height:calc(100dvh - 32px);padding:28px 24px 24px;animation:.25s cubic-bezier(.16,1,.3,1) systemModalPop;display:flex;overflow-y:auto;box-shadow:0 24px 48px #000000a6}@media (width<=480px){.system-modal-backdrop{padding:12px}.system-modal-card{border-radius:12px;gap:12px;width:100%;max-width:420px;padding:22px 18px 18px}.system-modal-title{overflow-wrap:anywhere;font-size:18px}.system-modal-detail-row{align-items:flex-start}.system-modal-detail-val{text-align:right;overflow-wrap:anywhere}}@keyframes systemModalPop{0%{opacity:0;transform:scale(.9)translateY(12px)}to{opacity:1;transform:scale(1)translateY(0)}}.system-modal-icon-wrapper{border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin-bottom:4px;font-size:32px;display:flex}.system-modal-icon-wrapper.success{color:#4ade80;background:#22c55e26;border:1px solid #22c55e59}.system-modal-icon-wrapper.error{color:#f87171;background:#ef444426;border:1px solid #ef444459}.system-modal-icon-wrapper.warning{color:#fbbf24;background:#f59e0b26;border:1px solid #f59e0b59}.system-modal-icon-wrapper.info{color:#60a5fa;background:#3b82f626;border:1px solid #3b82f659}.system-modal-title{color:#fff;letter-spacing:-.01em;margin:0;font-size:20px;font-weight:800}.system-modal-message{color:#aaa;margin:0;font-size:14px;line-height:1.5}.system-modal-details-box{text-align:left;box-sizing:border-box;background:#121212;border:1px solid #282828;border-radius:12px;flex-direction:column;gap:10px;width:100%;padding:14px 18px;display:flex}.system-modal-detail-row{border-bottom:1px dashed #242424;justify-content:space-between;align-items:center;gap:12px;padding-bottom:8px;font-size:13px;display:flex}.system-modal-detail-row:last-child{border-bottom:none;padding-bottom:0}.system-modal-detail-label{color:#888;font-weight:500}.system-modal-detail-val{color:#fff;font-weight:700}.system-modal-detail-val.highlight{color:#f59e0b}.system-modal-detail-val.green{color:#4ade80}.system-modal-action-btn{color:#fff;cursor:pointer;background:#d97706;border:none;border-radius:10px;width:100%;height:44px;margin-top:4px;font-size:14px;font-weight:700;transition:all .2s;box-shadow:0 4px 14px #d977064d}.system-modal-action-btn:hover{background:#b45309;box-shadow:0 6px 18px #d9770673}.system-modal-action-btn.error-btn{background:#ef4444;box-shadow:0 4px 14px #ef44444d}.system-modal-action-btn.error-btn:hover{background:#dc2626;box-shadow:0 6px 18px #ef444473}.memberships-section{color:#fff;background:#1c1c1c;border:1px solid #2a2a2a;border-radius:12px;margin-top:24px;padding:24px;box-shadow:0 4px 20px #0003}.section-title{color:#e0e0e0;margin:0 0 20px;font-size:18px;font-weight:700}.membership-stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px;display:grid}.mem-stat-card{background:#242424;border:1px solid #333;border-radius:12px;align-items:center;gap:16px;padding:20px;display:flex}.active-card .mem-stat-icon{color:#00e676;background:#00e6761a}.warning-card .mem-stat-icon{color:#f59e0b;background:#f59e0b1a}.expired-card .mem-stat-icon{color:#ef4444;background:#ef44441a}.mem-stat-icon{border-radius:10px;justify-content:center;align-items:center;width:48px;height:48px;font-size:24px;display:flex}.mem-stat-info h3{margin:0;font-size:24px;font-weight:800}.mem-stat-info p{color:#a0a0a0;margin:4px 0 0;font-size:13px}.expiring-list-container h3{color:#e0e0e0;margin:0 0 16px;font-size:16px}.expiring-table{border-collapse:collapse;table-layout:fixed;width:100%}@media (width<=768px){.expiring-table{white-space:normal;width:760px;min-width:760px}.expiring-table th,.expiring-table td{overflow-wrap:anywhere;white-space:normal}.mem-name-cell .mem-name{gap:7px}.mem-name-cell .avatar-icon{flex:none}.days-left{margin:4px 0 0;display:block}}.expiring-table th{text-align:left;text-transform:uppercase;color:#888;vertical-align:middle;border-bottom:1px solid #333;padding:12px 16px;font-size:12px;font-weight:600}.expiring-table td{color:#ddd;vertical-align:middle;border-bottom:1px solid #2a2a2a;padding:16px;font-size:14px;line-height:1.4}.expiring-table th:first-child,.expiring-table td:first-child{width:25%}.expiring-table th:nth-child(2),.expiring-table td:nth-child(2){width:18%}.expiring-table th:nth-child(3),.expiring-table td:nth-child(3){width:16%}.expiring-table th:nth-child(4),.expiring-table td:nth-child(4){width:24%}.expiring-table th:nth-child(5),.expiring-table td:nth-child(5){width:17%}.clickable-row{cursor:pointer;transition:background .2s}.clickable-row:hover{background:#2a2a2a}.mem-name{color:#fff;align-items:center;gap:10px;min-height:32px;font-weight:600;display:flex}.mem-name-cell{vertical-align:middle;white-space:normal}.mem-name-cell .mem-name{overflow-wrap:anywhere;align-items:center;min-width:0;min-height:24px;line-height:1.3;display:flex}.avatar-icon{color:#888;background:#333;border-radius:50%;padding:4px;font-size:20px}.days-left{color:#f59e0b;margin-left:8px;font-size:12px}.status-badge{border-radius:12px;padding:4px 10px;font-size:12px;font-weight:600}.status-active{color:#00e676;background:#00e67626}.status-warning{color:#f59e0b;background:#f59e0b26}.status-expired{color:#ef4444;background:#ef444426}.status-inactive{color:#888;background:#88888826}.empty-state{text-align:center;color:#888;background:#242424;border:1px dashed #333;border-radius:10px;padding:40px}.member-mobile-wrapper{color:#fff;background:#121212;flex-direction:column;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;display:flex;position:relative}.member-top-nav{z-index:100;background:#181818;border-bottom:1px solid #262626;justify-content:space-between;align-items:center;height:62px;padding:0 16px;display:flex;position:sticky;top:0}.member-nav-brand{align-items:center;gap:10px;display:flex}.member-brand-logo{object-fit:contain;background:#222;border:1px solid #333;border-radius:6px;width:32px;height:32px;padding:2px}.member-brand-title{color:#fff;letter-spacing:-.01em;font-size:18px;font-weight:700}.member-nav-menu-wrapper{position:relative}.member-menu-btn{color:#fff;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:6px;font-size:24px;transition:background .2s;display:flex}.member-menu-btn:hover{background:#ffffff14}.member-dropdown-menu{z-index:120;background:#222;border:1px solid #333;border-radius:8px;min-width:130px;padding:6px;position:absolute;top:40px;right:0;box-shadow:0 10px 25px #00000080}.member-dropdown-menu button{color:#f87171;cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;gap:8px;width:100%;padding:8px 12px;font-size:13px;font-weight:600;transition:background .2s;display:flex}.member-dropdown-menu button:hover{background:#ef44441f}.member-main-content{flex:1;width:100%;max-width:480px;margin:0 auto;padding:16px 16px 84px}.member-dashboard-cards{flex-direction:column;gap:12px;display:flex}.member-profile-card{background:#1c1c1c;border:1px solid #282828;border-radius:12px;padding:18px 20px;box-shadow:0 4px 12px #0000004d}.member-user-name{color:#fff;letter-spacing:-.01em;margin-bottom:6px;font-size:22px;font-weight:700}.member-id-badge{color:#aaa;align-items:center;gap:6px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:13px;display:flex}.id-icon{color:#aaa;font-size:16px}.member-status-card{background:#1c1c1c;border:1px solid #d97706;border-radius:10px;justify-content:space-between;align-items:center;padding:14px 18px;display:flex;box-shadow:0 4px 12px #d9770626}.status-label{color:#aaa;letter-spacing:.05em;font-size:12px;font-weight:600}.status-indicator{color:#f59e0b;letter-spacing:.03em;align-items:center;gap:6px;font-size:13px;font-weight:700;display:flex}.status-dot{color:#f59e0b;font-size:12px;animation:2s infinite pulse}@keyframes pulse{0%{opacity:.6}50%{opacity:1}to{opacity:.6}}.member-plan-details-card{background:#1c1c1c;border:1px solid #282828;border-radius:12px;padding:20px;box-shadow:0 4px 12px #0000004d}.card-section-header h2{color:#aaa;letter-spacing:.05em;margin-bottom:12px;font-size:12px;font-weight:600}.card-header-divider{border-bottom:1px solid #2b2b2b;margin-bottom:18px}.plan-detail-item{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.plan-detail-item:last-child{margin-bottom:0}.detail-label{color:#aaa;align-items:center;gap:10px;font-size:14px;display:flex}.detail-icon{color:#aaa;font-size:18px}.detail-value{color:#fff;font-size:14px;font-weight:500}.bold-value{color:#fff;font-size:16px;font-weight:700}.member-time-remaining-card{background:#1c1c1c;border:1px solid #282828;border-radius:12px;padding:20px;position:relative;overflow:hidden;box-shadow:0 4px 12px #0000004d}.time-label{color:#aaa;letter-spacing:.05em;margin-bottom:12px;font-size:12px;font-weight:600;display:block}.time-countdown-display{align-items:baseline;gap:10px;display:flex}.days-number{color:#f59e0b;letter-spacing:-.02em;font-size:46px;font-weight:800;line-height:1}.days-unit{color:#fff;letter-spacing:.02em;font-size:18px;font-weight:700}.time-watermark-icon{color:#ffffff08;pointer-events:none;font-size:96px;position:absolute;bottom:-15px;right:-10px}.member-tab-view{padding:10px 0}.checkin-card,.attendance-card{text-align:center;background:#1c1c1c;border:1px solid #282828;border-radius:14px;padding:24px 20px;box-shadow:0 4px 14px #0000004d}.qr-scan-icon{color:#d97706;margin-bottom:12px;font-size:64px}.checkin-card h2,.attendance-card h2{color:#fff;margin-bottom:6px;font-size:20px;font-weight:700}.checkin-card p,.attendance-card p{color:#888;margin-bottom:24px;font-size:13px}.checkin-success-msg{color:#4ade80;background:#22c55e1f;border:1px solid #22c55e4d;border-radius:8px;justify-content:center;align-items:center;gap:8px;margin-bottom:20px;padding:12px 16px;font-size:14px;font-weight:600;display:flex}.btn-primary-checkin{color:#fff;cursor:pointer;background:linear-gradient(135deg,#d97706 0%,#b45309 100%);border:none;border-radius:10px;justify-content:center;align-items:center;gap:8px;width:100%;height:48px;font-size:15px;font-weight:700;transition:all .2s;display:flex;box-shadow:0 4px 14px #d9770659}.btn-primary-checkin:hover{background:linear-gradient(135deg,#f59e0b 0%,#d97706 100%)}.attendance-logs-list{text-align:left;flex-direction:column;gap:10px;display:flex}.log-row{background:#141414;border:1px solid #282828;border-radius:8px;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.log-info{flex-direction:column;gap:2px;display:flex}.log-date{color:#fff;font-size:14px;font-weight:600}.log-time{color:#888;font-size:12px}.log-badge-active{color:#4ade80;background:#22c55e1f;border:1px solid #22c55e40;border-radius:20px;padding:4px 10px;font-size:11px;font-weight:600}.member-bottom-nav{z-index:100;background:#161616;border-top:1px solid #262626;justify-content:space-around;align-items:center;max-width:480px;height:64px;margin:0 auto;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 16px #0006}.nav-tab-btn{color:#777;cursor:pointer;background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:4px;height:100%;transition:all .2s;display:flex}.nav-tab-btn .tab-icon{font-size:22px}.nav-tab-btn .tab-label{letter-spacing:.05em;font-size:10px;font-weight:700}.nav-tab-btn.active,.nav-tab-btn.active .tab-icon{color:#fff}.nav-tab-btn:hover:not(.active){color:#ccc}@media (width>=768px){.member-main-content{max-width:600px;padding-top:32px}.member-bottom-nav{border-radius:16px 16px 0 0;max-width:600px}}.ble-checkin-container{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:32px 16px 20px;display:flex}.ble-scanner-card{cursor:pointer;background:#1c1c1c;border:2px solid #333;border-radius:24px;justify-content:center;align-items:center;width:240px;height:240px;margin-bottom:36px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;box-shadow:0 12px 32px #00000080}.ble-scanner-card:hover{border-color:#d97706;transform:scale(1.02);box-shadow:0 16px 40px #d9770640}.ble-outer-frame{background:#242424;border:1px solid #3a3a3a;border-radius:20px;justify-content:center;align-items:center;width:140px;height:140px;display:flex;box-shadow:inset 0 2px 8px #0009}.ble-inner-icon-box{justify-content:center;align-items:center;display:flex}.ble-icon{color:#fff;font-size:64px;transition:all .3s}.ble-icon.searching{color:#f59e0b;animation:1.5s infinite blePulse}.ble-icon.connected{color:#10b981}.ble-scanner-card.is-scanning{border-color:#f59e0b;box-shadow:0 0 30px #f59e0b66}.ble-scanner-card.is-connected{border-color:#10b981;box-shadow:0 0 30px #10b98166}@keyframes blePulse{0%{opacity:.7;transform:scale(.95)}50%{opacity:1;transform:scale(1.1)}to{opacity:.7;transform:scale(.95)}}.ble-status-headline{color:#fff;letter-spacing:-.01em;margin-bottom:12px;font-size:24px;font-weight:700}.ble-status-subtext{color:#999;max-width:320px;margin-bottom:28px;font-size:14px;line-height:1.5}.ble-error-msg{color:#f87171;background:#ef44441f;border:1px solid #ef44444d;border-radius:10px;align-items:center;gap:8px;max-width:340px;margin-bottom:20px;padding:12px 16px;font-size:13px;font-weight:600;display:flex}.ble-connect-btn{max-width:320px}.ble-page-title{color:#fff;letter-spacing:-.01em;margin-bottom:6px;font-size:26px;font-weight:800}.ble-page-subtitle{color:#888;margin-bottom:24px;font-size:13px}.ble-device-status-card{background:#1e1e1e;border:1px solid #2e2e2e;border-radius:16px;flex-direction:column;align-items:center;width:100%;margin-bottom:14px;padding:24px;display:flex;box-shadow:0 8px 24px #0006}.ble-icon-badge-box{background:#282828;border:1px solid #383838;border-radius:20px;justify-content:center;align-items:center;width:120px;height:120px;margin-bottom:24px;display:flex;box-shadow:inset 0 2px 6px #00000080}.ble-badge-icon{color:#fff;font-size:58px}.ble-details-table{flex-direction:column;gap:14px;width:100%;display:flex}.ble-detail-row{border-bottom:1px solid #2a2a2a;justify-content:space-between;align-items:center;padding-bottom:12px;display:flex}.ble-detail-row:last-child{border-bottom:none;padding-bottom:0}.row-label{color:#888;letter-spacing:.05em;font-size:11px;font-weight:700}.row-val{color:#fff;align-items:center;gap:6px;font-size:13px;font-weight:600;display:flex}.green-val{color:#10b981}.amber-val{color:#f59e0b}.gray-val{color:#888}.val-dot{font-size:10px}.ble-membership-status-card{background:#1e1e1e;border:1px solid #2e2e2e;border-radius:12px;justify-content:space-between;align-items:center;width:100%;margin-bottom:24px;padding:14px 18px;display:flex}.membership-card-left{align-items:center;gap:12px;display:flex}.membership-icon{color:#888;font-size:24px}.membership-label{color:#888;letter-spacing:.05em;font-size:10px;font-weight:700;display:block}.membership-tier{color:#fff;margin:2px 0 0;font-size:14px;font-weight:700}.membership-badge-active{color:#10b981;letter-spacing:.03em;font-size:12px;font-weight:700}.btn-amber-action{color:#fff;letter-spacing:.04em;cursor:pointer;background:linear-gradient(135deg,#f59e0b 0%,#d97706 100%);border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;width:100%;height:52px;font-size:15px;font-weight:800;transition:all .2s;display:flex;box-shadow:0 6px 20px #d9770666}.btn-amber-action:hover{background:linear-gradient(135deg,#fbbf24 0%,#f59e0b 100%);transform:translateY(-1px);box-shadow:0 8px 24px #d9770680}.btn-icon{font-size:20px}.confirmed-icon-badge{background:#1e1e1e;border:1px solid #2e2e2e;border-radius:24px;justify-content:center;align-items:center;width:110px;height:110px;margin-bottom:24px;display:flex;box-shadow:0 8px 24px #00000080}.confirmed-icon{color:#fff;font-size:64px}.confirmed-receipt-card{background:#1e1e1e;border:1px solid #2e2e2e;border-radius:16px;flex-direction:column;gap:16px;width:100%;margin-bottom:28px;padding:22px;display:flex;box-shadow:0 8px 24px #0006}.receipt-row{border-bottom:1px solid #2a2a2a;justify-content:space-between;align-items:center;padding-bottom:12px;display:flex}.receipt-row:last-child{border-bottom:none;padding-bottom:0}.receipt-label{color:#888;letter-spacing:.05em;font-size:11px;font-weight:700}.receipt-val{color:#fff;font-size:14px;font-weight:600}.method-val{align-items:center;gap:6px;display:flex}.method-icon{color:#fff;font-size:16px}.error-card-wrapper{text-align:center;background:#1c1c1c;border:1px solid #2e2e2e;border-radius:20px;flex-direction:column;align-items:center;width:100%;padding:32px 24px;display:flex;box-shadow:0 12px 32px #0009}.error-icon-badge{background:#3b1d22;border:1px solid #5a262e;border-radius:20px;justify-content:center;align-items:center;width:96px;height:96px;margin-bottom:24px;display:flex}.error-icon{color:#f87171;font-size:52px}.error-headline{color:#fff;letter-spacing:-.01em;margin-bottom:12px;font-size:24px;font-weight:800}.error-subtext{color:#aaa;max-width:300px;margin-bottom:28px;font-size:13px;line-height:1.5}.btn-try-again{height:48px}.member-page-header-title{color:#fff;letter-spacing:-.01em;margin-bottom:20px;font-size:24px;font-weight:800}.attendance-history-stats-grid{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px;display:grid}.att-stat-card{background:#1e1e1e;border:1px solid #2e2e2e;border-radius:14px;padding:18px;box-shadow:0 4px 12px #0000004d}.att-stat-label{color:#888;margin-bottom:8px;font-size:11px;font-weight:600;display:block}.att-stat-value{color:#fff;margin:0;font-size:26px;font-weight:800}.attendance-calendar-card{background:#1c1c1c;border:1px solid #282828;border-radius:16px;margin-bottom:24px;padding:20px;box-shadow:0 6px 18px #0006}.calendar-header-nav{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.calendar-header-nav h2{color:#fff;margin:0;font-size:16px;font-weight:700}.cal-nav-btn{color:#888;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:4px;font-size:20px;transition:color .2s;display:flex}.cal-nav-btn:hover{color:#fff;background:#ffffff0d}.calendar-weekdays-row{text-align:center;color:#888;grid-template-columns:repeat(7,1fr);margin-bottom:14px;font-size:12px;font-weight:700;display:grid}.calendar-days-grid{text-align:center;grid-template-columns:repeat(7,1fr);gap:8px 4px;display:grid}.day-num{color:#ccc;cursor:pointer;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;height:38px;font-size:14px;font-weight:500;transition:all .2s;display:flex;position:relative}.dim-day{color:#444}.attended-day{color:#f59e0b;background:#3b2a12;font-weight:700}.bt-dot{margin-top:1px;font-size:10px;line-height:.5}.active-selected-day{color:#fff;background:linear-gradient(135deg,#f59e0b 0%,#d97706 100%);font-weight:800;box-shadow:0 4px 12px #d9770666}.day-details-section{width:100%}.section-title{color:#fff;margin-bottom:12px;font-size:18px;font-weight:700}.day-details-card{background:#1e1e1e;border:1px solid #2e2e2e;border-radius:14px;justify-content:space-between;align-items:center;padding:18px 20px;display:flex;box-shadow:0 4px 14px #00000059}.day-details-left h3{color:#fff;margin:0 0 4px;font-size:16px;font-weight:700}.day-details-left p{color:#888;margin:0;font-size:13px}.day-details-right{flex-direction:column;align-items:flex-end;gap:6px;display:flex}.method-badge{color:#aaa;align-items:center;gap:4px;font-size:12px;display:flex}.method-bt-icon{color:#888;font-size:14px}.confirmed-status-badge{color:#10b981;font-size:12px;font-weight:700}.att-calendar-card{background:#1c1c1c;border:1px solid #2e2e2e;border-radius:16px;margin-top:18px;padding:20px;box-shadow:0 8px 24px #0006}.att-calendar-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.cal-month-title{color:#fff;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:6px 10px;font-size:16px;font-weight:700}.cal-month-title:hover,.cal-month-title:focus-visible{background:#2a2a2a;outline:none}.cal-month-picker-wrap{position:relative}.cal-month-picker{z-index:20;background:#202020;border:1px solid #3a3a3a;border-radius:10px;align-items:flex-end;gap:10px;padding:12px;display:flex;position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%);box-shadow:0 12px 30px #0000008c}.cal-month-picker label{color:#aaa;gap:5px;font-size:11px;font-weight:700;display:grid}.cal-month-picker select{color:#fff;background:#151515;border:1px solid #404040;border-radius:6px;min-width:112px;min-height:36px;padding:0 8px;font-size:13px}.cal-month-picker select:focus-visible{outline-offset:2px;outline:2px solid #f59e0b}.cal-picker-done{color:#fff;cursor:pointer;background:#059669;border:0;border-radius:6px;min-height:36px;padding:0 10px;font-size:12px;font-weight:700}.cal-arrow-btn{color:#888;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:4px;font-size:22px;transition:color .2s;display:flex}.cal-arrow-btn:hover{color:#fff}.cal-arrow-btn:disabled{opacity:.3;cursor:not-allowed}.att-calendar-weekdays{text-align:center;color:#777;grid-template-columns:repeat(7,1fr);margin-bottom:12px;font-size:12px;font-weight:700;display:grid}.att-calendar-days-grid{text-align:center;grid-template-columns:repeat(7,1fr);gap:8px 4px;display:grid}.att-calendar-day{height:40px;min-height:40px;box-shadow:none;color:#444;background:0 0;border:0;border-radius:0;justify-content:center;align-items:center;padding:0;font-size:14px;display:flex}.att-calendar-day.other-month{color:#383838}.cal-day-btn{color:#ccc;cursor:pointer;background:0 0;border:none;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;width:40px;height:40px;margin:0 auto;font-size:14px;font-weight:500;transition:all .2s;display:flex;position:relative}.cal-day-btn:hover:not(.active-selected):not(.future-day){color:#fff;background:#2a2a2a}.cal-day-btn.future-day{opacity:.25;pointer-events:none;cursor:not-allowed!important;color:#555!important}.cal-day-btn.has-checkin{color:#34d399;background:#10b98133;font-weight:700}.cal-day-btn.has-pending{color:#fbbf24;background:#f59e0b29}.cal-day-btn.has-rejected{color:#f87171;background:#ef444424}.checkin-dot{color:#34d399;margin-top:-2px;font-size:14px;line-height:8px}.cal-day-btn.active-selected{border-radius:12px;box-shadow:0 4px 14px #ff980066;color:#000!important;background:#ff9800!important;font-weight:800!important}.cal-day-btn.active-selected .checkin-dot{color:#000!important}.cal-day-btn.has-checkin.active-selected{box-shadow:0 4px 14px #10b98159;color:#fff!important;background:#059669!important}.figma-day-details-section{margin-top:24px}.figma-details-title{color:#fff;margin-bottom:12px;font-size:18px;font-weight:700}.figma-day-details-card{background:#1c1c1c;border:1px solid #2e2e2e;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:18px 20px;display:flex;box-shadow:0 4px 14px #0006}.day-card-left{min-width:0}.day-card-left .day-card-date{color:#fff;margin:0 0 4px;font-size:16px;font-weight:700}.day-card-left .day-card-time{color:#888;font-size:13px}.day-card-left .day-card-title{color:#fff;overflow-wrap:anywhere;margin:8px 0 0;font-size:14px;font-weight:700}.day-card-right{flex-direction:column;align-items:flex-end;gap:6px;display:flex}.day-card-method{color:#aaa;align-items:center;gap:4px;font-size:12px;display:flex}.day-card-method .bt-icon{color:#888;font-size:15px}.day-card-status{align-items:center;gap:6px;display:flex}.day-details-view-btn{color:#ddd;cursor:pointer;background:0 0;border:1px solid #444;border-radius:6px;padding:6px 10px;font-size:12px;font-weight:700}.day-details-view-btn:hover{color:#34d399;border-color:#34d399}.attendance-details-overlay{z-index:1000;background:#000000c2;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.attendance-details-modal{background:#1c1c1c;border:1px solid #383838;border-radius:12px;width:min(100%,480px);max-height:min(88vh,720px);padding:26px;position:relative;overflow-y:auto;box-shadow:0 20px 60px #000000a6}.attendance-details-close{color:#aaa;cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;width:36px;height:36px;font-size:22px;display:grid;position:absolute;top:12px;right:12px}.attendance-details-close:hover{color:#fff;background:#303030}.attendance-details-modal h2{color:#fff;margin:0 40px 5px 0;font-size:20px}.attendance-details-date{color:#999;margin:0 0 20px;font-size:13px}.attendance-detail-field{color:#ccc;gap:7px;margin-top:14px;font-size:13px;font-weight:700;display:grid}.attendance-detail-field input,.attendance-detail-field textarea{color:#fff;width:100%;font:inherit;background:#131313;border:1px solid #3e3e3e;border-radius:6px;padding:10px 12px;font-weight:400}.attendance-detail-field textarea{resize:vertical;min-height:140px;line-height:1.5}.attendance-detail-field input:focus-visible,.attendance-detail-field textarea:focus-visible{outline-offset:1px;outline:2px solid #34d399}.attendance-details-error{color:#f87171;margin:12px 0 0;font-size:13px}.attendance-details-save{color:#fff;cursor:pointer;background:#059669;border:0;border-radius:6px;width:100%;min-height:42px;margin-top:18px;font-size:14px;font-weight:700}.attendance-details-save:hover:not(:disabled){background:#047857}.attendance-details-save:disabled{opacity:.6;cursor:wait}.status-dot-green{color:#00e676;font-size:10px}.status-text-confirmed{color:#00e676;font-size:13px;font-weight:700}.status-dot-red{color:#ef4444;font-size:10px}.status-text-rejected{color:#ef4444;font-size:13px;font-weight:700}.status-dot-amber{color:#f59e0b;font-size:10px}.status-text-pending{color:#f59e0b;font-size:13px;font-weight:700}.offline-top-banner{color:#f59e0b;letter-spacing:.08em;background:#141414;border-top:1px solid #2b261a;border-bottom:1px solid #2b261a;justify-content:center;align-items:center;gap:8px;height:38px;font-size:11px;font-weight:800;display:flex}.offline-dot{color:#f59e0b;font-size:10px}.offline-mode-container{flex-direction:column;gap:16px;padding-top:8px;display:flex}.offline-notice-card{text-align:center;background:#1a1a1a;border:1px solid #282828;border-radius:12px;padding:16px 20px;box-shadow:0 4px 12px #0000004d}.offline-notice-card p{color:#bbb;margin:0;font-size:13px;line-height:1.5}.offline-pass-card{background:#1c1c1c;border:1px solid #2e2e2e;border-radius:16px;padding:24px;box-shadow:0 6px 20px #0006}.pass-header-row{justify-content:space-between;align-items:flex-start;margin-bottom:18px;display:flex}.pass-member-name{color:#fff;letter-spacing:-.01em;margin-bottom:4px;font-size:24px;font-weight:800}.pass-member-id{color:#aaa;margin:0;font-family:SFMono-Regular,Consolas,monospace;font-size:13px}.pass-qr-box{background:#242424;border:1px solid #383838;border-radius:12px;justify-content:center;align-items:center;width:64px;height:64px;display:flex}.pass-qr-icon{color:#fff;font-size:42px}.pass-card-divider{border-bottom:1px solid #2b2b2b;margin-bottom:18px}.pass-footer-row{justify-content:space-between;align-items:center;display:flex}.pass-col-label{color:#888;letter-spacing:.06em;margin-bottom:6px;font-size:10px;font-weight:700;display:block}.pass-col-val-row{align-items:center;gap:8px;display:flex}.pass-col-val{color:#fff;font-size:18px;font-weight:800}.pass-active-pill{color:#ccc;letter-spacing:.04em;background:#ffffff14;border:1px solid #3a3a3a;border-radius:4px;padding:2px 8px;font-size:10px;font-weight:700}.offline-disabled-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.offline-disabled-card{text-align:center;background:#1c1c1c;border:1px solid #282828;border-radius:14px;flex-direction:column;align-items:center;padding:24px 16px;display:flex;box-shadow:0 4px 14px #00000059}.disabled-card-icon{color:#666;margin-bottom:12px;font-size:32px}.offline-disabled-card h3{color:#ccc;margin-bottom:4px;font-size:14px;font-weight:700}.disabled-status-text{color:#666;margin:0;font-size:12px}.clickable-offline-card{cursor:pointer;border-color:#3b2a12;transition:all .2s}.clickable-offline-card:hover{border-color:#d97706;transform:translateY(-2px);box-shadow:0 8px 20px #d9770633}.active-offline-icon{color:#f59e0b}.active-offline-subtext{color:#f59e0b;font-weight:600}.btn-offline-checkin{margin-top:16px}.offline-sync-banner{margin-top:8px;margin-bottom:8px}@media (width>=601px){.member-mobile-wrapper{border-left:1px solid #222;border-right:1px solid #222;max-width:480px;min-height:100vh;margin:0 auto;box-shadow:0 0 50px #000c}}@media (width<=480px){.member-mobile-wrapper{width:100%;max-width:100%}.member-main-content{padding:16px 14px 90px}.ble-status-headline{font-size:20px}.attendance-history-stats-grid{gap:8px}.att-stat-value{font-size:22px}.cal-month-picker{gap:6px;padding:9px}.cal-month-picker select{min-width:90px}.figma-day-details-card{align-items:flex-start;padding:16px}.day-card-right{flex-shrink:0}.attendance-details-modal{padding:24px 18px 18px}}.members-page{color:#fff;flex-direction:column;gap:24px;display:flex}.members-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.search-input-wrapper{width:320px;max-width:100%;position:relative}.search-input-wrapper .search-icon{color:#888;pointer-events:none;font-size:20px;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.search-input-wrapper input::placeholder{color:#777}.select-wrapper{min-width:140px;position:relative}.select-wrapper select{color:#ccc;appearance:none;cursor:pointer;background:#1c1c1c;border:1px solid #2e2e2e;border-radius:8px;outline:none;width:100%;height:42px;padding:0 36px 0 14px;font-size:14px;font-weight:500;transition:border-color .2s}.add-member-btn{color:#fff;cursor:pointer;background:#d97706;border:none;border-radius:8px;align-items:center;gap:8px;height:42px;padding:0 20px;font-size:14px;font-weight:600;transition:background-color .2s,transform .1s,box-shadow .2s;display:flex;box-shadow:0 4px 12px #d9770640}.add-member-btn svg{font-size:20px}.add-member-btn:hover{background:#b45309;box-shadow:0 6px 16px #d9770659}.add-member-btn:active{transform:translateY(1px)}.members-table-card{background:#181818;border:1px solid #282828;border-radius:12px;overflow:hidden;box-shadow:0 8px 24px #0006}.members-table{border-collapse:collapse;text-align:left;white-space:nowrap;width:100%}.members-table th{color:#888;letter-spacing:.06em;background:#1f1f1f;border-bottom:1px solid #282828;padding:16px 20px;font-size:11px;font-weight:700}.members-table td{color:#ccc;border-bottom:1px solid #242424;padding:16px 20px;font-size:14px}.members-table tbody tr{transition:background-color .15s}.members-table tbody tr:hover{background:#202020}.member-name{font-weight:600;color:#fff!important}.member-email a{color:#8ab4f8;text-decoration:underline;transition:color .15s}.member-email a:hover{color:#a6c8ff}.member-type,.member-pass{color:#ccc}.member-date{color:#999;font-family:monospace,sans-serif;font-size:13px}@media (width<=768px){.members-table{min-width:1000px}}.status-badge{white-space:nowrap;border-radius:6px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.status-dot{font-size:9px}.status-badge.active{color:#22c55e;background:#22c55e1f;border:1px solid #22c55e40}.status-badge.warning{color:#f59e0b;background:#f59e0b1f;border:1px solid #f59e0b40}.status-badge.expired,.status-badge.inactive{color:#ef4444;background:#ef44441f;border:1px solid #ef444440}.action-btn.renew-action-btn{color:#38bdf8}.action-btn.renew-action-btn:hover{color:#7dd3fc;background:#38bdf826}.no-data-cell{text-align:center;color:#777;font-style:italic;padding:40px!important}.page-nav-btn{color:#ccc;cursor:pointer;background:#242424;border:1px solid #2e2e2e;border-radius:6px;padding:6px 14px;font-size:13px;font-weight:500;transition:background-color .2s,color .2s}.page-num-btn.active{color:#fff;background:#d97706;border-color:#d97706;box-shadow:0 2px 8px #d977064d}.modal-container{background:#1a1a1a;border:1px solid #2e2e2e;border-radius:12px;width:100%;max-width:580px;animation:.25s ease-out modalFadeIn;overflow:hidden;box-shadow:0 20px 40px #0009}@keyframes modalFadeIn{0%{opacity:0;transform:translateY(-12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.modal-header{background:#141414;border-bottom:1px solid #282828;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.modal-close-btn{color:#888;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:4px;font-size:22px;transition:color .2s,background-color .2s;display:flex}.modal-close-btn:hover{color:#fff;background:#282828}.form-group label{color:#aaa;text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:600}.form-group input,.form-group select{color:#fff;background:#222;border:1px solid #333;border-radius:8px;outline:none;height:42px;padding:0 14px;font-size:14px;transition:border-color .2s}.form-group input:focus,.form-group select:focus{border-color:#d97706}.btn-cancel{color:#ccc;cursor:pointer;background:#262626;border:1px solid #333;border-radius:8px;padding:10px 20px;font-size:14px;font-weight:600;transition:background-color .2s}.btn-cancel:hover{color:#fff;background:#333}.btn-submit{color:#fff;cursor:pointer;background:#d97706;border:none;border-radius:8px;padding:10px 24px;font-size:14px;font-weight:600;transition:background-color .2s,box-shadow .2s;box-shadow:0 4px 12px #d9770640}.btn-submit:hover{background:#b45309}.renewal-modal-container{background:#181818;border:1px solid #282828;border-radius:16px;width:92%;max-width:760px;box-shadow:0 24px 48px #000000b3}.renewal-modal-header{background:#141414;border-bottom:1px solid #262626;justify-content:center;padding:22px 24px;position:relative}.renewal-modal-header h2{color:#fff;text-align:center;font-size:20px;font-weight:700}.renewal-modal-header .modal-close-btn{position:absolute;top:50%;right:20px;transform:translateY(-50%)}.renewal-modal-form{flex-direction:column;gap:24px;padding:28px 24px 32px;display:flex}.renewal-form-grid{grid-template-columns:1fr 1fr;align-items:start;gap:24px;display:grid}.renewal-column{flex-direction:column;gap:18px;display:flex}.renewal-form-subgrid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.renewal-form-stack{flex-direction:column;gap:20px;display:flex}.renewal-form-group{flex-direction:column;gap:8px;display:flex}.renewal-form-group label{color:#fff;letter-spacing:normal;text-transform:none;font-size:14px;font-weight:600}.renewal-select-wrapper{width:100%;position:relative}.renewal-select-wrapper select,.renewal-form-group input{color:#fff;appearance:none;background:#222;border:1px solid #333;border-radius:10px;outline:none;width:100%;height:46px;padding:0 16px;font-size:14px;font-weight:500;transition:border-color .2s,box-shadow .2s}.renewal-select-wrapper select:focus,.renewal-form-group input:focus{border-color:#ff9800;box-shadow:0 0 0 3px #ff980026}.renewal-select-wrapper .select-arrow{color:#aaa;pointer-events:none;font-size:20px;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.renewal-summary-card{background:#121212;border:1px solid #282828;border-radius:12px;flex-direction:column;gap:12px;margin-top:4px;padding:16px;display:flex}.renewal-summary-title{text-transform:uppercase;letter-spacing:.05em;color:#ff9800;border-bottom:1px solid #222;padding-bottom:8px;font-size:13px;font-weight:700}.renewal-summary-row{color:#aaa;justify-content:space-between;align-items:center;font-size:13px;display:flex}.renewal-summary-row strong{color:#fff}.renewal-summary-row.total{color:#fff;border-top:1px dashed #333;margin-top:4px;padding-top:10px;font-weight:600}.renewal-total-price{color:#ff9800;font-size:18px;font-weight:800}.renewal-modal-actions{border-top:1px solid #222;justify-content:flex-end;gap:12px;margin-top:12px;padding-top:16px;display:flex}.renewal-btn-cancel{color:#ccc;cursor:pointer;background:#242424;border:1px solid #333;border-radius:10px;height:44px;padding:0 20px;font-size:14px;font-weight:600;transition:background-color .2s}.renewal-btn-cancel:hover{color:#fff;background:#303030}.renewal-btn-submit{color:#fff;cursor:pointer;background:#ff9800;border:none;border-radius:10px;height:44px;padding:0 28px;font-size:15px;font-weight:700;transition:background-color .2s,transform .1s,box-shadow .2s;box-shadow:0 4px 14px #ff980059}.renewal-btn-submit:hover{background:#e68a00;box-shadow:0 6px 18px #ff980073}.renewal-btn-submit:active{transform:translateY(1px)}@media (width<=680px){.renewal-form-grid,.renewal-form-subgrid{grid-template-columns:1fr}.renewal-modal-actions{flex-direction:column-reverse}.renewal-btn-cancel,.renewal-btn-submit{width:100%}}.member-edit-modal-container{max-width:680px;max-height:90vh;overflow-y:auto}.edit-member-form{flex-direction:column;gap:20px;display:flex}.form-section-header{align-items:center;gap:10px;margin-top:6px;margin-bottom:-4px;display:flex}.form-section-header .section-icon{color:#d97706;font-size:20px}.form-section-header h3{color:#fff;letter-spacing:.01em;margin:0;font-size:15px;font-weight:700}.form-section-divider{background:#282828;height:1px;margin:8px 0}@media (width<=768px){.members-controls{flex-direction:column;align-items:stretch}.search-input-wrapper{width:100%}.filter-group{flex-direction:column;align-items:stretch}.select-wrapper{width:100%}.add-member-btn{justify-content:center;width:100%}.form-grid{grid-template-columns:1fr}.form-group.full-width{grid-column:span 1}}.add-member-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#000000bf;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.add-member-modal-container{background:#1a1a1a;border:1px solid #2e2e2e;border-radius:12px;width:100%;max-width:680px;max-height:90vh;animation:.25s ease-out addMemberFadeIn;overflow-y:auto;box-shadow:0 20px 40px #0009}@keyframes addMemberFadeIn{0%{opacity:0;transform:translateY(-12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.add-member-modal-header{background:#141414;border-bottom:1px solid #282828;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.add-member-modal-header h2{color:#fff;margin:0;font-size:18px;font-weight:700}.add-member-modal-close{color:#888;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:4px;font-size:22px;display:flex}.add-member-modal-close:hover{color:#fff;background:#282828}.add-member-form{flex-direction:column;gap:20px;padding:24px;display:flex}.add-member-section-header{align-items:center;gap:10px;margin-top:6px;margin-bottom:-4px;display:flex}.add-member-section-icon{color:#d97706;font-size:20px}.add-member-section-header h3{color:#fff;margin:0;font-size:15px;font-weight:700}.add-member-form-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.add-member-form-group{flex-direction:column;gap:6px;display:flex}.add-member-full-width{grid-column:span 2}.add-member-form-group label{color:#aaa;text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:600}.add-member-form-group input,.add-member-form-group select{box-sizing:border-box;color:#fff;background:#222;border:1px solid #333;border-radius:8px;outline:none;width:100%;height:42px;padding:0 14px;font-size:14px}.add-member-form-group input::placeholder{color:#666}.add-member-form-group input:focus,.add-member-form-group select:focus{border-color:#d97706;box-shadow:0 0 0 2px #d977061a}.add-member-form-group input:disabled,.add-member-form-group select:disabled{opacity:.6;cursor:not-allowed}.add-member-field-error{color:#f87171;margin-top:4px;font-size:12px;line-height:1.3}.add-member-select-wrapper{position:relative}.add-member-select-wrapper select{appearance:none;cursor:pointer;padding-right:36px}.add-member-select-arrow{color:#888;pointer-events:none;font-size:20px;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.add-member-divider{background:#282828;height:1px;margin:8px 0}.add-member-selected-plan{background:#222;border:1px solid #333;border-radius:10px;grid-column:span 2;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;display:flex}.add-member-selected-plan-info{flex-direction:column;gap:4px;display:flex}.add-member-selected-plan-label{color:#888;text-transform:uppercase;letter-spacing:.05em;font-size:10px;font-weight:600}.add-member-selected-plan-name{color:#fff;font-size:14px;font-weight:600}.add-member-selected-plan-price{text-align:right}.add-member-selected-plan-price-label{color:#888;text-transform:uppercase;letter-spacing:.05em;margin-bottom:3px;font-size:10px;font-weight:600}.add-member-selected-plan-price-value{color:#d97706;font-size:17px;font-weight:700}.add-member-form-group input[type=date]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.add-member-actions{justify-content:flex-end;gap:12px;margin-top:8px;display:flex}.add-member-cancel-btn,.add-member-submit-btn{cursor:pointer;border-radius:8px;padding:10px 20px;font-size:14px;font-weight:600}.add-member-cancel-btn{color:#ccc;background:#262626;border:1px solid #333}.add-member-cancel-btn:hover{color:#fff;background:#333}.add-member-submit-btn{color:#fff;background:#d97706;border:none;padding:10px 24px;box-shadow:0 4px 12px #d9770640}.add-member-submit-btn:hover:not(:disabled){background:#b45309}.add-member-submit-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}@media (width<=600px){.add-member-modal-overlay{padding:10px}.add-member-modal-container{max-height:95vh}.add-member-form{padding:18px}.add-member-form-grid{grid-template-columns:1fr}.add-member-full-width,.add-member-selected-plan{grid-column:span 1}.add-member-selected-plan{flex-direction:column;align-items:flex-start}.add-member-selected-plan-price{text-align:left}.add-member-actions{flex-direction:column-reverse}.add-member-cancel-btn,.add-member-submit-btn{width:100%}}.equipment-page{color:#fff;flex-direction:column;gap:24px;display:flex}.equipment-summary-banner{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.summary-stat-card{background:#1a1a1a;border:1px solid #2a2a2a;border-radius:16px;flex-direction:column;flex:1;gap:14px;min-width:220px;padding:20px 24px;transition:transform .2s,border-color .2s;display:flex;box-shadow:0 4px 20px #0006}.summary-stat-card:hover{transform:translateY(-2px)}.summary-stat-card.total-cost:hover{border-color:#22c55e}.summary-stat-card.maintenance:hover{border-color:#f59e0b}.summary-stat-card.out-of-service:hover{border-color:#ef4444}.stat-icon-badge{border-radius:12px;justify-content:center;align-items:center;width:46px;height:46px;font-size:24px;display:flex}.stat-icon-badge.green{color:#22c55e;background:#22c55e1f;border:1px solid #22c55e40}.stat-icon-badge.amber{color:#f59e0b;background:#f59e0b1f;border:1px solid #f59e0b40}.stat-icon-badge.red{color:#ef4444;background:#ef44441f;border:1px solid #ef444440}.equipment-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.search-input-wrapper{flex:1;min-width:280px;max-width:480px;position:relative}.filter-group{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.select-wrapper{position:relative}.select-wrapper select{color:#ccc;appearance:none;cursor:pointer;background:#1c1c1c;border:1px solid #2e2e2e;border-radius:8px;outline:none;height:42px;padding:0 38px 0 16px;font-size:14px;transition:border-color .2s}.select-wrapper select:focus{border-color:#d97706}.select-wrapper .select-arrow{color:#888;pointer-events:none;font-size:20px;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.add-equipment-btn{color:#fff;cursor:pointer;background:#d97706;border:none;border-radius:8px;align-items:center;gap:8px;height:42px;padding:0 20px;font-size:14px;font-weight:600;transition:background-color .2s,transform .1s,box-shadow .2s;display:flex;box-shadow:0 4px 12px #d9770640}.add-equipment-btn:hover{background:#b45309;box-shadow:0 6px 16px #d9770659}.add-equipment-btn:active{transform:translateY(1px)}.equipment-table-card{background:#1a1a1a;border:1px solid #262626;border-radius:12px;overflow:hidden}.equipment-table{border-collapse:collapse;text-align:left;table-layout:fixed;width:100%}.equipment-table th:first-child,.equipment-table td:first-child,.equipment-table th:nth-child(2),.equipment-table td:nth-child(2){width:22%;min-width:160px}.equipment-table th:nth-child(3),.equipment-table td:nth-child(3){width:15%;min-width:130px}.equipment-table th:nth-child(4),.equipment-table td:nth-child(4){width:10%;min-width:90px}.equipment-table th:nth-child(5),.equipment-table td:nth-child(5){width:13%;min-width:120px}.equipment-table th:nth-child(6),.equipment-table td:nth-child(6){width:18%;min-width:170px}.equipment-table th:nth-child(7),.equipment-table td:nth-child(7){width:10%;min-width:90px}.equipment-table th{color:#888;letter-spacing:.06em;background:#1f1f1f;border-bottom:1px solid #282828;padding:16px 20px;font-size:11px;font-weight:700}.equipment-table td{color:#ccc;white-space:nowrap;text-overflow:ellipsis;border-bottom:1px solid #242424;padding:16px 20px;font-size:14px;overflow:hidden}.equipment-table tbody tr{transition:background-color .15s}.equipment-table tbody tr:hover{background:#202020}.equipment-table tr:last-child td{border-bottom:none}.equipment-name{font-weight:600;color:#fff!important}.equipment-desc{color:#aaa!important}.equipment-date,.equipment-qty,.equipment-cost{color:#ccc}.no-data-cell{text-align:center;color:#888!important;padding:36px 24px!important}.action-cell{align-items:center;gap:12px;display:flex}.action-btn{color:#888;cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;font-size:18px;transition:color .2s,background-color .2s;display:inline-flex}.action-btn.edit-btn:hover{color:#fff;background:#2a2a2a}.action-btn.delete-btn:hover{color:#ef4444;background:#ef44441a}.equipment-status-badge{white-space:nowrap;border-radius:6px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.equipment-status-badge .status-dot{font-size:9px}.equipment-status-badge.available{color:#22c55e;background:#22c55e1f;border:1px solid #22c55e40}.equipment-status-badge.under-maintenance{color:#f59e0b;background:#f59e0b1f;border:1px solid #f59e0b40}.equipment-status-badge.out-of-service,.equipment-status-badge.out-of-order{color:#ef4444;background:#ef44441f;border:1px solid #ef444440}.equipment-modal-container{box-sizing:border-box;width:100%;max-width:680px;max-height:calc(100dvh - 40px);overflow-y:auto}.equipment-modal-overlay{box-sizing:border-box}.split-quantity-group{background:#222;border:1px dashed #d97706;border-radius:10px;margin-top:8px;padding:16px}.split-hint-text{color:#fbbf24;margin-top:4px;font-size:13px;line-height:1.4;display:block}@media (width<=900px){.equipment-summary-banner{grid-template-columns:repeat(2,minmax(0,1fr))}.summary-stat-card{min-width:0;padding:18px}}@media (width<=600px){.equipment-page{gap:18px}.equipment-summary-banner{gap:10px}.summary-stat-card{gap:10px;padding:14px}.stat-card-label{overflow-wrap:anywhere;font-size:12px}.stat-card-value{overflow-wrap:anywhere;font-size:22px}.equipment-controls{align-items:stretch}.equipment-controls .search-input-wrapper{flex-basis:100%;min-width:0;max-width:none}.filter-group{width:100%}.filter-group .add-equipment-btn{box-sizing:border-box;justify-content:center;width:100%}.equipment-modal-container{width:100%;max-width:none;max-height:calc(100dvh - 20px)}.modal-overlay.equipment-modal-overlay{padding:10px}}@media (width<=768px){.equipment-table{table-layout:auto;width:1000px;min-width:1000px}.equipment-table th,.equipment-table td{text-overflow:clip;width:auto;min-width:110px;padding:13px 16px;overflow:visible}.equipment-table th:first-child,.equipment-table td:first-child{min-width:170px}.equipment-table th:last-child,.equipment-table td:last-child{min-width:100px}}@media (width<=380px){.equipment-summary-banner{grid-template-columns:minmax(0,1fr)}}.attendance-page{color:#fff;flex-direction:column;gap:24px;display:flex}.attendance-stats-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.stat-card{background:#1a1a1a;border:1px solid #2a2a2a;border-radius:16px;flex-direction:column;justify-content:space-between;min-height:140px;padding:20px 24px;transition:transform .2s,border-color .2s;display:flex;box-shadow:0 4px 20px #0006}.stat-card:hover{border-color:#d97706;transform:translateY(-2px)}.stat-card-header{justify-content:space-between;align-items:center;display:flex}.stat-icon-wrapper{color:#d97706;background:#d977061f;border:1px solid #d9770640;border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;font-size:22px;display:flex}.growth-badge{color:#22c55e;background:#22c55e1f;border:1px solid #22c55e40;border-radius:6px;padding:4px 10px;font-size:12px;font-weight:600}.stat-card-body{flex-direction:column;gap:4px;margin-top:16px;display:flex}.stat-title{color:#94a3b8;font-size:14px;font-weight:500}.stat-value{color:#fff;letter-spacing:-.02em;margin:0;font-size:28px;font-weight:700}.attendance-table-card{background:#1a1a1a;border:1px solid #262626;border-radius:12px;overflow:hidden}.attendance-table-card .card-header{border-bottom:1px solid #242424;padding:20px 24px}.attendance-table-card .card-header h2{color:#fff;margin:0;font-size:18px;font-weight:700}.attendance-table{border-collapse:collapse;text-align:left;width:100%;min-width:100%}.attendance-table th:first-child,.attendance-table td:first-child{width:24%}.attendance-table th:nth-child(2),.attendance-table td:nth-child(2){width:18%}.attendance-table th:nth-child(3),.attendance-table td:nth-child(3){width:14%}.attendance-table th:nth-child(4),.attendance-table td:nth-child(4){width:16%}.attendance-table th:nth-child(5),.attendance-table td:nth-child(5){width:14%}.attendance-table th:nth-child(6),.attendance-table td:nth-child(6){width:auto}.attendance-search-wrapper{min-width:240px;position:relative}.attendance-search-icon{color:#888;font-size:18px;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.attendance-search-input{color:#fff;background:#1c1c1c;border:1px solid #2e2e2e;border-radius:8px;outline:none;width:100%;height:42px;padding:0 16px 0 42px;font-size:14px;transition:border-color .2s,box-shadow .2s}.attendance-search-input:focus{border-color:#d97706;box-shadow:0 0 0 2px #d9770626}.attendance-filter-wrapper{position:relative}.attendance-filter-select{color:#ccc;appearance:none;cursor:pointer;background:#1c1c1c;border:1px solid #2e2e2e;border-radius:8px;outline:none;height:42px;padding:0 38px 0 14px;font-size:14px;font-weight:500;transition:border-color .2s}.attendance-filter-select:focus{border-color:#d97706}.attendance-select-arrow{color:#888;pointer-events:none;font-size:18px;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.attendance-table th{color:#888;letter-spacing:.06em;background:#1f1f1f;border-bottom:1px solid #282828;padding:16px 20px;font-size:11px;font-weight:700}.attendance-table td{color:#ccc;white-space:nowrap;text-overflow:ellipsis;border-bottom:1px solid #242424;padding:16px 20px;font-size:14px;overflow:hidden}@media (width<=768px){.attendance-table{width:1000px;min-width:1000px}.attendance-table th,.attendance-table td{text-overflow:clip;padding:13px 16px;overflow:visible}}.attendance-table tbody tr{transition:background-color .15s}.attendance-table tbody tr:hover{background:#202020}.uid-cell,.time-cell,.source-cell{color:#aaa}.attendance-status-badge{white-space:nowrap;border-radius:6px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.attendance-status-badge .status-dot{font-size:9px}.attendance-status-badge.pending{color:#f59e0b;background:#f59e0b1f;border:1px solid #f59e0b40}.attendance-status-badge.checked-in{color:#22c55e;background:#22c55e1f;border:1px solid #22c55e40}.attendance-status-badge.rejected{color:#ef4444;background:#ef44441f;border:1px solid #ef444440}.action-cell{overflow:visible}.action-container{justify-content:flex-start;align-items:center;gap:8px;display:flex}.btn-action-approve{color:#22c55e;cursor:pointer;white-space:nowrap;background:#22c55e26;border:1px solid #22c55e66;border-radius:6px;padding:6px 12px;font-size:13px;font-weight:600;transition:background-color .2s,transform .1s}.btn-action-approve:hover{background:#22c55e40;transform:translateY(-1px)}.btn-action-reject{color:#ef4444;cursor:pointer;white-space:nowrap;background:#ef444426;border:1px solid #ef444466;border-radius:6px;padding:6px 12px;font-size:13px;font-weight:600;transition:background-color .2s,transform .1s}.btn-action-reject:hover{background:#ef444440;transform:translateY(-1px)}.badge-action-approved{color:#22c55e;background:#22c55e26;border:1px solid #22c55e4d;border-radius:6px;padding:6px 16px;font-size:13px;font-weight:600;display:inline-block!important}.badge-action-rejected{color:#ef4444;background:#ef444426;border:1px solid #ef44444d;border-radius:6px;padding:6px 16px;font-size:13px;font-weight:600;display:inline-block!important}@media (width<=768px){.attendance-stats-grid{grid-template-columns:repeat(2,1fr)}.attendance-table-card .card-header,.attendance-table-card .card-header>div{flex-direction:column;align-items:stretch!important}.search-box input{width:100%}.btn-toggle-terminal{justify-content:center;width:100%}.attendance-filter-wrapper,.attendance-filter-select{width:100%}.action-container{flex-direction:row;width:100%;display:flex}.btn-action-approve,.btn-action-reject{text-align:center;flex:1}}@media (width<=480px){.attendance-stats-grid{grid-template-columns:1fr}.pagination-footer{text-align:center;flex-direction:column;align-items:center}}.btn-manual-checkin-action{color:#fff;cursor:pointer;background:#d97706;border:none;border-radius:8px;align-items:center;gap:8px;height:42px;padding:0 20px;font-size:14px;font-weight:600;transition:background-color .2s,transform .1s,box-shadow .2s;display:flex;box-shadow:0 4px 12px #d9770640}.btn-manual-checkin-action:hover{background:#b45309;box-shadow:0 6px 16px #d9770659}.btn-manual-checkin-action:active{transform:translateY(1px)}.manual-modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1100;background:#000000bf;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.manual-modal-backdrop.popup-zindex{z-index:1200}.manual-modal-content{background:#1a1a1a;border:1px solid #2e2e2e;border-radius:12px;width:100%;max-width:520px;animation:.25s ease-out modalFadeIn;overflow:hidden;box-shadow:0 20px 40px #0009}.manual-modal-header{background:#141414;border-bottom:1px solid #282828;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.manual-modal-header h3{color:#fff;margin:0;font-size:16px;font-weight:700}.btn-close-modal{color:#888;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:4px;font-size:20px;transition:color .2s;display:flex}.btn-close-modal:hover{color:#fff}.manual-modal-body{padding:20px}.modal-instruction-text{color:#aaa;margin:0 0 16px;font-size:13px;line-height:1.4}.member-search-input-box{margin-bottom:16px;position:relative}.member-search-input-box .search-input-icon{color:#f59e0b;font-size:20px;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.member-search-input-box input{color:#fff;background:#222;border:1px solid #3a3a3a;border-radius:10px;outline:none;width:100%;height:44px;padding-left:44px;padding-right:16px;font-size:14px;transition:border-color .2s}.member-search-input-box input:focus{border-color:#f59e0b}.search-results-list{flex-direction:column;gap:8px;max-height:260px;display:flex;overflow-y:auto}.search-placeholder,.search-no-results{text-align:center;color:#777;flex-direction:column;align-items:center;gap:8px;padding:30px 16px;font-size:13px;display:flex}.member-search-result-item{cursor:pointer;background:#222;border:1px solid #2d2d2d;border-radius:12px;align-items:center;gap:12px;padding:12px 16px;transition:all .2s;display:flex}.member-search-result-item:hover{background:#2a2a2a;border-color:#f59e0b}.member-item-avatar{color:#f59e0b;background:#f59e0b1f;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:20px;display:flex}.member-item-info{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.member-item-header{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.member-item-name{color:#fff;white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:14px;font-weight:700;overflow:hidden}.member-item-email{color:#aaa;align-items:center;gap:4px;font-size:12px;display:flex}.member-item-right{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:6px;display:flex}.member-id-badge{color:#aaa;text-overflow:ellipsis;white-space:nowrap;background:#141414;border:1px solid #333;border-radius:6px;max-width:140px;padding:3px 8px;font-family:monospace;font-size:11px;overflow:hidden}.pass-status-badge{letter-spacing:.02em;border-radius:20px;flex-shrink:0;align-items:center;gap:4px;padding:3px 10px;font-size:11px;font-weight:700;display:inline-flex}.pass-status-badge.valid{color:#4ade80;background:#22c55e26;border:1px solid #22c55e59}.pass-status-badge.expired{color:#f87171;background:#ef444426;border:1px solid #ef444459}.popup-warning-box{color:#f87171;text-align:left;background:#ef44441f;border:1px solid #ef4444;border-radius:8px;margin-bottom:16px;padding:12px 16px;font-size:13px;line-height:1.4}.expired-popup-content{background:#1c1c1c;border:1px solid #333;border-radius:16px;flex-direction:column;gap:16px;width:440px;max-width:90%;padding:24px;animation:.2s cubic-bezier(.16,1,.3,1) popupScale;display:flex;box-shadow:0 20px 40px #0009}.gps-terminal-banner{border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;padding:16px 20px;transition:all .3s;display:flex;box-shadow:0 4px 16px #0006}.gps-terminal-banner.active{background:#22c55e14;border:1px solid #22c55e4d}.gps-terminal-banner.inactive{background:#ef444414;border:1px solid #ef44444d}.terminal-banner-info{flex:1;align-items:center;gap:14px;min-width:280px;display:flex}.gps-terminal-banner.active .terminal-icon-badge{color:#4ade80;background:#22c55e26;border:1px solid #22c55e59;border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;font-size:22px;display:flex}.gps-terminal-banner.inactive .terminal-icon-badge{color:#f87171;background:#ef444426;border:1px solid #ef444459;border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;font-size:22px;display:flex}.terminal-text-content{flex-direction:column;gap:2px;display:flex}.gps-terminal-banner.active .terminal-title{color:#22c55e;margin:0;font-size:15px;font-weight:700}.gps-terminal-banner.inactive .terminal-title{color:#ef4444;margin:0;font-size:15px;font-weight:700}.terminal-subtitle{color:#888;font-size:12px}.btn-toggle-terminal{letter-spacing:.03em;cursor:pointer;border:none;border-radius:8px;flex-shrink:0;align-items:center;gap:8px;height:40px;padding:0 20px;font-size:13px;font-weight:700;transition:all .2s;display:flex}.btn-toggle-terminal.btn-terminal-on{color:#f87171;background:#ef444433;border:1px solid #ef444466}.btn-toggle-terminal.btn-terminal-on:hover{color:#fff;background:#ef4444;box-shadow:0 4px 14px #ef444466}.btn-toggle-terminal.btn-terminal-off{color:#4ade80;background:#22c55e33;border:1px solid #22c55e66}.btn-toggle-terminal.btn-terminal-off:hover{color:#fff;background:#22c55e;box-shadow:0 4px 14px #22c55e66}.expired-popup-header{align-items:center;gap:12px;display:flex}.expired-icon-badge{color:#ef4444;background:#ef444426;border:1px solid #ef44444d;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;font-size:24px;display:flex}.expired-popup-header h3{color:#ef4444;margin:0;font-size:18px;font-weight:700}.expired-popup-body{color:#ccc;flex-direction:column;gap:12px;font-size:14px;line-height:1.5;display:flex}.expired-target-name{color:#fff;margin:0}.expired-reason-card{background:#141414;border-left:3px solid #ef4444;border-radius:0 8px 8px 0;flex-direction:column;gap:2px;padding:10px 14px;display:flex}.expired-reason-label{color:#888;letter-spacing:.05em;font-size:10px;font-weight:700}.expired-reason-val{color:#f87171;font-size:13px;font-weight:600}.expired-instruction{color:#888;margin:0;font-size:13px}.expired-popup-footer{justify-content:flex-end;margin-top:8px;display:flex}.btn-expired-ok{color:#fff;cursor:pointer;background:#ef4444;border:none;border-radius:8px;padding:10px 28px;font-size:14px;font-weight:700;transition:all .2s;box-shadow:0 4px 12px #ef44444d}.btn-expired-ok:hover{background:#dc2626;box-shadow:0 6px 16px #ef444466}.btn-select-tag{color:#f59e0b;font-size:11px;font-weight:700}.manual-confirm-popup{text-align:center;background:#1a1a1a;border:1px solid #333;border-radius:20px;width:100%;max-width:440px;padding:24px;animation:.2s cubic-bezier(.175,.885,.32,1.275) popupScale;box-shadow:0 16px 48px #000000b3}@keyframes popupScale{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.popup-icon-badge{background:#22c55e1f;border:1px solid #22c55e40;border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;margin:0 auto 16px;display:flex}.popup-check-icon{color:#22c55e;font-size:32px}.popup-headline{color:#fff;margin:0 0 6px;font-size:18px;font-weight:800}.popup-subtext{color:#888;margin:0 0 20px;font-size:13px}.popup-member-card{text-align:left;background:#141414;border:1px solid #282828;border-radius:14px;flex-direction:column;gap:10px;margin-bottom:24px;padding:16px;display:flex}.popup-detail-row{justify-content:space-between;align-items:center;font-size:13px;display:flex}.popup-label{color:#777;letter-spacing:.05em;font-size:11px;font-weight:700}.popup-val-bold{color:#fff;font-weight:700}.popup-val-amber{color:#f59e0b;font-weight:600}.popup-val-green{color:#22c55e;font-weight:700}.popup-val{color:#ccc}.popup-actions-row{gap:12px;display:flex}.btn-popup-cancel{color:#aaa;cursor:pointer;background:0 0;border:1px solid #333;border-radius:10px;flex:1;height:44px;font-size:13px;font-weight:600;transition:background .2s}.btn-popup-cancel:hover{color:#fff;background:#252525}.btn-popup-confirm{color:#fff;cursor:pointer;background:#d97706;border:none;border-radius:8px;flex:1;height:42px;font-size:14px;font-weight:600;transition:background-color .2s,transform .1s;box-shadow:0 4px 12px #d9770640}.btn-popup-confirm:hover{background:#b45309}.btn-popup-confirm:active{transform:translateY(1px)}.attendance-toast-notification{z-index:2000;background:#141414;border-radius:12px;padding:14px 20px;font-size:14px;font-weight:700;animation:.3s ease-out toastIn;position:fixed;bottom:24px;right:24px;box-shadow:0 8px 24px #0009}.attendance-toast-notification.toast-success{color:#4ade80;background:#0f1c12;border:1px solid #22c55e;box-shadow:0 8px 24px #22c55e4d}.attendance-toast-notification.toast-error{color:#f87171;background:#1c0f0f;border:1px solid #ef4444;box-shadow:0 8px 24px #ef444459}@keyframes toastIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.payments-page{color:#fff;flex-direction:column;gap:24px;display:flex}.payments-controls{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:24px;display:flex}.search-input-wrapper{flex:1;width:100%;max-width:480px;position:relative}.search-input-wrapper .search-icon{color:#888;font-size:20px;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.search-input-wrapper input{color:#fff;background:#1c1c1c;border:1px solid #2e2e2e;border-radius:8px;outline:none;width:100%;height:44px;padding:0 16px 0 44px;font-size:14px;transition:border-color .2s,box-shadow .2s}.search-input-wrapper input:focus{border-color:#d97706;box-shadow:0 0 0 2px #d9770626}.date-filters-wrapper{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.date-filter-btn{color:#ccc;cursor:pointer;background:#1c1c1c;border:1px solid #333;border-radius:8px;padding:8px 16px;font-size:13px;font-weight:600;transition:all .2s}.date-filter-btn:hover{color:#fff;background:#2a2a2a}.date-filter-btn.active{color:#d97706;background:#d9770626;border-color:#d97706}.custom-date-inputs{align-items:center;gap:8px;display:flex}.custom-date-inputs span{color:#888;font-size:13px}.custom-date-input{color:#fff;background:#1c1c1c;border:1px solid #333;border-radius:8px;outline:none;padding:8px 12px;font-size:13px}.custom-date-input:focus{border-color:#d97706}.payments-stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;display:grid}.payment-stat-card{background:#1a1a1a;border:1px solid #2a2a2a;border-radius:16px;flex-direction:column;gap:16px;padding:24px;transition:transform .2s,border-color .2s;display:flex;box-shadow:0 4px 20px #0006}.payment-stat-card:hover{border-color:#d97706;transform:translateY(-2px)}.stat-icon-wrapper{border-radius:12px;justify-content:center;align-items:center;width:46px;height:46px;font-size:24px;display:flex}.stat-icon-wrapper.green{color:#22c55e;background:#22c55e1f;border:1px solid #22c55e40}.stat-icon-wrapper.amber{color:#f59e0b;background:#f59e0b1f;border:1px solid #f59e0b40}.stat-card-details{flex-direction:column;gap:4px;display:flex}.stat-card-label{color:#94a3b8;font-size:14px;font-weight:500}.stat-card-value{color:#fff;letter-spacing:-.01em;margin:0;font-size:28px;font-weight:700}.payments-table-card{background:#1a1a1a;border:1px solid #262626;border-radius:12px;overflow:hidden}.payments-table-card .card-header{border-bottom:1px solid #242424;padding:20px 24px}.payments-table-card .card-header h2{color:#fff;margin:0;font-size:18px;font-weight:700}.payments-table{border-collapse:collapse;text-align:left;width:100%;min-width:100%}.payments-table th:first-child,.payments-table td:first-child{width:20%}.payments-table th:nth-child(2),.payments-table td:nth-child(2),.payments-table th:nth-child(3),.payments-table td:nth-child(3){width:14%}.payments-table th:nth-child(4),.payments-table td:nth-child(4),.payments-table th:nth-child(5),.payments-table td:nth-child(5),.payments-table th:nth-child(6),.payments-table td:nth-child(6){width:12%}.payments-table th:nth-child(7),.payments-table td:nth-child(7){width:11%}.payments-table th:nth-child(8),.payments-table td:nth-child(8){text-align:center;width:60px;min-width:60px;padding:12px 6px;overflow:visible}.payments-table th{color:#888;letter-spacing:.06em;background:#1f1f1f;border-bottom:1px solid #282828;padding:16px;font-size:11px;font-weight:700}.payments-table td{color:#ccc;white-space:nowrap;text-overflow:ellipsis;border-bottom:1px solid #242424;padding:16px;font-size:13px;overflow:hidden}.payments-table tbody tr{transition:background-color .15s}.payments-table tbody tr:hover{background:#202020}.member-name-cell{font-weight:600;color:#fff!important}.type-cell,.plan-cell,.sub-type-cell,.date-cell,.method-cell{color:#aaa}.amount-cell{color:#fff;font-weight:600}.action-cell{text-align:center}.delete-action-btn{color:#ef4444;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:6px;font-size:18px;transition:background-color .2s,transform .1s;display:inline-flex}.delete-action-btn:hover{background:#ef444426;transform:scale(1.1)}.pagination-footer{background:#181818;border-top:1px solid #262626;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:16px 24px;display:flex}.pagination-info{color:#888;font-size:14px}.pagination-controls{align-items:center;gap:8px;display:flex}.page-nav-btn{color:#ccc;cursor:pointer;background:#222;border:1px solid #2e2e2e;border-radius:6px;padding:6px 14px;font-size:13px;transition:background-color .2s}.page-nav-btn:hover:not(:disabled){color:#fff;background:#2e2e2e}.page-nav-btn:disabled{opacity:.4;cursor:not-allowed}.page-num-btn{color:#ccc;cursor:pointer;background:#222;border:1px solid #2e2e2e;border-radius:6px;justify-content:center;align-items:center;width:32px;height:32px;font-size:13px;font-weight:600;transition:background-color .2s,color .2s;display:inline-flex}.page-num-btn.active{color:#fff;background:#d97706;border-color:#d97706}.page-num-btn:hover:not(.active){color:#fff;background:#2e2e2e}@media (width<=900px){.payments-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.payment-stat-card{padding:18px}}@media (width<=600px){.payments-page{gap:18px}.payments-controls{gap:14px}.payments-controls .search-input-wrapper{flex-basis:100%;max-width:none}.date-filters-wrapper{gap:8px;width:100%}.date-filter-btn{flex:auto;padding:8px 10px;font-size:12px}.custom-date-inputs{width:100%}.custom-date-input{flex:1;min-width:0}.payment-stat-card{gap:12px;padding:14px}.stat-card-value{overflow-wrap:anywhere;font-size:22px}.payments-table-card .card-header{padding:16px}.pagination-footer{padding:14px}}@media (width<=768px){.payments-table{width:1100px;min-width:1100px}.payments-table th,.payments-table td{text-overflow:clip;padding:13px 14px;overflow:visible}}@media (width<=380px){.payments-stats-grid{grid-template-columns:minmax(0,1fr)}}.payment-calendar-container{background:#1c1c1c;border:1px solid #2a2a2a;border-radius:12px;margin-bottom:24px;padding:24px;box-shadow:0 4px 20px #0003}.cal-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.cal-header h3{color:#e0e0e0;margin:0;font-size:18px}.cal-nav{background:#242424;border:1px solid #333;border-radius:8px;align-items:center;gap:16px;padding:6px 12px;display:flex}.cal-nav span{color:#fff;text-align:center;min-width:120px;font-size:14px;font-weight:600}.cal-nav button{color:#d97706;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:24px;transition:transform .2s;display:flex}.cal-nav button:hover{transform:scale(1.2)}.cal-grid{grid-template-columns:repeat(7,1fr);gap:8px;display:grid}.cal-day-header{text-align:center;color:#888;text-transform:uppercase;padding-bottom:8px;font-size:13px;font-weight:600}.cal-day{background:#262626;border:1px solid #3a3a3a;border-radius:8px;min-height:100px;padding:10px;transition:all .2s;position:relative;box-shadow:0 2px 8px #00000026}.cal-day.blank{box-shadow:none;background:0 0;border:1px dashed #333}.cal-day.has-data{cursor:pointer;background:#2a2a2a;border-color:#d9770666}.cal-day.has-data:hover{background:#d9770614;border-color:#d97706;transform:translateY(-2px);box-shadow:0 4px 12px #d9770626}.cal-day.today{background:#d9770614;border:2px solid #d97706}.cal-date-num{color:#888;font-size:14px;font-weight:700;position:absolute;top:10px;left:10px}.cal-day.has-data .cal-date-num{color:#e0e0e0}.cal-day.today .cal-date-num{color:#fff;background:#d97706;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;display:flex;top:6px;left:6px}.cal-day-stats{flex-direction:column;align-items:flex-end;gap:6px;display:flex;position:absolute;bottom:10px;right:10px}.cal-badge{letter-spacing:.3px;border-radius:6px;padding:4px 8px;font-size:11px;font-weight:700}.count-badge{color:#d97706;background:#d9770626}.rev-badge{color:#22c55e;background:#22c55e26}.custom-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2000;background:#000000b3;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0}.custom-modal-content{background:#1c1c1c;border:1px solid #333;border-radius:12px;flex-direction:column;width:90%;max-width:600px;max-height:80vh;display:flex;box-shadow:0 10px 40px #00000080}.custom-modal-header{border-bottom:1px solid #2a2a2a;padding:20px}.custom-modal-header h3{color:#fff;margin:0 0 12px}.custom-modal-summary{gap:12px;display:flex}.summary-pill{color:#ccc;background:#242424;border:1px solid #333;border-radius:16px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;display:flex}.summary-pill.highlight{color:#00e676;background:#00e6760d;border-color:#00e6764d}.custom-modal-body{padding:20px;overflow-y:auto}.daily-tx-table{border-collapse:collapse;width:100%}.daily-tx-table th{text-align:left;color:#888;text-transform:uppercase;border-bottom:1px solid #333;padding:10px;font-size:12px}.daily-tx-table td{color:#ddd;border-bottom:1px solid #2a2a2a;padding:12px 10px;font-size:14px}.tx-amount{font-weight:700;color:#00e676!important}.custom-modal-close{color:#fff;cursor:pointer;background:#333;border:none;border-radius:8px;margin:20px;padding:12px;font-weight:600;transition:background .2s}.custom-modal-close:hover{background:#444}@media (width<=768px){.payment-calendar-container{overflow-x:auto}.cal-grid{min-width:600px}}@media (width<=600px){.payment-calendar-container{margin-bottom:16px;padding:14px}.cal-header{align-items:stretch;gap:12px}.cal-nav{justify-content:space-between;gap:8px;padding:5px 8px}.cal-nav span{min-width:0}.cal-grid{gap:4px}.cal-day{border-radius:6px;min-width:0;min-height:62px;padding:5px 3px}.cal-date-num{font-size:12px;top:5px;left:5px}.cal-day-stats{align-items:stretch;gap:3px;bottom:3px;left:3px;right:3px}.cal-badge{text-align:center;text-overflow:ellipsis;padding:2px 3px;font-size:9px;overflow:hidden}.custom-modal-overlay{padding:10px}.custom-modal-content{width:100%;max-height:90dvh}.custom-modal-header,.custom-modal-body{padding:14px}.custom-modal-summary{flex-wrap:wrap}.daily-tx-table{min-width:520px}.custom-modal-body{overflow:auto}.custom-modal-close{margin:12px}}.settings-page{color:#fff;flex-direction:column;gap:28px;display:flex;position:relative}.toast-notification{color:#fff;z-index:9999;background:#1c2b21;border:1px solid #22c55e;border-radius:10px;align-items:center;gap:10px;padding:12px 20px;font-size:14px;font-weight:500;animation:.3s ease-out slideInToast;display:flex;position:fixed;top:24px;right:24px;box-shadow:0 8px 30px #00000080}.toast-notification .toast-icon{color:#22c55e;font-size:20px}@keyframes slideInToast{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.settings-card{background:#1a1a1a;border:1px solid #262626;border-radius:14px;overflow:hidden}.settings-card-header-with-action,.settings-card .card-header{border-bottom:1px solid #242424;justify-content:space-between;align-items:center;gap:16px;padding:20px 24px;display:flex}.settings-card-header-with-action h2,.settings-card .card-header h2{color:#fff;margin:0;font-size:18px;font-weight:700}.btn-add-plan,.add-plan-btn{color:#fff;cursor:pointer;white-space:nowrap;background:#d97706;border:none;border-radius:8px;justify-content:center;align-items:center;gap:8px;height:42px;padding:0 20px;font-size:14px;font-weight:600;transition:background-color .2s,transform .1s,box-shadow .2s;display:inline-flex;box-shadow:0 4px 12px #d9770640}.btn-add-plan:hover,.add-plan-btn:hover{background:#b45309;box-shadow:0 6px 16px #d9770659}.btn-add-plan:active,.add-plan-btn:active{transform:translateY(1px)}.btn-add-plan svg,.add-plan-btn svg{font-size:18px}.table-responsive{width:100%;overflow-x:auto}.plans-table{border-collapse:collapse;text-align:left;width:100%;min-width:700px}.plans-table th:first-child,.plans-table td:first-child{width:30%}.plans-table th:nth-child(2),.plans-table td:nth-child(2),.plans-table th:nth-child(3),.plans-table td:nth-child(3){width:18%}.plans-table th:nth-child(4),.plans-table td:nth-child(4),.plans-table th:nth-child(5),.plans-table td:nth-child(5){width:17%}.plans-table th{color:#888;letter-spacing:.06em;background:#1f1f1f;border-bottom:1px solid #282828;padding:16px 20px;font-size:11px;font-weight:700}.plans-table th:last-child{text-align:right;padding-right:20px}.plans-table td{color:#ccc;white-space:nowrap;border-bottom:1px solid #242424;padding:16px 20px;font-size:14px}.plans-table tbody tr{transition:background-color .15s}.plans-table tbody tr:hover{background:#202020}.plans-table tbody tr:last-child td{border-bottom:none}.plan-name-cell,.price-cell{font-weight:600;color:#fff!important}.duration-cell{color:#aaa!important}.plans-table td.actions-cell{text-align:right;padding-right:24px}.actions-wrapper{justify-content:flex-end;align-items:center;gap:12px;display:inline-flex}.edit-plan-btn{color:#888;cursor:pointer;background:0 0;border:none;border-radius:6px;outline:none;justify-content:center;align-items:center;padding:6px;font-size:18px;transition:color .2s,background-color .2s;display:inline-flex}.edit-plan-btn:hover{color:#fff;background:#ffffff14}.edit-plan-btn:active{transform:translateY(1px)}.delete-plan-btn{cursor:pointer;background:0 0;border:none;border-radius:6px;outline:none;justify-content:center;align-items:center;padding:6px;font-size:18px;transition:color .2s,background-color .2s;display:inline-flex;color:#888!important}.delete-plan-btn:hover{color:#ef4444!important;background:#ef44441f!important}.delete-plan-btn:active{transform:translateY(1px)}.plan-status-btn{cursor:pointer;border:none;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:600;transition:background-color .2s,color .2s}.plan-status-btn.active{color:#22c55e;background:#22c55e1f;border:1px solid #22c55e40}.plan-status-btn.active:hover{background:#22c55e33}.plan-status-btn.inactive{color:#94a3b8;background:#94a3b81a;border:1px solid #94a3b833}.plan-status-btn.inactive:hover{background:#94a3b82e}.admin-account-form{flex-direction:column;gap:24px;padding:24px;display:flex}.form-columns-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:32px;display:grid}.form-column{flex-direction:column;gap:16px;display:flex}.form-column-title{color:#ccc;margin:0 0 4px;font-size:14px;font-weight:600}.admin-account-form .form-group{flex-direction:column;display:flex}.admin-account-form input{color:#fff;box-sizing:border-box;background:#151515;border:1px solid #2a2a2a;border-radius:10px;outline:none;width:100%;height:48px;padding:0 16px;font-size:14px;transition:border-color .2s,box-shadow .2s}.admin-account-form input::placeholder{color:#666}.admin-account-form input:focus{border-color:#d97706;box-shadow:0 0 0 2px #d9770626}.form-sub-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form-submit-row{margin-top:8px}.btn-update-profile{color:#fff;cursor:pointer;background:#d97706;border:none;border-radius:10px;width:100%;height:48px;font-size:15px;font-weight:700;transition:background-color .2s,transform .1s}.btn-update-profile:hover:not(:disabled){background:#b45309}.btn-update-profile:active:not(:disabled){transform:translateY(1px)}.btn-update-profile:disabled{opacity:.6;cursor:not-allowed}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10000;background:#000000bf;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-container{background:#1a1a1a;border:1px solid #2e2e2e;border-radius:12px;width:100%;max-height:calc(100dvh - 32px);overflow-y:auto;box-shadow:0 20px 40px #0009}.plan-modal-container{max-width:480px}.modal-header{border-bottom:1px solid #292929;justify-content:space-between;align-items:center;gap:16px;min-height:64px;padding:16px 20px;display:flex}.modal-header h2{color:#fff;margin:0;font-size:18px;font-weight:700}.modal-close-btn{color:#888;cursor:pointer;background:0 0;border:none;border-radius:7px;justify-content:center;align-items:center;width:36px;height:36px;font-size:21px;display:flex}.modal-close-btn:hover:not(:disabled){color:#fff;background:#2a2a2a}.modal-close-btn:disabled{opacity:.5;cursor:not-allowed}.modal-form{padding:24px}.form-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.form-group{flex-direction:column;gap:7px;display:flex}.form-group.full-width{grid-column:1/-1}.form-group label{color:#999;letter-spacing:.04em;font-size:11px;font-weight:600}.modal-form input{color:#fff;box-sizing:border-box;background:#151515;border:1px solid #2a2a2a;border-radius:8px;outline:none;width:100%;height:44px;padding:0 13px;font-size:14px}.modal-form input:focus{border-color:#d97706;box-shadow:0 0 0 2px #d9770626}.modal-form input:disabled{color:#777;cursor:not-allowed;background:#111}.modal-actions{justify-content:flex-end;gap:10px;margin-top:24px;display:flex}.btn-cancel,.btn-save{cursor:pointer;border-radius:8px;height:42px;padding:0 18px;font-size:14px;font-weight:600}.btn-cancel{color:#ccc;background:#242424;border:1px solid #333}.btn-cancel:hover:not(:disabled){color:#fff;background:#2e2e2e}.btn-save{color:#fff;background:#d97706;border:1px solid #d97706}.btn-save:hover:not(:disabled){background:#b45309;border-color:#b45309}.btn-cancel:disabled,.btn-save:disabled{opacity:.6;cursor:not-allowed}@media (width<=700px){.settings-card .card-header{flex-direction:column;align-items:flex-start}.add-plan-btn{width:100%}.form-columns-grid,.form-grid{grid-template-columns:1fr}.form-group.full-width{grid-column:auto}.form-sub-grid{grid-template-columns:1fr}.admin-account-form,.modal-form{padding:18px}.modal-actions{flex-direction:column-reverse}.btn-cancel,.btn-save{width:100%}.settings-page{gap:18px}.settings-card-header-with-action,.settings-card .card-header{padding:16px}.modal-overlay{align-items:flex-start;padding:12px;overflow-y:auto}.plan-modal-container{max-height:none}}.switch{width:44px;height:24px;display:inline-block;position:relative}.switch input{opacity:0;width:0;height:0}.slider{cursor:pointer;background-color:#333;transition:all .4s;position:absolute;inset:0}.slider:before{content:"";background-color:#fff;width:18px;height:18px;transition:all .4s;position:absolute;bottom:3px;left:3px}input:checked+.slider{background-color:#d97706}input:focus+.slider{box-shadow:0 0 1px #d97706}input:checked+.slider:before{transform:translate(20px)}.slider.round{border-radius:24px}.slider.round:before{border-radius:50%}.form-control{color:#fff;background:#151515;border:1px solid #2a2a2a;border-radius:8px;outline:none;width:100%;padding:12px 14px;font-size:14px}.form-control:focus{border-color:#d97706}
