.dashboard-container{display:flex;flex-direction:column;gap:24px;animation:fadeIn .5s ease-out}.hero-section{background-color:var(--bg-secondary);border-radius:16px;padding:24px;display:flex;align-items:center;gap:24px;flex-wrap:wrap;box-shadow:var(--shadow);border:1px solid var(--border-color)}.hero-section h2{font-size:28px;font-weight:700;color:var(--text-primary);margin-bottom:8px}.hero-section p{color:var(--text-tertiary);font-size:16px}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:16px}.metric-card{background-color:var(--bg-secondary);border-radius:12px;padding:20px;box-shadow:var(--shadow);border:1px solid var(--border-color);transition:all .3s ease;display:flex;align-items:center;gap:16px;overflow:hidden}.metric-card:hover{transform:translateY(-5px) scale(1.02);box-shadow:0 20px 25px -5px #0003}.metric-card-icon{flex-shrink:0;width:52px;height:52px;border-radius:12px;display:flex;align-items:center;justify-content:center}.metric-card-content{flex-grow:1}.metric-card-title{color:var(--text-tertiary);font-size:14px;margin-bottom:4px}.metric-card-value{color:var(--text-primary);font-size:28px;font-weight:700;line-height:1.2;display:flex;align-items:baseline;flex-wrap:wrap;gap:4px}.metric-card-unit{font-size:16px;font-weight:500;color:var(--text-tertiary)}.fire-icon{animation:flame 1.5s ease-in-out infinite alternate}@keyframes flame{0%{transform:scale(1) rotate(-2deg);opacity:1}50%{transform:scale(1.1) rotate(2deg);opacity:.8}to{transform:scale(1) rotate(-2deg);opacity:1}}.chart-container{background-color:var(--bg-secondary);border-radius:16px;padding:24px;box-shadow:var(--shadow);border:1px solid var(--border-color)}.chart-title{font-size:20px;font-weight:700;color:var(--text-primary);margin-bottom:24px}.custom-tooltip{background-color:#1e293be6;border:1px solid transparent;padding:10px 15px;border-radius:8px;box-shadow:var(--shadow)}.tooltip-label{font-weight:600;margin-bottom:5px;color:#fff}.tooltip-intro{font-size:14px;color:#e1e8ed}.workout-detail-container{padding:8px}.completed-summary{background-color:#10b9811a;border:1px solid rgba(16,185,129,.3);border-radius:12px;padding:16px;margin-bottom:24px}.completed-summary h4{color:#10b981;font-size:18px;margin-bottom:12px}.summary-stats{display:flex;justify-content:space-around;color:var(--text-secondary);font-weight:500}.summary-total-time{font-size:28px;text-align:center;color:var(--text-primary);margin-bottom:16px;font-variant-numeric:tabular-nums}.detail-blocks-container{display:flex;flex-direction:column;gap:16px}.detail-block-card{background-color:var(--bg-tertiary);border-radius:8px;padding:12px 16px}.detail-block-title{font-size:16px;font-weight:600;color:#ff6b35;margin-bottom:8px}.detail-exercise-list{list-style:none;padding-left:0;color:var(--text-secondary);font-size:14px;line-height:1.6}.detail-exercise-list li{padding:4px 0}.detail-exercise-list strong{color:var(--text-primary)}.completed-laps-section{margin-top:16px;padding-top:12px;border-top:1px solid var(--border-color)}.detail-block-title.sub-title{color:#3b82f6;font-size:14px;margin-bottom:8px}.completed-strength-exercise{display:flex;flex-direction:column;gap:8px;padding:12px 0!important}.completed-strength-exercise:not(:last-child){border-bottom:1px solid var(--border-color)}.completed-strength-exercise>strong{font-size:15px;font-weight:600;color:var(--text-primary)}.completed-sets-list{list-style:none;padding-left:16px;margin:0;display:flex;flex-direction:column;gap:6px}.completed-set-row{display:flex;justify-content:space-between;align-items:center;font-size:14px;color:var(--text-secondary)}.completed-set-row span:first-child{font-weight:500}.completed-set-row span:last-child{font-weight:600;color:var(--text-primary);background-color:var(--bg-primary);padding:4px 8px;border-radius:6px;font-variant-numeric:tabular-nums}.completed-item-marker{color:#10b981;margin-right:8px;vertical-align:middle}.summary-results-grid{display:flex;flex-direction:column;gap:12px}.summary-results-grid+.summary-stats-section{padding-top:16px;margin-top:16px;border-top:1px solid rgba(16,185,129,.2)}.summary-stats-title{font-size:14px;font-weight:600;color:var(--text-tertiary);margin-bottom:12px;text-align:center}.summary-result-item{display:flex;justify-content:space-between;align-items:center}.summary-result-label{font-size:16px;font-weight:500;color:var(--text-secondary)}.summary-result-value{font-size:24px;font-weight:700;color:var(--text-primary);font-variant-numeric:tabular-nums}.workout-view-container{display:flex;flex-direction:column;gap:24px;animation:fadeIn .5s ease-out}.workout-header{background-color:var(--bg-secondary);border-radius:16px;padding:16px;border:1px solid var(--border-color);box-shadow:var(--shadow)}.workout-header h1{font-size:24px;color:var(--text-primary);margin:0}.workout-day-badge{background-color:var(--bg-tertiary);color:var(--text-secondary);padding:4px 12px;border-radius:20px;font-size:14px;font-weight:600;margin-bottom:8px;display:inline-block}.rest-day-content{text-align:center;padding:40px;background-color:var(--bg-secondary);border-radius:16px}.rest-day-content p{font-size:16px;color:var(--text-tertiary)}.workout-header-nav{display:flex;justify-content:space-between;align-items:center}.workout-header-title{text-align:center}.workout-header-title.rest-day-header h2{font-size:22px;color:var(--text-primary)}.workout-header-title.rest-day-header p{font-size:14px;color:var(--text-tertiary)}.day-nav-btn{background:none;border:none;color:var(--text-tertiary);cursor:pointer;padding:8px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.day-nav-btn:not(:disabled):hover{background-color:var(--bg-tertiary);color:var(--text-primary)}.day-nav-btn:disabled{opacity:.3;cursor:not-allowed}.workout-section{background-color:var(--bg-secondary);border-radius:16px;overflow:hidden;transition:all .3s ease;border:1px solid var(--border-color)}.section-header{display:flex;justify-content:space-between;align-items:center;padding:20px;cursor:pointer;-webkit-user-select:none;user-select:none}.section-header:hover{background-color:var(--bg-tertiary)}.section-header h3{font-size:20px;font-weight:600;color:var(--text-primary)}.section-meta{display:flex;align-items:center;gap:16px;font-size:14px;color:var(--text-tertiary);font-weight:500}.collapse-icon{transition:transform .3s ease}.workout-section.collapsed .collapse-icon{transform:rotate(-90deg)}.section-content{padding:0 20px 20px;display:flex;flex-direction:column;gap:16px;border-top:1px solid var(--border-color)}.exercise-card-simple,.exercise-card-interactive{background-color:var(--bg-tertiary);border-radius:12px;padding:16px}.exercise-info{display:flex;justify-content:space-between;align-items:center}.exercise-info.clickable{cursor:pointer}.help-icon{color:var(--text-tertiary);transition:color .2s}.exercise-info.clickable:hover .help-icon{color:#3b82f6}.exercise-info h4{font-size:18px;color:var(--text-primary);margin:0}.exercise-details{display:flex;flex-wrap:wrap;gap:16px;font-size:12px;font-weight:700;color:var(--text-tertiary);letter-spacing:.5px;margin-top:8px}.exercise-note{font-size:14px;color:var(--text-secondary);margin-top:12px;font-style:italic}.sets-container{margin-top:16px;display:flex;flex-direction:column;gap:4px}.set-row-wrapper{padding:8px;border-radius:8px;transition:background-color .3s ease}.set-row-wrapper.completed{background-color:#10b98120}.set-row{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px}.set-status{display:flex;align-items:center;gap:12px}.set-checkbox{background:none;border:none;cursor:pointer;color:var(--text-tertiary);padding:4px;display:flex;align-items:center}.set-row-wrapper.completed .set-checkbox{color:#10b981}.set-number{font-weight:600;color:var(--text-secondary);white-space:nowrap}.set-inputs-container{display:flex;gap:12px;justify-content:center;flex-grow:1;flex-wrap:wrap}.set-input-group{display:flex;align-items:center;justify-content:center;gap:8px;color:var(--text-tertiary);background-color:var(--bg-primary);padding:6px 8px;border-radius:8px;border:1px solid var(--border-color);width:180px}.set-input{background:none;border:none;color:var(--text-primary);font-size:16px;font-weight:500;flex-grow:1;width:50px;text-align:center;-moz-appearance:textfield}} .set-input::-webkit-outer-spin-button,.set-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.input-button{background-color:var(--bg-tertiary);border:none;color:var(--text-primary);width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color .2s;flex-shrink:0}.input-button:hover{background-color:#3b82f6}.set-actions{padding-top:10px;margin-top:10px;border-top:1px solid var(--border-color)}.rest-button{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;padding:8px;border:none;border-radius:8px;background:linear-gradient(90deg,#FF6B35,#f74d0e);color:#fff;font-weight:600;cursor:pointer;transition:transform .2s}.rest-button:hover{transform:scale(1.02)}.conditioning-card{background-color:var(--bg-tertiary);border-radius:12px;padding:20px}.conditioning-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.conditioning-header h3{font-size:18px;color:var(--text-primary)}.wod-format-badge{background-color:var(--bg-primary);color:var(--text-secondary);padding:4px 10px;border-radius:20px;font-size:12px;font-weight:600}.exercise-list{list-style:none;padding-left:0;margin-bottom:24px}.exercise-list-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border-radius:8px;transition:background-color .2s}.exercise-list-item.clickable{cursor:pointer}.exercise-list-item.clickable:hover{background-color:var(--bg-primary)}.exercise-list-item .help-icon{color:transparent;transition:color .2s}.exercise-list-item:hover .help-icon{color:#3b82f6}.exercise-list-main{display:flex;align-items:center;gap:12px;flex-grow:1}.exercise-list-reps{font-weight:700;color:#fb923c;min-width:50px}.exercise-list-name{color:var(--text-secondary)}.start-wod-button{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;padding:14px;font-size:18px;border:none;border-radius:12px;color:#fff;font-weight:700;cursor:pointer;transition:all .2s ease-out}.start-wod-button:hover{transform:scale(1.02)}.amrap-button,.fortime-button{background:linear-gradient(90deg,#10b981,#059669)}.amrap-button:hover,.fortime-button:hover{box-shadow:0 10px 20px -5px #10b98150}.emom-button{background:linear-gradient(90deg,#8b5cf6,#7c3aed)}.emom-button:hover{box-shadow:0 10px 20px -5px #8b5cf650}.tabata-button{background:linear-gradient(90deg,#3b82f6,#2563eb)}.tabata-button:hover{box-shadow:0 10px 20px -5px #3b82f650}.finish-workout-container{margin-top:16px}.finish-workout-button{width:100%;padding:16px;font-size:18px;font-weight:700;display:flex;align-items:center;justify-content:center;gap:12px;border:none;border-radius:12px;cursor:pointer;background:linear-gradient(90deg,#10b981,#059669);color:#fff;transition:all .2s ease-out}.finish-workout-button:hover{transform:translateY(-2px);box-shadow:0 10px 20px -5px #10b98150}@media (max-width: 520px){.set-inputs-container{width:100%;justify-content:space-between}}.warmup-button{background:linear-gradient(90deg,#FF6B35,#f74d0e)}.warmup-button:hover{box-shadow:0 10px 20px -5px #ff6b3550}.cooldown-button{background:linear-gradient(90deg,#22d3ee,#06b6d4)}.cooldown-button:hover{box-shadow:0 10px 20px -5px #06b6d450}.bodyweight-button{background:linear-gradient(90deg,#3b82f6,#2563eb)}.bodyweight-button:hover{box-shadow:0 10px 20px -5px #3b82f650}.exercise-card-bw{background-color:var(--bg-tertiary);border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:12px;transition:background-color .3s ease}.exercise-card-bw.completed{background-color:#10b9811a}.bw-main-row{display:flex;align-items:center;gap:12px}.bw-checkbox{background:none;border:none;cursor:pointer;color:var(--text-tertiary);padding:4px;display:flex;align-items:center}.exercise-card-bw.completed .bw-checkbox{color:#10b981}.bw-info{flex-grow:1}.bw-name{font-size:18px;font-weight:600;color:var(--text-primary);transition:color .3s ease}.exercise-card-bw.completed .bw-name{text-decoration:line-through;color:var(--text-tertiary)}.bw-target{font-size:14px;font-weight:500;color:var(--text-secondary)}.exercise-card-bw.completed .bw-target{color:var(--text-tertiary)}.bw-timer-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;padding:8px;border:none;border-radius:8px;background:linear-gradient(90deg,#FF6B35,#f74d0e);color:#fff;font-weight:600;cursor:pointer;transition:transform .2s}.bw-timer-btn:hover{transform:scale(1.02)}.exercise-card-accessory{background-color:var(--bg-tertiary);border-radius:12px;padding:16px}.accessory-set-row{display:flex;align-items:center;gap:12px;padding:8px;border-radius:8px;transition:background-color .2s,color .2s}.accessory-set-row.completed{background-color:#10b98114}.accessory-set-row.completed .set-number{text-decoration:line-through;color:var(--text-tertiary)}.accessory-set-checkbox{background:none;border:none;cursor:pointer;color:var(--text-tertiary);padding:4px;display:flex;align-items:center}.accessory-set-row.completed .accessory-set-checkbox{color:#10b981}.percentage-note{font-size:12px;color:var(--text-tertiary);margin-top:12px;padding:10px;background-color:var(--bg-primary);border-radius:8px;border:1px dashed var(--border-color);line-height:1.5}.percentage-note strong{color:var(--text-secondary)}.set-1rm-button{display:inline-block;margin-left:8px;background-color:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-secondary);padding:2px 8px;font-size:12px;font-weight:600;border-radius:6px;cursor:pointer}.set-1rm-button:hover{background-color:#3b82f6;color:#fff;border-color:#3b82f6}.lap-times-container{background-color:var(--bg-tertiary);border-radius:12px;padding:16px}.lap-times-container.section-laps{margin-top:16px}.lap-times-title{font-size:16px;font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:8px;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--border-color)}.lap-times-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.lap-time-item{display:flex;justify-content:space-between;align-items:center;background-color:var(--bg-secondary);padding:8px 12px;border-radius:8px;font-size:14px;color:var(--text-secondary)}.lap-time-value{font-weight:600;color:var(--text-primary);font-variant-numeric:tabular-nums}.record-time-btn{width:100%;padding:14px;font-size:18px;font-weight:700;display:flex;align-items:center;justify-content:center;gap:12px;border:none;border-radius:12px;cursor:pointer;background:linear-gradient(90deg,#ef4444,#dc2626);color:#fff;transition:all .2s ease-out}.record-time-btn:hover{transform:scale(1.02);box-shadow:0 10px 20px -5px #ef444450}.recorded-time-display{background-color:var(--bg-tertiary);border-radius:12px;padding:16px;display:flex;align-items:center;gap:16px}.recorded-time-icon{color:#10b981}.recorded-time-label{font-size:14px;color:var(--text-tertiary);font-weight:500}.recorded-time-value{font-size:28px;font-weight:700;color:var(--text-primary);font-variant-numeric:tabular-nums}.recorded-time-display.review-mode{padding:12px;margin-top:12px;justify-content:space-between}.recorded-time-display.review-mode .recorded-time-label{font-weight:600;font-size:16px;color:var(--text-primary)}.recorded-time-display.review-mode .recorded-time-value{font-size:18px}.amrap-score-logger{margin-top:16px;background-color:var(--bg-primary);border:1px dashed var(--border-color);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:8px}.amrap-score-logger label{font-size:14px;font-weight:600;color:var(--text-secondary);display:flex;align-items:center;gap:8px}.amrap-score-logger input{width:100%;padding:12px 16px;border-radius:8px;border:1px solid var(--border-color);background-color:var(--bg-secondary);color:var(--text-primary);font-size:16px}.amrap-score-logger input:focus{outline:none;border-color:#fb923c;box-shadow:0 0 0 3px #fb923c33}.recorded-score-display{background-color:var(--bg-tertiary);border-radius:12px;padding:16px;display:flex;align-items:center;gap:16px;justify-content:space-between}.recorded-score-label{font-size:16px;color:var(--text-primary);font-weight:600}.recorded-score-value{font-size:24px;font-weight:700;color:#fb923c;font-variant-numeric:tabular-nums}.recorded-score-display.review-mode{padding:12px;margin-top:12px}.recorded-score-display.review-mode .recorded-score-value{font-size:18px}.previous-performance{font-size:12px;color:var(--text-tertiary);margin-top:8px;padding:6px 12px;background-color:var(--bg-primary);border-radius:6px;display:flex;align-items:center;gap:8px;border:1px solid var(--border-color)}.previous-best-display{font-size:14px;margin-bottom:16px;padding:10px;background-color:var(--bg-primary);border-radius:8px;display:flex;align-items:center;gap:10px;border:1px solid #fb923c;color:#fb923c}.previous-best-display strong{color:var(--text-primary);font-weight:600}.tabata-score-logger{margin-top:16px;background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:16px}.tabata-score-header{display:flex;justify-content:space-between;align-items:center}.tabata-score-header label{font-size:14px;font-weight:600;color:var(--text-secondary)}.tabata-score-display{display:flex;align-items:center;gap:8px;background-color:var(--bg-tertiary);padding:6px 12px;border-radius:8px;font-size:14px;color:var(--text-secondary)}.tabata-score-display strong{font-size:18px;font-weight:700;color:var(--text-primary)}.tabata-rounds-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px}.tabata-round-input-group{display:flex;flex-direction:column;gap:4px}.tabata-round-label{font-size:12px;font-weight:500;color:var(--text-tertiary)}.tabata-input-wrapper{display:flex;align-items:center;gap:8px;background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding-right:8px}.tabata-input-wrapper input{width:100%;padding:8px 12px;border:none;background:none;color:var(--text-primary);font-size:16px}.tabata-input-wrapper input:focus{outline:none}.tabata-previous-reps{font-size:12px;color:var(--text-tertiary);white-space:nowrap}.conditioning-title-group{display:flex;align-items:center;gap:8px}.info-icon{color:var(--text-tertiary);cursor:pointer;transition:color .2s}.info-icon:hover{color:#3b82f6}.exercise-card-bw-sets{margin-top:12px;display:flex;flex-direction:column;gap:8px}.bw-set-row{display:flex;align-items:center;gap:12px;padding:8px;border-radius:8px;transition:background-color .2s,color .2s}.bw-set-row.completed{background-color:#10b98114}.bw-set-row.completed .set-number{text-decoration:line-through;color:var(--text-tertiary)}.bw-set-checkbox{background:none;border:none;cursor:pointer;color:var(--text-tertiary);padding:4px;display:flex;align-items:center}.bw-set-row.completed .bw-set-checkbox{color:#10b981}.bw-set-target{margin-left:auto;font-weight:500;color:var(--text-secondary);font-size:14px}.bw-set-row.completed .bw-set-target{color:var(--text-tertiary)}.modal-container{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:16px;width:100%;max-width:600px;max-height:90vh;box-shadow:0 10px 30px #0000004d;position:relative;display:flex;flex-direction:column}.modal-header{padding:16px;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.modal-title{font-size:24px;color:var(--text-primary);margin:0;padding-right:40px}.modal-title-nav{display:flex;align-items:center;justify-content:space-between;width:100%;flex-grow:1;padding-right:40px}.modal-title-text-container{text-align:center}.modal-title-text-container h2{font-size:20px;color:var(--text-primary);margin:0}.modal-title-text-container span{font-size:14px;color:var(--text-tertiary);font-weight:500}.modal-title-nav .day-nav-btn{background:none;border:none;color:var(--text-tertiary);cursor:pointer;padding:8px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0}.modal-title-nav .day-nav-btn:hover{background-color:var(--bg-tertiary);color:var(--text-primary)}.modal-close-btn{position:absolute;top:16px;right:16px;background:rgba(255,255,255,.1);border:none;border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-secondary);transition:all .2s ease}.modal-close-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.modal-content{overflow-y:auto;padding:24px;scrollbar-width:thin;scrollbar-color:var(--bg-tertiary) var(--bg-secondary)}.calendar-container{background-color:var(--bg-secondary);border-radius:16px;padding:24px;border:1px solid var(--border-color);box-shadow:var(--shadow);animation:fadeIn .5s ease-out}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.current-month-label{font-size:20px;font-weight:600;color:var(--text-primary)}.month-nav-btn{background:none;border:none;color:var(--text-tertiary);cursor:pointer;padding:8px;border-radius:50%;transition:background-color .2s,color .2s}.month-nav-btn:hover{background-color:var(--bg-tertiary);color:var(--text-primary)}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.day-of-week-header{text-align:center;font-size:14px;font-weight:600;color:var(--text-tertiary);margin-bottom:8px}.day-cell{min-height:70px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:8px;border-radius:12px;transition:all .2s ease;position:relative}.day-cell.blank{background:none}.day-cell:not(.blank){cursor:pointer}.day-cell:not(.blank):hover{background-color:var(--bg-tertiary)}.day-number{font-size:14px;font-weight:500;color:var(--text-secondary);align-self:flex-start}.day-cell.completed{background-color:var(--workout-color)}.day-cell.completed .day-number{color:#fff}.day-cell.completed .workout-dot{display:none}.dot-container{display:flex;gap:4px}.workout-dot{width:8px;height:8px;border-radius:50%;background-color:var(--workout-color)}.day-cell.today .day-number{background-color:#ff6b35;color:#fff;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.assign-workout-list{display:flex;flex-direction:column;gap:12px}.assign-workout-item{width:100%;background-color:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;display:flex;justify-content:space-between;align-items:center;font-size:16px;font-weight:500;color:var(--text-primary);transition:all .2s ease}.assign-workout-name{flex-grow:1;padding:16px;cursor:pointer;display:flex;align-items:center;gap:8px;border-right:1px solid var(--border-color)}.assign-workout-name:hover{color:#ff6b35}.assign-btn{background:none;border:none;padding:16px;color:var(--text-tertiary);cursor:pointer;transition:color .2s}.assign-btn:hover{color:#10b981}.assign-btn.trash-btn:hover{color:#ef4444}.assign-workout-item.active{border-color:#059669}.assign-workout-item.active .assign-btn,.assign-workout-item.active .assign-workout-name{color:#10b981}.modal-back-btn{background:none;border:none;color:var(--text-secondary);display:flex;align-items:center;gap:8px;font-weight:500;cursor:pointer;margin-bottom:16px}.scheduling-banner{background:linear-gradient(135deg,#3b82f6 0%,#8b5cf6 100%);color:#fff;padding:12px 20px;border-radius:12px;margin-bottom:24px;display:flex;justify-content:space-between;align-items:center;font-size:16px;box-shadow:0 8px 15px -3px #3b82f64d;animation:fadeIn .3s ease}.cancel-schedule-btn{background-color:#ffffff26;border:none;color:#fff;padding:6px 12px;border-radius:8px;cursor:pointer;font-weight:500;display:flex;align-items:center;gap:6px;transition:background-color .2s}.cancel-schedule-btn:hover{background-color:#ffffff40}.calendar-container.is-scheduling .day-cell:not(.blank){cursor:copy}.calendar-container.is-scheduling .day-cell:not(.blank):hover{background-color:#3b82f633;transform:scale(1.05)}.modal-empty-state{text-align:center;padding:16px}.modal-empty-state h4{font-size:18px;color:var(--text-primary);margin-bottom:8px}.modal-empty-state p{font-size:14px;color:var(--text-tertiary);line-height:1.5;margin-bottom:24px;max-width:300px;margin-left:auto;margin-right:auto}.modal-empty-state .action-btn{width:100%}.action-select-container{display:flex;flex-direction:column;gap:16px;text-align:center}.action-select-container h4{font-size:20px;font-weight:600;color:var(--text-primary)}.action-select-container p{font-size:14px;color:var(--text-tertiary);margin-top:-8px;margin-bottom:8px}.action-select-btn{width:100%;padding:14px;border-radius:12px;border:none;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:10px}.action-select-btn.primary{background:linear-gradient(135deg,#10b981 0%,#059669 100%);color:#fff}.action-select-btn.primary:hover{transform:scale(1.02);box-shadow:0 5px 15px #10b9814d}.action-select-btn:not(.primary){background-color:var(--bg-tertiary);color:var(--text-primary)}.action-select-btn:not(.primary):hover{background-color:var(--bg-primary);border:1px solid var(--border-color)}.program-select-item{width:100%;background-color:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;display:flex;justify-content:space-between;align-items:center;font-size:16px;font-weight:500;color:var(--text-primary);transition:all .2s ease;padding:16px;cursor:pointer}.program-select-item:hover{border-color:#ff6b35;color:#ff6b35}.program-select-item span{flex-grow:1}.program-select-item svg{color:var(--text-tertiary);transition:transform .2s ease,color .2s ease}.program-select-item:hover svg{color:#ff6b35;transform:translate(4px)}.progress-view-container{display:flex;flex-direction:column;gap:24px;animation:fadeIn .5s ease-out}.page-header{text-align:left;margin-bottom:8px}.page-header h1{font-size:28px;color:var(--text-primary);margin-bottom:4px}.page-header p{font-size:16px;color:var(--text-tertiary)}.progress-chart-container .chart-container{padding:16px}.progress-card{background-color:var(--bg-secondary);border-radius:16px;padding:24px;border:1px solid var(--border-color);box-shadow:var(--shadow)}.progress-card-header{display:flex;align-items:center;gap:16px;margin-bottom:20px}.progress-card-icon{width:52px;height:52px;border-radius:12px;display:flex;align-items:center;justify-content:center}.progress-card-title{font-size:20px;font-weight:600;color:var(--text-primary)}.weight-logger-form{display:flex;gap:12px}.weight-input{flex-grow:1;padding:12px 16px;border-radius:8px;border:1px solid var(--border-color);background-color:var(--bg-primary);color:var(--text-primary);font-size:16px}.weight-input::placeholder{color:var(--text-tertiary)}.log-weight-btn{padding:12px 24px;font-size:16px;border:none;border-radius:8px;background:linear-gradient(90deg,#3b82f6,#2563eb);color:#fff;font-weight:600;cursor:pointer;transition:all .2s}.log-weight-btn:hover{transform:scale(1.03);box-shadow:0 5px 15px #3b82f650}.photo-progress-container{width:100%;aspect-ratio:3 / 4;background-color:var(--bg-primary);border-radius:12px;margin-bottom:20px;overflow:hidden}.photo-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;color:var(--text-tertiary);padding:20px}.single-photo-preview{margin-top:16px;max-width:80%;max-height:60%;object-fit:contain;border-radius:8px}.comparison-slider{width:100%;height:100%}.comparison-slider [data-testid=compare-slider-handle]{background-color:var(--bg-primary);border:2px solid #FF6B35}.upload-photo-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;padding:12px;font-size:16px;border:none;border-radius:8px;background:linear-gradient(90deg,#8b5cf6,#7c3aed);color:#fff;font-weight:600;cursor:pointer;transition:all .2s}.upload-photo-btn:hover{transform:scale(1.02);box-shadow:0 5px 15px #8b5cf650}.danger-zone{border-color:#ef444433;background-color:#ef44440d}.danger-zone .progress-card-title{color:#ef4444}.danger-zone-text{font-size:14px;color:var(--text-secondary);line-height:1.6;margin-bottom:20px}.reset-progress-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;padding:12px;font-size:16px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;background-color:#ef44441a;color:#ef4444;border:1px solid #ef4444}.reset-progress-btn:hover{background-color:#ef4444;color:#fff;box-shadow:0 5px 15px #ef44444d}.one-rep-max-list{display:flex;flex-direction:column;gap:12px}.one-rep-max-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px;background-color:var(--bg-tertiary);border-radius:8px}.orm-exercise-name{font-size:16px;font-weight:500;color:var(--text-secondary);flex-grow:1}.orm-input-group{display:flex;align-items:center;gap:8px}.orm-input{width:80px;padding:8px 12px;border-radius:6px;border:1px solid var(--border-color);background-color:var(--bg-primary);color:var(--text-primary);font-size:16px;font-weight:600;text-align:center;-moz-appearance:textfield}.orm-input::-webkit-outer-spin-button,.orm-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.orm-unit-label{font-size:14px;font-weight:600;color:var(--text-tertiary)}.unit-toggle-container{display:flex;background-color:var(--bg-primary);border-radius:10px;padding:6px;border:1px solid var(--border-color)}.unit-toggle-btn{flex:1;padding:10px;border:none;background-color:transparent;color:var(--text-tertiary);font-size:16px;font-weight:600;border-radius:8px;cursor:pointer;transition:all .3s ease}.unit-toggle-btn.active{background:linear-gradient(135deg,#3b82f6 0%,#8b5cf6 100%);color:#fff;box-shadow:0 4px 10px #3b82f633}.program-view-container{display:flex;flex-direction:column;gap:24px;animation:fadeIn .5s ease-out}.create-workout-btn{display:flex;align-items:center;gap:8px;padding:10px 20px;font-size:16px;border:none;border-radius:12px;background:linear-gradient(135deg,#FF6B35 0%,#f74d0e 100%);color:#fff;font-weight:600;cursor:pointer;transition:all .2s ease-out;box-shadow:0 4px 12px #ff6b354d}.create-workout-btn:hover{transform:translateY(-2px);box-shadow:0 8px 15px #ff6b3566}.custom-workouts-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.empty-state-card{grid-column:1 / -1;text-align:center;padding:48px 24px;background-color:var(--bg-secondary);border:2px dashed var(--bg-tertiary);border-radius:16px}.empty-state-title{font-size:20px;font-weight:600;color:var(--text-primary);margin-bottom:8px}.empty-state-text{font-size:14px;color:var(--text-tertiary);max-width:400px;margin:0 auto}.custom-workout-card{background-color:var(--bg-secondary);border-radius:16px;padding:20px;border:1px solid var(--border-color);box-shadow:var(--shadow);display:flex;flex-direction:column;justify-content:space-between;transition:all .2s ease-out}.custom-workout-card:hover{transform:translateY(-4px);border-color:#ff6b35}.workout-card-header{margin-bottom:16px;flex-grow:1}.workout-card-title{font-size:18px;font-weight:600;color:var(--text-primary);margin-bottom:4px}.workout-card-subtitle{font-size:14px;color:var(--text-tertiary)}.workout-card-actions{display:flex;gap:8px;border-top:1px solid var(--border-color);padding-top:16px;margin-top:16px}.action-btn.edit-btn{background-color:var(--bg-tertiary);color:var(--text-secondary)}.action-btn.edit-btn:hover{background-color:#3b82f6;color:#fff}.action-btn.schedule-btn{background-color:#3b82f6;color:#fff}.action-btn.schedule-btn:hover{background-color:#2563eb}.templates-container{display:flex;flex-direction:column;gap:24px}.template-card{background:var(--bg-secondary);border-radius:16px;border:1px solid var(--border-color);box-shadow:var(--shadow);display:flex;flex-direction:column;overflow:hidden}.template-card-header{padding:24px}.template-card-title{font-size:20px;font-weight:600;color:var(--text-primary);margin-bottom:8px}.template-card-description{font-size:14px;color:var(--text-tertiary);line-height:1.6}.load-program-btn{background:linear-gradient(135deg,#10b981 0%,#059669 100%);color:#fff;border:none;padding:16px 24px;font-size:16px;font-weight:600;cursor:pointer;display:flex;justify-content:center;align-items:center;gap:12px;transition:all .2s ease}.load-program-btn:hover{background:linear-gradient(135deg,#059669 0%,#10b981 100%);letter-spacing:.5px}.divider-or{text-align:center;font-weight:600;color:var(--text-tertiary);position:relative}.divider-or:before,.divider-or:after{content:"";position:absolute;top:50%;width:40%;height:1px;background-color:var(--border-color)}.divider-or:before{left:0}.divider-or:after{right:0}.create-workout-btn-secondary{background-color:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color);padding:16px;font-size:16px;font-weight:600;border-radius:12px;cursor:pointer;display:flex;justify-content:center;align-items:center;gap:12px;transition:all .2s ease}.create-workout-btn-secondary:hover{background-color:var(--bg-primary);color:var(--text-primary);border-color:var(--text-secondary)}.block-tags-container{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.block-tag{background-color:var(--bg-tertiary);color:var(--text-tertiary);padding:4px 10px;border-radius:20px;font-size:12px;font-weight:600;white-space:nowrap}.compact-preview-container{display:flex;flex-direction:column;gap:12px;margin-top:12px}.compact-preview-title{font-size:13px;font-weight:600;color:#ff6b35;margin-bottom:6px;text-transform:uppercase;letter-spacing:.5px}.compact-preview-list{list-style:none;padding-left:0;margin-left:0;display:flex;flex-direction:column;gap:4px}.compact-preview-list li{font-size:14px;color:var(--text-secondary);line-height:1.4;padding-left:14px;position:relative}.compact-preview-list li:before{content:"•";position:absolute;left:0;color:var(--text-tertiary)}.compact-preview-empty{font-size:14px;color:var(--text-tertiary);font-style:italic;margin-top:12px}.programs-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.program-card{background-color:var(--bg-secondary);border-radius:16px;padding:24px;border:1px solid var(--border-color);box-shadow:var(--shadow);cursor:pointer;transition:all .2s ease-out;display:flex;flex-direction:column}.program-card:not(.template):hover{transform:translateY(-5px);border-color:var(--text-tertiary)}.program-card-title{font-size:20px;font-weight:600;color:var(--text-primary);margin-bottom:4px}.program-card-description{font-size:14px;color:var(--text-tertiary);flex-grow:1;margin-bottom:16px;line-height:1.5}.program-card-view-btn{font-size:14px;font-weight:600;color:#3b82f6;display:flex;align-items:center;gap:8px}.back-to-programs-btn{display:flex;align-items:center;gap:8px;background:none;border:none;color:var(--text-secondary);font-size:16px;font-weight:500;cursor:pointer;padding:8px 0;margin-bottom:16px}.create-workout-card{background-color:transparent;border:2px dashed var(--bg-tertiary);border-radius:16px;padding:20px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--text-tertiary);font-weight:600;font-size:16px;cursor:pointer;transition:all .2s ease;min-height:200px}.create-workout-card:hover{color:#10b981;border-color:#10b981;background-color:#10b9810d}.template-actions{display:flex;gap:12px;margin-top:16px}.template-actions .action-btn{flex-grow:1;justify-content:center}.load-btn{background-color:#10b981;color:#fff}.load-btn:hover{background-color:#059669}.copy-btn{background-color:var(--bg-tertiary);color:var(--text-primary)}.copy-btn:hover{background-color:#3b82f6;color:#fff}.program-title-header{display:flex;align-items:center;gap:12px}.icon-btn{background:none;border:none;color:var(--text-tertiary);cursor:pointer;padding:4px;border-radius:50%}.program-edit-form{display:flex;flex-direction:column;gap:12px;width:100%}.program-name-edit-input{width:100%;font-size:28px;font-weight:700;color:var(--text-primary);background:var(--bg-tertiary);border:2px solid #3b82f6;border-radius:8px;padding:4px 8px}.program-description-edit-textarea{width:100%;padding:12px;border-radius:8px;border:2px solid #3b82f6;background:var(--bg-tertiary);color:var(--text-primary);font-size:14px;font-family:inherit;resize:vertical;line-height:1.5}.save-program-btn{width:100%;padding:12px 16px;border:none;background-color:#10b981;color:#fff;border-radius:8px;cursor:pointer;font-weight:600;font-size:16px;transition:background-color .2s}.save-program-btn:hover{background-color:#059669}.delete-program-btn{margin-top:32px;background-color:transparent;border:1px solid #ef4444;color:#ef4444;padding:10px;width:100%;border-radius:8px;cursor:pointer;font-weight:600;display:flex;align-items:center;justify-content:center;gap:8px}.delete-program-btn:hover{background-color:#ef4444;color:#fff}.load-btn.disabled{background:var(--bg-tertiary);color:var(--text-tertiary);cursor:not-allowed}.load-btn.disabled:hover{background:var(--bg-tertiary)}.program-empty-state{padding:24px;text-align:center;background-color:var(--bg-secondary);border:2px dashed var(--bg-tertiary);border-radius:16px}.program-empty-state p{color:var(--text-tertiary);line-height:1.6;max-width:400px;margin:0 auto}.modal-form-container{display:flex;flex-direction:column;gap:16px}.modal-label{font-size:14px;font-weight:500;color:var(--text-tertiary)}.modal-input{width:100%;padding:12px 16px;border-radius:8px;border:1px solid var(--border-color);background-color:var(--bg-primary);color:var(--text-primary);font-size:16px}.modal-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f633}.modal-actions{display:flex;gap:12px;margin-top:8px}.modal-actions .action-btn{background-color:var(--bg-tertiary);color:var(--text-primary)}.modal-actions .action-btn.schedule-btn{background-color:#3b82f6;color:#fff}.modal-confirm-text{font-size:16px;color:var(--text-secondary);line-height:1.6;text-align:center;margin-bottom:16px}.modal-actions .action-btn.danger-btn{background-color:#ef4444;color:#fff}.modal-actions .action-btn.danger-btn:hover{background-color:#dc2626}.day-selector-container{display:flex;justify-content:space-between;gap:8px;margin:16px 0}.day-selector-btn{flex-grow:1;padding:12px 8px;border-radius:8px;border:1px solid var(--border-color);background-color:var(--bg-secondary);color:var(--text-tertiary);font-weight:600;cursor:pointer;transition:all .2s ease}.day-selector-btn:hover{background-color:var(--bg-tertiary);border-color:var(--text-secondary)}.day-selector-btn.active{background-color:#3b82f6;border-color:#3b82f6;color:#fff;transform:scale(1.05);box-shadow:0 4px 10px #3b82f633}.program-title-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.program-header-actions{display:flex;align-items:center;gap:8px}.icon-btn{background:none;border:none;color:var(--text-tertiary);cursor:pointer;padding:4px;border-radius:50%;display:flex;align-items:center;justify-content:center}.icon-btn:hover{background-color:var(--bg-tertiary);color:var(--text-primary)}.icon-btn.share-btn:hover{color:#10b981;background-color:#10b9811a}.library-header{display:flex;justify-content:space-between;align-items:center;gap:12px}.filter-open-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;border-radius:8px;border:1px solid var(--border-color);background-color:var(--bg-secondary);color:var(--text-primary);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;flex-shrink:0}.filter-open-btn:hover{background-color:var(--bg-tertiary);border-color:var(--text-secondary)}.filter-count-badge{background-color:#3b82f6;color:#fff;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px}.active-filters-display{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.template-filters{display:flex;flex-direction:column;gap:24px}.filter-group-title{font-size:12px;font-weight:600;color:var(--text-tertiary);margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.filter-options{display:flex;flex-wrap:wrap;gap:8px}.filter-btn{padding:6px 14px;border-radius:20px;border:1px solid var(--border-color);background-color:var(--bg-secondary);color:var(--text-secondary);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;flex-shrink:0}.filter-btn:hover{border-color:var(--text-primary);color:var(--text-primary)}.filter-btn.active{color:#fff;background-color:var(--tag-color);border-color:var(--tag-color);box-shadow:0 4px 10px 0 var(--tag-bg-color)}.clear-filters-btn{display:flex;align-items:center;gap:6px;padding:10px 16px;border-radius:8px;border:1px solid var(--border-color);background-color:var(--bg-secondary);color:var(--text-secondary);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.clear-filters-btn:hover{background-color:#ef4444;color:#fff;border-color:#ef4444}.no-templates-found{grid-column:1 / -1;text-align:center;padding:48px 24px;background-color:var(--bg-secondary);border:2px dashed var(--bg-tertiary);border-radius:16px;color:var(--text-tertiary)}.no-templates-found h4{font-size:18px;color:var(--text-primary);margin-bottom:8px}.template-meta-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;margin-bottom:24px}.meta-tag{color:var(--tag-color);background-color:var(--tag-bg-color);border:1px solid var(--tag-color);font-size:12px;font-weight:600;padding:3px 10px;border-radius:8px;text-transform:none;letter-spacing:0}.timer-bar{position:fixed;bottom:80px;left:16px;right:16px;height:60px;background-color:var(--bg-secondary);border-radius:12px;box-shadow:0 -5px 20px #00000040;z-index:1000;overflow:hidden;border:1px solid var(--border-color);animation:slideUp .3s ease-out}@media (min-width: 769px){.timer-bar{bottom:24px;left:auto;width:450px;right:24px}}@keyframes slideUp{0%{transform:translateY(100px);opacity:0}to{transform:translateY(0);opacity:1}}.timer-progress{position:absolute;top:0;left:0;height:100%;width:100%;background:linear-gradient(90deg,#FF6B3550,#f74d0e80);transform-origin:left;animation:shrink-width linear forwards}@keyframes shrink-width{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.timer-content{position:relative;height:100%;display:flex;justify-content:space-between;align-items:center;padding:0 16px;color:var(--text-primary)}.timer-info{display:flex;align-items:center;gap:8px;font-weight:600;font-size:14px;letter-spacing:.5px;color:var(--text-secondary)}.timer-time-cluster{display:flex;align-items:center;gap:12px}.timer-time{font-size:24px;font-weight:700;font-variant-numeric:tabular-nums}.timer-close-btn{background:var(--bg-tertiary);border:none;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-secondary);transition:all .2s ease}.timer-close-btn:hover{background-color:#ff6b35;color:#fff}.tabata-phase-badge{padding:4px 10px;border-radius:6px;font-size:14px;font-weight:700;letter-spacing:1px}.tabata-phase-badge.work{background-color:#10b981;color:#fff}.tabata-phase-badge.rest{background-color:#3b82f6;color:#fff}.timer-content.has-action-btn{display:grid;grid-template-columns:auto 1fr auto auto;gap:12px}.timer-lap-btn,.timer-record-btn{border:none;border-radius:8px;padding:8px 16px;font-size:14px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s ease;white-space:nowrap}.timer-lap-btn{background:linear-gradient(135deg,#3b82f6 0%,#8b5cf6 100%);color:#fff}.timer-lap-btn:hover{transform:scale(1.05);box-shadow:0 5px 15px #3b82f64d}.timer-record-btn{background:linear-gradient(135deg,#10b981 0%,#059669 100%);color:#fff}.timer-record-btn:hover{transform:scale(1.05);box-shadow:0 5px 15px #10b9814d}.has-action-btn .timer-time-cluster{justify-self:end}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:2000;padding:16px;animation:fadeIn .3s ease-out}.modal-container{background:var(--modal-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--modal-border);border-radius:16px;width:100%;max-width:600px;max-height:90vh;padding:24px;box-shadow:0 10px 30px #0000004d;position:relative;display:flex;flex-direction:column}.modal-close-btn{position:absolute;top:16px;right:16px;background:var(--modal-close-btn-bg);border:none;border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-secondary);transition:all .2s ease}.modal-close-btn:hover{background:var(--modal-close-btn-bg-hover);color:var(--text-primary)}.modal-title{font-size:24px;color:var(--text-primary);margin-bottom:20px;padding-right:40px}.modal-content{overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--bg-tertiary) var(--bg-secondary)}.modal-content::-webkit-scrollbar{width:8px}.modal-content::-webkit-scrollbar-track{background:var(--bg-secondary)}.modal-content::-webkit-scrollbar-thumb{background-color:var(--bg-tertiary);border-radius:10px;border:2px solid var(--bg-secondary)}.detail-section{margin-bottom:20px}.detail-section-title{font-size:18px;font-weight:600;color:#fb923c;padding-bottom:8px;margin-bottom:12px;border-bottom:1px solid var(--border-color)}.detail-list{list-style-type:none;padding-left:0;color:var(--text-secondary)}.detail-list li{padding:8px 0 8px 24px;position:relative;line-height:1.5}.detail-list li:before{content:"✓";position:absolute;left:0;color:#10b981;font-weight:700}.modification-item{color:var(--text-secondary);line-height:1.5;margin-bottom:8px}.modification-item strong{color:var(--text-primary)}.autocomplete-container,.autocomplete-input-wrapper{position:relative;width:100%}.autocomplete-input{width:100%;padding:10px 32px 10px 10px;border-radius:6px;background-color:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-primary);font-size:14px}.autocomplete-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f633}.clear-btn{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:var(--text-tertiary);padding:4px;display:flex;align-items:center;justify-content:center}.suggestions-list{position:absolute;top:100%;left:0;right:0;background-color:var(--bg-secondary);border:1px solid var(--border-color);border-top:none;border-radius:0 0 8px 8px;list-style:none;margin-top:-1px;padding:0;z-index:10;max-height:250px;overflow-y:auto;box-shadow:0 4px 6px -1px #0000001a}.suggestion-item{padding:12px 16px;cursor:pointer;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.suggestion-item:last-child{border-bottom:none}.suggestion-item:hover,.suggestion-item.active{background-color:var(--bg-tertiary);color:#3b82f6}.suggestion-category{font-size:12px;color:var(--text-tertiary);background-color:var(--bg-primary);padding:2px 8px;border-radius:10px}.editor-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#00000080;z-index:3000;display:flex;justify-content:center;align-items:flex-end}.editor-container{background-color:var(--bg-primary);width:100%;height:95vh;max-width:800px;border-top-left-radius:20px;border-top-right-radius:20px;display:flex;flex-direction:column;animation:slideUpEditor .4s cubic-bezier(.25,.46,.45,.94) forwards;overflow:hidden}@media (min-width: 769px){.editor-backdrop{align-items:center}.editor-container{height:90vh;border-radius:20px}}@keyframes slideUpEditor{0%{transform:translateY(100%)}to{transform:translateY(0)}}.editor-header{flex-shrink:0;display:flex;justify-content:space-between;align-items:center;padding:16px;background-color:var(--bg-secondary);border-bottom:1px solid var(--border-color)}.editor-header h2{font-size:20px;color:var(--text-primary)}.editor-header-actions{display:flex;gap:12px}.editor-body{flex-grow:1;padding:16px;overflow-y:auto;display:flex;flex-direction:column;gap:24px}@media (min-width: 769px){.editor-body{padding:24px}}.editor-input-group{display:flex;flex-direction:column;gap:8px}.editor-label{font-size:14px;font-weight:500;color:var(--text-secondary)}.editor-input{width:100%;padding:12px 16px;border-radius:8px;border:1px solid var(--border-color);background-color:var(--bg-secondary);color:var(--text-primary);font-size:18px;font-weight:600}.editor-section-title{font-size:18px;font-weight:600;color:var(--text-primary);margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--border-color)}.add-block-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.add-block-btn{padding:12px;border:1px solid var(--border-color);background-color:var(--bg-secondary);color:var(--text-secondary);border-radius:8px;cursor:pointer;transition:all .2s ease;font-weight:500;display:flex;align-items:center;gap:8px;justify-content:center}.add-block-btn:hover{background-color:var(--bg-tertiary);color:var(--text-primary);border-color:#ff6b35}.workout-block{background-color:var(--bg-secondary);border-radius:12px;border:1px solid var(--border-color);margin-bottom:16px}.block-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border-color)}.block-header h4{font-size:16px;font-weight:600;color:#ff6b35}.delete-block-btn{background:none;border:none;color:var(--text-tertiary);cursor:pointer;padding:4px;border-radius:50%}.delete-block-btn:hover{background-color:var(--bg-tertiary);color:#ef4444}.block-content{padding:16px;display:flex;flex-direction:column;gap:16px}.block-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:12px}.block-input-group{display:flex;flex-direction:column;gap:6px}.block-input-group label{font-size:12px;color:var(--text-tertiary);font-weight:500}.block-input-group input{padding:8px 10px;background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:14px}.exercise-editor-list{display:flex;flex-direction:column;gap:8px}.strength-exercise-editor{padding:12px;background-color:var(--bg-tertiary);border-radius:8px}.exercise-editor-item{display:flex;align-items:center;gap:8px}.exercise-editor-item input{flex-grow:1;padding:10px;border-radius:6px;background-color:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-primary)}.remove-exercise-btn{background-color:var(--bg-primary);border-radius:50%;border:none;width:28px;height:28px;display:flex;align-items:center;justify-content:center;color:var(--text-tertiary);cursor:pointer}.remove-exercise-btn:hover{background-color:#ef4444;color:#fff}.add-exercise-btn{background-color:transparent;border:1px dashed var(--border-color);color:var(--text-secondary);padding:10px;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;font-weight:500;transition:all .2s ease}.add-exercise-btn:hover{border-color:#10b981;color:#10b981;background-color:#10b9810d}.sets-list{margin-top:12px;display:flex;flex-direction:column;gap:8px}.set-editor-row{display:flex;align-items:center;gap:8px;padding:8px;background-color:var(--bg-primary);border-radius:6px}.set-label{font-size:14px;font-weight:600;color:var(--text-secondary);min-width:40px}.reps-input,.load-input{width:70px;text-align:center;padding:6px;border-radius:4px;border:1px solid var(--border-color);background-color:var(--bg-secondary);color:var(--text-primary)}.reps-label{font-size:14px;color:var(--text-tertiary)}.remove-set-btn{background:none;border:none;color:var(--text-tertiary);cursor:pointer;padding:2px;margin-left:auto}.remove-set-btn:hover{color:#ef4444}.add-set-btn{background:none;border:none;color:#3b82f6;font-weight:600;cursor:pointer;padding:8px;display:flex;align-items:center;gap:6px;margin-top:4px}.for-time-reps{flex-shrink:0;width:50px;text-align:center}.for-time-x{font-size:12px;color:var(--text-tertiary)}.minute-editor-list{display:flex;flex-direction:column;gap:8px}.minute-editor-row{display:flex;align-items:center;gap:8px}.minute-label{font-size:14px;font-weight:600;color:var(--text-secondary);min-width:50px}.minute-editor-row input{flex-grow:1;padding:10px;border-radius:6px;background-color:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-primary)}.remove-minute-btn{background-color:var(--bg-tertiary);border-radius:50%;border:none;width:28px;height:28px;display:flex;align-items:center;justify-content:center;color:var(--text-tertiary);cursor:pointer}.remove-minute-btn:hover{background-color:#ef4444;color:#fff}.add-minute-btn{background-color:transparent;border:1px dashed var(--border-color);color:var(--text-secondary);padding:10px;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;font-weight:500;transition:all .2s ease;margin-top:8px}.add-minute-btn:hover{border-color:#3b82f6;color:#3b82f6;background-color:#3b82f60d}.bodyweight-exercise-editor{display:flex;flex-wrap:wrap;align-items:center;gap:8px;background-color:var(--bg-tertiary);padding:8px;border-radius:8px}.bodyweight-name-input{flex-basis:100%;padding:10px;border-radius:6px;background-color:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-primary)}.bodyweight-controls{display:flex;justify-content:space-between;align-items:center;width:100%;gap:8px}.tracking-type-toggle{display:flex;background-color:var(--bg-primary);border-radius:6px;padding:4px;border:1px solid var(--border-color)}.tracking-type-toggle button{background:none;border:none;padding:6px 12px;border-radius:4px;cursor:pointer;color:var(--text-tertiary);font-weight:600;font-size:12px;transition:all .2s}.tracking-type-toggle button.active{background-color:#3b82f6;color:#fff}.bodyweight-exercise-editor .reps-input{width:80px}.accessory-exercise-editor{display:flex;flex-wrap:wrap;gap:12px;background-color:var(--bg-tertiary);padding:12px;border-radius:8px;align-items:center}.accessory-name{flex-basis:100%;flex-grow:1;padding:10px;border-radius:6px;background-color:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-primary)}.accessory-controls-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%;flex-grow:1}.accessory-input-group{display:flex;align-items:center;gap:8px;background-color:var(--bg-primary);padding:8px;border-radius:6px;border:1px solid var(--border-color)}.accessory-input-group input{padding:0;border:none;background:none;color:var(--text-primary);font-size:14px;flex-grow:1;width:100%}.accessory-input-group .unit-input{text-align:left}.accessory-input-group .unit-input::placeholder{color:var(--text-tertiary)}.accessory-label{font-size:12px;font-weight:500;color:var(--text-tertiary);flex-shrink:0}.accessory-exercise-editor .remove-exercise-btn{margin-left:auto}.action-btn{flex-grow:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px;font-size:14px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease-out;border:none}.action-btn.start-btn{background-color:#10b981;color:#fff}.action-btn.start-btn:hover{background-color:#059669}.action-btn.delete-btn{background-color:transparent;color:var(--text-tertiary)}.action-btn.delete-btn:hover{background-color:#ef4444;color:#fff}.bodyweight-controls-left{display:flex;align-items:center;gap:8px;flex-grow:1}.bodyweight-set-row{justify-content:space-between}.bodyweight-set-row .tracking-type-toggle{margin-right:auto;margin-left:16px}.bodyweight-set-row .reps-input{width:80px}.auth-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background-color:var(--bg-primary);padding:24px}.auth-card{width:100%;max-width:400px;background-color:var(--bg-secondary);padding:32px;border-radius:16px;box-shadow:var(--shadow);border:1px solid var(--border-color);animation:fadeIn .5s ease-out}.auth-header{text-align:center;margin-bottom:24px}.auth-title{font-size:28px;font-weight:700;background:linear-gradient(135deg,#3b82f6 0%,#8b5cf6 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.auth-subtitle{margin-top:8px;color:var(--text-tertiary)}.auth-form{display:flex;flex-direction:column;gap:16px}.auth-input{width:100%;padding:12px 16px;font-size:16px;border-radius:8px;border:1px solid var(--border-color);background-color:var(--bg-primary);color:var(--text-primary);transition:all .2s ease}.auth-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f633}.auth-button{padding:14px;font-size:16px;font-weight:600;border-radius:8px;border:none;cursor:pointer;background:linear-gradient(135deg,#3b82f6 0%,#8b5cf6 100%);color:#fff;transition:all .2s ease;margin-top:8px}.auth-button:hover{transform:translateY(-2px);box-shadow:0 8px 15px #3b82f64d}.auth-toggle-text{text-align:center;margin-top:24px;font-size:14px;color:var(--text-tertiary)}.auth-toggle-text button{background:none;border:none;color:#3b82f6;font-weight:600;cursor:pointer;padding:4px}.auth-error{background-color:#ef44441a;color:#ef4444;padding:12px;border-radius:8px;font-size:14px;text-align:center;border:1px solid rgba(239,68,68,.3)}.auth-warning-container{display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px}.auth-warning-icon{width:60px;height:60px;border-radius:50%;display:flex;align-items:center;justify-content:center;background-color:#ef44441a;color:#ef4444}.auth-warning-text{font-size:16px;color:var(--text-secondary);line-height:1.6}.auth-actions{display:flex;gap:12px;width:100%;margin-top:16px}.auth-action-btn{flex-grow:1;padding:12px;font-size:16px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease-out;border:none;background-color:var(--bg-tertiary);color:var(--text-primary)}.auth-action-btn.danger{background-color:#ef4444;color:#fff}.auth-action-btn.danger:hover{background-color:#dc2626}.spinner-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:var(--bg-primary);display:flex;justify-content:center;align-items:center;z-index:9999}.spinner{width:50px;height:50px;border:5px solid var(--bg-tertiary);border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.stripe-container,.stripe-container *{all:revert;box-sizing:border-box!important;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif!important}.stripe-elements-wrapper{position:relative;z-index:1;isolation:isolate;pointer-events:auto!important;user-select:auto!important;-webkit-user-select:auto!important;-moz-user-select:auto!important;touch-action:manipulation!important}.stripe-elements-wrapper iframe{pointer-events:auto!important;position:relative!important;z-index:1!important}.stripe-elements-wrapper .StripeElement,.stripe-elements-wrapper .StripeElement input,.stripe-elements-wrapper input[type=tel],.stripe-elements-wrapper input[name=phone]{pointer-events:auto!important;user-select:text!important;-webkit-user-select:text!important;-moz-user-select:text!important;touch-action:manipulation!important;margin:0!important;padding:0!important;border:none!important;outline:none!important;background:transparent!important;line-height:normal!important;font-size:16px!important;transform:translateZ(0)}.stripe-elements-wrapper [data-testid*=link],.stripe-elements-wrapper [class*=Link],.stripe-elements-wrapper [class*=link]{pointer-events:auto!important;isolation:isolate!important}.stripe-elements-wrapper .StripeElement--focus,.stripe-elements-wrapper .StripeElement--focus input{pointer-events:auto!important;user-select:text!important;-webkit-user-select:text!important}@media (max-width: 768px){.stripe-elements-wrapper{transform:translateZ(0);-webkit-transform:translate3d(0,0,0)}.stripe-elements-wrapper input{font-size:16px!important;-webkit-appearance:none!important;border-radius:0!important}}.modal-backdrop .stripe-elements-wrapper{pointer-events:auto!important;position:relative!important;z-index:10!important}.stripe-elements-wrapper{cursor:auto!important}.stripe-elements-wrapper input:focus{outline:none!important;box-shadow:none!important;border:none!important}.stripe-elements-wrapper [data-testid=phone-number-input],.stripe-elements-wrapper input[placeholder*=phone],.stripe-elements-wrapper input[placeholder*=Phone]{pointer-events:auto!important;user-select:text!important;-webkit-user-select:text!important;touch-action:manipulation!important;-webkit-touch-callout:default!important}.stripe-container .auth-button{all:revert;padding:14px;font-size:16px;font-weight:600;border-radius:8px;border:none;cursor:pointer;background:linear-gradient(135deg,#3b82f6 0%,#8b5cf6 100%);color:#fff;transition:all .2s ease;margin-top:8px;width:100%}.stripe-container .auth-button:hover{transform:translateY(-2px);box-shadow:0 8px 15px #3b82f64d}.stripe-container .auth-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.stripe-container .auth-error{all:revert;background-color:#ef44441a;color:#ef4444;padding:12px;border-radius:8px;font-size:14px;text-align:center;border:1px solid rgba(239,68,68,.3)}body.light-theme{--bg-primary: #f9fafb;--bg-secondary: #ffffff;--bg-tertiary: #f3f4f6;--text-primary: #111827;--text-secondary: #4b5563;--text-tertiary: #6b7280;--border-color: #e5e7eb;--shadow: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -2px rgba(0, 0, 0, .1);--modal-bg: rgba(249, 250, 251, .8);--modal-border: rgba(0, 0, 0, .1);--modal-close-btn-bg: rgba(0, 0, 0, .05);--modal-close-btn-bg-hover: rgba(0, 0, 0, .1)}body.dark-theme{--bg-primary: #0f1419;--bg-secondary: #1a1f2e;--bg-tertiary: #2a3141;--text-primary: #ffffff;--text-secondary: #e1e8ed;--text-tertiary: #9ca3af;--border-color: #2a3141;--shadow: 0 10px 15px -3px rgba(0, 0, 0, .3);--modal-bg: rgba(42, 49, 65, .8);--modal-border: rgba(255, 255, 255, .1);--modal-close-btn-bg: rgba(255, 255, 255, .1);--modal-close-btn-bg-hover: var(--bg-tertiary)}html,body,div,span,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;box-sizing:border-box}.app *,.app *:before,.app *:after{box-sizing:border-box}.stripe-container,.stripe-container *,iframe[name^=__privateStripeFrame],iframe[src*="stripe.com"]{box-sizing:revert!important;margin:revert!important;padding:revert!important}body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-primary);color:var(--text-primary);transition:background-color .3s ease,color .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.app{min-height:100vh}.sidebar{position:fixed;top:0;left:0;bottom:0;width:250px;background-color:var(--bg-secondary);border-right:1px solid var(--border-color);display:flex;flex-direction:column}.main-content{transition:margin-left .3s ease}.mobile-header{position:fixed;top:0;left:0;right:0;z-index:50;background-color:var(--bg-secondary);border-bottom:1px solid var(--border-color);box-shadow:var(--shadow)}.mobile-nav{position:fixed;bottom:0;left:0;right:0;z-index:50;background-color:var(--bg-secondary);border-top:1px solid var(--border-color);box-shadow:0 -4px 6px -1px #0000001a}@media (min-width: 769px){.main-content{margin-left:250px;padding:32px}}@media (max-width: 768px){.main-content{margin-left:0;padding:80px 16px 100px}}.share-modal-content{min-height:200px}.share-friend-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}.share-friend-item{display:flex;justify-content:space-between;align-items:center;background-color:var(--bg-tertiary);padding:12px 16px;border-radius:12px}.share-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;font-size:14px;border:none;border-radius:8px;background-color:#3b82f6;color:#fff;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap}.share-btn:hover:not(:disabled){background-color:#2563eb;transform:scale(1.05)}.share-btn:disabled{cursor:not-allowed}.share-btn.sending{background-color:var(--bg-primary);color:var(--text-tertiary);border:1px solid var(--border-color)}.share-btn.success{background-color:#10b981;color:#fff}.share-btn.error{background-color:#ef4444;color:#fff}.info-modal-container{background:var(--modal-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--modal-border);border-radius:16px;width:100%;max-width:500px;max-height:90vh;padding:24px;box-shadow:0 10px 30px #0000004d;position:relative;display:flex;flex-direction:column}.info-modal-close-btn{position:absolute;top:16px;right:16px;background:var(--modal-close-btn-bg);border:none;border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-secondary);transition:all .2s ease}.info-modal-close-btn:hover{background:var(--modal-close-btn-bg-hover);color:var(--text-primary)}.info-modal-title{font-size:24px;color:var(--text-primary);margin-bottom:20px;padding-right:40px;line-height:1.3}.info-modal-content{overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--bg-tertiary) var(--bg-secondary)}.info-modal-content::-webkit-scrollbar{width:8px}.info-modal-content::-webkit-scrollbar-track{background:var(--bg-secondary)}.info-modal-content::-webkit-scrollbar-thumb{background-color:var(--bg-tertiary);border-radius:10px;border:2px solid var(--bg-secondary)}.info-modal-description{font-size:16px;line-height:1.6;color:var(--text-secondary);margin-bottom:24px}.info-detail-section-title{font-size:18px;font-weight:600;color:#fb923c;padding-bottom:8px;margin-bottom:12px;border-bottom:1px solid var(--border-color)}.info-detail-list{list-style-type:none;padding-left:0;color:var(--text-secondary)}.info-detail-list li{padding:8px 0 8px 24px;position:relative;line-height:1.5}.info-detail-list li:before{content:"✓";position:absolute;left:0;color:#10b981;font-weight:700}.premium-modal-title{display:flex;align-items:center;gap:12px;font-size:24px;font-weight:700;color:var(--text-primary)}.premium-modal-content{display:flex;flex-direction:column;gap:32px;padding:0}.premium-hero{text-align:center;padding:0 8px}.premium-hero h3{font-size:28px;font-weight:700;color:var(--text-primary);margin-bottom:12px;background:linear-gradient(135deg,#3b82f6 0%,#8b5cf6 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.premium-hero p{font-size:16px;color:var(--text-secondary);line-height:1.6;max-width:400px;margin:0 auto}.premium-features-showcase{display:grid;grid-template-columns:1fr;gap:16px}@media (min-width: 768px){.premium-features-showcase{grid-template-columns:repeat(2,1fr)}}.premium-feature-card{display:flex;align-items:flex-start;gap:12px;padding:16px;background:var(--bg-tertiary);border-radius:12px;border:1px solid var(--border-color)}.feature-icon{background:linear-gradient(135deg,#3b82f6 0%,#8b5cf6 100%);color:#fff;padding:8px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.feature-content h4{font-size:16px;font-weight:600;color:var(--text-primary);margin:0 0 4px}.feature-content p{font-size:14px;color:var(--text-secondary);margin:0;line-height:1.4}.premium-comparison{display:grid;grid-template-columns:1fr;gap:20px;margin-top:8px}@media (min-width: 768px){.premium-comparison{grid-template-columns:1fr 1fr}}.comparison-column{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:16px;padding:24px;position:relative;text-align:center}.premium-column{border-color:#3b82f6;background:linear-gradient(135deg,rgba(59,130,246,.05) 0%,rgba(139,92,246,.05) 100%)}.premium-badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#3b82f6 0%,#8b5cf6 100%);color:#fff;padding:6px 16px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.comparison-column h4{font-size:20px;font-weight:700;color:var(--text-primary);margin:0 0 12px}.price{font-size:32px;font-weight:800;color:var(--text-primary);margin-bottom:24px}.price span{font-size:16px;font-weight:500;color:var(--text-secondary)}.feature-list{list-style:none;padding:0;margin:0 0 24px;text-align:left}.feature-list li{display:flex;align-items:center;gap:8px;padding:8px 0;font-size:14px;color:var(--text-secondary);line-height:1.4}.check-icon{color:#10b981;flex-shrink:0}.upgrade-btn{width:100%;background:linear-gradient(135deg,#3b82f6 0%,#8b5cf6 100%);color:#fff;border:none;border-radius:12px;padding:14px 20px;font-size:16px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .3s ease;box-shadow:0 4px 12px #3b82f64d}.upgrade-btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #3b82f666}.upgrade-btn:active{transform:translateY(0)}.premium-footer{text-align:center;padding:16px;background:var(--bg-tertiary);border-radius:12px;border:1px solid var(--border-color)}.premium-footer p{margin:0;font-size:14px;color:var(--text-secondary);font-style:italic}@media (max-width: 768px){.premium-hero h3{font-size:24px}.premium-hero p{font-size:14px}.price{font-size:28px}.comparison-column{padding:20px}}.account-modal-title{display:flex;align-items:center;gap:12px;font-size:24px;font-weight:700;color:var(--text-primary)}.premium-crown{color:#fbbf24}.account-modal-content{display:flex;flex-direction:column;gap:24px;padding:0}.account-section{padding:20px;background:var(--bg-tertiary);border-radius:12px;border:1px solid var(--border-color)}.account-section h4{display:flex;align-items:center;gap:8px;font-size:18px;font-weight:600;color:var(--text-primary);margin:0 0 16px}.user-info-section{display:flex;align-items:center;gap:16px;background:linear-gradient(135deg,rgba(59,130,246,.05) 0%,rgba(139,92,246,.05) 100%);border-color:#3b82f6}.user-avatar{background:linear-gradient(135deg,#3b82f6 0%,#8b5cf6 100%);color:#fff;padding:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.user-details h3{font-size:18px;font-weight:600;color:var(--text-primary);margin:0 0 8px;word-break:break-all}.user-status{display:flex;align-items:center;gap:6px}.premium-status{display:flex;align-items:center;gap:6px;background:linear-gradient(135deg,#fbbf24 0%,#f59e0b 100%);color:#fff;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.free-status{background:var(--bg-secondary);color:var(--text-secondary);padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;border:1px solid var(--border-color)}.active-features{display:flex;flex-direction:column;gap:12px}.feature-item{display:flex;justify-content:space-between;align-items:center;padding:8px 0;font-size:14px}.feature-item span:first-child{color:var(--text-secondary)}.feature-status{padding:4px 8px;border-radius:6px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.feature-status.active{background:rgba(16,185,129,.1);color:#10b981;border:1px solid rgba(16,185,129,.3)}.feature-status.coming-soon{background:rgba(251,146,60,.1);color:#fb923c;border:1px solid rgba(251,146,60,.3)}.subscription-cancellation-notice{display:flex;align-items:center;gap:8px;background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.3);color:#ef4444;padding:12px 16px;border-radius:8px;margin-bottom:16px;font-size:14px;font-weight:500}.subscription-cancellation-notice svg{flex-shrink:0}.subscription-info{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.subscription-detail{display:flex;justify-content:space-between;align-items:center;padding:8px 0;font-size:14px}.subscription-detail span:first-child{color:var(--text-secondary);font-weight:500}.subscription-detail span:last-child{color:var(--text-primary);font-weight:600;display:flex;align-items:center;gap:6px}.subscription-actions{display:flex;flex-direction:column;gap:12px}.manage-billing-btn{background:linear-gradient(135deg,#3b82f6 0%,#8b5cf6 100%);color:#fff;border:none;border-radius:8px;padding:12px 16px;font-size:14px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s ease}.manage-billing-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.manage-billing-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.logout-btn{background:transparent;color:#ef4444;border:1px solid #ef4444;border-radius:8px;padding:12px 16px;font-size:14px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s ease;width:100%}.logout-btn:hover{background:#ef4444;color:#fff}@media (max-width: 768px){.user-info-section,.subscription-cancellation-notice{flex-direction:column;text-align:center}.subscription-detail{flex-direction:column;gap:4px;align-items:flex-start}}.community-view-container{display:flex;flex-direction:column;gap:32px;animation:fadeIn .5s ease-out}.community-section{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:16px;padding:24px;box-shadow:var(--shadow)}.community-section-title{font-size:20px;font-weight:600;color:var(--text-primary);margin:0 0 16px}.search-form{display:flex;gap:12px}.search-input-wrapper{position:relative;flex-grow:1}.search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--text-tertiary);pointer-events:none}.search-input{width:100%;padding:12px 16px 12px 48px;border-radius:8px;border:1px solid var(--border-color);background-color:var(--bg-primary);color:var(--text-primary);font-size:16px;transition:all .2s ease}.search-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f633}.search-button{padding:12px 24px;font-size:16px;border:none;border-radius:8px;background:linear-gradient(135deg,#3b82f6 0%,#8b5cf6 100%);color:#fff;font-weight:600;cursor:pointer;transition:all .2s;flex-shrink:0}.search-button:hover:not(:disabled){transform:scale(1.03);box-shadow:0 5px 15px #3b82f64d}.search-button:disabled{opacity:.6;cursor:not-allowed}.search-results-container{margin-top:24px}.search-status-text{text-align:center;color:var(--text-tertiary);font-style:italic}.search-status-text.error{color:#ef4444;font-weight:500}.search-result-item{display:flex;justify-content:space-between;align-items:center;background-color:var(--bg-tertiary);padding:12px 16px;border-radius:12px}.search-result-item .user-info{display:flex;align-items:center;gap:12px}.search-result-item .username{font-size:16px;font-weight:600;color:var(--text-primary)}.add-friend-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;font-size:14px;border:none;border-radius:8px;background-color:#10b981;color:#fff;font-weight:600;cursor:pointer;transition:background-color .2s ease}.add-friend-btn:hover{background-color:#059669}.add-friend-btn.is-friend,.add-friend-btn.is-pending{background-color:var(--bg-primary);color:var(--text-tertiary);cursor:not-allowed;border:1px solid var(--border-color)}.add-friend-btn.is-friend:hover,.add-friend-btn.is-pending:hover{background-color:var(--bg-primary)}.friend-request-list{display:flex;flex-direction:column;gap:12px}.friend-request-item{display:flex;justify-content:space-between;align-items:center;background-color:var(--bg-tertiary);padding:12px 16px;border-radius:12px}.request-actions{display:flex;gap:12px}.request-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;border-radius:50%;cursor:pointer;transition:all .2s ease}.request-btn.decline{background-color:#ef44441a;color:#ef4444}.request-btn.decline:hover{background-color:#ef4444;color:#fff}.request-btn.accept{background-color:#10b9811a;color:#10b981}.request-btn.accept:hover{background-color:#10b981;color:#fff}.friends-list{display:flex;flex-direction:column;gap:12px}.friend-item{display:flex;justify-content:space-between;align-items:center;background-color:var(--bg-tertiary);padding:12px 16px;border-radius:12px}.friend-avatar{width:40px;height:40px;border-radius:50%;background-color:var(--bg-primary);display:flex;align-items:center;justify-content:center;color:var(--text-secondary);border:1px solid var(--border-color)}.view-profile-btn{padding:8px 20px;font-size:14px;border:none;border-radius:8px;background-color:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-primary);font-weight:600;cursor:pointer;transition:all .2s ease}.view-profile-btn:hover{background-color:#3b82f6;border-color:#3b82f6;color:#fff}.friend-detail-view{display:flex;flex-direction:column;gap:24px}.friend-section-title{font-size:16px;font-weight:600;color:var(--text-primary);margin-bottom:16px}.friend-calendar-container,.friend-upcoming-container{background-color:var(--bg-primary);padding:20px;border-radius:12px}.friend-calendar-container .day-cell{background:none;border:none;font-family:inherit;cursor:pointer;padding:8px;min-height:70px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;border-radius:12px;transition:all .2s ease;position:relative}.friend-calendar-container .day-cell:not(.blank):hover{background-color:var(--bg-tertiary)}.friend-calendar-container .day-cell.blank{cursor:default;background:none!important}.friend-calendar-container .day-number{font-size:14px;font-weight:500;color:var(--text-secondary);align-self:flex-start}.friend-calendar-container .day-cell.completed{background-color:var(--workout-color)}.friend-calendar-container .day-cell.completed .day-number{color:#fff}.friend-calendar-container .day-cell.completed .workout-dot{display:none}.friend-calendar-container .dot-container{display:flex;gap:4px}.friend-calendar-container .workout-dot{width:8px;height:8px;border-radius:50%;background-color:var(--workout-color)}.friend-calendar-container .day-cell.today .day-number{background-color:#ff6b35;color:#fff;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.friend-workout-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}.friend-workout-item{display:flex;align-items:center;gap:16px;background-color:var(--bg-tertiary);padding:12px 16px;border-radius:8px}.friend-workout-date{font-size:12px;font-weight:600;color:var(--text-tertiary);background-color:var(--bg-primary);padding:4px 10px;border-radius:6px;white-space:nowrap}.friend-workout-name{font-size:15px;font-weight:500;color:var(--text-primary)}.friend-calendar-container .calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}@media (max-width: 640px){.friend-calendar-container{padding:12px}.friend-calendar-container .day-cell{min-height:40px;padding:4px}.friend-calendar-container .day-number{font-size:12px}.friend-calendar-container .day-cell.today .day-number{width:20px;height:20px;font-size:11px}}
