body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{text-align:center}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}:root{--orange-50:#fff7ed;--orange-100:#ffedd5;--orange-200:#fed7aa;--orange-300:#fdba74;--orange-400:#fb923c;--orange-500:#f97316;--orange-600:#ea580c;--orange-700:#c2410c;--orange-800:#9a3412;--orange-900:#7c2d12;--slate-50:#f8fafc;--slate-100:#f1f5f9;--slate-200:#e2e8f0;--slate-300:#cbd5e1;--slate-400:#94a3b8;--slate-500:#64748b;--slate-600:#475569;--slate-700:#334155;--slate-800:#1e293b;--slate-900:#0f172a;--gray-50:#f9fafb;--gray-100:#f3f4f6;--gray-200:#e5e7eb;--gray-300:#d1d5db;--gray-400:#9ca3af;--gray-500:#6b7280;--gray-600:#4b5563;--gray-700:#374151;--gray-800:#1f2937;--gray-900:#111827;--color-primary:var(--orange-500);--color-primary-hover:var(--orange-600);--color-primary-active:var(--orange-700);--color-primary-light:var(--orange-100);--color-primary-dark:var(--orange-700);--color-secondary:var(--slate-500);--color-secondary-hover:var(--slate-600);--color-secondary-active:var(--slate-700);--color-secondary-light:var(--slate-100);--color-secondary-dark:var(--slate-700);--color-success:#22c55e;--color-success-hover:#16a34a;--color-success-light:#dcfce7;--color-warning:#f59e0b;--color-warning-hover:#d97706;--color-warning-light:#fef3c7;--color-error:#ef4444;--color-error-hover:#dc2626;--color-error-light:#fecaca;--color-info:#3b82f6;--color-info-hover:#2563eb;--color-info-light:#dbeafe;--color-text-primary:var(--slate-900);--color-text-secondary:var(--slate-600);--color-text-muted:var(--slate-400);--color-text-inverse:#fff;--color-text-on-primary:#fff;--color-text-on-secondary:#fff;--color-background:#fff;--color-background-secondary:var(--slate-50);--color-background-tertiary:var(--slate-100);--color-background-muted:var(--slate-200);--color-border:var(--slate-200);--color-border-light:var(--slate-100);--color-border-strong:var(--slate-300);--color-border-focus:var(--orange-400);--color-border-error:var(--color-error);--color-button-primary:var(--color-primary);--color-button-primary-hover:var(--color-primary-hover);--color-button-secondary:var(--color-secondary);--color-button-secondary-hover:var(--color-secondary-hover);--color-logout:var(--color-error);--color-logout-hover:var(--color-error-hover);--color-logout-bg:var(--color-error-light);--color-save:var(--color-success);--color-save-hover:var(--color-success-hover);--color-cancel:var(--slate-500);--color-cancel-hover:var(--slate-600);--color-input-background:#fff;--color-input-border:var(--color-border);--color-input-border-focus:var(--color-border-focus);--color-input-placeholder:var(--color-text-muted);--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.text-primary{color:#0f172a;color:var(--color-text-primary)}.text-secondary{color:#475569;color:var(--color-text-secondary)}.text-muted{color:#94a3b8;color:var(--color-text-muted)}.text-success{color:#22c55e;color:var(--color-success)}.text-warning{color:#f59e0b;color:var(--color-warning)}.text-error{color:#ef4444;color:var(--color-error)}.text-brand{color:#f97316;color:var(--color-primary)}.bg-primary{background-color:#f97316;background-color:var(--color-primary)}.bg-secondary{background-color:#64748b;background-color:var(--color-secondary)}.bg-success{background-color:#22c55e;background-color:var(--color-success)}.bg-warning{background-color:#f59e0b;background-color:var(--color-warning)}.bg-error{color:#ef4444;color:var(--color-error)}.bg-light{background-color:#f8fafc;background-color:var(--color-background-secondary)}.border-primary{border-color:#f97316;border-color:var(--color-primary)}.border-secondary{border-color:#64748b;border-color:var(--color-secondary)}.border-light{border-color:#f1f5f9;border-color:var(--color-border-light)}.border-default{border-color:#e2e8f0;border-color:var(--color-border)}.login-page{align-items:center;background-color:var(--color-background-secondary);display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;justify-content:center;min-height:100vh;padding:20px}.login-stack-container{align-items:center;display:flex;flex-direction:column;gap:20px;max-width:500px;width:100%}.features-header{background-color:initial;box-sizing:border-box;max-width:800px;padding:30px 20px;text-align:center;width:100%}.features-tagline{color:var(--color-text-secondary);font-size:28px;font-style:italic;font-weight:600;line-height:1.4;margin:0}.app-title-section{padding:10px 0;text-align:center;width:100%}.app-title{color:var(--color-primary);font-size:42px;font-weight:700;letter-spacing:-1px;margin:0;text-shadow:var(--shadow-sm)}.login-container{background-color:var(--color-background);border:1px solid var(--color-border-light);border-radius:12px;box-shadow:var(--shadow-lg);box-sizing:border-box;padding:30px;width:100%}.login-examples-section{padding:10px 0;text-align:center;width:100%}.login-examples-image{border:2px solid var(--color-border);border-radius:12px;box-shadow:var(--shadow-lg);height:auto;max-width:100%}.login-error{background-color:var(--color-error-light);border:1px solid var(--color-error);border-radius:6px;color:var(--color-error);font-size:14px;line-height:1.4;margin-bottom:15px;padding:12px}.login-form{margin-bottom:0}.form-group{margin-bottom:20px}.form-label{display:block;font-size:15px;font-weight:600;margin-bottom:8px}.form-input,.form-label{color:var(--color-text-primary)}.form-input{background-color:var(--color-input-background);border:2px solid var(--color-input-border);border-radius:8px;box-sizing:border-box;font-size:16px;padding:12px 16px;transition:border-color .3s ease,box-shadow .3s ease;width:100%}.form-input::placeholder{color:var(--color-input-placeholder)}.form-input:focus{border-color:var(--color-border-focus);box-shadow:0 0 0 3px #f9731626;outline:none}.form-input:disabled{background-color:var(--color-background-muted);color:var(--color-text-muted);cursor:not-allowed;opacity:.7}.create-account-btn,.login-btn{border:none;border-radius:8px;cursor:pointer;font-size:16px;font-weight:600;margin-bottom:12px;padding:14px 16px;transition:all .3s ease;width:100%}.login-btn{background-color:var(--color-primary);border:2px solid var(--color-primary);color:var(--color-text-on-primary)}.login-btn:hover:not(:disabled){background-color:var(--color-primary-hover);border-color:var(--color-primary-hover);box-shadow:0 4px 12px #f973164d;transform:translateY(-1px)}.login-btn:disabled{background-color:var(--color-background-muted);border-color:var(--color-border);box-shadow:none;color:var(--color-text-muted);cursor:not-allowed;transform:none}.create-account-btn{background-color:var(--color-secondary);border:2px solid var(--color-secondary);color:var(--color-text-on-secondary)}.create-account-btn:hover:not(:disabled){background-color:var(--color-secondary-hover);border-color:var(--color-secondary-hover);box-shadow:0 4px 12px #64748b4d;transform:translateY(-1px)}.create-account-btn:disabled{background-color:var(--color-background-muted);border-color:var(--color-border);box-shadow:none;color:var(--color-text-muted);cursor:not-allowed;transform:none}.popup-overlay{background-color:#0f172a99}.popup{background-color:var(--color-background);border:1px solid var(--color-border-light);border-radius:12px;box-shadow:var(--shadow-lg);max-height:90vh;max-width:90vw;min-width:350px;overflow-y:auto;padding:30px;position:relative}.popup h3{color:var(--color-text-primary);font-size:24px;margin:0 0 20px;text-align:center}.popup-close-btn{align-items:center;background:none;border:none;border-radius:4px;color:var(--color-text-muted);cursor:pointer;display:flex;font-size:24px;height:30px;justify-content:center;padding:5px;position:absolute;right:15px;top:15px;transition:all .2s ease;width:30px}.popup-close-btn:hover{background-color:var(--color-background-secondary);color:var(--color-error)}@media (max-width:768px){.login-page{align-items:flex-start;padding:30px 15px 15px}.login-stack-container{gap:15px;max-width:100%}.features-header{padding:20px 25px}.features-tagline{font-size:16px}.app-title{font-size:32px}.login-container{padding:25px 20px}.popup{margin:20px;min-width:300px;padding:25px}.popup h3{font-size:20px}}@media (max-width:480px){.features-tagline{font-size:14px}.app-title{font-size:28px}.form-input{font-size:16px;padding:10px 14px}.create-account-btn,.login-btn{padding:12px 14px}}.user-menu-container{display:inline-block;position:relative}.user-avatar-button{background:none;border:none;border-radius:50%;cursor:pointer;padding:0;transition:all .2s ease}.user-avatar-button:hover{transform:scale(1.1)}.user-avatar-button:focus{outline:2px solid var(--light-theme-overtop);outline-offset:2px}.avatar-circle{align-items:center;background-color:initial;border:2px solid var(--light-theme-overtop);border-radius:50%;display:flex;height:40px;justify-content:center;overflow:hidden;width:40px}.avatar-image{border-radius:50%;height:100%;object-fit:cover;width:100%}.user-menu-dropdown{animation:slideDown .2s ease-out;background:#fff;border:2px solid var(--light-theme-base);border-radius:12px;box-shadow:0 8px 32px #00000026;min-width:260px;overflow:hidden;position:absolute;right:0;top:calc(100% + 8px);z-index:1000}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.user-menu-section{padding:16px 20px}.user-menu-divider{background:#e5e7eb;height:1px;margin:0}.user-menu-email{color:#4b5563;font-size:14px;font-weight:500;text-align:center}.user-menu-logout-btn{background:#dc3545;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;margin-bottom:12px;padding:8px 16px;transition:all .2s ease;width:100%}.user-menu-logout-btn:hover{background:#c82333;transform:translateY(-1px)}.user-menu-session{align-items:center;display:flex;flex-direction:column;gap:4px}.session-label{color:#6b7280;font-size:12px;text-align:center}.session-value{color:var(--light-theme-base);font-size:14px;font-weight:600;text-align:center}.week-start-container{display:flex;flex-direction:column;gap:12px}.week-start-label{color:#374151;font-size:14px;font-weight:600;text-align:center}.week-start-toggle{align-items:center;display:flex;gap:12px;justify-content:center}.week-day{color:#6b7280;font-size:12px;font-weight:500;transition:all .3s ease}.week-day.active{color:var(--light-theme-base);font-weight:700}.toggle-switch{background-color:#e5e7eb;border:1px solid #d1d5db;border-radius:12px;cursor:pointer;height:24px;position:relative;transition:all .3s ease;width:50px}.toggle-switch:hover{background-color:#d1d5db}.toggle-switch:focus{outline:2px solid var(--light-theme-base);outline-offset:2px}.toggle-switch.toggled{background-color:var(--light-theme-base);border-color:var(--light-theme-base)}.toggle-switch.toggled:hover{opacity:.85}.toggle-slider{background-color:#fff;border-radius:50%;box-shadow:0 2px 4px #0000001a;height:20px;left:2px;position:absolute;top:2px;transition:all .3s ease;width:20px}.toggle-switch.toggled .toggle-slider{transform:translateX(26px)}.week-start-loading{color:#6b7280;font-size:11px;font-style:italic;text-align:center}.subscription-label{color:#374151;font-size:14px;font-weight:600;margin-bottom:8px}.subscription-button-container{display:flex;justify-content:center}.user-menu-dropdown .subscription-button{font-size:13px;max-width:none;width:100%}.user-menu-dropdown .subscription-button-main{font-size:14px}.user-menu-dropdown .subscription-button-sub{font-size:11px}@media (max-width:768px){.user-menu-dropdown{min-width:240px;right:-10px}.user-menu-section{padding:14px 16px}.avatar-circle{height:36px;width:36px}}@media (max-width:480px){.user-menu-dropdown{min-width:220px;right:-20px}.user-menu-section{padding:12px 14px}.week-start-toggle{gap:8px}.toggle-switch{height:22px;width:44px}.toggle-slider{height:18px;width:18px}.toggle-switch.toggled .toggle-slider{transform:translateX(22px)}}.ai-workout-input-container{background-color:#373737;border:1px solid #ccc;border-radius:12px;box-shadow:0 4px 8px #0000001a;margin-bottom:20px;padding:20px 15px;width:100%}.ai-workout-form{align-items:stretch;display:flex;gap:12px}.ai-input-section{display:flex;flex:1 1;flex-direction:column;gap:8px;min-width:0}.ai-input-header{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between}.ai-input-label{color:#fff;font-size:14px;font-weight:500;margin:0}.character-counter{color:#fff;font-size:12px;font-weight:400}.character-counter.near-limit{color:#f59e0b;font-weight:600}.character-counter.at-limit{color:#dc3545;font-weight:700}.ai-workout-textarea{background-color:#2a2a2a;border:none;border-radius:6px;color:#fff;font-family:inherit;font-size:14px;min-height:60px;padding:12px;resize:vertical;transition:background-color .2s ease;width:100%}.ai-workout-textarea::placeholder{color:#999;font-style:italic}.ai-workout-textarea:focus{background-color:#252525;outline:none}.ai-workout-textarea:disabled{background-color:#3a3a3a;cursor:not-allowed;opacity:.6}.ai-workout-textarea.at-limit{background-color:#2a1f1f}.ai-button-section{align-items:flex-end;display:flex;flex-shrink:0}.ai-fill-button{align-items:center;background-color:var(--dark-theme-bg);border:2px solid var(--light-theme-bg);border-radius:8px;box-shadow:0 2px 4px #0000001a;color:var(--dark-theme-overtop);cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;min-height:84px;padding:12px 24px;transition:all .3s ease;white-space:nowrap}.ai-fill-button:hover:not(:disabled){box-shadow:0 4px 8px #0003;transform:translateY(-2px)}.ai-fill-button:active:not(:disabled){box-shadow:0 2px 4px #0000001a;transform:translateY(0)}.ai-fill-button:disabled{cursor:not-allowed}.ai-fill-button.processing{cursor:wait}.spinner{animation:spin 1s linear infinite;border:2px solid #0000;border-radius:50%;border-top:2px solid var(--dark-theme-overtop);height:16px;width:16px}.character-limit-warning{align-items:center;background-color:#fef2f2;border:1px solid #dc3545;border-radius:6px;color:#dc3545;display:flex;font-size:13px;gap:8px;margin-top:12px;padding:10px 12px}.warning-icon{flex-shrink:0;font-size:16px}.warning-text{flex:1 1;font-weight:500}.ai-success-message{align-items:flex-start;background-color:#d4edda;border:1px solid #c3e6cb;border-radius:6px;color:#155724;display:flex;font-size:14px;gap:10px;margin-top:12px;padding:12px}.success-icon{flex-shrink:0;font-size:18px;margin-top:2px}.success-text{flex:1 1;font-weight:500}.success-details{color:#0f4420;font-size:13px;margin-top:8px;padding-left:12px}.success-detail{border-left:2px solid #28a745;margin-top:4px;padding-left:8px}.success-dismiss{background:none;border:none;color:#155724;cursor:pointer;flex-shrink:0;font-size:24px;line-height:1;margin:0;opacity:.7;padding:0;transition:opacity .2s ease}.success-dismiss:hover{opacity:1}.ai-error-message{align-items:flex-start;background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:6px;color:#721c24;display:flex;font-size:14px;gap:10px;margin-top:12px;padding:12px}.error-icon{flex-shrink:0;font-size:18px;margin-top:2px}.error-text{flex:1 1;font-weight:500}.error-dismiss{background:none;border:none;color:#721c24;cursor:pointer;flex-shrink:0;font-size:24px;line-height:1;margin:0;opacity:.7;padding:0;transition:opacity .2s ease}.error-dismiss:hover{opacity:1}@media (max-width:768px){.ai-workout-form{flex-direction:column}.ai-button-section{width:100%}.ai-fill-button{justify-content:center;min-height:auto;width:100%}.ai-input-header{align-items:flex-start;flex-direction:column}}@media (max-width:480px){.ai-workout-input-container{padding:15px 12px}.ai-input-label{font-size:13px}.ai-workout-textarea{font-size:13px;padding:10px}.ai-fill-button{font-size:13px;padding:10px 20px}}:root{--texture-carbon:linear-gradient(27deg,#151515 5px,#0000 0) 0 5px,linear-gradient(207deg,#151515 5px,#0000 0) 10px 0px,linear-gradient(27deg,#222 5px,#0000 0) 0px 10px,linear-gradient(207deg,#222 5px,#0000 0) 10px 5px,linear-gradient(90deg,#1b1b1b 10px,#0000 0),linear-gradient(#1d1d1d 25%,#1a1a1a 0,#1a1a1a 50%,#0000 0,#0000 75%,#242424 0,#242424);--texture-carbon-base-color:#131313;--texture-carbon-size:20px 20px;--light-theme-base:#defaultcolor;--dark-theme-base:#defaultcolor;--light-theme-bg:#defaultcolor;--dark-theme-bg:#defaultcolor;--light-theme-pop:#defaultcolor;--dark-theme-pop:#defaultcolor;--light-theme-overtop:#defaultcolor;--dark-theme-overtop:#defaultcolor;--original-primary:#defaultcolor;--original-secondary:#defaultcolor}.bg-carbon{background:linear-gradient(27deg,#151515 5px,#0000 0) 0 5px,linear-gradient(207deg,#151515 5px,#0000 0) 10px 0,linear-gradient(27deg,#222 5px,#0000 0) 0 10px,linear-gradient(207deg,#222 5px,#0000 0) 10px 5px,linear-gradient(90deg,#1b1b1b 10px,#0000 0),linear-gradient(#1d1d1d 25%,#1a1a1a 0,#1a1a1a 50%,#0000 0,#0000 75%,#242424 0,#242424);background:var(--texture-carbon);background-color:#131313;background-color:var(--texture-carbon-base-color);background-size:20px 20px;background-size:var(--texture-carbon-size)}.bg-fill{background-color:#1b1b1b}.btn{align-items:center;border:2px solid #0000;border-radius:8px;cursor:pointer;display:inline-flex;font-family:inherit;font-size:14px;font-weight:600;gap:8px;padding:12px 24px;text-decoration:none;transition:all .3s ease}.btn-orange-filled{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-text-inverse)}.btn-orange-filled:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover);box-shadow:0 4px 12px #f9731666;transform:translateY(-1px)}.btn-outline{background:#0000;border-color:var(--color-border-light);color:var(--color-text-primary)}.btn-outline:hover{border-color:var(--color-primary);box-shadow:0 4px 12px #f973164d;color:var(--color-primary);transform:translateY(-1px)}.btn-outline-light{background:#0000;border-color:#ffffff4d;color:var(--color-text-inverse)}.btn-outline-light:hover{border-color:var(--color-primary);box-shadow:0 4px 12px #f9731666;color:var(--color-primary);transform:translateY(-1px)}.btn-sm{font-size:12px;padding:8px 16px}.btn-lg{font-size:16px;padding:16px 32px}.glow-orange{transition:all .3s ease}.glow-orange:hover{box-shadow:0 4px 12px #f9731666;transform:translateY(-1px)}.glow-subtle{transition:all .3s ease}.glow-subtle:hover{box-shadow:0 2px 8px #0000001a;transform:translateY(-1px)}body{background:var(--texture-carbon);background-color:var(--texture-carbon-base-color);background-size:var(--texture-carbon-size)}.dashboard-container{background-color:#1b1b1b;margin:0 auto;max-width:1400px;min-height:100vh;padding:20px}.clean-subscription-section{align-items:flex-end;display:flex;flex-direction:column;gap:6px}.trial-info-container{align-items:center;display:flex;font-size:11px;max-width:200px}.trial-info-text{background-color:var(--color-background-secondary);border:1px solid var(--color-border-light);border-radius:4px;color:var(--color-text-muted);font-size:11px;font-weight:400;padding:3px 8px;text-align:right;transition:all .2s ease;white-space:nowrap}.trial-info-text.cancel-pending{background-color:var(--color-warning-light);border-color:var(--color-warning);color:var(--color-text-secondary)}.trial-info-text.active-subscription{background-color:#f0f9f0;background-color:var(--color-success-light,#f0f9f0);border-color:#22c55e;border-color:var(--color-success,#22c55e);color:#16a34a;color:var(--color-success-dark,#16a34a)}.trial-info-text:hover{box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.trial-info-text.cancel-pending:hover{background-color:var(--color-warning-light);border-color:#f59e0b;border-color:var(--color-warning-hover,#f59e0b)}.trial-info-text.active-subscription:hover{background-color:#f0f9f0;background-color:var(--color-success-light,#f0f9f0);border-color:#16a34a;border-color:var(--color-success-hover,#16a34a)}.dashboard-header{align-items:center;background-color:var(--light-theme-bg);border-color:var(--light-theme-base);border-radius:12px;border-style:solid;border-width:4px;box-shadow:var(--shadow-sm);color:var(--light-theme-overtop);display:flex;justify-content:space-between;margin-bottom:20px;padding:20px}.dashboard-header h1{color:var(--light-theme-overtop);font-size:28px;font-weight:700;margin:0 0 5px}.dashboard-header p{color:var(--color-text-secondary);font-size:16px;margin:0}.session-info{align-items:center;display:flex;gap:15px}.session-time{color:var(--color-text-muted);font-size:13px;text-align:right}.session-time-label{display:block;font-size:12px;margin-bottom:2px}.session-time-value{color:var(--color-primary);font-size:15px;font-weight:600}.subscription-section{align-items:flex-end;display:flex;flex-direction:column;gap:6px}.subscription-header-btn{align-items:center;border:2px solid;border-radius:8px;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:6px;padding:10px 18px;transition:all .3s ease;white-space:nowrap}.subscription-header-btn.active-subscription{background-color:var(--color-success);border-color:var(--color-success);color:var(--color-text-on-primary)}.subscription-header-btn.active-subscription:hover{background-color:var(--color-success-hover);border-color:var(--color-success-hover);box-shadow:0 4px 12px #22c55e4d;transform:translateY(-1px)}.subscription-header-btn.inactive-subscription{background-color:var(--color-primary);border-color:var(--color-primary);color:var(--color-text-on-primary)}.subscription-header-btn.inactive-subscription:hover{background-color:var(--color-primary-hover);border-color:var(--color-primary-hover);box-shadow:0 4px 12px #f973164d;transform:translateY(-1px)}.error-display{background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:8px;color:#721c24;margin-bottom:20px}.error-header{align-items:flex-start;display:flex;justify-content:space-between;padding:15px}.error-content{flex:1 1}.error-title{font-weight:600;margin-bottom:5px}.error-message{font-size:14px}.error-close-btn{background:none;border:none;color:#721c24;cursor:pointer;font-size:18px;margin-left:10px;padding:0}.progress-display{align-items:center;background-color:#d4edda;border:1px solid #c3e6cb;border-radius:8px;color:#155724;display:flex;gap:10px;margin-bottom:20px;padding:15px}.progress-spinner{animation:spin 1s linear infinite;border:2px solid #0000;border-radius:50%;border-top-color:#155724;height:20px;width:20px}.progress-text{font-weight:500}.calendar-section{margin-bottom:30px}.calendar-container,.calendar-section{display:flex;justify-content:center;width:100%}.calendar-container{max-width:1100px}.account-info{background-color:var(--color-background-secondary);border:1px solid var(--color-border-light);border-radius:12px;box-shadow:var(--shadow-sm);color:var(--color-text-secondary);font-size:14px;padding:20px}.account-info h3{color:var(--color-text-primary);font-size:16px;font-weight:600;margin:0 0 15px}.account-info-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.account-info-item{display:flex;gap:5px}.account-info-label{color:var(--color-text-primary);font-weight:600}.account-status{margin-left:5px}.account-status.active{color:var(--color-success);font-weight:500}.account-status.inactive{color:var(--color-error);font-weight:500}.dashboard-loading{background-color:var(--color-background);border-radius:12px;color:var(--color-text-muted);font-size:18px;margin:20px;padding:40px 20px;text-align:center}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:1200px){.dashboard-container{max-width:100%;padding:15px}.calendar-section>div{align-items:center;flex-direction:column;gap:20px}.calendar-section .calendar-sidebar{max-width:600px;width:100%}}@media (max-width:768px){.dashboard-header{flex-direction:column;gap:15px;text-align:center}.session-info{flex-direction:column;gap:10px}.session-info,.subscription-section{align-items:center}.account-info-grid{grid-template-columns:1fr}.trial-info-container{display:none}.calendar-section>div{max-width:100%;padding:0 10px}.calendar-container{max-width:100%}}@media (max-width:480px){.subscription-header-btn{font-size:12px;gap:4px;padding:8px 14px}.subscription-header-btn.active-subscription:before{content:"⭐"}.subscription-header-btn.inactive-subscription:before{content:"💎"}.dashboard-header h1{font-size:24px}.dashboard-header p{font-size:14px}.calendar-section>div{gap:15px}}.people-paces-container{background-color:#1b1b1b;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:0 auto;max-width:1200px;min-height:100vh;padding:20px}.action-buttons{align-items:center;background-color:#373737;border:1px solid #ccc;border-radius:12px;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px;padding:15px 20px}.action-buttons,.add-button{box-shadow:0 2px 4px #0000001a}.add-button{background-color:var(--light-theme-bg);border:none;border-radius:8px;color:var(--light-theme-overtop);cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .3s ease}.add-button:hover{box-shadow:0 4px 8px #0003;opacity:.85;transform:translateY(-1px)}.add-button:disabled{cursor:not-allowed;opacity:.5;transform:none}.remove-button{background-color:var(--dark-theme-bg);border:none;border-radius:8px;box-shadow:0 2px 4px #0000001a;color:var(--dark-theme-overtop);cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .3s ease}.remove-button:hover{box-shadow:0 4px 8px #0003;opacity:.85;transform:translateY(-1px)}.remove-button:disabled{cursor:not-allowed;opacity:.5;transform:none}.empty-state{background-color:#f8f9fa;border-radius:8px;margin:20px 0;padding:60px 20px}.empty-state h2{color:#6c757d;font-size:24px;margin:0 0 16px}.empty-state p{color:#6c757d;font-size:16px;margin:0 0 30px}.empty-state-instructions{margin:0 auto;max-width:500px;text-align:left}.instruction-step{background:#fff;border-left:4px solid #007bff;border-radius:6px;box-shadow:0 2px 4px #0000001a;margin:12px 0;padding:16px}.instruction-step strong{color:#007bff}.pace-matrix{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;max-height:70vh;overflow:auto}.pace-table{border-collapse:collapse;min-width:600px;width:100%}.pace-table th{background-color:#f8f9fa;border-bottom:2px solid #dee2e6;color:#333;font-weight:600;padding:12px 8px;position:relative;text-align:center}.pace-table th:first-child{padding-left:16px;text-align:left}.pace-table td{border-bottom:1px solid #dee2e6;padding:8px;text-align:center}.pace-table tbody tr:hover{background-color:#f8f9fa}.athlete-name{font-weight:500;min-width:120px;padding-left:16px!important;text-align:left!important}.pace-cell{align-items:center;border-radius:3px;cursor:pointer;display:flex;justify-content:center;min-height:20px;padding:6px 8px;transition:background-color .2s ease}.pace-cell:hover{background-color:#e3f2fd;outline:1px solid #2196f3}.pace-cell-input{border:2px solid #2196f3;border-radius:3px;font-size:14px;outline:none;padding:4px 6px;text-align:center;width:100%}.remove-pace-button{background:none;border:none;border-radius:3px;color:#dc3545;cursor:pointer;font-size:16px;margin-left:8px;padding:2px 6px;transition:background-color .2s ease}.remove-athlete-button,.remove-pace-button:hover{background-color:#dc3545;color:#fff}.remove-athlete-button{border:none;border-radius:3px;cursor:pointer;font-size:12px;padding:4px 8px;transition:background-color .3s ease}.remove-athlete-button:hover{background-color:#c82333}.popup{min-width:300px}.popup-input,.popup-select{font-size:14px;margin-bottom:16px;padding:8px 12px}.popup-buttons{gap:8px}@media (max-width:768px){.people-paces-container{padding:10px}.page-header{gap:10px}.action-buttons,.page-header{flex-direction:column}.pace-table td,.pace-table th{font-size:12px;padding:6px 4px}.popup{margin:20px;min-width:280px}}.groups-container{background-color:#1b1b1b;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:0 auto;max-width:1200px;min-height:100vh;padding:20px}.groups-button-container{align-items:center;background-color:#373737;border:1px solid #ccc;border-radius:12px;box-shadow:0 2px 4px #0000001a;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px;padding:15px 20px}.create-group-btn{background-color:var(--light-theme-bg);border:none;border-radius:8px;box-shadow:0 2px 4px #0000001a;color:var(--light-theme-overtop);cursor:pointer;font-size:16px;font-weight:600;padding:12px 24px;transition:all .3s ease}.create-group-btn:hover{box-shadow:0 4px 8px #0003;opacity:.85;transform:translateY(-1px)}.delete-group-btn{background-color:var(--dark-theme-bg);border:none;border-radius:8px;box-shadow:0 2px 4px #0000001a;color:var(--dark-theme-overtop);cursor:pointer;font-size:16px;font-weight:600;padding:12px 24px;transition:all .3s ease}.delete-group-btn:hover:not(:disabled){box-shadow:0 4px 8px #0003;opacity:.85;transform:translateY(-1px)}.delete-group-btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.groups-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.group-card{background-color:#373737;border:1px solid #ccc;border-radius:12px;box-shadow:0 2px 4px #0000001a;min-height:150px;padding:20px;transition:all .2s ease}.group-card.drag-over{background-color:#454545;border:2px solid #ccc;box-shadow:0 4px 8px #0003}.group-card:hover{box-shadow:0 4px 8px #00000026}.group-header{color:#fff;font-size:20px;font-weight:600;margin-bottom:16px;text-align:left}.athlete-count{display:none}.group-actions{display:flex;gap:8px}.delete-btn,.edit-btn{background:none;border:none;border-radius:4px;cursor:pointer;font-size:18px;padding:4px;transition:background-color .2s ease}.edit-btn{color:#007bff}.edit-btn:hover{background-color:#e3f2fd}.delete-btn{color:#dc3545}.delete-btn:hover{background-color:#ffe6e6}.group-athletes-list{list-style:none;margin:0;padding:0}.athletes-list{margin-top:12px}.athlete-item{align-items:center;background:linear-gradient(to right,var(--dark-theme-bg),var(--light-theme-bg));border:1px solid #dee2e6;border-radius:4px;color:var(--dark-theme-overtop);cursor:move;display:flex;font-size:14px;font-weight:500;justify-content:flex-start;margin-bottom:6px;padding:6px 10px;text-align:left;transition:all .2s ease}.athlete-item:hover{box-shadow:0 2px 4px #0000001a;opacity:.9}.athlete-item.dragging{border-color:#fff;box-shadow:0 0 20px 4px #ffffffe6;opacity:.7;transform:scale(1.05)}.athlete-card,.athlete-item.dragging{background:linear-gradient(to right,var(--dark-theme-bg),var(--light-theme-bg))}.athlete-card{border:1px solid #dee2e6;border-radius:4px;color:var(--dark-theme-overtop);cursor:move;font-size:14px;font-weight:500;margin-bottom:6px;padding:6px 10px;text-align:left;transition:all .2s ease}.athlete-card:hover{box-shadow:0 2px 4px #0000001a;opacity:.9}.athlete-card.dragging{background:linear-gradient(to right,var(--dark-theme-bg),var(--light-theme-bg));border-color:#fff;box-shadow:0 0 20px 4px #ffffffe6;opacity:.7;transform:scale(1.05)}.athlete-count{color:#666;font-size:13px;font-style:italic;margin-bottom:8px}.drag-handle{color:#6c757d;cursor:grab;display:none;margin-right:8px}.athlete-item:active .drag-handle{cursor:grabbing}.remove-from-group-btn{background:none;border:none;border-radius:3px;color:#dc3545;cursor:pointer;font-size:16px;padding:2px 6px;transition:background-color .2s ease}.remove-from-group-btn:hover{background-color:#dc3545;color:#fff}.empty-group{padding:20px}.empty-group,.empty-state{color:#999;font-size:14px;font-style:italic;text-align:center}.empty-state{background-color:initial;padding:40px 20px}.empty-groups-state{background-color:#f8f9fa;border-radius:8px;margin:20px 0;padding:60px 20px;text-align:center}.empty-groups-state h3{color:#6c757d;font-size:22px;margin:0 0 12px}.empty-groups-state p{color:#6c757d;font-size:16px;margin:0}.unassigned-athlete{background:linear-gradient(to right,var(--dark-theme-bg),var(--light-theme-bg));border:1px solid #dee2e6;border-radius:4px;color:var(--dark-theme-overtop);cursor:move;font-size:14px;font-weight:500;margin-bottom:6px;padding:6px 10px;text-align:left;transition:all .2s ease}.unassigned-athlete:hover{box-shadow:0 2px 4px #0000001a;opacity:.9}.unassigned-athlete.dragging{background:linear-gradient(to right,var(--dark-theme-bg),var(--light-theme-bg));border-color:#fff;box-shadow:0 0 20px 4px #ffffffe6;opacity:.7;transform:scale(1.05)}.unassigned-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.popup-overlay{align-items:center;background-color:#00000080;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.popup{background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;min-width:400px;padding:24px}.popup h3{color:#333;margin:0 0 16px}.popup-input,.popup-select{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-size:16px;margin-bottom:20px;padding:12px;width:100%}.popup-input:focus,.popup-select:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.warning-popup{border:2px solid #f59e0b}.warning-popup h3{align-items:center;color:#f59e0b;display:flex;gap:8px}.warning-content{background-color:#fef3c7;border:1px solid #f59e0b;border-radius:6px;margin:16px 0;padding:16px}.warning-content p{color:#333;margin:8px 0}.group-name-highlight{color:#dc3545;font-size:18px;font-weight:700;margin:12px 0!important;text-align:center}.warning-text{color:#666;font-size:14px;font-style:italic}.popup-buttons{display:flex;gap:12px;justify-content:flex-end}.cancel-btn{border-radius:4px}.cancel-btn,.confirm-btn{padding:10px 20px;transition:background-color .3s ease}.confirm-btn{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:500}.confirm-btn:hover{background-color:#0056b3}.confirm-btn.danger{background-color:#dc3545}.confirm-btn.danger:hover{background-color:#c82333}.confirm-btn:disabled{background-color:#6c757d;cursor:not-allowed;opacity:.6}.confirm-button{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px}.confirm-button:hover{background-color:#0056b3}.confirm-button.danger{background-color:#dc3545}.confirm-button.danger:hover{background-color:#c82333}.cancel-button{background-color:#6c757d;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px}.cancel-button:hover{background-color:#545b62}.unassigned-section{background-color:#373737;border:1px solid #ccc;border-radius:12px;box-shadow:0 2px 4px #0000001a;margin-top:30px;padding:20px}.unassigned-section h2{color:#fff;font-size:20px;margin:0 0 16px}.unassigned-box{border:none;border-radius:8px;min-height:150px;padding:20px;transition:all .2s ease}.unassigned-box,.unassigned-box.drag-over{background-color:#2a2a2a}@media (max-width:768px){.groups-container{padding:10px}.page-header{flex-direction:column;gap:10px}.groups-grid,.unassigned-athletes-list{grid-template-columns:1fr}.popup{margin:20px;min-width:280px}}.themes-container{background-color:#1b1b1b;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:0 auto;max-width:1200px;min-height:100vh;padding:20px}.page-header{align-items:center;background-color:var(--light-theme-bg);border-color:var(--light-theme-base);border-radius:12px;border-style:solid;border-width:4px;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;margin-bottom:20px;padding:20px}.page-header,.page-header h1{color:var(--light-theme-overtop)}.page-header h1{font-size:28px;font-weight:700;margin:0 0 5px}.back-link{background-color:#373737;border:1px solid #ccc;border-radius:8px;color:#fff;font-size:14px;font-weight:600;padding:10px 18px;text-decoration:none;transition:all .3s ease}.back-link:hover{opacity:.85;transform:translateY(-1px)}.error-message{align-items:center;background-color:#ffe6e6;border:1px solid #fcc;border-radius:4px;color:#d00;display:flex;justify-content:space-between;margin-bottom:20px;padding:10px}.close-error{background:none;border:none;color:#d00;cursor:pointer;font-size:20px}.loading{color:#ccc;font-size:18px;padding:40px;text-align:center}.theme-preview{background-color:#2a2a2a;border:1px solid #dee2e6;border-radius:12px;box-shadow:0 2px 4px #0000001a;margin-bottom:30px;padding:24px}.theme-preview h2{color:#fff;font-size:20px;font-weight:600;margin:0 0 20px}.preview-card{align-items:center;border-radius:12px;box-shadow:0 4px 12px #0003;display:flex;gap:30px;min-height:150px;padding:40px}.preview-logo{background:#ffffff1a;border-radius:8px;max-height:100px;max-width:100px;padding:12px}.preview-text{flex:1 1}.preview-text h3{font-size:24px;font-weight:700;margin:0 0 10px}.preview-text p{font-size:16px;margin:0;opacity:.9}.theme-controls{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:30px}.theme-section{background-color:#2a2a2a;border:1px solid #dee2e6;border-radius:12px;box-shadow:0 2px 4px #0000001a;display:flex;flex-direction:column;gap:20px;padding:24px}.section-header{align-items:center;display:flex;gap:12px;justify-content:space-between}.section-header h3{color:#fff;flex-shrink:0;font-size:18px;font-weight:600;margin:0}.header-btn{background-color:#fff;border:none;border-radius:6px;color:#000;cursor:pointer;flex-shrink:0;font-size:14px;font-weight:600;padding:8px 16px;transition:all .3s ease;white-space:nowrap}.header-btn:hover:not(.uploading){background-color:#f0f0f0;box-shadow:0 2px 4px #0003;transform:translateY(-1px)}.header-btn.uploading{background-color:#ccc;cursor:not-allowed;opacity:.7}.content-display{flex:1 1;min-height:200px}.content-display,.logo-box{align-items:center;display:flex;justify-content:center}.logo-box{background-color:#fff;border:2px solid #dee2e6;border-radius:12px;box-shadow:0 2px 4px #0000001a;height:200px;overflow:hidden;position:relative;width:200px}.logo-box.no-logo{background-color:#f8f9fa}.logo-box.no-logo span{color:#999;font-size:14px;font-style:italic;padding:20px;text-align:center}.current-logo{max-height:90%;max-width:90%;object-fit:contain}.remove-logo-btn{align-items:center;background-color:#dc3545;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:20px;font-weight:700;height:28px;justify-content:center;line-height:1;position:absolute;right:8px;top:8px;transition:background-color .3s ease;width:28px;z-index:10}.remove-logo-btn:hover{background-color:#c82333}.color-sample-box{border:2px solid #dee2e6;border-radius:12px;box-shadow:0 2px 4px #0000001a;height:200px;width:200px}.color-picker-overlay{align-items:center;background-color:#000000b3;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.color-picker-popup{background:#fff;border-radius:12px;box-shadow:0 8px 24px #0000004d;max-height:80vh;max-width:500px;overflow-y:auto;padding:32px;width:90%}.color-picker-popup h3{color:#333;font-size:20px;font-weight:600;margin:0 0 20px}.current-selection{align-items:center;background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;display:flex;gap:16px;margin-bottom:24px;padding:16px}.selection-swatch{border:2px solid #dee2e6;border-radius:6px;box-shadow:0 2px 4px #0000001a;height:50px;width:50px}.selection-info{flex:1 1}.selection-info p{color:#666;font-size:14px;margin:0}.selection-info strong{color:#333;display:block;font-size:16px;margin-bottom:4px}.color-categories{display:flex;flex-direction:column;gap:24px}.color-category h4{color:#333;font-size:16px;font-weight:600;margin:0 0 12px}.common-colors-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(6,1fr)}.color-swatch{border:2px solid #0000;border-radius:6px;cursor:pointer;height:45px;position:relative;transition:all .2s ease;width:45px}.color-swatch:hover{box-shadow:0 2px 8px #0000004d;transform:scale(1.1)}.color-swatch.selected{border-color:#007bff;border-width:3px}.color-swatch.selected:after{color:#fff;content:"✓";font-size:16px;font-weight:700;left:50%;position:absolute;text-shadow:0 0 3px #000c;top:50%;transform:translate(-50%,-50%)}.color-picker-buttons{border-top:1px solid #dee2e6;display:flex;gap:12px;justify-content:flex-end;margin-top:30px;padding-top:20px}.cancel-btn{background-color:#6c757d;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:12px 24px}.cancel-btn:hover{background-color:#545b62}.save-btn{background-color:#28a745;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:12px 24px}.save-btn:hover{background-color:#218838}@media (max-width:768px){.themes-container{padding:15px}.page-header{flex-direction:column;gap:15px;text-align:center}.theme-controls{gap:20px;grid-template-columns:1fr}.preview-card{padding:20px}.preview-card,.section-header{flex-direction:column;text-align:center}.section-header{align-items:stretch}.header-btn{width:100%}.color-picker-popup{margin:20px;max-width:calc(100vw - 40px);min-width:300px}.common-colors-grid{grid-template-columns:repeat(4,1fr)}.color-swatch{height:35px;width:35px}.color-sample-box,.logo-box{height:160px;width:160px}}
/*# sourceMappingURL=main.a2c13216.css.map*/