.workout-page{min-height:100vh;background:var(--bg-body);padding-bottom:60px}.workout-header{position:relative;background:var(--bg-surface);border-bottom:1px solid var(--border-color);margin-bottom:32px}.workout-header-content{max-width:var(--bb-max-width);margin:0 auto;padding:24px 20px;color:var(--text-primary)}.workout-back-link{display:inline-flex;align-items:center;gap:8px;color:var(--text-secondary);text-decoration:none;font-size:.9rem;font-weight:500;margin-bottom:16px;background:var(--bg-card);padding:10px 18px;border-radius:12px;border:1px solid var(--border-color);transition:all .3s var(--ease-smooth)}.workout-back-link:hover{background:var(--bg-card-hover);border-color:var(--primary);color:var(--primary);transform:translateX(-4px)}.workout-title{font-family:var(--font-display);font-size:2rem;font-weight:400;margin:0;color:var(--text-primary);letter-spacing:.02em}.workout-subtitle{font-size:1rem;margin-top:8px;color:var(--text-secondary)}.workout-container{max-width:var(--bb-max-width);margin:0 auto;padding:0 20px}.workout-container:first-of-type{padding-top:24px}.workout-grid{display:grid;grid-template-columns:1fr;grid-gap:28px;gap:28px}@media (min-width:768px){.workout-grid{grid-template-columns:2fr 1fr}}.workout-main-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:20px;box-shadow:var(--shadow-card);overflow:hidden;animation:slideUp .5s var(--ease-out)}.workout-side-cards{display:flex;flex-direction:column;gap:24px}.workout-image-container{position:relative;width:100%;overflow:hidden;background:var(--gradient-fire)}.workout-image-container.has-photo{height:auto;max-height:600px}.workout-image-container.no-photo{height:140px}.workout-image-container.no-photo .workout-image-overlay{padding:20px 28px}.workout-image-container.no-photo .workout-image-title{font-size:1.25rem;margin-bottom:6px}.workout-image-container.no-photo .workout-image-location{font-size:.9rem}.workout-image{width:100%;height:auto;max-height:600px;object-fit:contain;display:block;transition:transform .4s var(--ease-smooth)}.workout-main-card:hover .workout-image{transform:scale(1.03)}.workout-no-image{display:flex;align-items:center;justify-content:center;height:100%;font-size:48px;color:rgba(255,255,255,.8)}.workout-image-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(0deg,rgba(0,0,0,.8),transparent);padding:28px;color:#ffffff}.workout-image-title{font-family:var(--font-display);font-size:1.5rem;font-weight:400;margin:0 0 10px;letter-spacing:.02em}.workout-image-location,.workout-image-title{text-shadow:0 2px 8px rgba(0,0,0,.9),0 0 20px rgba(0,0,0,.6)}.workout-image-location{display:flex;align-items:center;gap:8px;font-size:1rem;opacity:.9}.workout-content{padding:32px}.workout-details{display:flex;flex-direction:column;gap:0}.workout-detail-row{display:flex;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid var(--border-color);transition:all .2s var(--ease-smooth)}.workout-detail-row:last-child{border-bottom:none}.workout-detail-row:hover{padding-left:8px;background:var(--bg-surface);margin-left:-8px;margin-right:-8px;padding-right:8px;border-radius:10px}.workout-detail-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:10px;flex-shrink:0}.workout-detail-icon,.workout-detail-row:first-child .workout-detail-icon{background:linear-gradient(135deg,rgba(99,102,241,.15),rgba(99,102,241,.05));color:#6366f1}.workout-detail-row:nth-child(2) .workout-detail-icon{background:linear-gradient(135deg,rgba(16,185,129,.15),rgba(16,185,129,.05));color:#10b981}.workout-detail-row:nth-child(3) .workout-detail-icon{background:linear-gradient(135deg,rgba(245,158,11,.15),rgba(245,158,11,.05));color:#f59e0b}.workout-detail-row:nth-child(4) .workout-detail-icon{background:linear-gradient(135deg,rgba(239,68,68,.15),rgba(239,68,68,.05));color:#ef4444}.workout-detail-content{flex:1 1;min-width:0}.workout-detail-value{font-size:.95rem;color:var(--text-primary);font-weight:500;line-height:1.5}.workout-description-link,.workout-text-link{color:var(--primary);text-decoration:none;font-weight:500;transition:opacity .2s ease}.workout-description-link:hover,.workout-text-link:hover{text-decoration:underline;opacity:.85}.workout-description-link.telegram,.workout-text-link.telegram{color:#26a5e4}.workout-location-value{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.workout-location-link{color:var(--primary);transition:color .2s ease}.workout-location-link:hover{color:var(--accent);text-decoration:underline}.workout-location-map-link{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;font-size:.8rem;font-weight:500;color:var(--text-secondary);background:var(--bg-elevated);border:1px solid var(--border-color);border-radius:8px;text-decoration:none;transition:all .2s ease}.workout-location-map-link:hover{background:var(--bg-card-hover);border-color:var(--primary);color:var(--primary)}.workout-price-badge{background:rgba(16,185,129,.15);color:#10b981}.workout-discount-badge,.workout-price-badge{display:inline-block;padding:4px 10px;border-radius:6px;font-weight:600;font-size:.8rem;margin-left:10px}.workout-discount-badge{background:rgba(239,68,68,.15);color:#ef4444}.workout-info-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:20px;box-shadow:var(--shadow-card);padding:28px;animation:slideUp .6s var(--ease-out)}.workout-info-card h3{margin:0 0 20px;font-family:var(--font-display);font-size:1.2rem;font-weight:400;color:var(--text-primary);display:flex;align-items:center;gap:10px;letter-spacing:.02em}.workout-stats-green .workout-stat-value{color:#10b981}.workout-stats-green .workout-stat{border-color:rgba(16,185,129,.3)}.workout-stats-green .workout-stat:hover{border-color:#10b981}.workout-stats{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}.workout-stat{text-align:center;padding:20px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:14px;transition:all .3s var(--ease-smooth)}.workout-stat:hover{border-color:var(--primary)}.workout-stat-value{font-family:var(--font-display);font-size:2rem;font-weight:400;color:var(--primary);margin-bottom:6px;letter-spacing:.02em}.workout-stat-label{font-size:.7rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-weight:600}.workout-progress{margin-top:24px}.workout-progress-bar{height:10px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:9999px;overflow:hidden;margin-top:10px}.workout-progress-fill{height:100%;background:var(--gradient-cta);border-radius:9999px;transition:width .5s var(--ease-out);box-shadow:0 0 12px rgba(255,69,0,.4)}.workout-progress-text{font-size:.9rem;color:var(--text-secondary);margin-bottom:10px;display:flex;justify-content:space-between;font-weight:500}.workout-trainer-card{display:flex;align-items:center;gap:18px;padding:24px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:16px;margin-top:20px;transition:all .3s var(--ease-smooth)}.workout-trainer-card:hover{border-color:var(--primary)}.workout-trainer-link{display:flex;align-items:center;gap:18px;text-decoration:none;flex:1 1}.workout-trainer-avatar-component{border-radius:14px!important;box-shadow:0 6px 16px rgba(0,0,0,.15)}.workout-trainer-info{flex:1 1}.workout-trainer-name{font-size:1rem;font-weight:600;color:var(--text-primary);margin-bottom:6px}.workout-trainer-role{font-size:.9rem;color:var(--text-muted)}.workout-trainer-tip-link{padding:10px 18px;background:var(--bg-card);border:2px solid var(--primary);color:var(--primary);border-radius:12px;text-decoration:none;font-size:.9rem;font-weight:600;transition:all .3s var(--ease-bounce)}.workout-trainer-tip-link:hover{background:var(--gradient-cta);border-color:transparent;color:#ffffff;transform:translateY(-2px);box-shadow:0 6px 20px rgba(255,69,0,.35)}.workout-level-info{display:flex;align-items:center;gap:8px;padding:14px 20px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:12px;margin-top:16px;font-size:.95rem;color:var(--text-secondary)}.workout-level-info span:last-child{font-weight:600;color:var(--text-primary)}.workout-waitlist-card{margin-top:20px}.workout-waitlist-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.workout-waitlist-items{display:flex;flex-direction:column;gap:12px}.workout-waitlist-item{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:14px;transition:all .3s var(--ease-smooth)}.workout-waitlist-item:hover{border-color:var(--primary);box-shadow:0 4px 15px rgba(255,69,0,.15)}.workout-waitlist-user{display:flex;align-items:center;gap:10px}.workout-waitlist-position{width:32px;height:32px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:.9rem;font-weight:700;color:var(--text-muted)}.workout-waitlist-name{font-size:.95rem;color:var(--text-primary);font-weight:500}.workout-waitlist-cancel-rate{padding:6px 12px;background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.2);color:var(--status-error);border-radius:16px;font-size:.85rem;font-weight:600}.workout-actions{display:flex;gap:14px;margin-top:28px;flex-wrap:wrap}.workout-action-btn{flex:1 1;min-width:140px;padding:16px 28px;border-radius:14px;font-size:1rem;font-weight:600;text-decoration:none;text-align:center;transition:all .3s var(--ease-bounce);display:inline-flex;align-items:center;justify-content:center;gap:10px;border:none;cursor:pointer;position:relative;overflow:hidden}.workout-action-btn:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.2),transparent);opacity:0;transition:opacity .3s ease}.workout-action-btn:hover:before{opacity:1}.workout-action-btn.primary{background:var(--gradient-cta);color:#ffffff;box-shadow:0 8px 25px rgba(255,69,0,.35)}.workout-action-btn.primary:hover{transform:translateY(-3px);box-shadow:0 12px 35px rgba(255,69,0,.45)}.workout-action-btn.secondary{background:var(--bg-card);color:var(--text-primary);border:2px solid var(--border-color)}.workout-action-btn.secondary:hover{border-color:var(--primary);background:var(--bg-card-hover);transform:translateY(-2px)}.workout-action-btn.success{background:linear-gradient(135deg,#10b981,#059669);color:#ffffff;box-shadow:0 8px 25px rgba(16,185,129,.35)}.workout-action-btn.success:hover{transform:translateY(-3px);box-shadow:0 12px 35px rgba(16,185,129,.45)}.workout-action-info{width:100%;padding:14px 20px;background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.2);border-radius:12px;color:#ef4444;font-size:.95rem;font-weight:600;text-align:center}.workout-action-btn.waitlist{background:linear-gradient(135deg,#f59e0b,#d97706);color:#ffffff;box-shadow:0 8px 25px rgba(245,158,11,.35);position:relative;overflow:hidden}.workout-action-btn.waitlist:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);animation:waitlist-shimmer 2s infinite}@keyframes waitlist-shimmer{0%{left:-100%}50%,to{left:100%}}.workout-action-btn.waitlist:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 12px 30px rgba(245,158,11,.5)}.workout-action-btn.waitlist-leave{background:var(--bg-surface);color:#f59e0b;border:2px solid rgba(245,158,11,.3)}.workout-action-btn.waitlist-leave:hover:not(:disabled){border-color:#f59e0b;background:rgba(245,158,11,.08);transform:translateY(-2px);box-shadow:0 6px 20px rgba(245,158,11,.15)}.workout-action-btn:disabled{opacity:.6;cursor:not-allowed}@media (prefers-color-scheme:light){.workout-action-info{background:rgba(239,68,68,.06)}.workout-action-btn.waitlist-leave{background:rgba(245,158,11,.05);border-color:rgba(245,158,11,.4)}}.alternatives-section{width:100%;margin:1.25rem 0;padding:1.25rem;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:16px}.alternatives-title{font-family:var(--font-display);font-size:1rem;font-weight:500;color:var(--text-primary);margin-bottom:1rem;letter-spacing:.02em;display:flex;align-items:center;gap:8px}.alternatives-title:before{content:"";width:4px;height:18px;background:var(--gradient-cta);border-radius:2px}.alternatives-scroll{display:flex;gap:1rem;overflow-x:auto;padding:4px 4px 12px;margin:-4px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}.alternatives-scroll::-webkit-scrollbar{height:6px}.alternatives-scroll::-webkit-scrollbar-track{background:var(--bg-card);border-radius:3px}.alternatives-scroll::-webkit-scrollbar-thumb{background:linear-gradient(90deg,var(--primary),#818cf8);border-radius:3px}.alternatives-scroll::-webkit-scrollbar-thumb:hover{background:var(--primary)}.alternative-card{flex:0 0 auto;width:180px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:14px;overflow:hidden;text-decoration:none;color:inherit;transition:all .3s var(--ease-bounce);scroll-snap-align:start;box-shadow:var(--shadow-soft)}.alternative-card:hover{border-color:var(--primary);transform:translateY(-6px) scale(1.02);box-shadow:0 12px 32px rgba(99,102,241,.25)}.alternative-photo{width:100%;height:100px;overflow:hidden;background:var(--gradient-fire);position:relative}.alternative-photo:after{content:"";position:absolute;bottom:0;left:0;right:0;height:40px;background:linear-gradient(0deg,rgba(0,0,0,.4),transparent);pointer-events:none}.alternative-photo img{width:100%;height:100%;object-fit:contain;background:var(--bg-elevated);transition:transform .4s var(--ease-smooth)}.alternative-card:hover .alternative-photo img{transform:scale(1.1)}.alternative-no-photo{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.7)}.alternative-info{padding:.85rem 1rem}.alternative-name{font-size:.9rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.alternative-meta{display:flex;flex-direction:column;gap:.3rem}.alternative-location,.alternative-time{font-size:.75rem;color:var(--text-secondary);display:flex;align-items:center;gap:.4rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.alternative-location svg,.alternative-time svg{flex-shrink:0;opacity:.7}.alternative-places{display:inline-flex;align-items:center;gap:.3rem;margin-top:.5rem;padding:.3rem .6rem;background:rgba(16,185,129,.12);border:1px solid rgba(16,185,129,.25);border-radius:8px;font-size:.7rem;font-weight:600;color:#10b981}.alternative-places svg{flex-shrink:0}@media (max-width:480px){.alternatives-section{padding:1rem;margin:1rem 0;border-radius:12px}.alternatives-title{font-size:.9rem}.alternative-card{width:155px;border-radius:12px}.alternative-photo{height:85px}.alternative-info{padding:.7rem .8rem}.alternative-name{font-size:.85rem}.alternative-location,.alternative-time{font-size:.7rem}}.workout-viewers-bubble{position:fixed;bottom:24px;right:24px;z-index:1000;display:flex;align-items:center;gap:10px;padding:12px 18px;background:linear-gradient(135deg,#cc0000,#990000);color:white;border-radius:24px;box-shadow:0 4px 20px rgba(204,0,0,.4);animation:bubble-appear .4s ease-out,pulse-subtle 2s ease-in-out .4s infinite}.workout-viewers-icon{display:flex;align-items:center;justify-content:center;animation:bounce-eyes 1.5s ease-in-out infinite}.workout-viewers-text{font-size:14px;font-weight:500;white-space:nowrap;line-height:1;display:flex;align-items:center}.workout-viewers-text strong{font-weight:700}@keyframes bubble-appear{0%{opacity:0;transform:translateY(20px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes pulse-subtle{0%,to{box-shadow:0 4px 20px rgba(204,0,0,.4)}50%{box-shadow:0 4px 28px rgba(204,0,0,.6)}}@keyframes bounce-eyes{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@media (max-width:480px){.workout-viewers-bubble{bottom:16px;right:16px;padding:10px 14px;font-size:13px}}@keyframes slideUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.workout-skeleton{background:linear-gradient(90deg,var(--bg-surface) 25%,var(--bg-card) 50%,var(--bg-surface) 75%);background-size:200% 100%;animation:loading 1.5s infinite;border-radius:10px}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}.workout-participants-list{display:flex;flex-direction:column;gap:10px;margin-top:16px}.workout-no-participants{margin-top:12px;padding:16px;text-align:center;color:var(--text-muted);font-size:.9rem;background:var(--bg-surface);border-radius:10px}.workout-participant-item{display:flex;align-items:center;gap:14px;padding:10px 0;border-bottom:1px solid var(--border-color);text-decoration:none;transition:all .2s var(--ease-smooth)}.workout-participant-item:hover{background:var(--bg-surface);padding-left:8px;padding-right:8px;margin-left:-8px;margin-right:-8px;border-radius:10px}.workout-participant-item:last-child{border-bottom:none}.workout-participant-number{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:50%;font-size:.8rem;color:var(--text-muted);font-weight:600;flex-shrink:0}.workout-participant-avatar-wrapper{position:relative;flex-shrink:0}.workout-participant-status-icon{position:absolute;bottom:-2px;right:-2px;font-size:.9rem}.workout-participant-avatar{width:36px;height:36px;border-radius:50%;object-fit:cover;flex-shrink:0;border:2px solid var(--border-color)}.workout-participant-avatar-placeholder{width:36px;height:36px;border-radius:50%;background:var(--gradient-fire);color:#ffffff;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;flex-shrink:0;text-transform:uppercase}.workout-participant-name{flex:1 1;font-size:.95rem;color:var(--text-primary);font-weight:500}.workout-participant-own{color:#10b981;margin-left:4px}.workout-participant-favorite{color:#ef4444;margin-left:4px}.workout-participant-rating{margin-left:6px;font-size:.85rem;font-weight:600;color:var(--text-muted);white-space:nowrap}.workout-participant-ghost{color:var(--text-muted);margin-left:4px}.workout-participant-team{font-size:.75rem;color:var(--text-muted);padding:4px 10px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:12px;white-space:nowrap}.workout-teams{display:flex;flex-direction:column;gap:14px;margin-top:16px}.workout-team-group{border:1px solid var(--border-color);border-radius:12px;padding:8px 12px 10px;background:var(--bg-surface)}.workout-team-header{font-size:.75rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.workout-team-group .workout-participants-list{margin-top:6px;gap:6px}.workout-waitlist-simple{padding:18px;background:var(--accent-warning-bg);border:1px solid var(--accent-warning-border);border-radius:12px;text-align:center;font-size:1rem;font-weight:600;color:var(--accent-warning);margin-top:16px}.workout-location-link{color:var(--accent-cyan);text-decoration:none;border-bottom:1px solid transparent;transition:all .3s ease}.workout-location-link:hover{color:var(--primary);border-bottom-color:var(--primary)}.workout-yandex-link{color:var(--text-muted);text-decoration:none;padding:6px 12px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:8px;font-size:.85rem;font-weight:500;transition:all .3s var(--ease-smooth);display:inline-block}.workout-yandex-link:hover{background:var(--bg-card-hover);border-color:var(--primary);color:var(--primary)}@media (max-width:768px){.workout-header-content{padding:20px 16px}.workout-title{font-size:1.6rem}.workout-container{padding:0 16px}.workout-content{padding:24px 20px}.workout-stats{gap:12px}.workout-stat{padding:16px}.workout-stat-value{font-size:1.6rem}.workout-actions{flex-direction:column}.workout-action-btn{min-width:100%}.workout-info-card{padding:22px}}@media (prefers-color-scheme:light){.workout-detail-icon{box-shadow:0 4px 12px rgba(0,0,0,.05)}.workout-trainer-avatar-component{box-shadow:0 6px 16px rgba(0,0,0,.08)}.workout-location-link{color:#0284c7}.workout-location-link:hover{color:var(--primary)}.workout-image-location,.workout-image-title{text-shadow:0 2px 8px rgba(255,255,255,.9),0 0 20px rgba(255,255,255,.6)}}