.navbar{background:var(--secondary-bg);border-bottom:1px solid var(--border);padding:16px 0;position:sticky;top:0;z-index:100;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.navbar-content{display:flex;justify-content:space-between;align-items:center}.navbar-brand{font-size:1.8rem;font-weight:900;text-decoration:none;text-transform:uppercase;letter-spacing:2px}.brand-text{color:var(--text-primary)}.brand-accent{color:var(--accent-red)}.navbar-links{display:flex;align-items:center;gap:24px}.nav-link{color:var(--text-secondary);text-decoration:none;font-weight:600;text-transform:uppercase;font-size:14px;letter-spacing:1px;transition:color .3s ease}.nav-link:hover{color:var(--accent-red)}.admin-link{color:var(--accent-orange)!important}.user-info{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.user-name{font-weight:700;color:var(--text-primary);font-size:14px}.user-role{font-size:12px;padding:2px 8px;border-radius:12px;text-transform:uppercase;font-weight:700;letter-spacing:1px}.user-role.admin{background:var(--accent-orange);color:var(--primary-bg)}.user-role.user{background:var(--accent-red);color:#fff}@media (max-width: 768px){.navbar-links{gap:16px}.nav-link{font-size:12px}.user-info{display:none}}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;background:linear-gradient(135deg,var(--primary-bg) 0%,var(--secondary-bg) 100%)}.auth-card{background:var(--secondary-bg);border-radius:20px;padding:40px;width:100%;max-width:450px;border:2px solid var(--border);box-shadow:var(--shadow-hover);position:relative;overflow:hidden}.auth-card:before{content:"";position:absolute;top:0;left:0;right:0;height:6px;background:linear-gradient(90deg,var(--accent-green),var(--accent-blue),var(--accent-orange))}.auth-header{text-align:center;margin-bottom:32px}.auth-header h1{font-size:2.5rem;font-weight:900;margin-bottom:8px;background:linear-gradient(135deg,var(--accent-green),var(--accent-blue));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-transform:uppercase;letter-spacing:2px}.auth-header p{color:var(--text-secondary);font-size:1.1rem;font-weight:500}.auth-form{margin-bottom:24px}.auth-submit{width:100%;padding:16px;font-size:16px;font-weight:800;margin-top:8px;position:relative}.auth-submit:disabled{background:#991b1b!important;cursor:not-allowed}.auth-submit:disabled:after{content:"";position:absolute;width:20px;height:20px;margin:auto;border:2px solid transparent;border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite;top:50%;left:50%;transform:translate(-50%,-50%)}.auth-footer{text-align:center;padding-top:24px;border-top:1px solid var(--border)}.auth-footer p{color:var(--text-secondary);margin:0}.auth-link{color:var(--accent-green);text-decoration:none;font-weight:700;transition:color .3s ease}.auth-link:hover{color:var(--accent-blue)}.error-message{background:rgba(255,71,87,.1);border:1px solid var(--danger);color:var(--danger);padding:12px 16px;border-radius:8px;margin-bottom:20px;font-weight:600;text-align:center}.step-indicator{background:var(--accent-red);color:#fff;padding:8px 16px;border-radius:20px;font-weight:700;text-align:center;margin-bottom:24px;font-size:12px;text-transform:uppercase}.workout-setup h3,.body-stats h3,.workout-frequency h3{text-align:center;color:var(--text-primary);margin-bottom:24px;font-size:1.2rem;font-weight:800}.workout-types{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px}.workout-type-btn{background:var(--primary-bg);border:2px solid var(--border);border-radius:12px;padding:24px 16px;text-align:center;cursor:pointer;transition:all .3s ease;color:var(--text-primary);font-weight:700}.workout-type-btn:hover{border-color:var(--accent-red)}.workout-type-btn .icon{display:none}.stats-inputs{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px}.days-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-bottom:24px}.day-btn{background:var(--primary-bg);border:2px solid var(--border);border-radius:8px;padding:16px 8px;color:var(--text-primary);font-weight:700;cursor:pointer;transition:all .3s ease}.day-btn:hover{border-color:var(--accent-red)}.welcome-screen{text-align:center;padding:60px 0}.welcome-animation{animation:fadeInUp .8s ease}.welcome-icon{display:none}.welcome-screen h2{font-size:2.5rem;font-weight:900;margin-bottom:16px;background:linear-gradient(135deg,var(--accent-red),var(--accent-orange));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-transform:uppercase}.welcome-screen p{font-size:1.2rem;color:var(--text-secondary);font-weight:500}.goal-options{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:32px}.goal-btn{background:var(--primary-bg);border:2px solid var(--border);border-radius:12px;padding:24px 16px;text-align:center;cursor:pointer;transition:all .3s ease;color:var(--text-primary);font-weight:700}.goal-btn:hover{border-color:var(--accent-red);transform:translateY(-2px)}.goal-btn.active{border-color:var(--accent-red);background:rgba(220,38,38,.1)}.goal-btn .icon{display:none}@media (max-width: 480px){.auth-card{padding:24px;margin:16px}.auth-header h1{font-size:2rem}.workout-types,.stats-inputs{grid-template-columns:1fr}.days-grid{grid-template-columns:repeat(4,1fr)}.goal-options{grid-template-columns:1fr;gap:12px}}.dashboard{min-height:100vh}.dashboard-content{padding:40px 0}.hero-actions{display:flex;gap:20px;justify-content:center;flex-wrap:wrap}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:24px;margin-bottom:48px}.stat-card{background:var(--secondary-bg);border-radius:16px;padding:24px;border:2px solid var(--border);display:flex;align-items:center;gap:16px;transition:all .3s ease}.stat-card:hover{transform:translateY(-4px);border-color:var(--accent-green);box-shadow:var(--shadow-hover)}.stat-icon{display:none}.stat-info h3{font-size:2rem;font-weight:900;color:var(--accent-red);margin:0;text-transform:uppercase}.stat-info p{color:var(--text-secondary);margin:4px 0 0;font-weight:600;text-transform:uppercase;font-size:12px;letter-spacing:1px}.next-class-section{margin-bottom:48px}.next-class-section h2{font-size:1.8rem;font-weight:800;margin-bottom:24px;color:var(--text-primary);text-transform:uppercase;letter-spacing:1px}.next-class-card{background:var(--secondary-bg);border-radius:16px;padding:32px;border:2px solid var(--accent-red);display:flex;justify-content:space-between;align-items:center;box-shadow:var(--shadow)}.next-class-info h3{font-size:1.5rem;font-weight:800;color:var(--text-primary);margin-bottom:8px;text-transform:uppercase}.trainer{color:var(--accent-red);font-weight:600;margin-bottom:16px;font-size:1.1rem}.class-time{display:flex;gap:16px;align-items:center}.date,.time{padding:8px 16px;background:var(--primary-bg);border-radius:8px;font-weight:600;font-size:14px}.date{color:var(--accent-orange)}.time{color:var(--accent-yellow)}.quick-actions h2{font-size:1.8rem;font-weight:800;margin-bottom:24px;color:var(--text-primary);text-transform:uppercase;letter-spacing:1px}.action-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:24px}.action-card{background:var(--secondary-bg);border-radius:16px;padding:32px 24px;border:2px solid var(--border);text-decoration:none;text-align:center;transition:all .3s ease;display:block}.action-card:hover{transform:translateY(-8px);border-color:var(--accent-red);box-shadow:var(--shadow-hover);animation:pulse 1s ease-in-out}.action-card:active{transform:translateY(-4px) scale(.98)}.admin-card:hover{border-color:var(--accent-orange)}.community-stats{margin-top:48px;padding-top:32px;border-top:2px solid var(--border);text-align:center}.community-card{background:var(--secondary-bg);border-radius:16px;padding:32px;border:2px solid var(--accent-red);display:inline-flex;align-items:center;gap:20px;box-shadow:var(--shadow);transition:all .3s ease}.community-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover)}.community-icon{display:none}.community-info h3{font-size:2.5rem;font-weight:900;color:var(--accent-red);margin:0;text-transform:uppercase}.community-info p{color:var(--text-secondary);margin:4px 0 0;font-weight:600;text-transform:uppercase;font-size:14px;letter-spacing:1px}.action-icon{display:none}.action-card h3{font-size:1.2rem;font-weight:800;color:var(--text-primary);margin-bottom:8px;text-transform:uppercase;letter-spacing:1px}.action-card p{color:var(--text-secondary);margin:0;font-weight:500}@media (max-width: 768px){.next-class-card{flex-direction:column;gap:24px;text-align:center}.class-time{justify-content:center}.hero-actions{flex-direction:column;align-items:center}.hero-actions .btn{width:200px}}.class-card{background:var(--secondary-bg);border-radius:16px;padding:24px;border:2px solid var(--border);transition:all .3s ease;position:relative;overflow:hidden}.class-card:active{transform:scale(.98)}.class-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--accent-red),var(--accent-orange))}.class-card:hover{transform:translateY(-8px);box-shadow:0 16px 64px #dc262633;border-color:var(--accent-red)}.class-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.class-title{font-size:1.4rem;font-weight:800;color:var(--text-primary);text-transform:uppercase;letter-spacing:1px;margin:0}.class-trainer{margin-bottom:16px;padding:8px 0;border-bottom:1px solid var(--border)}.trainer-label{color:var(--text-secondary);font-size:12px;text-transform:uppercase;letter-spacing:1px;margin-right:8px}.trainer-name{color:var(--accent-red);font-weight:700;font-size:14px}.class-details{display:flex;gap:16px;margin-bottom:16px;flex-wrap:wrap}.detail-item{display:flex;align-items:center;gap:6px;font-size:14px;color:var(--text-secondary)}.detail-icon{display:none}.class-description{color:var(--text-secondary);line-height:1.6;margin-bottom:24px;font-size:14px}.class-actions{display:flex;gap:12px;flex-wrap:wrap}.class-actions .btn{flex:1;min-width:120px}.btn-success{background:var(--success);color:#fff}.btn-success:hover{background:#27ae60}@media (max-width: 768px){.class-details{flex-direction:column;gap:8px}.class-actions{flex-direction:column}.class-actions .btn{flex:none}}.classes-page{min-height:100vh;padding:40px 0}.classes-header{text-align:center;margin-bottom:48px}.classes-header h1{font-size:3rem;font-weight:900;margin-bottom:16px;background:linear-gradient(135deg,var(--accent-green),var(--accent-blue));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-transform:uppercase;letter-spacing:2px}.classes-header p{font-size:1.2rem;color:var(--text-secondary);font-weight:500}.classes-filters{display:flex;justify-content:center;gap:16px;margin-bottom:48px;flex-wrap:wrap}.filter-btn{padding:12px 24px;background:var(--secondary-bg);border:2px solid var(--border);border-radius:8px;color:var(--text-secondary)!important;font-weight:600;text-transform:uppercase;font-size:14px;letter-spacing:1px;cursor:pointer;transition:all .3s ease;position:relative;z-index:1}.filter-btn:hover{border-color:var(--accent-red);color:var(--accent-red)!important;transform:translateY(-2px);box-shadow:0 4px 12px #dc262633}.filter-btn.active{background:var(--accent-red);border-color:var(--accent-red);color:#fff!important;box-shadow:var(--shadow);transform:translateY(-1px)}.filter-btn.active:hover{color:#fff!important;background:#b91c1c}.classes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:32px}.no-classes{text-align:center;padding:80px 20px;color:var(--text-secondary)}.no-classes-icon{display:none}.no-classes h3{font-size:1.5rem;font-weight:800;margin-bottom:12px;color:var(--text-primary);text-transform:uppercase}.no-classes p{font-size:1.1rem;max-width:400px;margin:0 auto}.error-message{background:rgba(255,71,87,.1);border:1px solid var(--danger);color:var(--danger);padding:16px 24px;border-radius:12px;margin-bottom:32px;font-weight:600;text-align:center}@media (max-width: 768px){.classes-header h1{font-size:2rem}.classes-grid{grid-template-columns:1fr;gap:24px}.classes-filters{flex-direction:column;align-items:center}.filter-btn{width:200px}}.bookings-page{min-height:100vh;padding:40px 0}.bookings-header{text-align:center;margin-bottom:48px}.bookings-header h1{font-size:3rem;font-weight:900;margin-bottom:16px;background:linear-gradient(135deg,var(--accent-green),var(--accent-blue));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-transform:uppercase;letter-spacing:2px}.bookings-header p{font-size:1.2rem;color:var(--text-secondary);font-weight:500}.bookings-tabs{display:flex;justify-content:center;gap:16px;margin-bottom:48px}.tab-btn{padding:16px 32px;background:var(--secondary-bg);border:2px solid var(--border);border-radius:12px;color:var(--text-secondary)!important;font-weight:700;text-transform:uppercase;font-size:14px;letter-spacing:1px;cursor:pointer;transition:all .3s ease;min-width:150px;position:relative;z-index:1}.tab-btn:hover{border-color:var(--accent-red);color:var(--accent-red)!important;transform:translateY(-2px);box-shadow:0 6px 20px #dc262633}.tab-btn.active{background:var(--accent-red);border-color:var(--accent-red);color:#fff!important;box-shadow:var(--shadow);transform:translateY(-1px)}.tab-btn.active:hover{color:#fff!important;background:#b91c1c;box-shadow:0 8px 25px #dc26264d}.bookings-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:32px}.booking-card{background:var(--secondary-bg);border-radius:16px;padding:24px;border:2px solid var(--border);transition:all .3s ease}.booking-card:hover{transform:translateY(-4px);border-color:var(--accent-green);box-shadow:var(--shadow-hover)}.booking-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--border)}.booking-header h3{font-size:1.3rem;font-weight:800;color:var(--text-primary);margin:0;text-transform:uppercase;letter-spacing:1px}.booking-status{padding:6px 12px;border-radius:20px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:1px}.booking-status.booked{background:var(--success);color:#fff}.booking-status.cancelled{background:var(--danger);color:#fff}.booking-details{margin-bottom:24px}.detail-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.detail-row .label{color:var(--text-secondary);font-weight:600;text-transform:uppercase;font-size:12px;letter-spacing:1px}.detail-row .value{color:var(--text-primary);font-weight:600}.booking-actions{display:flex;gap:12px}.booking-actions .btn{flex:1}.no-bookings{text-align:center;padding:80px 20px;color:var(--text-secondary)}.no-bookings-icon{display:none}.no-bookings h3{font-size:1.5rem;font-weight:800;margin-bottom:12px;color:var(--text-primary);text-transform:uppercase}.no-bookings p{font-size:1.1rem;margin-bottom:32px}@media (max-width: 768px){.bookings-header h1{font-size:2rem}.bookings-tabs{flex-direction:column;align-items:center}.tab-btn{width:200px}.bookings-grid{grid-template-columns:1fr;gap:24px}.booking-actions{flex-direction:column}}.admin-dashboard{min-height:100vh;padding:40px 0}.admin-header{text-align:center;margin-bottom:48px}.admin-header h1{font-size:3rem;font-weight:900;margin-bottom:16px;background:linear-gradient(135deg,var(--accent-orange),var(--accent-green));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-transform:uppercase;letter-spacing:2px}.admin-header p{font-size:1.2rem;color:var(--text-secondary);margin-bottom:32px}.admin-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:24px;margin-bottom:48px}.classes-section h2{font-size:1.8rem;font-weight:800;margin-bottom:32px;color:var(--text-primary);text-transform:uppercase;letter-spacing:1px}.admin-classes-grid{display:grid;gap:24px}.admin-class-card{background:var(--secondary-bg);border-radius:12px;padding:24px;border:2px solid var(--border);display:flex;justify-content:space-between;align-items:center;transition:all .3s ease}.admin-class-card:hover{border-color:var(--accent-orange);box-shadow:var(--shadow)}.class-info h3{font-size:1.2rem;font-weight:800;color:var(--text-primary);margin-bottom:8px;text-transform:uppercase}.trainer{color:var(--accent-green);font-weight:600;margin-bottom:12px}.class-meta{display:flex;gap:16px;font-size:14px;color:var(--text-secondary);margin-bottom:12px}.status{padding:4px 12px;border-radius:20px;font-size:12px;font-weight:700;text-transform:uppercase}.status.active{background:var(--success);color:#fff}.status.cancelled{background:var(--danger);color:#fff}.class-actions{display:flex;gap:12px}.no-classes{text-align:center;padding:60px 20px;color:var(--text-secondary)}@media (max-width: 768px){.admin-class-card{flex-direction:column;gap:20px;text-align:center}.class-actions{width:100%}.class-actions .btn{flex:1}}.create-class-page{min-height:100vh;padding:40px 0}.create-class-header{text-align:center;margin-bottom:48px}.create-class-header h1{font-size:2.5rem;font-weight:900;margin-bottom:16px;background:linear-gradient(135deg,var(--accent-orange),var(--accent-green));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-transform:uppercase;letter-spacing:2px}.create-class-header p{font-size:1.2rem;color:var(--text-secondary)}.create-class-form-container{max-width:800px;margin:0 auto}.create-class-form{background:var(--secondary-bg);border-radius:16px;padding:40px;border:2px solid var(--border);box-shadow:var(--shadow)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}.form-textarea{resize:vertical;min-height:100px}.form-actions{display:flex;gap:16px;justify-content:flex-end;margin-top:32px;padding-top:24px;border-top:1px solid var(--border)}.form-actions .btn{min-width:120px}@media (max-width: 768px){.create-class-form{padding:24px}.form-row{grid-template-columns:1fr;gap:16px}.form-actions{flex-direction:column}.form-actions .btn{width:100%}}.create-workout-page{min-height:100vh;padding:40px 0}.workout-header{text-align:center;margin-bottom:48px}.workout-header h1{font-size:2.5rem;font-weight:900;margin-bottom:16px;background:linear-gradient(135deg,var(--accent-red),var(--accent-orange));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-transform:uppercase;letter-spacing:2px}.step-indicator{background:var(--secondary-bg);padding:8px 16px;border-radius:20px;color:var(--accent-red);font-weight:700;display:inline-block}.workout-form{max-width:600px;margin:0 auto;background:var(--secondary-bg);border-radius:16px;padding:40px;border:2px solid var(--border)}.step-content h2{text-align:center;margin-bottom:32px;color:var(--text-primary);font-size:1.8rem;font-weight:800}.workout-types{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:32px}.workout-type-btn{background:var(--primary-bg);border:2px solid var(--border);border-radius:12px;padding:32px 24px;text-align:center;cursor:pointer;transition:all .3s ease}.workout-type-btn:hover{border-color:var(--accent-red);transform:translateY(-4px)}.workout-type-btn.active{border-color:var(--accent-red);background:rgba(220,38,38,.1)}.workout-type-btn .icon{font-size:3rem;display:block;margin-bottom:16px}.workout-type-btn h3{color:var(--text-primary);margin-bottom:8px;font-size:1.2rem}.workout-type-btn p{color:var(--text-secondary);margin:0}.days-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:16px;margin-bottom:32px}.day-btn{background:var(--primary-bg);border:2px solid var(--border);border-radius:12px;padding:20px 16px;color:var(--text-primary);font-weight:700;cursor:pointer;transition:all .3s ease}.day-btn:hover{border-color:var(--accent-red);transform:translateY(-2px)}.day-btn.active{border-color:var(--accent-red);background:var(--accent-red);color:#fff}.step-actions{display:flex;gap:16px;justify-content:center}.step-actions .btn{min-width:120px}@media (max-width: 768px){.workout-types{grid-template-columns:1fr}.days-grid{grid-template-columns:repeat(3,1fr)}.step-actions{flex-direction:column}}.my-workouts-page{min-height:100vh;padding:40px 0}.workouts-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:48px}.workouts-header h1{font-size:2.5rem;font-weight:900;background:linear-gradient(135deg,var(--accent-red),var(--accent-orange));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-transform:uppercase;letter-spacing:2px}.workouts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:32px}.workout-card{background:var(--secondary-bg);border-radius:16px;padding:24px;border:2px solid var(--border);transition:all .3s ease}.workout-card:hover{transform:translateY(-4px);border-color:var(--accent-red);box-shadow:var(--shadow-hover)}.workout-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--border)}.workout-header h3{font-size:1.3rem;font-weight:800;color:var(--text-primary);margin:0;text-transform:uppercase}.workout-status{padding:4px 12px;border-radius:20px;font-size:12px;font-weight:700;text-transform:uppercase}.workout-status.active{background:var(--success);color:#fff}.workout-details{margin-bottom:20px}.detail-item{display:flex;justify-content:space-between;margin-bottom:8px}.detail-item .label{color:var(--text-secondary);font-weight:600;text-transform:uppercase;font-size:12px}.detail-item .value{color:var(--text-primary);font-weight:600;text-transform:capitalize}.workout-plan-preview{background:var(--primary-bg);border-radius:8px;padding:16px;margin-bottom:20px}.workout-plan-preview h4{color:var(--accent-red);margin-bottom:12px;font-size:14px;text-transform:uppercase;font-weight:800}.day-preview{color:var(--text-secondary);font-size:14px;margin-bottom:4px}.more-days{color:var(--accent-orange);font-size:12px;font-weight:700;margin-top:8px}.no-workouts{text-align:center;padding:80px 20px;color:var(--text-secondary)}.no-workouts-icon{display:none}.no-workouts h3{font-size:1.5rem;font-weight:800;margin-bottom:12px;color:var(--text-primary);text-transform:uppercase}@media (max-width: 768px){.workouts-header{flex-direction:column;gap:24px;text-align:center}.workouts-grid{grid-template-columns:1fr}}.workout-generating-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--primary-bg) 0%,var(--secondary-bg) 100%)}.generating-content{text-align:center;max-width:600px}.generating-animation{margin-bottom:48px}.pulse-circle{width:120px;height:120px;border-radius:50%;background:linear-gradient(135deg,var(--accent-red),var(--accent-orange));display:flex;align-items:center;justify-content:center;margin:0 auto;animation:pulse-glow 2s infinite;position:relative}.pulse-circle:before{content:"";position:absolute;width:140px;height:140px;border-radius:50%;background:linear-gradient(135deg,var(--accent-red),var(--accent-orange));opacity:.3;animation:pulse-outer 2s infinite}.inner-circle{width:80px;height:80px;border-radius:50%;background:var(--primary-bg);display:flex;align-items:center;justify-content:center;position:relative;z-index:2}.inner-circle .icon{display:none}.generating-content h1{font-size:2.5rem;font-weight:900;margin-bottom:48px;background:linear-gradient(135deg,var(--accent-red),var(--accent-orange));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-transform:uppercase;letter-spacing:2px}.progress-steps{display:flex;flex-direction:column;gap:24px;margin-bottom:48px}.progress-step{display:flex;align-items:center;gap:16px;opacity:.3;transition:all .5s ease}.progress-step.active{opacity:1}.progress-step.current{transform:scale(1.05)}.step-dot{width:12px;height:12px;border-radius:50%;background:var(--border);transition:all .5s ease}.progress-step.active .step-dot{background:var(--accent-red);box-shadow:0 0 20px #dc262680}.progress-step.current .step-dot{animation:pulse-dot 1s infinite}.step-text{color:var(--text-secondary);font-weight:600;text-align:left}.progress-step.active .step-text{color:var(--text-primary)}.progress-step.current .step-text{color:var(--accent-red)}.success-message{animation:fadeInUp .8s ease}.success-icon{display:none}.success-message p{font-size:1.2rem;color:var(--accent-red);font-weight:700}@keyframes pulse-glow{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@keyframes pulse-outer{0%{transform:scale(1);opacity:.3}50%{transform:scale(1.2);opacity:.1}to{transform:scale(1.4);opacity:0}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes pulse-dot{0%,to{transform:scale(1)}50%{transform:scale(1.3)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.generated-plan{animation:fadeInUp .8s ease;max-width:800px;margin:0 auto}.plan-header{text-align:center;margin-bottom:32px}.plan-header h2{font-size:2rem;font-weight:900;color:var(--accent-red);margin-bottom:8px;text-transform:uppercase}.plan-header p{color:var(--text-secondary);font-weight:600;text-transform:uppercase;font-size:14px;letter-spacing:1px}.plan-days{display:grid;gap:24px;margin-bottom:32px}.plan-day{background:var(--secondary-bg);border-radius:12px;padding:20px;border:2px solid var(--border)}.plan-day h3{color:var(--accent-red);font-size:1.2rem;font-weight:800;margin-bottom:16px;text-transform:uppercase}.exercises{display:grid;gap:12px}.exercise{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--border)}.exercise:last-child{border-bottom:none}.exercise-name{color:var(--text-primary);font-weight:600}.exercise-details{color:var(--text-secondary);font-size:14px;font-weight:500}@media (max-width: 768px){.generating-content h1{font-size:2rem}.progress-steps{gap:16px}.step-text{font-size:14px}.plan-days{gap:16px}.plan-day{padding:16px}.exercise{flex-direction:column;align-items:flex-start;gap:4px}}.workout-detail-page{min-height:100vh;padding:40px 0}.workout-detail-header{margin-bottom:48px}.back-btn{background:transparent;border:2px solid var(--accent-red);color:var(--accent-red);padding:8px 16px;border-radius:8px;cursor:pointer;font-weight:600;margin-bottom:24px;transition:all .3s ease}.back-btn:hover{background:var(--accent-red);color:#fff}.workout-detail-header h1{font-size:3rem;font-weight:900;margin-bottom:16px;background:linear-gradient(135deg,var(--accent-red),var(--accent-orange));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-transform:uppercase;letter-spacing:2px}.workout-meta{display:flex;gap:16px}.workout-type,.workout-days{background:var(--secondary-bg);padding:8px 16px;border-radius:20px;font-weight:700;text-transform:uppercase;font-size:12px;letter-spacing:1px}.workout-type{color:var(--accent-red);border:2px solid var(--accent-red)}.workout-days{color:var(--accent-orange);border:2px solid var(--accent-orange)}.workout-plan{display:grid;gap:32px}.workout-day{background:var(--secondary-bg);border-radius:16px;padding:32px;border:2px solid var(--border)}.workout-day h2{font-size:1.5rem;font-weight:800;color:var(--accent-red);margin-bottom:24px;text-transform:uppercase;letter-spacing:1px}.exercises-list{display:grid;gap:20px}.exercise-item{background:var(--primary-bg);border-radius:12px;padding:20px;border:1px solid var(--border);transition:all .3s ease}.exercise-item:hover{border-color:var(--accent-red);transform:translateY(-2px)}.exercise-info h3{font-size:1.2rem;font-weight:800;color:var(--text-primary);margin-bottom:12px;text-transform:uppercase}.exercise-details{display:flex;gap:16px;margin-bottom:8px}.sets,.reps,.intensity{background:var(--secondary-bg);padding:4px 12px;border-radius:16px;font-size:12px;font-weight:700;text-transform:uppercase}.sets{color:var(--accent-red)}.reps{color:var(--accent-orange)}.intensity{color:var(--accent-yellow)}.exercise-notes{color:var(--text-secondary);font-style:italic;margin:8px 0 0;font-size:14px}@media (max-width: 768px){.workout-detail-header h1{font-size:2rem}.workout-meta{flex-direction:column;gap:8px}.workout-type,.workout-days{display:inline-block;width:fit-content}.exercise-details{flex-wrap:wrap;gap:8px}}:root{--primary-bg: #1a1a1a;--secondary-bg: #2a2a2a;--accent-red: #dc2626;--accent-orange: #ea580c;--accent-yellow: #d97706;--text-primary: #ffffff;--text-secondary: #a3a3a3;--danger: #dc2626;--warning: #ea580c;--success: #16a34a;--border: #404040;--shadow: 0 8px 32px rgba(220, 38, 38, .15);--shadow-hover: 0 12px 48px rgba(220, 38, 38, .25)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Arial,sans-serif;background:var(--primary-bg);color:var(--text-primary);line-height:1.6;overflow-x:hidden}.container{max-width:1200px;margin:0 auto;padding:0 20px}.btn{padding:12px 24px;border:none;border-radius:8px;font-weight:700;text-transform:uppercase;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-block;text-align:center;font-size:14px;letter-spacing:1px;position:relative;overflow:hidden}.btn:active{transform:scale(.95);transition:transform .1s ease}.btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:rgba(255,255,255,.2);border-radius:50%;transform:translate(-50%,-50%);transition:width .6s,height .6s}.btn:active:before{width:300px;height:300px}.btn-primary{background:var(--accent-red);color:#fff!important;box-shadow:var(--shadow);z-index:1}.btn-primary *{color:#fff!important;position:relative;z-index:2}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-hover);background:#b91c1c}.btn-primary:hover *{color:#fff!important}.btn-secondary{background:transparent;color:var(--accent-orange)!important;border:2px solid var(--accent-orange)}.btn-secondary *{color:var(--accent-orange)!important;position:relative;z-index:2}.btn-secondary:hover{background:var(--accent-orange);color:#fff!important;transform:translateY(-2px)}.btn-secondary:hover *{color:#fff!important}.btn-danger{background:var(--danger);color:#fff!important}.btn-danger *{color:#fff!important;position:relative;z-index:2}.btn-danger:hover{background:#ff3742;transform:translateY(-2px)}.btn-success{background:var(--success);color:#fff!important}.btn-success *{color:#fff!important;position:relative;z-index:2}.btn-success:hover{background:#15803d;transform:translateY(-2px)}.form-group{margin-bottom:20px}.form-label{display:block;margin-bottom:8px;font-weight:700;color:var(--text-primary);text-transform:uppercase;font-size:12px;letter-spacing:1px}.form-input{width:100%;padding:12px 16px;background:var(--secondary-bg);border:2px solid var(--border);border-radius:8px;color:var(--text-primary);font-size:16px;transition:all .3s ease}.form-input:focus{outline:none;border-color:var(--accent-red);box-shadow:0 0 0 3px #dc262626}.card{background:var(--secondary-bg);border-radius:12px;padding:24px;border:1px solid var(--border);transition:all .3s ease;position:relative;overflow:hidden}.card:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(220,38,38,.1),transparent);transition:left .5s}.card:hover:after{left:100%}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover);border-color:var(--accent-red)}.grid{display:grid;gap:24px}.grid-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.flex{display:flex}.flex-between{justify-content:space-between;align-items:center}.flex-center{justify-content:center;align-items:center}.flex-col{flex-direction:column}.text-center{text-align:center}.text-red{color:var(--accent-red)}.text-orange{color:var(--accent-orange)}.text-yellow{color:var(--accent-yellow)}.text-danger{color:var(--danger)}.badge{padding:4px 12px;border-radius:20px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:1px}.badge-success{background:var(--success);color:#fff}.badge-warning{background:var(--warning);color:var(--primary-bg)}.badge-danger{background:var(--danger);color:#fff}.loading{display:flex;justify-content:center;align-items:center;min-height:200px}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.btn:disabled:hover{transform:none!important;box-shadow:var(--shadow)!important}.spinner{width:40px;height:40px;border:4px solid var(--border);border-top:4px solid var(--accent-green);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.pulse{animation:pulse 2s infinite}.shake{animation:shake .5s ease-in-out}.hero{background:linear-gradient(135deg,var(--primary-bg) 0%,var(--secondary-bg) 100%);padding:80px 0;text-align:center;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 50% 50%,rgba(220,38,38,.15) 0%,transparent 70%)}.hero-content{position:relative;z-index:1}.hero h1{font-size:4rem;font-weight:900;margin-bottom:20px;background:linear-gradient(135deg,var(--accent-red),var(--accent-orange));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-transform:uppercase;letter-spacing:2px}.hero p{font-size:1.2rem;color:var(--text-secondary);margin-bottom:40px;max-width:600px;margin-left:auto;margin-right:auto}@media (max-width: 768px){.hero h1{font-size:2.5rem}.grid-2,.grid-3{grid-template-columns:1fr}.container{padding:0 16px}}
