.admin-login-card{width:100%;max-width:400px;padding:40px 32px;background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:20px;box-shadow:0 20px 40px #0000001a,0 8px 32px #00000014;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.3);position:relative;z-index:10}.admin-login-card:hover{transform:translateY(-2px);box-shadow:0 25px 50px #00000026,0 12px 40px #0000001a}.admin-login-card h2{font-size:28px;font-weight:700;color:#1a1a1a;margin-bottom:8px;text-align:center}.login-subtitle{font-size:14px;color:#666;margin-bottom:32px;text-align:center;line-height:1.5}form{width:100%;display:flex;flex-direction:column;align-items:center}.form-group{width:100%;margin-bottom:20px;position:relative}.form-group input{width:100%;padding:16px 48px 16px 16px;border-radius:12px;border:1.5px solid #e2e8f0;font-size:15px;outline:none;transition:all .3s ease;box-shadow:0 2px 8px #0000000d;background:#fff;box-sizing:border-box}.form-group input:focus{border-color:#0056d6;box-shadow:0 0 0 3px #0056d626,0 2px 12px #0056d61a;transform:translateY(-1px)}.password-group{position:relative;width:100%}.password-toggle{position:absolute;right:16px;top:50%;transform:translateY(-50%);cursor:pointer;font-size:20px;color:#64748b;padding:4px;transition:color .2s ease}.password-toggle:hover{color:#0056d6}button{width:100%;padding:16px 0;border-radius:12px;border:none;background:linear-gradient(90deg,#06f,#0056d6);color:#fff;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:8px;box-shadow:0 4px 12px #0066ff4d}button:hover{background:linear-gradient(90deg,#0056d6,#0041a8);transform:translateY(-2px);box-shadow:0 6px 20px #06f6}button:disabled{background:#a3c1ff;cursor:not-allowed;transform:none;box-shadow:none}.error-message{color:#d93025;font-size:14px;margin-top:16px;text-align:center;background:#ffe6e6;padding:12px 16px;border-radius:8px;width:100%;border:1px solid #ffcdd2}@media (max-width: 480px){.admin-login-card{margin:20px;padding:32px 24px}.app-container{padding:60px 16px 16px;align-items:flex-start}}.sidebar{width:280px;background:linear-gradient(135deg,#1e293b,#0f172a);display:flex;flex-direction:column;position:relative;overflow:hidden;box-shadow:4px 0 20px #00000014}.sidebar:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 80%,rgba(99,102,241,.1) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(168,85,247,.05) 0%,transparent 50%);pointer-events:none}.sidebar-header{padding:32px 24px 28px;border-bottom:1px solid rgba(255,255,255,.08);position:relative}.company-logo{display:flex;align-items:center;gap:12px}.company-logo-img{width:40px;height:40px;object-fit:contain;border-radius:0;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3));display:block}.company-logo h2{margin:0;color:#fff;font-size:24px;font-weight:700;letter-spacing:-.5px}.sidebar-nav{flex:1;padding:24px 0;display:flex;flex-direction:column;gap:4px}.nav-item{display:flex;align-items:center;padding:14px 24px;color:#cbd5e1;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;margin:0 12px;border-radius:12px;font-weight:500;font-size:15px}.nav-item:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:0;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:0 2px 2px 0;transition:height .3s ease}.nav-item:hover{color:#fff;background:#ffffff0d;transform:translate(4px)}.nav-item:hover:before{height:60%}.nav-item.active{color:#fff;background:linear-gradient(135deg,#6366f126,#8b5cf61a);box-shadow:inset 0 1px #ffffff1a,0 4px 12px #6366f133}.nav-item.active:before{height:80%;background:linear-gradient(135deg,#6366f1,#8b5cf6)}.nav-item svg{margin-right:16px;font-size:20px;width:20px;transition:all .3s ease}.nav-item:hover svg{transform:scale(1.1)}.nav-item.active svg{color:#6366f1;filter:drop-shadow(0 2px 4px rgba(99,102,241,.4))}.sidebar-footer{padding:20px 16px;border-top:1px solid rgba(255,255,255,.08);background:#0003}.logout-btn{display:flex;align-items:center;width:100%;padding:14px 20px;background:#ef44441a;border:1px solid rgba(239,68,68,.2);border-radius:12px;color:#fca5a5;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);font-weight:600;font-size:15px;position:relative;overflow:hidden}.logout-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);transition:left .6s}.logout-btn:hover:before{left:100%}.logout-btn:hover{background:#ef444433;color:#fecaca;border-color:#ef444466;transform:translateY(-1px);box-shadow:0 4px 12px #ef444433}.logout-btn:active{transform:translateY(0)}.logout-btn svg{margin-right:12px;font-size:18px;transition:transform .3s ease}.logout-btn:hover svg{transform:translate(-2px)}@media (max-width: 1024px){.sidebar{width:260px}}@media (max-width: 768px){.sidebar{width:240px}.sidebar-header{padding:24px 20px 20px}.company-logo-img{width:36px;height:36px}.company-logo h2{font-size:22px}.nav-item{padding:12px 20px;margin:0 8px}}.sidebar{animation:slideInLeft .5s ease-out}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.nav-item:focus-visible,.logout-btn:focus-visible{outline:2px solid #6366f1;outline-offset:2px}.logout-modal-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease-out}.logout-modal{animation:modalSlideIn .3s cubic-bezier(.4,0,.2,1);min-width:320px;max-width:90vw}.logout-modal-content{background:linear-gradient(135deg,#1e293b,#0f172a);border-radius:16px;padding:0;box-shadow:0 20px 40px #0000004d;border:1px solid rgba(255,255,255,.1);overflow:hidden}.logout-modal-header{padding:24px 24px 16px;border-bottom:1px solid rgba(255,255,255,.08)}.logout-modal-header h3{margin:0;color:#fff;font-size:20px;font-weight:600;text-align:center}.logout-modal-body{padding:24px;text-align:center}.logout-modal-body p{margin:0;color:#cbd5e1;font-size:15px;line-height:1.5}.logout-modal-footer{padding:16px 24px 24px;display:flex;gap:12px;justify-content:center}.logout-cancel-btn,.logout-confirm-btn{padding:12px 24px;border:none;border-radius:10px;font-weight:600;font-size:14px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);min-width:100px}.logout-cancel-btn{background:#ffffff1a;color:#cbd5e1;border:1px solid rgba(255,255,255,.1)}.logout-cancel-btn:hover{background:#ffffff26;color:#fff;transform:translateY(-1px);box-shadow:0 4px 12px #0003}.logout-confirm-btn{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border:1px solid rgba(239,68,68,.3)}.logout-confirm-btn:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);transform:translateY(-1px);box-shadow:0 4px 16px #ef44444d}.logout-cancel-btn:active,.logout-confirm-btn:active{transform:translateY(0)}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.logout-cancel-btn:focus-visible,.logout-confirm-btn:focus-visible{outline:2px solid #6366f1;outline-offset:2px}@media (max-width: 480px){.logout-modal{min-width:280px;margin:20px}.logout-modal-footer{flex-direction:column}.logout-cancel-btn,.logout-confirm-btn{min-width:auto;width:100%}}.company-logo{display:flex;align-items:center;gap:12px;position:relative}.company-logo-img{width:40px;height:40px;object-fit:contain;border-radius:14px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3));display:block}.logo-fallback{display:none;align-items:center;justify-content:center}.fallback-icon{width:40px;height:40px;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:8px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:14px}.company-logo.with-bg{background-image:url(/assets/company-pic.jpg);background-size:contain;background-repeat:no-repeat;background-position:center;width:40px;height:40px}.nav-section{position:relative}.nav-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;background:none;border:none;color:#cbd5e1;cursor:pointer;padding:14px 24px;margin:0 12px;border-radius:12px;font-weight:500;font-size:15px;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative}.nav-toggle:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:0;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:0 2px 2px 0;transition:height .3s ease}.nav-toggle:hover{color:#fff;background:#ffffff0d;transform:translate(4px)}.nav-toggle:hover:before{height:60%}.nav-toggle.active{color:#fff;background:linear-gradient(135deg,#6366f126,#8b5cf61a);box-shadow:inset 0 1px #ffffff1a,0 4px 12px #6366f133}.nav-toggle.active:before{height:80%;background:linear-gradient(135deg,#6366f1,#8b5cf6)}.nav-arrow{margin-left:auto;font-size:16px;transition:transform .3s cubic-bezier(.4,0,.2,1);opacity:.7;transform:rotate(0)}.nav-toggle.active .nav-arrow{opacity:1;transform:rotate(0)}.nav-toggle:not(.active) .nav-arrow{transform:rotate(-90deg)}.nav-submenu{max-height:0;overflow:hidden;transition:max-height .4s cubic-bezier(.4,0,.2,1);background:#0f172a4d;position:relative}.nav-submenu:before{content:"";position:absolute;left:40px;top:0;bottom:0;width:1px;background:linear-gradient(to bottom,transparent,rgba(99,102,241,.3),transparent);opacity:0;transition:opacity .3s ease}.nav-submenu.open{max-height:200px}.nav-submenu.open:before{opacity:1}.nav-subitem{display:flex;align-items:center;padding:12px 24px 12px 56px;color:#94a3b8;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;font-size:14px;font-weight:500;transform:translate(-10px);opacity:0}.nav-submenu.open .nav-subitem{transform:translate(0);opacity:1}.nav-submenu.open .nav-subitem:nth-child(1){transition-delay:.05s}.nav-submenu.open .nav-subitem:nth-child(2){transition-delay:.1s}.nav-submenu.open .nav-subitem:nth-child(3){transition-delay:.15s}.nav-submenu.open .nav-subitem:nth-child(4){transition-delay:.2s}.nav-subitem:before{content:"";position:absolute;left:40px;top:50%;transform:translateY(-50%);width:4px;height:4px;background:#94a3b8;border-radius:50%;transition:all .3s cubic-bezier(.4,0,.2,1)}.nav-subitem:hover{color:#fff;background:#ffffff08;padding-left:60px}.nav-subitem:hover:before{background:#fff;transform:translateY(-50%) scale(1.5);box-shadow:0 0 8px #fff6}.nav-subitem.active{color:#6366f1;background:#6366f114;padding-left:60px}.nav-subitem.active:before{background:#6366f1;transform:translateY(-50%) scale(1.5);box-shadow:0 0 12px #6366f199}.nav-section:hover .nav-toggle:not(.active){background:#ffffff05}.nav-toggle:focus-visible{outline:2px solid #6366f1;outline-offset:2px}.nav-subitem:focus-visible{outline:2px solid #6366f1;outline-offset:-2px;border-radius:6px}.nav-section:has(.nav-subitem.active) .nav-toggle{color:#fff;background:linear-gradient(135deg,#6366f126,#8b5cf61a)}.nav-section:has(.nav-subitem.active) .nav-toggle:before{height:80%;background:linear-gradient(135deg,#6366f1,#8b5cf6)}@keyframes subtlePulse{0%{background:#0f172a4d}50%{background:#0f172a80}to{background:#0f172a4d}}.nav-submenu.open{animation:subtlePulse .6s ease-in-out}.topbar{padding:0 32px;height:80px;background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid #e2e8f0;position:sticky;top:0;z-index:100;box-shadow:0 1px 20px #00000014;animation:slideInDown .5s ease-out}.topbar-content{display:flex;justify-content:flex-end;align-items:center;height:100%}.user-profile{display:flex;align-items:center;gap:12px;padding:8px 16px;background:#fff;border-radius:12px;border:1.5px solid #e2e8f0;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #0000000d}.user-profile:hover{box-shadow:0 4px 12px #0000001a;border-color:#6366f1;transform:translateY(-1px)}.user-info{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.user-name{font-weight:600;color:#1e293b;font-size:14px;line-height:1.2}.user-email{font-size:12px;color:#64748b;font-weight:500}.avatar-container{position:relative;display:flex;align-items:center;justify-content:center}.user-avatar{width:40px;height:40px;border-radius:10px;object-fit:cover;border:2px solid #e2e8f0;transition:all .3s ease}.avatar-overlay{position:absolute;bottom:-2px;right:-2px;width:16px;height:16px;background:#6366f1;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:8px;border:2px solid white}.user-profile:hover .user-avatar{border-color:#6366f1}.profile-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.profile-modal{background:#fff;border-radius:16px;padding:0;width:90%;max-width:440px;box-shadow:0 25px 50px #0003;animation:slideUp .3s ease;border:1px solid #e2e8f0}.modal-header{padding:24px 24px 0;margin-bottom:8px;display:flex;justify-content:space-between;align-items:flex-start;position:relative}.header-content h2{margin:0 0 4px;font-size:1.5rem;font-weight:700;color:#1e293b;background:linear-gradient(135deg,#6366f1,#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.header-content p{margin:0;color:#64748b;font-size:.875rem}.header-content{flex:1;padding-right:40px}.close-btn{position:absolute;top:20px;right:20px;background:#f8fafc;border:none;font-size:18px;color:#64748b;cursor:pointer;padding:8px;border-radius:8px;transition:all .3s ease;width:36px;height:36px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.close-btn:hover{background:#f1f5f9;color:#475569;transform:rotate(90deg)}.modal-content{padding:0 24px;display:flex;flex-direction:column;gap:24px}.photo-section{display:flex;flex-direction:column;align-items:center;gap:12px;padding:16px 0;border-bottom:1px solid #f1f5f9}.avatar-upload{position:relative;cursor:pointer;border-radius:16px;overflow:hidden;width:100px;height:100px;border:3px solid #e2e8f0;transition:all .3s ease}.avatar-upload:hover{border-color:#6366f1;transform:scale(1.05)}.avatar-preview{width:100%;height:100%;object-fit:cover;border-radius:12px}.upload-overlay{position:absolute;inset:0;background:#000000b3;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;opacity:0;transition:opacity .3s ease;border-radius:12px;font-size:.75rem;font-weight:600}.avatar-upload:hover .upload-overlay{opacity:1}.upload-overlay span{font-size:11px;margin-top:4px;font-weight:500}.delete-photo-btn{background:#fef2f2;color:#dc2626;border:1.5px solid #fecaca;padding:6px 12px;border-radius:6px;font-size:11px;font-weight:600;cursor:pointer;transition:all .3s ease}.delete-photo-btn:hover:not(:disabled){background:#fee2e2;border-color:#fca5a5}.delete-photo-btn:disabled{opacity:.6;cursor:not-allowed}.info-section{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-label{display:flex;align-items:center;gap:8px;font-size:.875rem;font-weight:600;color:#374151;text-transform:none;letter-spacing:normal}.field-icon{color:#6366f1;font-size:14px}.edit-input{padding:12px 16px;border:1.5px solid #e2e8f0;border-radius:8px;font-size:14px;transition:all .3s ease;background:#fff;font-family:inherit}.edit-input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.edit-input:disabled{background:#f8fafc;cursor:not-allowed;color:#94a3b8}.info-display{padding:12px 16px;background:#f8fafc;border-radius:8px;font-size:14px;color:#475569;border:1.5px solid transparent;min-height:44px;display:flex;align-items:center}.email-display{font-family:inherit;font-size:14px}.role-badge{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.modal-actions{padding:24px;border-top:1px solid #f1f5f9;margin-top:8px;display:flex;justify-content:center}.action-buttons{display:flex;gap:12px;width:100%}.btn-edit-profile{display:flex;align-items:center;gap:8px;padding:12px 24px;background:#6366f1;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;width:fit-content;margin:0 auto}.btn-edit-profile:hover{background:#5b5cdc;transform:translateY(-1px);box-shadow:0 4px 12px #6366f14d}.btn-primary{display:flex;align-items:center;gap:8px;padding:12px 20px;background:#6366f1;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;flex:1;justify-content:center}.btn-primary:hover:not(:disabled){background:#5b5cdc;transform:translateY(-1px)}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-secondary{display:flex;align-items:center;gap:8px;padding:12px 20px;background:#f8fafc;color:#475569;border:1.5px solid #e2e8f0;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;flex:1;justify-content:center}.btn-secondary:hover:not(:disabled){background:#f1f5f9;border-color:#cbd5e1}.btn-secondary:disabled{background:#f8fafc;color:#94a3b8;cursor:not-allowed}@keyframes slideUp{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes slideInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.spinning{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 768px){.topbar{padding:0 20px;height:70px}.user-profile{padding:6px 12px;gap:10px}.user-avatar{width:36px;height:36px}.user-name{font-size:13px}.user-email{font-size:11px}.profile-modal{margin:20px;width:calc(100% - 40px)}.modal-content{padding:0 20px}.modal-actions{padding:20px}.action-buttons{flex-direction:column}.btn-primary,.btn-secondary{width:100%}}@media (max-width: 480px){.user-info{display:none}.user-profile{padding:8px}.avatar-upload{width:80px;height:80px}.modal-header{padding:20px 20px 0}.header-content h2{font-size:1.25rem}}.close-btn:focus,.btn-edit-profile:focus,.btn-primary:focus,.btn-secondary:focus,.edit-input:focus{outline:2px solid #6366f1;outline-offset:2px}@media (prefers-reduced-motion: reduce){.topbar,.user-profile,.profile-modal,.close-btn,.avatar-upload,.btn-edit-profile,.btn-primary,.btn-secondary,.delete-photo-btn{animation:none;transition:none}.spinning{animation:none}}.admin-dashboard{display:flex;height:100vh;width:100vw;background:#f8fafc;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;margin:0;padding:0;overflow:hidden}.dashboard-content{flex:1;display:flex;flex-direction:column;min-width:0;background:#fff;width:calc(100vw - 280px)}.main-content{flex:1;overflow-y:auto;background:#f8fafc;position:relative;width:100%;height:calc(100vh - 80px)}.main-content::-webkit-scrollbar{width:8px}.main-content::-webkit-scrollbar-track{background:#f1f5f9}.main-content::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.main-content::-webkit-scrollbar-thumb:hover{background:#94a3b8}html,body{margin:0;padding:0;overflow:hidden}.dash-page{padding:32px;background:#f8fafc;min-height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.dash-header{margin-bottom:32px}.dash-header-content h1{font-size:2rem;font-weight:700;color:#1e293b;margin:0 0 8px;background:linear-gradient(135deg,#6366f1,#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.dash-header-content p{color:#64748b;margin:0;font-size:1rem;font-weight:500}.dash-section-header{margin-bottom:24px}.dash-section-header h2{font-size:1.5rem;font-weight:700;color:#1e293b;margin:0 0 8px;background:linear-gradient(135deg,#6366f1,#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.dash-section-header p{color:#64748b;margin:0;font-size:.95rem;font-weight:500}.dash-metrics-section{margin-bottom:32px}.dash-metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px}.dash-top-performers-section{margin-bottom:32px}.dash-top-performers-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:24px}.dash-kpi-section{margin-bottom:32px}.dash-loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:60vh;text-align:center}.dash-loading-spinner{width:48px;height:48px;border:3px solid #e2e8f0;border-top:3px solid #6366f1;border-radius:50%;animation:dash-spin 1s linear infinite;margin-bottom:16px}.dash-loading-container p{color:#64748b;font-size:.95rem;margin:0;font-weight:500}@keyframes dash-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 1024px){.dash-analytics-grid{grid-template-columns:1fr}}@media (max-width: 768px){.dash-page{padding:24px}.dash-kpi-grid{grid-template-columns:1fr;gap:20px}.dash-header-content h1{font-size:1.75rem}.dash-metrics-grid{grid-template-columns:repeat(2,1fr);gap:20px}.dash-top-performers-grid{grid-template-columns:1fr;gap:20px}.dash-kpi-section{margin-bottom:24px}}@media (max-width: 480px){.dash-page{padding:20px}.dash-kpi-grid{grid-template-columns:1fr;gap:20px}.dash-metrics-grid{grid-template-columns:1fr}.dash-header-content h1{font-size:1.5rem}.dash-top-performers-grid{grid-template-columns:1fr}}.dash-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:24px}.stat-card{background:#fff;border-radius:12px;padding:24px;border:1px solid #f0f0f0;box-shadow:0 1px 2px #0000000d;transition:all .2s ease;height:100%}.stat-card:hover{border-color:#e0e0e0;box-shadow:0 4px 12px #00000014}.stat-card-content{display:flex;align-items:center;gap:20px}.stat-icon-container{width:56px;height:56px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-icon{font-size:24px;font-weight:500}.stat-values{flex:1}.stat-value{font-size:2rem;font-weight:700;color:#111827;line-height:1.2;margin-bottom:4px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stat-title{font-size:.875rem;color:#6b7280;font-weight:500;letter-spacing:.02em}@media (max-width: 1024px){.stat-card{padding:20px}.stat-icon-container{width:48px;height:48px}.stat-icon{font-size:20px}.stat-value{font-size:1.75rem}}@media (max-width: 768px){.stat-card{padding:16px}.stat-card-content{gap:16px}.stat-icon-container{width:44px;height:44px}.stat-icon{font-size:18px}.stat-value{font-size:1.5rem}}@media (max-width: 480px){.stat-card{padding:14px}.stat-card-content{gap:12px}.stat-icon-container{width:40px;height:40px}.stat-value{font-size:1.375rem}}.dash-top-item-card{background:#fff;border-radius:16px;padding:24px;box-shadow:0 2px 12px #00000014;border:1px solid #e2e8f0;transition:all .3s ease;position:relative;overflow:hidden;display:flex;flex-direction:column;gap:16px}.dash-top-item-card:hover{transform:translateY(-4px);box-shadow:0 8px 25px #00000026}.dash-top-item-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}.dash-top-item-title{font-size:1rem;font-weight:600;color:#64748b;margin:0;text-transform:uppercase;letter-spacing:.05em}.dash-top-item-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;background:linear-gradient(135deg,currentColor,rgba(255,255,255,.9));box-shadow:0 2px 8px #0000001a;transition:transform .3s ease}.dash-top-item-card:hover .dash-top-item-icon{transform:scale(1.05)}.dash-top-item-content{display:flex;flex-direction:column;gap:12px;flex:1}.dash-top-item-name{font-size:1.25rem;font-weight:700;color:#1e293b;line-height:1.3;display:-webkit-box;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;min-height:2.6em;background:linear-gradient(135deg,#1e293b,#475569);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.dash-top-item-stats{display:flex;align-items:baseline;gap:8px;margin-top:8px}.dash-top-item-count{font-size:2rem;font-weight:800;color:#1e293b;line-height:1;background:linear-gradient(135deg,currentColor,#475569);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.dash-top-item-metric{font-size:.875rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.05em;background:#f8fafc;padding:4px 8px;border-radius:6px;border:1px solid #e2e8f0}.dash-top-item-badge{position:absolute;top:16px;right:16px;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;padding:6px 12px;border-radius:20px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;box-shadow:0 2px 8px #f59e0b4d}.dash-top-item-card[data-color="#10B981"] .dash-top-item-count{background:linear-gradient(135deg,#10b981,#059669);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.dash-top-item-card[data-color="#8B5CF6"] .dash-top-item-count{background:linear-gradient(135deg,#8b5cf6,#7c3aed);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}@media (max-width: 768px){.dash-top-item-card{padding:20px}.dash-top-item-name{font-size:1.125rem}.dash-top-item-count{font-size:1.75rem}.dash-top-item-icon{width:36px;height:36px;font-size:1.25rem}}@media (max-width: 480px){.dash-top-item-header{flex-direction:column;gap:12px;align-items:flex-start}.dash-top-item-icon{align-self:flex-start}}.session-kpi-card{background:#fff;border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000000d;border:1px solid #e5e7eb}.session-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid #f3f4f6}.session-title-section h3{font-size:1.25rem;font-weight:700;color:#1e293b;margin:0 0 6px;background:linear-gradient(135deg,#6366f1,#8b5cf6);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.session-title-section p{font-size:.875rem;color:#6b7280;margin:0}.session-goal{padding:6px 12px;background:#f3f4f6;border-radius:6px;font-size:.875rem;font-weight:500;color:#374151}.session-main-metric{text-align:center;margin-bottom:32px}.session-rate{font-size:3rem;font-weight:700;line-height:1;margin-bottom:8px}.session-label{font-size:1rem;color:#374151;font-weight:600;margin-bottom:6px}.session-description{font-size:.875rem;color:#6b7280}.session-progress{margin-bottom:32px}.session-progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:.875rem;font-weight:500;color:#374151}.session-progress-bar{height:6px;background:#e5e7eb;border-radius:3px;margin-bottom:6px;position:relative}.session-progress-fill{height:100%;border-radius:3px;transition:width .6s ease}.session-goal-marker{position:absolute;top:-4px;width:2px;height:14px;background:#9ca3af}.session-goal-marker:after{content:"";position:absolute;top:-20px;left:-4px;width:10px;height:10px;background:#9ca3af;border-radius:50%}.session-progress-labels{display:flex;justify-content:space-between;font-size:.75rem;color:#6b7280;font-weight:500}.session-goal-label{font-weight:600;color:#374151}.session-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.session-stat{padding:12px;background:#f9fafb;border-radius:8px;border:1px solid #f3f4f6}.session-stat-label{font-size:.75rem;color:#6b7280;font-weight:500;text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}.session-stat-value{font-size:1.125rem;font-weight:600;color:#111827}.session-loading{display:flex;align-items:center;justify-content:center;min-height:200px;color:#6b7280;font-size:.875rem}@media (max-width: 1024px){.session-stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.session-kpi-card{padding:20px}.session-header{flex-direction:column;gap:12px}.session-goal{align-self:flex-start}.session-rate{font-size:2.5rem}}@media (max-width: 480px){.session-kpi-card{padding:16px}.session-stats-grid{grid-template-columns:1fr;gap:12px}.session-rate{font-size:2rem}.session-stat{padding:10px}.session-stat-value{font-size:1rem}}.league-kpi-card{background:#fff;border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000000d;border:1px solid #e5e7eb}.league-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid #f3f4f6}.league-title-section h3{font-size:1.25rem;font-weight:700;color:#1e293b;margin:0 0 6px;background:linear-gradient(135deg,#6366f1,#8b5cf6);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.league-title-section p{font-size:.875rem;color:#6b7280;margin:0}.league-goal{padding:6px 12px;background:#f3f4f6;border-radius:6px;font-size:.875rem;font-weight:500;color:#374151}.league-main-metric{text-align:center;margin-bottom:32px}.league-rate{font-size:3rem;font-weight:700;line-height:1;margin-bottom:8px}.league-label{font-size:1rem;color:#374151;font-weight:600;margin-bottom:6px}.league-description{font-size:.875rem;color:#6b7280}.league-progress{margin-bottom:32px}.league-progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:.875rem;font-weight:500;color:#374151}.league-progress-bar{height:6px;background:#e5e7eb;border-radius:3px;margin-bottom:6px;position:relative}.league-progress-fill{height:100%;border-radius:3px;transition:width .6s ease}.league-goal-marker{position:absolute;top:-4px;width:2px;height:14px;background:#9ca3af}.league-goal-marker:after{content:"";position:absolute;top:-20px;left:-4px;width:10px;height:10px;background:#9ca3af;border-radius:50%}.league-progress-labels{display:flex;justify-content:space-between;font-size:.75rem;color:#6b7280;font-weight:500}.league-goal-label{font-weight:600;color:#374151}.league-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.league-stat{padding:12px;background:#f9fafb;border-radius:8px;border:1px solid #f3f4f6}.league-stat-label{font-size:.75rem;color:#6b7280;font-weight:500;text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}.league-stat-value{font-size:1.125rem;font-weight:600;color:#111827}.league-loading{display:flex;align-items:center;justify-content:center;min-height:200px;color:#6b7280;font-size:.875rem}@media (max-width: 1024px){.league-stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.league-kpi-card{padding:20px}.league-header{flex-direction:column;gap:12px}.league-goal{align-self:flex-start}.league-rate{font-size:2.5rem}}@media (max-width: 480px){.league-kpi-card{padding:16px}.league-stats-grid{grid-template-columns:1fr;gap:12px}.league-rate{font-size:2rem}.league-stat{padding:10px}.league-stat-value{font-size:1rem}}.ur-card{background:#fff;border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000000d;border:1px solid #e5e7eb}.ur-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px;padding-bottom:20px;border-bottom:1px solid #f3f4f6}.ur-title-section h3{font-size:1.25rem;font-weight:700;color:#1e293b;margin:0 0 6px;background:linear-gradient(135deg,#6366f1,#8b5cf6);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.ur-title-section p{font-size:.875rem;color:#6b7280;margin:0}.ur-date-section{display:flex;flex-direction:column;gap:8px}.ur-date-section label{font-size:.875rem;font-weight:500;color:#374151}.ur-date-section input{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;color:#1f2937;background:#fff;width:180px}.ur-date-section input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.ur-key-metric{text-align:center;margin-bottom:32px}.ur-key-count{font-size:3rem;font-weight:700;color:#111827;line-height:1;margin-bottom:8px}.ur-key-label{font-size:.95rem;color:#6b7280;font-weight:500}.ur-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.ur-stat{padding:16px;background:#f9fafb;border-radius:8px;border:1px solid #f3f4f6}.ur-stat-label{font-size:.75rem;color:#6b7280;font-weight:500;text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px}.ur-stat-value{font-size:1.5rem;font-weight:600;color:#111827}.ur-loading{display:flex;align-items:center;justify-content:center;min-height:200px;color:#6b7280;font-size:.875rem}@media (max-width: 1024px){.ur-stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.ur-card{padding:20px}.ur-header{flex-direction:column;align-items:flex-start;gap:16px}.ur-date-section input{width:100%}.ur-key-count{font-size:2.5rem}}@media (max-width: 480px){.ur-card{padding:16px}.ur-stats-grid{grid-template-columns:1fr;gap:12px}.ur-stat{padding:12px}.ur-key-count{font-size:2rem}.ur-stat-value{font-size:1.25rem}}.user-stats{display:flex;gap:20px;margin-bottom:24px;flex-wrap:wrap}.user-stat-card{background:#fff;padding:20px 24px;border-radius:12px;box-shadow:0 2px 12px #00000014;border:1px solid #e2e8f0;display:flex;align-items:center;gap:16px;min-width:200px;flex:1;transition:transform .2s ease,box-shadow .2s ease;max-width:375px}.user-stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 20px #0000001f}.user-stat-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:20px}.user-stat-icon.user-total-users{background:linear-gradient(135deg,#6366f1,#8b5cf6)}.user-stat-info h3{color:#64748b;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin:0 0 4px}.user-stat-number{font-size:1.75rem;font-weight:800;color:#1e293b;margin:0}@media (max-width: 768px){.user-stats{flex-direction:column}.user-stat-card{min-width:auto}}@media (max-width: 480px){.user-stat-card{padding:16px 20px}.user-stat-icon{width:40px;height:40px;font-size:18px}.user-stat-number{font-size:1.5rem}}.user-stat-icon.user-total-xp{background:linear-gradient(135deg,#10b981,#059669)}.user-main-info{display:flex;align-items:center;gap:10px;min-width:0;width:100%}.user-avatar{width:36px;height:36px;border-radius:8px;background:#f1f5f9;display:flex;align-items:center;justify-content:center;border:1px solid #e2e8f0;flex-shrink:0;overflow:hidden;position:relative}.user-profile-image{width:100%;height:100%;object-fit:cover;border-radius:6px}.user-avatar-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:6px}.user-avatar-placeholder.user-hidden{display:none}.user-placeholder-icon{color:#fff;font-size:16px}.user-text-info{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.user-name{font-weight:600;color:#1e293b;font-size:.875rem;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-email{display:flex;align-items:center;gap:4px;color:#64748b;font-size:.75rem;font-weight:500;min-width:0}.user-email-icon{color:#94a3b8;font-size:11px;flex-shrink:0}.user-email-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.user-id{font-size:.7rem;color:#94a3b8;font-family:Monaco,Menlo,Ubuntu Mono,monospace;letter-spacing:.2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-totalxp-cell{display:flex;align-items:center;justify-content:center;gap:4px;background:#f0f9ff;padding:6px 8px;border-radius:6px;border:1px solid #bae6fd;min-width:90px;white-space:nowrap}.user-totalxp-icon{color:#0369a1;font-size:14px}.user-totalxp-value{font-size:.8rem;font-weight:700;color:#0369a1}.user-level-cell{display:flex;align-items:center;justify-content:center;background:#faf5ff;padding:6px 8px;border-radius:6px;border:1px solid #e9d5ff;min-width:60px;white-space:nowrap}.user-level-value{font-size:.9rem;font-weight:800;color:#7c3aed}.user-xpnext-cell{display:flex;align-items:center;justify-content:center;gap:4px;background:#fef7cd;padding:6px 8px;border-radius:6px;border:1px solid #fde68a;min-width:100px;white-space:nowrap}.user-xpnext-icon{color:#d97706;font-size:12px}.user-xpnext-value{font-size:.8rem;font-weight:700;color:#d97706}.user-gender-value{font-size:.8rem;font-weight:500;color:#475569;padding:5px 8px;background:#f8fafc;border-radius:5px;text-align:center;min-width:85px;white-space:nowrap}.user-language-cell{display:flex;align-items:center;justify-content:center;gap:4px;background:#f0f9ff;padding:5px 8px;border-radius:6px;border:1px solid #bae6fd;min-width:75px;white-space:nowrap}.user-language-icon{color:#0369a1;font-size:12px}.user-language-value{font-size:.8rem;font-weight:600;color:#0369a1;text-transform:uppercase}.user-program-value{font-size:.8rem;font-weight:500;color:#475569;background:#f1f5f9;padding:5px 8px;border-radius:5px;text-align:center;max-width:150px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:inline-block}.user-sessions-cell{display:flex;align-items:center;justify-content:center;gap:4px;background:#fff7ed;padding:5px 8px;border-radius:6px;border:1px solid #fed7aa;min-width:85px;white-space:nowrap}.user-sessions-icon{color:#ea580c;font-size:14px}.user-sessions-value{font-size:.8rem;font-weight:700;color:#ea580c}.user-hidden{display:none!important}@media (max-width: 768px){.user-data-row{min-height:60px}.user-main-info{gap:8px}.user-avatar{width:32px;height:32px}.user-placeholder-icon{font-size:14px}.user-totalxp-cell,.user-level-cell,.user-xpnext-cell,.user-language-cell,.user-sessions-cell,.user-gender-value,.user-program-value{padding:4px 6px}}.user-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 16px #00000014;border:1px solid #e2e8f0;overflow:hidden;width:100%}.user-table-wrapper{overflow-x:auto;width:100%}.user-table{min-width:1200px;width:100%;border-collapse:collapse}.user-table-row{display:grid;grid-template-columns:minmax(250px,1.8fr) minmax(100px,.7fr) minmax(90px,.6fr) minmax(160px,1fr) minmax(110px,.8fr) minmax(110px,.8fr) minmax(110px,.8fr) minmax(80px,.6fr) minmax(120px,.9fr);gap:12px;padding:12px 20px;min-height:80px;align-items:center;box-sizing:border-box;width:100%}.user-xpweek-column{justify-content:center;min-width:110px}.user-header-row{background:#f8fafc;border-bottom:1px solid #e2e8f0;font-weight:600;color:#475569;font-size:.875rem;text-transform:uppercase;padding:16px 24px;letter-spacing:.5px;min-height:50px;align-items:center}.user-data-row{align-items:center;min-height:68px;border-bottom:1px solid #f1f5f9;transition:background-color .15s ease}.user-data-row:hover{background:#f8fafc}.user-data-row:last-child{border-bottom:none}.user-table-cell{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:4px 2px;display:flex;align-items:center;font-size:.875rem}.user-user-column{justify-content:flex-start;min-width:250px}.user-gender-column{justify-content:center;min-width:100px}.user-language-column{justify-content:center;min-width:90px}.user-program-column{justify-content:center;min-width:160px}.user-sessions-column,.user-totalxp-column{justify-content:center;min-width:110px}.user-level-column{justify-content:center;min-width:80px}.user-xpnext-column{justify-content:center;min-width:120px}.user-table-wrapper::-webkit-scrollbar{height:6px}.user-table-wrapper::-webkit-scrollbar-track{background:#f1f5f9}.user-table-wrapper::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.user-table-wrapper::-webkit-scrollbar-thumb:hover{background:#94a3b8}.user-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#64748b;text-align:center;min-width:100%;grid-column:1 / -1}.user-empty-state h3{margin:12px 0 6px;color:#475569;font-size:1.1rem;font-weight:600}.user-empty-state p{margin:0;font-size:.9rem;color:#64748b}@media (max-width: 768px){.user-table-wrapper{border-radius:8px}.user-table{min-width:1000px}.user-table-row{gap:10px;padding:8px 16px}.user-header-row{min-height:40px;font-size:.7rem}.user-table-cell{font-size:.85rem}}.user-loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#64748b;text-align:center;min-height:200px}.user-loading-state .user-loading-spinner{width:32px;height:32px;border:3px solid #e2e8f0;border-top:3px solid #6366f1;border-radius:50%;animation:user-spin 1s linear infinite;margin-bottom:16px}.user-loading-state p{color:#64748b;font-size:.95rem;margin:0;font-weight:500}.user-page{padding:32px;background:#f8fafc;min-height:100vh;width:100%;box-sizing:border-box}.user-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:24px;width:100%}.user-header-content h1{font-size:2rem;font-weight:700;color:#1e293b;margin:0 0 8px;background:linear-gradient(135deg,#6366f1,#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.user-header-actions{display:flex;align-items:center;gap:16px}.user-search-bar{position:relative;display:flex;align-items:center}.user-search-bar input{padding:12px 16px 12px 40px;border:1.5px solid #e2e8f0;border-radius:12px;outline:none;width:280px;font-size:14px;background:#fff;transition:all .3s ease;box-shadow:0 2px 8px #0000000d;height:44px;box-sizing:border-box}.user-search-bar input:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.user-search-icon{position:absolute;left:16px;color:#94a3b8;font-size:18px}.user-loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:60vh;text-align:center}.user-loading-spinner{width:48px;height:48px;border:3px solid #e2e8f0;border-top:3px solid #6366f1;border-radius:50%;animation:user-spin 1s linear infinite;margin-bottom:16px}.user-loading-container p{color:#64748b;font-size:.95rem;margin:0;font-weight:500}@keyframes user-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 768px){.user-page{padding:20px}.user-header{flex-direction:column;gap:16px;align-items:stretch}.user-header-actions{width:100%;flex-direction:column;gap:12px}.user-search-bar input{width:100%}}@media (max-width: 480px){.user-page{padding:16px}.user-header-content h1{font-size:1.5rem}}@media (prefers-reduced-motion: reduce){.user-search-bar input{transition:none}}.users-page-wrapper{width:100%;min-height:100vh;background:#f8fafc}.programs-stats{display:flex;gap:20px;margin-bottom:24px}.stat-card{background:#fff;padding:20px 24px;border-radius:12px;box-shadow:0 2px 12px #00000014;border:1px solid #e2e8f0;display:flex;align-items:center;gap:16px;min-width:200px;flex:1;transition:transform .2s ease,box-shadow .2s ease;max-width:375px}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 20px #0000001f}.stat-icon{width:44px;height:44px;border-radius:10px;background:linear-gradient(135deg,#6366f1,#8b5cf6);display:flex;align-items:center;justify-content:center;color:#fff;font-size:18px}.stat-info h3{color:#64748b;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin:0 0 4px}.stat-number{font-size:1.75rem;font-weight:800;color:#1e293b;margin:0}@media (max-width: 768px){.programs-stats{flex-direction:column}.stat-card{min-width:auto}}.table-row{display:grid;grid-template-columns:minmax(180px,1.2fr) minmax(150px,1fr) minmax(100px,.8fr) minmax(100px,.8fr) minmax(100px,.7fr) minmax(120px,.8fr) minmax(80px,.5fr);gap:16px;padding:16px 24px;min-height:80px;align-items:center;width:100%;box-sizing:border-box}.data-row{align-items:center;min-height:70px;border-bottom:1px solid #f1f5f9;transition:background-color .2s ease}.data-row:hover{background:#f8fafc}.data-row:last-child{border-bottom:none}.table-cell{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;padding:4px 0;display:flex;align-items:center}.program-column{min-width:180px;justify-content:flex-start}.description-column{min-width:150px;justify-content:flex-start}.duration-column,.target-column,.intensity-column{min-width:100px;justify-content:center}.workouts-column{min-width:120px;justify-content:center}.actions-column{min-width:80px;justify-content:center}.program-main-info{display:flex;align-items:center;gap:12px;min-width:0;width:100%}.program-avatar{width:40px;height:40px;border-radius:8px;background:#f1f5f9;display:flex;align-items:center;justify-content:center;border:1.5px solid #e2e8f0;flex-shrink:0;overflow:hidden}.program-image{width:100%;height:100%;object-fit:cover}.image-placeholder-small{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#f8fafc}.placeholder-icon-small{color:#94a3b8;font-size:16px}.program-text-info{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.program-name{font-weight:600;color:#1e293b;font-size:14px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.program-id{font-size:11px;color:#94a3b8;font-family:monospace;letter-spacing:.3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.description-value{font-size:13px;color:#64748b;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;width:100%}.duration-cell,.workouts-cell{display:flex;align-items:center;gap:6px;padding:6px 10px;border-radius:6px;justify-content:center;min-height:32px;font-size:12px;white-space:nowrap;width:fit-content;margin:0 auto}.duration-cell{background:#f0f9ff;border:1px solid #bae6fd}.duration-icon{color:#0369a1;font-size:12px}.duration-value{font-size:12px;font-weight:600;color:#0369a1}.target-cell{display:flex;align-items:center;gap:6px;padding:6px 10px;border-radius:6px;justify-content:center;min-height:32px;font-size:12px;white-space:nowrap;width:fit-content;margin:0 auto;background:#f0fdf4;border:1px solid #bbf7d0}.target-icon{color:#16a34a;font-size:12px}.target-value{font-size:12px;font-weight:600;color:#16a34a}.workouts-cell{background:#f3e8ff;border:1px solid #d8b4fe;position:relative;cursor:pointer}.workouts-value{font-size:12px;font-weight:600;color:#7c3aed}.workouts-tooltip{position:absolute;bottom:100%;left:50%;transform:translate(-50%);background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:8px;box-shadow:0 4px 12px #0000001a;z-index:10;min-width:150px;display:none}.workouts-cell:hover .workouts-tooltip{display:block}.workout-tooltip-item{padding:4px 8px;font-size:12px;color:#475569;border-bottom:1px solid #f1f5f9;white-space:nowrap}.workout-tooltip-item:last-child{border-bottom:none}.intensity-badge{border-radius:12px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;color:#fff;text-align:center;white-space:nowrap;padding:6px 10px;font-size:11px;min-width:70px;display:inline-block}.actions-cell{display:flex;align-items:center;gap:8px;justify-content:center}.action-btn{padding:6px;border:none;border-radius:6px;cursor:pointer;font-size:12px;transition:all .3s ease;display:flex;align-items:center;justify-content:center;flex-shrink:0;width:28px;height:28px}.edit-btn{background:#dbeafe;color:#1d4ed8}.edit-btn:hover{background:#bfdbfe;transform:translateY(-1px)}.delete-btn{background:#fee2e2;color:#dc2626}.delete-btn:hover{background:#fecaca;transform:translateY(-1px)}@media (max-width: 768px){.workouts-cell .workouts-tooltip{display:none!important}}.programs-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 12px #00000014;border:1px solid #e2e8f0;overflow:hidden;width:100%}.programs-table-wrapper{width:100%;overflow-x:auto;overflow-y:visible}.programs-table{display:flex;flex-direction:column;width:100%;min-width:1200px}.header-row{background:#f8fafc;font-weight:600;color:#475569;font-size:.875rem;text-transform:uppercase;letter-spacing:.5px;padding:16px 24px;min-height:50px;border-bottom:1px solid #e2e8f0}.empty-state{padding:60px 40px;text-align:center;color:#64748b}.empty-icon{font-size:3rem;color:#cbd5e1;margin-bottom:16px}.empty-state h3{margin:0 0 8px;color:#475569;font-size:1.25rem}.empty-state p{margin:0;font-size:.9rem}@media (max-width: 1200px){.programs-table{min-width:1100px}}@media (max-width: 768px){.programs-table-wrapper{overflow-x:auto}.programs-table{min-width:1000px}}.programs-table-wrapper::-webkit-scrollbar{width:6px;height:6px}.programs-table-wrapper::-webkit-scrollbar-track{background:#f1f5f9;border-radius:3px}.programs-table-wrapper::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.programs-table-wrapper::-webkit-scrollbar-thumb:hover{background:#94a3b8}.program-form-overlay{position:fixed;inset:0;background:#0009;display:flex;justify-content:center;align-items:center;z-index:1000;padding:10px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.program-form-modal{background:#fff;border-radius:16px;width:98%;max-width:1200px;max-height:98vh;display:flex;flex-direction:column;box-shadow:0 25px 50px -12px #00000040;overflow:hidden}.program-modal-header{padding:20px 24px;border-bottom:1px solid #e5e7eb;background:#fff;display:flex;justify-content:center;align-items:center;position:relative}.program-header-content{text-align:center}.program-header-content h1{margin:0 0 4px;font-size:1.75rem;font-weight:700;color:#6366f1}.program-header-content p{margin:0;color:#6b7280;font-size:.95rem}.program-close-modal-btn{position:absolute;top:20px;right:24px;background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;color:#374151;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.program-close-modal-btn:hover{background:#f3f4f6;border-color:#d1d5db}.program-form{display:flex;flex-direction:column;height:100%;width:100%}.program-form-content{padding-bottom:180px;max-height:calc(98vh - 80px);overflow-y:auto;width:100%}.program-form-section{padding:24px 20px;border-bottom:1px solid #f3f4f6;width:100%}.program-form-section:last-of-type{border-bottom:none}.program-section-header{margin-bottom:20px}.program-section-header h2{margin:0 0 8px;font-size:1.25rem;font-weight:600;color:#111827}.program-section-header p{margin:0;color:#6b7280;font-size:.9rem}.program-image-upload-section{width:100%}.program-image-upload-container{display:flex;align-items:flex-start;gap:24px;width:100%}.program-image-preview-wrapper{flex-shrink:0}.program-image-preview{position:relative;width:140px;height:140px;border-radius:12px;overflow:hidden;background:#f8fafc;border:2px dashed #d1d5db;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.program-image-preview:hover{border-color:#6366f1}.program-preview-image{width:100%;height:100%;object-fit:cover}.program-remove-image-btn{position:absolute;top:8px;right:8px;width:28px;height:28px;background:#ef4444f2;color:#fff;border:none;border-radius:6px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.program-remove-image-btn:hover{background:#dc2626;transform:scale(1.05)}.program-image-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#9ca3af;text-align:center}.program-image-placeholder svg{opacity:.7}.program-upload-controls{flex:1;display:flex;flex-direction:column;gap:12px;width:100%}.program-image-input{display:none}.program-upload-btn{background:#6366f1;color:#fff;border:none;border-radius:8px;padding:12px 20px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:8px;width:fit-content}.program-upload-btn:hover{background:#5b5cdc;transform:translateY(-1px)}.program-upload-hint{margin:0;color:#6b7280;font-size:.8rem}.program-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;width:100%;max-width:none}.program-form-group{display:flex;flex-direction:column;gap:8px;width:100%}.program-form-group.full-width{grid-column:1 / -1}.program-form-label{font-weight:500;color:#374151;font-size:.9rem}.program-form-input,.program-form-textarea{padding:12px 16px;border:1.5px solid #e5e7eb;border-radius:8px;font-size:.95rem;transition:all .2s ease;background:#fff;font-family:inherit;width:100%;box-sizing:border-box;min-width:0}.program-form-input:focus,.program-form-textarea:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.program-form-input::placeholder,.program-form-textarea::placeholder{color:#9ca3af}.program-form-textarea{resize:vertical;min-height:80px;line-height:1.5;width:100%}.program-workouts-section{width:100%;position:relative}.program-dropdown-container{position:relative;width:100%;z-index:50}.program-dropdown-trigger{padding:14px 16px;border:1.5px solid #e5e7eb;border-radius:8px;background:#fff;cursor:pointer;transition:all .2s ease;display:flex;justify-content:space-between;align-items:center;width:100%}.program-dropdown-trigger:hover{border-color:#6366f1}.program-trigger-text{color:#374151;font-size:.95rem}.program-dropdown-menu{position:fixed;left:50%;transform:translate(-50%);top:50%;width:95%;max-width:800px;max-height:70vh;overflow-y:auto;background:#fff;border:1.5px solid #e5e7eb;border-radius:8px;box-shadow:0 10px 25px -5px #00000026;z-index:2000}.program-dropdown-header{padding:16px 20px;border-bottom:1px solid #f3f4f6;background:#fafafa;display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.program-dropdown-header h3{margin:0;font-size:1rem;font-weight:600;color:#111827}.program-selected-count{background:#6366f1;color:#fff;padding:4px 8px;border-radius:12px;font-size:.8rem;font-weight:500}.program-search-box{padding:16px 20px;border-bottom:1px solid #f3f4f6;position:relative;display:flex;align-items:center;flex-shrink:0;width:100%}.program-search-box svg{position:absolute;left:32px;color:#9ca3af}.program-search-input{width:100%;padding:10px 10px 10px 32px;border:1px solid #e5e7eb;border-radius:6px;font-size:.9rem}.program-search-input:focus{outline:none;border-color:#6366f1}.program-workouts-list{flex:1;overflow-y:auto;padding:8px;max-height:250px;width:100%}.program-workout-item{display:flex;align-items:flex-start;gap:12px;padding:12px;border-radius:6px;cursor:pointer;transition:background-color .2s ease;margin-bottom:4px;width:100%}.program-workout-item:hover{background:#f8fafc}.program-workout-item:has(.program-checkbox:checked){background:#eef2ff}.program-checkbox{margin-top:2px}.program-workout-info{flex:1;width:100%}.program-workout-name{font-weight:500;color:#374151;font-size:.9rem;margin-bottom:2px}.program-workout-meta{font-size:.8rem;color:#6b7280}.program-empty-state{text-align:center;color:#6b7280;padding:40px 20px;font-size:.9rem;width:100%}.program-dropdown-footer{padding:16px 20px;border-top:1px solid #f3f4f6;background:#fafafa;display:flex;justify-content:flex-end;flex-shrink:0;width:100%}.program-done-btn{background:#6366f1;color:#fff;border:none;border-radius:6px;padding:8px 20px;font-size:.9rem;font-weight:500;cursor:pointer;transition:background-color .2s ease}.program-done-btn:hover{background:#5b5cdc}.program-selected-workouts{margin-top:16px;width:100%}.program-selected-header{font-weight:500;color:#374151;margin-bottom:8px;font-size:.9rem}.program-workout-tags{display:flex;flex-wrap:wrap;gap:8px;width:100%}.program-workout-tag{background:#eef2ff;color:#6366f1;padding:6px 10px;border-radius:20px;font-size:.8rem;display:flex;align-items:center;gap:4px;max-width:100%}.program-remove-tag{width:16px;height:16px;display:flex;align-items:center;justify-content:center;background:none;border:none;color:#6366f1;cursor:pointer;padding:0;border-radius:50%;transition:background-color .2s ease}.program-remove-tag:hover{background:#6366f126}.program-form-actions{position:sticky;bottom:0;background:#fff;border-top:1px solid #e5e7eb;box-shadow:0 -4px 8px #0000000d;padding:16px 20px;display:flex;justify-content:flex-end;gap:12px;z-index:10;width:100%;width:auto}.program-btn{padding:12px 24px;border-radius:8px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s ease;border:none;display:flex;align-items:center;gap:8px}.program-btn-primary{background:#6366f1;color:#fff}.program-btn-primary:hover:not(:disabled){background:#5b5cdc;transform:translateY(-1px)}.program-btn-primary:disabled{background:#9ca3af;cursor:not-allowed;transform:none}.program-btn-secondary{background:#fff;color:#374151;border:1.5px solid #e5e7eb}.program-btn-secondary:hover:not(:disabled){background:#f8fafc;border-color:#d1d5db}.program-spinner{animation:program-spin 1s linear infinite}@keyframes program-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 768px){.program-form-overlay{padding:5px}.program-form-modal{width:99%;max-height:99vh;border-radius:12px}.program-modal-header{padding:16px 20px}.program-header-content h1{font-size:1.5rem}.program-close-modal-btn{top:16px;right:20px;width:36px;height:36px}.program-form-section{padding:20px 16px}.program-form-grid{grid-template-columns:1fr;gap:16px}.program-image-upload-container{flex-direction:column;gap:16px;align-items:center;text-align:center}.program-image-preview{width:120px;height:120px}.program-upload-controls{align-items:center}.program-form-actions{padding:16px;flex-direction:column-reverse;z-index:100}.program-btn{width:100%;justify-content:center}.program-dropdown-menu{position:fixed;top:10%;left:50%;transform:translate(-50%);width:98%;max-width:none;max-height:80vh;z-index:90}}@media (min-width: 1400px){.program-form-modal{max-width:1400px;width:97%}.program-form-section{padding:24px 32px}}.program-form-content::-webkit-scrollbar,.program-workouts-list::-webkit-scrollbar{width:6px}.program-form-content::-webkit-scrollbar-track,.program-workouts-list::-webkit-scrollbar-track{background:#f1f5f9}.program-form-content::-webkit-scrollbar-thumb,.program-workouts-list::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.program-form-content::-webkit-scrollbar-thumb:hover,.program-workouts-list::-webkit-scrollbar-thumb:hover{background:#94a3b8}.program-workout-tag{background:#eef2ff;color:#6366f1;padding:8px 12px;border-radius:12px;font-size:.8rem;display:flex;align-items:center;gap:8px;max-width:100%;cursor:grab;transition:all .2s ease;border:2px solid transparent;-webkit-user-select:none;user-select:none}.program-workout-tag:hover{background:#e0e7ff;border-color:#6366f1;transform:translateY(-2px);box-shadow:0 4px 8px #6366f133}.program-workout-tag-dragging{opacity:.8;transform:rotate(5deg) scale(1.05);box-shadow:0 8px 16px #00000026;border-color:#6366f1;cursor:grabbing}.program-workout-tag:active{cursor:grabbing}.program-workout-tag-content{display:flex;flex-direction:column;min-width:0;flex:1}.program-workout-tag-name{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px;min-width:0}.program-workout-tag-meta{font-size:.7rem;opacity:.8;margin-top:2px}.program-workout-tags{display:flex;flex-wrap:wrap;gap:8px;width:100%;min-height:60px;transition:all .2s ease}.program-remove-tag{background:none;border:none;color:#6366f1;cursor:pointer;padding:4px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.program-remove-tag:hover{background:#6366f11a;transform:scale(1.1)}@media (max-width: 768px){.program-workout-tag{padding:6px 10px}.program-workout-tag-name{max-width:150px}}.programs-page{padding:32px;background:#f8fafc;min-height:100%}.programs-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:24px}.header-content h1{font-size:2rem;font-weight:700;color:#1e293b;margin:0 0 8px;background:linear-gradient(135deg,#6366f1,#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.header-actions{display:flex;align-items:center;gap:16px}.search-bar{position:relative;display:flex;align-items:center}.search-bar input{padding:12px 16px 12px 40px;border:1.5px solid #e2e8f0;border-radius:12px;outline:none;width:280px;font-size:14px;background:#fff;transition:all .3s ease;box-shadow:0 2px 8px #0000000d;height:44px;box-sizing:border-box}.search-bar input:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.search-icon{position:absolute;left:16px;color:#94a3b8;font-size:18px}.create-btn{padding:12px 20px;background:#6366f1;color:#fff;border:none;border-radius:12px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:14px;display:flex;align-items:center;gap:8px;height:44px;box-sizing:border-box}.create-btn:hover{background:#5b5cdc;transform:translateY(-1px);box-shadow:0 4px 12px #6366f14d}.programs-loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:60vh;text-align:center}.programs-loading-spinner{width:48px;height:48px;border:3px solid #e2e8f0;border-top:3px solid #6366f1;border-radius:50%;animation:programs-spin 1s linear infinite;margin-bottom:16px}.programs-loading-container p{color:#64748b;font-size:.95rem;margin:0;font-weight:500}@keyframes programs-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 768px){.programs-page{padding:20px}.programs-header{flex-direction:column;gap:16px;align-items:stretch}.header-actions{width:100%;flex-direction:column;gap:12px}.search-bar input{width:100%}.create-btn{width:100%;justify-content:center}}@media (max-width: 480px){.programs-page{padding:16px}.header-content h1{font-size:1.5rem}}@media (prefers-reduced-motion: reduce){.create-btn{transition:none}}.workout-stats-container{padding:32px 32px 0}.workout-stats-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:24px}.workout-header-content h1{font-size:2rem;font-weight:700;color:#1e293b;margin:0 0 8px;background:linear-gradient(135deg,#6366f1,#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.workout-header-actions{display:flex;align-items:center;gap:16px}.workout-search-bar{position:relative;display:flex;align-items:center}.workout-search-bar input{padding:12px 16px 12px 40px;border:1.5px solid #e2e8f0;border-radius:12px;outline:none;width:280px;font-size:14px;background:#fff;transition:all .3s ease;box-shadow:0 2px 8px #0000000d;height:44px;box-sizing:border-box}.workout-search-bar input:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.workout-search-icon{position:absolute;left:16px;color:#94a3b8;font-size:18px}.workout-create-btn{padding:12px 20px;background:#6366f1;color:#fff;border:none;border-radius:12px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:14px;display:flex;align-items:center;gap:8px;height:44px;box-sizing:border-box}.workout-create-btn:hover{background:#5b5cdc;transform:translateY(-1px);box-shadow:0 4px 12px #6366f14d}.workout-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:24px}.workout-stat-card{background:#fff;padding:20px 24px;border-radius:12px;box-shadow:0 2px 12px #00000014;border:1px solid #e2e8f0;display:flex;align-items:center;gap:16px;transition:transform .2s ease,box-shadow .2s ease}.workout-stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 20px #0000001f}.workout-stat-icon{width:44px;height:44px;border-radius:10px;background:linear-gradient(135deg,#6366f1,#8b5cf6);display:flex;align-items:center;justify-content:center;color:#fff;font-size:18px}.workout-stat-info h3{color:#64748b;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin:0 0 4px}.workout-stat-number{font-size:1.75rem;font-weight:800;color:#1e293b;margin:0}@media (max-width: 768px){.workout-stats-container{padding:20px 20px 0}.workout-stats-header{flex-direction:column;gap:16px;align-items:stretch}.workout-header-actions{width:100%;flex-direction:column;gap:12px}.workout-search-bar input{width:100%}.workout-create-btn{width:100%;justify-content:center}.workout-stats-grid{grid-template-columns:1fr}}@media (max-width: 480px){.workout-stats-container{padding:16px 16px 0}.workout-header-content h1{font-size:1.5rem}}.workout-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 12px #00000014;border:1px solid #e2e8f0;overflow:hidden;margin:0 32px 32px}.workout-table-wrapper{width:100%;overflow-x:auto;overflow-y:visible}.workout-table{display:flex;flex-direction:column;width:100%;min-width:1040px}.workout-table-row{display:grid;grid-template-columns:minmax(200px,1.2fr) minmax(300px,2fr) minmax(120px,1fr) minmax(140px,1fr) minmax(120px,1fr);gap:16px;padding:16px 24px;min-height:80px;align-items:center;width:100%;box-sizing:border-box;position:relative;transition:all .2s ease}.workout-header-row{background:#f8fafc;font-weight:600;color:#475569;font-size:.875rem;text-transform:uppercase;letter-spacing:.5px;padding:16px 24px;min-height:50px;border-bottom:1px solid #e2e8f0;cursor:default!important}.workout-data-row{align-items:center;min-height:90px;border-bottom:1px solid #f1f5f9;transition:all .2s ease;cursor:grab}.workout-data-row:hover{background:#f8fafc;transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.workout-data-row:last-child{border-bottom:none}.workout-table-cell{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;padding:4px 0;display:flex;align-items:center}.workout-dragging{background:#f8fafc!important;border:2px dashed #3b82f6!important;border-radius:8px!important;box-shadow:0 4px 12px #3b82f626!important;z-index:1000;cursor:grabbing!important}.workout-drop-over{background:linear-gradient(135deg,#dbeafe,#eff6ff)!important;border-top:2px solid #3b82f6!important;position:relative}.workout-drop-over:before{content:"";position:absolute;left:0;right:0;top:-1px;height:2px;background:#3b82f6;z-index:1}.workout-column{min-width:200px;justify-content:flex-start}.workout-exercises-column{min-width:300px;justify-content:flex-start}.workout-points-column{min-width:120px;justify-content:center}.workout-updated-column{min-width:140px;justify-content:center}.workout-actions-column{min-width:120px;justify-content:center}.workout-main-info{display:flex;align-items:center;gap:0;min-width:0;width:100%}.workout-text-info{display:flex;flex-direction:column;gap:6px;min-width:0;flex:1;width:100%}.workout-name{font-weight:600;color:#1e293b;font-size:14px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.workout-name-french{font-size:12px;color:#64748b;font-style:italic;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.workout-id{font-size:11px;color:#94a3b8;font-family:monospace;letter-spacing:.3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.workout-exercises-horizontal{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:4px 0}.workout-exercise-chip{display:flex;align-items:center;gap:8px;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-radius:20px;padding:8px 10px 8px 8px;max-width:180px;transition:all .2s ease;flex-shrink:0;box-shadow:0 1px 3px #0000000d}.workout-exercise-chip:hover{border-color:#6366f1;background:linear-gradient(135deg,#f0f4ff,#e0e7ff);transform:translateY(-1px);box-shadow:0 2px 8px #6366f126}.workout-exercise-chip-image{width:28px;height:28px;border-radius:50%;overflow:hidden;flex-shrink:0;background:#f1f5f9;display:flex;align-items:center;justify-content:center;border:2px solid #e2e8f0;transition:border-color .2s ease}.workout-exercise-chip:hover .workout-exercise-chip-image{border-color:#6366f1}.workout-exercise-chip-image img{width:100%;height:100%;object-fit:cover}.workout-exercise-chip-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#94a3b8;font-size:12px}.workout-exercise-chip-content{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.workout-exercise-chip-name{font-size:12px;font-weight:600;color:#374151;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}.workout-exercise-chip-tracking{font-size:11px;font-weight:500;color:#6366f1;background:#6366f11a;padding:2px 6px;border-radius:6px;white-space:nowrap;width:fit-content;border:1px solid rgba(99,102,241,.2)}.workout-exercise-chip-xps{font-size:11px;font-weight:700;color:#7c3aed;background:linear-gradient(135deg,#f3e8ff,#e9d5ff);padding:4px 8px;border-radius:8px;border:1px solid #ddd6fe;flex-shrink:0;margin-left:auto}.workout-exercise-more-chip{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;padding:8px 12px;border-radius:12px;font-size:12px;font-weight:600;white-space:nowrap;flex-shrink:0;box-shadow:0 1px 3px #6366f14d;height:fit-content}.workout-points-cell{display:flex;align-items:center;gap:8px;background:linear-gradient(135deg,#fef3c7,#f59e0b);padding:8px 16px;border-radius:20px;border:1px solid #f59e0b;justify-content:center;min-height:36px;width:fit-content;margin:0 auto;min-width:80px;box-shadow:0 1px 3px #f59e0b33}.workout-points-icon{color:#d97706;font-size:14px}.workout-points-value{font-size:13px;font-weight:700;color:#92400e}.workout-date-cell{display:flex;align-items:center;gap:8px;color:#64748b;font-size:13px;justify-content:center;background:#f8fafc;padding:8px 12px;border-radius:8px;border:1px solid #e2e8f0;min-height:36px}.workout-date-icon{color:#94a3b8;font-size:14px;flex-shrink:0}.workout-date-value{font-weight:500;white-space:nowrap}.workout-actions-cell{display:flex;align-items:center;gap:8px;justify-content:center}.workout-action-btn{padding:8px;border:none;border-radius:8px;cursor:pointer;font-size:14px;transition:all .3s ease;display:flex;align-items:center;justify-content:center;flex-shrink:0;width:36px;height:36px}.workout-edit-btn{background:#dbeafe;color:#1d4ed8}.workout-edit-btn:hover{background:#bfdbfe;transform:translateY(-1px)}.workout-delete-btn{background:#fee2e2;color:#dc2626}.workout-delete-btn:hover{background:#fecaca;transform:translateY(-1px)}.workout-empty-state{padding:60px 40px;text-align:center;color:#64748b}.workout-empty-icon{font-size:3rem;color:#cbd5e1;margin-bottom:16px}.workout-empty-state h3{margin:0 0 8px;color:#475569;font-size:1.25rem}.workout-empty-state p{margin:0;font-size:.9rem}@media (max-width: 768px){.workout-table-container{margin:0 16px 16px}.workout-table-wrapper{overflow-x:auto}.workout-table{min-width:900px}.workout-table-row{padding:12px 16px;gap:12px}.workout-exercise-chip{max-width:180px;padding:6px 8px 6px 6px;min-height:52px}.workout-exercise-chip-name{font-size:11px}.workout-exercise-chip-tracking{font-size:10px;padding:1px 4px}.workout-exercise-chip-image{width:28px;height:28px}}@media (max-width: 480px){.workout-exercise-chip{max-width:160px}}.workout-form-overlay{position:fixed;inset:0;background:#0009;display:flex;justify-content:center;align-items:center;z-index:1000;padding:10px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.workout-form-modal{background:#fff;border-radius:16px;width:98%;max-width:1200px;max-height:98vh;display:flex;flex-direction:column;box-shadow:0 25px 50px -12px #00000040;overflow:hidden}.workout-modal-header{padding:20px 24px;border-bottom:1px solid #e5e7eb;background:#fff;display:flex;justify-content:center;align-items:center;position:relative}.workout-header-content-tab{text-align:center}.workout-header-content-tab h1{margin:0 0 4px;font-size:1.75rem;font-weight:700;color:#6366f1}.workout-header-content-tab p{margin:0;color:#6b7280;font-size:.95rem}.workout-close-modal-btn{position:absolute;top:20px;right:24px;background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;color:#374151;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.workout-close-modal-btn:hover{background:#f3f4f6;border-color:#d1d5db}.workout-form{display:flex;flex-direction:column;height:100%;width:100%}.workout-form-content{padding-bottom:180px;max-height:calc(98vh - 80px);overflow-y:auto;width:100%}.workout-form-section{padding:24px 20px;border-bottom:1px solid #f3f4f6;width:100%}.workout-form-section:last-of-type{border-bottom:none}.workout-section-header{margin-bottom:20px}.workout-section-header h2{margin:0 0 8px;font-size:1.25rem;font-weight:600;color:#111827}.workout-section-header p{margin:0;color:#6b7280;font-size:.9rem}.workout-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;width:100%;max-width:none}.workout-form-group{display:flex;flex-direction:column;gap:8px;width:100%}.workout-form-group.full-width{grid-column:1 / -1}.workout-form-label{font-weight:500;color:#374151;font-size:.9rem}.workout-form-input,.workout-form-textarea{padding:12px 16px;border:1.5px solid #e5e7eb;border-radius:8px;font-size:.95rem;transition:all .2s ease;background:#fff;font-family:inherit;width:100%;box-sizing:border-box;min-width:0}.workout-form-input:focus,.workout-form-textarea:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.workout-form-input::placeholder,.workout-form-textarea::placeholder{color:#9ca3af}.workout-form-textarea{resize:vertical;min-height:80px;line-height:1.5;width:100%}.workout-exercises-section{width:100%;position:relative}.workout-dropdown-container{position:relative;width:100%;z-index:50}.workout-dropdown-trigger{padding:14px 16px;border:1.5px solid #e5e7eb;border-radius:8px;background:#fff;cursor:pointer;transition:all .2s ease;display:flex;justify-content:space-between;align-items:center;width:100%}.workout-dropdown-trigger:hover{border-color:#6366f1}.workout-trigger-text{color:#374151;font-size:.95rem}.workout-dropdown-menu{position:fixed;left:50%;transform:translate(-50%);top:50%;width:95%;max-width:800px;max-height:70vh;overflow-y:auto;background:#fff;border:1.5px solid #e5e7eb;border-radius:8px;box-shadow:0 10px 25px -5px #00000026;z-index:2000}.workout-dropdown-header{padding:16px 20px;border-bottom:1px solid #f3f4f6;background:#fafafa;display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.workout-dropdown-header h3{margin:0;font-size:1rem;font-weight:600;color:#111827}.workout-selected-count{background:#6366f1;color:#fff;padding:4px 8px;border-radius:12px;font-size:.8rem;font-weight:500}.workout-search-box{padding:16px 20px;border-bottom:1px solid #f3f4f6;position:relative;display:flex;align-items:center;flex-shrink:0;width:100%}.workout-search-box svg{position:absolute;left:32px;color:#9ca3af}.workout-search-input{width:100%;padding:10px 10px 10px 32px;border:1px solid #e5e7eb;border-radius:6px;font-size:.9rem}.workout-search-input:focus{outline:none;border-color:#6366f1}.workout-exercises-list{flex:1;overflow-y:auto;padding:8px;max-height:250px;width:100%}.workout-exercise-item{display:flex;align-items:flex-start;gap:12px;padding:12px;border-radius:6px;cursor:pointer;transition:background-color .2s ease;margin-bottom:4px;width:100%}.workout-exercise-item:hover{background:#f8fafc}.workout-exercise-item:has(.workout-checkbox:checked){background:#eef2ff}.workout-checkbox{margin-top:2px}.workout-exercise-image{width:40px;height:40px;border-radius:6px;overflow:hidden;flex-shrink:0;background:#f1f5f9;border:1px solid #e5e7eb}.workout-exercise-image img{width:100%;height:100%;object-fit:cover}.workout-exercise-image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#94a3b8;background:#f8fafc}.workout-exercise-info{flex:1;width:100%}.workout-exercise-name{font-weight:500;color:#374151;font-size:.9rem;margin-bottom:2px}.workout-exercise-tracking{font-weight:700;color:#6366f1;background:#6366f11a;padding:2px 6px;border-radius:4px;margin-left:4px}.workout-exercise-meta{font-size:.8rem;color:#6b7280}.workout-empty-state{text-align:center;color:#6b7280;padding:40px 20px;font-size:.9rem;width:100%}.workout-dropdown-footer{padding:16px 20px;border-top:1px solid #f3f4f6;background:#fafafa;display:flex;justify-content:flex-end;flex-shrink:0;width:100%}.workout-done-btn{background:#6366f1;color:#fff;border:none;border-radius:6px;padding:8px 20px;font-size:.9rem;font-weight:500;cursor:pointer;transition:background-color .2s ease}.workout-done-btn:hover{background:#5b5cdc}.workout-selected-exercises{margin-top:16px;width:100%}.workout-selected-header{font-weight:500;color:#374151;margin-bottom:8px;font-size:.9rem}.workout-exercise-tags{display:flex;flex-wrap:wrap;gap:8px;width:100%}.workout-exercise-tag{background:#eef2ff;color:#6366f1;padding:6px 10px;border-radius:12px;font-size:.8rem;display:flex;align-items:center;gap:6px;max-width:100%}.workout-exercise-tag-content{display:flex;flex-direction:column;min-width:0;flex:1}.workout-exercise-tag-name{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:160px;min-width:0}.workout-exercise-tag-tracking{font-size:.7rem;opacity:.8;margin-top:2px}.workout-exercise-tag-image{width:20px;height:20px;border-radius:4px;overflow:hidden;flex-shrink:0;background:#f1f5f9;border:1px solid #e5e7eb}.workout-exercise-tag-image img{width:100%;height:100%;object-fit:cover}.workout-exercise-tag-image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#94a3b8;background:#f8fafc;font-size:10px}.workout-exercise-tag-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:150px}.workout-remove-tag{width:16px;height:16px;display:flex;align-items:center;justify-content:center;background:none;border:none;color:#6366f1;cursor:pointer;padding:0;border-radius:50%;transition:background-color .2s ease}.workout-remove-tag:hover{background:#6366f126}.workout-form-actions{position:sticky;bottom:0;background:#fff;border-top:1px solid #e5e7eb;box-shadow:0 -4px 8px #0000000d;padding:16px 20px;display:flex;justify-content:flex-end;gap:12px;z-index:10;width:100%;width:auto}.workout-btn{padding:12px 24px;border-radius:8px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s ease;border:none;display:flex;align-items:center;gap:8px}.workout-btn-primary{background:#6366f1;color:#fff}.workout-btn-primary:hover:not(:disabled){background:#5b5cdc;transform:translateY(-1px)}.workout-btn-primary:disabled{background:#9ca3af;cursor:not-allowed;transform:none}.workout-btn-secondary{background:#fff;color:#374151;border:1.5px solid #e5e7eb}.workout-btn-secondary:hover:not(:disabled){background:#f8fafc;border-color:#d1d5db}.workout-spinner{animation:workout-spin 1s linear infinite}@keyframes workout-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 768px){.workout-form-overlay{padding:5px}.workout-form-modal{width:99%;max-height:99vh;border-radius:12px}.workout-modal-header{padding:16px 20px}.workout-header-content-tab h1{font-size:1.5rem}.workout-close-modal-btn{top:16px;right:20px;width:36px;height:36px}.workout-form-section{padding:20px 16px}.workout-form-grid{grid-template-columns:1fr;gap:16px}.workout-form-actions{padding:16px;flex-direction:column-reverse;z-index:100}.workout-btn{width:100%;justify-content:center}.workout-dropdown-menu{position:fixed;top:10%;left:50%;transform:translate(-50%);width:98%;max-width:none;max-height:80vh;z-index:90}.workout-exercise-tag-name{max-width:100px}}@media (min-width: 1400px){.workout-form-modal{max-width:1400px;width:97%}.workout-form-section{padding:24px 32px}}.workout-form-content::-webkit-scrollbar,.workout-exercises-list::-webkit-scrollbar{width:6px}.workout-form-content::-webkit-scrollbar-track,.workout-exercises-list::-webkit-scrollbar-track{background:#f1f5f9}.workout-form-content::-webkit-scrollbar-thumb,.workout-exercises-list::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.workout-form-content::-webkit-scrollbar-thumb:hover,.workout-exercises-list::-webkit-scrollbar-thumb:hover{background:#94a3b8}.workout-exercise-tag{background:#eef2ff;color:#6366f1;padding:8px 12px;border-radius:12px;font-size:.8rem;display:flex;align-items:center;gap:8px;max-width:100%;cursor:grab;transition:all .2s ease;border:2px solid transparent;-webkit-user-select:none;user-select:none}.workout-exercise-tag:hover{background:#e0e7ff;border-color:#6366f1;transform:translateY(-2px);box-shadow:0 4px 8px #6366f133}.workout-exercise-tag-dragging{opacity:.8;transform:rotate(5deg) scale(1.05);box-shadow:0 8px 16px #00000026;border-color:#6366f1;cursor:grabbing}.workout-exercise-tag:active{cursor:grabbing}.workout-exercise-tags{display:flex;flex-wrap:wrap;gap:8px;width:100%;min-height:60px;transition:all .2s ease}@media (max-width: 768px){.workout-exercise-tag{padding:6px 10px}}.workouts-container{width:100%;min-height:100vh;background:#f8fafc}.workouts-loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:60vh;text-align:center}.workouts-loading-spinner{width:48px;height:48px;border:3px solid #e2e8f0;border-top:3px solid #6366f1;border-radius:50%;animation:workouts-spin 1s linear infinite;margin-bottom:16px}.workouts-loading-container p{color:#64748b;font-size:.95rem;margin:0;font-weight:500}@keyframes workouts-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.workouts-page{width:100%;min-height:100vh;background:#f8fafc}.league-stats{display:flex;gap:20px;margin-bottom:24px;flex-wrap:wrap}.league-stat-card{background:#fff;padding:20px 24px;border-radius:12px;box-shadow:0 2px 12px #00000014;border:1px solid #e2e8f0;display:flex;align-items:center;gap:16px;min-width:200px;flex:1;transition:transform .2s ease,box-shadow .2s ease;max-width:375px}.league-stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 20px #0000001f}.league-stat-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:20px}.league-stat-icon.league-total-leagues{background:linear-gradient(135deg,#6366f1,#8b5cf6)}.league-stat-icon.league-total-members{background:linear-gradient(135deg,#f59e0b,#d97706)}.league-stat-info h3{color:#64748b;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin:0 0 4px}.league-stat-number{font-size:1.75rem;font-weight:800;color:#1e293b;margin:0}@media (max-width: 768px){.league-stats{flex-direction:column}.league-stat-card{min-width:auto}}@media (max-width: 480px){.league-stat-card{padding:16px 20px}.league-stat-icon{width:40px;height:40px;font-size:18px}.league-stat-number{font-size:1.5rem}}.season-history-overlay{position:fixed;inset:0;background:#0009;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.season-history-modal{background:#fff;border-radius:16px;width:100%;max-width:1000px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 25px 50px -12px #00000040;overflow:hidden}.season-modal-header{padding:24px;border-bottom:1px solid #e5e7eb;background:#fff;display:flex;justify-content:center;align-items:center;position:relative}.season-header-content{text-align:center}.season-header-content h1{margin:0 0 8px;font-size:1.75rem;font-weight:700;color:#6366f1;background:linear-gradient(135deg,#6366f1,#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.season-header-content p{margin:0;color:#6b7280;font-size:.95rem}.season-close-btn{position:absolute;top:24px;right:24px;background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;color:#374151;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.season-close-btn:hover{background:#f3f4f6;border-color:#d1d5db}.season-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#f3f4f6;border-bottom:1px solid #e5e7eb}.season-stat-card{display:flex;align-items:center;gap:16px;padding:24px;background:#fff;transition:all .3s ease}.season-stat-card:hover{background:#f9fafb;transform:translateY(-1px)}.stat-icon-wrapper{width:48px;height:48px;border-radius:10px;background:linear-gradient(135deg,#6366f1,#8b5cf6);display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-icon{color:#fff;font-size:20px}.stat-content{display:flex;flex-direction:column;gap:4px}.stat-number{font-size:1.5rem;font-weight:700;color:#111827;line-height:1}.stat-label{font-size:.875rem;color:#6b7280;font-weight:500}.season-content-section{flex:1;overflow-y:auto;padding:0}.season-empty-state{text-align:center;padding:80px 40px;color:#6b7280}.empty-icon{width:80px;height:80px;border-radius:50%;background:#f8fafc;display:flex;align-items:center;justify-content:center;margin:0 auto 24px;color:#9ca3af}.season-empty-state h3{margin:0 0 12px;color:#374151;font-size:1.25rem;font-weight:600}.season-empty-state p{margin:0;font-size:.95rem}.seasons-container{display:flex;flex-direction:column}.season-card{border-bottom:1px solid #f3f4f6;transition:all .3s ease}.season-card:last-child{border-bottom:none}.season-card-header{padding:24px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:all .3s ease}.season-card-header:hover{background:#f9fafb}.season-header-main{display:flex;align-items:center;gap:20px}.season-badge{display:flex;align-items:center;gap:8px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;padding:8px 16px;border-radius:8px;font-size:.875rem;font-weight:600}.badge-icon{font-size:14px}.season-meta-info{display:flex;align-items:center;gap:20px}.season-date,.season-participants{display:flex;align-items:center;gap:6px;color:#6b7280;font-size:.875rem;font-weight:500}.season-expand-toggle{color:#6b7280;transition:transform .3s ease}.season-content{padding:0 24px 24px;animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.leaderboard-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.leaderboard-title{margin:0;padding:20px 24px;background:#f8fafc;border-bottom:1px solid #e5e7eb;font-size:1.125rem;font-weight:600;color:#374151}.leaderboard{display:flex;flex-direction:column}.leaderboard-header{display:grid;grid-template-columns:80px 1fr 120px 140px 100px;gap:16px;padding:16px 24px;background:#fafafa;border-bottom:1px solid #e5e7eb;font-size:.75rem;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.5px}.leaderboard-content{display:flex;flex-direction:column}.leaderboard-row{display:grid;grid-template-columns:80px 1fr 120px 140px 100px;gap:16px;padding:16px 24px;align-items:center;border-bottom:1px solid #f3f4f6;transition:background-color .2s ease}.leaderboard-row:hover{background:#f9fafb}.leaderboard-row:last-child{border-bottom:none}.rank-badge{width:48px;height:48px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:.875rem;flex-shrink:0;box-shadow:0 2px 8px #00000026}.player-info{display:flex;align-items:center;gap:12px;min-width:0}.player-avatar{width:40px;height:40px;border-radius:10px;background:#f3f4f6;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0;border:2px solid white;box-shadow:0 2px 4px #0000001a}.player-avatar img{width:100%;height:100%;object-fit:cover}.avatar-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#e5e7eb;color:#6b7280}.player-name{font-weight:600;color:#111827;font-size:.875rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.player-xp{font-size:.875rem;font-weight:700;color:#6366f1;text-align:left}.completion-rate{display:flex;align-items:center;gap:12px;font-size:.875rem;font-weight:600;color:#059669}.completion-bar{flex:1;height:6px;background:#e5e7eb;border-radius:3px;overflow:hidden}.completion-fill{height:100%;background:linear-gradient(90deg,#10b981,#34d399);border-radius:3px;transition:width .3s ease}.workout-count{font-size:.875rem;font-weight:600;color:#111827;text-align:center;background:#f3f4f6;padding:4px 8px;border-radius:6px;width:fit-content;justify-self:center}.season-loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 40px;text-align:center}.season-spinner{width:40px;height:40px;border:3px solid #f3f4f6;border-top:3px solid #6366f1;border-radius:50%;animation:season-spin 1s linear infinite;margin-bottom:16px}.season-loading-state p{color:#6b7280;font-size:.95rem;margin:0}@keyframes season-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 768px){.season-history-overlay{padding:16px}.season-history-modal{max-height:calc(100vh - 32px);border-radius:12px}.season-modal-header{padding:20px}.season-header-content h1{font-size:1.5rem}.season-close-btn{top:20px;right:20px;width:36px;height:36px}.season-stats-grid{grid-template-columns:1fr}.season-stat-card{padding:20px}.season-card-header{padding:20px;flex-direction:column;align-items:flex-start;gap:12px}.season-header-main{flex-direction:column;align-items:flex-start;gap:12px;width:100%}.season-meta-info{flex-direction:column;align-items:flex-start;gap:8px;width:100%}.season-content{padding:0 20px 20px}.leaderboard-header,.leaderboard-row{grid-template-columns:60px 1fr 80px;gap:12px;padding:12px 16px}.completion-rate,.workout-count{display:none}.leaderboard-title{padding:16px 20px}}@media (max-width: 480px){.season-modal-header{padding:16px}.season-header-content h1{font-size:1.25rem}.season-stat-card{padding:16px}.stat-icon-wrapper{width:40px;height:40px}.stat-number{font-size:1.25rem}.season-card-header{padding:16px}.season-content{padding:0 16px 16px}.leaderboard-header,.leaderboard-row{grid-template-columns:50px 1fr 70px;gap:8px;padding:10px 12px}.player-avatar{width:32px;height:32px}.player-name{font-size:.8rem}}.season-content-section::-webkit-scrollbar{width:6px}.season-content-section::-webkit-scrollbar-track{background:#f1f5f9}.season-content-section::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.season-content-section::-webkit-scrollbar-thumb:hover{background:#94a3b8}.league-page{padding:32px;background:#f8fafc;min-height:100%}.league-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:24px}.league-header-content h1{font-size:2rem;font-weight:700;color:#1e293b;margin:0 0 8px;background:linear-gradient(135deg,#6366f1,#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.league-header-content p{color:#64748b;margin:0;font-size:.95rem}.league-header-actions{display:flex;align-items:center;gap:16px}.league-search-bar{position:relative;display:flex;align-items:center}.league-search-bar input{padding:12px 16px 12px 40px;border:1.5px solid #e2e8f0;border-radius:12px;width:280px;font-size:14px;background:#fff;transition:all .3s ease;box-shadow:0 2px 8px #0000000d;height:44px;box-sizing:border-box}.league-search-bar input:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a;outline:none}.league-search-icon{position:absolute;left:16px;color:#94a3b8;font-size:18px}.league-container{background:#fff;border-radius:16px;box-shadow:0 4px 24px #00000014;border:1px solid #e2e8f0;overflow:hidden}.league-table{width:100%}.league-table-row{display:grid;grid-template-columns:minmax(200px,1.5fr) minmax(150px,1fr) minmax(150px,1fr) minmax(180px,1fr) minmax(100px,.8fr) minmax(100px,.8fr) minmax(120px,1fr);gap:16px;padding:16px 24px;align-items:center;box-sizing:border-box}.league-header-row{background:#f8fafc;border-bottom:2px solid #e2e8f0;font-weight:600;color:#475569;font-size:.875rem;text-transform:uppercase;letter-spacing:.5px}.league-data-row{align-items:center;min-height:80px;border-bottom:1px solid #f1f5f9;transition:background-color .2s ease}.league-data-row:hover{background:#f8fafc}.league-data-row:last-child{border-bottom:none}.league-table-cell{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;padding:4px 0;display:flex;align-items:center}.league-column{justify-content:flex-start;min-width:200px}.league-creator-column,.league-season-column,.league-members-column{justify-content:flex-start;min-width:150px}.league-created-column{justify-content:flex-start;min-width:180px}.league-status-column{justify-content:center;min-width:100px}.league-actions-column{justify-content:center;min-width:120px}.league-main-info{display:flex;align-items:center;gap:12px;min-width:0}.league-avatar{width:48px;height:48px;border-radius:12px;background:#f1f5f9;display:flex;align-items:center;justify-content:center;border:2px solid #e2e8f0;flex-shrink:0;overflow:hidden;position:relative}.league-image{width:100%;height:100%;object-fit:cover}.league-avatar-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#6366f1,#8b5cf6)}.league-avatar-placeholder.league-hidden{display:none}.league-placeholder-icon{color:#fff;font-size:20px}.league-text-info{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.league-name{font-weight:600;color:#1e293b;font-size:15px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.league-id{font-size:11px;color:#94a3b8;font-family:monospace;letter-spacing:.3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.league-creator-cell,.league-members-cell,.league-created-cell,.league-season-cell{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:8px;background:#f8fafc;border:1px solid #e2e8f0;min-height:40px;font-size:13px;white-space:nowrap}.league-creator-icon,.league-members-icon,.league-created-icon,.league-season-icon{color:#6366f1;font-size:14px;flex-shrink:0}.league-creator-name,.league-members-count,.league-created-date,.league-season-number{font-weight:500;color:#475569;font-size:13px}.league-status-badge{border-radius:20px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;color:#fff;text-align:center;white-space:nowrap;padding:8px 12px;font-size:11px;min-width:80px;display:flex;align-items:center;justify-content:center;gap:4px;box-shadow:0 2px 4px #0000001a}.league-view-leaderboard-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border:1px;border-radius:8px;font-size:12px;font-weight:600;cursor:pointer;transition:all .3s ease;white-space:nowrap;min-width:120px;justify-content:center;letter-spacing:.2px}.league-view-leaderboard-btn:hover:not(.league-btn-disabled){background:linear-gradient(135deg,#5b5cdc,#7c3aed);transform:translateY(-1px);box-shadow:0 4px 12px #6366f14d}.league-view-leaderboard-btn:active:not(.league-btn-disabled){transform:translateY(0);box-shadow:0 2px 6px #6366f14d}.league-view-leaderboard-btn.league-btn-disabled{background:#f1f5f9;color:#94a3b8;cursor:not-allowed;transform:none;box-shadow:none;border:1px solid #e2e8f0}.league-view-leaderboard-btn.league-btn-disabled:hover{transform:none;box-shadow:none;background:#f1f5f9}.league-loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:60vh;text-align:center}.league-loading-spinner{width:48px;height:48px;border:3px solid #e2e8f0;border-top:3px solid #6366f1;border-radius:50%;animation:league-spin 1s linear infinite;margin-bottom:16px}.league-loading-container p{color:#64748b;font-size:.95rem;margin:0;font-weight:500}.league-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#64748b;text-align:center;grid-column:1 / -1}.league-empty-state h3{margin:16px 0 8px;color:#475569;font-size:1.25rem}.league-empty-state p{margin:0;font-size:.95rem}@keyframes league-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 1200px){.league-table-row{grid-template-columns:minmax(180px,1.5fr) minmax(140px,1fr) minmax(140px,1fr) minmax(160px,1fr) minmax(90px,.8fr) minmax(90px,.8fr) minmax(110px,1fr);gap:14px;padding:16px 20px}.league-header-row{padding:18px 20px}}@media (max-width: 1024px){.league-table-row{grid-template-columns:minmax(160px,1.5fr) minmax(120px,1fr) minmax(120px,1fr) minmax(140px,1fr) minmax(80px,.8fr) minmax(80px,.8fr) minmax(100px,1fr);gap:12px;padding:16px 20px}}@media (max-width: 768px){.league-page{padding:20px}.league-header{flex-direction:column;gap:16px;align-items:stretch}.league-header-actions{width:100%;flex-direction:column;gap:12px}.league-search-bar input{width:100%}.league-table-row{grid-template-columns:1fr;gap:12px;padding:20px;border-bottom:1px solid #e2e8f0}.league-header-row{display:none}.league-table-cell{justify-content:flex-start;padding:6px 0}.league-table-cell:before{content:attr(data-label);font-weight:600;color:#475569;min-width:100px;margin-right:12px;font-size:.8rem;text-transform:uppercase;letter-spacing:.5px}.league-view-leaderboard-btn{min-width:140px;padding:10px 16px;font-size:13px}}@media (max-width: 480px){.league-page{padding:16px}.league-header-content h1{font-size:1.5rem}.league-table-row{padding:16px}}@media (prefers-reduced-motion: reduce){.league-search-bar input,.league-data-row:hover,.league-view-leaderboard-btn{transition:none}}.exercise-stats-container{padding:32px 32px 0}.exercise-stats-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:24px}.exercise-header-content h1{font-size:2rem;font-weight:700;color:#1e293b;margin:0 0 8px;background:linear-gradient(135deg,#6366f1,#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.exercise-header-actions{display:flex;align-items:center;gap:16px}.exercise-search-bar{position:relative;display:flex;align-items:center}.exercise-search-bar input{padding:12px 16px 12px 40px;border:1.5px solid #e2e8f0;border-radius:12px;outline:none;width:280px;font-size:14px;background:#fff;transition:all .3s ease;box-shadow:0 2px 8px #0000000d;height:44px;box-sizing:border-box}.exercise-search-bar input:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.exercise-search-icon{position:absolute;left:16px;color:#94a3b8;font-size:18px}.exercise-create-btn{padding:12px 20px;background:#6366f1;color:#fff;border:none;border-radius:12px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:14px;display:flex;align-items:center;gap:8px;height:44px;box-sizing:border-box}.exercise-create-btn:hover{background:#5b5cdc;transform:translateY(-1px);box-shadow:0 4px 12px #6366f14d}.exercise-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:24px}.exercise-stat-card{background:#fff;padding:20px 24px;border-radius:12px;box-shadow:0 2px 12px #00000014;border:1px solid #e2e8f0;display:flex;align-items:center;gap:16px;transition:transform .2s ease,box-shadow .2s ease}.exercise-stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 20px #0000001f}.exercise-stat-icon{width:44px;height:44px;border-radius:10px;background:linear-gradient(135deg,#6366f1,#8b5cf6);display:flex;align-items:center;justify-content:center;color:#fff;font-size:18px}.exercise-stat-info h3{color:#64748b;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin:0 0 4px}.exercise-stat-number{font-size:1.75rem;font-weight:800;color:#1e293b;margin:0}@media (max-width: 768px){.exercise-stats-container{padding:20px 20px 0}.exercise-stats-header{flex-direction:column;gap:16px;align-items:stretch}.exercise-header-actions{width:100%;flex-direction:column;gap:12px}.exercise-search-bar input{width:100%}.exercise-create-btn{width:100%;justify-content:center}.exercise-stats-grid{grid-template-columns:1fr}}@media (max-width: 480px){.exercise-stats-container{padding:16px 16px 0}.exercise-header-content h1{font-size:1.5rem}}.exercise-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 12px #00000014;border:1px solid #e2e8f0;overflow:hidden;margin:0 32px 32px}.exercise-table-wrapper{width:100%;overflow-x:auto;overflow-y:visible}.exercise-table{display:flex;flex-direction:column;width:100%;min-width:980px}.exercise-table-row{display:grid;grid-template-columns:80px minmax(200px,1.5fr) minmax(120px,1fr) minmax(100px,1fr) minmax(120px,1fr) minmax(100px,1fr) minmax(140px,1fr) minmax(120px,1fr);gap:16px;padding:16px 24px;min-height:80px;align-items:center;width:100%;box-sizing:border-box;position:relative;transition:all .2s ease}.exercise-header-row{background:#f8fafc;font-weight:600;color:#475569;font-size:.875rem;text-transform:uppercase;letter-spacing:.5px;padding:16px 24px;min-height:50px;border-bottom:1px solid #e2e8f0;cursor:default!important}.exercise-data-row{align-items:center;min-height:80px;border-bottom:1px solid #f1f5f9;transition:all .2s ease;cursor:grab}.exercise-data-row:hover{background:#f8fafc;transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.exercise-data-row:last-child{border-bottom:none}.exercise-table-cell{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;padding:4px 0;display:flex;align-items:center}.exercise-dragging{background:#f8fafc!important;border:2px dashed #3b82f6!important;border-radius:8px!important;box-shadow:0 4px 12px #3b82f626!important;z-index:1000;cursor:grabbing!important}.exercise-drop-over{background:linear-gradient(135deg,#dbeafe,#eff6ff)!important;border-top:2px solid #3b82f6!important;position:relative}.exercise-drop-over:before{content:"";position:absolute;left:0;right:0;top:-1px;height:2px;background:#3b82f6;z-index:1}.exercise-image-column{min-width:80px;justify-content:center}.exercise-name-column{min-width:200px;justify-content:flex-start}.exercise-tracking-column{min-width:120px;justify-content:center}.exercise-xp-column{min-width:100px;justify-content:center}.exercise-range-column{min-width:120px;justify-content:center}.exercise-series-column{min-width:100px;justify-content:center}.exercise-updated-column{min-width:140px;justify-content:center}.exercise-actions-column{min-width:120px;justify-content:center}.exercise-image-cell{display:flex;align-items:center;justify-content:center}.exercise-image{width:60px;height:60px;border-radius:8px;object-fit:cover;border:1.5px solid #e2e8f0}.exercise-image-placeholder{width:60px;height:60px;border-radius:8px;background:#f8fafc;border:1.5px solid #dae0e7;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:11px;transition:all .2s ease}.exercise-image-placeholder-icon{color:#7a8596;font-size:16px;flex-shrink:0}.exercise-text-info{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1;width:100%}.exercise-name{font-weight:600;color:#1e293b;font-size:14px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.exercise-name-french{font-size:12px;color:#64748b;font-style:italic;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.exercise-id{font-size:11px;color:#94a3b8;font-family:monospace;letter-spacing:.3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.exercise-xp-cell{display:flex;align-items:center;gap:6px;background:linear-gradient(135deg,#fef3c7,#f59e0b);padding:8px 16px;border-radius:20px;border:1px solid #f59e0b;justify-content:center;min-height:36px;width:fit-content;margin:0 auto;min-width:80px}.exercise-xp-icon{color:#d97706;font-size:14px}.exercise-xp-value{font-size:13px;font-weight:700;color:#d97706}.exercise-range-cell{display:flex;align-items:center;justify-content:center;gap:8px;background:linear-gradient(135deg,#f0f9ff,#e0f2fe);padding:8px 12px;border-radius:12px;border:1px solid #bae6fd;min-height:36px;width:fit-content;margin:0 auto;min-width:100px}.exercise-range-min,.exercise-range-max{font-size:13px;font-weight:700;color:#0369a1;padding:2px 6px;background:#fff;border-radius:6px;border:1px solid #bae6fd}.exercise-range-separator{color:#0ea5e9;font-size:12px;font-weight:700}.exercise-series-cell{display:flex;align-items:center;justify-content:center}.exercise-series-badge{background:linear-gradient(135deg,#ecfdf5,#d1fae5);color:#065f46;font-size:13px;font-weight:700;padding:8px 16px;border-radius:12px;border:1px solid #a7f3d0;min-height:36px;min-width:60px;display:flex;align-items:center;justify-content:center}.exercise-date-cell{display:flex;align-items:center;gap:8px;color:#64748b;font-size:13px;justify-content:center;background:#f8fafc;padding:8px 12px;border-radius:8px;border:1px solid #e2e8f0;min-height:36px}.exercise-date-icon{color:#94a3b8;font-size:14px;flex-shrink:0}.exercise-date-value{font-weight:500;white-space:nowrap}.exercise-actions-cell{display:flex;align-items:center;gap:6px;justify-content:center}.exercise-action-btn{padding:6px;border:none;border-radius:8px;cursor:pointer;font-size:13px;transition:all .3s ease;display:flex;align-items:center;justify-content:center;flex-shrink:0;width:32px;height:32px}.exercise-edit-btn{background:#dbeafe;color:#1d4ed8}.exercise-edit-btn:hover{background:#bfdbfe;transform:translateY(-1px)}.exercise-delete-btn{background:#fee2e2;color:#dc2626}.exercise-delete-btn:hover{background:#fecaca;transform:translateY(-1px)}.exercise-empty-state{padding:60px 40px;text-align:center;color:#64748b}.exercise-empty-icon{font-size:3rem;color:#cbd5e1;margin-bottom:16px}.exercise-empty-state h3{margin:0 0 8px;color:#475569;font-size:1.25rem}.exercise-empty-state p{margin:0;font-size:.9rem}.exercise-tracking-cell{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:12px;font-size:13px;font-weight:600;min-height:36px;width:fit-content;margin:0 auto;min-width:100px;justify-content:center}.exercise-tracking-reps{background:linear-gradient(135deg,#ecfdf5,#d1fae5);color:#065f46;border:1px solid #a7f3d0}.exercise-tracking-seconds{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);color:#0369a1;border:1px solid #bae6fd}.exercise-tracking-icon{font-size:14px;flex-shrink:0}.exercise-tracking-value{white-space:nowrap}@media (max-width: 768px){.exercise-table-container{margin:0 16px 16px}.exercise-table-wrapper{overflow-x:auto}.exercise-table{min-width:980px}.exercise-table-row{padding:8px 16px;gap:12px}}.exercise-duplicate-confirm{position:relative;background:linear-gradient(135deg,#f0fdf4,#dcfce7)!important;border:2px solid #22c55e!important;box-shadow:0 4px 20px #22c55e26!important;z-index:10;transform:scale(1.02);transition:all .3s cubic-bezier(.4,0,.2,1)}.exercise-duplicate-overlay{position:absolute;inset:0;background:#fffffffa;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:25;border-radius:8px;animation:fadeIn .2s ease-out}.exercise-duplicate-confirmation{text-align:center;padding:24px;background:#fff;border-radius:16px;box-shadow:0 20px 40px #00000026,0 8px 32px #22c55e1a;border:1px solid #e2e8f0;min-width:320px;max-width:380px;animation:slideUp .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.exercise-duplicate-confirmation:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#22c55e,#16a34a)}.exercise-duplicate-icon{width:48px;height:48px;background:linear-gradient(135deg,#dcfce7,#bbf7d0);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;border:2px solid #22c55e;color:#16a34a;font-size:20px}.exercise-duplicate-message{font-weight:600;color:#1e293b;margin-bottom:20px;font-size:15px;line-height:1.5;padding:0 8px}.exercise-duplicate-message strong{color:#15803d;font-weight:700}.exercise-duplicate-actions{display:flex;gap:12px;justify-content:center;margin-top:8px}.exercise-confirm-btn,.exercise-cancel-btn{padding:10px 20px;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;gap:8px;min-width:100px;justify-content:center;position:relative;overflow:hidden}.exercise-confirm-btn{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;box-shadow:0 4px 12px #22c55e4d}.exercise-confirm-btn:hover{background:linear-gradient(135deg,#16a34a,#15803d);transform:translateY(-2px);box-shadow:0 6px 20px #22c55e66}.exercise-confirm-btn:active{transform:translateY(0);box-shadow:0 2px 8px #22c55e4d}.exercise-cancel-btn{background:#fff;color:#64748b;border:2px solid #e2e8f0;box-shadow:0 2px 8px #0000000d}.exercise-cancel-btn:hover{background:#f8fafc;border-color:#cbd5e1;color:#475569;transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.exercise-cancel-btn:active{transform:translateY(0);box-shadow:0 2px 8px #0000000d}.exercise-confirm-btn:disabled,.exercise-cancel-btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.exercise-duplicate-confirm:hover{transform:scale(1.02)!important;box-shadow:0 4px 20px #22c55e26!important}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.exercise-duplicate-success{background:linear-gradient(135deg,#f0fdf4,#dcfce7)!important;border:2px solid #22c55e!important;animation:successPulse .6s ease-in-out}@keyframes successPulse{0%{box-shadow:0 0 #22c55e66}70%{box-shadow:0 0 0 10px #22c55e00}to{box-shadow:0 0 #22c55e00}}@media (max-width: 768px){.exercise-duplicate-confirmation{min-width:280px;max-width:320px;padding:20px;margin:0 16px}.exercise-duplicate-message{font-size:14px}.exercise-confirm-btn,.exercise-cancel-btn{padding:8px 16px;min-width:90px;font-size:13px}.exercise-duplicate-actions{gap:10px}}.exercise-duplicate-btn{background:#f0fdf4;color:#16a34a;border:1px solid #dcfce7}.exercise-duplicate-btn:hover{background:#dcfce7;color:#15803d;border-color:#bbf7d0;transform:translateY(-1px)}.exercise-form-overlay{position:fixed;inset:0;background:#0009;display:flex;justify-content:center;align-items:center;z-index:1000;padding:10px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.exercise-form-modal{background:#fff;border-radius:16px;width:98%;max-width:1200px;max-height:98vh;display:flex;flex-direction:column;box-shadow:0 25px 50px -12px #00000040;overflow:hidden}.exercise-modal-header{padding:20px 24px;border-bottom:1px solid #e5e7eb;background:#fff;display:flex;justify-content:center;align-items:center;position:relative}.exercise-header-content-tab{text-align:center}.exercise-header-content-tab h1{margin:0 0 4px;font-size:1.75rem;font-weight:700;color:#6366f1;background:linear-gradient(135deg,#6366f1,#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.exercise-header-content-tab p{margin:0;color:#6b7280;font-size:.95rem}.exercise-close-modal-btn{position:absolute;top:20px;right:24px;background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;color:#374151;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.exercise-close-modal-btn:hover{background:#f3f4f6;border-color:#d1d5db}.exercise-form{display:flex;flex-direction:column;height:100%;width:100%}.exercise-form-content{padding-bottom:180px;max-height:calc(98vh - 80px);overflow-y:auto;width:100%}.exercise-form-section{padding:24px 20px;border-bottom:1px solid #f3f4f6;width:100%}.exercise-form-section:last-of-type{border-bottom:none}.exercise-section-header{margin-bottom:20px}.exercise-section-header h2{margin:0 0 8px;font-size:1.25rem;font-weight:600;color:#111827}.exercise-section-header p{margin:0;color:#6b7280;font-size:.9rem}.exercise-image-upload-section{width:100%}.exercise-image-upload-container{display:flex;align-items:flex-start;gap:24px;width:100%}.exercise-image-preview-wrapper{flex-shrink:0}.exercise-image-preview{position:relative;width:140px;height:140px;border-radius:12px;overflow:hidden;background:#f8fafc;border:1px dashed #d1d5db;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.exercise-preview-image{width:100%;height:100%;object-fit:cover}.exercise-remove-image-btn{position:absolute;top:8px;right:8px;width:28px;height:28px;background:#ef4444f2;color:#fff;border:none;border-radius:6px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.exercise-remove-image-btn:hover:not(:disabled){background:#dc2626;transform:scale(1.05)}.exercise-remove-image-btn:disabled{background:#9ca3af;cursor:not-allowed}.exercise-image-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#9ca3af;text-align:center;width:100%;height:100%}.exercise-image-placeholder svg{opacity:.7}.exercise-upload-controls{flex:1;display:flex;flex-direction:column;gap:12px;width:100%}.exercise-image-input{display:none}.exercise-upload-btn{background:#6366f1;color:#fff;border:none;border-radius:8px;padding:12px 20px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:8px;width:fit-content}.exercise-upload-btn:hover:not(:disabled){background:#5b5cdc;transform:translateY(-1px);box-shadow:0 4px 12px #6366f14d}.exercise-upload-btn:disabled{background:#9ca3af;cursor:not-allowed;transform:none}.exercise-upload-hint{margin:0;color:#6b7280;font-size:.8rem}.exercise-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;width:100%;max-width:none}.exercise-form-group{display:flex;flex-direction:column;gap:8px;width:100%}.exercise-form-group.full-width{grid-column:1 / -1}.exercise-form-label{font-weight:500;color:#374151;font-size:.9rem}.exercise-form-input,.exercise-form-textarea{padding:12px 16px;border:1.5px solid #e5e7eb;border-radius:8px;font-size:.95rem;transition:all .2s ease;background:#fff;font-family:inherit;width:100%;box-sizing:border-box;min-width:0}.exercise-form-input:focus,.exercise-form-textarea:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.exercise-form-input:disabled,.exercise-form-textarea:disabled{background:#f8fafc;color:#9ca3af;cursor:not-allowed}.exercise-form-input::placeholder,.exercise-form-textarea::placeholder{color:#9ca3af}.exercise-form-textarea{resize:vertical;min-height:80px;line-height:1.5;width:100%}.exercise-form-actions{position:sticky;bottom:0;background:#fff;border-top:1px solid #e5e7eb;box-shadow:0 -4px 8px #0000000d;padding:16px 20px;display:flex;justify-content:flex-end;gap:12px;z-index:10;width:100%;width:auto}.exercise-btn{padding:12px 24px;border-radius:8px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s ease;border:none;display:flex;align-items:center;gap:8px}.exercise-btn-primary{background:#6366f1;color:#fff}.exercise-btn-primary:hover:not(:disabled){background:#5b5cdc;transform:translateY(-1px);box-shadow:0 4px 12px #6366f14d}.exercise-btn-primary:disabled{background:#9ca3af;cursor:not-allowed;transform:none}.exercise-btn-secondary{background:#fff;color:#374151;border:1.5px solid #e5e7eb}.exercise-btn-secondary:hover:not(:disabled){background:#f8fafc;border-color:#d1d5db}.exercise-btn-secondary:disabled{background:#f8fafc;color:#9ca3af;cursor:not-allowed}.exercise-spinner{animation:exercise-spin 1s linear infinite}@keyframes exercise-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 768px){.exercise-form-overlay{padding:5px}.exercise-form-modal{width:99%;max-height:99vh;border-radius:12px}.exercise-modal-header{padding:16px 20px}.exercise-header-content-tab h1{font-size:1.5rem}.exercise-close-modal-btn{top:16px;right:20px;width:36px;height:36px}.exercise-form-section{padding:20px 16px}.exercise-form-grid{grid-template-columns:1fr;gap:16px}.exercise-image-upload-container{flex-direction:column;gap:16px;align-items:center;text-align:center}.exercise-image-preview{width:120px;height:120px}.exercise-upload-controls{align-items:center}.exercise-upload-btn{width:100%;justify-content:center}.exercise-form-actions{padding:16px;flex-direction:column-reverse;z-index:100}.exercise-btn{width:100%;justify-content:center}.tracking-type-selector{grid-template-columns:1fr}.tracking-type-btn{padding:16px 12px}.tracking-type-cards{grid-template-columns:1fr;gap:12px}.tracking-type-card{padding:16px;gap:12px}.tracking-type-card-icon{width:40px;height:40px}.tracking-type-card-icon svg{font-size:1.1rem}.exercise-media-upload-grid{grid-template-columns:1fr;gap:20px}.exercise-animation-upload-container{flex-direction:column;gap:16px;align-items:center;text-align:center}.exercise-animation-preview{width:120px;height:120px}}@media (min-width: 1400px){.exercise-form-modal{max-width:1400px;width:97%}.exercise-form-section{padding:24px 32px}}.exercise-form-content::-webkit-scrollbar{width:6px}.exercise-form-content::-webkit-scrollbar-track{background:#f1f5f9}.exercise-form-content::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.exercise-form-content::-webkit-scrollbar-thumb:hover{background:#94a3b8}.tracking-type-selector{display:grid;grid-template-columns:1fr 1fr;gap:12px;width:100%}.tracking-type-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px 16px;border:2px solid #e5e7eb;border-radius:12px;background:#fff;cursor:pointer;transition:all .3s ease;text-align:center;gap:8px}.tracking-type-btn:hover{border-color:#6366f1;transform:translateY(-2px);box-shadow:0 4px 12px #6366f11a}.tracking-type-active{border-color:#6366f1;background:linear-gradient(135deg,#f0f4ff,#e0e7ff);box-shadow:0 4px 12px #6366f126}.tracking-type-icon{font-size:1.5rem;color:#6366f1;margin-bottom:4px}.tracking-type-btn span{font-weight:600;color:#374151;font-size:.95rem}.tracking-type-btn small{color:#6b7280;font-size:.8rem}.tracking-type-container{width:100%}.tracking-type-header{margin-bottom:16px}.tracking-type-header span{font-weight:600;color:#374151;font-size:.95rem}.tracking-type-cards{display:grid;grid-template-columns:1fr 1fr;gap:16px;width:100%}.tracking-type-card{display:flex;align-items:flex-start;padding:20px;border:2px solid #e5e7eb;border-radius:12px;background:#fff;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);gap:16px;position:relative;overflow:hidden}.tracking-type-card:hover{border-color:#6366f1;transform:translateY(-2px);box-shadow:0 8px 25px #6366f11a}.tracking-type-card-active{border-color:#6366f1;background:linear-gradient(135deg,#f8faff,#f0f4ff);box-shadow:0 8px 25px #6366f126}.tracking-type-card-active:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#6366f1,#8b5cf6)}.tracking-type-card-icon{position:relative;width:48px;height:48px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:#f8fafc;border:1.5px solid #e5e7eb;transition:all .3s ease}.tracking-type-card-active .tracking-type-card-icon{background:linear-gradient(135deg,#6366f1,#8b5cf6);border-color:#6366f1;color:#fff}.tracking-type-card-icon svg{font-size:1.25rem}.tracking-type-check{position:absolute;top:-4px;right:-4px;width:20px;height:20px;background:#10b981;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:.75rem;border:2px solid white}.tracking-type-card-content{flex:1;min-width:0}.tracking-type-card-content h4{margin:0 0 6px;font-size:1rem;font-weight:600;color:#111827}.tracking-type-card-content p{margin:0 0 8px;color:#6b7280;font-size:.875rem;line-height:1.4}.tracking-type-examples span{font-size:.8rem;color:#9ca3af;font-style:italic}.tracking-input-container{position:relative;display:flex;align-items:center}.tracking-input{padding-right:70px!important}.tracking-input-suffix{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:#f8fafc;padding:4px 8px;border-radius:6px;font-size:.8rem;font-weight:600;color:#64748b;border:1px solid #e2e8f0;pointer-events:none}@keyframes trackingCardActive{0%{transform:scale(1)}50%{transform:scale(1.02)}to{transform:scale(1)}}.tracking-type-card-active{animation:trackingCardActive .3s ease}.exercise-media-upload-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;width:100%}.exercise-media-upload-section{display:flex;flex-direction:column;gap:16px}.exercise-media-upload-section h3{margin:0;font-size:1.1rem;font-weight:600;color:#374151}.exercise-animation-upload-container{display:flex;align-items:flex-start;gap:24px;width:100%}.exercise-animation-preview-wrapper{flex-shrink:0}.exercise-animation-preview{position:relative;width:140px;height:140px;border-radius:12px;overflow:hidden;background:#f8fafc;border:1px dashed #d1d5db;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.exercise-preview-animation{width:100%;height:100%;object-fit:cover;opacity:.8}.exercise-remove-media-btn{position:absolute;top:8px;right:8px;width:28px;height:28px;background:#ef4444f2;color:#fff;border:none;border-radius:6px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.exercise-remove-media-btn:hover:not(:disabled){background:#dc2626;transform:scale(1.05)}.exercise-remove-media-btn:disabled{background:#9ca3af;cursor:not-allowed}.exercise-media-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#9ca3af;text-align:center;width:100%;height:100%;padding:16px}.exercise-media-placeholder svg{opacity:.7}.exercise-media-input{display:none}.exercise-animation-preview:has(.exercise-media-placeholder):hover{border-color:#d1d5db!important;transform:none!important}.exercise-animation-preview .exercise-media-placeholder,.exercise-animation-preview:hover .exercise-media-placeholder{transform:none!important;scale:1!important;width:100%!important;height:100%!important}.exercise-media-upload-section .exercise-animation-preview .exercise-media-placeholder,.exercise-media-upload-section .exercise-animation-preview:hover .exercise-media-placeholder{transform:none;transition:none}.exercise-media-upload-section .exercise-animation-preview:has(.exercise-media-placeholder):hover{border-color:#d1d5db;transform:none}.exercise-json-preview{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#6366f1;text-align:center;width:100%;height:100%;padding:16px;background:linear-gradient(135deg,#f0f4ff,#e0e7ff);border-radius:8px}.exercise-json-preview svg{opacity:.9}.exercise-json-preview span{font-weight:600;font-size:.9rem}.exercise-json-preview small{font-size:.75rem;color:#10b981;font-weight:500}.exercise-upload-error{color:#ef4444;font-size:.8rem;margin:0;font-weight:500}.exercise-animation-preview:has(.exercise-json-preview){border-style:solid;border-color:#e0e7ff;background:transparent}.exercise-animation-preview:has(.exercise-media-placeholder){border-style:dashed;border-color:#d1d5db}.exercises-container{width:100%;min-height:100vh;background:#f8fafc}.exercises-loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:60vh;text-align:center}.exercises-loading-spinner{width:48px;height:48px;border:3px solid #e2e8f0;border-top:3px solid #6366f1;border-radius:50%;animation:exercises-spin 1s linear infinite;margin-bottom:16px}.exercises-loading-container p{color:#64748b;font-size:.95rem;margin:0;font-weight:500}@keyframes exercises-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.support-stats{display:flex;gap:20px;margin-bottom:24px}.support-stat-card{background:#fff;padding:20px 24px;border-radius:12px;box-shadow:0 2px 12px #00000014;border:1px solid #e2e8f0;display:flex;align-items:center;gap:16px;min-width:200px;flex:1;transition:transform .2s ease,box-shadow .2s ease;max-width:375px}.support-stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 20px #0000001f}.support-stat-icon{width:44px;height:44px;border-radius:10px;background:linear-gradient(135deg,#6366f1,#8b5cf6);display:flex;align-items:center;justify-content:center;color:#fff;font-size:18px}.support-stat-info h3{color:#64748b;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin:0 0 4px}.support-stat-number{font-size:1.75rem;font-weight:800;color:#1e293b;margin:0}@media (max-width: 768px){.support-stats{flex-direction:column}.support-stat-card{min-width:auto}}@media (max-width: 480px){.support-stat-card{padding:16px 20px}}.support-card{background:#fff;border-radius:16px;box-shadow:0 2px 16px #00000014;border:1px solid #e2e8f0;padding:20px;transition:all .3s ease;display:flex;flex-direction:column;gap:16px;height:500px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;overflow:hidden;width:100%;box-sizing:border-box}.support-card:hover{transform:translateY(-2px);box-shadow:0 8px 32px #6366f11f;border-color:#6366f1}.support-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-shrink:0;min-width:0}.support-user-info{display:flex;align-items:flex-start;gap:12px;flex:1;min-width:0}.support-user-avatar{width:44px;height:44px;border-radius:12px;background:#f1f5f9;display:flex;align-items:center;justify-content:center;border:2px solid #e2e8f0;flex-shrink:0;overflow:hidden}.support-profile-image{width:100%;height:100%;object-fit:cover;border-radius:10px}.support-avatar-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:10px}.support-user-icon{color:#fff;font-size:18px}.support-user-details{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1;width:100%}.support-user-name{font-weight:600;color:#1e293b;font-size:.95rem;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.support-user-email,.support-user-id{display:flex;align-items:center;gap:6px;color:#64748b;font-size:.75rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.support-email-icon,.support-id-icon{color:#94a3b8;font-size:11px;flex-shrink:0}.support-date{display:flex;align-items:center;gap:6px;color:#64748b;font-size:.75rem;font-weight:500;white-space:nowrap;background:#f8fafc;padding:6px 10px;border-radius:8px;border:1px solid #e2e8f0;flex-shrink:0}.support-date-icon{color:#94a3b8;font-size:11px}.support-card-title{flex-shrink:0;width:100%}.support-card-title h3{font-size:1.1rem;font-weight:700;color:#1e293b;margin:0;line-height:1.4;display:-webkit-box;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;width:100%}.support-card-description{background:#f8fafc;border-radius:12px;border-left:4px solid #6366f1;flex:1;min-height:0;display:flex;flex-direction:column;width:100%;box-sizing:border-box;max-height:140px;position:relative}.description-scroll-container{flex:1;overflow-y:auto;overflow-x:hidden;padding:16px;width:100%;box-sizing:border-box}.description-scroll-container::-webkit-scrollbar{width:4px}.description-scroll-container::-webkit-scrollbar-track{background:#f1f5f9;border-radius:2px}.description-scroll-container::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:2px}.description-scroll-container::-webkit-scrollbar-thumb:hover{background:#94a3b8}.support-card-description p{font-size:.875rem;color:#475569;line-height:1.5;margin:0;word-wrap:break-word;overflow-wrap:break-word;width:100%}.support-description-view-btn{position:absolute;top:8px;right:8px;background:#fffffff2;border:none;width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 2px 8px #00000026;color:#475569;z-index:2}.support-description-view-btn:hover{background:#fff;transform:scale(1.05);box-shadow:0 4px 12px #0003;color:#6366f1}.support-image-section{width:100%;height:120px;border-radius:12px;overflow:hidden;background:#fafafa;border:1px solid #e2e8f0;flex-shrink:0;position:relative;box-sizing:border-box}.support-image-container{position:relative;width:100%;height:100%;background:#f8fafc;display:flex;align-items:center;justify-content:center;overflow:hidden}.support-image-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#64748b;font-size:.75rem}.support-image-spinner{width:24px;height:24px;border:2px solid #e2e8f0;border-top:2px solid #6366f1;border-radius:50%;animation:support-spin 1s linear infinite}.support-image{width:100%;height:100%;object-fit:cover;transition:all .3s ease;display:block;max-width:100%;max-height:100%}.support-image-hidden{opacity:0;position:absolute}.support-image-view-btn{position:absolute;top:8px;right:8px;background:#fffffff2;border:none;width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 2px 8px #00000026;color:#475569;z-index:2}.support-image-view-btn:hover{background:#fff;transform:scale(1.05);box-shadow:0 4px 12px #0003;color:#6366f1}.support-view-icon{font-size:14px}.support-no-image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:2px dashed #cbd5e1}.support-no-image-content{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;color:#64748b;padding:16px}.support-no-image-icon{font-size:24px;color:#cbd5e1}.support-no-image-content span{font-size:.8rem;font-weight:600;color:#64748b}.support-no-image-content p{font-size:.65rem;color:#94a3b8;margin:0;line-height:1.3}.support-image-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000f2;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;box-sizing:border-box;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.support-image-modal-content{background:transparent;border-radius:0;max-width:95vw;max-height:95vh;width:auto;height:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:visible;box-shadow:none;animation:modal-appear .3s ease-out;position:relative}.support-image-modal-close{background:#ef4444e6;border:none;width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;font-size:16px;transition:all .3s ease;flex-shrink:0;position:absolute;top:20px;right:20px;z-index:10}.support-image-modal-close:hover{background:#dc2626;transform:scale(1.05)}.support-image-modal-body{display:flex;align-items:center;justify-content:center;padding:0;background:transparent;max-width:100%;max-height:100%}.support-image-modal-img{max-width:90vw;max-height:90vh;object-fit:contain;border-radius:12px;box-shadow:0 20px 60px #0000004d}.support-description-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;box-sizing:border-box;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.support-description-modal-content{background:#fff;border-radius:16px;max-width:600px;width:90%;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d;animation:modal-appear .3s ease-out;overflow:hidden}.support-description-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e2e8f0;background:#f8fafc;flex-shrink:0}.support-description-modal-header h3{margin:0;color:#1e293b;font-size:1.25rem;font-weight:600}.support-description-modal-close{background:#ef4444e6;border:none;width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;font-size:16px;transition:all .3s ease;flex-shrink:0}.support-description-modal-close:hover{background:#dc2626;transform:scale(1.05)}.support-description-modal-body{flex:1;padding:24px;overflow-y:auto;min-height:200px}.support-description-text{color:#475569;line-height:1.6;font-size:.95rem;white-space:pre-wrap;word-wrap:break-word}.support-description-modal-footer{padding:16px 24px;border-top:1px solid #e2e8f0;background:#f8fafc;flex-shrink:0}.support-description-meta{display:flex;flex-direction:column;gap:4px}.support-description-title{font-weight:600;color:#1e293b;font-size:.9rem}.support-description-date{color:#64748b;font-size:.8rem}@keyframes modal-appear{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@media (max-width: 768px){.support-card{padding:16px;height:480px;gap:12px}.support-card-header{flex-direction:column;gap:8px}.support-date{align-self:flex-start}.support-image-section{height:110px}.support-image-modal-content{max-width:98vw;max-height:98vh}.support-image-modal-close{top:-45px;right:-10px;width:36px;height:36px;font-size:16px}.support-image-modal-img{max-width:95vw;max-height:95vh}.support-description-modal-content{width:95%;max-height:85vh}.support-description-modal-header{padding:16px 20px}.support-description-modal-body{padding:20px}.support-description-modal-footer{padding:12px 20px}.support-description-view-btn{width:28px;height:28px}}@media (max-width: 480px){.support-card{padding:12px;height:460px;border-radius:12px}.support-user-avatar{width:36px;height:36px}.support-image-section{height:100px}.support-image-view-btn{width:28px;height:28px}.support-view-icon{font-size:12px}.description-scroll-container{padding:12px}.support-card-title h3{font-size:1rem}.support-no-image-content{padding:12px}.support-no-image-icon{font-size:20px}.support-no-image-content span{font-size:.75rem}.support-no-image-content p{font-size:.6rem}.support-image-modal-close{top:-40px;right:-5px;width:32px;height:32px;font-size:14px}.support-description-modal-content{width:98%;max-height:90vh;border-radius:12px}.support-description-modal-header{padding:12px 16px}.support-description-modal-header h3{font-size:1.1rem}.support-description-modal-body{padding:16px}.support-description-text{font-size:.9rem}.support-description-modal-footer{padding:10px 16px}.support-description-view-btn{width:28px;height:28px;bottom:6px;right:6px}}.support-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:24px;width:100%}.support-grid-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;color:#64748b;text-align:center;background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;border:1px solid #e2e8f0}.support-grid-empty h3{margin:20px 0 8px;color:#475569;font-size:1.25rem;font-weight:600}.support-grid-empty p{margin:0;font-size:.95rem;color:#64748b}@media (max-width: 1200px){.support-grid{grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px}}@media (max-width: 768px){.support-grid{grid-template-columns:1fr;gap:16px}.support-grid-empty{padding:60px 20px}}@media (max-width: 480px){.support-grid{grid-template-columns:1fr}}.support-page{padding:32px;background:#f8fafc;min-height:100vh;width:100%;box-sizing:border-box}.support-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:24px}.support-header-content h1{font-size:2rem;font-weight:700;color:#1e293b;margin:0 0 8px;background:linear-gradient(135deg,#6366f1,#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.support-header-content p{color:#64748b;font-size:.95rem;margin:0;font-weight:500}.support-header-actions{display:flex;align-items:center;gap:16px}.support-search-bar{position:relative;display:flex;align-items:center}.support-search-bar input{padding:12px 16px 12px 40px;border:1.5px solid #e2e8f0;border-radius:12px;outline:none;width:280px;font-size:14px;background:#fff;transition:all .3s ease;box-shadow:0 2px 8px #0000000d;height:44px;box-sizing:border-box}.support-search-bar input:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.support-search-icon{position:absolute;left:16px;color:#94a3b8;font-size:18px}.support-loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:60vh;text-align:center}.support-loading-spinner{width:48px;height:48px;border:3px solid #e2e8f0;border-top:3px solid #6366f1;border-radius:50%;animation:support-spin 1s linear infinite;margin-bottom:16px}.support-loading-container p{color:#64748b;font-size:.95rem;margin:0;font-weight:500}@keyframes support-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 768px){.support-page{padding:20px}.support-header{flex-direction:column;gap:16px;align-items:stretch}.support-header-actions{width:100%;flex-direction:column;gap:12px}.support-search-bar input{width:100%}}@media (max-width: 480px){.support-page{padding:16px}.support-header-content h1{font-size:1.5rem}}@media (prefers-reduced-motion: reduce){.support-search-bar input{transition:none}}.support-page-wrapper{width:100%;min-height:100vh;background:#f8fafc}.version-form-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background:#0009;display:flex;align-items:center;justify-content:center;z-index:10000}.version-form-modal{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;width:90%;max-width:500px;max-height:90vh;overflow-y:auto}.version-form-header{padding:24px 24px 16px;border-bottom:1px solid #e5e7eb}.version-form-header h2{margin:0 0 4px;font-size:1.5rem;font-weight:700;color:#6366f1}.version-form-header p{margin:0;color:#6b7280;font-size:.875rem}.version-form{padding:24px}.form-group{margin-bottom:20px}.form-label{display:block;font-weight:500;color:#374151;font-size:.875rem;margin-bottom:6px}.form-input{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;transition:all .2s ease;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace}.form-input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.form-input.error{border-color:#ef4444}.error-message{color:#ef4444;font-size:.75rem;margin-top:4px}.version-form-footer{display:flex;gap:12px;justify-content:flex-end;padding-top:20px;border-top:1px solid #e5e7eb}.btn-primary,.btn-secondary{padding:10px 20px;border:none;border-radius:6px;font-weight:500;font-size:.875rem;cursor:pointer;transition:all .2s ease;min-width:100px}.btn-primary{background:#6366f1;color:#fff}.btn-primary:hover:not(:disabled){background:#4f46e5}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:#f3f4f6;color:#374151;border:1px solid #d1d5db}.btn-secondary:hover:not(:disabled){background:#e5e7eb}.versions-container{width:100%;min-height:100vh;background:#f8fafc;padding:0}.versions-loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:60vh;text-align:center}.versions-loading-spinner{width:48px;height:48px;border:3px solid #e2e8f0;border-top:3px solid #6366f1;border-radius:50%;animation:versions-spin 1s linear infinite;margin-bottom:16px}.versions-loading-container p{color:#64748b;font-size:.95rem;margin:0;font-weight:500}@keyframes versions-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.versions-header{background:#fff;padding:24px 32px;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center}.versions-title h1{font-size:2rem;font-weight:700;color:#1e293b;margin:0 0 8px;background:linear-gradient(135deg,#6366f1,#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.versions-edit-button{padding:12px 20px;background:#6366f1;color:#fff;border:none;border-radius:12px;width:auto;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:14px;display:flex;align-items:center;gap:8px;height:44px;box-sizing:border-box}.versions-edit-button:hover{background:#5b5cdc;transform:translateY(-1px);box-shadow:0 4px 12px #6366f14d}.versions-content{padding:32px;max-width:800px;margin:0 auto}.versions-grid{display:flex;flex-direction:column;gap:16px;margin-bottom:24px}.version-item{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px;display:flex;justify-content:space-between;align-items:center;transition:all .2s ease}.version-item:hover{border-color:#d1d5db;box-shadow:0 2px 8px #0000000d}.version-platform{display:flex;align-items:center;gap:16px}.platform-icon{width:48px;height:48px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.platform-icon svg{width:24px;height:24px}.platform-icon.android{background:#dcfce7;color:#16a34a}.platform-icon.ios{background:#f3f4f6;color:#374151}.platform-details h3{color:#1f2937;font-size:1.125rem;font-weight:600;margin:0 0 4px}.platform-subtitle{color:#6b7280;font-size:.875rem;margin:0}.version-number{font-size:1.25rem;font-weight:600;color:#1f2937;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;background:#f8fafc;padding:8px 16px;border-radius:8px;border:1px solid #e2e8f0}.versions-meta{padding:20px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;text-align:center}.last-updated{display:flex;align-items:center;justify-content:center;gap:8px}.meta-label{color:#64748b;font-size:.875rem;font-weight:500}.meta-value{color:#1f2937;font-size:.875rem;font-weight:600}@media (max-width: 768px){.versions-header{padding:20px;flex-direction:column;gap:16px;align-items:flex-start}.versions-content{padding:20px}.version-item{flex-direction:column;gap:16px;align-items:flex-start}.version-platform{width:100%}.version-number{align-self:stretch;text-align:center}.last-updated{flex-direction:column;gap:4px}}.settings-page{width:100%;min-height:100vh;background:#f8fafc}.app-container{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(135deg,#f0f4ff,#d9e4ff);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;padding:0;margin:0}body,html{margin:0;padding:0}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5}#root{height:100vh}.loading-spinner{display:flex;justify-content:center;align-items:center;height:100vh;font-size:18px;color:#666}
