@import"https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&family=DM+Sans:wght@400;500;600;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap";.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;z-index:100;direction:rtl;padding:0}.modal-content{background:#fff;width:100%;max-width:100%;margin:0;box-sizing:border-box;max-height:95vh;border-radius:16px 16px 0 0;overflow-y:auto;animation:slideUp .3s ease;align-self:stretch}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:2px solid #f0f0f0;position:sticky;top:0;background:linear-gradient(135deg,#fff,#f5f7fa);z-index:10;box-shadow:0 2px 8px #0000000d}.header-info{display:flex;flex-direction:column;gap:6px;flex:1}.program-title{font-size:12px;font-weight:700;color:#667eea;text-transform:uppercase;letter-spacing:1px}.modal-header h2{margin:0;font-size:22px;font-weight:900;color:#212121;letter-spacing:.3px}.modal-close{background:linear-gradient(135deg,#f5f5f5,#eee);border:none;font-size:24px;cursor:pointer;color:#666;padding:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .3s cubic-bezier(.4,0,.2,1);flex-shrink:0}.modal-close:hover{background:linear-gradient(135deg,#d32f2f,#b71c1c);color:#fff;transform:rotate(90deg);box-shadow:0 4px 12px #d32f2f40}.workout-form{padding:20px;display:flex;flex-direction:column;gap:20px}.exercises-section{display:flex;flex-direction:column;gap:20px;width:100%;box-sizing:border-box}.exercises-section h3{font-size:20px;font-weight:600;color:#212121;margin:0;text-transform:uppercase;letter-spacing:.5px}.exercise-card{background:#f5f5f5;border:1px solid #e0e0e0;border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:16px;transition:all .3s ease;width:100%;box-sizing:border-box;min-height:200px}.exercise-card:hover{border-color:#d32f2f;box-shadow:0 2px 8px #0000000d}.exercise-card h4{margin:0;font-size:18px;font-weight:700;color:#212121;text-transform:capitalize}.exercise-description{margin:0;font-size:14px;color:#666;font-style:normal;line-height:1.5}.sets-header{background:#fff3e0;padding:12px 16px;border-radius:8px;border-left:4px solid #ff9800;transition:all .2s ease}.sets-count{font-size:14px;font-weight:600;color:#e65100;letter-spacing:.3px}.exercise-details{display:flex;flex-direction:column;gap:16px;width:100%;box-sizing:border-box}.sets-list{display:flex;flex-direction:column;gap:12px;background:#fff;padding:16px;border:1px solid #e0e0e0;border-radius:8px;width:100%;box-sizing:border-box}.set-item{display:flex;flex-direction:column;gap:12px;padding:16px;background:#fafafa;border:1px solid #e0e0e0;border-radius:8px;transition:all .2s ease;width:100%;box-sizing:border-box}.set-item:hover{border-color:#d32f2f;box-shadow:0 2px 4px #d32f2f1a}.set-number{font-size:14px;font-weight:600;color:#d32f2f;text-transform:uppercase;letter-spacing:.5px}.set-inputs{display:grid;grid-template-columns:1fr 1fr;gap:12px;width:100%}.set-field{display:flex;flex-direction:column;gap:6px}.set-field label{font-size:13px;font-weight:600;color:#555;text-transform:uppercase;letter-spacing:.3px}.weight-input,.reps-input{padding:10px;border:1px solid #ddd;border-radius:6px;font-size:16px;font-weight:500;color:#212121;text-align:center;background:#fff;width:100%;box-sizing:border-box;min-width:0;height:44px}.weight-input::placeholder,.reps-input::placeholder{color:#bbb}.weight-input:focus,.reps-input:focus{outline:none;border-color:#d32f2f;background:#fff5f5;box-shadow:0 0 0 3px #d32f2f1a}.reps-target-display{display:flex;align-items:center;gap:6px;width:100%;min-width:0}.reps-input{flex:1;text-align:center;min-width:0}.target-reps{font-size:14px;color:#999;font-weight:600;flex-shrink:0}.detail-item{display:flex;flex-direction:column;gap:8px;width:100%;box-sizing:border-box}.detail-item label{font-size:14px;font-weight:600;color:#333;text-transform:uppercase;letter-spacing:.5px}.detail-item input,.detail-item textarea{padding:12px;border:1px solid #ddd;border-radius:8px;font-family:inherit;font-size:16px;color:#212121;background:#fff;resize:vertical;width:100%;box-sizing:border-box;min-width:0;min-height:44px}.detail-item textarea::placeholder{color:#bbb}.detail-item input:focus,.detail-item textarea:focus{outline:none;border-color:#d32f2f;box-shadow:0 0 0 3px #d32f2f1a;background:#fff5f5}.reps-section{display:flex;flex-direction:column;gap:6px}.reps-section label{font-size:12px;font-weight:600;color:#333}.reps-inputs{display:grid;grid-template-columns:repeat(auto-fit,minmax(50px,1fr));gap:8px}.rep-input{padding:8px 6px;border:1px solid #ddd;border-radius:6px;font-size:13px;text-align:center;font-weight:600;color:#212121}.rep-input:focus{outline:none;border-color:#d32f2f;box-shadow:0 0 0 3px #d32f2f1a}.form-group label{font-size:13px;font-weight:600;color:#333;text-transform:uppercase;letter-spacing:.5px}.form-group input,.form-group textarea{padding:8px;border:1px solid #ddd;border-radius:6px;font-family:inherit;font-size:14px;color:#212121;background:#fff;resize:vertical;width:100%;box-sizing:border-box;min-width:0}.form-group input::placeholder{color:#bbb}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#d32f2f;box-shadow:0 0 0 3px #d32f2f1a;background:#fff5f5}.btn-cancel,.btn-submit{flex:1;padding:12px 16px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.5px}@media (max-width: 600px){.modal-content{max-height:95vh}.modal-header{padding:16px}.workout-form{padding:16px;gap:16px}.reps-inputs{grid-template-columns:repeat(auto-fit,minmax(45px,1fr))}.modal-actions{gap:8px}}.success-view{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:16px;text-align:center}.success-icon{font-size:60px;color:#4caf50;animation:successPulse .6s ease}@keyframes successPulse{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.success-view h3{font-size:20px;font-weight:600;color:#2e7d32;margin:0}.success-view p{font-size:14px;color:#666;margin:0}.activity-form{padding:16px;display:flex;flex-direction:column;gap:16px}.activity-type-selector{display:flex;flex-direction:column;gap:10px;width:100%;box-sizing:border-box}.activity-type-selector label{font-size:13px;font-weight:600;color:#333;text-transform:uppercase;letter-spacing:.5px}.activity-types{display:grid;grid-template-columns:1fr 1fr;gap:10px}.type-btn{padding:12px 16px;border:2px solid #ddd;background:#fff;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;color:#666}.type-btn:hover{border-color:#d32f2f;color:#d32f2f;background:#fff5f5}.type-btn.active{background:#d32f2f;color:#fff;border-color:#d32f2f;box-shadow:0 2px 8px #d32f2f4d}.exercises-section{display:flex;flex-direction:column;gap:12px;width:100%;box-sizing:border-box}.exercises-section h3{font-size:16px;font-weight:600;color:#212121;margin:0;text-transform:uppercase;letter-spacing:.5px}.exercise-card{background:#f5f5f5;border:1px solid #e0e0e0;border-radius:8px;padding:12px;display:flex;flex-direction:column;gap:10px;width:100%;box-sizing:border-box}.exercise-card:hover{border-color:#d32f2f;box-shadow:0 2px 4px #0000000d}.exercise-header{display:flex;gap:8px;align-items:center;width:100%;box-sizing:border-box}.exercise-title{flex:1;min-width:0;padding:8px;border:1px solid #ddd;border-radius:6px;font-size:13px;font-weight:600;color:#212121;background:#fff}.exercise-title:focus{outline:none;border-color:#d32f2f;background:#fff5f5;box-shadow:0 0 0 3px #d32f2f1a}.exercise-title::placeholder{color:#bbb}.btn-remove{padding:6px 10px;background:#ffebee;color:#d32f2f;border:none;border-radius:6px;font-size:11px;font-weight:600;cursor:pointer;transition:all .3s ease;white-space:nowrap}.btn-remove:hover{background:#ef5350;color:#fff}.sets-input-group{display:flex;gap:8px;align-items:center;width:100%;box-sizing:border-box}.sets-input-group label{font-size:11px;font-weight:600;color:#555;text-transform:uppercase;min-width:60px}.sets-input-group input{flex:0 0 70px;padding:6px;border:1px solid #ddd;border-radius:6px;font-size:12px;text-align:center;color:#212121;background:#fff}.sets-input-group input:focus{outline:none;border-color:#d32f2f;background:#fff5f5;box-shadow:0 0 0 3px #d32f2f1a}.sets-details{display:flex;flex-direction:column;gap:8px;background:#fff;padding:10px;border:1px solid #e0e0e0;border-radius:6px;width:100%;box-sizing:border-box}.set-row{display:grid;grid-template-columns:50px 1fr 1fr;gap:6px;align-items:center;padding:8px;background:#fafafa;border-radius:6px;border:1px solid #eeeeee}.set-label{font-size:11px;font-weight:600;color:#d32f2f;text-align:center;text-transform:uppercase;letter-spacing:.3px}.set-weight,.set-reps{padding:6px;border:1px solid #ddd;border-radius:4px;font-size:12px;font-weight:500;text-align:center;color:#212121;background:#fff;width:100%;box-sizing:border-box;min-width:0}.set-weight:focus,.set-reps:focus{outline:none;border-color:#d32f2f;background:#fff5f5;box-shadow:0 0 0 3px #d32f2f1a}.set-weight::placeholder,.set-reps::placeholder{color:#bbb}.btn-add-exercise{padding:10px 12px;background:#fff;border:2px dashed #d32f2f;border-radius:8px;font-size:13px;font-weight:600;color:#d32f2f;cursor:pointer;transition:all .3s ease;width:100%;box-sizing:border-box}.btn-add-exercise:hover{background:#fff5f5;border-color:#b71c1c;color:#b71c1c}.form-group{display:flex;flex-direction:column;gap:6px;width:100%;box-sizing:border-box}.form-group label{font-size:12px;font-weight:600;color:#333;text-transform:uppercase;letter-spacing:.5px}.form-group textarea{padding:8px;border:1px solid #ddd;border-radius:6px;font-family:inherit;font-size:13px;color:#212121;background:#fff;resize:vertical;width:100%;box-sizing:border-box;min-width:0}.form-group textarea:focus{outline:none;border-color:#d32f2f;box-shadow:0 0 0 3px #d32f2f1a;background:#fff5f5}.form-group textarea::placeholder{color:#bbb}.error-message{background:#ffebee;color:#c62828;padding:10px 12px;border-radius:6px;font-size:13px;border-left:4px solid #c62828}.no-program-view{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:16px;text-align:center}.warning-icon{font-size:60px;animation:warningPulse .8s ease infinite}@keyframes warningPulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.no-program-view h3{font-size:18px;font-weight:700;color:#d32f2f;margin:0}.no-program-view p{font-size:14px;color:#666;margin:0;line-height:1.5}.btn-close-modal{padding:10px 24px;background:#d32f2f;color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.5px;margin-top:10px}.btn-close-modal:hover{background:#b71c1c}.modal-actions{display:flex;gap:10px;margin-top:10px;padding-bottom:10px;width:100%;box-sizing:border-box}.btn-cancel,.btn-submit{flex:1;padding:10px 12px;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.5px;min-width:0}.btn-cancel{background:#f5f5f5;color:#212121;border:1px solid #ddd}.btn-cancel:hover:not(:disabled){background:#eee}.btn-submit{background:#d32f2f;color:#fff}.btn-submit:hover:not(:disabled){background:#b71c1c}@media (max-width: 600px){.activity-form{padding:14px;gap:14px}.modal-actions{gap:8px}.set-row{grid-template-columns:45px 1fr 1fr}.btn-remove{padding:4px 8px;font-size:10px}}.create-workout-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:300;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;overflow-y:auto;padding:0}.create-workout-modal{background:var(--accent-color);width:100%;max-width:100%;border-radius:16px 16px 0 0;box-shadow:0 4px 24px #00000026;animation:slideUpModal .3s ease;margin:0;box-sizing:border-box;align-self:stretch}.create-workout-header{display:flex;align-items:center;justify-content:space-between;padding:20px;border-bottom:2px solid var(--border-color);gap:12px}.header-title{font-size:18px;font-weight:700;color:var(--text-primary);margin:0;flex:1;text-align:right}.create-workout-modal[dir=ltr] .header-title{text-align:left}.close-btn{background:none;border:none;font-size:28px;cursor:pointer;color:var(--text-primary);display:flex;align-items:center;justify-content:center;padding:6px;order:-1;transition:color .3s ease}.close-btn:hover{color:var(--primary-color)}.create-workout-modal[dir=ltr] .close-btn{order:0}.create-workout-form{padding:24px;max-height:calc(100vh - 150px);overflow-y:auto;display:flex;flex-direction:column;gap:24px}.workout-info-section{display:flex;flex-direction:column;gap:14px;padding-bottom:20px;border-bottom:2px solid var(--border-color)}.form-group label{font-size:13px;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.create-workout-modal[dir=ltr] .form-input,.create-workout-modal[dir=ltr] .form-input-small,.create-workout-modal[dir=ltr] .input-field,.create-workout-modal[dir=ltr] textarea.input-field{text-align:left;direction:ltr}.create-workout-modal[dir=rtl] .form-input,.create-workout-modal[dir=rtl] .form-input-small,.create-workout-modal[dir=rtl] .input-field,.create-workout-modal[dir=rtl] textarea.input-field{text-align:right;direction:rtl}.create-workout-modal[dir=rtl] .form-group label,.create-workout-modal[dir=rtl] .input-group label{text-transform:none;letter-spacing:0}.form-input,.form-input-small{padding:14px;border:2px solid var(--border-color);border-radius:10px;font-size:15px;font-family:inherit;color:var(--text-primary);transition:all .3s ease;width:100%}.form-input:focus,.form-input-small:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #d32f2f1a}.form-input::placeholder,.form-input-small::placeholder,.input-field::placeholder{text-align:inherit;direction:inherit}.input-field{width:100%;padding:12px 14px;border:1.5px solid var(--border-color);border-radius:12px;font-size:14px;font-family:var(--font-primary);background:var(--accent-color);color:var(--text-primary);transition:border-color .3s ease,box-shadow .3s ease;box-shadow:0 10px 18px #0000000d;box-sizing:border-box;text-align:start}.input-field:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #d32f2f40}.input-field::placeholder{color:#9f9f9f;font-weight:400}textarea.input-field{min-height:80px;resize:vertical}.exercises-section{display:flex;flex-direction:column;gap:12px}.section-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.create-workout-modal[dir=ltr] .section-header{flex-direction:row}.create-workout-modal[dir=rtl] .section-header{flex-direction:row-reverse}.section-header h3{font-size:16px;font-weight:700;color:var(--text-primary);margin:0}.create-workout-modal[dir=ltr] .section-header h3{text-align:left}.create-workout-modal[dir=rtl] .section-header h3{text-align:right}.add-exercise-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 16px;background:var(--accent-color);color:var(--secondary-color);border:2px solid var(--secondary-color);border-radius:12px;cursor:pointer;font-size:13px;font-weight:700;text-transform:none;letter-spacing:.5px;box-shadow:0 10px 20px #0000001f;transition:all .3s ease}.add-exercise-btn:hover{background:var(--secondary-color);color:var(--accent-color);border-color:var(--secondary-color);transform:translateY(-2px);box-shadow:0 12px 24px #0000002e}.exercises-list{display:flex;flex-direction:column;gap:18px}.create-exercise-card{background:linear-gradient(180deg,#ff5252,#d32f2f);border-radius:24px;padding:20px;width:100%;box-sizing:border-box;display:flex;flex-direction:column;gap:16px;box-shadow:0 20px 35px #d32f2f40;color:#fff}@media (max-width: 768px){.create-exercise-card{flex-direction:column;align-items:stretch}}.exercise-card-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.exercise-letter-label{font-size:2.6rem;font-weight:900;letter-spacing:.4rem;color:#fff}.input-group label{color:#fffffff2}.create-exercise-card .input-field{width:100%;padding:12px 14px;border:1.5px solid rgba(255,255,255,.5);border-radius:12px;font-size:14px;font-family:var(--font-primary);background:#ffffff1f;color:#fff;transition:border-color .3s ease,box-shadow .3s ease;box-sizing:border-box;text-align:inherit;direction:inherit}.create-exercise-card .input-field:focus{outline:none;border-color:#fff;box-shadow:0 0 0 3px #fff3}.create-exercise-card .input-field::placeholder{color:#ffffffb3;font-weight:400;text-align:inherit}.input-group.full-width textarea.input-field{min-height:80px}.remove-exercise-btn{align-self:flex-start;padding:10px 18px;border:2px solid #fff;border-radius:16px;background:#ffffff14;color:#fff;font-weight:700;font-size:14px;display:inline-flex;align-items:center;gap:8px;cursor:pointer;transition:all .3s ease;min-width:140px;justify-content:center}.remove-exercise-btn:hover{background:#ffffff4d}.input-group label{font-size:12px;font-weight:700;color:#fffffff2;text-transform:uppercase;letter-spacing:.5px;display:inline-flex;align-items:baseline;gap:4px;white-space:nowrap}.input-group label:after{content:" :";margin-inline-start:6px}.input-group.full-width textarea.input-field{min-height:100px}.error-message{padding:12px;background:#f4433626;border:1px solid #f44336;border-radius:8px;color:#d32f2f;font-size:13px;font-weight:600}.form-actions{display:flex;gap:10px;padding-top:16px;border-top:2px solid var(--border-color)}.btn-submit{width:100%;padding:16px 20px;border:none;border-radius:10px;font-size:15px;font-weight:700;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:1px;background:var(--primary-color);color:var(--accent-color)}.btn-submit:hover:not(:disabled){background:var(--primary-dark);transform:translateY(-2px);box-shadow:0 6px 16px #d32f2f66}.btn-secondary{width:100%;padding:14px 16px;background:transparent;color:var(--primary-color);border:2px solid var(--primary-color);border-radius:10px;font-size:14px;font-weight:700;cursor:pointer;transition:all .3s ease}.btn-secondary:hover:not(:disabled){background:var(--primary-color);color:var(--accent-color)}.assignment-summary{background:var(--accent-color);border:1px solid var(--border-color);border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:8px}.summary-header{display:flex;align-items:center;justify-content:space-between;gap:8px;font-weight:700;color:var(--text-primary)}.summary-actions{display:flex;gap:8px;flex-wrap:wrap}.summary-chip{padding:8px 12px;border-radius:10px;border:1px solid var(--border-color);background:var(--accent-color);color:var(--text-primary);cursor:pointer;font-weight:700;font-size:13px}.summary-chip.primary{border-color:var(--primary-color);color:var(--primary-color)}.summary-chip.active,.summary-chip.selected{background:var(--primary-color);color:var(--accent-color);border-color:var(--primary-color)}.selected-item-chip{display:inline-flex;align-items:center;gap:8px;background:#000;color:#fff;padding:8px 12px;border-radius:8px;font-size:13px;font-family:Inter,sans-serif;font-weight:600;position:relative;border:1px solid #000;transition:all .2s ease}.selected-item-chip:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.chip-icon{display:flex;align-items:center;justify-content:center;font-size:14px;color:#fff}.chip-remove{display:flex;align-items:center;justify-content:center;background:#fff3;border:none;border-radius:50%;width:20px;height:20px;cursor:pointer;color:#fff;margin-left:4px;transition:all .2s ease}.chip-remove:hover{background:#fff6;transform:scale(1.1)}.summary-body{display:flex;flex-wrap:wrap;gap:8px;font-size:13px;color:var(--text-secondary)}.summary-hint{color:var(--text-secondary);font-size:12px}.target-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:400;padding:16px}.target-modal{background:var(--accent-color);border-radius:16px;width:min(520px,100%);box-shadow:0 16px 36px #00000040;overflow:hidden;display:flex;flex-direction:column}.target-modal-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border-color)}.target-tabs{display:flex;gap:8px}.target-tab{padding:8px 14px;border-radius:10px;border:1px solid #111827;background:#fff;cursor:pointer;font-weight:700;color:#111827;transition:all .2s ease}.target-tab.active{background:#111827;color:#fff;border-color:#111827}.target-modal-body{padding:16px;max-height:320px;overflow-y:auto}.target-modal-footer{padding:12px 16px;border-top:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;gap:10px}.footer-actions{display:flex;gap:8px}.target-cancel,.target-confirm{padding:10px 14px;border-radius:10px;border:1px solid var(--border-color);cursor:pointer;font-weight:700}.target-cancel{background:transparent;color:var(--text-primary)}.target-confirm{background:#16a34a;color:#fff;border-color:#16a34a}@keyframes slideUpModal{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.program-view-modal{width:100%;max-width:100%;max-height:90vh;overflow-y:auto;display:flex;flex-direction:column;margin:0;box-sizing:border-box}.program-view-content{padding:24px;display:flex;flex-direction:column;gap:32px;flex:1}.program-info-section{background:transparent;border-radius:0;padding:0;border:none}.program-info-section[dir=rtl]{direction:rtl;text-align:right}.program-info-section[dir=ltr]{direction:ltr;text-align:left}.focus-section{margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid #e8e8e8}.focus-section label{display:block;font-size:.9rem;font-weight:600;color:#555;margin-bottom:10px;text-transform:uppercase;letter-spacing:.5px}.focus-tags{display:flex;flex-wrap:wrap;gap:8px}.tag{background:#e3f2fd;color:#1976d2;padding:6px 12px;border-radius:16px;font-size:.85rem;font-weight:500}.description-section,.goals-section{padding-bottom:15px;border-bottom:1px solid #e8e8e8}.description-section:last-child,.goals-section:last-child{border-bottom:none}.description-section{display:flex;flex-direction:column;gap:8px}.description-section[dir=rtl]{align-items:flex-end;text-align:right;direction:rtl}.description-section[dir=ltr]{align-items:flex-start;text-align:left;direction:ltr}.description-section label,.goals-section label{display:block;font-size:.85rem;font-weight:700;color:#212121;margin-bottom:10px;text-transform:uppercase;letter-spacing:.5px}.description-section[dir=rtl] label{align-self:flex-end;text-align:right}.description-section[dir=ltr] label{align-self:flex-start;text-align:left}.description-section p,.goals-section p{font-size:.95rem;color:#555;line-height:1.6;margin:0}.description-section[dir=rtl] p{text-align:right}.description-section[dir=ltr] p{text-align:left}.program-view-header{direction:ltr;align-items:flex-start}.program-view-header .header-info{align-items:flex-start;text-align:left}.program-view-header h2{text-align:left;width:100%}.workouts-section{margin-top:16px;direction:ltr;text-align:left}.workout-section-title{text-align:left}.section-block{margin-bottom:22px}.section-letter{font-size:96px;font-weight:900;color:#fffffff2;text-align:center;margin:12px 0 8px;letter-spacing:.4rem}@media (max-width: 768px){.section-letter{font-size:64px;letter-spacing:.3rem}}.exercise-description-block[dir=ltr]{direction:ltr;text-align:left}.exercise-description-block[dir=rtl]{direction:rtl;text-align:right}.exercise-description-block[dir=ltr] .description-label,.exercise-description-block[dir=rtl] .description-label{text-align:inherit}.exercise-description-block p[dir=ltr]{direction:ltr;text-align:left}.exercise-description-block p[dir=rtl]{direction:rtl;text-align:right}.workout-section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.exercise-count-navigation{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-start;direction:ltr}.exercise-navigation{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-start;direction:ltr}.exercise-nav-circle{width:44px;height:44px;border-radius:50%;border:2px solid #c62828;background:#fff;color:#c62828;font-family:var(--font-primary);font-weight:700;font-size:1.3rem;letter-spacing:.3px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s ease,background .2s ease,color .2s ease;box-shadow:0 4px 12px #0000001a;text-transform:uppercase}.exercise-nav-circle:hover{transform:translateY(-3px)}.exercise-nav-circle.active{background:#d32f2f;color:#fff;border-color:#b71c1c;box-shadow:0 10px 18px #c6282859}.workout-section-title h3{font-size:1.4rem;font-weight:900;color:#1f1f1f;margin:0;text-transform:uppercase;letter-spacing:.5px}.workout-count{font-size:1.1rem;font-weight:700;color:#fff;background:#d32f2f;border-radius:50%;width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border:2px solid rgba(255,255,255,.7);box-shadow:0 6px 12px #00000040;letter-spacing:.3px}.exercise-list{display:flex;flex-direction:column;gap:20px;width:100%}.exercise-card-row{display:flex;flex-direction:column;width:100%;cursor:pointer;margin-bottom:12px}.exercise-card-row:focus-visible{outline:none}.exercise-card-simple{background:linear-gradient(180deg,#ff5252,#d32f2f);border:none;border-radius:16px;padding:18px 20px 22px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%;flex:1;box-sizing:border-box;display:flex;flex-direction:column;overflow:visible;box-shadow:0 20px 30px #d32f2f40;color:#fff}.exercise-card-simple:not(.expanded){min-height:100px}.exercise-card-simple:hover:not(.expanded){transform:translate(-4px);box-shadow:0 28px 40px #d32f2f4d}.exercise-card-simple.expanded{background:linear-gradient(180deg,#ff6161,#c62828)}.exercise-card-header-simple{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%}.arrow-left,.arrow-right{font-size:1.6rem;color:#fffc;font-weight:700;min-width:24px;text-align:center;flex-shrink:0;transition:transform .3s ease}.exercise-card-simple.expanded .arrow-left{transform:rotate(-90deg)}.exercise-card-simple.expanded .arrow-right{transform:rotate(90deg)}.exercise-name-center{flex:1;text-align:center}.exercise-name-center h5{font-size:1.3rem;font-weight:700;color:#fff;margin:0;letter-spacing:.3px}.exercise-description-block{margin-top:16px;padding:12px 14px;border-radius:14px;background:#fffffff2;border-left:4px solid rgba(255,255,255,.6);color:#2f2f2f}.description-label{display:block;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.4px;margin-bottom:6px;color:#d32f2f}.exercise-description-block p{margin:0;font-size:.95rem;line-height:1.6;white-space:pre-line}.coach-submissions-btn{width:100%;max-width:220px;margin:0 auto;padding:10px 14px;border-radius:12px;border:2px solid #0b1220;background:#111c44;color:#fff;font-family:var(--font-primary);font-size:14px;letter-spacing:.6px;font-weight:700;text-transform:uppercase;display:flex;align-items:center;justify-content:center;gap:6px;cursor:pointer;box-shadow:0 10px 18px #111c4440;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.coach-submissions-btn:hover{transform:translateY(-1px);box-shadow:0 14px 22px #111c4447;background:#0c1433}.coach-submissions-modal{max-width:520px;width:100%;padding:0;border-radius:24px;overflow:hidden;box-shadow:0 20px 50px #00000040}.coach-submissions-modal-header{position:relative;display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid #e5e7eb}.coach-submissions-modal-heading{display:flex;flex-direction:column;gap:4px}.coach-submissions-modal-heading h3{margin:4px 0 0;font-size:1.3rem;color:#0f172a}.coach-submissions-modal-eyebrow{display:inline-block;font-size:.8rem;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:#64748b}.coach-submissions-close{position:absolute;top:16px;right:16px;border:1px solid #cbd5f5;background:#fff;color:#0f172a;width:38px;height:38px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;cursor:pointer}.coach-submissions-modal[dir=rtl] .coach-submissions-close{right:auto;left:16px}.coach-submissions-modal-body{padding:20px 24px 28px;display:flex;flex-direction:column;gap:16px;max-height:70vh;overflow-y:auto}.coach-submissions-empty,.coach-submissions-error{padding:16px;border-radius:14px;text-align:center;font-weight:700}.coach-submissions-empty{background:#f1f5f9;color:#475569}.coach-submissions-error{background:#fee2e2;color:#b91c1c;border:1px solid #fecaca}.coach-submissions-list{display:flex;flex-direction:column;gap:14px}.coach-submission-card{border:1px solid #e5e7eb;border-radius:18px;padding:16px;background:#fff;box-shadow:0 10px 25px #0f172a14;direction:inherit}.coach-submission-card-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.coach-submission-user{display:flex;align-items:center;gap:12px}.coach-submission-avatar{width:48px;height:48px;border-radius:50%;overflow:hidden;background:#e0e7ff;display:flex;align-items:center;justify-content:center;font-weight:800;color:#1e1b4b;text-transform:uppercase}.coach-submission-avatar img{width:100%;height:100%;object-fit:cover}.coach-submission-username{font-weight:800;color:#0f172a;font-size:.95rem}.coach-submission-name{font-size:.85rem;color:#475569}.coach-submission-date{font-size:.8rem;color:#94a3b8;font-weight:700;text-align:right}.coach-submissions-modal[dir=rtl] .coach-submission-date{text-align:left}.coach-submission-comment{font-size:.95rem;color:#0f172a;line-height:1.6;margin-bottom:12px}.coach-submission-meta{display:flex;flex-wrap:wrap;gap:8px}.coach-chip{padding:6px 12px;border-radius:999px;background:#f1f5f9;color:#0f172a;font-size:.75rem;font-weight:700;letter-spacing:.3px}.coach-chip-rpe{background:#fef3c7;color:#92400e}.coach-chip-section{background:#e0e7ff;color:#312e81}.exercise-caption{margin-top:10px;text-align:center;font-size:.85rem;color:#ffffffd9}.exercise-details-expanded{margin-top:16px;padding-top:16px;border-top:2px solid rgba(255,255,255,.25);animation:slideDown .3s ease forwards;width:100%;box-sizing:border-box;position:relative}.specs-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:12px;margin-bottom:16px;width:100%}.spec-group{background:#fffffff2;padding:12px;border-radius:12px;text-align:center;border-left:4px solid #fff;width:100%;box-sizing:border-box}.spec-group label{display:block;font-size:.7rem;font-weight:700;color:#b71c1c;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.spec-value-simple{display:block;font-size:1.2rem;font-weight:800;color:#c62828}.youtube-link-simple{display:block;background:#fffffff2;color:#c62828;text-decoration:none;padding:12px 16px;border-radius:10px;font-size:.9rem;font-weight:700;transition:all .3s ease;width:100%;text-align:center;box-sizing:border-box;border:2px solid rgba(255,255,255,.5)}.youtube-link-simple:hover{background:#fff;transform:translateY(-2px);box-shadow:0 6px 16px #c6282859}.no-exercises{text-align:center;color:#999;font-size:1rem;padding:32px 20px;margin:0;background:#f9f9f9;border-radius:12px;border:2px dashed #ddd}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.workout-section-title{flex-direction:column;align-items:flex-start}.exercise-count-navigation{width:100%;justify-content:flex-start}.exercise-navigation{justify-content:flex-start}.exercise-card-row{flex-direction:column}.exercise-indicator{width:56px;min-width:56px;height:56px;border-radius:20px;padding:12px 0}.specs-grid{grid-template-columns:repeat(2,1fr)}.exercise-card-simple{padding:16px}.exercise-name-center h5{font-size:1rem}.youtube-link-simple{width:100%}}.edit-program-modal{width:100%;max-width:100%;max-height:90vh;overflow-y:auto;margin:0;box-sizing:border-box}.edit-program-content{padding:20px;display:flex;flex-direction:column;gap:20px}.workouts-section{margin-top:20px}.workouts-list{display:flex;flex-direction:column;gap:24px}.section-block{width:100%;display:flex;flex-direction:column;gap:12px}.section-exercises-heading{font-size:1.3rem;font-weight:700;color:#212121;margin:0}.workout-name-edit{padding:0;border-bottom:none;display:flex;flex-direction:column;gap:6px}.workout-name-edit label{display:block;font-size:.9rem;font-weight:600;color:#555;margin:0}.workout-name-edit input{width:100%;padding:10px;border:1px solid #ddd;border-radius:8px;font-size:1rem;font-family:inherit}.workout-name-edit input:focus{outline:none;border-color:#4caf50;box-shadow:0 0 0 3px #4caf501a}.exercises-list{display:flex;flex-direction:column;gap:12px}.exercise-edit-card{background:linear-gradient(180deg,#ff5252,#d32f2f);border:none;border-radius:24px;padding:20px;margin-bottom:16px;width:100%;box-sizing:border-box;display:flex;flex-direction:column;overflow:visible;box-shadow:0 20px 35px #d32f2f40;color:#fff}.exercise-card-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}.exercise-letter-label{font-size:2.8rem;font-weight:900;letter-spacing:.4rem;color:#fff}.remove-exercise-btn{align-self:center;padding:10px 18px;border:1.5px solid #fff;border-radius:14px;background:transparent;color:#fff;font-weight:700;display:inline-flex;align-items:center;gap:6px;cursor:pointer;transition:all .3s ease}.remove-exercise-btn:hover{background:#ffffff40}.input-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}.input-group{display:flex;flex-direction:column;gap:6px;width:100%}.input-group.full-width{grid-column:1 / -1}.input-group label{color:#fffffff2;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.input-group label:after{content:":";margin-inline-start:0}.input-field{width:100%;padding:12px 14px;border:1.5px solid rgba(255,255,255,.5);border-radius:12px;font-size:14px;font-family:var(--font-primary);background:#ffffff14;color:#fff;transition:border-color .3s ease,box-shadow .3s ease;box-sizing:border-box;text-align:right;direction:rtl}.input-field:focus{outline:none;border-color:#fff;box-shadow:0 0 0 3px #ffffff26}.input-field[dir=ltr]{text-align:left;direction:ltr}.input-field::placeholder{color:#ffffffa6;font-weight:400}.input-field[dir=ltr]::placeholder{color:#ffffffa6}@media (max-width: 768px){.input-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}}.btn-add-exercise{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;background:#fff;color:#000;border:1px solid #000;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;width:100%}.btn-add-exercise:hover{background:#f4f4f4;transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.no-programs{text-align:center;padding:20px;color:#555;font-weight:600;border:1px dashed rgba(0,0,0,.1);border-radius:12px;background:#fff}.modal-actions{display:flex;gap:12px;justify-content:flex-end;padding-top:20px;border-top:1px solid #e0e0e0;margin-top:20px}.btn-cancel,.btn-submit{padding:12px 32px;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;border:none}.btn-cancel:disabled,.btn-submit:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.field-row{grid-template-columns:1fr}.edit-program-modal{max-height:95vh}}.workout-info-section{margin-bottom:20px}.coach-modal-panel .coach-modal-header h3{text-align:center;padding-right:30px}.workout-description{color:var(--text-secondary);font-size:14px;margin:0;text-align:center}.today-date-section{text-align:center;margin-bottom:15px}.today-date{font-size:22px;font-weight:700;color:var(--text-primary);padding:12px 24px;background:#fff;border-radius:12px;display:inline-block;margin:0 0 0 12px;box-shadow:0 2px 4px #0000001a}.workout-title-section{text-align:center;margin-bottom:20px;padding:10px 0}.workout-main-title{font-size:34px;font-weight:700;color:var(--text-primary);margin:0}.exercise-badge{background:linear-gradient(135deg,#d32f2f,#b71c1c);color:#fff;font-weight:800;padding:6px 10px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;margin:0 10px;min-width:38px;text-align:center;box-shadow:0 4px 14px #d32f2f2e;font-size:14px}@media (max-width: 768px){.today-date{margin-left:8px}.workout-main-title{font-size:20px}.exercise-badge{min-width:32px;padding:4px 8px;font-size:13px}}.section-block{margin-bottom:20px}.section-letter{font-size:48px;font-weight:900;color:#b71c1c;text-align:center;margin:8px 0 12px}.section-rounds{text-align:center;font-weight:800;color:var(--text-primary);margin:10px 0}.section-explanation{background:#ffffffe6;border-radius:8px;padding:12px;margin-top:8px;border:2px solid rgba(211,47,47,.08)}.section-ex-line{font-weight:600;color:#333;margin:6px 0}@media (max-width: 768px){.section-letter{font-size:32px}.section-explanation{padding:10px}}.exercises-section{display:flex;flex-direction:column;gap:16px}.exercise-card{background:#f8d7da;border:3px solid var(--primary-color);border-radius:16px;padding:16px;margin:0 20px 16px;box-shadow:0 2px 8px #d32f2f1a;position:relative;overflow:hidden;max-width:calc(100% - 40px)}.exercise-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .2s ease;padding:0}.exercise-header:hover{transform:translateY(-1px)}.exercise-title{font-size:16px;font-weight:700;color:var(--text-primary);margin:0;flex:1;text-align:center}.exercise-dropdown{display:flex;gap:6px}.exercise-dropdown span{color:var(--primary-color);font-size:14px;font-weight:700}.exercise-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}.stat-box{background:#fff;border-radius:8px;padding:12px;text-align:center;border:2px solid var(--primary-color);aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 1px 3px #0000001a}.stat-label{display:block;color:var(--text-secondary);font-size:12px;margin-bottom:4px}.stat-value{display:block;color:var(--primary-color);font-size:16px;font-weight:700}.exercise-description{background:#fff;border-radius:8px;padding:12px;border:2px solid var(--primary-color);text-align:center;box-shadow:0 1px 3px #0000001a}.exercise-description p{margin:0;color:var(--text-primary);font-size:14px;font-weight:500}.edit-btn{background:#fff3;border:1px solid rgba(255,255,255,.3);color:#fff;padding:8px 12px;border-radius:6px;display:flex;align-items:center;gap:6px;font-size:.8rem;cursor:pointer;transition:all .2s ease}.edit-btn:hover{background:#ffffff4d}.exercise-edit-form{border:2px dashed var(--primary-color);border-radius:8px;padding:16px;background:#d32f2f0d;margin-top:12px}.form-row{display:flex;flex-direction:column;margin-bottom:12px}.form-row:last-child{margin-bottom:0}.form-row label{color:var(--text-primary);font-weight:600;margin-bottom:4px;font-size:.9rem}.form-row input,.form-row textarea{border:1px solid var(--border-color);border-radius:6px;padding:8px 12px;font-size:.9rem;direction:rtl;text-align:right}.form-row input:focus,.form-row textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px #d32f2f40}.workout-notes-section{padding:20px;border-top:1px solid var(--border-color);background:#f8f9fa}.workout-notes-section label{display:block;color:var(--text-primary);font-weight:600;margin-bottom:8px;margin-top:16px}.workout-notes-section label:first-child{margin-top:0}.workout-notes-section input,.workout-notes-section textarea{width:100%;border:1px solid var(--border-color);border-radius:8px;padding:12px;font-size:1rem;direction:rtl;text-align:right;box-sizing:border-box}.workout-notes-section input:focus,.workout-notes-section textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px #d32f2f40}.modal-actions{padding:20px;border-top:1px solid var(--border-color);background:#fff;display:flex;gap:12px;justify-content:flex-end}.submit-workout-btn{background:var(--success);color:#fff;border:none;padding:12px 24px;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .2s ease}.submit-workout-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #4caf504d}.cancel-btn{background:#6c757d;color:#fff;border:none;padding:12px 24px;border-radius:8px;cursor:pointer;font-size:1rem;transition:all .2s ease}.cancel-btn:hover{background:#5a6268;transform:translateY(-1px)}.loading-container,.error-container{padding:40px;text-align:center}.error-message{color:var(--error);margin-bottom:20px;font-size:1rem}.close-btn-secondary{background:#6c757d;color:#fff;border:none;padding:10px 24px;border-radius:8px;cursor:pointer;font-size:1rem}.no-exercises{text-align:center;color:var(--text-secondary);font-style:italic;padding:20px}@media (max-width: 768px){.exercise-stats{grid-template-columns:1fr 1fr;gap:10px}.stat-box{padding:12px}.stat-value{font-size:16px}.today-date{font-size:20px}.workout-main-title{font-size:16px}.workout-notes-section,.modal-actions{padding:16px}.modal-actions{flex-direction:column}.modal-actions button{width:100%}}.scheduled-program-modal{width:100vw;max-width:100vw;max-height:90vh;overflow-y:auto;border-radius:24px 24px 0 0;margin:0;padding:0;box-sizing:border-box;align-self:stretch}.scheduled-program-modal .modal-header{flex-direction:row-reverse;align-items:flex-start;justify-content:space-between;padding:12px 16px 4px}.scheduled-program-modal .modal-header .header-info{flex:1;direction:rtl;text-align:right;align-items:flex-end;padding-left:8px}.scheduled-program-modal .modal-close{width:52px;height:52px;font-size:30px;align-self:flex-start;margin-right:0}.scheduled-program-modal-overlay{justify-content:flex-end;align-items:center;padding:0}.program-selection{padding:24px 20px 32px;background:#fff;border-radius:0;color:#111;width:100%;box-sizing:border-box}.program-selection h3{font-size:1.4rem;margin-bottom:20px;color:#111;text-align:right;font-weight:700;letter-spacing:.4px}.programs-list{width:100%;display:flex;flex-direction:column;gap:15px}.program-card{width:100%;cursor:pointer;transition:transform .3s ease,box-shadow .3s ease;background:transparent;border:none;padding:0}.program-card.updated{border:none;background:#0b0b0b;box-shadow:0 20px 30px #00000073;padding:16px 18px;border-radius:24px}.program-card.updated:hover{transform:translateY(-2px);box-shadow:0 26px 36px #0000008c}.program-card-row{width:100%;display:flex;align-items:center;justify-content:center;text-align:center}.program-card-title{margin:0;font-size:1.6rem;font-weight:800;color:#fff;text-align:center;flex:1;letter-spacing:.4px;direction:rtl}.program-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.program-card-header h4{font-size:1.2rem;color:#333;margin:0}.program-card-body{color:#666}.workout-count{margin:0;font-size:.95rem}.workout-day-selection{padding:20px}.workout-day-selection h3{font-size:1.4rem;margin-bottom:20px;color:#333;text-align:center}.workout-days-list{display:flex;flex-direction:column;gap:12px}.workout-day-card{border:2px solid #e0e0e0;border-radius:14px;padding:18px;cursor:pointer;transition:all .3s ease;background:#fff;box-shadow:0 2px 6px #0000000f}.workout-day-card:hover{border-color:#ff9800;box-shadow:0 8px 20px #ff980040;transform:translateY(-3px)}.workout-day-card h4{font-size:1.1rem;color:#333;margin:0 0 8px}.exercises-count{color:#666;font-size:.9rem;margin:0 0 12px}.exercises-preview{display:flex;flex-wrap:wrap;gap:8px}.exercise-chip{background:#f5f5f5;color:#555;padding:4px 10px;border-radius:12px;font-size:.85rem}.more-exercises{background:#e0e0e0;color:#666;padding:4px 10px;border-radius:12px;font-size:.85rem;font-weight:500}.back-btn{background:#f5f5f5;border:1px solid #ddd;border-radius:8px;padding:8px 16px;font-size:.95rem;color:#555;cursor:pointer;margin-bottom:15px;transition:all .2s ease;display:inline-flex;align-items:center;gap:4px}.back-btn:hover{background:#e0e0e0;border-color:#ccc}.success-view{padding:60px 40px;text-align:center}.success-icon{width:80px;height:80px;background:#4caf50;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:3rem;margin:0 auto 20px;animation:scaleIn .4s ease}@keyframes scaleIn{0%{transform:scale(0)}to{transform:scale(1)}}.success-view h3{color:#4caf50;font-size:1.5rem;margin-bottom:10px}.success-view p{color:#666;font-size:1rem}.workout-form{padding:20px}.exercises-section{margin-bottom:20px}.exercises-section>h3{font-size:1.4rem;margin-bottom:25px;color:#212121;text-align:center;font-weight:700;letter-spacing:.3px}.program-day-title-row{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.program-day-title-input{width:100%;padding:10px 12px;border-radius:10px;border:1px solid #e0e0e0;font-size:1rem}.exercises-list-actions{display:flex;justify-content:flex-end;margin-bottom:12px}.btn-add-exercise{background:#d32f2f;color:#fff;border:none;padding:8px 14px;border-radius:10px;cursor:pointer;font-weight:700}.exercise-top-row{display:flex;gap:12px;align-items:flex-start}.exercise-name-input{flex:1 1 40%;padding:10px 12px;border-radius:10px;border:1px solid #e0e0e0;font-size:1.05rem;font-weight:700}.exercise-meta{display:flex;gap:10px;align-items:center}.meta-item{display:flex;flex-direction:column;gap:6px;text-align:center}.small-input{padding:8px 10px;border-radius:8px;border:1px solid #ddd;width:110px;text-align:center}.exercise-actions{margin-left:auto}.btn-remove-exercise{background:#fff;color:#d32f2f;border:1px solid #f4c2c2;padding:6px 10px;border-radius:8px;cursor:pointer;font-weight:700}.exercise-description-row{margin-top:12px}.exercise-description-row textarea{width:100%;padding:10px;border-radius:8px;border:1px solid #e6e6e6}.exercise-card{border:1px solid #e0e0e0;border-radius:12px;padding:20px;margin-bottom:20px;background:#fff;box-shadow:0 2px 8px #00000014;transition:all .2s ease}.exercise-card h4{font-size:1.2rem;color:#333;margin:0 0 8px}.exercise-title-centered{text-align:center;font-size:1.3rem!important;font-weight:700!important;color:#212121!important;margin-bottom:15px!important;letter-spacing:.3px}.exercise-description{color:#666;font-size:.9rem;margin-bottom:15px}.sets-header{margin-bottom:15px;padding-bottom:10px;border-bottom:1px solid #ddd}.sets-count{color:#555;font-weight:500}.exercise-details{margin-top:15px}.sets-list{display:flex;flex-direction:column;gap:12px;margin-bottom:15px}.set-item{background:#fff;border:1px solid #e8e8e8;border-radius:10px;padding:14px;box-shadow:0 1px 3px #0000000d;transition:all .2s ease}.set-item:hover{border-color:#ddd;box-shadow:0 2px 6px #00000014}.set-number{font-weight:600;color:#555;margin-bottom:8px;font-size:.9rem}.set-inputs{display:grid;grid-template-columns:1fr 1fr;gap:12px}.set-field label{display:block;font-size:.85rem;color:#666;margin-bottom:4px}.weight-input,.reps-input{width:100%;padding:10px 8px;border:1px solid #ddd;border-radius:8px;font-size:1rem;text-align:center;background:#fafafa;transition:all .2s ease}.weight-input:focus,.reps-input:focus{outline:none;border-color:#4caf50;background:#fff;box-shadow:0 0 0 3px #4caf501a}.reps-target-display{display:flex;align-items:center;gap:4px}.target-reps{color:#999;font-size:.9rem;white-space:nowrap}.detail-item{margin-top:15px}.detail-item label{display:block;font-size:.9rem;color:#555;margin-bottom:6px}.detail-item textarea{width:100%;padding:10px;border:1px solid #ddd;border-radius:6px;font-size:.95rem;resize:vertical;font-family:inherit}.detail-item textarea:focus{outline:none;border-color:#4caf50}.form-group{margin-bottom:20px}.form-group label{display:block;font-size:1rem;color:#333;margin-bottom:8px;font-weight:500}.form-group input[type=number],.form-group textarea{width:100%;padding:10px;border:1px solid #ddd;border-radius:8px;font-size:1rem;font-family:inherit}.form-group input[type=number]:focus,.form-group textarea:focus{outline:none;border-color:#4caf50}.error-message{background:#ffebee;color:#c62828;padding:12px;border-radius:8px;margin-bottom:20px;text-align:center;border:1px solid #ef9a9a}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:30px;padding-top:20px;border-top:1px solid #e0e0e0}.btn-cancel,.btn-submit{padding:12px 32px;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;border:none;letter-spacing:.2px}.btn-cancel{background:#f5f5f5;color:#555;box-shadow:0 2px 4px #0000000d}.btn-cancel:hover:not(:disabled){background:#e8e8e8;box-shadow:0 4px 8px #0000001a;transform:translateY(-1px)}.btn-submit{background:#4caf50;color:#fff;box-shadow:0 4px 12px #4caf504d}.btn-submit:hover:not(:disabled){background:#45a049;box-shadow:0 6px 16px #4caf5066;transform:translateY(-2px)}.btn-cancel:disabled,.btn-submit:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.scheduled-program-modal{max-width:100vw;width:100vw;max-height:95vh;border-radius:24px 24px 0 0}.set-inputs{grid-template-columns:1fr}.program-card-header{flex-direction:column;align-items:flex-start;gap:8px}.modal-actions{flex-direction:column-reverse}.btn-cancel,.btn-submit{width:100%}}@font-face{font-family:Lalezar;src:url(/fonts/Lalezar-Regular.ttf) format("truetype");font-weight:400;font-display:swap}:root{--primary-green: #00C853;--primary-dark: #00B84A;--primary-light: #E8F5E9;--coach-primary: #1a237e;--coach-dark: #0d1b5e;--coach-accent: #3949ab;--athlete-primary: #d32f2f;--athlete-dark: #b71c1c;--athlete-accent: #ff5252;--accent-orange: #FF8A65;--accent-pink: #EC407A;--accent-blue: #42A5F5;--success: #4caf50;--warning: #ff9800;--error: #f44336;--light: #f5f5f5;--border: #e0e0e0}.dashboard-container{min-height:100vh;padding:30px 20px;max-width:1200px;margin:0 auto;font-family:var(--font-primary);transition:background .3s ease}.dashboard-container[data-role=coach]{background:linear-gradient(135deg,#f5f5f5,#eee)}.dashboard-container[data-role=athlete]{background:linear-gradient(135deg,#fff3e0,#ffe0b2)}.dashboard-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:40px;gap:20px}.dashboard-header h1{font-size:32px;font-weight:700;letter-spacing:1px;margin:0}.dashboard-header[data-role=coach] h1{color:var(--coach-dark)}.dashboard-header[data-role=athlete] h1{color:var(--athlete-dark)}.profile-card{background:#fff;padding:30px;border-radius:15px;margin-bottom:40px;box-shadow:0 4px 15px #00000014;border-left:6px solid;transition:all .3s ease}.profile-card[data-role=coach]{border-left-color:var(--coach-primary)}.profile-card[data-role=athlete]{border-left-color:var(--athlete-primary)}.profile-card h2{font-size:28px;font-weight:700;margin:0 0 15px;letter-spacing:.5px}.profile-card p{font-size:14px;margin:8px 0;color:#555}.profile-card strong{font-weight:600;color:#333}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:25px;margin-top:30px}@media (max-width: 768px){.dashboard-grid{grid-template-columns:1fr}}.dashboard-card{background:#fff;padding:25px;border-radius:15px;box-shadow:0 4px 15px #00000014;transition:all .3s ease;position:relative;overflow:hidden;border-top:4px solid}.dashboard-card:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .3s ease;z-index:0}.dashboard-card:hover:before{left:100%}.dashboard-card:hover{transform:translateY(-8px);box-shadow:0 12px 30px #00000026}.dashboard-card[data-role=coach]{border-top-color:var(--coach-accent)}.dashboard-card[data-role=athlete]{border-top-color:var(--athlete-accent)}.dashboard-card h3{font-size:18px;font-weight:700;margin:0 0 10px;position:relative;z-index:1;letter-spacing:.5px}.dashboard-card[data-role=coach] h3{color:var(--coach-dark)}.dashboard-card[data-role=athlete] h3{color:var(--athlete-dark)}.dashboard-card p{font-size:13px;color:#666;margin:8px 0 15px;position:relative;z-index:1;line-height:1.5}.dashboard-card a{display:inline-block;padding:10px 20px;border-radius:8px;text-decoration:none;font-weight:600;font-size:12px;transition:all .3s ease;text-transform:uppercase;letter-spacing:1px;position:relative;z-index:1}.dashboard-card[data-role=coach] a{background:var(--coach-primary);color:#fff}.dashboard-card[data-role=coach] a:hover{background:var(--coach-accent);transform:translate(4px)}.dashboard-card[data-role=athlete] a{background:var(--athlete-primary);color:#fff}.dashboard-card[data-role=athlete] a:hover{background:var(--athlete-accent);transform:translate(4px)}.programs-container,.groups-container{min-height:100vh;padding:30px 20px;max-width:1200px;margin:0 auto;font-family:var(--font-primary)}.programs-container[data-role=coach],.groups-container[data-role=coach]{background:linear-gradient(135deg,#f5f5f5,#eee)}.programs-container[data-role=athlete],.groups-container[data-role=athlete]{background:linear-gradient(135deg,#fff3e0,#ffe0b2)}.programs-container h1,.groups-container h1{font-size:28px;font-weight:700;margin:0;letter-spacing:.5px}.programs-container[data-role=coach] h1,.groups-container[data-role=coach] h1{color:var(--coach-dark)}.programs-container[data-role=athlete] h1,.groups-container[data-role=athlete] h1{color:var(--athlete-dark)}.community-groups-toolbar{display:flex;align-items:center;gap:12px;width:100%;justify-content:space-between;flex-wrap:nowrap}.community-search-wrapper{position:relative;flex:1;min-width:0}.community-search-input{width:100%;height:48px;border:1.5px solid #e5e7eb;border-radius:12px;font-family:var(--font-primary);font-size:15px;font-weight:600;color:#0f172a;background:#fff;box-shadow:0 8px 16px #0000000a}.community-create-group-btn{height:48px;padding:0 16px;border-radius:12px;font-size:14px;font-weight:700;background:#fff;color:#111827;border:1px solid #111827;box-shadow:0 4px 10px #00000014;text-transform:none;letter-spacing:normal;white-space:nowrap}.community-role-toggle{display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap}.role-toggle-btn{min-width:110px;height:44px;border-radius:999px;border:1px solid #d1d5db;background:#fff;font-size:14px;font-weight:700;color:#4b5563;cursor:pointer;transition:all .2s ease}.role-toggle-btn.active{background:#111827;color:#fff;border-color:#111827;box-shadow:0 10px 18px #00000026}.community-athlete-search{width:100%}.community-athlete-search-input{width:100%;height:48px;border:1px solid #111827;border-radius:10px;padding:12px 14px;font-family:var(--font-primary);font-weight:600;color:#111827;background:#fff}.community-athlete-search-input:focus{outline:none;box-shadow:0 0 0 2px #1118271a}.btn-primary{display:inline-block;padding:14px 28px;border-radius:32px;text-decoration:none;font-weight:700;font-size:14px;transition:all .3s ease;text-transform:uppercase;letter-spacing:1px;border:none;cursor:pointer;box-shadow:0 4px 15px #00c8534d}.programs-container[data-role=coach] .btn-primary,.groups-container[data-role=coach] .btn-primary{background:var(--coach-primary);color:#fff}.programs-container[data-role=coach] .btn-primary:hover,.groups-container[data-role=coach] .btn-primary:hover{background:var(--coach-accent);transform:translateY(-2px);box-shadow:0 8px 20px #1a237e4d}.programs-container[data-role=athlete] .btn-primary,.groups-container[data-role=athlete] .btn-primary{background:var(--athlete-primary);color:#fff}.programs-container[data-role=athlete] .btn-primary:hover,.groups-container[data-role=athlete] .btn-primary:hover{background:var(--athlete-accent);transform:translateY(-2px);box-shadow:0 8px 20px #d32f2f4d}.programs-grid,.groups-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:25px;margin-top:30px}@media (max-width: 768px){.programs-grid,.groups-grid{grid-template-columns:1fr}}.program-card,.group-card{background:#fff;padding:25px;border-radius:15px;box-shadow:0 4px 15px #00000014;transition:all .3s ease;border:2px solid;position:relative}.program-card[data-role=coach],.group-card[data-role=coach]{border-color:var(--coach-primary)}.program-card[data-role=athlete],.group-card[data-role=athlete]{border-color:var(--athlete-primary)}.program-card:hover,.group-card:hover{transform:translateY(-8px);box-shadow:0 12px 30px #00000026}.program-card h3,.group-card h3{font-size:20px;font-weight:700;margin:0 0 12px;letter-spacing:.5px}.program-card[data-role=coach] h3,.group-card[data-role=coach] h3{color:var(--coach-dark)}.program-card[data-role=athlete] h3,.group-card[data-role=athlete] h3{color:var(--athlete-dark)}.program-card p,.group-card p{font-size:14px;color:#666;margin:8px 0;line-height:1.5}.program-card strong,.group-card strong{color:#333;font-weight:600}.program-card .btn-secondary,.group-card .btn-secondary{display:inline-block;margin-top:15px;padding:10px 18px;border-radius:8px;text-decoration:none;font-weight:600;font-size:12px;transition:all .3s ease;text-transform:uppercase;letter-spacing:.5px;border:2px solid}.program-card[data-role=coach] .btn-secondary,.group-card[data-role=coach] .btn-secondary{color:var(--coach-primary);border-color:var(--coach-primary)}.program-card[data-role=coach] .btn-secondary:hover,.group-card[data-role=coach] .btn-secondary:hover{background:var(--coach-primary);color:#fff;transform:translate(4px)}.program-card[data-role=athlete] .btn-secondary,.group-card[data-role=athlete] .btn-secondary{color:var(--athlete-primary);border-color:var(--athlete-primary)}.program-card[data-role=athlete] .btn-secondary:hover,.group-card[data-role=athlete] .btn-secondary:hover{background:var(--athlete-primary);color:#fff;transform:translate(4px)}.empty-state{text-align:center;padding:60px 20px;color:#999;font-size:16px;font-weight:500}.error-message{background:var(--error);color:#fff;padding:15px 20px;border-radius:10px;margin-bottom:20px;font-size:14px;font-weight:500}.loading{text-align:center;padding:60px 20px;font-size:16px;color:#666;font-weight:500}.coach-badge{display:inline-block;background:var(--coach-primary);color:#fff;padding:6px 12px;border-radius:20px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin-left:8px}.athlete-badge{display:inline-block;background:var(--athlete-primary);color:#fff;padding:6px 12px;border-radius:20px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin-left:8px}.role-indicator{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:#0000000d;border-radius:25px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.role-indicator[data-role=coach]{background:#1a237e1a;color:var(--coach-dark);border:1px solid var(--coach-primary)}.role-indicator[data-role=athlete]{background:#d32f2f1a;color:var(--athlete-dark);border:1px solid var(--athlete-primary)}.coach-section{display:none}.coach-section.show{display:block}.athlete-section{display:none}.athlete-section.show{display:block}.workouts-container,.profile-container{min-height:100vh;padding:30px 20px;max-width:1200px;margin:0 auto;font-family:var(--font-primary);background:linear-gradient(135deg,#fff3e0,#ffe0b2)}.workouts-container h1,.profile-container h1{font-size:28px;font-weight:700;margin:0;letter-spacing:.5px;color:var(--athlete-dark)}.workouts-list{display:flex;flex-direction:column;gap:20px;margin-top:30px}.workout-item{background:#fff;padding:25px;border-radius:15px;box-shadow:0 4px 15px #00000014;display:flex;justify-content:space-between;align-items:center;gap:20px;transition:all .3s ease;border-left:5px solid var(--athlete-primary)}.workout-item:hover{transform:translate(8px);box-shadow:0 12px 30px #00000026}.workout-info{flex:1}.workout-info h3{font-size:18px;font-weight:700;margin:0 0 10px;color:var(--athlete-dark)}.workout-info p{font-size:13px;color:#666;margin:6px 0}.workout-info strong{color:#333;font-weight:600}.profile-card,.profile-actions{background:#fff;padding:30px;border-radius:15px;box-shadow:0 4px 15px #00000014;margin-bottom:25px;border-left:6px solid var(--athlete-primary)}.profile-card h2{font-size:22px;font-weight:700;margin:0 0 20px;color:var(--athlete-dark);letter-spacing:.5px}.profile-card form{display:flex;flex-direction:column;gap:20px}.profile-card .form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}@media (max-width: 768px){.profile-card .form-row{grid-template-columns:1fr}}.profile-card .form-group{display:flex;flex-direction:column;gap:8px}.profile-card .form-group label{font-size:13px;font-weight:600;color:#333;text-transform:uppercase;letter-spacing:.5px}.profile-card .form-group input{padding:12px 16px;border:1.5px solid var(--border);border-radius:10px;font-size:14px;font-family:inherit;transition:all .3s ease}.profile-card .form-group input:focus{outline:none;border-color:var(--athlete-primary);box-shadow:0 0 0 3px #d32f2f1a}.profile-card .btn-primary{align-self:flex-start;margin-top:10px}.profile-actions{display:flex;gap:12px;flex-wrap:wrap;border-left-color:var(--athlete-accent)}.profile-actions .btn-secondary{display:inline-block;padding:12px 24px;border-radius:10px;text-decoration:none;font-weight:600;font-size:13px;transition:all .3s ease;text-transform:uppercase;letter-spacing:.5px;color:var(--athlete-primary);border:2px solid var(--athlete-primary)}.profile-actions .btn-secondary:hover{background:var(--athlete-primary);color:#fff;transform:translateY(-2px)}.profile-actions .btn-danger{display:inline-block;padding:12px 24px;border-radius:10px;background:#f44336;color:#fff;border:none;font-weight:600;font-size:13px;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.5px}.profile-actions .btn-danger:hover{background:#d32f2f;transform:translateY(-2px);box-shadow:0 8px 20px #f443364d}.success-message{background:var(--success);color:#fff;padding:15px 20px;border-radius:10px;margin-bottom:20px;font-size:14px;font-weight:500;animation:slideIn .3s ease}@keyframes slideIn{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.mobile-dashboard{display:flex;flex-direction:column;height:100vh;overflow:hidden;font-family:var(--font-primary);background:#f8f8f8;padding-top:max(0px,env(safe-area-inset-top));padding-bottom:max(0px,env(safe-area-inset-bottom))}.mobile-dashboard[data-role=coach]{background:linear-gradient(135deg,#f5f5f5,#eee)}.mobile-dashboard[data-role=athlete]{background:linear-gradient(135deg,#fff3e0,#ffe0b2)}.mobile-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;padding-top:max(16px,calc(env(safe-area-inset-top) + 8px));background:#fff;border-bottom:1px solid #e0e0e0;position:relative;z-index:100}.mobile-header[data-role=coach]{border-bottom-color:var(--coach-primary);box-shadow:0 2px 8px #1a237e1a}.mobile-header[data-role=athlete]{border-bottom-color:var(--athlete-primary);box-shadow:0 2px 8px #d32f2f1a}.mobile-header-title{font-size:24px;font-weight:700;margin:0;letter-spacing:.5px}.mobile-header[data-role=coach] .mobile-header-title{color:var(--coach-dark)}.mobile-header[data-role=athlete] .mobile-header-title{color:var(--athlete-dark)}.mobile-header-subtitle{font-size:12px;margin:4px 0 0;color:#999}.menu-button{background:none;border:none;font-size:24px;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;color:#333;transition:transform .2s ease}.menu-button:active{transform:scale(.95)}.mobile-menu{position:absolute;top:100%;right:0;background:#fff;min-width:250px;border-radius:0 0 12px 12px;box-shadow:0 8px 20px #00000026;z-index:99;animation:slideDown .2s ease}.mobile-menu[data-role=coach]{border-bottom:3px solid var(--coach-primary)}.mobile-menu[data-role=athlete]{border-bottom:3px solid var(--athlete-primary)}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.menu-user-info{padding:16px 20px;border-bottom:1px solid #f0f0f0}.menu-user-name{font-size:16px;font-weight:600;color:#333;margin-bottom:4px}.menu-user-role{font-size:12px;color:#999;margin-bottom:8px}.menu-user-email{font-size:11px;color:#bbb}.menu-logout{width:100%;padding:12px 20px;background:none;border:none;text-align:left;font-size:14px;font-weight:600;color:#f44336;cursor:pointer;transition:background .2s ease}.mobile-content{flex:1;overflow-y:auto;padding:0;-webkit-overflow-scrolling:touch;padding-bottom:max(20px,env(safe-area-inset-bottom))}.quick-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:16px;background:#fff;margin:12px;border-radius:12px;box-shadow:0 2px 8px #00000014}.quick-stats[data-role=coach]{border-top:4px solid var(--coach-accent)}.quick-stats[data-role=athlete]{border-top:4px solid var(--athlete-accent)}.stat-box{display:flex;flex-direction:column;align-items:center;gap:8px}.stat-icon{font-size:24px}.stat-label{font-size:11px;color:#999;text-align:center;font-weight:500}.stat-value{font-size:18px;font-weight:700;color:#333}.mobile-nav-buttons{display:flex;flex-direction:column;gap:10px;padding:12px}.nav-button{display:flex;align-items:center;gap:16px;padding:16px;background:#fff;border:none;border-radius:12px;cursor:pointer;font-size:16px;font-weight:600;transition:all .2s ease;box-shadow:0 2px 8px #00000014;text-align:left;active-color:#f5f5f5}.nav-button[data-role=coach]{border-left:4px solid var(--coach-accent);color:var(--coach-dark)}.nav-button[data-role=athlete]{border-left:4px solid var(--athlete-accent);color:var(--athlete-dark)}.nav-button:active{transform:scale(.98);box-shadow:0 4px 12px #0000001f}.nav-icon{font-size:24px;display:flex;align-items:center;justify-content:center;width:40px}.nav-label{flex:1;font-size:14px}.program-card,.group-card,.workout-item{width:100%}.profile-card{margin:0 0 20px}.profile-actions{display:flex;flex-direction:column;gap:10px}.profile-actions a,.profile-actions button{width:100%;text-align:center}.workout-item{background:#fff;padding:16px;border-radius:12px;box-shadow:0 2px 8px #00000014;border-left:4px solid;transition:all .2s ease}.workout-item[data-role=athlete]{border-left-color:var(--athlete-accent)}.workout-info{margin-bottom:12px}.workout-info h3{margin:0 0 8px;font-size:16px;font-weight:600;color:#333}.workout-info p{margin:4px 0;font-size:12px;color:#666}.btn-primary,.btn-secondary{display:inline-block;padding:12px 24px;border-radius:8px;text-decoration:none;font-weight:600;text-align:center;transition:all .2s ease;border:none;cursor:pointer;font-size:14px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media (max-width: 480px){.form-row{grid-template-columns:1fr}.mobile-header{padding:12px 16px}.mobile-header-title{font-size:20px}.mobile-header-subtitle{font-size:11px}.nav-button{padding:14px 12px}.nav-icon{width:36px}.nav-label{font-size:13px}.btn-primary,.btn-secondary{font-size:13px;padding:10px 20px}.program-card,.group-card,.profile-card{padding:16px}}.premium-hero{background:linear-gradient(135deg,var(--primary-green) 0%,var(--primary-dark) 100%);color:#fff;padding:40px 24px;border-radius:0 0 24px 24px;text-align:center;box-shadow:0 8px 24px #00c85340}.premium-hero h2{font-size:28px;font-weight:700;margin:0 0 12px;letter-spacing:-.5px}.premium-hero p{font-size:14px;margin:0;opacity:.95;line-height:1.5}.feature-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:16px;padding:24px 20px;margin:-20px 20px 0;position:relative;z-index:10}@media (max-width: 768px){.feature-cards{gap:12px;margin:-16px 16px 0;padding:20px 16px}}.feature-card{aspect-ratio:1;border-radius:20px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:24px;transition:all .3s ease;cursor:pointer;box-shadow:0 8px 24px #0000001f;text-decoration:none;text-align:center;padding:16px}.feature-card:active{transform:scale(.95)}.feature-card:hover{transform:translateY(-8px);box-shadow:0 12px 32px #0000002e}.feature-card-label{font-size:11px;font-weight:600;margin-top:8px;text-transform:uppercase;letter-spacing:.5px;opacity:.95}.feature-card.orange{background:linear-gradient(135deg,#ff8a65,#ff7043)}.feature-card.pink{background:linear-gradient(135deg,#ec407a,#e91e63)}.feature-card.green{background:linear-gradient(135deg,#66bb6a,#43a047)}.feature-card.blue{background:linear-gradient(135deg,#42a5f5,#2196f3)}.feature-card.purple{background:linear-gradient(135deg,#ab47bc,#8e24aa)}.feature-card.teal{background:linear-gradient(135deg,#26a69a,#009688)}.quick-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:20px}@media (max-width: 600px){.quick-stats{gap:10px;padding:16px}}.stat-box{background:#fff;padding:16px 12px;border-radius:16px;text-align:center;box-shadow:0 4px 12px #00000014;transition:all .3s ease}.stat-box:hover{transform:translateY(-4px);box-shadow:0 8px 20px #0000001f}.stat-icon{font-size:24px;margin-bottom:8px}.stat-label{font-size:11px;color:#999;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.stat-value{font-size:20px;font-weight:700;color:var(--primary-green)}.mobile-nav-buttons{display:flex;flex-direction:column;gap:16px;padding:20px}@media (max-width: 600px){.mobile-nav-buttons{gap:12px;padding:16px}}.nav-button{display:flex;align-items:center;justify-content:flex-start;gap:16px;padding:18px 20px;background:#fff;border:none;border-radius:16px;cursor:pointer;font-size:15px;font-weight:600;transition:all .3s ease;box-shadow:0 4px 12px #00000014;color:#333}.nav-button:active{transform:scale(.98)}.nav-button:hover{transform:translateY(-4px);box-shadow:0 8px 20px #0000001f}.nav-button.coach-theme{border-left:5px solid var(--coach-primary)}.nav-button.athlete-theme{border-left:5px solid var(--athlete-primary)}.nav-icon{font-size:28px;width:40px}.nav-label{flex:1;text-align:left}.mobile-menu{position:absolute;top:100%;right:0;background:#fff;min-width:280px;border-radius:0 0 16px 16px;box-shadow:0 12px 32px #00000026;z-index:99;animation:slideDown .3s cubic-bezier(.4,0,.2,1);overflow:hidden}.menu-user-info{padding:20px;background:linear-gradient(135deg,var(--primary-green) 0%,var(--primary-dark) 100%);color:#fff;border-bottom:1px solid rgba(255,255,255,.1)}.menu-user-name{font-size:15px;font-weight:700;margin-bottom:4px}.menu-user-role{font-size:12px;opacity:.9;text-transform:uppercase;letter-spacing:.5px;font-weight:600;margin-bottom:8px}.menu-user-email{font-size:11px;opacity:.85}.menu-logout{width:100%;padding:16px 20px;background:none;border:none;text-align:left;cursor:pointer;font-weight:600;font-size:14px;color:#d32f2f;transition:all .2s ease;border-top:1px solid #f0f0f0}.menu-logout:hover{background:#fff5f5}.menu-logout:active{background:#ffebee}@keyframes slideDown{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.mobile-content{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-bottom:20px}@media (max-width: 600px){.mobile-content{padding-bottom:16px}}.btn-primary{box-shadow:0 4px 15px #00c85359}.btn-primary:hover{box-shadow:0 8px 24px #00c85373;transform:translateY(-2px)}.btn-primary:active{transform:translateY(0)}.form-group input,.form-group textarea{border-radius:12px;border:2px solid #e8e8e8;box-shadow:0 2px 8px #0000000a;transition:all .3s ease}.form-group input:focus,.form-group textarea:focus{border-color:var(--primary-green);box-shadow:0 4px 12px #00c85333}.dashboard-card,.program-card,.group-card{border-radius:18px;box-shadow:0 4px 16px #00000014;transition:all .3s cubic-bezier(.4,0,.2,1)}.dashboard-card:hover,.program-card:hover,.group-card:hover{box-shadow:0 12px 32px #00000026}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:1000px 100%;animation:shimmer 2s infinite;border-radius:8px;height:12px}@font-face{font-family:BebasNeue;src:url(/fonts/BebasNeue-Regular.ttf) format("truetype")}@font-face{font-family:Lalezar;src:url(/fonts/Lalezar-Regular.ttf) format("truetype");font-weight:150;font-display:swap}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#e0e0e0;padding:20px;font-family:var(--font-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.language-switcher-top{position:absolute;top:20px;right:40px;display:flex;align-items:center;gap:10px;background:var(--accent-color);border:2px solid var(--primary-color);border-radius:8px;padding:8px 15px;cursor:pointer;transition:all .3s ease;z-index:10}.language-switcher-top:hover{background:var(--light-bg);transform:translateY(-2px)}.auth-logo-section{display:flex;align-items:center;gap:15px}.auth-logo{width:80px;height:80px;object-fit:contain}.auth-brand-text{font-family:BebasNeue,sans-serif;font-size:28px;letter-spacing:3px;color:var(--primary-color);font-weight:700;text-transform:uppercase}.language-switcher{display:flex;align-items:center;gap:10px;background:var(--accent-color);border:2px solid var(--primary-color);border-radius:8px;padding:8px 15px;cursor:pointer;transition:all .3s ease}.language-switcher:hover{background:var(--light-bg);transform:translateY(-2px)}.language-icon{font-size:18px;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.language-text{font-size:13px;font-weight:600;color:var(--text-primary);text-transform:uppercase;letter-spacing:1px}.auth-form-wrapper{width:100%;max-width:450px;background:var(--accent-color);border-radius:20px;padding:40px 30px;box-shadow:none;position:relative;box-sizing:border-box}.form-logo-section{display:flex;align-items:center;justify-content:center;gap:0;margin:-40px -30px -10px;padding:20px 30px 10px;direction:ltr;background:var(--accent-color);border-radius:20px 20px 0 0;overflow:hidden}.form-logo{width:500px;height:500px;object-fit:contain;flex-shrink:0;display:flex;align-items:center;justify-content:center;margin:0 auto;padding:0}.logo-divider,.form-fitness-icon{display:none}.auth-form-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px}.auth-back-button{background:none;border:none;font-size:24px;cursor:pointer;color:var(--text-primary);padding:0;display:flex;align-items:center;justify-content:center;transition:color .3s ease}.auth-back-button:hover{color:var(--primary-color)}.auth-form-title{font-family:var(--font-primary);font-size:32px;letter-spacing:0px;color:var(--secondary-color);text-transform:uppercase;margin-bottom:10px;font-weight:800}.auth-form-subtitle{font-size:14px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;line-height:1.6;margin-bottom:30px;font-weight:600;font-family:var(--font-primary)}.auth-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:14px;font-weight:700;color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px;font-family:var(--font-primary)}.form-group input,.form-group select{width:100%;box-sizing:border-box;padding:15px 16px;border:1.5px solid var(--border-color);border-radius:10px;font-size:16px;font-family:var(--font-primary);font-weight:500;transition:all .3s ease;background:#fff;letter-spacing:.3px}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #d32f2f1a}.form-group input::placeholder{color:#aaa;font-weight:400;font-family:var(--font-primary)}.form-group select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 12px center;background-size:20px;padding-right:40px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-actions{display:flex;flex-direction:column;gap:12px;margin-top:10px}.btn-submit{padding:15px 16px;background:var(--secondary-color);color:var(--accent-color);border:none;border-radius:10px;font-size:15px;font-weight:800;text-transform:uppercase;letter-spacing:1.2px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:10px;font-family:var(--font-primary)}.btn-submit:hover:not(:disabled){background:var(--primary-color);transform:translateY(-2px);box-shadow:0 8px 20px #d32f2f4d}.btn-submit:disabled{opacity:.6;cursor:not-allowed}.btn-save-profile{background:var(--secondary-color)}.btn-save-profile:hover:not(:disabled){background:var(--success);transform:translateY(-2px);box-shadow:0 8px 20px #4caf504d}.btn-secondary{padding:14px 16px;background:transparent;color:var(--secondary-color);border:2px solid var(--secondary-color);border-radius:10px;font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:2px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:10px}.btn-secondary:hover{background:var(--secondary-color);color:var(--accent-color);transform:translateY(-2px)}.auth-link-section{text-align:center;margin-top:20px;font-size:14px;color:var(--text-secondary);font-family:var(--font-primary);font-weight:500}.auth-link-section a{color:var(--primary-color);text-decoration:none;font-weight:700;transition:color .3s ease;font-family:var(--font-primary)}.auth-link-section a:hover{color:var(--primary-dark);text-decoration:underline}.error-message{padding:13px 16px;background:#ffebee;color:var(--error);border-radius:8px;font-size:14px;border-left:4px solid var(--error);margin-bottom:15px;font-family:var(--font-primary);font-weight:500}.success-message{padding:13px 16px;background:#e8f5e9;color:var(--success);border-radius:8px;font-size:14px;border-left:4px solid var(--success);margin-bottom:15px;font-family:var(--font-primary);font-weight:500}.icon{display:inline-flex;align-items:center;justify-content:center}.password-input-wrapper{position:relative;display:flex;align-items:center}.password-input-wrapper input{width:100%;padding-left:16px;padding-right:45px}.password-toggle-btn{position:absolute;right:12px;background:none;border:none;cursor:pointer;color:var(--text-secondary);display:flex;align-items:center;justify-content:center;font-size:20px;padding:5px;transition:color .3s ease;z-index:1}.password-toggle-btn:hover{color:var(--primary-color)}.password-toggle-btn:focus{outline:none}@media (max-width: 600px){.auth-header{padding:15px 20px}.auth-brand-text{font-size:22px;letter-spacing:2px}.auth-logo{width:40px;height:40px}.auth-form-wrapper{max-width:100%;padding:30px 20px;border-radius:15px;margin-top:0;min-height:70vh}.form-logo-section{margin:-30px -20px -90px -10px;padding:0 20px 10px;gap:12px;border-radius:15px 15px 0 0}.form-logo{width:800px;height:500px;margin:0 auto!important}.logo-divider,.form-fitness-icon{display:none}.form-logo-text{font-size:20px;letter-spacing:1px;height:60px;padding:0;margin-left:0!important}.auth-form-title{font-size:26px}.form-row{grid-template-columns:1fr;gap:15px}.language-text{display:none}}@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important}}[dir=ltr] .auth-form-title,[dir=ltr] .auth-form-subtitle,[dir=ltr] .form-group label,[dir=ltr] .form-group input,[dir=ltr] .form-group select{direction:ltr;text-align:left}[dir=ltr] .form-group input::placeholder{direction:ltr;text-align:left}[dir=rtl] .auth-header{flex-direction:row-reverse}[dir=rtl] .form-row{direction:rtl}[dir=rtl] .btn-submit,[dir=rtl] .btn-secondary{flex-direction:row-reverse}[dir=rtl] .form-group select{background-position:left 12px center;padding-left:40px;padding-right:16px}[dir=rtl] .auth-link-section{direction:rtl}.otp-message-container{margin-bottom:30px}.otp-message{background:linear-gradient(135deg,#e8f5e9,#f1f8e9);border-left:4px solid var(--success);border-radius:8px;padding:28px 32px;font-size:18px;line-height:2;color:var(--text-primary);text-align:center;font-weight:600;word-break:break-word;font-family:var(--font-primary)}.otp-message strong{color:var(--success);font-weight:800}.otp-form{display:flex;flex-direction:column;gap:30px}.otp-inputs{display:flex;justify-content:center;gap:12px;margin:20px 0;direction:ltr}.otp-input{width:50px;height:50px;text-align:center;font-size:24px;font-weight:600;border:2px solid var(--border-color);border-radius:10px;background:#fff;color:var(--text-primary);transition:all .3s ease}.otp-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #d32f2f1a}.otp-input::placeholder{color:#ddd;font-weight:300}.resend-section{display:flex;flex-direction:column;gap:15px;align-items:center;text-align:center;margin-top:20px}.resend-section span{font-size:13px;color:var(--text-secondary);display:none}.btn-verify{padding:15px 16px;background:var(--success);color:var(--accent-color);border:none;border-radius:10px;font-size:15px;font-weight:800;text-transform:uppercase;letter-spacing:1.2px;cursor:pointer;transition:background .3s ease;display:flex;align-items:center;justify-content:center;font-family:var(--font-primary)}.btn-verify:hover:not(:disabled){background:#45a049}.btn-verify:disabled{opacity:.6;cursor:not-allowed}.btn-resend{background:transparent;color:var(--primary-color);border:2px solid var(--primary-color);padding:10px 20px;border-radius:8px;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:all .3s ease}.btn-resend:hover:not(:disabled){background:var(--primary-color);color:var(--accent-color);transform:translateY(-2px)}.btn-resend:disabled{opacity:.5;cursor:not-allowed}.btn-resend-new{background:var(--accent-color);color:var(--secondary-color);border:2px solid var(--secondary-color);padding:12px 24px;border-radius:8px;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:all .3s ease;font-family:var(--font-primary)}.btn-resend-new:hover:not(:disabled){background:var(--secondary-color);color:var(--accent-color)}.btn-resend-new:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 600px){.otp-inputs{gap:8px}.otp-input{width:40px;height:40px;font-size:20px}.otp-message{padding:16px;font-size:14px}.btn-verify{font-size:13px;padding:12px 16px}.btn-resend-new{font-size:12px;padding:10px 20px}}.verification-success-wrapper{display:flex;align-items:center;justify-content:center;min-height:500px}.verification-success-content{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:30px;text-align:center;width:100%}.verification-badge-container{position:relative;width:300px;height:300px;display:flex;align-items:center;justify-content:center;margin-bottom:20px}.verification-logo{width:300px;height:300px;object-fit:contain;border-radius:50%;background:transparent;padding:0;box-shadow:none;animation:logoScaleIn .6s ease-out}.verification-checkmark{position:absolute;bottom:-10px;right:-10px;width:100px;height:100px;display:flex;align-items:center;justify-content:center;background:#fff;border-radius:50%;box-shadow:0 4px 15px #4caf504d;animation:checkmarkPop .6s ease-out .3s both}@keyframes logoScaleIn{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}@keyframes checkmarkPop{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}.verification-title{font-family:var(--font-primary);font-size:32px;font-weight:800;letter-spacing:.5px;color:var(--secondary-color);margin:0 0 15px;text-transform:none;animation:fadeInUp .6s ease-out .4s both}.verification-subtitle{font-family:var(--font-primary);font-size:14px;color:var(--text-secondary);margin:10px 0 0;line-height:1.6;max-width:350px;animation:fadeInUp .6s ease-out .5s both;font-weight:500;letter-spacing:.3px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.verification-continue-btn{margin-top:30px;max-width:300px;padding:12px 24px;font-size:18px;animation:fadeInUp .6s ease-out .6s both}@media (max-width: 600px){.verification-success-wrapper{min-height:auto;padding:30px 0}.verification-badge-container{width:160px;height:160px}.verification-logo{margin-top:10px;width:450px;height:425px}.verification-checkmark{width:60px;height:60px;bottom:-10px;right:-10px}.verification-checkmark svg{width:50px;height:50px}.verification-title{font-size:24px}.verification-subtitle{font-size:14px}.verification-continue-btn{width:100%}}.profile-photo-upload{display:flex;justify-content:center;margin-bottom:30px;flex-direction:column;gap:12px;align-items:center}.photo-upload-btn{width:150px;height:150px;border-radius:999px;border:none;background:#fff;box-shadow:0 25px 50px #00000026;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;transition:transform .3s ease,box-shadow .3s ease;position:relative;overflow:hidden;padding:18px}.photo-upload-btn:after{content:"";position:absolute;top:6px;right:6px;bottom:6px;left:6px;border-radius:999px;border:3px dashed var(--secondary-color);pointer-events:none;z-index:1}.photo-upload-btn:hover{transform:translateY(-2px);box-shadow:0 25px 55px #00000040}.photo-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--secondary-color);text-align:center;width:100%;height:100%;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:1px;padding:10px;box-sizing:border-box;position:relative;z-index:2}.profile-photo-preview{width:100%;height:100%;object-fit:cover;border-radius:50%;position:relative;z-index:0}.photo-upload-label{font-size:11px;letter-spacing:.6px;color:var(--text-secondary);text-transform:uppercase;position:relative;z-index:2;margin-top:4px}.btn-skip{background:transparent;border:none;color:var(--primary-color);cursor:pointer;text-decoration:underline;font-size:13px;font-weight:600;transition:color .3s ease}.btn-skip:hover{color:var(--primary-dark)}@media (max-width: 600px){.photo-upload-btn{width:120px;height:120px;border-width:2px}.photo-placeholder{font-size:10px;gap:6px}.photo-placeholder svg{width:40px;height:40px}}.profile-modal{width:100%;max-width:100%;margin:0;box-sizing:border-box}.profile-modal .auth-container{min-height:auto;padding:0;display:block;align-items:stretch;justify-content:stretch;background:transparent}.profile-modal .auth-form-wrapper{width:100%;max-width:100%;border-radius:16px 16px 0 0;box-shadow:none;padding:24px;box-sizing:border-box}.profile-modal .auth-form-header{margin-bottom:20px}.profile-modal .profile-photo-upload{margin-bottom:24px}.profile-modal .profile-actions{flex-direction:column;gap:12px}.profile-photo-upload{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;margin-bottom:28px;width:100%}.photo-upload-btn{width:min(220px,80vw);height:min(220px,80vw);min-width:160px;min-height:160px;border-radius:50%;border:none;background:#fff;box-shadow:0 25px 50px #00000026;display:flex;align-items:center;justify-content:center;cursor:pointer;position:relative;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease;padding:0;box-sizing:border-box}.photo-upload-btn:after{content:"";position:absolute;top:10px;right:10px;bottom:10px;left:10px;border-radius:50%;border:3px dashed var(--secondary-color);pointer-events:none;z-index:1;display:none}.photo-upload-btn.no-photo:after{display:block}.photo-upload-btn.has-photo:after{display:none}.photo-upload-btn:disabled{cursor:not-allowed;opacity:.7}.photo-upload-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 25px 45px #00000040}.photo-placeholder-icon{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:var(--secondary-color);font-size:48px;z-index:0}.profile-photo-preview{width:100%;height:100%;border-radius:50%;object-fit:cover;position:relative;z-index:0}.profile-photo-input{display:none}.photo-upload-label{font-size:13px;letter-spacing:.6px;color:var(--text-secondary);text-transform:uppercase;width:100%;max-width:220px;margin-top:4px}.profile-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.profile-metadata-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}.profile-page .auth-form-wrapper{padding:28px 22px}.profile-page .auth-form-header{position:relative;justify-content:center}.profile-page .auth-back-button{position:absolute;left:0;top:50%;transform:translateY(-50%)}.profile-page .auth-form-title{font-size:24px}.profile-page .edit-toggle-bar{display:flex;justify-content:center;margin-top:-4px;margin-bottom:4px}.profile-page .edit-toggle{padding:6px 12px;font-size:13px;border-radius:10px;display:inline-flex;align-items:center;gap:6px;width:min(220px,80vw);justify-content:center;box-sizing:border-box}.profile-page .edit-toggle.ltr .edit-icon{order:2}.profile-page .edit-toggle.rtl .edit-icon{order:1}.profile-page .profile-photo-readonly{width:min(220px,80vw);height:min(220px,80vw);border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center;box-shadow:0 15px 30px #0000001f;position:relative}.profile-page .profile-photo-readonly img{width:100%;height:100%;object-fit:cover}.profile-page .profile-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.profile-page .profile-metadata-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}.profile-page .form-group{gap:6px}.profile-page .form-group label{font-size:13px;letter-spacing:.6px;font-weight:800;font-family:Shabnam,sans-serif}.profile-page .form-group input,.profile-page .form-group select{padding:12px;border-radius:8px;font-size:15px;font-family:Shabnam,sans-serif}.profile-view{display:flex;flex-direction:column;gap:12px}.profile-page .view-group .view-value{padding:12px;border:1.5px solid var(--border-color);border-radius:8px;background:transparent;font-size:15px;font-weight:500;color:var(--text-primary);word-break:break-word;width:100%;box-sizing:border-box}.profile-page .view-group.full-width{grid-column:1 / -1}.profile-action-buttons{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.profile-action-buttons .btn-secondary{flex:1;min-width:160px}.profile-actions .btn-danger{width:100%;justify-content:center}.profile-role-badge{padding:8px 20px;background:var(--primary-color);color:var(--accent-color);border-radius:20px;font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:1px;margin-top:12px;box-shadow:0 4px 12px #d32f2f4d}.profile-view-simple{display:flex;flex-direction:column;gap:40px;width:100%;padding:20px 0;font-family:Shabnam,sans-serif}.profile-info-center{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}.profile-username{font-size:14px;font-weight:600;color:var(--text-secondary);margin:0;letter-spacing:.5px;font-family:Shabnam,sans-serif}.profile-full-name{font-size:26px;font-weight:700;color:var(--text-primary);margin:4px 0 0;letter-spacing:.5px;font-family:Shabnam,sans-serif}.profile-role-title{font-size:16px;font-weight:500;color:var(--text-secondary);margin:0;padding:6px 18px;background:var(--light-bg);border-radius:16px;letter-spacing:.3px;font-family:Shabnam,sans-serif}.profile-action-buttons-row{display:flex;flex-direction:column;gap:14px;width:100%;margin-top:8px}.btn-profile-action{width:100%;height:48px;border-radius:999px;font-size:15px;font-weight:700;letter-spacing:.3px;cursor:pointer;transition:all .2s ease;border:1px solid #d1d5db;background:#fff;color:#4b5563;text-transform:none;font-family:Shabnam,sans-serif}.btn-profile-action.active,.btn-profile-action:hover{background:#111827;color:#fff;border-color:#111827;box-shadow:0 10px 18px #00000026}.btn-profile-action.btn-settings{background:#fff;color:#4b5563;border:1px solid #d1d5db}.btn-profile-action.btn-settings:hover{background:#111827;color:#fff;border-color:#111827}.btn-profile-action.btn-edit{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.btn-profile-action.btn-edit:hover{background:var(--primary-dark);border-color:var(--primary-dark);box-shadow:0 10px 18px #d32f2f40}.edit-profile-button-container{display:flex;justify-content:center;margin-top:24px;width:100%}.btn-edit-profile{display:flex;align-items:center;justify-content:center;gap:10px;padding:14px 32px;background:var(--primary-color);color:var(--accent-color);border:none;border-radius:12px;font-size:16px;font-weight:700;letter-spacing:.5px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #d32f2f4d;width:100%;max-width:300px}.btn-edit-profile:hover{background:var(--primary-dark);transform:translateY(-2px);box-shadow:0 6px 16px #d32f2f66}.btn-edit-profile:active{transform:translateY(0)}.btn-edit-profile .edit-icon{font-size:18px}.profile-edit-actions{display:flex;gap:12px;margin-top:24px;width:100%}.btn-cancel-profile{flex:1;padding:14px 24px;background:#fff;color:#4b5563;border:1px solid #d1d5db;border-radius:999px;font-size:16px;font-weight:700;letter-spacing:.3px;cursor:pointer;transition:all .2s ease;text-transform:none;font-family:Shabnam,sans-serif}.btn-cancel-profile:hover:not(:disabled){background:#111827;color:#fff;border-color:#111827;transform:translateY(-2px);box-shadow:0 10px 18px #00000026}.btn-cancel-profile:disabled{opacity:.5;cursor:not-allowed}.btn-confirm-profile{flex:1;padding:14px 24px;background:#10b981;color:#fff;border:none;border-radius:999px;font-size:16px;font-weight:700;letter-spacing:.3px;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #10b9814d;text-transform:none;font-family:Shabnam,sans-serif}.btn-confirm-profile:hover:not(:disabled){background:#059669;transform:translateY(-2px);box-shadow:0 10px 18px #10b98159}.btn-confirm-profile:disabled{opacity:.7;cursor:not-allowed}@media (max-width: 600px){.photo-upload-btn{width:min(180px,70vw);height:min(180px,70vw)}.profile-page .edit-toggle{width:min(180px,70vw)}.profile-action-buttons{flex-direction:column}.profile-edit-actions{gap:10px}.btn-cancel-profile,.btn-confirm-profile{padding:12px 20px;font-size:14px}.btn-edit-profile{padding:12px 28px;font-size:14px}.profile-username{font-size:13px}.profile-full-name{font-size:22px}.profile-role-title{font-size:14px}.btn-profile-action{height:44px;font-size:14px}.profile-action-buttons-row{gap:12px}.btn-cancel-profile,.btn-confirm-profile{padding:12px 20px;font-size:14px;height:44px}.profile-view-simple{gap:32px}}@font-face{font-family:Bebas Neue;src:url(/fonts/BebasNeue-Regular.ttf) format("truetype");font-weight:400;font-style:normal}:root{--primary-color: #d32f2f;--primary-dark: #b71c1c;--secondary-color: #000000;--accent-color: #ffffff;--light-bg: #f5f5f5;--border-color: #e0e0e0;--text-primary: #212121;--text-secondary: #666666;--success: #4caf50;--error: #f44336}body{font-family:Poppins,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--light-bg);direction:inherit}.dashboard-container{min-height:100vh;display:flex;flex-direction:column;background:var(--light-bg);position:relative}.dashboard-header{display:flex;align-items:center;justify-content:flex-end;padding:6px 16px;background:var(--primary-color);border-bottom:none;position:fixed;top:0;left:0;right:0;z-index:50;height:50px;direction:ltr}.dashboard-header.ltr{justify-content:flex-start;direction:ltr}.hamburger-btn{background:none;border:none;font-size:32px;cursor:pointer;color:var(--accent-color);display:flex;align-items:center;justify-content:center;padding:4px 8px;transition:none}.hamburger-btn:hover{color:var(--accent-color)}.app-logo{font-family:Bebas Neue,sans-serif;font-size:20px;font-weight:400;letter-spacing:2px;color:var(--accent-color);margin:0;flex:1;text-align:left;text-transform:uppercase}.menu-overlay{position:fixed;top:50px;left:0;right:0;bottom:0;background:#00000080;z-index:200;display:flex;align-items:flex-start}.menu-panel{background:var(--accent-color);width:100%;max-width:300px;height:calc(100vh - 50px);box-shadow:2px 0 8px #00000026;display:flex;flex-direction:column;animation:slideIn .3s ease}@keyframes slideIn{0%{transform:translate(-100%)}to{transform:translate(0)}}.menu-header{padding:24px 16px;border-bottom:1px solid var(--border-color);text-align:right}.menu-header h3{font-size:16px;font-weight:700;color:var(--text-primary);margin:0 0 4px}.menu-header p{font-size:12px;color:var(--text-secondary);margin:0;word-break:break-all}.menu-items{display:flex;flex-direction:column;padding:12px;gap:8px}.menu-language{padding:0 16px 16px}.menu-language-label{font-size:12px;color:var(--text-secondary);margin-bottom:8px;text-transform:uppercase}.language-options{display:flex;gap:8px}.language-option{flex:1;padding:10px;border-radius:8px;border:1px solid transparent;background:var(--light-bg);color:var(--text-primary);font-weight:600;cursor:pointer;transition:border-color .3s ease,transform .3s ease}.language-option.active{border-color:var(--primary-color);color:var(--primary-color);transform:translateY(-1px)}.menu-item{display:flex;align-items:center;gap:16px;padding:16px;background:var(--light-bg);border:none;border-radius:8px;cursor:pointer;transition:all .3s ease;text-align:right;color:var(--text-primary);font-size:14px;font-weight:600}.menu-item:hover{background:var(--border-color);transform:translate(4px)}.menu-item.logout-btn{color:var(--error)}.menu-item.logout-btn:hover{background:#f443361a}.menu-icon{font-size:20px;flex-shrink:0}.dashboard-content{flex:1;padding:60px 20px 100px;display:flex;flex-direction:column;gap:40px;overflow-y:auto;max-width:1100px;margin:0 auto;width:100%;align-items:center}.calendar-wrapper{width:100%;max-width:960px;margin:0 auto;display:flex;justify-content:center;padding:0 20px;box-sizing:border-box}.calendar-section{background:var(--accent-color);border-radius:14px;padding:22px 28px;box-shadow:0 2px 10px #00000014;margin:20px auto 0;width:100%;max-width:960px}@media (max-width: 800px){.dashboard-content,.calendar-wrapper{padding-left:0;padding-right:0}.calendar-section{padding-left:15px;padding-right:15px;width:min(100%,360px);margin:20px auto 0}}@media (max-width: 600px){.calendar-week{gap:4px}.calendar-day{min-height:auto;aspect-ratio:1 / 1;padding:0}}@media (min-width: 1200px){.dashboard-content{max-width:1400px}.calendar-wrapper,.calendar-section{max-width:1200px}}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;gap:12px;direction:ltr}.calendar-nav-button{background:none;border:none;font-size:28px;cursor:pointer;color:var(--secondary-color);transition:color .3s ease;padding:6px 12px}.calendar-nav-button.prev{order:1}.calendar-nav-button.next{order:3}.calendar-nav-button:hover{color:var(--primary-color)}.calendar-month-year{font-size:20px;font-weight:700;color:var(--secondary-color);flex:1;text-align:center;order:2}.calendar-grid{display:flex;flex-direction:column;gap:6px}.calendar-days-header{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:8px}.day-header{text-align:center;font-size:14px;font-weight:700;color:#070707;padding:10px 0}.calendar-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.calendar-day{min-height:54px;width:100%;padding:12px 0;display:flex;align-items:center;justify-content:center;border-radius:10px;font-size:15px;font-weight:600;background:var(--light-bg);color:#050505;cursor:pointer;transition:all .3s ease;border:2px solid transparent}.calendar-day:not(.empty):hover{background:var(--border-color);transform:scale(1.05)}.calendar-day.today{background:var(--primary-color);color:var(--accent-color);font-weight:700}.calendar-day.empty{background:transparent;cursor:default}.calendar-day.workout-scheduled{background:#fff9c4;color:#f57f17;border:2px solid #fbc02d;font-weight:600}.calendar-day.workout-scheduled:hover{background:#ffeb3b;transform:scale(1.08)}.calendar-day.workout-completed{background:#e8f5e9;color:#2e7d32;border:2px solid #66bb6a;font-weight:600}.calendar-day.workout-completed:hover{background:#c8e6c9;transform:scale(1.08)}.calendar-day.workout-free-activity{background:#e3f2fd;color:#1565c0;border:2px solid #42a5f5;font-weight:600}.calendar-day.workout-free-activity:hover{background:#bbdefb;transform:scale(1.08)}.calendar-day.workout-coach-assigned{background:#e0e3ff;color:#3949ab;border:2px solid #5e35b1;font-weight:600}.calendar-day.workout-coach-assigned:hover{background:#c5cae9;transform:scale(1.08)}.groups-section{background:var(--primary-color);border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000000f;margin-top:10px}.groups-header{display:flex;align-items:center;gap:12px;margin-bottom:15px}.groups-icon{font-size:24px;color:var(--accent-color)}.groups-title{font-size:16px;font-weight:700;color:var(--accent-color);margin:0}.groups-list{display:flex;flex-direction:column;gap:10px}.group-card{background:#ffffff26;border-radius:10px;padding:12px 15px;display:flex;justify-content:space-between;align-items:center;border-left:4px solid var(--accent-color);border-bottom:1px solid rgba(255,255,255,.3);transition:all .3s ease;cursor:pointer}.group-card:hover{background:#ffffff40;box-shadow:0 4px 12px #0003;transform:translate(-4px)}.group-card-content{flex:1}.group-name{font-size:14px;font-weight:700;color:var(--accent-color);margin:0 0 4px}.group-info{font-size:12px;color:#fffc;margin:0}.group-badge{background:#ffffff40;color:var(--accent-color);padding:4px 12px;border-radius:20px;font-size:11px;font-weight:700;white-space:nowrap;border:1px solid rgba(255,255,255,.5)}.no-groups{text-align:center;padding:30px 20px;color:#ffffffe6;font-size:14px;background:#ffffff1a;border-radius:8px;border:1px dashed rgba(255,255,255,.5);line-height:1.6}.no-groups p{margin:0}.programs-section{background:var(--primary-color);border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000000f;margin-top:10px}.programs-header{display:flex;align-items:center;gap:12px;margin-bottom:15px}.programs-icon{font-size:24px;color:var(--accent-color)}.programs-title{font-size:16px;font-weight:700;color:var(--accent-color);margin:0}.programs-list{display:flex;flex-direction:column;gap:10px}.program-card{background:#ffffff26;border-radius:10px;padding:12px 15px;display:flex;justify-content:space-between;align-items:center;border-left:4px solid var(--accent-color);border-bottom:1px solid rgba(255,255,255,.3);transition:all .3s ease;cursor:pointer}.program-card:hover{background:#ffffff40;box-shadow:0 4px 12px #0003;transform:translate(-4px)}.program-card-content{flex:1}.program-name{font-size:14px;font-weight:700;color:var(--accent-color);margin:0 0 4px}.program-info{font-size:12px;color:#fffc;margin:0}.program-badge{background:#ffffff40;color:var(--accent-color);padding:4px 12px;border-radius:20px;font-size:11px;font-weight:700;white-space:nowrap;border:1px solid rgba(255,255,255,.5)}.no-programs{text-align:center;padding:30px 20px;color:#ffffffe6;font-size:14px;background:#ffffff1a;border-radius:8px;border:1px dashed rgba(255,255,255,.5);line-height:1.6}.no-programs p{margin:0}.dashboard-navigation{display:flex;align-self:stretch;background:var(--primary-color);border-radius:16px 16px 0 0;padding:0;position:fixed;bottom:12px;left:12px;right:12px;width:calc(100% - 24px);box-shadow:0 -4px 16px #00000026;z-index:100;align-items:stretch;direction:ltr}.nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:none;border:none;cursor:pointer;padding:12px 8px;transition:all .3s ease;flex:1;color:var(--accent-color);border-bottom:3px solid transparent}.nav-item:hover{background:#ffffff1a;border-bottom-color:var(--accent-color);transform:translateY(-2px)}.nav-item:active{background:#fff3;border-bottom-color:var(--accent-color)}.nav-icon{font-size:24px;display:flex;align-items:center;justify-content:center;color:var(--accent-color)}.nav-label{font-size:11px;color:var(--accent-color);font-weight:600;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media (max-width: 600px){.dashboard-content{padding-left:0;padding-right:0;padding-bottom:130px}.calendar-month-year{font-size:16px}.calendar-day{font-size:11px}.nav-label{font-size:9px}.nav-icon{font-size:20px}.nav-item{padding:10px 6px}}.coach-modal-overlay{position:fixed;top:50px;left:0;right:0;bottom:0;background:#00000080;z-index:250;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;padding:0}.coach-modal-panel,.assignment-picker-panel{background:var(--accent-color);width:100%;max-width:100%;border-radius:20px 20px 0 0;box-shadow:0 -4px 16px #00000026;animation:slideUpModal .3s ease;padding:20px;max-height:80vh;overflow-y:auto;box-sizing:border-box;margin:0;align-self:stretch}.assignment-picker-panel.athlete-mode-panel{background:#fff}.assignment-picker-header{position:relative;display:flex;align-items:center;justify-content:flex-end;margin-bottom:16px;padding:0 48px}.assignment-picker-header-text{flex:0 1 auto;display:flex;flex-direction:column;gap:4px}.assignment-picker-header-text h3{margin:0;font-size:18px;font-weight:700;color:#0c0c0c}.assignment-picker-panel.athlete-mode-panel .assignment-picker-header-text h3{color:#0c0c0c}.assignment-picker-header-text p{margin:0;font-size:14px;color:#555}.assignment-picker-panel.athlete-mode-panel .assignment-picker-header-text p{color:#444}.assignment-picker-header-text.ltr-text{align-items:flex-start;text-align:left;margin-left:0;margin-right:auto}.assignment-picker-header-text.rtl-text{align-items:flex-end;text-align:right;margin-left:auto;margin-right:0}.assignment-picker-header.ltr .coach-modal-close-btn{right:16px}.assignment-picker-header.rtl .coach-modal-close-btn{left:16px}.assignment-picker-header .coach-modal-close-btn{position:absolute;top:0}.assignment-picker-subtitle{margin:4px 0 0;font-size:14px;color:#555}.assignment-picker-list{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.assignment-picker-item{width:100%;padding:18px 16px;border-radius:18px;border:2px solid #d32f2f;background:#d32f2f;font-size:16px;font-weight:600;color:#fff;text-align:center;cursor:pointer;transition:all .3s ease;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px}.assignment-picker-item-label{font-weight:500;color:#ffffffd9;font-size:14px}.assignment-picker-item-title{font-size:16px;color:#fff;font-weight:700}.assignment-picker-item:hover{border-color:#d32f2f;box-shadow:0 10px 20px #d32f2f4d}.assignment-picker-item.athlete-mode{background:#050505;border-color:#050505;flex-direction:column;justify-content:center;align-items:center;padding:24px 20px;box-shadow:0 16px 30px #00000059}.assignment-picker-item.athlete-mode .assignment-picker-item-label,.assignment-picker-item.athlete-mode .assignment-picker-item-title{color:#fff;text-align:center}.assignment-picker-item.athlete-mode .assignment-picker-item-title{font-weight:700;font-size:18px}.assignment-picker-item.athlete-mode .assignment-picker-item-label{font-size:14px}.assignment-picker-item-body{display:flex;flex-direction:column;align-items:center;gap:4px}.assignment-picker-item-body.athlete-body{align-items:center;flex:1}.add-another-program-btn{width:100%;margin-bottom:0;padding:16px 56px 16px 24px;border-radius:18px;border:2px solid #d32f2f;background:#fff;color:#0c0c0c;font-size:16px;font-weight:600;display:flex;align-items:center;justify-content:center;position:relative;transition:all .3s ease}.add-another-program-btn .option-icon{position:absolute;right:20px;font-size:20px}.add-another-program-btn.rtl{padding:16px 24px 16px 56px}.add-another-program-btn.rtl .option-icon{right:auto;left:20px}.add-another-program-btn:hover{border-color:#a02121;box-shadow:0 10px 20px #d32f2f40}.coach-modal-header{display:flex;align-items:center;justify-content:flex-start;gap:12px;margin-bottom:20px;border-bottom:2px solid var(--border-color);padding-bottom:12px}.coach-modal-header h3{font-size:16px;font-weight:700;color:var(--text-primary);margin:0;flex:1;text-align:center}.coach-modal-close-btn{background:none;border:none;font-size:24px;cursor:pointer;color:var(--text-primary);display:flex;align-items:center;justify-content:center;padding:4px;transition:all .3s ease}.coach-modal-close-btn:hover{color:var(--primary-color)}.coach-modal-options{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.coach-option-btn{display:flex;align-items:center;gap:12px;padding:16px;background:var(--primary-color);color:var(--accent-color);border:none;border-radius:12px;cursor:pointer;transition:all .3s ease;font-size:14px;font-weight:600;text-align:left;justify-content:space-between}.coach-option-btn .option-text{flex:1;font-size:1rem;font-weight:700;white-space:nowrap;text-align:left}.coach-option-btn.ltr .option-text{text-align:left}.coach-option-btn.rtl{direction:rtl}.coach-option-btn.rtl .option-text{text-align:right}.coach-option-btn .option-icon{font-size:20px;margin-left:12px}.coach-option-btn.rtl .option-text{order:1}.coach-option-btn.rtl .option-icon{order:2;margin-left:0;margin-right:12px}.coach-option-btn:hover{background:var(--primary-dark);transform:translateY(-2px);box-shadow:0 4px 12px #d32f2f4d}.coach-option-btn.add-another-program-btn{background:#fff;color:#000;border:2px solid #000;box-shadow:none;justify-content:space-between}.coach-option-btn.add-another-program-btn:hover{background:#f9fafb;border-color:#000;box-shadow:0 4px 12px #00000040}.add-another-program-text{flex:1;font-size:1rem;font-weight:700;line-height:1.2}.coach-option-btn.add-another-program-btn.ltr .add-another-program-text{text-align:left}.coach-option-btn.add-another-program-btn.rtl .add-another-program-text{text-align:right}.add-program-btn,.edit-program-btn{justify-content:space-between}.delete-program-btn{background:#f44336;justify-content:space-between}.delete-program-btn:hover{background:#d32f2f;transform:translateY(-2px);box-shadow:0 4px 12px #f443364d}.assigned-date-title{font-size:14px;font-weight:600;color:#065f46;text-align:center;margin:0 0 16px;padding:12px;background:#dcfce7;border-radius:8px;border-left:4px solid #22c55e}.coach-option-btn.view-program-btn{background:#22c55e}.coach-option-btn.view-program-btn:hover{background:#16a34a;box-shadow:0 4px 12px #16a34a59}.coach-option-btn.edit-program-btn{background:#0c4a6e}.coach-option-btn.edit-program-btn:hover{background:#0b4a70;box-shadow:0 4px 12px #0c4a6e59}.option-icon{font-size:24px}.coach-programs-list{margin-top:20px;padding-top:20px;border-top:2px solid var(--border-color)}.programs-list-title{font-size:13px;font-weight:700;color:var(--text-secondary);text-align:left;margin:0 0 12px;text-transform:uppercase;letter-spacing:.5px}.coach-program-actions{display:flex;flex-direction:column;gap:8px;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--border-color)}.coach-program-actions:last-child{margin-bottom:0;border-bottom:none}.coach-program-item{display:flex;align-items:center;gap:10px;padding:12px 14px;background:var(--light-bg);border:2px solid var(--border-color);border-radius:10px;cursor:pointer;transition:all .3s ease;text-align:left;width:100%;justify-content:space-between;font-size:13px;font-weight:600;color:var(--text-primary)}.coach-program-item:hover{background:#fff;border-color:var(--primary-color);box-shadow:0 2px 8px #d32f2f33}.coach-program-item.show-program{border-color:#4ecdc4;color:#4ecdc4}.coach-program-item.show-program:hover{background:#4ecdc41a;border-color:#4ecdc4}.coach-program-item.edit-program{border-color:#ff6b6b;color:#ff6b6b}.coach-program-item.edit-program:hover{background:#ff6b6b1a;border-color:#ff6b6b}.coach-assign-modal{display:flex;flex-direction:column;gap:16px}.coach-assign-modal h4{font-size:16px;font-weight:700;color:var(--text-primary);margin:0;text-align:center}.program-selection{display:flex;flex-direction:column;gap:10px}.program-select-btn{padding:14px 16px;background:var(--light-bg);border:2px solid var(--border-color);border-radius:10px;cursor:pointer;transition:all .3s ease;text-align:left;font-size:14px;font-weight:600;color:var(--text-primary)}.program-select-btn:hover{border-color:var(--primary-color);background:#d32f2f0d}.program-select-btn.selected{background:var(--primary-color);color:var(--accent-color);border-color:var(--primary-color);box-shadow:0 2px 8px #d32f2f4d}.assignment-target-section{display:flex;flex-direction:column;gap:12px;padding-top:16px;border-top:2px solid var(--border-color)}.assignment-target-section label{font-size:13px;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin:0}.target-select{padding:12px 14px;background:var(--light-bg);border:2px solid var(--border-color);border-radius:10px;font-size:14px;font-weight:600;color:var(--text-primary);cursor:pointer;transition:all .3s ease}.target-select:hover{border-color:var(--primary-color)}.target-select:focus{outline:none;border-color:var(--primary-color);background:var(--accent-color);box-shadow:0 0 0 3px #d32f2f1a}.assign-buttons{display:flex;gap:10px;margin-top:8px}.assign-confirm-btn,.assign-cancel-btn{flex:1;padding:14px 16px;border:none;border-radius:10px;cursor:pointer;font-size:14px;font-weight:700;transition:all .3s ease;text-transform:uppercase;letter-spacing:.5px}.assign-confirm-btn{background:var(--primary-color);color:var(--accent-color)}.assign-confirm-btn:hover:not(:disabled){background:var(--primary-dark);transform:translateY(-2px);box-shadow:0 4px 12px #d32f2f4d}.assign-confirm-btn:disabled{opacity:.6;cursor:not-allowed}.assign-cancel-btn{background:var(--border-color);color:var(--text-secondary)}.assign-cancel-btn:hover:not(:disabled){background:var(--light-bg);transform:translateY(-2px)}.assign-cancel-btn:disabled{opacity:.6;cursor:not-allowed}.mode-selection{display:flex;flex-direction:column;gap:10px;margin:16px 0}.mode-option{display:flex;flex-direction:column;gap:6px;padding:16px;background:var(--light-bg);border:2px solid var(--border-color);border-radius:10px;cursor:pointer;transition:all .3s ease;text-align:left}.mode-option:hover{border-color:var(--primary-color);background:#d32f2f0d}.mode-option.existing-program{border-left:4px solid #4ecdc4}.mode-option.new-program{border-left:4px solid var(--primary-color)}.mode-title{font-size:14px;font-weight:700;color:var(--text-primary)}.mode-desc{font-size:12px;color:var(--text-secondary)}.success-notification{position:fixed;top:20px;right:20px;z-index:10000;animation:slideInRight .3s ease}.success-message-content{display:flex;align-items:center;gap:12px;padding:16px 20px;background:#4caf50;color:#fff;border-radius:10px;box-shadow:0 4px 12px #4caf504d;font-weight:600;font-size:14px}.success-message-content span{font-size:20px;font-weight:700}.coach-modal-success{padding:32px 24px 20px;display:flex;justify-content:center}.coach-modal-success .success-view{width:100%;padding:40px 20px;border-radius:16px;box-shadow:none;background:transparent}.target-selection-title{font-size:14px;font-weight:700;color:var(--text-primary);text-align:center;margin-bottom:16px;margin-top:0}.target-options{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.target-option-btn{display:flex;flex-direction:column;gap:6px;padding:16px;background:var(--light-bg);border:2px solid var(--border-color);border-radius:10px;cursor:pointer;transition:all .3s ease;text-align:left}.target-option-btn:hover{background:var(--primary-color);color:var(--accent-color);border-color:var(--primary-color);transform:translateY(-2px)}.target-option-btn.all-athletes:hover,.target-option-btn.specific-athlete:hover{box-shadow:0 4px 12px #d32f2f33}.option-title{font-size:15px;font-weight:700;display:block}.option-desc{font-size:12px;color:var(--text-secondary);display:block}.target-option-btn:hover .option-desc{color:var(--accent-color)}.athlete-search-section{display:flex;flex-direction:column;gap:12px;margin-bottom:16px;padding:16px;background:var(--light-bg);border-radius:10px}.athlete-search-section label{font-size:12px;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.athlete-search-input{padding:12px 14px;border:2px solid var(--border-color);border-radius:8px;font-size:14px;font-family:inherit;color:var(--text-primary);transition:all .3s ease}.athlete-search-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #d32f2f1a}.selected-athlete-badge{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:var(--primary-color);color:var(--accent-color);border-radius:8px;font-size:13px;font-weight:600}.clear-selection-btn{background:none;border:none;color:var(--accent-color);cursor:pointer;font-size:18px;font-weight:700;padding:0;transition:transform .2s ease}.clear-selection-btn:hover{transform:scale(1.2)}.search-status{text-align:center;font-size:13px;color:var(--text-secondary);margin:8px 0}.athlete-search-results{display:flex;flex-direction:column;gap:8px;max-height:300px;overflow-y:auto;border-top:2px solid var(--border-color);padding-top:12px}.athlete-search-result{display:flex;flex-direction:column;gap:4px;padding:12px;background:#fff;border:1px solid var(--border-color);border-radius:8px;cursor:pointer;transition:all .2s ease;text-align:left}.athlete-search-result:hover{background:var(--primary-color);color:var(--accent-color);border-color:var(--primary-color);transform:translate(-4px)}.athlete-name{font-size:14px;font-weight:600}.athlete-username{font-size:12px;color:var(--text-secondary)}.athlete-search-result:hover .athlete-username{color:var(--accent-color)}.assign-confirmation{display:flex;flex-direction:column;gap:16px;padding:16px;background:#d32f2f14;border-radius:10px;border-left:4px solid var(--primary-color)}.athlete-workouts-section{margin-top:20px;padding-top:20px;border-top:2px solid var(--border-color)}.workouts-section-title{font-size:16px;font-weight:700;color:var(--primary-color);margin-bottom:12px;text-align:right}.athlete-workouts-list{display:flex;flex-direction:column;gap:12px;max-height:400px;overflow-y:auto;padding-right:4px}.athlete-workout-card{background:linear-gradient(135deg,#f5f7fa,#fff);border:2px solid var(--border-color);border-radius:12px;padding:14px;transition:all .3s ease}.athlete-workout-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a;border-color:var(--primary-color)}.workout-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid var(--border-color)}.workout-card-header .athlete-name{font-size:15px;font-weight:700;color:var(--primary-color)}.workout-card-header .program-name{font-size:12px;color:var(--text-secondary);font-weight:500}.workout-card-body{display:flex;flex-direction:column;gap:6px;font-size:13px;text-align:right}.workout-card-body p{margin:0;color:var(--text-color)}.workout-card-body strong{color:var(--primary-color);font-weight:600}.workout-notes{background:#d32f2f0d;padding:8px;border-radius:6px;border-right:3px solid var(--primary-color);margin-top:4px}.workout-exercises-details{margin-top:12px;border-top:1px dashed var(--border-color);padding-top:8px}.workout-exercises-details summary{cursor:pointer;font-weight:600;color:var(--primary-color);font-size:13px;padding:4px;text-align:right;transition:color .2s ease}.workout-exercises-details summary:hover{color:var(--accent-color)}.exercises-list{display:flex;flex-direction:column;gap:8px;margin-top:8px;padding:8px;background:#00000005;border-radius:6px}.exercise-item{padding:8px;background:#fff;border-radius:6px;border:1px solid var(--border-color);text-align:right}.exercise-title{font-weight:600;color:var(--text-color);margin:0 0 4px;font-size:13px}.exercise-details{font-size:12px;color:var(--text-secondary);margin:0}.exercise-notes{font-size:11px;color:var(--text-secondary);font-style:italic;margin:4px 0 0;padding:4px;background:#00000008;border-radius:4px}.confirmation-text{font-size:14px;font-weight:600;color:var(--text-primary);margin:0;text-align:center}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@media (max-width: 768px){.success-notification{top:10px;right:10px;left:10px}.success-message-content{padding:14px 16px;font-size:13px}}.coach-performance-container{max-width:1200px;margin:0 auto;padding:20px;direction:rtl}.performance-header{display:flex;align-items:flex-start;gap:20px;margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid #f0f0f0}.back-button{padding:8px 16px;background:#f5f5f5;border:none;border-radius:6px;font-size:14px;cursor:pointer;transition:all .3s ease}.back-button:hover{background:#eee}.performance-header h1{margin:0;font-size:28px;color:#212121}.athlete-name{margin:8px 0 0;font-size:14px;color:#666}.view-mode-selector{display:flex;gap:10px;margin-bottom:30px}.mode-btn{padding:10px 20px;background:#fff;border:2px solid #ddd;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;color:#666}.mode-btn:hover{border-color:#d32f2f;color:#d32f2f}.mode-btn.active{background:#d32f2f;color:#fff;border-color:#d32f2f}.summary-section{display:flex;flex-direction:column;gap:30px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px}.stat-card{padding:20px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;border-top:4px solid #ddd}.stat-card.completed{border-top-color:#4caf50}.stat-card.completion{border-top-color:#2196f3}.stat-card.extra{border-top-color:#ff9800}.stat-card.notes{border-top-color:#9c27b0}.stat-label{font-size:12px;color:#999;font-weight:600;text-transform:uppercase;margin-bottom:8px}.stat-value{font-size:32px;font-weight:700;color:#212121;margin-bottom:8px}.stat-sub{font-size:12px;color:#999}.progress-bar{width:100%;height:6px;background:#eee;border-radius:3px;overflow:hidden;margin-top:12px}.progress-fill{height:100%;background:#2196f3;border-radius:3px;transition:width .3s ease}.program-info{padding:20px;background:#f9f9f9;border-radius:12px;border-left:4px solid #d32f2f}.program-info h3{margin:0 0 16px;font-size:16px;color:#212121}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px}.info-item{display:flex;flex-direction:column;gap:4px}.info-item .label{font-size:12px;color:#999;font-weight:600}.info-item .value{font-size:14px;font-weight:600;color:#212121}.timeline-section{display:flex;flex-direction:column;gap:30px}.timeline-section h3{margin:0;font-size:18px;color:#212121}.timeline-subsection{padding:20px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a}.timeline-subsection h4{margin:0 0 16px;font-size:14px;color:#333;font-weight:600}.items-list{display:flex;flex-direction:column;gap:12px}.timeline-item{padding:12px;background:#f9f9f9;border-radius:8px;border-right:4px solid #ddd}.timeline-item.completed-item{border-right-color:#4caf50;background:#f1f8f4}.timeline-item.activity-item{border-right-color:#ff9800;background:#fff8f3}.timeline-item.activity-item.note{border-right-color:#9c27b0;background:#f3f0f9}.item-title{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600;color:#212121;margin-bottom:8px}.status-badge{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;font-size:12px;font-weight:700;background:#ddd;color:#fff}.status-badge.completed{background:#4caf50}.status-badge.extra{background:#ff9800}.status-badge.note{background:#9c27b0}.item-details{display:flex;gap:16px;font-size:12px;color:#666}.item-note{margin:8px 0;padding:8px;background:#fff;border-radius:6px;font-size:13px;color:#333}.exercises-list{margin:8px 0;display:flex;flex-direction:column;gap:6px;padding:8px;background:#fff;border-radius:6px}.exercise-item{display:flex;justify-content:space-between;font-size:12px;padding:6px 0;border-bottom:1px solid #eee}.exercise-item:last-child{border-bottom:none}.ex-title{font-weight:600;color:#212121}.ex-sets{color:#999}.date{font-size:11px;color:#999;margin-top:8px}.empty-message{padding:20px;text-align:center;color:#999;font-size:14px}.loading,.error{padding:40px 20px;text-align:center;font-size:16px;color:#666}.error{color:#d32f2f}.app{width:100%;min-height:100vh;display:flex;flex-direction:column}:root{--font-primary: "Poppins", "Lalezar", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif}:root[lang=fa]{--font-primary: "Shabnam", "Poppins", "Lalezar", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif}@font-face{font-family:Poppins;src:url(/fonts/poppins/Poppins-Thin.ttf) format("truetype");font-weight:100;font-style:normal;font-display:swap}@font-face{font-family:Poppins;src:url(/fonts/poppins/Poppins-ThinItalic.ttf) format("truetype");font-weight:100;font-style:italic;font-display:swap}@font-face{font-family:Poppins;src:url(/fonts/poppins/Poppins-ExtraLight.ttf) format("truetype");font-weight:200;font-style:normal;font-display:swap}@font-face{font-family:Poppins;src:url(/fonts/poppins/Poppins-ExtraLightItalic.ttf) format("truetype");font-weight:200;font-style:italic;font-display:swap}@font-face{font-family:Poppins;src:url(/fonts/poppins/Poppins-Light.ttf) format("truetype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Poppins;src:url(/fonts/poppins/Poppins-LightItalic.ttf) format("truetype");font-weight:300;font-style:italic;font-display:swap}@font-face{font-family:Poppins;src:url(/fonts/poppins/Poppins-Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Poppins;src:url(/fonts/poppins/Poppins-Italic.ttf) format("truetype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Poppins;src:url(/fonts/poppins/Poppins-Medium.ttf) format("truetype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Poppins;src:url(/fonts/poppins/Poppins-MediumItalic.ttf) format("truetype");font-weight:500;font-style:italic;font-display:swap}@font-face{font-family:Poppins;src:url(/fonts/poppins/Poppins-SemiBold.ttf) format("truetype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Poppins;src:url(/fonts/poppins/Poppins-SemiBoldItalic.ttf) format("truetype");font-weight:600;font-style:italic;font-display:swap}@font-face{font-family:Poppins;src:url(/fonts/poppins/Poppins-Bold.ttf) format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Poppins;src:url(/fonts/poppins/Poppins-BoldItalic.ttf) format("truetype");font-weight:700;font-style:italic;font-display:swap}@font-face{font-family:Poppins;src:url(/fonts/poppins/Poppins-ExtraBold.ttf) format("truetype");font-weight:800;font-style:normal;font-display:swap}@font-face{font-family:Poppins;src:url(/fonts/poppins/Poppins-ExtraBoldItalic.ttf) format("truetype");font-weight:800;font-style:italic;font-display:swap}@font-face{font-family:Poppins;src:url(/fonts/poppins/Poppins-Black.ttf) format("truetype");font-weight:900;font-style:normal;font-display:swap}@font-face{font-family:Poppins;src:url(/fonts/poppins/Poppins-BlackItalic.ttf) format("truetype");font-weight:900;font-style:italic;font-display:swap}@font-face{font-family:Shabnam;src:url(/fonts/shabnam/Shabnam.woff2) format("woff2"),url(/fonts/shabnam/Shabnam.woff) format("woff");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Shabnam;src:url(/fonts/shabnam/Shabnam-Light.woff2) format("woff2"),url(/fonts/shabnam/Shabnam-Light.woff) format("woff");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Shabnam;src:url(/fonts/shabnam/Shabnam-Bold.woff2) format("woff2"),url(/fonts/shabnam/Shabnam-Bold.woff) format("woff");font-weight:700;font-style:normal;font-display:swap}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{width:100%;height:100%;overflow-x:hidden;overflow-y:auto;overscroll-behavior:none}body{font-family:var(--font-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;touch-action:pan-y}@font-face{font-family:Lalezar;src:url(/fonts/Lalezar-Regular.ttf) format("truetype");font-weight:400;font-display:swap}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}
