:root{--bg-primary: #0B0C10;--bg-secondary: #1F2833;--bg-card: rgba(31, 40, 51, .75);--bg-card-hover: rgba(31, 40, 51, .95);--accent-neon: #ADFF2F;--accent-cyan: #66FCF1;--accent-orange: #FF5E3A;--text-primary: #F3F4F6;--text-secondary: #9CA3AF;--text-muted: #6B7280;--success: #10B981;--success-glow: rgba(16, 185, 129, .15);--error: #EF4444;--error-glow: rgba(239, 68, 68, .15);--warning: #F59E0B;--warning-glow: rgba(245, 158, 11, .15);--font-main: "Cairo", sans-serif;--transition-smooth: all .3s cubic-bezier(.4, 0, .2, 1);--glass-border: rgba(255, 255, 255, .05);--glass-shadow: 0 8px 32px 0 rgba(0, 0, 0, .5)}*{margin:0;padding:0;box-sizing:border-box;font-family:var(--font-main);scrollbar-width:thin;scrollbar-color:var(--bg-secondary) var(--bg-primary)}body{background-color:var(--bg-primary);color:var(--text-primary);min-height:100vh;overflow-x:hidden;line-height:1.6;font-weight:400}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--bg-secondary);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--accent-cyan)}h1,h2,h3,h4,h5,h6{font-weight:700;letter-spacing:-.025em;line-height:1.3}a{color:var(--accent-cyan);text-decoration:none;transition:var(--transition-smooth)}a:hover{color:var(--accent-neon)}button,input,select,textarea{font-family:var(--font-main)}.app-container{display:flex;flex-direction:column;min-height:100vh}.card{background:var(--bg-card);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border);border-radius:16px;padding:24px;box-shadow:var(--glass-shadow);transition:var(--transition-smooth);position:relative;overflow:hidden}.card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--accent-cyan),transparent);opacity:0;transition:var(--transition-smooth)}.card:hover{border-color:#66fcf133;box-shadow:0 12px 40px #0009;transform:translateY(-2px)}.card:hover:before{opacity:1}.card-glow-neon{border:1px solid rgba(173,255,47,.15)}.card-glow-neon:hover{border-color:#adff2f66;box-shadow:0 0 20px #adff2f1a}.form-group{margin-bottom:20px}.form-label{display:block;font-size:14px;font-weight:600;margin-bottom:8px;color:var(--text-secondary)}.form-input{width:100%;padding:12px 16px;background:#0b0c10cc;border:1px solid var(--glass-border);border-radius:10px;color:var(--text-primary);font-size:16px;transition:var(--transition-smooth);text-align:right}.form-input:focus{outline:none;border-color:var(--accent-cyan);box-shadow:0 0 10px #66fcf133}.form-input::placeholder{color:var(--text-muted)}.form-select{width:100%;background:#0b0c10cc;border:1px solid var(--glass-border);border-radius:10px;color:var(--text-primary);font-size:16px;transition:var(--transition-smooth);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;utf8,<svg fill='white' height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/><path d='M0 0h24v24H0z' fill='none'/></svg>");background-repeat:no-repeat;background-position:left 12px center;text-align:right;padding:12px 16px 12px 40px}.form-select:focus{outline:none;border-color:var(--accent-cyan);box-shadow:0 0 10px #66fcf133}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;font-size:16px;font-weight:700;border-radius:10px;border:none;cursor:pointer;transition:var(--transition-smooth);text-align:center}.btn-primary{background:linear-gradient(135deg,var(--accent-cyan),#45b6b0);color:#0b0c10;box-shadow:0 4px 15px #66fcf14d}.btn-primary:hover{background:linear-gradient(135deg,#45b6b0,var(--accent-cyan));transform:translateY(-1px);box-shadow:0 6px 20px #66fcf180}.btn-neon{background:linear-gradient(135deg,var(--accent-neon),#92d620);color:#0b0c10;box-shadow:0 4px 15px #adff2f4d}.btn-neon:hover{background:linear-gradient(135deg,#92d620,var(--accent-neon));transform:translateY(-1px);box-shadow:0 6px 20px #adff2f80}.btn-secondary{background:#ffffff0d;border:1px solid var(--glass-border);color:var(--text-primary)}.btn-secondary:hover{background:#ffffff1a;border-color:var(--text-secondary)}.btn-danger{background:linear-gradient(135deg,var(--error),#b91c1c);color:#fff;box-shadow:0 4px 15px #ef44444d}.btn-danger:hover{background:linear-gradient(135deg,#b91c1c,var(--error));box-shadow:0 6px 20px #ef444480}.btn-icon-only{padding:10px;border-radius:8px}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}@media (max-width: 1024px){.grid-4{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr;gap:16px}}.kpi-card{display:flex;align-items:center;justify-content:space-between}.kpi-details h3{font-size:28px;font-weight:800;margin-top:4px;color:var(--text-primary)}.kpi-details p{font-size:13px;color:var(--text-secondary);font-weight:600}.kpi-icon{width:54px;height:54px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:#ffffff08;border:1px solid var(--glass-border)}.kpi-icon.neon{color:var(--accent-neon);border-color:#adff2f33;background:#adff2f0d}.kpi-icon.cyan{color:var(--accent-cyan);border-color:#66fcf133;background:#66fcf10d}.kpi-icon.orange{color:var(--accent-orange);border-color:#ff5e3a33;background:#ff5e3a0d}.kpi-icon.success{color:var(--success);border-color:#10b98133;background:#10b9810d}.alert{padding:16px;border-radius:12px;margin-bottom:20px;display:flex;align-items:center;gap:12px;font-weight:600;animation:slideIn .3s ease-out}.alert-success{background:var(--success-glow);border:1px solid rgba(16,185,129,.3);color:#a7f3d0}.alert-error{background:var(--error-glow);border:1px solid rgba(239,68,68,.3);color:#fca5a5}.alert-warning{background:#f59e0b1f;border:1px solid rgba(245,158,11,.45);color:#fcd34d}.alert-info{background:#66fcf10d;border:1px solid rgba(102,252,241,.3);color:#c1fefa}.table-container{overflow-x:auto;border-radius:12px;border:1px solid var(--glass-border)}.custom-table{width:100%;border-collapse:collapse;text-align:right}.custom-table th{background:#1f2833e6;padding:16px;font-size:14px;font-weight:700;color:var(--accent-cyan);border-bottom:1px solid var(--glass-border)}.custom-table td{padding:16px;font-size:15px;color:var(--text-primary);border-bottom:1px solid rgba(255,255,255,.03)}.custom-table tr:last-child td{border-bottom:none}.custom-table tr:hover td{background:#ffffff05}.badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:9999px;font-size:12px;font-weight:700}.badge-active{background:#10b9811a;color:var(--success);border:1px solid rgba(16,185,129,.2)}.badge-expired{background:#ef44441a;color:var(--error);border:1px solid rgba(239,68,68,.2)}.badge-frozen{background:#f59e0b1a;color:var(--warning);border:1px solid rgba(245,158,11,.2)}.badge-role{background:#66fcf11a;color:var(--accent-cyan);border:1px solid rgba(102,252,241,.2)}.main-header{background:#0b0c10e6;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--glass-border);padding:12px 24px;position:sticky;top:0;z-index:100;box-shadow:0 4px 20px #00000080}.header-content{max-width:1400px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}.brand{display:flex;align-items:center;gap:12px}.brand-logo{width:42px;height:42px}.brand-name{font-size:22px;font-weight:800;background:linear-gradient(90deg,var(--accent-neon),var(--accent-cyan));-webkit-background-clip:text;-webkit-text-fill-color:transparent}.user-nav-status{display:flex;align-items:center;gap:16px}.tabs-header{display:flex;gap:8px;border-bottom:1px solid var(--glass-border);margin-bottom:24px;overflow-x:auto;padding-bottom:2px}.tab-btn{background:none;border:none;color:var(--text-secondary);padding:12px 20px;font-size:16px;font-weight:700;cursor:pointer;transition:var(--transition-smooth);position:relative;white-space:nowrap}.tab-btn:hover{color:var(--text-primary)}.tab-btn.active{color:var(--accent-neon)}.tab-btn.active:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:3px;background:var(--accent-neon);border-radius:3px 3px 0 0;box-shadow:0 0 10px #adff2f99}.member-nav-wrapper{position:relative;margin-bottom:24px}.member-mobile-nav-bar{display:none;justify-content:space-between;align-items:center;padding:12px 16px;background:#1f2833d9;border:1px solid var(--glass-border);border-radius:14px;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 4px 20px #0000004d}.member-mobile-active-info{display:flex;align-items:center;gap:10px}.member-mobile-active-label{font-size:15px;font-weight:700;color:var(--text-primary)}.member-hamburger-btn{display:flex;align-items:center;gap:6px;background:#adff2f1a;border:1px solid rgba(173,255,47,.3);color:var(--accent-neon);padding:8px 14px;border-radius:10px;cursor:pointer;transition:var(--transition-smooth)}.member-hamburger-btn:hover{background:#adff2f33;border-color:var(--accent-neon)}.member-mobile-drawer-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:#000000bf;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:999;animation:fadeIn .2s ease-out}.member-mobile-drawer{position:absolute;top:16px;left:16px;right:16px;max-width:500px;margin:0 auto;background:#13171f;border:1px solid rgba(102,252,241,.25);border-radius:18px;box-shadow:0 12px 36px #000000b3;overflow:hidden;animation:slideInDown .25s cubic-bezier(.16,1,.3,1)}.member-mobile-drawer-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#ffffff08;border-bottom:1px solid var(--glass-border)}.member-mobile-drawer-list{padding:10px;display:flex;flex-direction:column;gap:4px}.member-mobile-drawer-item{display:flex;justify-content:space-between;align-items:center;width:100%;padding:14px 16px;background:transparent;border:1px solid transparent;border-radius:12px;color:var(--text-secondary);cursor:pointer;transition:var(--transition-smooth);text-align:right}.member-mobile-drawer-item:hover:not(:disabled){background:#ffffff0a;color:var(--text-primary)}.member-mobile-drawer-item.active{background:#adff2f1a;border-color:#adff2f4d;color:var(--accent-neon)}.admin-nav-wrapper{position:relative;margin-bottom:24px}@media (min-width: 769px){.admin-nav-wrapper{position:sticky;top:96px;z-index:90;margin-top:-12px;padding-top:10px;padding-bottom:12px;background:#0b0c10eb;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom:1px solid var(--glass-border);box-shadow:0 8px 24px #0006}}.admin-tabs-desktop{display:flex;gap:6px;background:#1f283366;border:1px solid var(--glass-border);border-radius:14px;padding:6px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 4px 20px #00000040;margin-bottom:0;overflow-x:auto}.admin-tabs-desktop .tab-btn{border-radius:10px;padding:10px 18px;font-size:14px;font-weight:700;color:var(--text-secondary);transition:var(--transition-smooth);background:transparent;display:flex;align-items:center;gap:8px;white-space:nowrap}.admin-tabs-desktop .tab-btn:hover{color:var(--text-primary);background:#ffffff0a}.admin-tabs-desktop .tab-btn.active{color:var(--accent-neon);background:#adff2f14;border:1px solid rgba(173,255,47,.25);box-shadow:0 0 12px #adff2f1f}.admin-tabs-desktop .tab-btn.active:after{display:none}.admin-mobile-nav-bar{display:none;justify-content:space-between;align-items:center;padding:12px 16px;background:#1f2833d9;border:1px solid var(--glass-border);border-radius:14px;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 4px 20px #0000004d}.admin-mobile-active-info{display:flex;align-items:center;gap:10px}.admin-mobile-active-label{font-size:15px;font-weight:700;color:var(--text-primary)}.admin-hamburger-btn{display:flex;align-items:center;gap:6px;background:#adff2f1a;border:1px solid rgba(173,255,47,.3);color:var(--accent-neon);padding:8px 14px;border-radius:10px;cursor:pointer;transition:var(--transition-smooth)}.admin-hamburger-btn:hover{background:#adff2f33;border-color:var(--accent-neon)}.admin-mobile-drawer-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:999;animation:fadeIn .2s ease-out}.admin-mobile-drawer{position:absolute;top:16px;left:16px;right:16px;max-width:500px;margin:0 auto;background:#13171f;border:1px solid rgba(102,252,241,.25);border-radius:18px;box-shadow:0 12px 36px #000000b3;overflow:hidden;animation:slideInDown .25s cubic-bezier(.16,1,.3,1)}.admin-mobile-drawer-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#ffffff08;border-bottom:1px solid var(--glass-border)}.btn-icon-close{background:#ffffff0f;border:1px solid var(--glass-border);color:var(--text-secondary);width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--transition-smooth)}.btn-icon-close:hover{color:#fff;background:#ffffff1f}.admin-mobile-drawer-list{padding:10px;display:flex;flex-direction:column;gap:4px}.admin-mobile-drawer-item{display:flex;justify-content:space-between;align-items:center;width:100%;padding:14px 16px;background:transparent;border:1px solid transparent;border-radius:12px;color:var(--text-secondary);cursor:pointer;transition:var(--transition-smooth);text-align:right}.admin-mobile-drawer-item:hover{background:#ffffff0a;color:var(--text-primary)}.admin-mobile-drawer-item.active{background:#adff2f1a;border-color:#adff2f4d;color:var(--accent-neon)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInDown{0%{opacity:0;transform:translateY(-20px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width: 768px){.admin-tabs-desktop,.member-tabs-desktop{display:none!important}.admin-mobile-nav-bar,.member-mobile-nav-bar{display:flex!important}.admin-mobile-drawer-overlay,.member-mobile-drawer-overlay{display:block!important}}.category-tabs{display:flex;gap:10px;margin-bottom:20px;overflow-x:auto;padding:4px 2px}.category-tab{background:#ffffff08;border:1px solid var(--glass-border);color:var(--text-secondary);padding:10px 20px;border-radius:9999px;font-weight:700;cursor:pointer;transition:var(--transition-smooth);white-space:nowrap}.category-tab:hover{border-color:var(--text-secondary);color:var(--text-primary)}.category-tab.active{background:#66fcf11a;border-color:var(--accent-cyan);color:var(--accent-cyan);box-shadow:0 0 12px #66fcf11a}.video-wrapper{position:relative;padding-bottom:56.25%;height:0;border-radius:12px;overflow:hidden;border:1px solid var(--glass-border);background:#000;margin-bottom:16px}.video-wrapper iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:none}.lockout-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0b0c10f2;display:flex;align-items:center;justify-content:center;z-index:9999;padding:24px;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.lockout-card{max-width:500px;width:100%;text-align:center;border:1px solid rgba(239,68,68,.3);background:#1f2833d9;box-shadow:0 0 30px #ef444426;border-radius:20px;padding:40px 32px;animation:pulseGlow 2s infinite ease-in-out}.lockout-icon{color:var(--error);margin-bottom:24px;display:inline-block}.lockout-card h2{font-size:24px;color:#fff;margin-bottom:16px}.lockout-card p{color:var(--text-secondary);font-size:16px;margin-bottom:28px;line-height:1.8}.qr-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;background:#fff;border-radius:16px;width:240px;height:240px;margin:0 auto 20px;box-shadow:0 0 20px #66fcf126;border:4px solid var(--accent-cyan)}.qr-code-placeholder{width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center}.svg-chart-container{width:100%;height:280px;position:relative;margin-top:10px}.chart-bar{fill:var(--accent-cyan);transition:var(--transition-smooth);cursor:pointer}.chart-bar:hover{fill:var(--accent-neon);filter:drop-shadow(0px 0px 8px rgba(173,255,47,.6))}.chart-text{fill:var(--text-secondary);font-size:11px;font-weight:600;text-anchor:middle}.chart-grid-line{stroke:#ffffff0d;stroke-dasharray:4}.workout-set-row{display:flex;align-items:center;gap:12px;margin-bottom:12px}.workout-set-badge{background:var(--bg-primary);border:1px solid var(--glass-border);color:var(--accent-cyan);width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:16px}.modal-content{background:var(--bg-secondary);border:1px solid var(--glass-border);border-radius:16px;max-width:550px;width:100%;padding:28px;box-shadow:0 10px 40px #000c;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;border-bottom:1px solid var(--glass-border);padding-bottom:12px}.notification-item{border-left:4px solid var(--accent-cyan);padding:12px 16px;margin-bottom:12px;border-radius:0 8px 8px 0;background:#ffffff05;transition:var(--transition-smooth)}.notification-item:hover{background:#ffffff0a}.notification-item.warning{border-left-color:var(--warning)}.notification-item.info{border-left-color:var(--accent-cyan)}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulseGlow{0%{box-shadow:0 0 25px #ef444426}50%{box-shadow:0 0 40px #ef444459;border-color:#ef444480}to{box-shadow:0 0 25px #ef444426}}button:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.notification-item.error{border-left-color:var(--error)}textarea.form-input{resize:vertical;min-height:80px}.quick-member-card{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#ffffff05;border:1px solid var(--glass-border);border-radius:8px;margin-bottom:8px;transition:var(--transition-smooth)}.quick-member-card:hover{background:#ffffff0d;border-color:var(--accent-cyan)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin{animation:spin .8s linear infinite}
