:root{--bg-primary:#121212;--bg-secondary:#1a2332;--bg-tertiary:#2e3441;--bg-card:#2d3645;--bg-header:linear-gradient(135deg,#151d2a,#1a2332);--bg-calendar-header:linear-gradient(135deg,#1a2332,#2e3441);--bg-sidebar:linear-gradient(180deg,#1a2332,#2e3441);--bg-dropdown:#2e3441;--bg-modal:linear-gradient(135deg,#2a2a2a,#1a2332);--text-primary:#fff;--text-secondary:hsla(0,0%,100%,.6);--text-tertiary:#a0a0a0;--border-color:hsla(0,0%,100%,.1);--border-color-light:hsla(0,0%,100%,.2);--accent-primary:#007bff;--accent-hover:#0056b3;--shadow:rgba(0,0,0,.5);--shadow-light:rgba(0,0,0,.3)}[data-theme=light]{--bg-primary:#f0f0f0;--bg-secondary:#e8e8e8;--bg-tertiary:#e0e0e0;--bg-card:#f5f5f5;--bg-header:linear-gradient(135deg,#e8e8e8,#e0e0e0);--bg-calendar-header:linear-gradient(135deg,#f5f5f5,#f0f0f0);--bg-sidebar:linear-gradient(180deg,#e8e8e8,#e0e0e0);--bg-dropdown:#f5f5f5;--bg-modal:linear-gradient(135deg,#f5f5f5,#f0f0f0);--text-primary:#2c3e50;--text-secondary:#5a6c7d;--text-tertiary:#7f8c9a;--border-color:rgba(0,0,0,.08);--border-color-light:rgba(0,0,0,.12);--accent-primary:#007bff;--accent-hover:#0056b3;--shadow:rgba(0,0,0,.12);--shadow-light:rgba(0,0,0,.08)}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#1a2332;background-color:var(--bg-secondary);color:#fff;color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;height:100vh;margin:0;overflow:hidden;padding:0;transition:background-color .3s ease,color .3s ease}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box}#root,*,body,html{margin:0;padding:0}#root,body,html{height:100%}.login-container{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;align-items:stretch;background:linear-gradient(135deg,#121212,#1a2332 50%,#2e3441);display:flex;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif;min-height:100vh}.login-split-left{align-items:center;display:flex;flex:1 1;justify-content:center;overflow:hidden;padding:40px;position:relative}.login-background-image{image-rendering:-webkit-optimize-contrast;object-fit:cover;object-position:center;will-change:transform}.login-background-image,.login-image-overlay{height:100%;left:0;position:absolute;top:0;width:100%}.login-image-overlay{-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0);background:linear-gradient(135deg,hsla(0,0%,7%,.3),rgba(26,35,50,.4))}.login-split-right{align-items:center;background:linear-gradient(135deg,#121212,#1a2332 50%,#2e3441);display:flex;flex:1 1;justify-content:center;padding:40px}@media (max-width:968px){.login-container{flex-direction:column}.login-split-left{min-height:40vh;padding:20px}.login-split-right{min-height:60vh;padding:20px}}.login-form{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:hsla(0,0%,100%,.02);border:1px solid hsla(0,0%,100%,.2);border-radius:12px;box-shadow:0 8px 32px rgba(0,0,0,.3);max-width:450px;padding:40px;position:relative;width:100%;z-index:1}[data-theme=light] .login-form{background:rgba(0,0,0,.02);border:1px solid var(--border-color);box-shadow:0 8px 32px var(--shadow)}.login-header{align-items:center;display:flex;flex-direction:column;gap:12px;margin-bottom:32px;overflow:hidden;text-align:center;width:100%}.login-logo{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:block;height:80px;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges;image-rendering:pixelated;image-rendering:auto;margin-bottom:4px;max-height:80px;max-width:100%;object-fit:contain;transform:translateZ(0);width:auto}.login-header h1{color:#fff;font-size:28px;font-weight:700;margin:0 0 8px}.login-header p{color:#a0a0a0;font-size:16px;margin:0}.form-group input{-webkit-appearance:none;appearance:none;background-color:hsla(0,0%,100%,.05)}.form-group input:focus~label,.form-group input:not(:placeholder-shown)~label{color:hsla(0,0%,100%,.8);font-size:12px;font-weight:500;top:8px;transform:translateY(0)}.form-group input:focus{background-color:hsla(0,0%,100%,.08)}.form-group input:-webkit-autofill,.form-group input:-webkit-autofill:focus,.form-group input:-webkit-autofill:hover{-webkit-text-fill-color:#fff!important;border:1px solid hsla(0,0%,100%,.2)!important;box-shadow:inset 0 0 0 1000px rgba(33,44,63,.9)!important;caret-color:#fff;color:#fff!important;-webkit-transition:background-color 9999s ease-out 0s,color 9999s ease-out 0s;transition:background-color 9999s ease-out 0s,color 9999s ease-out 0s}@supports selector(input:autofill){.form-group input:-webkit-autofill{-webkit-text-fill-color:#fff!important;border:1px solid hsla(0,0%,100%,.2)!important;box-shadow:inset 0 0 0 1000px rgba(33,44,63,.9)!important;caret-color:#fff;color:#fff!important}.form-group input:autofill{-webkit-text-fill-color:#fff!important;border:1px solid hsla(0,0%,100%,.2)!important;box-shadow:inset 0 0 0 1000px rgba(33,44,63,.9)!important;caret-color:#fff;color:#fff!important}}@supports selector(input:-moz-autofill){.form-group input:-moz-autofill{border:1px solid hsla(0,0%,100%,.2)!important;box-shadow:inset 0 0 0 1000px rgba(33,44,63,.9)!important;caret-color:#fff;color:#fff!important}}.password-input{padding-right:58px}.password-toggle-button{align-items:center;background:transparent;border:none;color:hsla(0,0%,100%,.75);cursor:pointer;display:inline-flex;justify-content:center;line-height:0;padding:4px;position:absolute;right:18px;top:50%;transform:translateY(-40%)}.password-toggle-button:hover:not(:disabled){color:#fff}.password-toggle-button:focus-visible{border-radius:4px;outline:2px solid hsla(0,0%,100%,.45);outline-offset:2px}.password-toggle-button:disabled{cursor:not-allowed;opacity:.5}.error-message{animation:slideInError .3s ease-out;border:1px solid rgba(220,53,69,.4);box-shadow:0 2px 8px rgba(220,53,69,.15);color:#ff6b6b;padding:14px 16px}@keyframes slideInError{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.error-message-icon{color:#ff6b6b;flex-shrink:0;margin-top:2px}.error-message-text{flex:1 1;font-weight:400;line-height:1.5}[data-theme=light] .error-message{background:rgba(220,53,69,.08);border-color:rgba(220,53,69,.3);box-shadow:0 2px 8px rgba(220,53,69,.1);color:#dc3545}[data-theme=light] .error-message-icon{color:#dc3545}.login-button{background:transparent;border:2px solid #fff;border-radius:15px;color:#fff;cursor:pointer;font-family:inherit;font-size:16px;font-weight:600;letter-spacing:.5px;padding:14px;text-transform:uppercase;transition:all .3s ease;width:100%}.login-button:hover:not(:disabled){background:hsla(0,0%,100%,.1);border-color:#fff;transform:translateY(-1px)}.login-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.login-footer{margin-top:24px;text-align:center}.login-footer p{color:#a0a0a0;font-size:14px;margin:0}.register-link{color:#fff;font-weight:600;text-decoration:none;transition:color .3s ease}.register-link:hover{color:hsla(0,0%,100%,.8);text-decoration:underline}.calendar-header{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--bg-calendar-header);border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;overflow:visible!important;padding:16px 20px;position:-webkit-sticky;position:sticky;top:0;transition:background .3s ease,border-color .3s ease;z-index:1000}.calendar-container.multi-week-view .calendar-header{position:relative;z-index:1000002}.header-left{gap:16px}.date-navigation,.header-left{align-items:center;display:flex}.date-navigation{gap:8px}.nav-button{align-items:center;background-color:var(--bg-card);border:1px solid var(--border-color-light);border-radius:4px;color:var(--text-primary);cursor:pointer;display:flex;font-size:16px;font-weight:700;height:32px;justify-content:center;transition:all .2s;width:32px}.nav-button:hover{border-color:var(--border-color-light)}.nav-button:hover,[data-theme=light] .nav-button:hover{background-color:var(--bg-tertiary)}.current-month{color:var(--text-primary);font-size:18px;font-weight:600;min-width:120px;text-align:center}.today-button{background:linear-gradient(135deg,var(--accent-primary) 0,var(--accent-hover) 100%);border:1px solid var(--accent-primary);border-radius:6px;box-shadow:0 2px 8px rgba(0,123,255,.2);color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .3s ease}.today-button:hover{background:linear-gradient(135deg,var(--accent-hover) 0,#004085 100%);box-shadow:0 4px 12px rgba(0,123,255,.3);transform:translateY(-1px)}.header-center{overflow:visible;position:relative}.calendar-header.modal-open,.calendar-header.modal-open .header-center{z-index:999}.athlete-filter{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:hsla(0,0%,100%,.05);border:1px solid var(--border-color-light);border-radius:6px;color:var(--text-primary);cursor:pointer;display:flex;font-size:14px;gap:8px;padding:8px 12px;transition:all .3s ease;-webkit-user-select:none;user-select:none}[data-theme=light] .athlete-filter{background:rgba(0,0,0,.02)}.athlete-filter:hover{background:hsla(0,0%,100%,.1);border-color:var(--border-color-light);transform:translateY(-1px)}[data-theme=light] .athlete-filter:hover{background:rgba(0,0,0,.05)}.add-athlete-button{align-items:center;background:linear-gradient(135deg,var(--accent-primary) 0,var(--accent-hover) 100%);border:1px solid var(--accent-primary);border-radius:6px;box-shadow:0 2px 8px rgba(0,123,255,.2);color:#fff;cursor:pointer;display:flex;font-size:20px;font-weight:700;height:32px;justify-content:center;line-height:1;margin-left:8px;padding:0;transition:all .3s ease;width:32px}.add-athlete-button:hover{background:linear-gradient(135deg,var(--accent-hover) 0,#004085 100%);box-shadow:0 4px 12px rgba(0,123,255,.3);transform:translateY(-1px)}.dropdown-arrow{color:var(--text-tertiary);font-size:10px;transition:transform .3s ease}.dropdown-arrow.open{transform:rotate(180deg)}.athlete-dropdown{animation:dropdownSlide .2s ease;background:rgba(30,30,30,.98);background:var(--bg-dropdown,rgba(30,30,30,.98));border:1px solid var(--border-color-light);border-radius:8px;box-shadow:0 8px 24px var(--shadow);max-height:60vh;max-width:300px;min-width:200px;overflow-x:hidden;overflow-y:auto;position:fixed;transform:translateZ(0);will-change:transform;z-index:99999999}[data-theme=light] .athlete-dropdown{background:var(--bg-card);box-shadow:0 8px 24px var(--shadow)}.athlete-dropdown::-webkit-scrollbar{width:8px}.athlete-dropdown::-webkit-scrollbar-track{background:hsla(0,0%,100%,.05);border-radius:4px;margin:4px 0}.athlete-dropdown::-webkit-scrollbar-thumb{background:rgba(0,123,255,.5);border-radius:4px;-webkit-transition:background .3s ease;transition:background .3s ease}.athlete-dropdown::-webkit-scrollbar-thumb:hover{background:rgba(0,123,255,.7)}.athlete-dropdown{scrollbar-color:rgba(0,123,255,.5) hsla(0,0%,100%,.05);scrollbar-width:thin}@keyframes dropdownSlide{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.athlete-option{align-items:center;color:var(--text-primary);cursor:pointer;display:flex;font-size:14px;justify-content:space-between;padding:12px 16px;transition:all .2s ease}.athlete-option:hover{background:hsla(0,0%,100%,.1)}[data-theme=light] .athlete-option:hover{background:rgba(0,0,0,.05)}.athlete-option.selected{background:rgba(0,123,255,.2);color:var(--accent-primary);font-weight:500}[data-theme=light] .athlete-option.selected{background:rgba(0,123,255,.1)}.dropdown-divider{margin:4px 0}.check-icon{color:var(--accent-primary);font-size:12px}.action-buttons{gap:8px}.action-button{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:hsla(0,0%,100%,.05);border:1px solid var(--border-color-light);border-radius:6px;color:var(--text-primary);cursor:pointer;display:flex;font-size:14px;height:32px;justify-content:center;transition:all .3s ease;width:32px}[data-theme=light] .action-button{background:rgba(0,0,0,.02)}.action-button:hover{background:hsla(0,0%,100%,.1);border-color:var(--border-color-light);transform:translateY(-1px)}[data-theme=light] .action-button:hover{background:rgba(0,0,0,.05)}.action-button.active{background:rgba(74,144,226,.2);border-color:rgba(74,144,226,.4)}.add-menu-dropdown{animation:dropdownSlide .2s ease;background:rgba(30,30,30,.98);background:var(--bg-dropdown,rgba(30,30,30,.98));border:1px solid var(--border-color-light);border-radius:8px;box-shadow:0 8px 24px var(--shadow);min-width:180px;overflow:hidden;position:fixed;transform:translateZ(0);will-change:transform;z-index:99999999}[data-theme=light] .add-menu-dropdown{background:var(--bg-card);box-shadow:0 8px 24px var(--shadow)}.add-menu-option{align-items:center;color:var(--text-primary);cursor:pointer;display:flex;font-size:14px;padding:12px 16px;transition:all .2s ease}.add-menu-option:hover{background:hsla(0,0%,100%,.1)}[data-theme=light] .add-menu-option:hover{background:rgba(0,0,0,.05)}.calendar-settings-overlay{-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px);background:rgba(10,16,26,.2);bottom:0;left:0;pointer-events:auto;position:fixed;right:0;top:0;z-index:1000001}.calendar-settings-modal{animation:slideDown .2s ease;background:linear-gradient(180deg,hsla(0,0%,100%,.03),hsla(0,0%,100%,.01)),var(--bg-dropdown);border:1px solid var(--border-color-light);border-radius:12px;box-shadow:0 14px 34px var(--shadow);min-width:280px;padding:16px 16px 14px;position:fixed;transition:background .3s ease,border-color .3s ease,box-shadow .3s ease;z-index:1000002}[data-theme=light] .calendar-settings-modal{background:var(--bg-card);box-shadow:0 12px 28px var(--shadow)}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.calendar-settings-section{margin-bottom:20px}.calendar-settings-section:last-child{margin-bottom:0}.calendar-settings-divider{background:var(--border-color);height:1px;margin:12px 0}.calendar-settings-section-title{color:var(--text-secondary);font-size:12px;font-weight:600;letter-spacing:.45px;margin:0 0 12px;text-transform:uppercase}.calendar-settings-radio-group{display:flex;flex-direction:column;gap:8px}.calendar-settings-radio-label{align-items:center;cursor:pointer;display:flex;gap:8px;padding:4px 0;transition:all .2s ease}.calendar-settings-radio-label:hover{background:hsla(0,0%,100%,.05);border-radius:4px;margin-left:-4px;margin-right:-4px;padding-left:4px;padding-right:4px}[data-theme=light] .calendar-settings-radio-label:hover{background:rgba(0,0,0,.05)}.calendar-settings-radio{accent-color:var(--accent-primary);cursor:pointer;height:16px;margin:0;width:16px}.calendar-settings-radio-text{color:var(--text-primary);font-size:14px;-webkit-user-select:none;user-select:none}.calendar-settings-checkbox-group{display:flex;flex-direction:column;gap:8px}.calendar-settings-checkbox-label{align-items:center;cursor:pointer;display:flex;gap:8px;padding:4px 0;transition:all .2s ease}.calendar-settings-checkbox-label:hover{background:hsla(0,0%,100%,.05);border-radius:4px;margin-left:-4px;margin-right:-4px;padding-left:4px;padding-right:4px}[data-theme=light] .calendar-settings-checkbox-label:hover{background:rgba(0,0,0,.05)}.calendar-settings-checkbox{accent-color:var(--accent-primary);cursor:pointer;height:16px;margin:0;width:16px}.calendar-settings-checkbox-text{color:var(--text-primary);font-size:14px;-webkit-user-select:none;user-select:none}.calendar-settings-link-button{background:linear-gradient(135deg,rgba(0,123,255,.22),rgba(0,123,255,.08));border:1px solid var(--border-color-light);border-radius:8px;color:var(--text-primary);cursor:pointer;font-size:13px;font-weight:600;padding:10px 12px;text-align:center;transition:background .2s ease,border-color .2s ease,transform .2s ease;width:100%}.calendar-settings-link-button:hover{background:linear-gradient(135deg,rgba(0,123,255,.32),rgba(0,123,255,.14));border-color:var(--accent-primary);transform:translateY(-1px)}[data-theme=light] .calendar-settings-overlay{background:rgba(59,84,130,.18)}.account-info-step{display:flex;flex-direction:column;gap:24px}.form-section{display:flex;flex-direction:row;gap:16px}.input-group{flex:1 1;gap:8px}.required{color:#ff3b30}.form-input.error{border-color:#ff3b30}.error-text{font-size:12px;margin:0}.triathlon-select-wrapper{position:relative;width:100%}.triathlon-select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background:hsla(0,0%,100%,.1);border:1px solid hsla(0,0%,100%,.2);border-radius:8px;color:#fff;cursor:pointer;font-size:14px;padding:12px 40px 12px 16px;transition:all .2s ease;width:100%}.triathlon-select:hover{background:hsla(0,0%,100%,.15);border-color:hsla(0,0%,100%,.3)}.triathlon-select:focus{background:hsla(0,0%,100%,.15);border-color:#4a90e2;box-shadow:0 0 0 3px rgba(74,144,226,.1);outline:none}.triathlon-select option{background:#2a2a2a;color:#fff}.triathlon-select-wrapper .selector-arrow{color:hsla(0,0%,100%,.6);font-size:10px;pointer-events:none;position:absolute;right:16px;top:50%;transform:translateY(-50%);transition:transform .2s ease}.event-details-step{display:flex;flex-direction:column;gap:24px}.selector-button-container{position:relative}.selector-button{align-items:center;background:hsla(0,0%,100%,.1);border:1px solid hsla(0,0%,100%,.2);border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;justify-content:space-between;padding:12px 16px;transition:all .2s ease;width:100%}.selector-button:hover{background:hsla(0,0%,100%,.15);border-color:hsla(0,0%,100%,.3)}.selector-arrow{color:hsla(0,0%,100%,.6);font-size:10px;transition:transform .2s ease}.dropdown-menu{background:#2a2a2a;border:1px solid hsla(0,0%,100%,.2);border-radius:8px;box-shadow:0 8px 24px rgba(0,0,0,.5);left:0;max-height:300px;overflow-y:auto;position:absolute;right:0;top:calc(100% + 4px);z-index:1000005}.dropdown-menu-fixed{position:fixed!important;right:auto!important}.dropdown-item{color:#fff;justify-content:space-between;transition:background .2s ease}.dropdown-item:hover{background:hsla(0,0%,100%,.1)}.dropdown-item.selected{background:rgba(74,144,226,.2);color:#4a90e2}.check-icon{color:#4a90e2;font-weight:700}.priority-main{font-size:14px;font-weight:600}.priority-sub{color:hsla(0,0%,100%,.7);font-size:12px;margin-top:2px}.distance-modal,.goal-modal{background:#2a2a2a;border:1px solid hsla(0,0%,100%,.2);border-radius:8px;box-shadow:0 8px 24px rgba(0,0,0,.5);left:0;padding:20px;position:absolute;right:0;top:calc(100% + 8px);z-index:1000005}.distance-modal-fixed,.goal-modal-fixed{position:fixed!important;right:auto!important}.distance-modal-header,.goal-modal-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.distance-modal-header h3,.goal-modal-header h3{color:#fff;font-size:18px;font-weight:600;margin:0}.close-modal-button{align-items:center;background:transparent;border:none;color:hsla(0,0%,100%,.6);cursor:pointer;display:flex;font-size:20px;height:24px;justify-content:center;padding:0;transition:color .2s ease;width:24px}.close-modal-button:hover{color:#fff}.goal-modal-content{display:flex;flex-direction:column;gap:16px}.goal-input-group{display:flex;flex-direction:column;gap:8px}.goal-input-group label{color:hsla(0,0%,100%,.8);font-size:13px}.form-textarea{background:hsla(0,0%,100%,.1);border:1px solid hsla(0,0%,100%,.2);border-radius:8px;color:#fff;font-family:inherit;font-size:14px;padding:12px 16px;resize:vertical;transition:all .2s ease}.form-textarea:focus{background:hsla(0,0%,100%,.15);border-color:#4a90e2;box-shadow:0 0 0 3px rgba(74,144,226,.1);outline:none}.thresholds-step{display:flex;flex-direction:row;flex-wrap:wrap;gap:20px}.info-box{flex-basis:100%;margin-bottom:8px}.info-text{color:hsla(0,0%,100%,.8);line-height:1.5}.sport-threshold-section{background:hsla(0,0%,100%,.03);border:1px solid hsla(0,0%,100%,.1);border-radius:12px;flex:1 1;min-width:280px;padding:20px}.section-header{margin-bottom:16px}.unit-toggle{border-radius:8px;font-size:12px;min-width:60px;padding:6px 12px}.unit-toggle:hover{background-color:#3d7ec6}.input-group{margin-bottom:16px}.sport-threshold-section .input-group:last-child{margin-bottom:0}.input-row{display:flex;flex-direction:column;gap:16px;margin-bottom:16px}.threshold-input{background-color:hsla(0,0%,100%,.1);border:1px solid hsla(0,0%,100%,.2);padding:12px 16px;transition:all .2s}.threshold-input:focus{background:hsla(0,0%,100%,.15);box-shadow:0 0 0 3px rgba(74,144,226,.1)}.threshold-input::placeholder{color:hsla(0,0%,100%,.4)}.training-phase-schedule-step{display:flex;flex-direction:column;gap:24px}.remove-phase-button:hover{background:rgba(255,59,48,.3);border-color:rgba(255,59,48,.6)}.form-select{box-sizing:border-box;height:48px;line-height:20px;margin-top:-7px;padding:14px 16px}.add-phase-button:hover{background:rgba(74,144,226,.3);border-color:rgba(74,144,226,.7);border-style:solid}.input-label-wrapper{align-items:center;display:flex;gap:8px;justify-content:center;margin-bottom:8px}.input-label{display:inline-block;margin:0}.phase-info-button{align-items:center;background:rgba(74,144,226,.2);border:1px solid rgba(74,144,226,.4);border-radius:50%;color:#4a90e2;cursor:pointer;display:inline-flex;flex-shrink:0;font-size:14px;font-weight:600;height:20px;justify-content:center;line-height:1;margin:0;padding:0;transition:all .2s ease;width:20px}.phase-info-button:hover{background:rgba(74,144,226,.3);border-color:rgba(74,144,226,.6);transform:scale(1.1)}.phase-info-overlay{animation:fadeIn .2s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:rgba(0,0,0,.75);bottom:0;left:0;position:fixed;right:0;top:0;z-index:1000}.phase-info-modal{animation:slideIn .3s ease-out;background:linear-gradient(135deg,#2a2a2a,#1a2332);border:1px solid hsla(0,0%,100%,.1);border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,.5);display:flex;flex-direction:column;left:50%;max-height:90vh;max-width:700px;overflow:hidden;position:fixed;top:50%;transform:translate(-50%,-50%);width:90%;z-index:1001}.phase-info-header{align-items:center;background:linear-gradient(135deg,rgba(74,144,226,.1),transparent);border-bottom:1px solid hsla(0,0%,100%,.1);display:flex;justify-content:space-between;padding:24px 28px}.phase-info-header h2{color:#fff;font-size:24px;font-weight:700;letter-spacing:.3px;margin:0}.phase-info-close{align-items:center;background:hsla(0,0%,100%,.05);border:1px solid hsla(0,0%,100%,.1);border-radius:8px;color:#b0b0b0;cursor:pointer;display:flex;flex-shrink:0;font-size:24px;height:40px;justify-content:center;line-height:1;padding:0;transition:all .2s ease;width:40px}.phase-info-close:hover{background:rgba(255,59,48,.2);border-color:rgba(255,59,48,.4);color:#ff3b30}.phase-info-body{flex:1 1;overflow-y:auto;padding:28px}.phase-info-intro{color:#b0b0b0;font-size:14px;line-height:1.6;margin:0 0 24px}.phase-info-intro strong{color:#4a90e2;font-weight:600}.phase-info-list{display:flex;flex-direction:column;gap:16px}.phase-info-item{background:hsla(0,0%,100%,.03);border:1px solid hsla(0,0%,100%,.1);border-radius:8px;padding:16px;transition:all .2s ease}.phase-info-item:hover{background:hsla(0,0%,100%,.05);border-color:rgba(74,144,226,.3)}.phase-info-item h3{color:#fff;font-size:16px;font-weight:600;margin:0 0 8px}.phase-info-item p{color:hsla(0,0%,100%,.7);font-size:14px;line-height:1.5;margin:0 0 8px}.phase-timing{background:rgba(74,144,226,.15);border:1px solid rgba(74,144,226,.3);border-radius:4px;color:#4a90e2;display:inline-block;font-size:12px;font-weight:500;margin-top:4px;padding:4px 12px}.phase-info-body::-webkit-scrollbar{width:8px}.phase-info-body::-webkit-scrollbar-track{background:hsla(0,0%,100%,.05);border-radius:4px}.phase-info-body::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.2);border-radius:4px}.phase-info-body::-webkit-scrollbar-thumb:hover{background:hsla(0,0%,100%,.3)}.weekly-structure-step{box-sizing:border-box;display:flex;flex-direction:column;height:100%;max-width:100%;min-height:0;overflow:hidden;padding:0;width:100%}.phase-header{flex-shrink:0;margin-bottom:24px}.phase-title{color:#fff;font-size:24px;font-weight:700;margin:0 0 8px}.phase-description{color:hsla(0,0%,100%,.7);font-size:14px;line-height:1.6;margin:0}.tag-template-warning-overlay{align-items:center;animation:fadeIn .2s ease-in;background-color:rgba(0,0,0,.6);bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000010}.tag-template-warning-modal{animation:slideUp .3s ease-out;background:#1e1e1e;border:1px solid hsla(0,0%,100%,.1);border-radius:12px;box-shadow:0 8px 32px rgba(0,0,0,.4);max-height:90vh;max-width:500px;overflow:hidden;padding:0;width:90%}.tag-template-warning-header{align-items:center;border-bottom:1px solid hsla(0,0%,100%,.1);display:flex;justify-content:space-between;padding:20px 24px}.tag-template-warning-header h3{color:#fff;font-size:20px;font-weight:600;margin:0}.close-warning-modal{align-items:center;background:none;border:none;border-radius:4px;color:hsla(0,0%,100%,.7);cursor:pointer;display:flex;font-size:28px;height:32px;justify-content:center;padding:0;transition:all .2s;width:32px}.close-warning-modal:hover{background:hsla(0,0%,100%,.1);color:#fff}.tag-template-warning-body{color:hsla(0,0%,100%,.9);line-height:1.6;padding:24px}.tag-template-warning-body p{font-size:15px;margin:0 0 16px}.tag-template-warning-body p:last-child{margin-bottom:0}.tag-template-warning-body strong{color:#fff;font-weight:600}.tag-template-warning-footer{border-top:1px solid hsla(0,0%,100%,.1);display:flex;justify-content:flex-end;padding:16px 24px}.warning-modal-ok-button{background:#4caf50;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 24px;transition:background .2s}.warning-modal-ok-button:hover{background:#45a049}.warning-modal-ok-button:active{background:#3d8b40}.add-existing-athlete-modal{animation:slideIn .3s ease-out;background:linear-gradient(135deg,#2a2a2a,#1a2332);border:1px solid hsla(0,0%,100%,.1);border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,.5);display:flex;flex-direction:column;left:50%;max-width:600px;overflow:hidden;position:fixed;top:50%;transform:translate(-50%,-50%);width:90%;z-index:1000004}[data-theme=light] .add-existing-athlete-modal{background:var(--bg-modal);border:1px solid var(--border-color);box-shadow:0 20px 60px var(--shadow)}.add-existing-athlete-modal .modal-header{align-items:center;background:rgba(0,0,0,.2);border-bottom:1px solid hsla(0,0%,100%,.1);display:flex;justify-content:space-between;padding:24px 28px}.add-existing-athlete-modal .modal-header-content{align-items:center;display:flex;gap:16px}.add-existing-athlete-modal .modal-icon{font-size:32px;line-height:1}.add-existing-athlete-modal .modal-title-section h2{color:#fff;font-size:24px;font-weight:600;margin:0}.add-existing-athlete-modal .modal-description{color:hsla(0,0%,100%,.7);font-size:14px;margin:4px 0 0}.add-existing-athlete-modal .modal-close-button{background:none;border:none;color:hsla(0,0%,100%,.7);cursor:pointer;font-size:24px;line-height:1;padding:4px 8px;transition:color .2s ease}.add-existing-athlete-modal .modal-close-button:hover{color:#fff}.add-existing-athlete-modal .modal-body{flex:1 1;overflow-y:auto;padding:32px 28px}.code-loading{align-items:center;display:flex;flex-direction:column;gap:16px;justify-content:center;padding:60px 20px}.spinner{border:4px solid hsla(0,0%,100%,.1);border-top-color:#4a90e2}.code-loading p{color:hsla(0,0%,100%,.7);font-size:16px;margin:0}.code-display-container{align-items:center;display:flex;flex-direction:column;gap:24px}.code-display{gap:12px}.code-digit,.code-display{align-items:center;display:flex;justify-content:center}.code-digit{background:hsla(0,0%,100%,.1);border:2px solid hsla(0,0%,100%,.2);border-radius:12px;color:#fff;font-family:Courier New,monospace;font-size:36px;font-weight:700;height:80px;letter-spacing:0;width:60px}.copy-button{background:linear-gradient(135deg,#4a90e2,#357abd);border:none;border-radius:8px;box-shadow:0 4px 12px rgba(74,144,226,.3);color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:12px 32px;transition:all .2s ease}.copy-button:hover{box-shadow:0 6px 16px rgba(74,144,226,.4);transform:translateY(-2px)}.copy-button:active{transform:translateY(0)}.copy-button.copied{background:linear-gradient(135deg,#06d6a0,#05b385);box-shadow:0 4px 12px rgba(6,214,160,.3)}.code-info{background:hsla(0,0%,100%,.05);border-left:4px solid #4a90e2;border-radius:8px;margin-top:32px;padding:20px}.expiration-text{color:hsla(0,0%,100%,.9);font-size:14px;margin:0 0 12px}.expiration-text strong{color:#fff;font-weight:600}.instruction-text{color:hsla(0,0%,100%,.7);font-size:14px;line-height:1.6;margin:0}.error-message{border-left:4px solid #ef4444}.error-text{color:hsla(0,0%,100%,.9);font-size:14px}.add-existing-athlete-modal .modal-footer{background:rgba(0,0,0,.2);border-top:1px solid hsla(0,0%,100%,.1);display:flex;gap:12px;justify-content:flex-end;padding:20px 28px}.add-existing-athlete-modal .modal-button{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;padding:10px 24px;transition:all .2s ease}.add-existing-athlete-modal .modal-button.secondary{background:hsla(0,0%,100%,.1);color:hsla(0,0%,100%,.9)}.add-existing-athlete-modal .modal-button.secondary:hover{background:hsla(0,0%,100%,.15)}.add-existing-athlete-modal .modal-button.primary{background:linear-gradient(135deg,#4a90e2,#357abd);color:#fff}.add-existing-athlete-modal .modal-button.primary:hover{box-shadow:0 4px 12px rgba(74,144,226,.3);transform:translateY(-1px)}@media (max-width:640px){.add-existing-athlete-modal{max-width:none;width:95%}.code-digit{font-size:32px;height:70px;width:50px}.code-display{gap:8px}}.modal-overlay{z-index:1000003}.athlete-onboarding-modal{animation:slideIn .3s ease-out;background:linear-gradient(135deg,#2a2a2a,#1a2332);border:1px solid hsla(0,0%,100%,.1);border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,.5);display:flex;flex-direction:column;left:50%;max-height:90vh;max-width:1400px;overflow:hidden;position:fixed;top:50%;transform:translate(-50%,-50%);width:90%;z-index:1000004}[data-theme=light] .athlete-onboarding-modal{background:var(--bg-modal);border:1px solid var(--border-color);box-shadow:0 20px 60px var(--shadow)}.step-indicator{align-items:center;background:rgba(0,0,0,.2);border-bottom:1px solid hsla(0,0%,100%,.1);display:flex;justify-content:center;padding:20px 28px}.step-indicator-container{align-items:center;display:flex;flex:1 1;max-width:600px}.step-indicator-dot{align-items:center;border-radius:50%;display:flex;flex-shrink:0;font-size:14px;font-weight:600;height:36px;justify-content:center;transition:all .3s ease;width:36px}.step-indicator-dot.pending{background:hsla(0,0%,100%,.1);border:2px solid hsla(0,0%,100%,.2);color:hsla(0,0%,100%,.4)}.step-indicator-dot.active{background:linear-gradient(135deg,#4a90e2,#357abd);border:2px solid rgba(74,144,226,.5);box-shadow:0 4px 12px rgba(74,144,226,.3);color:#fff}.step-indicator-dot.completed{background:linear-gradient(135deg,#06d6a0,#05b385);border:2px solid rgba(6,214,160,.5);color:#fff}.step-indicator-line{background:hsla(0,0%,100%,.1);flex:1 1;height:2px;margin:0 8px;transition:all .3s ease}.step-indicator-line.completed{background:linear-gradient(90deg,#06d6a0,rgba(6,214,160,.3))}.error-message{align-items:flex-start;background:rgba(255,59,48,.15);border:1px solid rgba(255,59,48,.4);color:#ff3b30;margin-bottom:20px;padding:16px}.error-icon{margin-top:2px}.error-title{font-size:15px}.error-text{color:rgba(255,59,48,.9);line-height:1.5}.validation-warning{align-items:flex-start;background:rgba(255,193,7,.15);border:1px solid rgba(255,193,7,.4);border-radius:8px;color:#ffc107;display:flex;font-size:14px;gap:12px;margin-bottom:20px;padding:16px}.warning-icon{font-size:20px;margin-top:2px}.warning-content{flex:1 1}.warning-title{color:#ffc107;font-size:15px;font-weight:600;margin-bottom:8px}.warning-text{color:rgba(255,193,7,.9);line-height:1.8}.warning-text>div{margin-bottom:4px}.modal-button.skip{background:hsla(0,0%,100%,.05);border:1px solid hsla(0,0%,100%,.1);color:#b0b0b0}.modal-button.skip:hover:not(:disabled){background:hsla(0,0%,100%,.1);border-color:hsla(0,0%,100%,.2)}.button-spinner{display:inline-block;margin-right:8px}.add-existing-athlete-section{align-items:center;background:rgba(74,144,226,.05);border-bottom:1px solid hsla(0,0%,100%,.1);display:flex;flex-direction:column;gap:8px;padding:20px 28px}.add-existing-athlete-button{align-items:center;background:linear-gradient(135deg,#4a90e2,#357abd);border:none;border-radius:8px;box-shadow:0 4px 12px rgba(74,144,226,.3);color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:10px 20px;transition:all .2s ease}.add-existing-athlete-button:hover{box-shadow:0 6px 16px rgba(74,144,226,.4);transform:translateY(-2px)}.add-existing-athlete-button:active{transform:translateY(0)}.add-existing-athlete-button .button-icon{font-size:16px}.add-existing-athlete-hint{color:hsla(0,0%,100%,.6);font-size:12px;margin:0;text-align:center}.coach-filter{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:hsla(0,0%,100%,.05);border:1px solid var(--border-color-light);border-radius:6px;color:var(--text-primary);cursor:pointer;display:flex;font-size:14px;gap:8px;margin-left:8px;padding:8px 12px;transition:all .3s ease;-webkit-user-select:none;user-select:none}[data-theme=light] .coach-filter{background:rgba(0,0,0,.02)}.coach-filter:hover{background:hsla(0,0%,100%,.1);border-color:var(--border-color-light);transform:translateY(-1px)}[data-theme=light] .coach-filter:hover{background:rgba(0,0,0,.05)}.coach-dropdown{animation:dropdownSlide .2s ease;background:rgba(30,30,30,.98);background:var(--bg-dropdown,rgba(30,30,30,.98));border:1px solid var(--border-color-light);border-radius:8px;box-shadow:0 8px 24px var(--shadow);max-height:60vh;max-width:300px;min-width:200px;overflow-x:hidden;overflow-y:auto;position:fixed;transform:translateZ(0);will-change:transform;z-index:99999999}[data-theme=light] .coach-dropdown{background:var(--bg-card);box-shadow:0 8px 24px var(--shadow)}.coach-dropdown::-webkit-scrollbar{width:8px}.coach-dropdown::-webkit-scrollbar-track{background:hsla(0,0%,100%,.05);border-radius:4px;margin:4px 0}.coach-dropdown::-webkit-scrollbar-thumb{background:rgba(0,123,255,.5);border-radius:4px;-webkit-transition:background .3s ease;transition:background .3s ease}.coach-dropdown::-webkit-scrollbar-thumb:hover{background:rgba(0,123,255,.7)}.coach-dropdown{scrollbar-color:rgba(0,123,255,.5) hsla(0,0%,100%,.05);scrollbar-width:thin}.coach-option{align-items:center;color:var(--text-primary);cursor:pointer;display:flex;font-size:14px;justify-content:space-between;padding:12px 16px;transition:all .2s ease}.coach-option:hover{background:hsla(0,0%,100%,.1)}[data-theme=light] .coach-option:hover{background:rgba(0,0,0,.05)}.coach-option.selected{background:rgba(0,123,255,.2);color:var(--accent-primary);font-weight:500}[data-theme=light] .coach-option.selected{background:rgba(0,123,255,.1)}.modal-overlay{animation:fadeIn .2s ease;background:rgba(0,0,0,.6)}.add-coach-modal{animation:slideUp .3s ease;background:var(--bg-card);border:1px solid var(--border-color-light);border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.3);display:flex;flex-direction:column;max-height:90vh;max-width:500px;width:90%}.modal-header{align-items:center;border-bottom:1px solid var(--border-color-light)}.modal-header-content{align-items:center;gap:14px}.modal-icon{font-size:28px}.modal-title-section h2{color:var(--text-primary);font-size:22px;font-weight:600;line-height:1.3;margin:0}.modal-description{color:var(--text-secondary);line-height:1.4;margin:6px 0 0}.modal-close-button{color:var(--text-secondary);padding:4px;transition:color .2s}.modal-close-button:hover{color:var(--text-primary)}.modal-body{padding:28px 24px}.add-coach-modal .form-group{display:flex;flex-direction:column;gap:2px;margin-bottom:28px;position:relative}.add-coach-modal .form-group:last-of-type{margin-bottom:0}.add-coach-modal .form-group label{color:var(--text-primary);display:block!important;font-size:14px;font-weight:500;line-height:1.5;margin:0!important;order:1;padding:0!important;position:static!important}.add-coach-modal .required{color:var(--accent-primary);margin-left:2px}.add-coach-modal .form-group input{background:var(--bg-tertiary);border:1px solid var(--border-color-light);border-radius:6px;box-sizing:border-box;color:var(--text-primary);display:block;font-size:14px;line-height:1.5;margin:0!important;order:2;padding:12px 14px;position:relative;transition:all .2s;width:100%}.add-coach-modal .form-group input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px rgba(0,123,255,.1);outline:none}.add-coach-modal .form-group input.error{border-color:#ef4444}.add-coach-modal .form-group input:disabled{cursor:not-allowed;opacity:.6}.add-coach-modal .field-error{color:#ef4444;display:block;font-size:12px;line-height:1.4;margin-top:6px;order:3}.error-message{background:rgba(239,68,68,.1);border-left:3px solid #ef4444;border-radius:6px;display:flex;gap:12px;margin-bottom:24px;padding:14px 18px}.error-icon{font-size:20px}.error-content{flex:1 1}.error-title{color:#ef4444;font-size:14px;font-weight:600;margin-bottom:4px}.error-text{color:#dc2626;font-size:13px}.modal-footer{border-top:1px solid var(--border-color-light);padding:24px 28px}.modal-button{align-items:center;border-radius:6px;display:flex;font-weight:500;gap:8px;min-height:40px;transition:all .2s}.modal-button:disabled{cursor:not-allowed;opacity:.6}.modal-button.secondary{background:var(--bg-tertiary);border:1px solid var(--border-color-light);color:var(--text-primary)}.modal-button.secondary:hover:not(:disabled){background:var(--bg-secondary)}.modal-button.primary{background:linear-gradient(135deg,var(--accent-primary) 0,var(--accent-hover) 100%)}.modal-button.primary:hover:not(:disabled){background:linear-gradient(135deg,var(--accent-hover) 0,#004085 100%);box-shadow:0 4px 12px rgba(0,123,255,.3);transform:translateY(-1px)}.button-spinner{animation:spin .6s linear infinite;height:14px;width:14px}.workout-chart{border-radius:0;margin:0;overflow:hidden;padding:0;width:100%}.workout-chart svg{height:100%;width:100%}.workout-card-menu{flex-shrink:0;position:relative}.workout-card-menu__button{align-items:center;background:none;border:none;border-radius:4px;color:#666;cursor:pointer;display:flex;font-size:20px;justify-content:center;line-height:1;padding:4px 8px;transition:all .2s;-webkit-user-select:none;user-select:none}.workout-card-menu__button:hover{background:hsla(0,0%,100%,.05);color:#999}[data-theme=light] .workout-card-menu__button:hover{background:rgba(0,0,0,.05)}.workout-card-menu__dropdown{animation:menuFadeIn .15s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--bg-dropdown);border:1px solid var(--border-color-light);border-radius:8px;box-shadow:0 12px 32px var(--shadow),0 2px 8px var(--shadow-light),inset 0 1px 0 hsla(0,0%,100%,.05);min-width:160px;overflow:visible;position:absolute;right:0;top:calc(100% + 4px);z-index:1000001}[data-theme=light] .workout-card-menu__dropdown{background:var(--bg-card);box-shadow:0 8px 24px var(--shadow)}.workout-card-menu__item{align-items:center;background:none;border:none;color:var(--text-primary);cursor:pointer;display:flex;font-size:14px;font-weight:400;gap:12px;padding:10px 16px;text-align:left;transition:all .15s;white-space:nowrap;width:100%}.workout-card-menu__item:first-child{border-radius:8px 8px 0 0}.workout-card-menu__item:last-child{border-radius:0 0 8px 8px}.workout-card-menu__item:hover{background:hsla(0,0%,100%,.1)}[data-theme=light] .workout-card-menu__item:hover{background:var(--bg-hover-overlay-dark)}.workout-card-menu__item:active{background:hsla(0,0%,100%,.15)}[data-theme=light] .workout-card-menu__item:active{background:var(--bg-hover-overlay)}.workout-card-menu__item--delete{border-top:1px solid hsla(0,0%,100%,.1);color:#f44;margin-top:4px}.workout-card-menu__item--delete:hover{background:rgba(255,68,68,.15)}.workout-card-menu__icon{align-items:center;display:inline-flex;flex-shrink:0;font-size:16px;justify-content:center;width:20px}.workout-card-menu__label{flex:1 1}.workout-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#2d3645;border:1px solid hsla(0,0%,100%,.1);border-left:4px solid var(--accent-primary);border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.3);cursor:pointer;margin-bottom:4px;overflow:visible;padding:12px;position:relative;transition:all .3s ease;z-index:1}[data-theme=light] .workout-card{background:linear-gradient(135deg,#e8f4f8,#d1ecf1);border:1px solid rgba(102,126,234,.2);box-shadow:0 2px 8px rgba(102,126,234,.2)}.workout-card.menu-active{box-shadow:0 12px 32px rgba(0,123,255,.4);overflow:visible!important;z-index:1000001}.workout-card:hover{border-left-color:#0056b3;box-shadow:0 8px 24px rgba(0,123,255,.2);transform:translateY(-2px)}.workout-card.draggable{cursor:grab}.workout-card.dragging{cursor:grabbing;opacity:.5}.drag-handle{color:#666;cursor:grab;font-size:14px;padding:4px;-webkit-user-select:none;user-select:none}.drag-handle:hover{color:#999}.workout-card.completed:not(.has-activity){background:linear-gradient(135deg,#2d4a2d,#1a3a1a);border-left-color:#28a745;box-shadow:0 4px 12px rgba(40,167,69,.2)}[data-theme=light] .workout-card.completed:not(.has-activity){background:linear-gradient(135deg,#d4edda,#c3e6cb);border-left-color:#28a745;box-shadow:0 4px 12px rgba(40,167,69,.15)}.workout-card.completed.has-activity{border-left-color:#28a745;box-shadow:0 4px 12px rgba(40,167,69,.2)}.workout-card.event{background:linear-gradient(135deg,#4a3d1a,#2d2a1a);border-left-color:#ffc107;box-shadow:0 4px 12px rgba(255,193,7,.2)}[data-theme=light] .workout-card.event{background:linear-gradient(135deg,#fff3cd,#ffeaa7);border-left-color:#ffc107;box-shadow:0 4px 12px rgba(255,193,7,.15)}.workout-card.activity{background:linear-gradient(135deg,#1a3a4a,#1a2d3a);border-left-color:#17a2b8;border-left-width:6px;box-shadow:0 4px 12px rgba(23,162,184,.3)}[data-theme=light] .workout-card.activity{background:linear-gradient(135deg,#d1ecf1,#bee5eb);border-left-color:#17a2b8;box-shadow:0 4px 12px rgba(23,162,184,.2)}.workout-card.activity:before{color:#17a2b8;content:"📊 UNMATCHED ACTIVITY";display:block;font-size:9px;font-weight:700;letter-spacing:.5px;margin-bottom:4px}.workout-header{align-items:center;display:flex;gap:8px;margin-bottom:8px;overflow:visible;position:relative}.workout-icon{filter:brightness(0) invert(1) opacity(.85);flex-shrink:0;height:24px;object-fit:contain;width:24px}[data-theme=light] .workout-icon{filter:brightness(0) opacity(.9)}.workout-title{color:#fff;flex:1 1;font-size:13px;font-weight:600;line-height:1.3}[data-theme=light] .workout-title{color:#1a1a1a}.workout-menu{background:none;border:none;border-radius:3px;color:#a0a0a0;cursor:pointer;font-size:14px;line-height:1;padding:2px 4px;transition:all .2s}.workout-menu:hover{background-color:hsla(0,0%,100%,.1);color:var(--text-primary)}[data-theme=light] .workout-menu:hover{background-color:rgba(0,0,0,.05)}.workout-content{margin-bottom:8px}.workout-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#a0a0a0;display:-webkit-box;font-size:11px;line-height:1.4;margin-bottom:8px;overflow:hidden}[data-theme=light] .workout-description{color:#1a1a1a}.workout-description b,.workout-description strong{color:#fff;font-weight:600}[data-theme=light] .workout-description b,[data-theme=light] .workout-description strong{color:#1a1a1a}.workout-description em,.workout-description i{font-style:italic}.workout-description u{text-decoration:underline}.workout-metrics{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:8px}.metric{align-items:center}.metric-value{font-size:12px}[data-theme=light] .metric-value{line-height:1.2}.metric-label{color:#a0a0a0;font-size:9px;margin-top:2px}.workout-goals{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:8px}.goal-tag{background:linear-gradient(135deg,var(--accent-primary) 0,var(--accent-hover) 100%);border-radius:10px;box-shadow:0 2px 4px rgba(0,123,255,.2);color:#fff;font-size:9px;font-weight:500;letter-spacing:.3px;padding:2px 6px;text-transform:uppercase}.goal-more{color:#a0a0a0;font-size:9px;font-style:italic;padding:2px 0}.completion-indicator{background:linear-gradient(135deg,#28a745,#1e7e34);border-radius:12px;box-shadow:0 2px 4px rgba(40,167,69,.2);color:#fff;font-size:10px;font-weight:600;margin-top:4px;padding:4px 8px;text-align:center}.matched-activity-info{background:rgba(0,0,0,.2);border:1px solid hsla(0,0%,100%,.1);border-radius:6px;margin-top:8px;padding:6px 8px}[data-theme=light] .matched-activity-info{background:rgba(0,0,0,.03);border:1px solid rgba(0,0,0,.1)}.activity-badge{align-items:center;color:#fff;display:flex;font-size:11px;font-weight:600;gap:4px;margin-bottom:4px}[data-theme=light] .activity-badge{color:#1a1a1a}.activity-details{color:#a0a0a0;font-size:10px;line-height:1.3}.workout-card.has-activity{border-left-width:6px}.workout-card.has-activity.fulfillment-excellent{background:linear-gradient(135deg,#1b4d3e,#153a2f)!important;box-shadow:0 4px 12px rgba(40,167,69,.2)}[data-theme=light] .workout-card.has-activity.fulfillment-excellent{background:linear-gradient(135deg,#a8e6cf,#8da)!important;box-shadow:0 4px 12px rgba(40,167,69,.3)}.workout-card.has-activity.fulfillment-good{background:linear-gradient(135deg,#4d4d1b,#3a3a15)!important;box-shadow:0 4px 12px rgba(255,193,7,.2)}[data-theme=light] .workout-card.has-activity.fulfillment-good{background:linear-gradient(135deg,#ffeaa7,#fdcb6e)!important;box-shadow:0 4px 12px rgba(255,193,7,.3)}.workout-card.has-activity.fulfillment-poor{background:linear-gradient(135deg,#4d1b1b,#3a1515)!important;box-shadow:0 4px 12px rgba(220,53,69,.2)}[data-theme=light] .workout-card.has-activity.fulfillment-poor{background:linear-gradient(135deg,#ffb3ba,#ff9aa2)!important;box-shadow:0 4px 12px rgba(220,53,69,.3)}.workout-chart-container{border-top:1px solid hsla(0,0%,100%,.05);margin-top:8px;overflow:visible}[data-theme=light] .workout-chart-container{border-top:1px solid rgba(0,0,0,.1)}@media (max-width:768px){.workout-card{padding:8px}.workout-metrics{gap:8px}.metric{min-width:40px}.metric-value{font-size:11px}.metric-label{font-size:8px}}.event-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--bg-card);border:1px solid var(--border-color);border-left:4px solid gold;border-radius:8px;box-shadow:0 4px 12px var(--shadow-light);cursor:pointer;margin-bottom:4px;overflow:visible;padding:12px;position:relative;transition:all .3s ease}[data-theme=light] .event-card{box-shadow:0 2px 8px var(--shadow-light)}.event-card:hover{border-left-color:#ffb000;box-shadow:0 8px 24px rgba(255,193,7,.2);transform:translateY(-2px)}.event-card.draggable{cursor:grab}.event-card.dragging{cursor:grabbing;opacity:.5}.event-header{align-items:flex-start;display:flex;gap:10px;margin-bottom:10px}.event-icon-container{align-items:center;background:hsla(0,0%,100%,.05);border-radius:6px;display:flex;flex-shrink:0;height:32px;justify-content:center;width:32px}[data-theme=light] .event-icon-container{background:rgba(0,0,0,.02)}.event-icon{font-size:20px}.event-title-section{flex:1 1;min-width:0}.event-title{word-wrap:break-word;color:var(--text-primary);font-size:14px;font-weight:600;line-height:1.3;margin-bottom:4px}.event-countdown{background:rgba(255,215,0,.1);border-radius:4px;color:gold;display:inline-block;font-size:11px;font-weight:500;margin-top:2px;padding:2px 6px}.event-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#a0a0a0;display:-webkit-box;font-size:11px;line-height:1.4;margin-bottom:10px;overflow:hidden}.event-description b,.event-description strong{color:var(--text-primary);font-weight:600}.event-description em,.event-description i{font-style:italic}.event-description u{text-decoration:underline}.event-details{border-top:1px solid hsla(0,0%,100%,.05);display:flex;flex-wrap:wrap;gap:14px;padding-top:8px}[data-theme=light] .event-details{border-top:1px solid var(--border-color)}.event-detail-item{align-items:center;display:flex;flex-direction:column;min-width:60px}.event-detail-value{color:var(--text-primary);font-size:13px;font-weight:600;line-height:1.2;margin-bottom:2px;text-align:center}.event-detail-label{color:#a0a0a0;font-size:9px;letter-spacing:.5px;text-align:center;text-transform:uppercase}@media (max-width:768px){.event-card{padding:10px}.event-header{gap:8px}.event-icon-container{height:28px;width:28px}.event-icon{font-size:18px}.event-title{font-size:13px}.event-countdown{font-size:10px}.event-details{gap:10px}.event-detail-item{min-width:50px}.event-detail-value{font-size:12px}.event-detail-label{font-size:8px}}.note-card-menu{flex-shrink:0;position:relative}.note-card-menu__button{align-items:center;background:none;border:none;border-radius:4px;color:var(--text-secondary);cursor:pointer;display:flex;font-size:20px;justify-content:center;line-height:1;padding:4px 8px;transition:all .2s;-webkit-user-select:none;user-select:none}.note-card-menu__button:hover{background:hsla(0,0%,100%,.05);color:var(--text-primary)}[data-theme=light] .note-card-menu__button:hover{background:rgba(0,0,0,.05)}.note-card-menu__dropdown{animation:menuFadeIn .15s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--bg-dropdown);border:1px solid var(--border-color-light);border-radius:8px;box-shadow:0 12px 32px var(--shadow),0 2px 8px var(--shadow-light),inset 0 1px 0 hsla(0,0%,100%,.05);min-width:160px;overflow:visible;position:absolute;right:0;top:calc(100% + 4px);z-index:1000001}[data-theme=light] .note-card-menu__dropdown{background:var(--bg-card);box-shadow:0 8px 24px var(--shadow)}.note-card-menu__item{align-items:center;background:none;border:none;color:var(--text-primary);cursor:pointer;display:flex;font-size:14px;font-weight:400;gap:12px;padding:10px 16px;text-align:left;transition:all .15s;white-space:nowrap;width:100%}.note-card-menu__item:first-child{border-radius:8px 8px 0 0}.note-card-menu__item:last-child{border-radius:0 0 8px 8px}.note-card-menu__item:hover{background:hsla(0,0%,100%,.1)}.note-card-menu__item:active{background:hsla(0,0%,100%,.15)}.note-card-menu__item--delete{border-top:1px solid hsla(0,0%,100%,.1);color:#f44;margin-top:4px}.note-card-menu__item--delete:hover{background:rgba(255,68,68,.15)}.note-card-menu__icon{font-size:16px;line-height:1}.note-card-menu__label{flex:1 1}.note-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--bg-card);border:1px solid var(--border-color);border-left:4px solid #9b59b6;border-radius:8px;box-shadow:0 4px 12px var(--shadow-light);cursor:pointer;margin-bottom:4px;overflow:visible;padding:12px;position:relative;transition:all .3s ease;z-index:1}[data-theme=light] .note-card{background:var(--bg-card);box-shadow:0 2px 8px var(--shadow-light)}.note-card.menu-active{box-shadow:0 12px 32px rgba(155,89,182,.4);position:relative;z-index:1000001}.day-cell:has(.note-card.menu-active){overflow:visible;z-index:0}.note-card:hover{border-left-color:#8e44ad;box-shadow:0 8px 24px rgba(155,89,182,.3);transform:translateY(-2px)}.note-card.draggable{cursor:grab}.note-card.dragging{cursor:grabbing;opacity:.5}.note-header{align-items:center;display:flex;gap:8px;margin-bottom:8px;overflow:visible;position:relative}.note-icon-wrapper{align-items:center;display:flex;flex-shrink:0;height:24px;justify-content:center;width:24px}.note-icon{font-size:18px;line-height:1}.note-title{color:var(--text-primary);flex:1 1;font-size:14px;font-weight:600;line-height:1.4;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.note-content{padding-left:32px}.note-description{-webkit-line-clamp:4;-webkit-box-orient:vertical;word-wrap:break-word;color:var(--text-secondary);display:-webkit-box;font-size:13px;line-height:1.5;margin:0;overflow:hidden;text-overflow:ellipsis}.availability-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--bg-card);border:1px solid var(--border-color);border-left:4px solid #50c878;border-radius:8px;box-shadow:0 4px 12px var(--shadow-light);cursor:pointer;margin-bottom:4px;overflow:visible;padding:12px;position:relative;transition:all .3s ease}[data-theme=light] .availability-card{box-shadow:0 2px 8px var(--shadow-light)}.availability-card:hover{box-shadow:0 8px 24px rgba(80,200,120,.2);transform:translateY(-2px)}.availability-header{align-items:flex-start;display:flex;gap:10px;margin-bottom:10px}.availability-icon-container{align-items:center;background:hsla(0,0%,100%,.05);border-radius:6px;display:flex;flex-shrink:0;height:32px;justify-content:center;width:32px}[data-theme=light] .availability-icon-container{background:rgba(0,0,0,.02)}.availability-icon{font-size:20px}.availability-title-section{flex:1 1;min-width:0}.availability-title{word-wrap:break-word;color:var(--text-primary);font-size:14px;font-weight:600;line-height:1.3;margin-bottom:4px}.availability-details{border-top:1px solid hsla(0,0%,100%,.05);display:flex;flex-wrap:wrap;gap:14px;padding-top:8px}[data-theme=light] .availability-details{border-top:1px solid var(--border-color)}.availability-detail-item{align-items:center;display:flex;flex-direction:column;min-width:60px}.availability-detail-value{color:var(--text-primary);font-size:13px;font-weight:600;line-height:1.2;margin-bottom:2px;text-align:center}.availability-detail-label{color:#a0a0a0;font-size:9px;letter-spacing:.5px;text-align:center;text-transform:uppercase}@media (max-width:768px){.availability-card{padding:10px}.availability-header{gap:8px}.availability-icon-container{height:28px;width:28px}.availability-icon{font-size:18px}.availability-title{font-size:13px}.availability-details{gap:10px}.availability-detail-item{min-width:50px}.availability-detail-value{font-size:12px}.availability-detail-label{font-size:8px}}.day-action-modal-overlay{align-items:center;animation:fadeIn .2s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:rgba(0,0,0,.75);bottom:0;display:flex;isolation:isolate;justify-content:center;left:0;padding:20px;pointer-events:auto;position:fixed;right:0;top:0;z-index:1000000}.day-action-modal{animation:slideUp .3s ease-out;background:var(--bg-modal);border:1px solid var(--border-color);border-radius:16px;box-shadow:0 20px 60px var(--shadow);max-height:90vh;max-width:700px;overflow-y:auto;padding:32px;position:relative;transition:background .3s ease,border-color .3s ease;width:100%}.day-action-modal__close{align-items:center;background:hsla(0,0%,100%,.05);border:1px solid var(--border-color);border-radius:8px;color:var(--text-tertiary);cursor:pointer;display:flex;font-size:24px;height:40px;justify-content:center;line-height:1;padding:0;position:absolute;right:20px;top:20px;transition:all .2s ease;width:40px}[data-theme=light] .day-action-modal__close{background:rgba(0,0,0,.02)}.day-action-modal__close:hover{background:rgba(255,59,48,.2);border-color:rgba(255,59,48,.4);color:#ff3b30}.day-action-modal__title{color:var(--text-primary);font-size:24px;font-weight:700;letter-spacing:.3px;margin:0 0 24px}.day-action-modal__section{margin-bottom:32px}.day-action-modal__section:last-child{margin-bottom:0}.day-action-modal__section-title{color:var(--text-primary);font-size:16px;font-weight:600;letter-spacing:.2px;margin:0 0 16px}.day-action-modal__grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(4,1fr)}.day-action-modal__button{align-items:center;background:hsla(0,0%,100%,.05);border:1px solid var(--border-color);border-radius:8px;cursor:pointer;display:flex;flex-direction:column;font-family:inherit;gap:8px;min-height:80px;padding:16px 12px;transition:all .2s ease}[data-theme=light] .day-action-modal__button{background:rgba(0,0,0,.02)}.day-action-modal__button:hover{background:rgba(74,144,226,.15);border-color:rgba(74,144,226,.4);box-shadow:0 4px 12px rgba(74,144,226,.3);transform:translateY(-2px)}.day-action-modal__button:active{transform:translateY(0)}.day-action-modal__icon{font-size:28px;line-height:1}.day-action-modal__label{color:var(--text-primary);font-size:14px;font-weight:500;line-height:1.2;text-align:center}@media (max-width:768px){.day-action-modal{padding:24px}.day-action-modal__grid{grid-template-columns:repeat(3,1fr)}.day-action-modal__title{font-size:20px}}@media (max-width:480px){.day-action-modal__grid{grid-template-columns:repeat(2,1fr)}}.day-action-modal::-webkit-scrollbar{width:8px}.day-action-modal::-webkit-scrollbar-track{background:hsla(0,0%,100%,.05);border-radius:4px}[data-theme=light] .day-action-modal::-webkit-scrollbar-track{background:rgba(0,0,0,.02)}.day-action-modal::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.2);border-radius:4px}[data-theme=light] .day-action-modal::-webkit-scrollbar-thumb{background:rgba(0,0,0,.15)}.day-action-modal::-webkit-scrollbar-thumb:hover{background:hsla(0,0%,100%,.3)}[data-theme=light] .day-action-modal::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.25)}.note-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:rgba(0,0,0,.7);bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:9999999!important}.note-modal-content{background:linear-gradient(135deg,#2d3645,#1a2332);border:1px solid hsla(0,0%,100%,.1);border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.5);max-height:90vh;max-width:500px;overflow-y:auto;position:relative;width:100%;z-index:9999999!important}[data-theme=light] .note-modal-content{background:var(--bg-modal);border:1px solid var(--border-color);box-shadow:0 20px 60px var(--shadow)}.note-modal-header{align-items:center;border-bottom:1px solid hsla(0,0%,100%,.1);display:flex;justify-content:space-between;padding:20px 24px}.note-modal-header h2{color:#fff;font-size:20px;font-weight:600;margin:0}.note-modal-close-btn{align-items:center;background:none;border:none;border-radius:4px;color:hsla(0,0%,100%,.6);cursor:pointer;display:flex;font-size:24px;height:32px;justify-content:center;padding:0;transition:all .2s ease;width:32px}.note-modal-close-btn:hover{background:hsla(0,0%,100%,.1);color:#fff}.note-modal-form{padding:24px}.note-modal-error{background:rgba(220,53,69,.2);border:1px solid rgba(220,53,69,.4);border-radius:6px;color:#ff6b6b;font-size:14px;padding:12px}.note-form-group,.note-modal-error{margin-bottom:20px}.note-form-group label{color:hsla(0,0%,100%,.9);display:block;font-size:14px;font-weight:500;margin-bottom:18px}.note-form-group input,.note-form-group textarea{background:hsla(0,0%,100%,.05);border:1px solid hsla(0,0%,100%,.1);border-radius:6px;color:#fff;font-family:inherit;font-size:14px;padding:10px 12px;transition:all .2s ease;width:100%}.note-form-group input:focus,.note-form-group textarea:focus{background:hsla(0,0%,100%,.08);border-color:#9b59b6;box-shadow:0 0 0 3px rgba(155,89,182,.1);outline:none}.note-form-group input:disabled,.note-form-group textarea:disabled{cursor:not-allowed;opacity:.5}.note-form-group textarea{line-height:1.5;min-height:100px;resize:vertical}.note-form-group input::placeholder,.note-form-group textarea::placeholder{color:hsla(0,0%,100%,.4)}.note-modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.note-btn{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;min-width:100px;padding:10px 20px;transition:all .2s ease}.note-btn:disabled{cursor:not-allowed;opacity:.5}.note-btn-cancel{background:hsla(0,0%,100%,.1);color:#fff}.note-btn-cancel:hover:not(:disabled){background:hsla(0,0%,100%,.15)}.note-btn-primary{background:linear-gradient(135deg,#9b59b6,#8e44ad);box-shadow:0 4px 12px rgba(155,89,182,.3);color:#fff}.note-btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#8e44ad,#7d3c98);box-shadow:0 6px 16px rgba(155,89,182,.4);transform:translateY(-1px)}.note-modal-content::-webkit-scrollbar{width:8px}.note-modal-content::-webkit-scrollbar-track{background:hsla(0,0%,100%,.05);border-radius:0 12px 12px 0}.note-modal-content::-webkit-scrollbar-thumb{background:rgba(155,89,182,.5);border-radius:4px}.note-modal-content::-webkit-scrollbar-thumb:hover{background:rgba(155,89,182,.7)}input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;filter:invert(1)}.note-form-group select{background:hsla(0,0%,100%,.1);border:1px solid hsla(0,0%,100%,.2);border-radius:8px;box-sizing:border-box;color:#fff;cursor:pointer;font-family:inherit;font-size:14px;height:48px;line-height:20px;padding:14px 16px;transition:all .2s ease;width:100%}.note-form-group select:focus{background:hsla(0,0%,100%,.15);border-color:#4a90e2;box-shadow:0 0 0 3px rgba(74,144,226,.1);outline:none}.note-form-group select:disabled{cursor:not-allowed;opacity:.5}.note-form-group select option{background:#2a2a2a;color:#fff}.availability-radio-group{display:flex;flex-direction:column;gap:12px;margin-top:8px}.availability-radio-label{align-items:center;border-radius:6px;cursor:pointer;display:flex;gap:12px;padding:10px;transition:background .2s ease}.availability-radio-label input[type=radio]{accent-color:#9b59b6;cursor:pointer;flex-shrink:0;height:18px;margin-right:8px;width:18px}.availability-radio-label:hover{background:hsla(0,0%,100%,.05)}.availability-radio-label span{color:hsla(0,0%,100%,.9);font-size:14px;-webkit-user-select:none;user-select:none}[data-theme=light] .availability-radio-label span{color:var(--text-primary)}.time-input-group{display:flex;gap:16px;margin-top:8px}.time-input-wrapper{display:flex;flex:1 1;flex-direction:column;gap:6px}.time-input-wrapper label{color:hsla(0,0%,100%,.7);font-size:12px;font-weight:500}[data-theme=light] .time-input-wrapper label{color:var(--text-secondary)}.time-select{background:hsla(0,0%,100%,.05);border:1px solid hsla(0,0%,100%,.1);border-radius:6px;color:#fff;cursor:pointer;font-family:inherit;font-size:14px;padding:10px 12px;transition:all .2s ease;width:100%}.time-select:focus{background:hsla(0,0%,100%,.08);border-color:#9b59b6;box-shadow:0 0 0 3px rgba(155,89,182,.1);outline:none}.time-select:disabled{cursor:not-allowed;opacity:.5}[data-theme=light] .time-select{background:rgba(0,0,0,.02);border-color:var(--border-color);color:var(--text-primary)}.sports-checkbox-group{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,1fr);margin-top:8px}.sports-checkbox-label{align-items:center;border-radius:6px;cursor:pointer;display:flex;gap:12px;padding:10px;transition:background .2s ease}.sports-checkbox-label:hover{background:hsla(0,0%,100%,.05)}.sports-checkbox-label input[type=checkbox]{accent-color:#9b59b6;cursor:pointer;flex-shrink:0;height:18px;margin-right:8px;width:18px}.sports-checkbox-label span{color:hsla(0,0%,100%,.9);font-size:14px;-webkit-user-select:none;user-select:none}[data-theme=light] .sports-checkbox-label span{color:var(--text-primary)}@media (max-width:480px){.time-input-group{flex-direction:column;gap:12px}.sports-checkbox-group{grid-template-columns:1fr}}.workout-table-container{box-sizing:border-box;color:#fff;height:100%;max-height:350px}.workout-table,.workout-table-container{display:flex;flex-direction:column;max-width:100%;width:100%}.workout-table{flex:1 1;gap:20px;min-height:0;overflow-x:hidden;overflow-y:auto;padding-bottom:20px}.workout-table::-webkit-scrollbar{width:6px}.workout-table::-webkit-scrollbar-track{background:hsla(0,0%,100%,.05);border-radius:3px}.workout-table::-webkit-scrollbar-thumb{background:rgba(96,210,247,.3);border-radius:3px}.workout-table::-webkit-scrollbar-thumb:hover{background:rgba(96,210,247,.5)}.table-set{background:hsla(0,0%,100%,.05);border:1px solid hsla(0,0%,100%,.1);border-radius:12px;box-sizing:border-box;flex-shrink:0;overflow:visible;width:100%}[data-theme=light] .table-set{background:rgba(0,0,0,.02);border:1px solid var(--border-color)}.set-header{background:rgba(96,210,247,.1);border-bottom:1px solid hsla(0,0%,100%,.1);color:#60d2f7;font-size:14px;font-weight:700;letter-spacing:.5px;padding:12px 16px;text-transform:uppercase}.table-row-header{grid-gap:6px;background:linear-gradient(135deg,#2a2a2a,#1a2332);border-bottom:2px solid rgba(96,210,247,.3);border-radius:12px 12px 0 0;box-shadow:0 2px 8px rgba(0,0,0,.3);box-sizing:border-box;display:grid;flex-shrink:0;gap:6px;grid-template-columns:1.5fr 1.8fr .7fr .7fr 1fr .7fr .7fr 1fr;min-width:0;padding:10px 12px;position:-webkit-sticky;position:sticky;top:0;width:100%;z-index:10}.table-row-header.no-zones{grid-template-columns:1.5fr 1.8fr .7fr .7fr 1fr 1fr}.table-row-header.with-media{grid-template-columns:1.5fr 1.8fr .7fr .7fr 1fr .7fr .7fr .8fr 1fr}.table-row-header.no-zones.with-media{grid-template-columns:1.5fr 1.8fr .7fr .7fr 1fr .8fr 1fr}[data-theme=light] .table-row-header{background:var(--bg-calendar-header);box-shadow:0 2px 8px var(--shadow-light)}.header-cell{align-items:center;color:rgba(96,210,247,.8);display:flex;font-size:10px;font-weight:700;justify-content:center;letter-spacing:.5px;padding-top:0;text-align:center;text-transform:uppercase}.header-cell.duration-distance-header-cell{align-items:center;display:flex;flex-direction:row;gap:6px;justify-content:center}.distance-unit-select{-webkit-appearance:none;appearance:none;background:hsla(0,0%,100%,.08);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 12 12'%3E%3Cpath fill='%2360d2f7' d='M6 9 1 4h10z'/%3E%3C/svg%3E");background-position:right 3px center;background-repeat:no-repeat;border:1px solid hsla(0,0%,100%,.2);border-radius:4px;color:#60d2f7;cursor:pointer;font-family:inherit;font-size:9px;font-weight:600;padding:2px 16px 2px 4px;transition:all .2s}.distance-unit-select:hover{background-color:hsla(0,0%,100%,.12);border-color:rgba(96,210,247,.4)}.distance-unit-select:focus{background-color:hsla(0,0%,100%,.15);border-color:#60d2f7;box-shadow:0 0 0 2px rgba(96,210,247,.2);outline:none}.distance-unit-select option{background:#1a1a1a;color:#fff}.table-row{grid-gap:16px;border-bottom:1px solid hsla(0,0%,100%,.05);box-sizing:border-box;display:grid;flex-shrink:0;gap:16px;grid-template-columns:1fr auto;padding:14px 16px;transition:background .2s;width:100%}.table-row.editable{align-items:center;gap:6px;grid-template-columns:1.5fr 1.8fr .7fr .7fr 1fr .7fr .7fr 1fr;min-height:56px;min-width:0;padding:10px 12px}.table-row.editable.no-zones{grid-template-columns:1.5fr 1.8fr .7fr .7fr 1fr 1fr}.table-row.editable.with-media{grid-template-columns:1.5fr 1.8fr .7fr .7fr 1fr .7fr .7fr .8fr 1fr}.table-row.editable.no-zones.with-media{grid-template-columns:1.5fr 1.8fr .7fr .7fr 1fr .8fr 1fr}.table-row:last-child{border-bottom:none}.row-cell{align-items:flex-start;display:flex;flex-direction:column;gap:4px;min-width:0}.row-cell.description{color:#fff;font-size:15px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table-row.editable .row-cell.description{align-self:center;min-width:0;white-space:nowrap}.row-cell.intensity{color:#60d2f7;font-size:14px;font-weight:600;text-align:right;white-space:nowrap}.no-intervals{align-items:center;color:hsla(0,0%,100%,.6);display:flex;flex-direction:column;justify-content:center;min-height:200px;padding:40px 20px;text-align:center}.no-intervals-message{color:hsla(0,0%,100%,.6);font-size:16px;margin-bottom:20px}.add-first-interval-button{background:rgba(96,210,247,.1);border:2px solid rgba(96,210,247,.3);border-radius:8px;color:#60d2f7;cursor:pointer;font-family:inherit;font-size:14px;font-weight:600;padding:12px 24px;transition:all .2s}.add-first-interval-button:hover{background:rgba(96,210,247,.2);border-color:#60d2f7;transform:scale(1.05)}.add-first-interval-button:active{transform:scale(.95)}.row-cell.editable-cell{align-items:center;display:flex;min-width:0}.interval-input{background:hsla(0,0%,100%,.08);border:1px solid hsla(0,0%,100%,.2);border-radius:6px;color:#60d2f7;font-family:inherit;font-size:13px;font-weight:600;padding:6px 8px;text-align:center;transition:all .2s;width:100%}[data-theme=light] .interval-input{background:rgba(0,0,0,.02);border:1px solid var(--border-color)}.interval-input:focus{background:hsla(0,0%,100%,.15);border-color:#60d2f7;box-shadow:0 0 0 3px rgba(96,210,247,.2);outline:none}.interval-input:hover:not(:focus){background:hsla(0,0%,100%,.12);border-color:rgba(96,210,247,.4)}.interval-input::placeholder{color:rgba(96,210,247,.3)}.interval-input::-webkit-inner-spin-button,.interval-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.interval-input[type=number]{-moz-appearance:textfield}.zone-input-wrapper{align-items:center;display:flex;gap:4px;position:relative;width:100%}.interval-input.zone-error{background:rgba(255,68,68,.1);border-color:#f44}.interval-input.zone-error:focus{border-color:#f44;box-shadow:0 0 0 3px rgba(255,68,68,.2)}.zone-error-message{color:#f44;cursor:help;flex-shrink:0;font-size:14px}.zone-error-tooltip{background:#f44;border-radius:4px;bottom:100%;box-shadow:0 2px 8px rgba(0,0,0,.3);color:#fff;font-size:12px;margin-bottom:4px;opacity:.95;padding:6px 10px;pointer-events:none;white-space:nowrap;z-index:1000}.zone-error-tooltip,.zone-error-tooltip:after{left:50%;position:absolute;transform:translateX(-50%)}.zone-error-tooltip:after{border:4px solid transparent;border-top-color:#f44;content:"";top:100%}.interval-input.name-input{font-size:13px;font-weight:500;text-align:left}.row-cell.media-cell{align-items:center;display:flex;justify-content:center;min-width:80px;padding:8px}.media-icons-container{align-items:center;display:flex;gap:8px}.media-icon-button{align-items:center;background:hsla(0,0%,100%,.08);border:1px solid hsla(0,0%,100%,.1);border-radius:6px;cursor:pointer;display:flex;font-size:18px;height:36px;justify-content:center;min-width:36px;padding:6px 10px;transition:all .2s ease}.media-icon-button:hover{background:rgba(96,210,247,.2);border-color:#60d2f7;transform:scale(1.1)}.media-icon-button.has-media{background:rgba(96,210,247,.15);border-color:#60d2f7}.media-icon-button.has-media:hover{background:rgba(255,77,77,.2);border-color:#ff4d4d}[data-theme=light] .media-icon-button{background:rgba(0,0,0,.05);border-color:var(--border-color)}[data-theme=light] .media-icon-button.has-media,[data-theme=light] .media-icon-button:hover{background:rgba(96,210,247,.1);border-color:#60d2f7}[data-theme=light] .media-icon-button.has-media:hover{background:rgba(255,77,77,.1);border-color:#ff4d4d}.row-cell.action-cell{flex-direction:row;flex-wrap:nowrap;gap:4px;min-width:0}.delete-interval-button,.row-cell.action-cell{align-items:center;display:flex;justify-content:center}.delete-interval-button{background:rgba(255,59,48,.1);border:1px solid rgba(255,59,48,.3);border-radius:6px;color:#ff3b30;cursor:pointer;flex-shrink:0;font-size:14px;font-weight:700;height:28px;padding:0;transition:all .2s;width:28px}.delete-interval-button:hover{background:rgba(255,59,48,.2);border-color:#ff3b30;transform:scale(1.05)}.delete-interval-button:active{transform:scale(.95)}.add-interval-button-inline{align-items:center;background:rgba(96,210,247,.1);border:1px solid rgba(96,210,247,.3);border-radius:6px;color:#60d2f7;cursor:pointer;display:flex;flex-shrink:0;font-size:16px;font-weight:700;height:28px;justify-content:center;padding:0;transition:all .2s;width:28px}.add-interval-button-inline:hover{background:rgba(96,210,247,.2);border-color:#60d2f7;transform:scale(1.05)}.add-interval-button-inline:active{transform:scale(.95)}.expand-interval-button{align-items:center;background:rgba(96,210,247,.1);border:1px solid rgba(96,210,247,.3);border-radius:6px;color:#60d2f7;cursor:pointer;display:flex;flex-shrink:0;font-size:11px;font-weight:700;height:28px;justify-content:center;padding:0;transition:all .2s;width:28px}.expand-interval-button:hover{background:rgba(96,210,247,.2);border-color:#60d2f7;transform:scale(1.05)}.expand-interval-button:active{transform:scale(.95)}.duration-distance-cell{align-items:center;display:flex;flex-direction:row;gap:4px;min-width:0}.duration-distance-toggle{display:flex;flex-direction:column;flex-shrink:0;gap:2px}.toggle-btn{align-items:center;background:hsla(0,0%,100%,.05);border:1px solid hsla(0,0%,100%,.2);border-radius:4px;color:hsla(0,0%,100%,.5);cursor:pointer;display:flex;font-size:11px;height:24px;justify-content:center;padding:0;transition:all .2s;width:24px}.toggle-btn:hover{background:hsla(0,0%,100%,.08);border-color:rgba(96,210,247,.4)}.toggle-btn.active{background:rgba(96,210,247,.2);border-color:#60d2f7;color:#60d2f7}.interval-select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 12 12'%3E%3Cpath fill='%2360d2f7' d='M6 9 1 4h10z'/%3E%3C/svg%3E");background-position:right 6px center;background-repeat:no-repeat;cursor:pointer;font-size:12px;padding-left:6px;padding-right:24px}.interval-select:hover{background-color:hsla(0,0%,100%,.12)}.interval-select option{background:#1a1a1a;color:#fff}.interval-advanced-options{background:rgba(96,210,247,.05);border:1px solid rgba(96,210,247,.2);border-radius:8px;display:flex;flex-direction:column;gap:12px;grid-column:1/-1;margin-top:8px;padding:16px}.advanced-row{align-items:center;display:flex;gap:12px}.advanced-label{color:rgba(96,210,247,.8);font-size:12px;font-weight:600;letter-spacing:.5px;min-width:80px;text-transform:uppercase}.advanced-inputs{align-items:center;display:flex;flex:1 1;gap:8px}.interval-input.small{flex-shrink:0;width:80px}.input-separator{color:hsla(0,0%,100%,.5);font-size:12px;font-weight:600}@media (max-width:768px){.table-row{gap:8px;grid-template-columns:1fr}.table-row.editable{gap:12px;grid-template-columns:1fr}.table-row-header{gap:8px;grid-template-columns:1fr}.header-cell{justify-content:flex-start}.row-cell.intensity{font-size:13px;text-align:left}.row-cell.description{font-size:13px}.interval-input{font-size:14px;padding:8px 10px}}.interval-media-overlay{align-items:center;background-color:rgba(0,0,0,.7);bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000001}.interval-media-modal{background:#fff;border-radius:12px;box-shadow:0 10px 40px rgba(0,0,0,.3);display:flex;flex-direction:column;max-height:90vh;max-width:800px;overflow:hidden;padding:0;transition:transform .2s ease;width:90%}.interval-media-modal.dragging{border:2px dashed #007bff;transform:scale(1.01)}.interval-media-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:20px 24px}.interval-media-header h3{color:#333;font-size:20px;font-weight:600;margin:0}.interval-media-content{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:24px;justify-content:center;min-height:300px;padding:24px}.interval-media-loading{padding:40px 20px;text-align:center}.interval-media-loading p{color:#666;font-size:16px;margin-top:16px}.spinner{animation:spin 1s linear infinite;border:3px solid #f3f3f3;border-radius:50%;border-top-color:#007bff;height:40px;margin:0 auto;width:40px}.interval-media-display{max-height:60vh;overflow:auto}.interval-media-display,.media-image-container{align-items:center;display:flex;justify-content:center;width:100%}.media-image,.media-image-container{max-width:100%}.media-image{border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.15);max-height:60vh;object-fit:contain}.media-video-container{align-items:center;display:flex;justify-content:center;max-width:100%;width:100%}.media-video{border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.15);max-height:60vh;max-width:100%}.interval-media-empty{padding:40px 20px;text-align:center}.empty-media-icon{font-size:64px;margin-bottom:16px;opacity:.5}.empty-media-text{color:#666;font-size:18px;margin:0}.interval-media-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.delete-media-button,.upload-media-button{border:none;border-radius:8px;cursor:pointer;font-size:16px;font-weight:600;padding:12px 24px;transition:all .2s ease}.upload-media-button{background-color:#007bff;color:#fff}.upload-media-button:hover:not(:disabled){background-color:#0056b3;box-shadow:0 4px 8px rgba(0,123,255,.3);transform:translateY(-1px)}.delete-media-button{background-color:#dc3545;color:#fff}.delete-media-button:hover:not(:disabled){background-color:#c82333;box-shadow:0 4px 8px rgba(220,53,69,.3);transform:translateY(-1px)}.delete-media-button:disabled,.upload-media-button:disabled{cursor:not-allowed;opacity:.5;transform:none}.interval-media-dropzone{background-color:#fafafa;border:2px dashed #d0d0d0;border-radius:8px;padding:40px 20px;text-align:center;transition:all .2s ease;width:100%}.interval-media-modal.dragging .interval-media-dropzone{background-color:#f0f7ff;border-color:#007bff}.dropzone-text{color:#333;font-size:16px;font-weight:500;margin:0 0 8px}.dropzone-subtext{color:#666;font-size:14px;margin:8px 0}.dropzone-info{color:#999;font-size:12px;margin:16px 0 0}.modal-close-button{background:none;border:none;border-radius:4px;color:#999;height:32px;width:32px}.modal-close-button:hover:not(:disabled){background-color:#f0f0f0;color:#333}.modal-close-button:disabled{cursor:not-allowed;opacity:.5}.workout-detail-menu{flex-shrink:0;position:relative}.workout-detail-menu__button{align-items:center;background:hsla(0,0%,100%,.1);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;height:32px;justify-content:center;line-height:1;padding:6px;transition:all .2s;-webkit-user-select:none;user-select:none;width:32px}.workout-detail-menu__button:hover{background:hsla(0,0%,100%,.2)}.workout-detail-menu__button svg{opacity:.9}.workout-detail-menu__dropdown{animation:menuFadeIn .15s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:rgba(35,35,35,.98);border:1px solid hsla(0,0%,100%,.2);border-radius:8px;box-shadow:0 12px 32px rgba(0,0,0,.85),0 2px 8px rgba(0,0,0,.5),inset 0 1px 0 hsla(0,0%,100%,.05);min-width:180px;overflow:visible;position:absolute;right:0;top:calc(100% + 8px);z-index:1000001}[data-theme=light] .workout-detail-menu__dropdown{background:var(--bg-dropdown);border:1px solid var(--border-color-light);box-shadow:0 8px 24px var(--shadow)}.workout-detail-menu__item{align-items:center;background:none;border:none;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:12px;padding:10px 16px;text-align:left;transition:all .15s;white-space:nowrap;width:100%}.workout-detail-menu__item:first-child{border-radius:8px 8px 0 0}.workout-detail-menu__item:last-child{border-radius:0 0 8px 8px}.workout-detail-menu__item:hover{background:hsla(0,0%,100%,.1)}[data-theme=light] .workout-detail-menu__item:hover{background:var(--bg-hover-overlay-dark)}.workout-detail-menu__item:active{background:hsla(0,0%,100%,.15)}[data-theme=light] .workout-detail-menu__item:active{background:var(--bg-hover-overlay)}.workout-detail-menu__item--delete{border-top:1px solid hsla(0,0%,100%,.1);color:#f44;margin-top:4px}.workout-detail-menu__item--delete:hover{background:rgba(255,68,68,.15)}.workout-detail-menu__icon{align-items:center;display:inline-flex;flex-shrink:0;font-size:16px;justify-content:center;width:20px}.workout-detail-menu__label{flex:1 1}.toast{align-items:center;animation:slideIn .3s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1a1a1a;border-radius:12px;box-shadow:0 8px 32px rgba(0,0,0,.4),0 0 0 1px hsla(0,0%,100%,.1);display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;gap:12px;isolation:isolate;max-width:500px;min-width:300px;padding:16px 20px;position:fixed;right:24px;top:24px;z-index:1000004!important}[data-theme=light] .toast{background:var(--bg-dropdown);box-shadow:0 8px 32px var(--shadow),0 0 0 1px var(--border-color-light)}.toast-icon{align-items:center;border-radius:50%;display:flex;flex-shrink:0;font-size:14px;font-weight:700;height:24px;justify-content:center;width:24px}.toast-success .toast-icon{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.toast-error .toast-icon{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.toast-info .toast-icon{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.toast-message{color:#fff;flex:1 1;font-size:14px;font-weight:500;line-height:1.5}.toast-close{align-items:center;background:transparent;border:none;color:hsla(0,0%,100%,.5);cursor:pointer;display:flex;flex-shrink:0;font-size:16px;height:20px;justify-content:center;padding:0;transition:all .2s ease;width:20px}.toast-close:hover{color:hsla(0,0%,100%,.9);transform:scale(1.1)}.toast-close:active{transform:scale(.95)}.toast-success{border-left:3px solid #10b981}.toast-error{border-left:3px solid #ef4444}.toast-info{border-left:3px solid #3b82f6}.toast.toast-exit{animation:slideOut .3s ease-in forwards}@keyframes slideOut{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(400px)}}@media (max-width:640px){.toast{left:16px;max-width:none;min-width:auto;right:16px;top:16px}@keyframes slideIn{0%{opacity:0;transform:translateY(-100px)}to{opacity:1;transform:translateY(0)}}@keyframes slideOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-100px)}}}.progress-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:rgba(0,0,0,.55);display:flex;inset:0;justify-content:center;position:fixed;z-index:10000}.progress-modal-card{align-items:center;animation:progressModalIn .25s ease-out;background:#1c1c1e;border:1px solid hsla(0,0%,100%,.08);border-radius:14px;box-shadow:0 24px 64px rgba(0,0,0,.45);display:flex;flex-direction:column;gap:14px;max-width:400px;min-width:320px;padding:32px 36px}@keyframes progressModalIn{0%{opacity:0;transform:scale(.95) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.progress-modal-icon{align-items:center;display:flex;height:52px;justify-content:center;width:52px}.progress-modal-spinner{height:44px;position:relative;width:44px}.progress-modal-ring{animation:progressModalSpin .9s linear infinite;border:3px solid hsla(0,0%,100%,.08);border-radius:50%;border-top-color:#60a5fa;height:100%;width:100%}@keyframes progressModalSpin{to{transform:rotate(1turn)}}.progress-modal-check{background:rgba(52,199,89,.15);color:#34c759}.progress-modal-check,.progress-modal-fail{align-items:center;animation:progressModalPop .3s ease-out;border-radius:50%;display:flex;font-size:22px;font-weight:700;height:44px;justify-content:center;width:44px}.progress-modal-fail{background:rgba(255,69,58,.15);color:#ff453a}@keyframes progressModalPop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}.progress-modal-title{color:#f0f0f0;font-size:16px;font-weight:600;letter-spacing:-.2px;margin:0}.progress-modal-message{color:#8e8e93;font-size:13px;margin:0;text-align:center}.progress-modal-bar-track{background:hsla(0,0%,100%,.06);border-radius:2px;height:4px;margin-top:2px;overflow:hidden;width:100%}.progress-modal-bar-fill{background:#60a5fa;border-radius:2px;height:100%;transition:width .4s ease}.progress-modal-details{border-top:1px solid hsla(0,0%,100%,.06);display:flex;flex-direction:column;gap:6px;margin-top:4px;padding-top:12px;width:100%}.progress-modal-detail-row{align-items:center;display:flex;font-size:12px;justify-content:space-between}.progress-modal-detail-label{color:#6e6e73;font-weight:500}.progress-modal-detail-value{color:silver;font-weight:500}[data-theme=light] .progress-modal-card{background:#fff;border-color:#e5e7eb;box-shadow:0 24px 64px rgba(0,0,0,.15)}[data-theme=light] .progress-modal-title{color:#1f2937}[data-theme=light] .progress-modal-message{color:#6b7280}[data-theme=light] .progress-modal-bar-track{background:#e5e7eb}[data-theme=light] .progress-modal-detail-label{color:#9ca3af}[data-theme=light] .progress-modal-detail-value{color:#374151}[data-theme=light] .progress-modal-ring{border-color:#3b82f6 #e5e7eb #e5e7eb}[data-theme=light] .progress-modal-details{border-top-color:#e5e7eb}.modal-overlay{align-items:center;display:flex;justify-content:center}.workout-detail-modal{animation:fadeIn .15s ease-out;background:linear-gradient(135deg,#2a2a2a,#1a2332);border:1px solid hsla(0,0%,100%,.1);border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,.5);display:flex;flex-direction:column;left:50%;max-height:90vh;max-width:1400px;overflow:hidden;position:fixed;top:50%;transform:translate(-50%,-50%);width:95%;z-index:100001}[data-theme=light] .workout-detail-modal{background:var(--bg-modal);border:1px solid var(--border-color);box-shadow:0 20px 60px var(--shadow)}.workout-detail-modal .modal-header{align-items:center;background:linear-gradient(135deg,rgba(74,144,226,.1),transparent);border-bottom:1px solid hsla(0,0%,100%,.1);border-left:4px solid;display:flex;justify-content:space-between;padding:16px 20px}.workout-detail-modal .modal-header-content{align-items:center;display:flex;flex:1 1;gap:16px;min-width:0}.modal-header-actions{gap:8px}.save-template-button{background:linear-gradient(135deg,#4a90e2,#357abd);border:1px solid transparent;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s ease;white-space:nowrap}.save-template-button:hover:not(:disabled){background:linear-gradient(135deg,#357abd,#2a5a8a);box-shadow:0 4px 8px rgba(74,144,226,.3);transform:translateY(-1px)}.save-template-button:active:not(:disabled){transform:translateY(0)}.save-template-button:disabled{background:linear-gradient(135deg,#666,#555);cursor:not-allowed;opacity:.6}[data-theme=light] .save-template-button{background:linear-gradient(135deg,#4a90e2,#357abd);color:#fff}[data-theme=light] .save-template-button:hover:not(:disabled){background:linear-gradient(135deg,#357abd,#2a5a8a)}.workout-detail-modal .modal-icon{filter:brightness(0) invert(1) opacity(.85);height:36px;object-fit:contain;width:36px}.workout-detail-modal .modal-title-section h2{color:#fff;font-size:20px;font-weight:700;margin:0 0 4px}.modal-title-editable{cursor:pointer;-webkit-user-select:none;user-select:none}.title-edit-container{display:flex;flex-direction:column;gap:8px;max-width:400px;width:100%}.modal-title-input{background:hsla(0,0%,100%,.1);border:2px solid;border-radius:4px;color:#fff;font-family:inherit;font-size:1.5rem;font-weight:700;padding:4px 8px;width:100%}.modal-title-input:focus{background:hsla(0,0%,100%,.15);outline:none}.title-edit-actions{display:flex;gap:8px}.title-action-button{font-size:.875rem;padding:4px 12px}.workout-detail-modal .modal-subtitle{color:hsla(0,0%,100%,.6);font-size:12px;font-weight:500}.tags-tab-container{box-sizing:border-box;flex:1 1;min-height:350px;overflow-y:auto;padding:20px;width:100%}.tags-tab-content{display:flex;flex-wrap:wrap;gap:10px}.tags-tab-tag{background:hsla(0,0%,100%,.1);border:1px solid hsla(0,0%,100%,.15);border-radius:16px;color:hsla(0,0%,100%,.9);font-size:13px;font-weight:500;padding:8px 16px;transition:all .2s;white-space:nowrap}.tags-tab-tag:hover{background:hsla(0,0%,100%,.15);border-color:hsla(0,0%,100%,.25);transform:translateY(-1px)}.tags-tab-empty{align-items:center;color:hsla(0,0%,100%,.4);display:flex;font-size:14px;font-style:italic;justify-content:center;min-height:300px}.tags-loading{color:hsla(0,0%,100%,.7);padding:40px;text-align:center}.tags-section{margin-bottom:24px}.tags-section-title{color:hsla(0,0%,100%,.9);font-size:14px;font-weight:600;letter-spacing:.5px;margin:0 0 12px;text-transform:uppercase}.tags-list{display:flex;flex-wrap:wrap}.tag-item,.tags-list{gap:8px;pointer-events:auto}.tag-item{align-items:center;background:rgba(74,144,226,.2);border:1px solid rgba(74,144,226,.4);border-radius:16px;color:#fff;display:inline-flex;font-weight:500;padding:8px 14px;position:relative;transition:all .2s ease}.tag-item:hover{background:rgba(74,144,226,.3);border-color:rgba(74,144,226,.6)}.tag-item-clickable{cursor:pointer;pointer-events:auto;position:relative;-webkit-user-select:none;user-select:none;z-index:1}.tag-item-clickable:hover{background:rgba(74,144,226,.35);border-color:rgba(74,144,226,.7);box-shadow:0 2px 8px rgba(74,144,226,.3);transform:translateY(-1px)}.tag-item-clickable:active{box-shadow:0 1px 4px rgba(74,144,226,.2);transform:translateY(0)}.tag-remove-button{align-items:center;background:transparent;border:none;border-radius:50%;color:hsla(0,0%,100%,.7);cursor:pointer;display:flex;font-size:18px;font-weight:700;height:20px;justify-content:center;line-height:1;padding:0;transition:all .2s ease;width:20px}.tag-remove-button:hover{background:hsla(0,0%,100%,.2);color:#fff}.tag-add-button{background:hsla(0,0%,100%,.05);border:1px dashed hsla(0,0%,100%,.3);cursor:pointer;font-size:14px;min-height:44px;padding:12px 18px}.tag-add-button:hover{background:rgba(74,144,226,.15);border-color:rgba(74,144,226,.5);border-style:solid;box-shadow:0 2px 8px rgba(74,144,226,.2);transform:translateY(-1px)}.tag-add-icon{display:inline-block;font-size:20px;font-weight:700;line-height:1;margin-right:4px;vertical-align:middle}.tag-global-badge{background:hsla(0,0%,100%,.15);border-radius:8px;font-size:10px;font-weight:600;letter-spacing:.5px;padding:2px 6px;text-transform:uppercase}.tags-empty{color:hsla(0,0%,100%,.5);font-size:13px;font-style:italic;padding:20px;text-align:center}.tags-actions{border-top:1px solid hsla(0,0%,100%,.1);display:flex;gap:12px;margin-top:24px;padding-top:20px}.tags-actions .btn-primary,.tags-actions .btn-secondary{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s ease}.tags-actions .btn-primary{background:#4a90e2;color:#fff}.tags-actions .btn-primary:hover:not(:disabled){background:#357abd}.tags-actions .btn-primary:disabled{cursor:not-allowed;opacity:.5}.tags-actions .btn-secondary{background:hsla(0,0%,100%,.1);border:1px solid hsla(0,0%,100%,.2);color:hsla(0,0%,100%,.9)}.tags-actions .btn-secondary:hover:not(:disabled){background:hsla(0,0%,100%,.15)}.form-group{margin-bottom:20px}.date-picker-modal .form-group:first-of-type,.form-group{margin-top:0}.form-group label{color:hsla(0,0%,100%,.9);display:block;font-size:13px;font-weight:500;height:auto;line-height:1.5;margin-bottom:10px;margin-top:0;padding:0}.date-picker-modal .description-form-group{margin-bottom:20px}.date-picker-modal .description-form-group .description-label,.date-picker-modal .tag-name-form-group .tag-name-label{display:block!important;left:auto!important;line-height:1!important;margin-bottom:6px!important;margin-top:0!important;padding-bottom:0!important;position:static!important;top:auto!important;transform:none!important}.date-picker-modal .description-form-group textarea.form-input,.date-picker-modal .tag-name-form-group input.form-input{margin-top:0!important;padding-top:10px!important}.form-input{border-radius:6px;box-sizing:border-box;display:block;font-family:inherit;line-height:1.5;margin:0;min-height:38px;padding:10px 12px;width:100%}.form-input::placeholder{color:hsla(0,0%,100%,.4)}.sport-type-display{background:rgba(74,144,226,.2);border:1px solid rgba(74,144,226,.4);border-radius:6px;color:#fff;cursor:default;font-size:14px;font-weight:600;padding:10px 12px;text-align:center;-webkit-user-select:none;user-select:none}.date-picker-modal .sport-type-display{opacity:.9}.workout-detail-modal .modal-close-button{align-items:center;background:hsla(0,0%,100%,.1);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:20px;height:32px;justify-content:center;transition:all .2s;width:32px}.workout-detail-modal .modal-close-button:hover{background:hsla(0,0%,100%,.2)}.workout-detail-modal .modal-body{flex:1 1;overflow-y:auto;padding:16px 20px}.chart-view{display:flex;flex-direction:column;gap:20px}.workout-chart-large{background:#1a2332;border:1px solid hsla(0,0%,100%,.1);border-radius:12px;overflow:hidden}.no-chart{background:hsla(0,0%,100%,.05);border:1px dashed hsla(0,0%,100%,.2);border-radius:12px;color:hsla(0,0%,100%,.5);font-size:14px;padding:40px 20px;text-align:center}.detail-columns{grid-gap:20px;display:grid;gap:20px;grid-template-columns:2.2fr .8fr;overflow:hidden;width:100%}.detail-columns>*{max-width:100%;min-width:0}.description-column{display:flex;flex-direction:column;gap:0;min-height:400px;overflow:hidden;width:100%}.description-tabs{border-bottom:2px solid hsla(0,0%,100%,.1);display:flex;gap:0;margin-bottom:16px}.description-tab-button{background:transparent;border:none;border-bottom:2px solid transparent;color:hsla(0,0%,100%,.6);cursor:pointer;flex:1 1;font-size:13px;font-weight:600;margin-bottom:-2px;min-width:120px;padding:10px 16px;transition:color .2s,border-color .2s,background .2s;white-space:nowrap}.description-tab-button:hover{background:hsla(0,0%,100%,.03);color:hsla(0,0%,100%,.8)}.description-tab-button.active{background:rgba(96,210,247,.05);border-bottom-color:#60d2f7;color:#60d2f7}.description-edit-container{box-sizing:border-box;display:flex;flex:1 1;flex-direction:column;gap:12px;min-height:350px;width:100%}.description-column .description-text{background:hsla(0,0%,100%,.03);border:1px solid hsla(0,0%,100%,.05);border-radius:8px;box-sizing:border-box;color:hsla(0,0%,100%,.8);flex:1 1;font-size:13px;line-height:1.6;min-height:350px;overflow-x:hidden;overflow-y:auto;padding:8px;white-space:pre-wrap;width:100%}.description-column .description-text.editable{background:hsla(0,0%,100%,.08);border:2px solid rgba(96,210,247,.5);cursor:text;outline:none}.description-column .description-text.editable:focus{background:hsla(0,0%,100%,.1);border-color:#60d2f7}.description-column .description-text.empty{align-items:center;color:hsla(0,0%,100%,.4);display:flex;font-style:italic;justify-content:center}.description-actions{display:flex;gap:8px;justify-content:flex-end}.description-action-button{border:1px solid;border-radius:6px;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;transition:all .2s}.description-action-button.cancel{background:hsla(0,0%,100%,.05);border-color:hsla(0,0%,100%,.2);color:hsla(0,0%,100%,.8)}.description-action-button.cancel:hover:not(:disabled){background:hsla(0,0%,100%,.1)}.description-action-button.save{background:rgba(96,210,247,.2);border-color:#60d2f7;color:#60d2f7}.description-action-button.save:hover:not(:disabled){background:rgba(96,210,247,.3)}.description-action-button:disabled{cursor:not-allowed;opacity:.5}.description-column .description-text b,.description-column .description-text strong{color:hsla(0,0%,100%,.95);font-weight:700}.description-column .description-text em,.description-column .description-text i{font-style:italic}.description-column .description-text u{text-decoration:underline}.description-column .description-text p{margin:0 0 4px}.description-column .description-text p:last-child{margin-bottom:0}.description-column .description-text br{content:"";display:block;margin:2px 0}.stats-column{background:hsla(0,0%,100%,.03);border:1px solid hsla(0,0%,100%,.1);border-radius:12px;display:flex;flex-direction:column;overflow:hidden}.stats-header{grid-gap:6px;background:hsla(0,0%,100%,.05);border-bottom:1px solid hsla(0,0%,100%,.1);display:grid;gap:6px;grid-template-columns:1fr 1fr 1fr;padding:8px 10px}.stats-header-label{letter-spacing:.5px}.stats-header-label,.stats-header-value{color:hsla(0,0%,100%,.8);font-size:9px;font-weight:700;text-transform:uppercase}.stats-header-value{letter-spacing:.3px;text-align:center}.stats-rows{display:flex;flex-direction:column}.stats-row{grid-gap:6px;border-bottom:1px solid hsla(0,0%,100%,.05);display:grid;gap:6px;grid-template-columns:1fr 1fr 1fr;padding:10px;transition:background .2s}.stats-row:last-child{border-bottom:none}.stats-row:hover{background:hsla(0,0%,100%,.02)}.stats-row-label{color:hsla(0,0%,100%,.7);font-size:11px;font-weight:500}.stats-row-value{color:#fff;font-size:12px;font-weight:600;text-align:center}.stats-row-value.empty{color:hsla(0,0%,100%,.3)}.stat-value-clickable{border-radius:4px;cursor:pointer;padding:2px 6px;transition:background-color .15s ease}.stat-value-clickable:hover{background-color:hsla(0,0%,100%,.1)}.stat-edit-input{background:hsla(0,0%,100%,.1);border:1px solid hsla(0,0%,100%,.3);border-radius:4px;color:#fff;font-size:12px;font-weight:600;outline:none;padding:2px 6px;text-align:center;width:70px}.stat-edit-input:focus{background:hsla(0,0%,100%,.15);border-color:hsla(0,0%,100%,.6)}.stat-edit-input::placeholder{color:hsla(0,0%,100%,.3);font-weight:400}.stat-edit-input[type=number]::-webkit-inner-spin-button,.stat-edit-input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.stat-edit-input[type=number]{-moz-appearance:textfield}.workout-properties-section{grid-gap:20px;align-items:start;border-bottom:1px solid hsla(0,0%,100%,.1);display:grid;gap:20px;grid-template-columns:1fr 1fr;margin-bottom:20px;padding:16px 20px}.property-actions{display:flex;gap:10px;grid-column:1/-1;justify-content:flex-end;margin-top:8px}.workout-property{display:flex;flex-direction:column;gap:10px;min-width:0}.workout-property-label{color:hsla(0,0%,100%,.8);font-size:9px;font-weight:700;letter-spacing:.5px;margin:0;overflow:visible;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.workout-property-value{color:#fff;font-size:14px;font-weight:600;line-height:1.4;margin:0}.goal-select-dropdown{-webkit-appearance:none;appearance:none;background:hsla(0,0%,100%,.1);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none'%3E%3Cpath d='m2 4 4 4 4-4' stroke='rgba(255,255,255,0.7)' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;background-size:12px;border:1px solid hsla(0,0%,100%,.2);border-radius:6px;color:#fff;cursor:pointer;font-size:11px;font-weight:600;line-height:1.3;outline:none;padding:6px 28px 6px 10px;transition:all .2s ease;width:100%}.goal-select-dropdown:hover{background-color:hsla(0,0%,100%,.15);border-color:hsla(0,0%,100%,.3)}.goal-select-dropdown:focus{background-color:hsla(0,0%,100%,.15);border-color:#4a90e2;border-color:var(--accent-color,#4a90e2);box-shadow:0 0 0 3px rgba(74,144,226,.25)}.goal-select-dropdown option{background:#2a2a2a;color:#fff;font-size:11px;padding:8px}.goal-select-dropdown:invalid{color:hsla(0,0%,100%,.5)}.goal-select-dropdown:valid{color:#fff}.details-table-container{box-sizing:border-box;flex:1 1;max-height:350px;min-height:300px;overflow:visible;padding-right:8px;width:100%}.interval-actions{border-top:1px solid hsla(0,0%,100%,.1);display:flex;gap:10px;justify-content:flex-end;margin-top:12px;padding-top:12px}.interval-action-button{border:1px solid;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s}.interval-action-button.cancel{background:hsla(0,0%,100%,.05);border-color:hsla(0,0%,100%,.2);color:hsla(0,0%,100%,.8)}.interval-action-button.cancel:hover:not(:disabled){background:hsla(0,0%,100%,.1);border-color:hsla(0,0%,100%,.3)}.interval-action-button.save{background:rgba(96,210,247,.2);border-color:#60d2f7;color:#60d2f7}.interval-action-button.save:hover:not(:disabled){background:rgba(96,210,247,.3);box-shadow:0 4px 12px rgba(96,210,247,.25);transform:translateY(-1px)}.interval-action-button:disabled{cursor:not-allowed;opacity:.5;transform:none}.details-table-container::-webkit-scrollbar{width:6px}.details-table-container::-webkit-scrollbar-track{background:hsla(0,0%,100%,.05);border-radius:3px}.details-table-container::-webkit-scrollbar-thumb{background:rgba(96,210,247,.3);border-radius:3px}.details-table-container::-webkit-scrollbar-thumb:hover{background:rgba(96,210,247,.5)}.no-table{background:hsla(0,0%,100%,.05);border:1px dashed hsla(0,0%,100%,.2);border-radius:12px;color:hsla(0,0%,100%,.5);font-size:14px;min-height:300px;padding:40px 20px;text-align:center}.date-picker-overlay,.no-table{align-items:center;display:flex;justify-content:center}.date-picker-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:rgba(0,0,0,.75);bottom:0;left:0;position:fixed;right:0;top:0;z-index:1000002}.create-tag-modal-overlay{z-index:1000003!important}.date-picker-modal{background:linear-gradient(135deg,#2a2a2a,#1a2332);border:1px solid hsla(0,0%,100%,.1);border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.5);display:flex;flex-direction:column;max-height:90vh;min-height:auto;min-width:400px;overflow-y:auto;padding:28px}.delete-confirm-modal{min-height:auto;padding:20px 28px}.delete-confirm-modal h3{margin-bottom:12px;padding-bottom:12px}.delete-confirm-modal p{margin-bottom:24px}.date-picker-modal h3{color:#fff;display:block;font-size:20px;font-weight:700;line-height:1.2;margin:0;padding:0 0 24px}.create-tag-form-content{box-sizing:border-box;display:flex;flex:1 1;flex-direction:column;gap:0;margin-left:0;margin-top:0;min-height:0;padding-left:0;padding-top:0;width:100%}.date-picker-modal .form-group{margin-bottom:20px}.date-picker-modal .form-group,.date-picker-modal .form-group label,.date-picker-modal .tag-type-form-group{margin-left:0;padding-left:0;text-indent:0}.date-picker-modal .tag-type-form-group{left:0;margin-right:0;margin-top:44px;padding-right:0;position:relative;transform:translateX(0)}.date-picker-modal .form-group:last-of-type{margin-bottom:24px}.date-picker-modal .tag-type-label{color:hsla(0,0%,100%,.9);display:block;font-size:13px;font-weight:500;left:0;margin:0 0 12px;padding:0;position:static;text-indent:0;transform:translateX(0);width:100%;z-index:auto}.date-picker-modal .tag-type-options{flex-direction:column;gap:12px;margin-top:0;padding-left:0!important;padding-right:0!important;width:100%!important}.date-picker-modal .tag-type-option,.date-picker-modal .tag-type-options{display:flex;left:0!important;margin-left:0!important;margin-right:0!important;position:relative;text-indent:0!important;transform:translateX(0)!important}.date-picker-modal .tag-type-option{align-items:flex-start;background:hsla(0,0%,100%,.05);border:2px solid hsla(0,0%,100%,.1);border-radius:8px;box-sizing:border-box;cursor:pointer;overflow:visible;padding:14px;padding-left:14px!important;padding-right:14px!important;pointer-events:auto;transition:all .2s ease;-webkit-user-select:none;user-select:none;width:100%}.date-picker-modal .tag-type-option:hover{background:hsla(0,0%,100%,.08);border-color:hsla(0,0%,100%,.2)}.date-picker-modal .tag-type-option.tag-type-selected{background:rgba(74,144,226,.15);border-color:rgba(74,144,226,.5)}.date-picker-modal .tag-type-option.tag-type-selected .tag-type-name{color:#4a90e2;font-weight:700}.date-picker-modal .tag-type-radio{accent-color:#4a90e2;cursor:pointer;flex-grow:0;flex-shrink:0;height:18px;margin-left:0;margin-right:12px;margin-top:3px;pointer-events:auto;position:relative;width:18px;z-index:10}.date-picker-modal .tag-type-content{word-wrap:break-word;display:flex;flex:1 1;flex-direction:column;gap:6px;margin-left:0;min-width:0;overflow:hidden;padding-left:0}.date-picker-modal .tag-type-name{color:hsla(0,0%,100%,.95);display:block;font-size:14px;font-weight:600;line-height:1.3}.date-picker-modal .tag-type-help{word-wrap:break-word;color:hsla(0,0%,100%,.65);font-size:12px;line-height:1.5;max-width:100%;overflow-wrap:break-word}.date-picker-modal p{color:hsla(0,0%,100%,.7);font-size:14px;margin:0 0 20px}.date-input{background:hsla(0,0%,100%,.1);font-size:16px;margin-bottom:20px;padding:12px;width:100%}.date-input:focus{background:hsla(0,0%,100%,.15);border-color:#60d2f7}.date-picker-actions{display:flex;flex-shrink:0;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:0}.btn-danger,.btn-primary,.btn-secondary{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s}.btn-primary{background:#60d2f7;color:#1a2332}.btn-primary:hover:not(:disabled){background:#50c2e7}.btn-secondary{background:hsla(0,0%,100%,.1);border:1px solid hsla(0,0%,100%,.2);color:#fff}.btn-secondary:hover:not(:disabled){background:hsla(0,0%,100%,.15)}.btn-danger{background:rgba(244,67,54,.2);border:1px solid #f44336;color:#f44336}.btn-danger:hover:not(:disabled){background:rgba(244,67,54,.3)}.btn-danger:disabled,.btn-primary:disabled,.btn-secondary:disabled{cursor:not-allowed;opacity:.5}@media (max-width:968px){.workout-detail-modal{max-height:85vh;width:95%}.detail-columns{gap:20px;grid-template-columns:1fr}.stats-column{order:-1}}@media (max-width:768px){.workout-detail-modal{max-height:90vh;width:95%}.workout-detail-modal .modal-header{padding:12px 16px}.workout-detail-modal .modal-title-section h2{font-size:18px}.workout-detail-modal .modal-body{padding:12px 16px}.detail-columns{grid-template-columns:1fr}.workout-properties-section{gap:20px;grid-template-columns:1fr}.stats-header,.stats-row{gap:8px;grid-template-columns:2fr 1fr 1fr;padding:10px 12px}.stats-row-label,.stats-row-value{font-size:12px}.tab-button{font-size:13px;padding:10px 12px}.date-picker-modal{max-width:400px;min-width:auto;width:90%}}.workout-warning-modal-overlay{align-items:center;background-color:rgba(0,0,0,.5);bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}.workout-warning-modal{background:#fff;border-radius:8px;box-shadow:0 4px 20px rgba(0,0,0,.3);display:flex;flex-direction:column;max-height:80vh;max-width:800px;overflow:hidden;width:90%}.workout-warning-modal-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:20px}.workout-warning-modal-header h2{color:#333;font-size:24px;margin:0}.workout-warning-modal-close{align-items:center;background:none;border:none;border-radius:4px;color:#666;cursor:pointer;display:flex;font-size:28px;height:30px;justify-content:center;padding:0;transition:background-color .2s;width:30px}.workout-warning-modal-close:hover{background-color:#f0f0f0}.workout-warning-modal-content{flex:1 1;overflow-y:auto;padding:20px}.warning-section{margin-bottom:30px}.warning-section:last-child{margin-bottom:0}.warning-section h3{color:#d97706;font-size:18px;font-weight:600;margin:0 0 15px}.warning-list{display:flex;flex-direction:column;gap:15px}.warning-item{background-color:#fff7ed;border-left:4px solid #f59e0b;border-radius:4px;padding:15px}.warning-header{align-items:flex-start;display:flex;gap:10px;justify-content:space-between;margin-bottom:10px}.warning-message{color:#92400e;flex:1 1;font-weight:500;line-height:1.5}.warning-expand-button{align-items:center;background:none;border:none;border-radius:4px;color:#92400e;cursor:pointer;display:flex;flex-shrink:0;font-size:16px;justify-content:center;min-width:30px;padding:4px 8px;transition:background-color .2s}.warning-expand-button:hover{background-color:rgba(146,64,14,.1)}.warning-expanded-details{border-top:1px solid #fde68a;display:flex;flex-direction:column;gap:10px;margin-top:15px;padding-top:15px}.warning-detail-row{color:#666;font-size:14px;line-height:1.6}.warning-detail-row strong{color:#333;margin-right:8px}.warning-details{color:#666;display:flex;flex-wrap:wrap;font-size:14px;gap:15px}.warning-detail-item{align-items:center;display:flex;gap:5px}.warning-detail-item strong{color:#333}.workout-warning-modal-footer{border-top:1px solid #e0e0e0;display:flex;justify-content:flex-end;padding:20px}.btn-primary{background-color:#2563eb;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;font-weight:500;padding:10px 20px;transition:background-color .2s}.btn-primary:hover{background-color:#1d4ed8}.btn-primary:active{background-color:#1e40af}.athlete-row{border-bottom:1px solid hsla(0,0%,100%,.05);display:flex;flex-shrink:0;min-width:-webkit-max-content;min-width:max-content;overflow:visible;position:static;z-index:0}[data-theme=light] .athlete-row{border-bottom:1px solid var(--border-color)}.athlete-row:hover{background-color:hsla(0,0%,100%,.02)}[data-theme=light] .athlete-row:hover{background-color:rgba(0,0,0,.02)}.athlete-info{background:var(--bg-calendar-header)!important;border-right:1px solid hsla(0,0%,100%,.05);box-shadow:2px 0 4px rgba(0,0,0,.1);display:flex;flex-direction:column;flex-shrink:0;gap:8px;left:0!important;max-width:200px;min-width:200px;padding:12px;position:-webkit-sticky!important;position:sticky!important;width:200px;z-index:999}[data-theme=light] .athlete-info{background:var(--bg-calendar-header);border-right:1px solid var(--border-color)}.calendar-container.multi-week-view .athlete-info{position:relative;z-index:0}.athlete-row.no-athlete-column{display:flex}.athlete-row.no-athlete-column .day-cell{background:var(--bg-calendar-header)!important}.athlete-row.no-athlete-column .day-cell,.athlete-row.no-athlete-column .goal-loads-column{flex:0 1 auto;max-width:180px;min-width:180px;width:180px}.athlete-name{align-items:center;color:#d0d0d0;display:flex;font-size:12px!important;gap:6px;letter-spacing:-.2px;line-height:1.2}[data-theme=light] .athlete-name{color:#2c3e50;font-weight:600}.athlete-action-buttons{display:flex;gap:4px;margin-top:4px}.push-workouts-btn{align-items:center;background:transparent;border:1px solid hsla(0,0%,100%,.12);border-radius:4px;color:#d0d0d0;cursor:pointer;display:inline-flex;font-size:10px;font-weight:500;gap:4px;justify-content:center;letter-spacing:.2px;padding:3px 10px;transition:all .2s ease;white-space:nowrap;width:-webkit-fit-content;width:fit-content}.push-workouts-btn:hover:not(:disabled){background:hsla(0,0%,100%,.05);border-color:hsla(0,0%,100%,.25);color:silver}.push-workouts-btn:active:not(:disabled){transform:scale(.97)}.push-workouts-btn.pushing,.push-workouts-btn:disabled{cursor:not-allowed;opacity:.5}[data-theme=light] .push-workouts-btn{border-color:#d1d5db;color:#6b7280}[data-theme=light] .push-workouts-btn:hover:not(:disabled){background:rgba(0,0,0,.03);border-color:#9ca3af;color:#374151}.delete-week-btn{align-items:center;background:transparent;border:1px solid hsla(0,0%,100%,.12);border-radius:4px;color:#d0d0d0;cursor:pointer;display:inline-flex;font-size:10px;font-weight:500;gap:4px;justify-content:center;letter-spacing:.2px;padding:3px 10px;transition:all .2s ease;white-space:nowrap}.delete-week-btn:hover:not(:disabled){background:rgba(224,96,96,.08);border-color:rgba(224,96,96,.4);color:#e06060}.delete-week-btn:active:not(:disabled){transform:scale(.97)}.delete-week-btn.deleting,.delete-week-btn:disabled{cursor:not-allowed;opacity:.5}[data-theme=light] .delete-week-btn{border-color:#d1d5db;color:#6b7280}[data-theme=light] .delete-week-btn:hover:not(:disabled){background:rgba(220,38,38,.05);border-color:rgba(220,38,38,.4);color:#dc2626}.athlete-metrics{display:flex;flex-direction:column;font-size:10px;gap:4px;line-height:1.3;margin-top:4px}.athlete-metrics-loading{color:var(--text-secondary);font-size:10px;margin-top:4px}.athlete-metric-item{display:flex;flex-direction:column;gap:2px}.athlete-metric-label{color:var(--text-secondary);font-size:9px;font-weight:600;letter-spacing:.3px;text-transform:uppercase}.athlete-metric-value{color:var(--text-primary);font-size:10px;font-weight:500}[data-theme=light] .athlete-metric-label{color:#5a6c7d}[data-theme=light] .athlete-metric-value{color:#2c3e50}.athlete-avatar{background:linear-gradient(135deg,var(--accent-primary) 0,var(--accent-hover) 100%);font-size:10px;height:18px;width:18px}.action-btn,.athlete-actions{align-items:center}.action-btn{background-color:var(--bg-card);border:1px solid var(--border-color-light);border-radius:4px;color:var(--text-primary);cursor:pointer;display:flex;font-size:12px;height:24px;justify-content:center;transition:all .2s;width:24px}.action-btn:hover{background-color:var(--bg-tertiary);border-color:var(--border-color-light)}.collect-payment-btn{background-color:var(--bg-card);border:1px solid #28a745;border-radius:4px;color:#28a745;cursor:pointer;font-size:12px;font-weight:500;padding:4px 8px;transition:all .2s}.collect-payment-btn:hover{background-color:#28a745;color:#fff}.day-cell{border-right:1px solid hsla(0,0%,100%,.05);display:flex;flex-direction:column;flex-shrink:0;gap:4px;max-width:180px;min-height:80px;min-width:180px;overflow:visible;padding:8px;position:relative;transition:all .2s;width:180px}.athlete-row>.day-cell,.athlete-row>.day-cell:nth-child(n),.day-cell{background:var(--bg-calendar-header)!important;opacity:1!important}.day-cell:has(.workout-card.menu-active){overflow:visible!important;z-index:1000000}.day-cell.drag-over{background:linear-gradient(135deg,rgba(0,123,255,.15),rgba(0,123,255,.05));border:2px dashed rgba(0,123,255,.6);box-shadow:inset 0 0 20px rgba(0,123,255,.2)}.day-cell.processing{opacity:.6;pointer-events:none}.empty-day{align-items:center;cursor:pointer;display:flex;height:100%;justify-content:center;min-height:60px}.drop-zone-hint{border:2px dashed var(--border-color);color:var(--text-tertiary);font-size:24px}.empty-day:hover .drop-zone-hint{background:rgba(0,123,255,.05);border-color:rgba(0,123,255,.4);color:rgba(0,123,255,.7)}.day-cell.drag-over .drop-zone-hint{background:rgba(0,123,255,.1);border-color:rgba(0,123,255,.8);color:rgba(0,123,255,.9);font-size:14px;font-weight:600}.add-workout-btn{align-items:center;background-color:transparent;border:2px dashed #ced4da;border-radius:8px;color:#6c757d;cursor:pointer;display:flex;height:40px;justify-content:center;transition:all .2s;width:40px}.add-workout-btn:hover{border-color:#007bff;color:#007bff}.add-workout-btn-small{align-items:center;background-color:transparent;border:1px dashed var(--border-color-light);border-radius:6px;color:var(--text-secondary);cursor:pointer;display:flex;font-size:14px;height:48px;justify-content:center;margin-top:4px;transition:all .2s;width:100%}.add-workout-btn-small:hover{background:rgba(0,123,255,.05);border-color:rgba(0,123,255,.6);color:rgba(0,123,255,.9)}.add-icon{font-size:20px;font-weight:700}.goal-loads-column{background:transparent;border-right:1px solid hsla(0,0%,100%,.05);flex-shrink:0;max-width:180px;min-height:80px;min-width:180px;position:relative;width:180px}.goal-loads,.goal-loads-column{display:flex;flex-direction:column;gap:4px;padding:8px}.goal-loads{background-color:hsla(0,0%,100%,.03);border:1px solid hsla(0,0%,100%,.08);border-radius:6px;font-size:10px;line-height:1.4}[data-theme=light] .goal-loads{background-color:rgba(0,0,0,.02);border-color:var(--border-color-light)}.goal-loads-loading{color:var(--text-secondary);font-size:10px;padding:4px 0;text-align:center}.goal-loads-item{display:flex;flex-direction:column;gap:2px}.goal-loads-header{color:var(--text-primary);font-size:11px;font-weight:600;letter-spacing:.5px;margin-bottom:6px;text-transform:uppercase}[data-theme=light] .goal-loads-header{color:#2c3e50}.goal-loads-overall{border-top:1px solid hsla(0,0%,100%,.1);margin-top:4px;padding-top:6px}[data-theme=light] .goal-loads-overall{border-top-color:var(--border-color-light)}.goal-loads-label{color:var(--text-primary);font-size:10px;font-weight:600}.goal-loads-overall .goal-loads-label{font-size:11px;font-weight:700}.goal-loads-value{color:var(--text-secondary);font-size:9px;margin-left:4px;word-break:break-word}[data-theme=light] .goal-loads-label{color:#2c3e50}[data-theme=light] .goal-loads-value{color:#5a6c7d}.current-loads{background-color:hsla(0,0%,100%,.03);border:1px solid hsla(0,0%,100%,.08);border-radius:6px;display:flex;flex-direction:column;font-size:10px;gap:4px;line-height:1.4;margin-top:0;padding:8px}[data-theme=light] .current-loads{background-color:rgba(0,0,0,.02);border-color:var(--border-color-light)}.current-loads-header{color:var(--text-primary);font-size:11px;font-weight:600;letter-spacing:.5px;margin-bottom:6px;text-transform:uppercase}[data-theme=light] .current-loads-header{color:#2c3e50}.current-loads-loading{color:var(--text-secondary);font-size:10px;padding:4px 0;text-align:center}.current-loads-item{display:flex;flex-direction:column;gap:2px}.current-loads-overall{border-top:1px solid hsla(0,0%,100%,.1);margin-top:4px;padding-top:6px}[data-theme=light] .current-loads-overall{border-top-color:var(--border-color-light)}.current-loads-label{color:var(--text-primary);font-size:10px;font-weight:600}.current-loads-overall .current-loads-label{font-size:11px;font-weight:700}.current-loads-value{color:var(--text-secondary);font-size:9px;margin-left:4px;word-break:break-word}[data-theme=light] .current-loads-label{color:#2c3e50}[data-theme=light] .current-loads-value{color:#5a6c7d}.calendar-container{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--bg-calendar-header);border:1px solid var(--border-color);border-radius:12px;border-radius:0;box-shadow:0 8px 32px var(--shadow-light);height:100%;margin:0;overflow:visible;transition:background .3s ease,border-color .3s ease}.calendar-container,.calendar-grid{display:flex;flex-direction:column;position:relative;z-index:0}.calendar-grid{background:transparent;flex:1 1;margin-top:0;min-height:0;overflow-x:auto;overflow-y:auto;padding-top:0}.calendar-grid::-webkit-scrollbar{height:8px;width:8px}.calendar-grid::-webkit-scrollbar-track{background:hsla(0,0%,100%,.05);border-radius:4px}.calendar-grid::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.2);border-radius:4px}.calendar-grid::-webkit-scrollbar-thumb:hover{background:hsla(0,0%,100%,.3)}.calendar-header-row{background:var(--bg-calendar-header);border-bottom:2px solid var(--border-color);display:flex;flex-shrink:0;margin-top:0;min-width:-webkit-max-content;min-width:max-content;position:-webkit-sticky;position:sticky;top:0;transition:background .3s ease,border-color .3s ease;z-index:999}.calendar-container.multi-week-view .calendar-header-row{position:relative;top:0;z-index:0}.athlete-column-header{align-items:center;background:var(--bg-calendar-header)!important;border-right:1px solid var(--border-color);box-shadow:2px 0 4px rgba(0,0,0,.1);color:var(--text-primary);display:flex;flex-shrink:0;font-weight:600;left:0!important;max-width:200px;min-width:200px;padding:16px;position:-webkit-sticky!important;position:sticky!important;width:200px;z-index:1000}.single-athlete-view .athlete-column-header{display:none}.single-athlete-view .calendar-header-row{display:flex;width:100%}.single-athlete-view .day-column-header{background:var(--bg-calendar-header)!important}.single-athlete-view .day-column-header,.single-athlete-view .goal-column-header{flex:0 1 auto;max-width:180px;min-width:180px;width:180px}.day-column-header{background:var(--bg-calendar-header)!important;background-attachment:local!important;border-right:1px solid hsla(0,0%,100%,.1);flex-shrink:0;max-width:180px;min-width:180px;opacity:1!important;padding:16px 8px;width:180px}.calendar-header-row>.day-column-header,.calendar-header-row>.day-column-header:nth-child(n){background:var(--bg-calendar-header)!important;opacity:1!important}.goal-column-header{background:transparent;border-right:1px solid hsla(0,0%,100%,.1);color:var(--text-primary);flex-shrink:0;max-width:180px;min-width:180px;padding:16px 8px;text-align:center;width:180px}.day-name,.goal-column-header{font-size:12px;font-weight:600}.day-name{color:var(--text-tertiary);margin-bottom:4px}[data-theme=light] .day-name{color:#5a6c7d}.day-number{align-items:center;border-radius:50%;color:var(--text-primary);display:flex;font-size:18px;font-weight:700;height:32px;justify-content:center;margin:0 auto;width:32px}[data-theme=light] .day-number{color:#2c3e50}.day-number.today{background:linear-gradient(135deg,#007bff,#0056b3);box-shadow:0 4px 12px rgba(0,123,255,.3);color:#fff}.athlete-rows{display:flex;flex-direction:column;min-width:-webkit-max-content;min-width:max-content;overflow:visible}.loading-row{align-items:center;color:var(--text-tertiary);display:flex;grid-column:1/-1;justify-content:center;padding:40px}.loading-row .loading-spinner{animation:spin 1s linear infinite;border:2px solid #e3e3e3;border-radius:50%;border-top-color:#007bff;height:20px;margin-right:12px;width:20px}.pagination-container{align-items:center;background:transparent;border-top:1px solid var(--border-color);display:flex;flex-shrink:0;justify-content:space-between;padding:16px 20px}.pagination-info{align-items:center;display:flex;gap:8px}.pagination-info,.per-page-select{color:var(--text-primary);font-size:14px}.per-page-select{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:hsla(0,0%,100%,.05);border:1px solid var(--border-color-light);border-radius:4px;padding:4px 8px}[data-theme=light] .per-page-select{background:rgba(0,0,0,.02)}.pagination-controls{display:flex;gap:4px}.pagination-btn{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:hsla(0,0%,100%,.05);border:1px solid var(--border-color-light);border-radius:6px;color:var(--text-primary);cursor:pointer;font-size:14px;padding:8px 12px;transition:all .3s ease}[data-theme=light] .pagination-btn{background:rgba(0,0,0,.02)}.pagination-btn:hover:not(:disabled){background:hsla(0,0%,100%,.1);border-color:var(--border-color-light);transform:translateY(-1px)}[data-theme=light] .pagination-btn:hover:not(:disabled){background:rgba(0,0,0,.05)}.pagination-btn:disabled{cursor:not-allowed;opacity:.3}.multi-week-container{background:transparent;flex:1 1;overflow-x:hidden;overflow-y:auto;padding:0}.multi-week-container::-webkit-scrollbar{width:8px}.multi-week-container::-webkit-scrollbar-track{background:hsla(0,0%,100%,.05);border-radius:4px}.multi-week-container::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.2);border-radius:4px}.multi-week-container::-webkit-scrollbar-thumb:hover{background:hsla(0,0%,100%,.3)}.week-section{border-bottom:2px solid var(--border-color);margin-bottom:24px}.week-section:last-child{border-bottom:none}.week-header{background:transparent;border-bottom:1px solid var(--border-color);padding:16px 20px}.week-header h3{color:var(--text-primary);font-size:16px;font-weight:600;margin:0}.template-card-menu{flex-shrink:0;position:relative}.template-card-menu__button{align-items:center;background:none;border:none;border-radius:4px;color:#666;cursor:pointer;display:flex;font-size:20px;justify-content:center;line-height:1;padding:4px 8px;transition:all .2s;-webkit-user-select:none;user-select:none}.template-card-menu__button:hover{background:hsla(0,0%,100%,.05);color:#999}[data-theme=light] .template-card-menu__button:hover{background:rgba(0,0,0,.05)}.template-card-menu__dropdown{animation:menuFadeIn .15s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:rgba(35,35,35,.98);border:1px solid hsla(0,0%,100%,.2);border-radius:8px;box-shadow:0 12px 32px rgba(0,0,0,.85),0 2px 8px rgba(0,0,0,.5),inset 0 1px 0 hsla(0,0%,100%,.05);min-width:160px;overflow:visible;position:fixed;z-index:1000001}[data-theme=light] .template-card-menu__dropdown{background:var(--bg-dropdown);border:1px solid var(--border-color-light);box-shadow:0 8px 24px var(--shadow)}@keyframes menuFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.template-card-menu__item{align-items:center;background:none;border:none;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:400;gap:12px;padding:10px 16px;text-align:left;transition:all .15s;white-space:nowrap;width:100%}.template-card-menu__item:first-child{border-radius:8px 8px 0 0}.template-card-menu__item:last-child{border-radius:0 0 8px 8px}.template-card-menu__item:hover{background:hsla(0,0%,100%,.1)}[data-theme=light] .template-card-menu__item:hover{background:var(--bg-hover-overlay-dark)}.template-card-menu__item:active{background:hsla(0,0%,100%,.15)}[data-theme=light] .template-card-menu__item:active{background:var(--bg-hover-overlay)}.template-card-menu__item--delete{border-top:1px solid hsla(0,0%,100%,.1);color:#f44;margin-top:4px}.template-card-menu__item--delete:hover{background:rgba(255,68,68,.15)}.template-card-menu__icon{align-items:center;display:inline-flex;flex-shrink:0;font-size:16px;justify-content:center;width:20px}.template-card-menu__label{flex:1 1}.template-card{background:#2d3645;border:1px solid hsla(0,0%,100%,.1);border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.3);box-sizing:border-box;cursor:grab;overflow:visible;padding:12px;position:relative;transition:all .2s;width:100%;z-index:1}[data-theme=light] .template-card{background:linear-gradient(135deg,#e8f4f8,#d1ecf1);border:1px solid rgba(102,126,234,.2);box-shadow:0 2px 8px rgba(102,126,234,.2)}.template-card:hover{background:hsla(0,0%,100%,.1);box-shadow:0 4px 12px rgba(0,0,0,.4);transform:translateY(-2px);z-index:10}[data-theme=light] .template-card:hover{background:linear-gradient(135deg,#d1ecf1,#bee5eb);box-shadow:0 4px 12px rgba(102,126,234,.3)}.template-card:has(.template-card-menu__dropdown){z-index:10001!important}.template-card.dragging{cursor:grabbing;opacity:.5}.template-header{align-items:flex-start;display:flex;gap:10px;margin-bottom:12px}.template-icon{filter:brightness(0) invert(1) opacity(.85);flex-shrink:0;height:32px;margin-top:2px;min-width:32px;object-fit:contain;width:32px}[data-theme=light] .template-icon{filter:brightness(0) opacity(.9)}.template-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#fff;display:-webkit-box;flex:1 1;font-size:15px;font-weight:600;line-height:1.3;max-height:2.6em;overflow:hidden;text-overflow:ellipsis}[data-theme=light] .template-title{color:#1a1a1a}.template-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.template-tag{background:hsla(0,0%,100%,.1);border-radius:10px;color:#999;font-size:11px;font-weight:500;padding:4px 8px}[data-theme=light] .template-tag{background:rgba(0,0,0,.15);color:#1a1a1a}.template-tag-more{background:hsla(0,0%,100%,.05);border-radius:10px;color:#666;font-size:11px;padding:4px 8px}.template-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#ccc;display:-webkit-box;font-size:13px;line-height:1.5;margin-bottom:12px;overflow:hidden;text-overflow:ellipsis}[data-theme=light] .template-description{color:#1a1a1a}.template-description b,.template-description strong{color:#fff;font-weight:600}[data-theme=light] .template-description b,[data-theme=light] .template-description strong{color:#1a1a1a}.template-description em,.template-description i{font-style:italic}.template-description u{text-decoration:underline}.template-metrics{display:flex;gap:12px;margin-bottom:12px}.metric{display:flex;flex-direction:column;gap:4px;min-width:0}.metric-value{color:#fff;font-size:18px;font-weight:600;white-space:nowrap}[data-theme=light] .metric-value{color:#1a1a1a}.metric-label{color:#999;font-size:10px;letter-spacing:.5px;text-transform:uppercase}[data-theme=light] .metric-label{color:#1a1a1a}.template-goals{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.goal-badge{background:hsla(0,0%,100%,.08);border-radius:12px;color:#ccc;font-size:12px;padding:4px 10px}[data-theme=light] .goal-badge{color:#1a1a1a}.goal-more{color:#999;font-size:12px;padding:4px 10px}.template-chart{border-top:1px solid hsla(0,0%,100%,.05);margin-top:12px;overflow:hidden}.chart-bars{align-items:flex-end;display:flex;gap:2px;height:100%}.chart-bar{background:hsla(0,0%,100%,.3);border-radius:2px;flex:1 1;min-height:2px;transition:all .2s}.template-card:hover .chart-bar{opacity:.9}.library-container{background:linear-gradient(135deg,var(--bg-primary),var(--bg-secondary),var(--bg-tertiary));color:var(--text-primary);display:flex;flex-direction:column;height:100%;overflow:hidden;transition:background .3s ease,color .3s ease}.library-header{border-bottom:1px solid var(--border-color);padding:20px}.library-header h2{color:var(--text-primary);font-size:24px;font-weight:600;margin:0 0 12px}.library-header-actions{align-items:center;display:flex;gap:12px}.library-search{flex:1 1;margin-top:0}.create-template-button{background:rgba(96,210,247,.1);border:2px solid rgba(96,210,247,.3);border-radius:8px;color:#60d2f7;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s;white-space:nowrap}.create-template-button:hover{background:rgba(96,210,247,.2);border-color:#60d2f7;transform:scale(1.05)}.create-template-button:active{transform:scale(.95)}.search-input{background:hsla(0,0%,100%,.05);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:14px;outline:none;padding:10px 16px;transition:all .2s;width:100%}[data-theme=light] .search-input{background:rgba(0,0,0,.02)}.search-input:focus{background:hsla(0,0%,100%,.08);border-color:var(--border-color-light)}[data-theme=light] .search-input:focus{background:rgba(0,0,0,.05)}.search-input::placeholder{color:var(--text-tertiary)}.library-content{display:flex;flex:1 1;overflow:hidden;position:relative}.library-sidebar{background:rgba(0,0,0,.2);border-right:1px solid var(--border-color);min-width:240px;overflow-x:visible;overflow-y:auto;position:relative;width:240px;z-index:1}[data-theme=light] .library-sidebar{background:rgba(0,0,0,.02)}.library-filter-header{border-bottom:1px solid var(--border-color);padding:16px 20px}.library-filter-header h3{color:var(--text-tertiary);font-size:14px;font-weight:600;letter-spacing:.5px;margin:0;text-transform:uppercase}.filter-tag{align-items:center;background:transparent;border:none;color:#999;cursor:pointer;display:flex;gap:10px;margin-left:0;margin-right:0;padding:10px 20px;text-align:left;transition:all .2s;width:100%}.filter-tag:hover{background:hsla(0,0%,100%,.05);color:var(--text-primary)}[data-theme=light] .filter-tag:hover{background:rgba(0,0,0,.05)}.filter-tag.active{background:hsla(0,0%,100%,.1);color:var(--text-primary);font-weight:500}[data-theme=light] .filter-tag.active{background:rgba(0,0,0,.08)}.tag-icon{font-size:18px}.tag-name{flex:1 1;font-size:14px}.tag-count{background:hsla(0,0%,100%,.05);border-radius:10px;color:#666;font-size:12px;padding:2px 8px}.check-icon{color:#4caf50;font-size:14px}.sport-sections{margin-top:0;padding:0}.sport-section{margin:0}.sport-header,.sport-section{border:none!important;border-radius:0!important;box-shadow:none!important;outline:none!important}.sport-header{background:transparent;color:var(--text-primary);cursor:pointer;font-weight:600;gap:10px;margin-left:-20px;margin-right:-20px;padding:2px 10px;text-align:left;transition:all .2s;width:calc(100% + 40px)}.sport-header:hover{background:hsla(0,0%,100%,.05)}.sport-header:focus{border:none!important;box-shadow:none!important;outline:none!important}.sport-icon{filter:brightness(0) invert(1) opacity(.85);height:24px;object-fit:contain;width:24px}[data-theme=light] .sport-icon{filter:brightness(0) opacity(.9)}.sport-name{flex:1 1;font-size:15px}.expand-icon,.sport-count{color:#999;font-size:12px}.sport-tags{background:transparent}.tag-item{font-size:13px;padding-left:40px!important}.library-main{display:flex;flex:1 1;flex-direction:column;min-width:0;overflow:hidden;position:relative;z-index:2}.library-main-header{align-items:center;border-bottom:1px solid hsla(0,0%,100%,.1);display:flex;justify-content:space-between;padding:20px}.library-main-header h3{font-size:16px;font-weight:600;margin:0}.template-count{color:#999;font-size:12px}.templates-grid{align-content:start;display:flex;flex:1 1;flex-direction:column;gap:12px;overflow-x:visible;overflow-y:auto;padding:16px}.empty-state{flex:1 1}.empty-icon{font-size:64px;margin-bottom:16px}.empty-text{color:#666;margin:0 0 24px}.empty-state-button{background:rgba(96,210,247,.15);border:2px solid rgba(96,210,247,.4);font-size:14px;margin-top:8px;padding:8px 16px}.empty-state-button:hover{background:rgba(96,210,247,.25);border-color:#60d2f7;transform:scale(1.05)}.library-loading{align-items:center;display:flex;flex-direction:column;gap:16px;height:100%;justify-content:center}.library-loading .loading-spinner{animation:spin 1s linear infinite;border:3px solid var(--border-color);border-radius:50%;border-top-color:var(--accent-primary);height:40px;width:40px}.library-loading p{color:#999;margin:0}.library-empty,.library-error{align-items:center;display:flex;flex-direction:column;gap:16px;height:100%;justify-content:center;padding:40px;text-align:center}.library-error{color:#dc3545}.error-message{font-size:16px;margin:0}.retry-btn{background:rgba(0,123,255,.2);border:1px solid rgba(0,123,255,.4);border-radius:8px;color:var(--text-primary);cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s}.retry-btn:hover{background:rgba(0,123,255,.3);border-color:rgba(0,123,255,.6)}.library-sidebar::-webkit-scrollbar,.templates-grid::-webkit-scrollbar{width:8px}.library-sidebar::-webkit-scrollbar-track,.templates-grid::-webkit-scrollbar-track{background:rgba(0,0,0,.2)}.library-sidebar::-webkit-scrollbar-thumb,.templates-grid::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.2);border-radius:4px}.library-sidebar::-webkit-scrollbar-thumb:hover,.templates-grid::-webkit-scrollbar-thumb:hover{background:hsla(0,0%,100%,.3)}.sidebar{background:var(--bg-sidebar);border-right:1px solid var(--border-color);box-shadow:2px 0 10px var(--shadow-light);display:flex;flex-direction:column;min-width:80px;padding:20px 0;transition:background .3s ease,border-color .3s ease;width:80px;z-index:150}.sidebar-content{padding:0 6px}.sidebar-button,.sidebar-content{display:flex;flex-direction:column;gap:4px}.sidebar-button{align-items:center;background:transparent;border:1px solid transparent;border-radius:10px;color:var(--text-secondary);cursor:pointer;font-size:9px;font-weight:500;justify-content:center;line-height:1.1;min-height:62px;padding:10px 6px;text-align:center;transition:all .3s ease}.sidebar-button:hover{background:hsla(0,0%,100%,.05);border-color:var(--border-color);color:var(--text-primary)}[data-theme=light] .sidebar-button:hover{background:rgba(0,0,0,.05)}.sidebar-button.active{background:rgba(0,123,255,.2);border-color:rgba(0,123,255,.4);color:var(--text-primary)}[data-theme=light] .sidebar-button.active{background:rgba(0,123,255,.1)}.sidebar-button.active:hover{background:rgba(0,123,255,.3);border-color:rgba(0,123,255,.6)}.sidebar-icon{align-items:center;color:inherit;display:flex;font-size:22px;justify-content:center}.sidebar-icon svg{color:inherit;height:22px;width:22px}.sidebar-label{word-wrap:break-word;display:block;font-size:9px;line-height:1.1;width:100%}.sidebar-divider{background:var(--border-color);height:1px;margin:8px 0}@media (max-width:768px){.sidebar{min-width:70px;padding:16px 0;width:70px}.sidebar-button{min-height:70px;padding:12px 4px}.sidebar-icon{font-size:24px}.sidebar-icon svg{height:24px;width:24px}.sidebar-label{font-size:9px}}.app-header{align-items:center;background:linear-gradient(135deg,#151d2a,#1a2332);border-bottom:1px solid hsla(0,0%,100%,.1);box-shadow:0 2px 8px rgba(0,0,0,.3);box-sizing:border-box;display:grid;grid-template-columns:1fr auto 1fr;height:46px;padding:0 32px;position:-webkit-sticky;position:sticky;top:0;z-index:1000}[data-theme=light] .app-header{background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:1px solid hsla(0,0%,100%,.2);box-shadow:0 2px 8px rgba(102,126,234,.3)}.header-left{justify-self:start}.header-center{align-items:center;display:flex;justify-content:center;max-width:100%;overflow:hidden;padding:0 8px}.header-logo{-ms-interpolation-mode:nearest-neighbor;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;backface-visibility:hidden;-webkit-backface-visibility:hidden;display:block;height:35px;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;image-rendering:-webkit-optimize-contrast;max-height:35px;max-width:300px;object-fit:contain;transform:translateZ(0);transition:transform .2s ease,filter .3s ease;width:auto}.header-logo-default{height:50px;margin-top:4px;max-height:50px;max-width:400px}.header-logo:hover{transform:scale(1.05)}.header-right{justify-self:end}.header-right,.user-info{align-items:center;display:flex}.user-info{position:relative}.user-details{align-items:center;border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:4px 8px;transition:background .2s ease}.user-details:hover{background:hsla(0,0%,100%,.1)}[data-theme=light] .user-details:hover{background:hsla(0,0%,100%,.2)}.user-name{color:#fff;font-size:14px;font-weight:500;letter-spacing:.3px;line-height:1}.user-avatar{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:2px solid hsla(0,0%,100%,.3);border-radius:50%;cursor:pointer;display:flex;height:26px;justify-content:center;overflow:hidden;transition:all .2s ease;width:26px}.user-avatar:hover{border-color:hsla(0,0%,100%,.6);box-shadow:0 0 12px hsla(0,0%,100%,.4);transform:scale(1.05)}[data-theme=light] .user-avatar{border:2px solid hsla(0,0%,100%,.4)}[data-theme=light] .user-avatar:hover{border-color:hsla(0,0%,100%,.8);box-shadow:0 0 12px hsla(0,0%,100%,.6)}.avatar-image{height:100%;object-fit:cover;width:100%}.avatar-placeholder{align-items:center;color:#fff;display:flex;font-size:11px;font-weight:600;height:100%;justify-content:center;line-height:1;text-transform:uppercase;width:100%}.user-dropdown{animation:dropdownSlideIn .2s ease;background:var(--bg-dropdown);border:1px solid var(--border-color-light);border-radius:12px;box-shadow:0 8px 24px var(--shadow);min-width:240px;overflow:hidden;position:absolute;right:0;top:calc(100% + 8px);z-index:2000}[data-theme=light] .user-dropdown{background:var(--bg-card);box-shadow:0 8px 24px var(--shadow)}@keyframes dropdownSlideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.dropdown-header{background:hsla(0,0%,100%,.03);padding:16px}[data-theme=light] .dropdown-header{background:rgba(0,0,0,.02)}.dropdown-user-name{color:var(--text-primary);font-size:15px;font-weight:600;margin-bottom:4px}.dropdown-user-email{color:var(--text-secondary);font-size:13px;word-break:break-all}.dropdown-divider{background:var(--border-color);height:1px;margin:0}.dropdown-item{align-items:center;background:transparent;border:none;color:var(--text-primary);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:12px;padding:12px 16px;text-align:left;transition:all .2s ease;width:100%}.dropdown-item:hover{background:hsla(0,0%,100%,.08);color:#ff6b6b}[data-theme=light] .dropdown-item:hover{background:rgba(0,0,0,.05)}.dropdown-icon{align-items:center;display:flex;font-size:18px;justify-content:center}@media (max-width:768px){.app-header{height:60px;padding:12px 16px}.header-logo{height:35px}.user-name{display:none}.user-avatar{height:36px;width:36px}.user-dropdown{min-width:200px}.dropdown-header{padding:12px}}@media (max-width:480px){.app-header{padding:10px 12px}.header-logo{height:30px}}.auto-push-settings{background:hsla(0,0%,100%,.03);border:1px solid hsla(0,0%,100%,.1);border-radius:6px;font-size:12px;margin-top:8px;padding:8px}.auto-push-settings.loading{color:#999;padding:8px;text-align:center}.auto-push-header{align-items:center;cursor:pointer;display:flex;justify-content:space-between;-webkit-user-select:none;user-select:none}.auto-push-toggle-container{flex:1 1}.auto-push-toggle-label{align-items:center;cursor:pointer;display:flex;gap:8px}.auto-push-toggle{accent-color:#00d4aa;cursor:pointer;height:16px;width:16px}.auto-push-toggle:disabled{cursor:not-allowed;opacity:.6}.auto-push-toggle-text{color:#d3d3d3;font-size:12px;font-weight:500}.auto-push-expand-btn{background:none;border:none;color:#999;cursor:pointer;font-size:10px;padding:4px;transition:color .2s}.auto-push-expand-btn:hover{color:#d3d3d3}.auto-push-details{border-top:1px solid hsla(0,0%,100%,.1);margin-top:12px;padding-top:12px}.auto-push-description{color:#b0b0b0;font-size:11px;line-height:1.4;margin-bottom:12px}.auto-push-days-container{align-items:center;display:flex;gap:8px;margin-top:8px}.auto-push-days-label{color:#d3d3d3;font-size:11px;white-space:nowrap}.auto-push-days-select{background:hsla(0,0%,100%,.05);border:1px solid hsla(0,0%,100%,.2);border-radius:4px;color:#fff;cursor:pointer;flex:1 1;font-size:11px;padding:6px 8px;transition:border-color .2s}.auto-push-days-select:hover:not(:disabled){border-color:hsla(0,0%,100%,.3)}.auto-push-days-select:focus{border-color:#00d4aa;outline:none}.auto-push-days-select:disabled{cursor:not-allowed;opacity:.5}.auto-push-saving{color:#999;font-size:10px;font-style:italic;margin-top:8px}.push-workouts-content{display:flex;flex-direction:column;gap:24px}.warning-box{align-items:flex-start;background:rgba(255,217,61,.1);border:1px solid rgba(255,217,61,.4);border-radius:8px;display:flex;gap:12px;padding:16px}.warning-icon{flex-shrink:0;font-size:24px}.warning-text{color:#ffd93d;font-size:14px;line-height:1.6;margin:0}.selected-count{color:#00d4aa}.date-input-error{background:rgba(255,68,68,.1)!important;border-color:#f44!important}.date-input-error:focus{border-color:#f44!important;box-shadow:0 0 0 3px rgba(255,68,68,.2)!important}.date-error-message{align-items:center;background:rgba(255,68,68,.1);border:1px solid rgba(255,68,68,.4);border-radius:8px;color:#ff6b6b;display:flex;font-size:14px;gap:8px;margin-top:12px;padding:12px 16px}.error-icon{flex-shrink:0;font-size:18px}.athlete-selection-section{background:rgba(0,212,170,.1);border:1px solid rgba(0,212,170,.3)}.athlete-search:focus{border-color:#00d4aa;box-shadow:0 0 0 3px rgba(0,212,170,.2)}.athlete-list-container::-webkit-scrollbar-thumb{background:rgba(0,212,170,.3)}.athlete-list-container::-webkit-scrollbar-thumb:hover{background:rgba(0,212,170,.5)}.athlete-item:hover:not(:disabled){border-color:rgba(0,212,170,.4)}.athlete-item.selected{background:rgba(0,212,170,.15);border-color:#00d4aa}.athlete-checkbox input[type=checkbox]{accent-color:#00d4aa}.action-buttons{gap:12px}.push-button{align-items:center;background:linear-gradient(135deg,#00d4aa,#00b890);border:none;border-radius:8px;box-shadow:0 4px 12px rgba(0,212,170,.3);color:#fff;cursor:pointer;display:flex;flex:1 1;font-size:16px;font-weight:700;gap:10px;justify-content:center;padding:16px 24px;transition:all .3s ease}.push-button:hover:not(.disabled){background:linear-gradient(135deg,#00b890,#009976);box-shadow:0 6px 16px rgba(0,212,170,.4);transform:translateY(-1px)}.push-button.disabled{background:#666;box-shadow:none;cursor:not-allowed}.loading-spinner-small{border:3px solid rgba(0,212,170,.3);border-top-color:#00d4aa;height:24px;margin:0 auto;width:24px}.confirmation-overlay{animation:fadeIn .2s ease-out;background:rgba(0,0,0,.8);z-index:2000}.confirmation-dialog{animation:slideUp .3s ease-out;background:linear-gradient(135deg,#2a2a2a,#1a2332);border:1px solid hsla(0,0%,100%,.2);border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.6);max-width:400px;padding:28px}[data-theme=light] .confirmation-dialog{background:var(--bg-modal);border:1px solid var(--border-color)}.confirmation-dialog h3{font-size:20px}.confirmation-content p{color:#e0e0e0;font-size:15px}.detail-item strong{color:#00d4aa}.athlete-confirm-list::-webkit-scrollbar-thumb{background:rgba(0,212,170,.3)}.athlete-confirm-list::-webkit-scrollbar-thumb:hover{background:rgba(0,212,170,.5)}.confirm-button{border-radius:8px;font-size:15px;padding:12px 20px;transition:all .2s ease}.confirm-button.cancel{background:hsla(0,0%,100%,.05);border:1px solid hsla(0,0%,100%,.2);color:#e0e0e0}.confirm-button.cancel:hover{background:hsla(0,0%,100%,.1);border-color:hsla(0,0%,100%,.3)}.confirm-button.push{background:linear-gradient(135deg,#00d4aa,#00b890);color:#fff}.confirm-button.push:hover{background:linear-gradient(135deg,#00b890,#009976);box-shadow:0 4px 12px rgba(0,212,170,.4)}@media (max-width:768px){.push-workouts-content{gap:20px}.info-box,.warning-box{padding:14px}.athlete-selection-section,.date-range-section{padding:16px}.date-inputs{grid-template-columns:1fr}.athlete-selection-header{align-items:stretch;flex-direction:column}.athlete-actions{justify-content:stretch}.select-action-button{flex:1 1}.athlete-list-container{max-height:300px}.push-button{font-size:15px;padding:14px 20px}.confirmation-dialog{padding:24px}.confirmation-details{padding:12px}}.auto-push-section{background:rgba(0,212,170,.05);border:1px solid rgba(0,212,170,.2);border-radius:8px;padding:16px}.auto-push-placeholder{padding:12px;text-align:center}.auto-push-placeholder p{color:#999;font-size:14px;font-style:italic;margin:0}.load-ratios-content{display:flex;flex-direction:column;height:100%;padding:0}.info-box{margin-bottom:20px}.action-buttons{flex-shrink:0;margin-top:20px}.load-ratios-loading{align-items:center;color:#d3d3d3;display:flex;flex-direction:column;justify-content:center;padding:60px 20px}.load-ratios-loading .loading-spinner{animation:spin .8s linear infinite;border:4px solid rgba(74,144,226,.2);border-radius:50%;border-top-color:#4a90e2;height:40px;margin-bottom:16px;width:40px}.load-ratios-loading p{font-size:16px;margin:0}.phase-loading{align-items:center;background-color:#1a1a1a;border:1px solid #4a90e2;border-radius:8px;color:#4a90e2;display:flex;gap:10px;padding:15px}.loading-spinner-small{animation:spin .8s linear infinite;border:2px solid rgba(74,144,226,.2);border-radius:50%;border-top-color:#4a90e2;height:16px;width:16px}.selected-phase-info p{line-height:1.4}.ratios-container{display:flex;flex:1 1;gap:20px;margin-bottom:20px;min-height:0}.sport-ratios-grid{display:flex;flex:1 1;flex-direction:column;gap:8px}.sport-title{font-size:18px;margin-bottom:12px;padding-bottom:8px;text-align:center}.ratio-row{background-color:#2e2d2d;border:1px solid #404040;border-radius:8px;display:flex;flex-direction:column;gap:8px;padding:12px}[data-theme=light] .ratio-row{background-color:var(--bg-card);border:1px solid var(--border-color)}.ratio-label{color:#d3d3d3;font-size:13px;font-weight:500;margin:0}.ratio-input-container{align-items:center;display:flex;gap:6px;justify-content:center}.ratio-input{background-color:#1a1a1a;border:1px solid #404040;border-radius:6px;color:#fff;font-size:14px;max-width:80px;padding:8px;text-align:center;transition:border-color .2s;width:100%}.ratio-input:focus{border-color:#4a90e2;outline:none}.ratio-input:disabled{cursor:not-allowed;opacity:.5}.ratio-input::placeholder{color:#666}.ratio-suffix{color:#4a90e2;font-size:16px;font-weight:700}.delete-workouts-content{display:flex;flex-direction:column;gap:24px}.warning-box-red{align-items:flex-start;background-color:rgba(255,71,87,.1);border:2px solid #ff4757;border-radius:12px;display:flex;gap:12px;padding:20px}.warning-box-red .warning-icon{flex-shrink:0;font-size:24px}.warning-box-red .warning-text{color:#ff4757;font-size:16px;font-weight:600;line-height:1.5;margin:0}.info-box{background:rgba(74,144,226,.1);border:1px solid rgba(74,144,226,.3)}.info-icon{font-size:24px}.info-text{color:#e0e0e0}.section-title{align-items:center;color:#fff;display:flex;gap:10px;margin:0 0 16px}.section-icon{font-size:24px}.selected-count{color:#ff4757;font-size:14px;font-weight:600;margin-left:8px}.date-range-section{background:rgba(74,144,226,.1);border:1px solid rgba(74,144,226,.3);border-radius:12px;padding:20px}.date-inputs{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.date-input-group{display:flex;flex-direction:column;gap:8px}.input-label{color:#e0e0e0}.date-input{background:hsla(0,0%,100%,.05);border:1px solid hsla(0,0%,100%,.2);border-radius:8px;color:#fff;color-scheme:dark;font-size:15px;padding:12px 16px;transition:all .2s ease}[data-theme=light] .date-input{background:rgba(0,0,0,.02);border:1px solid var(--border-color);color:var(--text-primary)}.date-input:hover{background:hsla(0,0%,100%,.08);border-color:hsla(0,0%,100%,.3)}.date-input:focus{background:hsla(0,0%,100%,.08);border-color:#4a90e2;box-shadow:0 0 0 3px rgba(74,144,226,.2);outline:none}.date-input:disabled{cursor:not-allowed;opacity:.5}.athlete-selection-section{background:rgba(255,71,87,.1);border:1px solid rgba(255,71,87,.3);border-radius:12px;padding:20px}.athlete-selection-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:16px}.athlete-actions{display:flex;gap:8px}.select-action-button{background:hsla(0,0%,100%,.05);border:1px solid hsla(0,0%,100%,.2);border-radius:6px;color:#e0e0e0;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;transition:all .2s ease}.select-action-button:hover:not(:disabled){background:hsla(0,0%,100%,.1);border-color:hsla(0,0%,100%,.3)}.select-action-button:disabled{cursor:not-allowed;opacity:.4}.athlete-search{background:hsla(0,0%,100%,.05);border:1px solid hsla(0,0%,100%,.2);border-radius:8px;color:#fff;font-size:15px;margin-bottom:12px;padding:12px 16px;transition:all .2s ease;width:100%}.athlete-search:hover{background:hsla(0,0%,100%,.08);border-color:hsla(0,0%,100%,.3)}.athlete-search:focus{background:hsla(0,0%,100%,.08);border-color:#ff4757;box-shadow:0 0 0 3px rgba(255,71,87,.2);outline:none}.athlete-search::placeholder{color:#999}.athlete-list-container{border-radius:8px;max-height:400px;overflow-y:auto}.athlete-list-container::-webkit-scrollbar{width:8px}.athlete-list-container::-webkit-scrollbar-track{background:hsla(0,0%,100%,.05);border-radius:4px}.athlete-list-container::-webkit-scrollbar-thumb{background:rgba(255,71,87,.3);border-radius:4px}.athlete-list-container::-webkit-scrollbar-thumb:hover{background:rgba(255,71,87,.5)}.athlete-list{gap:8px}.athlete-item{align-items:center;background:hsla(0,0%,100%,.03);border:2px solid hsla(0,0%,100%,.1);border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:12px;text-align:left;transition:all .2s ease;width:100%}[data-theme=light] .athlete-item{background:rgba(0,0,0,.02);border:2px solid var(--border-color)}.athlete-item:hover:not(:disabled){background:hsla(0,0%,100%,.08);border-color:rgba(255,71,87,.4);transform:translateX(2px)}.athlete-item.selected{background:rgba(255,71,87,.15);border-color:#ff4757}.athlete-item:disabled{cursor:not-allowed;opacity:.5}.athlete-checkbox{flex-shrink:0}.athlete-checkbox input[type=checkbox]{accent-color:#ff4757;cursor:pointer;height:18px;width:18px}.athlete-avatar{background:linear-gradient(135deg,#ff4757,#e63946);color:#fff;font-size:14px;font-weight:700;height:40px;width:40px}.athlete-name{font-size:15px}.empty-state{padding:40px 20px}.empty-icon{font-size:48px;margin-bottom:12px}.empty-text{color:#999;font-size:15px}.consequences-container{background-color:#2e2d2d;border:1px solid #404040;border-radius:12px;margin-bottom:30px;padding:20px}.consequences-title{color:#fff;font-size:18px;font-weight:700;margin:0 0 15px}.consequence-item{align-items:center;display:flex;gap:10px;margin-bottom:8px}.consequence-icon{color:#d3d3d3;font-size:18px}.consequence-text{color:#d3d3d3;font-size:16px}.delete-button{align-items:center;background-color:#ff4757;border:none;border-radius:12px;box-shadow:0 4px 12px rgba(255,71,87,.3);color:#fff;cursor:pointer;display:flex;font-size:18px;font-weight:700;gap:10px;justify-content:center;padding:18px;transition:background-color .2s,box-shadow .2s;width:100%}.delete-button:hover:not(.disabled){background-color:#e63946;box-shadow:0 6px 16px rgba(255,71,87,.4)}.delete-button.disabled{background-color:#666;box-shadow:none;cursor:not-allowed}.button-icon{font-size:20px}.confirmation-overlay{align-items:center;background-color:rgba(0,0,0,.7);bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}.confirmation-dialog{background-color:#2a2a2a;border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,.5);max-width:500px;padding:32px;width:90%}[data-theme=light] .confirmation-dialog{background-color:var(--bg-modal);box-shadow:0 20px 60px var(--shadow)}.confirmation-dialog h3{color:#fff;font-size:24px;font-weight:700;margin:0 0 16px}.confirmation-content{margin-bottom:24px}.confirmation-content p{color:#d3d3d3;font-size:16px;line-height:1.6;margin:0 0 16px}.confirmation-details{background:rgba(0,0,0,.3);border:1px solid hsla(0,0%,100%,.1);border-radius:8px;display:flex;flex-direction:column;gap:12px;padding:16px}.detail-item{display:flex;flex-direction:column;gap:6px}.detail-item strong{color:#ff4757;font-size:13px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.detail-item span{color:#fff;font-size:14px}.athlete-confirm-list{margin:0;max-height:150px;overflow-y:auto;padding-left:20px}.athlete-confirm-list li{color:#fff;font-size:14px;line-height:1.8}.athlete-confirm-list::-webkit-scrollbar{width:6px}.athlete-confirm-list::-webkit-scrollbar-track{background:hsla(0,0%,100%,.05);border-radius:3px}.athlete-confirm-list::-webkit-scrollbar-thumb{background:rgba(255,71,87,.3);border-radius:3px}.athlete-confirm-list::-webkit-scrollbar-thumb:hover{background:rgba(255,71,87,.5)}.confirmation-buttons{display:flex;gap:12px}.confirm-button{border:none;border-radius:10px;cursor:pointer;flex:1 1;font-size:16px;font-weight:600;padding:14px 24px;transition:all .2s}.confirm-button.cancel{background-color:transparent;border:2px solid #666;color:#d3d3d3}.confirm-button.cancel:hover{background-color:hsla(0,0%,100%,.05);border-color:#888}.confirm-button.delete{background-color:#ff4757;color:#fff}.confirm-button.delete:hover{background-color:#e63946}.weekly-structure-content{flex-direction:column;height:100%;padding:0}.weekly-structure-content,.weekly-structure-layout{box-sizing:border-box;display:flex;max-width:100%;min-height:0;overflow:hidden;width:100%}.weekly-structure-layout{align-items:stretch;flex:1 1;gap:16px}.weekly-structure-loading{align-items:center;color:#d3d3d3;display:flex;flex-direction:column;justify-content:center;padding:60px 20px}.weekly-structure-loading .loading-spinner{animation:spin .8s linear infinite;border:4px solid rgba(6,214,160,.2);border-radius:50%;border-top-color:#06d6a0;height:40px;margin-bottom:16px;width:40px}.weekly-structure-loading p{font-size:16px;margin:0}.phase-selector-section{background-color:#2e2d2d;border:1px solid #404040;border-radius:10px;flex-shrink:0;margin-bottom:20px;padding:20px}[data-theme=light] .phase-selector-section{background-color:var(--bg-card);border:1px solid var(--border-color)}.section-title{font-size:20px;margin:0 0 8px}.section-description{color:#d3d3d3;font-size:16px;margin:0 0 15px}.phase-select{background-color:#606060;border:2px solid #06d6a0;border-radius:10px;color:#fff;cursor:pointer;font-size:18px;font-weight:700;margin-bottom:15px;padding:15px;transition:border-color .2s;width:100%}.phase-select:focus{border-color:#4a90e2;outline:none}.phase-select:disabled{cursor:not-allowed;opacity:.5}.selected-phase-info{background-color:#1a1a1a;border:1px solid #4a90e2;border-radius:8px;padding:15px}.selected-phase-info h4{color:#4a90e2;font-size:18px;font-weight:700;margin:0 0 5px}.selected-phase-info p{color:#d3d3d3;font-size:14px;line-height:1.5;margin:0}.info-box{word-wrap:break-word;align-items:center;background-color:rgba(6,214,160,.1);border:1px solid #06d6a0;box-sizing:border-box;flex-shrink:0;flex-wrap:wrap;margin-bottom:24px;overflow-wrap:break-word;padding:16px;width:100%}.info-icon{font-size:20px}.info-text{min-width:0}.phase-selector-inline{align-items:center;display:flex;flex-shrink:0;gap:8px;margin-left:auto}.phase-label-inline{color:#d3d3d3;font-size:14px;font-weight:500;margin:0;white-space:nowrap}.phase-select-inline{background-color:#606060;border:1px solid #06d6a0;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;font-weight:500;height:32px;min-width:140px;padding:6px 10px;transition:border-color .2s}.phase-select-inline:focus{border-color:#4a90e2;outline:none}.phase-select-inline:disabled{cursor:not-allowed;opacity:.5}.horizontal-week-container{background:linear-gradient(135deg,#1a2332,#2e3441);border:1px solid hsla(0,0%,100%,.1);border-radius:12px;display:flex;flex:1 1;flex-direction:column;height:100%;min-height:0;overflow:hidden;padding:12px}[data-theme=light] .horizontal-week-container{background:var(--bg-calendar-header);border:1px solid var(--border-color)}.week-grid{display:flex;flex:1 1;flex-direction:column;gap:0;min-height:0;overflow:hidden}.week-header-row{grid-gap:6px;flex-shrink:0;gap:6px;grid-template-columns:repeat(7,1fr);margin-bottom:8px}.day-column-header{padding:12px 8px}[data-theme=light] .day-column-header{background:rgba(0,0,0,.02)}.workout-count-badge{background-color:rgba(6,214,160,.2);border-radius:10px;color:#06d6a0;font-size:12px;font-weight:600;padding:2px 8px}.week-content-row{grid-gap:6px;align-items:stretch;flex:1 1;gap:6px;grid-template-columns:repeat(7,1fr);min-height:0}.day-column{height:100%;min-height:0;overflow-y:auto}.day-column.drag-over{background:linear-gradient(135deg,rgba(6,214,160,.15),rgba(6,214,160,.05));border:2px dashed #06d6a0;box-shadow:inset 0 0 20px rgba(6,214,160,.2)}.empty-day-column{flex:1 1;min-height:100%}.drop-zone-hint{font-size:14px}.day-column.drag-over .drop-zone-hint{background:rgba(6,214,160,.1);border-color:#06d6a0;color:#06d6a0;font-weight:600}.structure-workout-card{background-color:#2e2d2d;border:1px solid #404040;border-left:4px solid #06d6a0;border-radius:8px;padding:12px;transition:all .2s}.structure-workout-card:hover{background-color:rgba(6,214,160,.05);border-color:#06d6a0;box-shadow:0 4px 12px rgba(0,0,0,.3);transform:translateY(-2px)}.structure-workout-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.structure-workout-icon{filter:brightness(0) invert(1) opacity(.85);height:24px;object-fit:contain;width:24px}.delete-btn{font-size:24px;height:24px;width:24px}.structure-workout-details{display:flex;flex-direction:column;gap:4px}.structure-sport-name{color:#06d6a0;font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.structure-workout-goal{color:#d3d3d3;font-size:13px;font-weight:600;line-height:1.3}.structure-workout-tag{margin-top:6px}.tag-badge{background:rgba(6,214,160,.2);border:1px solid rgba(6,214,160,.3);border-radius:4px;color:#06d6a0;display:inline-block;font-size:11px;font-weight:600;padding:2px 8px}.structure-workout-tag-placeholder{color:hsla(0,0%,100%,.4);font-size:11px;font-style:italic;margin-top:6px}.structure-workout-card.editing-tag{border-color:#06d6a0;box-shadow:0 0 0 2px rgba(6,214,160,.3)}.structure-workout-card{cursor:pointer;position:relative}.day-column>div{position:relative}.tag-selection-popover{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:#2e2d2d!important;border:1px solid #06d6a0;border-radius:8px;box-shadow:0 8px 24px rgba(0,0,0,.8)!important;display:flex;flex-direction:column;isolation:isolate;max-height:200px;max-width:250px;min-width:200px;opacity:1!important;overflow:hidden;pointer-events:auto;position:fixed!important;transform:translateZ(0);z-index:1000002!important}.tag-selection-header{align-items:center;background:rgba(6,214,160,.1);border-bottom:1px solid hsla(0,0%,100%,.1);display:flex;justify-content:space-between;padding:8px 12px}.tag-selection-header span{color:#06d6a0;font-size:12px;font-weight:600}.close-tag-selector{align-items:center;background:none;border:none;color:hsla(0,0%,100%,.6);cursor:pointer;display:flex;font-size:20px;height:20px;justify-content:center;line-height:1;padding:0;width:20px}.close-tag-selector:hover{color:#fff}.tag-selection-list{max-height:150px;overflow-y:auto;padding:4px}.tag-option{background:transparent;border:none;border-radius:4px;color:#d3d3d3;cursor:pointer;display:block;font-size:13px;padding:8px 12px;text-align:left;transition:all .2s;width:100%}.tag-option:hover{background:rgba(6,214,160,.1);color:#06d6a0}.tag-option.selected{background:rgba(6,214,160,.2);color:#06d6a0;font-weight:600}.tag-empty,.tag-loading{color:hsla(0,0%,100%,.5);font-size:12px;padding:12px;text-align:center}.workout-library-sidebar{background:linear-gradient(135deg,#1a2332,#2e3441);border:1px solid hsla(0,0%,100%,.1);border-radius:12px;display:flex;flex-direction:column;flex-shrink:0;max-height:calc(100vh - 200px);padding:24px;width:320px}[data-theme=light] .workout-library-sidebar{background:var(--bg-sidebar);border:1px solid var(--border-color)}.library-scroll-container{flex:1 1;min-height:0;overflow-x:hidden;overflow-y:auto;padding-right:8px}.library-scroll-container::-webkit-scrollbar{width:8px}.library-scroll-container::-webkit-scrollbar-track{background:rgba(0,0,0,.2);border-radius:4px}.library-scroll-container::-webkit-scrollbar-thumb{background:rgba(6,214,160,.3);border-radius:4px}.library-scroll-container::-webkit-scrollbar-thumb:hover{background:rgba(6,214,160,.5)}.weekly-structure-main{display:flex;flex:1 1;flex-direction:column;min-width:0}.library-title{color:#fff;font-size:20px;font-weight:700;margin:0 0 4px}.library-subtitle{color:hsla(0,0%,100%,.6);font-size:14px;margin:0 0 24px}.sport-section{margin-bottom:24px}.sport-section:last-child{margin-bottom:0}.sport-header{align-items:center;border-bottom:2px solid hsla(0,0%,100%,.1);display:flex;gap:12px;margin-bottom:12px;padding-bottom:8px}.sport-icon-small{filter:brightness(0) invert(1) opacity(.85);height:28px;object-fit:contain;width:28px}.sport-label{color:#fff;font-size:18px;font-weight:700}.goals-grid{display:flex;flex-direction:column;gap:12px}.draggable-goal-card{align-items:center;background-color:#2e2d2d;border:2px solid #404040;border-radius:8px;cursor:grab;display:flex;justify-content:space-between;padding:12px;transition:all .2s;width:100%}.draggable-goal-card:hover{background-color:rgba(6,214,160,.05);border-color:#06d6a0;box-shadow:0 4px 12px rgba(0,0,0,.3);transform:translateY(-2px)}.draggable-goal-card:active{cursor:grabbing;transform:scale(.98)}.goal-card-content{align-items:center;display:flex;flex:1 1;gap:12px}.goal-card-icon{filter:brightness(0) invert(1) opacity(.85);flex-shrink:0;height:24px;object-fit:contain;width:24px}.goal-card-text{display:flex;flex-direction:column;gap:2px}.goal-card-sport{color:hsla(0,0%,100%,.5);font-size:10px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.goal-card-goal{color:#d3d3d3;font-size:13px;font-weight:600}.drag-indicator{color:hsla(0,0%,100%,.3);font-size:16px;font-weight:700;letter-spacing:-2px}.save-section{display:flex;justify-content:center;margin-top:24px;padding:20px 0 0}.save-btn{background:linear-gradient(135deg,#06d6a0,#05b385);border:none;border-radius:8px;box-shadow:0 4px 12px rgba(6,214,160,.3);color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:14px 32px;transition:all .2s}.save-btn:hover{box-shadow:0 6px 16px rgba(6,214,160,.4);transform:translateY(-2px)}.save-btn:active{transform:translateY(0)}.save-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}@media (max-width:1200px){.workout-library-sidebar{width:280px}}@media (max-width:968px){.weekly-structure-layout{flex-direction:column}.workout-library-sidebar{max-height:400px;width:100%}.library-scroll-container{max-height:300px}.goals-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}}@media (max-width:768px){.weekly-structure-content{padding:16px}.workout-library-sidebar{max-height:350px}.library-scroll-container{max-height:250px}.week-content-row,.week-header-row{grid-template-columns:repeat(7,minmax(100px,1fr))}.day-column{min-height:250px}.goals-grid{grid-template-columns:1fr}}.schedule-limitations-content{padding:12px}.info-box{background-color:#2e2d2d;border:1px solid #404040;border-radius:8px;gap:10px;margin-bottom:12px;padding:10px}.info-icon{font-size:16px}.info-text{font-size:12px;line-height:1.4}.schedule-limitations-loading{align-items:center;color:#d3d3d3;display:flex;flex-direction:column;justify-content:center;padding:60px 20px}.schedule-limitations-loading .loading-spinner{animation:spin .8s linear infinite;border:4px solid rgba(74,144,226,.2);border-radius:50%;border-top-color:#4a90e2;height:40px;margin-bottom:16px;width:40px}.schedule-limitations-loading p{font-size:16px;margin:0}.week-container{background:linear-gradient(135deg,#1a2332,#2e3441);border:1px solid hsla(0,0%,100%,.1);border-radius:12px;margin-bottom:24px;padding:16px}[data-theme=light] .week-container{background:var(--bg-calendar-header);border:1px solid var(--border-color)}.week-header-row{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(7,minmax(0,1fr));margin-bottom:12px;width:100%}.day-column-header{align-items:center;background:hsla(0,0%,100%,.05);border:2px solid transparent;border-radius:8px;box-sizing:border-box;display:flex;flex-direction:column;gap:4px;min-width:0;padding:12px;text-align:center;width:100%}.day-name{color:#fff;font-size:14px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.slot-count-badge{background-color:rgba(74,144,226,.2);border-radius:10px;color:#4a90e2;font-size:11px;font-weight:600;padding:2px 6px}.week-content-row{grid-gap:8px;display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.day-column,.week-content-row{gap:8px;min-height:300px;width:100%}.day-column{background-color:rgba(0,0,0,.2);border:2px solid hsla(0,0%,100%,.1);border-radius:8px;box-sizing:border-box;display:flex;flex-direction:column;min-width:0;padding:12px;transition:all .2s}[data-theme=light] .day-column{background-color:rgba(0,0,0,.02);border:2px solid var(--border-color)}.empty-day-column{min-height:200px}.drop-zone-hint,.empty-day-column{align-items:center;display:flex;height:100%;justify-content:center}.drop-zone-hint{border:2px dashed hsla(0,0%,100%,.15);border-radius:8px;color:hsla(0,0%,100%,.3);font-size:12px;font-style:italic;transition:all .2s;width:100%}.time-slot-card{background-color:#2e2d2d;border:1px solid #404040;border-left:4px solid #4a90e2;border-radius:8px;padding:10px;transition:all .2s}.time-slot-card:hover{background-color:rgba(74,144,226,.05);border-color:#4a90e2;box-shadow:0 4px 12px rgba(0,0,0,.3);transform:translateY(-2px)}.slot-card-header{display:flex;justify-content:flex-end;margin-bottom:8px}.delete-btn{align-items:center;background:none;border:none;color:hsla(0,0%,100%,.4);cursor:pointer;display:flex;font-size:20px;height:20px;justify-content:center;line-height:1;padding:0;transition:all .2s;width:20px}.delete-btn:hover{color:#f44;transform:scale(1.2)}.delete-btn:disabled{cursor:not-allowed;opacity:.5}.slot-card-content{display:flex;flex-direction:column;gap:8px}.input-label{font-size:11px;margin-bottom:4px}.schedule-select{background-color:#606060;border:2px solid #06d6a0;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;font-weight:700;padding:8px;transition:border-color .2s}.schedule-select:focus{border-color:#4a90e2;outline:none}.schedule-select:disabled{cursor:not-allowed;opacity:.5}.schedule-input{background-color:#1a1a1a;border:1px solid #404040;border-radius:6px;color:#fff;font-size:12px;padding:8px;transition:border-color .2s}.schedule-input:focus{border-color:#4a90e2;outline:none}.schedule-input:disabled{cursor:not-allowed;opacity:.5}.schedule-input::placeholder{color:#666}.time-display{color:#4a90e2;font-size:10px;font-style:italic;margin:3px 0 0}.add-slot-btn-small{align-items:center;background-color:transparent;border:1px dashed hsla(0,0%,100%,.2);border-radius:6px;color:hsla(0,0%,100%,.4);cursor:pointer;display:flex;font-size:20px;font-weight:700;height:40px;justify-content:center;margin-top:4px;transition:all .2s;width:100%}.add-slot-btn-small:hover:not(:disabled){background:rgba(74,144,226,.05);border-color:rgba(74,144,226,.6);color:rgba(74,144,226,.9)}.add-slot-btn-small:disabled{cursor:not-allowed;opacity:.5}.action-buttons{display:flex;justify-content:center;padding:16px 0}.save-button{gap:8px;padding:12px 32px}.button-spinner{height:16px;width:16px}@media (max-width:768px){.week-content-row,.week-header-row{grid-template-columns:repeat(7,minmax(100px,1fr))}.day-column{min-height:250px}}.training-loads-content{padding:0}.training-loads-loading{align-items:center;color:#d3d3d3;display:flex;flex-direction:column;justify-content:center;padding:60px 20px}.training-loads-loading .loading-spinner{animation:spin .8s linear infinite;border:4px solid rgba(74,144,226,.2);border-radius:50%;border-top-color:#4a90e2;height:40px;margin-bottom:16px;width:40px}.training-loads-loading p{font-size:16px;margin:0}.info-box{align-items:flex-start;background:rgba(74,144,226,.08);border:1px solid rgba(74,144,226,.2);border-radius:12px;display:flex;gap:12px;margin-bottom:32px;padding:16px 20px}.info-icon{align-items:center;background:rgba(74,144,226,.15);border-radius:6px;color:#4a90e2;display:flex;flex-shrink:0;height:24px;justify-content:center;padding:4px;width:24px}.info-icon svg{height:100%;width:100%}.info-text{color:#d3d3d3;flex:1 1;font-size:14px;line-height:1.6;margin:0}.sports-container{align-items:stretch;display:flex;gap:28px;margin-bottom:32px}.sport-section{background:linear-gradient(135deg,hsla(0,0%,100%,.03),hsla(0,0%,100%,.01));border:1px solid hsla(0,0%,100%,.08);border-radius:12px;display:flex;flex:1 1;flex-direction:column;max-width:100%;min-width:0;padding:24px;transition:all .3s ease}[data-theme=light] .sport-section{background:var(--bg-card);border:1px solid var(--border-color)}.sport-section:hover{border-color:hsla(0,0%,100%,.12);box-shadow:0 4px 12px rgba(0,0,0,.2)}.sport-title{border-bottom:2px solid;font-size:16px;font-weight:700;letter-spacing:1px;margin:0 0 20px;padding-bottom:12px;text-transform:uppercase}.sport-title.running{border-bottom-color:rgba(76,175,80,.3);color:#4caf50}.sport-title.cycling{border-bottom-color:rgba(255,152,0,.3);color:#ff9800}.sport-title.swimming{border-bottom-color:rgba(0,188,212,.3);color:#00bcd4}.sport-title.xcski{border-bottom-color:rgba(156,39,176,.3);color:#9c27b0}.sport-title.other{border-bottom-color:rgba(96,125,139,.3);color:#607d8b}.training-loads-content .input-row{align-items:stretch;gap:12px;justify-content:space-between;overflow:visible;width:100%}.training-loads-content .input-row,.training-loads-content .sport-section .input-row{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important}.training-loads-content .input-group{align-items:stretch;display:flex;flex:1 1;flex-direction:column;max-width:100%;min-width:0;width:auto}.training-loads-content .sport-section .input-group{flex:1 1!important;max-width:100%!important;min-width:0!important}.training-loads-content .sport-section .training-load-input{flex:0 1 auto!important;max-width:100%!important;min-width:0!important;width:100%!important}.input-label{color:#b0b0b0;font-size:12px;letter-spacing:.5px;margin-bottom:6px;text-align:center;text-transform:uppercase}.training-load-input{-moz-appearance:textfield;background-color:hsla(0,0%,100%,.05);border:1.5px solid hsla(0,0%,100%,.1);border-radius:8px;box-sizing:border-box;color:#fff;flex:0 1 auto;font-size:14px;font-weight:600;height:auto;max-width:100%;min-width:0;padding:6px 8px;text-align:center;transition:all .2s ease;width:100%}[data-theme=light] .training-load-input{background-color:rgba(0,0,0,.02);border:1.5px solid var(--border-color);color:var(--text-primary)}.training-load-input::-webkit-inner-spin-button,.training-load-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.training-load-input:focus{background-color:rgba(74,144,226,.1);border-color:#4a90e2;box-shadow:0 0 0 3px rgba(74,144,226,.15);outline:none}.training-load-input:hover:not(:disabled){background-color:hsla(0,0%,100%,.07);border-color:hsla(0,0%,100%,.15)}.training-load-input:disabled{cursor:not-allowed;opacity:.5}.training-load-input::placeholder{color:#666;font-weight:400}.action-buttons{margin-top:8px}.save-button{background:linear-gradient(135deg,#4a90e2,#357abd);box-shadow:0 2px 8px rgba(74,144,226,.2);font-weight:600;letter-spacing:.3px;padding:16px 24px;transition:all .2s ease}.save-button:hover:not(.disabled){background:linear-gradient(135deg,#357abd,#2868a8);box-shadow:0 4px 12px rgba(74,144,226,.3);transform:translateY(-1px)}.save-button:active:not(.disabled){transform:translateY(0)}.save-button.disabled{background:hsla(0,0%,40%,.5);box-shadow:none;transform:none}.button-spinner{animation:spin .8s linear infinite;border:2px solid hsla(0,0%,100%,.3);border-radius:50%;border-top-color:#fff;height:18px;width:18px}@media (max-width:768px){.sports-container{flex-direction:column;gap:20px}.sport-section{padding:16px}.info-box{margin-bottom:24px;padding:14px 16px}.info-text{font-size:13px}.sport-title{font-size:14px;margin-bottom:16px;padding-bottom:10px}.training-loads-content .input-row{flex-direction:column!important;gap:12px}.input-label{font-size:12px;margin-bottom:6px}.training-load-input{font-size:16px;padding:12px 14px}.save-button{font-size:15px;padding:14px 20px}}.training-phase-content{padding:20px}.athlete-verification-section{align-items:center;background:linear-gradient(135deg,rgba(74,144,226,.15),rgba(74,144,226,.05));border:2px solid rgba(74,144,226,.3);border-radius:12px;display:flex;gap:16px;justify-content:space-between;margin-bottom:24px;padding:16px 20px}[data-theme=light] .athlete-verification-section{background:linear-gradient(135deg,rgba(74,144,226,.1),rgba(74,144,226,.03));border-color:rgba(74,144,226,.4)}.athlete-verification-header{align-items:center;display:flex;flex:1 1;gap:12px}.athlete-icon{align-items:center;background:rgba(74,144,226,.2);border:2px solid rgba(74,144,226,.4);border-radius:50%;display:flex;flex-shrink:0;font-size:24px;height:48px;justify-content:center;width:48px}.athlete-info{flex:1 1;min-width:0}.athlete-name{font-size:18px;font-weight:700}[data-theme=light] .athlete-name{color:#333}.athlete-email{color:hsla(0,0%,100%,.7);font-size:14px}[data-theme=light] .athlete-email{color:rgba(0,0,0,.6)}.verification-badge{align-items:center;background:rgba(74,144,226,.2);border:1px solid rgba(74,144,226,.4);border-radius:20px;display:flex;flex-shrink:0;gap:8px;padding:8px 16px}[data-theme=light] .verification-badge{background:rgba(74,144,226,.15);border-color:rgba(74,144,226,.5)}.verification-icon{align-items:center;background:#4a90e2;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:12px;font-weight:700;height:18px;justify-content:center;width:18px}.verification-text{color:#4a90e2;font-size:13px;font-weight:600;white-space:nowrap}@media (max-width:768px){.athlete-verification-section{align-items:flex-start;flex-direction:column}.verification-badge{align-self:flex-end}}.training-phase-loading{align-items:center;color:#d3d3d3;display:flex;flex-direction:column;justify-content:center;padding:60px 20px}.training-phase-loading .loading-spinner{animation:spin .8s linear infinite;border:4px solid rgba(74,144,226,.2);border-radius:50%;border-top-color:#4a90e2;height:40px;margin-bottom:16px;width:40px}.training-phase-loading p{font-size:16px;margin:0}.section-title{color:#4a90e2;font-size:18px;margin-bottom:15px}.phase-selector-container{margin-bottom:30px}.phase-cards-container{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:20px}.phase-card{background-color:#2e2d2d;border:2px solid;border-radius:10px;cursor:pointer;padding:16px;position:relative;transition:all .2s ease}[data-theme=light] .phase-card{background-color:var(--bg-card)}.phase-card:hover{box-shadow:0 4px 12px rgba(0,0,0,.3);transform:translateY(-2px)}.phase-card.selected{box-shadow:0 0 0 3px rgba(74,144,226,.2)}.phase-card-header{align-items:center;display:flex;gap:10px;margin-bottom:8px}.phase-card-indicator{border-radius:50%;flex-shrink:0;height:12px;width:12px}.phase-card-title{color:#d3d3d3;flex:1 1;font-size:15px;font-weight:600}.phase-card-checkmark,.phase-card.selected .phase-card-title{color:#fff;font-weight:700}.phase-card-checkmark{align-items:center;background-color:currentColor;border-radius:50%;display:flex;flex-shrink:0;font-size:12px;height:20px;justify-content:center;width:20px}.phase-card-description{color:#999;font-size:12px;line-height:1.4;margin:0}.phase-card.selected .phase-card-description{color:#d3d3d3}.selected-phase-info{background-color:rgba(0,0,0,.2);border:2px solid;border-radius:10px;margin-top:8px;padding:16px}[data-theme=light] .selected-phase-info{background-color:rgba(0,0,0,.05)}.selected-phase-header{align-items:center;display:flex;gap:10px;margin-bottom:8px}.selected-phase-indicator{border-radius:50%;flex-shrink:0;height:16px;width:16px}.selected-phase-label{color:#fff;font-size:18px;font-weight:700;margin:0}.selected-phase-description{color:#d3d3d3;font-size:14px;line-height:1.5;margin:0}.save-button{border-radius:10px;font-size:18px;padding:15px}.phase-schedules-section{border-top:1px solid hsla(0,0%,100%,.1);margin-top:40px;padding-top:30px}.section-description{color:hsla(0,0%,100%,.6);font-size:14px;line-height:1.5;margin-bottom:20px}.phases-list{display:flex;flex-direction:column;gap:20px;margin-bottom:20px}.phase-item{background:hsla(0,0%,100%,.03);border:1px solid hsla(0,0%,100%,.1);border-radius:12px;padding:20px;transition:all .2s ease}[data-theme=light] .phase-item{background:rgba(0,0,0,.03);border-color:rgba(0,0,0,.1)}.phase-item:hover{background:hsla(0,0%,100%,.05);border-color:hsla(0,0%,100%,.15)}.phase-item-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.phase-item-title{color:#fff;font-size:16px;font-weight:600;margin:0}[data-theme=light] .phase-item-title{color:#333}.remove-phase-button{align-items:center;background:rgba(255,59,48,.2);border:1px solid rgba(255,59,48,.4);border-radius:6px;color:#ff3b30;cursor:pointer;display:flex;font-size:16px;height:28px;justify-content:center;line-height:1;padding:0;transition:all .2s ease;width:28px}.remove-phase-button:hover:not(:disabled){background:rgba(255,59,48,.3);border-color:rgba(255,59,48,.6)}.remove-phase-button:disabled{cursor:not-allowed;opacity:.5}.phase-fields{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr 1fr}@media (max-width:768px){.phase-fields{grid-template-columns:1fr}}.input-group{display:flex;flex-direction:column}.input-label{align-items:center;color:#fff;display:flex;font-size:14px;font-weight:600;gap:8px;margin-bottom:8px}[data-theme=light] .input-label{color:#333}.form-input{background:hsla(0,0%,100%,.1);border:1px solid hsla(0,0%,100%,.2);border-radius:8px;color:#fff;font-size:14px;padding:12px 16px;transition:all .2s ease}[data-theme=light] .form-input{background:rgba(0,0,0,.05);border-color:rgba(0,0,0,.2);color:#333}.form-input:focus{background:hsla(0,0%,100%,.15);border-color:#4a90e2;box-shadow:0 0 0 3px rgba(74,144,226,.1);outline:none}.form-input:disabled{cursor:not-allowed;opacity:.5}.form-select{background:hsla(0,0%,100%,.1);border:1px solid hsla(0,0%,100%,.2);border-radius:8px;color:#fff;cursor:pointer;font-size:14px;padding:12px 16px;transition:all .2s ease}[data-theme=light] .form-select{background:rgba(0,0,0,.05);border-color:rgba(0,0,0,.2);color:#333}.form-select:focus{background:hsla(0,0%,100%,.15);border-color:#4a90e2;box-shadow:0 0 0 3px rgba(74,144,226,.1);outline:none}.form-select:disabled{cursor:not-allowed;opacity:.5}.form-select option{background:#2a2a2a;color:#fff}.phase-description{color:hsla(0,0%,100%,.6);font-size:12px;font-style:italic;margin:6px 0 0}[data-theme=light] .phase-description{color:rgba(0,0,0,.6)}.helper-text{color:hsla(0,0%,100%,.6);font-size:12px;line-height:1.4;margin:6px 0 0}[data-theme=light] .helper-text{color:rgba(0,0,0,.6)}.add-phase-button{background:rgba(74,144,226,.2);border:1px dashed rgba(74,144,226,.5);border-radius:8px;color:#4a90e2;cursor:pointer;font-size:14px;font-weight:600;padding:12px 16px;transition:all .2s ease;width:100%}.add-phase-button:hover:not(:disabled){background:rgba(74,144,226,.3);border-color:rgba(74,144,226,.7);border-style:solid}.add-phase-button:disabled{cursor:not-allowed;opacity:.5}.fitness-thresholds-content{padding:16px}.fitness-thresholds-loading{align-items:center;color:#d3d3d3;display:flex;flex-direction:column;justify-content:center;padding:60px 20px}.fitness-thresholds-loading .loading-spinner{animation:spin .8s linear infinite;border:4px solid rgba(74,144,226,.2);border-radius:50%;border-top-color:#4a90e2;height:40px;margin-bottom:16px;width:40px}.fitness-thresholds-loading p{font-size:16px;margin:0}.sport-threshold-section{margin-bottom:18px}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.section-title{font-size:16px;font-weight:700;margin:0;text-transform:uppercase}.section-title.swimming{color:#00bcd4}.section-title.cycling{color:#ff9800}.section-title.running{color:#4caf50}.section-title.xcski{color:#8e24aa}.unit-toggle{background-color:#4a90e2;border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:13px;font-weight:700;min-width:55px;padding:4px 10px;transition:background-color .2s}.unit-toggle:hover:not(:disabled){background-color:#3d7ec6}.unit-toggle:disabled{cursor:not-allowed;opacity:.5}.input-group,.input-row{margin-bottom:12px}.input-row{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.input-group-half{margin-bottom:0}.input-label{color:#d3d3d3;display:block;font-size:13px;font-weight:500;margin-bottom:5px}.threshold-input{background-color:#2e2d2d;border:1px solid #404040;border-radius:8px;color:#fff;font-size:14px;padding:8px 12px;transition:border-color .2s;width:100%}[data-theme=light] .threshold-input{background-color:rgba(0,0,0,.02);border:1px solid var(--border-color);color:var(--text-primary)}.threshold-input:focus{border-color:#4a90e2;outline:none}.threshold-input:disabled{cursor:not-allowed;opacity:.5}.threshold-input::placeholder{color:#666}.helper-text{color:#999;font-size:11px;font-style:italic;line-height:1.3;margin:3px 0 0}.threshold-input.error{background:rgba(255,59,48,.1);border-color:#ff3b30}.threshold-input.error:focus{border-color:#ff3b30;box-shadow:0 0 0 3px rgba(255,59,48,.2)}.error-text{color:#ff3b30;font-size:11px;line-height:1.4;margin:4px 0 0}.save-button{align-items:center;background-color:#4a90e2;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:700;gap:10px;justify-content:center;margin-top:8px;padding:12px;transition:background-color .2s;width:100%}.save-button:hover:not(.disabled){background-color:#3d7ec6}.save-button.disabled{background-color:#666;cursor:not-allowed}.modal-overlay{animation:fadeIn .2s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:rgba(0,0,0,.75);bottom:0;left:0;position:fixed;right:0;top:0;z-index:1000000}.coaching-modal{animation:slideIn .3s ease-out;background:linear-gradient(135deg,#2a2a2a,#1a2332);border:1px solid hsla(0,0%,100%,.1);border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,.5);display:flex;flex-direction:column;left:50%;max-height:90vh;max-width:800px;overflow:hidden;position:fixed;top:50%;transform:translate(-50%,-50%);width:90%;z-index:1000001}[data-theme=light] .coaching-modal{background:var(--bg-modal);border:1px solid var(--border-color);box-shadow:0 20px 60px var(--shadow)}.coaching-modal.weekly-structure-modal{max-width:1400px;width:95%}.coaching-modal.weekly-structure-modal .modal-body{box-sizing:border-box;display:flex;flex-direction:column;min-height:0;overflow:hidden;padding:16px;width:100%}.coaching-modal.schedule-limitations-modal{max-width:1600px;width:95%}.coaching-modal.schedule-limitations-modal .modal-body{padding:16px}.coaching-modal.training-loads-modal{max-width:1200px;width:95%}.coaching-modal.training-loads-modal .modal-body{padding:24px}.coaching-modal.load-ratios-modal{max-width:1600px;width:95%}.coaching-modal.load-ratios-modal .modal-body{overflow-y:auto;padding:24px}@keyframes slideIn{0%{opacity:0;transform:translate(calc(-50% + 100px),-50%)}to{opacity:1;transform:translate(-50%,-50%)}}.modal-header{align-items:flex-start;background:linear-gradient(135deg,rgba(74,144,226,.1),transparent);border-bottom:1px solid hsla(0,0%,100%,.1);display:flex;justify-content:space-between;padding:24px 28px}.modal-header-content{align-items:flex-start;display:flex;flex:1 1;gap:16px}.modal-icon{align-items:center;background:rgba(74,144,226,.2);border-radius:12px;display:flex;flex-shrink:0;font-size:32px;height:56px;justify-content:center;width:56px}.modal-title-section{flex:1 1}.modal-header h2{color:#fff;font-size:24px;font-weight:700;letter-spacing:.3px;margin:0 0 8px}.modal-description{color:#b0b0b0;font-size:14px;letter-spacing:.1px;line-height:1.5;margin:0}.modal-header-actions{align-items:center;display:flex;flex-shrink:0;gap:12px}.modal-save-button{background:linear-gradient(135deg,#06d6a0,#05b385);border:none;border-radius:8px;box-shadow:0 4px 12px rgba(6,214,160,.3);color:#fff;cursor:pointer;font-size:15px;font-weight:600;line-height:1;padding:12px 28px;transition:all .2s ease;white-space:nowrap}.modal-save-button:hover{box-shadow:0 6px 16px rgba(6,214,160,.4);transform:translateY(-2px)}.modal-save-button:active{transform:translateY(0)}.modal-save-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.modal-close-button{align-items:center;background:hsla(0,0%,100%,.05);border:1px solid hsla(0,0%,100%,.1);border-radius:8px;color:#b0b0b0;cursor:pointer;display:flex;flex-shrink:0;font-size:24px;height:40px;justify-content:center;line-height:1;padding:0;transition:all .2s ease;width:40px}.modal-close-button:hover{background:rgba(255,59,48,.2);border-color:rgba(255,59,48,.4);color:#ff3b30}.modal-body{flex:1 1;min-height:300px;overflow-y:auto;padding:28px}.coaching-modal:not(:has(.modal-footer)) .modal-body{padding-bottom:32px}.modal-body::-webkit-scrollbar{width:8px}.modal-body::-webkit-scrollbar-track{background:hsla(0,0%,100%,.05);border-radius:4px}.modal-body::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.2);border-radius:4px}.modal-body::-webkit-scrollbar-thumb:hover{background:hsla(0,0%,100%,.3)}.modal-content-placeholder{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:300px;padding:40px 20px;text-align:center}.placeholder-icon{font-size:72px;margin-bottom:24px;opacity:.6}.modal-content-placeholder h3{color:#fff;font-size:20px;font-weight:600;margin:0 0 12px}.placeholder-text{color:#b0b0b0;font-size:14px;line-height:1.6;margin:0 0 24px}.athlete-info{background:rgba(74,144,226,.1);border:1px solid rgba(74,144,226,.2);border-radius:8px;color:#e0e0e0;font-size:14px;line-height:1.6;padding:16px 24px}.athlete-info strong{color:#fff;font-weight:600}.modal-footer{background:rgba(0,0,0,.2);border-top:1px solid hsla(0,0%,100%,.1);display:flex;gap:12px;justify-content:flex-end;padding:20px 28px}.modal-button{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;letter-spacing:.3px;padding:12px 24px;transition:all .2s ease}.modal-button.secondary{background:hsla(0,0%,100%,.05);border:1px solid hsla(0,0%,100%,.1);color:#e0e0e0}.modal-button.secondary:hover{background:hsla(0,0%,100%,.1);border-color:hsla(0,0%,100%,.2)}.modal-button.primary{background:linear-gradient(135deg,#4a90e2,#357abd);border:1px solid rgba(74,144,226,.3);color:#fff}.modal-button.primary:hover{background:linear-gradient(135deg,#357abd,#2868a8);box-shadow:0 4px 12px rgba(74,144,226,.3)}@media (max-width:768px){.coaching-modal{max-height:95vh;width:95%}.modal-header{padding:20px}.modal-header-content{gap:12px}.modal-icon{font-size:28px;height:48px;width:48px}.modal-header h2{font-size:20px}.modal-description{font-size:13px}.modal-body{min-height:250px;padding:20px}.modal-footer{flex-direction:column-reverse;padding:16px 20px}.modal-button{width:100%}.placeholder-icon{font-size:56px}}.athlete-selector-container{background:linear-gradient(135deg,#1a2332,#2e3441);display:flex;flex-direction:column;height:100%;overflow:hidden}[data-theme=light] .athlete-selector-container{background:var(--bg-sidebar)}.athlete-selector-header{background:linear-gradient(135deg,rgba(74,144,226,.1),transparent);border-bottom:1px solid hsla(0,0%,100%,.1);padding:24px}[data-theme=light] .athlete-selector-header{background:linear-gradient(135deg,rgba(0,123,255,.05),transparent);border-bottom:1px solid var(--border-color)}.selector-title-section{align-items:center;display:flex;gap:16px}.selector-icon{align-items:center;background:rgba(74,144,226,.2);border-radius:12px;display:flex;flex-shrink:0;font-size:36px;height:56px;justify-content:center;width:56px}.selector-title-section h2{color:#fff;font-size:24px;font-weight:700;letter-spacing:.3px;margin:0 0 4px}.selector-subtitle{color:#b0b0b0;font-size:14px;line-height:1.5;margin:0}.athlete-search-bar{align-items:center;background:rgba(0,0,0,.15);border-bottom:1px solid hsla(0,0%,100%,.1);display:flex;gap:10px;padding:12px 20px}[data-theme=light] .athlete-search-bar{background:rgba(0,0,0,.03);border-bottom:1px solid var(--border-color)}.search-icon{flex-shrink:0;font-size:16px;opacity:.6}.athlete-search-input{background:hsla(0,0%,100%,.08);border:1px solid hsla(0,0%,100%,.1);border-radius:8px;color:#fff;flex:1 1;font-size:14px;outline:none;padding:10px 14px;transition:border-color .2s ease}[data-theme=light] .athlete-search-input{background:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-primary)}.athlete-search-input::placeholder{color:#666}[data-theme=light] .athlete-search-input::placeholder{color:#999}.athlete-search-input:focus{border-color:rgba(74,144,226,.5)}.search-clear{background:none;border:none;border-radius:4px;color:#888;cursor:pointer;flex-shrink:0;font-size:14px;padding:4px 8px;transition:color .2s ease}.search-clear:hover{color:#fff}[data-theme=light] .search-clear:hover{color:#333}.athlete-selector-content{flex:1 1;overflow-y:auto;padding:20px}.athlete-selector-content::-webkit-scrollbar{width:8px}.athlete-selector-content::-webkit-scrollbar-track{background:hsla(0,0%,100%,.05);border-radius:4px}.athlete-selector-content::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.2);border-radius:4px}.athlete-selector-content::-webkit-scrollbar-thumb:hover{background:hsla(0,0%,100%,.3)}.athlete-list{display:flex;flex-direction:column;gap:12px}.athlete-card{align-items:center;background:linear-gradient(135deg,#2a2a2a,#1a2332);border:1px solid hsla(0,0%,100%,.1);border-left:4px solid #4a90e2;border-radius:12px;cursor:pointer;display:flex;gap:16px;padding:16px 20px;text-align:left;transition:all .3s ease;width:100%}[data-theme=light] .athlete-card{background:var(--bg-card);border:1px solid var(--border-color);box-shadow:0 2px 8px var(--shadow-light)}.athlete-card:hover{background:linear-gradient(135deg,#2e3441,#1a2332);border-color:rgba(74,144,226,.4);box-shadow:0 4px 16px rgba(74,144,226,.2);transform:translateX(4px)}[data-theme=light] .athlete-card:hover{background:var(--bg-tertiary);border-color:rgba(0,123,255,.3);box-shadow:0 4px 16px var(--shadow-light)}.athlete-avatar{align-items:center;background:linear-gradient(135deg,#4a90e2,#357abd);border-radius:50%;display:flex;flex-shrink:0;height:48px;justify-content:center;width:48px}.athlete-avatar span{color:#fff;font-size:16px;font-weight:700;letter-spacing:.5px}.athlete-details{flex:1 1;min-width:0}.athlete-name{color:#fff;font-size:16px;font-weight:600;letter-spacing:.2px;margin:0 0 4px}.athlete-email,.athlete-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.athlete-email{color:#b0b0b0;font-family:SF Mono,Monaco,Consolas,monospace;font-size:13px;margin:0}.athlete-arrow{color:#666;flex-shrink:0;font-size:24px;transition:all .3s ease}.athlete-card:hover .athlete-arrow{color:#4a90e2;transform:translateX(4px)}.empty-state{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:300px;padding:60px 20px;text-align:center}.empty-icon{font-size:72px;margin-bottom:24px;opacity:.5}.empty-text{color:#b0b0b0;font-size:16px;line-height:1.6;margin:0}@media (max-width:768px){.athlete-selector-header{padding:20px}.selector-icon{font-size:28px;height:48px;width:48px}.selector-title-section h2{font-size:20px}.selector-subtitle{font-size:13px}.athlete-selector-content{padding:16px}.athlete-card{padding:14px 16px}.athlete-avatar{height:40px;width:40px}.athlete-avatar span{font-size:14px}.athlete-name{font-size:15px}.athlete-email{font-size:12px}}.backend-outage-overlay{align-items:center;animation:fadeIn .2s ease-in;background-color:rgba(0,0,0,.75);bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.backend-outage-modal{animation:slideUp .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,.3);max-width:500px;padding:40px;text-align:center;width:90%}[data-theme=light] .backend-outage-modal{background:var(--bg-modal);box-shadow:0 20px 60px var(--shadow)}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.outage-icon{animation:pulse 2s ease-in-out infinite;font-size:64px;margin-bottom:20px}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.outage-title{color:#2c3e50;font-size:28px;font-weight:700;margin:0 0 16px}.outage-message{color:#555;font-size:16px;line-height:1.5;margin:0 0 12px}.outage-submessage{color:#777;font-size:14px;line-height:1.6;margin:0 0 32px}.outage-actions{display:flex;gap:12px;justify-content:center;margin-bottom:24px}.retry-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 4px 12px rgba(102,126,234,.4);color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:14px 32px;transition:all .2s ease}.retry-button:hover{box-shadow:0 6px 16px rgba(102,126,234,.5);transform:translateY(-2px)}.retry-button:active{transform:translateY(0)}.outage-footer{color:#999;font-size:12px;margin:0}@media (prefers-color-scheme:dark){.backend-outage-modal{background:#2c3e50;color:#ecf0f1}.outage-title{color:#ecf0f1}.outage-message{color:#bdc3c7}.outage-submessage{color:#95a5a6}.outage-footer{color:#7f8c8d}}.App{background:linear-gradient(135deg,var(--bg-primary) 0,var(--bg-secondary) 50%,var(--bg-tertiary) 100%);color:var(--text-primary);display:flex;flex-direction:column;height:100vh;margin:0;overflow:hidden;padding:0;transition:background .3s ease,color .3s ease}.app-main-wrapper{display:flex;flex:1 1;flex-direction:row;overflow:hidden}.loading-container{align-items:center;background:linear-gradient(135deg,var(--bg-primary) 0,var(--bg-secondary) 50%,var(--bg-tertiary) 100%);color:var(--text-primary);display:flex;flex-direction:column;height:100vh;justify-content:center}.loading-spinner{border-top:4px solid var(--bg-tertiary);border:4px solid var(--bg-tertiary);border-top-color:var(--accent-primary);margin-bottom:16px}.error-container{align-items:center;background:linear-gradient(135deg,var(--bg-primary) 0,var(--bg-secondary) 50%,var(--bg-tertiary) 100%);color:var(--text-primary);display:flex;flex-direction:column;height:100vh;justify-content:center;text-align:center}.error-container h2{color:#dc3545;margin-bottom:16px}.error-container p{margin-bottom:32px}.error-container button{background-color:var(--accent-primary);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;margin-top:8px;padding:12px 24px}.error-container button:hover{background-color:var(--accent-hover)}.app-content{display:flex;flex:1 1;height:100%;overflow:hidden}.library-panel{background:linear-gradient(135deg,var(--bg-primary),var(--bg-secondary));border-right:1px solid var(--border-color);max-width:480px;min-width:480px;overflow:hidden;width:480px}.calendar-panel{flex:1 1;overflow:hidden}.calendar-panel,.toast-container{display:flex;flex-direction:column}.toast-container{bottom:20px;gap:12px;pointer-events:none;position:fixed;right:20px;z-index:10000}.toast-container>*{pointer-events:all}@media (max-width:1200px){.library-panel{max-width:420px;min-width:420px;width:420px}}@media (max-width:992px){.app-content,.app-main-wrapper{flex-direction:column}.library-panel{border-bottom:1px solid var(--border-color);border-right:none;height:300px;max-width:100%;width:100%}.calendar-panel{flex:1 1}}@media (max-width:768px){.library-panel{height:250px}.toast-container{left:20px;right:20px}}.registration-container{align-items:stretch}.registration-background-image{object-position:center}.registration-split-right{align-items:center}@media (max-width:968px){.registration-container{flex-direction:column}.registration-split-left{min-height:40vh;padding:20px}.registration-split-right{min-height:60vh;padding:20px}}.registration-form{max-width:450px;padding:40px}.registration-header{gap:12px;margin-bottom:32px}.registration-logo{-ms-interpolation-mode:nearest-neighbor;backface-visibility:hidden;-webkit-backface-visibility:hidden;height:80px;image-rendering:-moz-crisp-edges;margin-bottom:4px;max-height:80px}.registration-header h1{font-size:28px;margin:0 0 8px}.registration-header p{font-size:16px}.form-row{display:flex;gap:16px}.form-row .form-group{flex:1 1}.form-group input{box-sizing:border-box}.registration-button{font-size:16px}.registration-button:hover:not(:disabled){background:hsla(0,0%,100%,.1);border-color:#fff;transform:translateY(-1px)}.registration-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.registration-footer{margin-top:24px}.registration-footer p{font-size:14px}.registration-page{min-height:100vh;overflow-x:hidden;overflow-y:auto;position:relative;width:100%}.registration-container{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;align-items:flex-start;background:linear-gradient(135deg,#121212,#1a2332 50%,#2e3441);display:flex;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif;min-height:100vh}.registration-split-left{align-items:center;display:flex;flex:1 1;justify-content:center;min-height:100vh;overflow:hidden;padding:40px;position:relative}.registration-background-image{height:100%;image-rendering:-webkit-optimize-contrast;left:0;min-height:100%;object-fit:cover;object-position:center center;position:absolute;top:0;width:100%;will-change:transform}.registration-image-overlay{-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0);background:linear-gradient(135deg,hsla(0,0%,7%,.3),rgba(26,35,50,.4));height:100%;left:0;position:absolute;top:0;width:100%}.registration-split-right{align-items:flex-start;background:linear-gradient(135deg,#121212,#1a2332 50%,#2e3441);display:flex;flex:1 1;justify-content:center;min-height:100vh;overflow-y:auto;padding:40px}@media (max-width:968px){.registration-container{flex-direction:column}.registration-split-left{align-items:center;display:flex;justify-content:center;min-height:40vh;overflow:hidden;padding:0;position:relative}.registration-background-image{height:100%;left:50%;min-height:100%;object-fit:cover;object-position:center center;position:absolute;top:0;transform:translateX(-50%);width:150%}.registration-split-right{min-height:auto;overflow-y:visible;padding:20px}}.registration-form{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:hsla(0,0%,100%,.02);border:1px solid hsla(0,0%,100%,.2);border-radius:12px;box-shadow:0 8px 32px rgba(0,0,0,.3);max-width:550px;padding:30px;position:relative;width:100%;z-index:1}[data-theme=light] .registration-form{background:rgba(0,0,0,.02);border:1px solid var(--border-color);box-shadow:0 8px 32px var(--shadow)}.registration-header{align-items:center;display:flex;flex-direction:column;gap:8px;margin-bottom:20px;overflow:hidden;text-align:center;width:100%}.registration-logo{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:block;height:60px;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges;image-rendering:pixelated;image-rendering:auto;margin-bottom:2px;max-height:60px;max-width:100%;object-fit:contain;transform:translateZ(0);width:auto}.registration-header h1{color:#fff;font-size:24px;font-weight:700;margin:0 0 4px}.registration-header p{color:#a0a0a0;font-size:14px;margin:0}.registration-content{width:100%}.registration-greeting{margin-bottom:16px}.registration-greeting p{font-size:14px;margin:0}.info-box,.registration-greeting p{color:hsla(0,0%,100%,.9);line-height:1.5}.info-box{background:hsla(0,0%,100%,.05);border-left:4px solid hsla(0,0%,100%,.3);border-radius:0 8px 8px 0;font-size:13px;margin:12px 0;padding:12px 16px}.info-box.warning{background:rgba(255,193,7,.1);border-left-color:#ffc107}.info-box strong{color:#fff;display:block;font-size:14px;font-weight:600;margin-bottom:6px}.info-box p{color:hsla(0,0%,100%,.85);margin:0}.steps-container{margin:18px 0}.steps-container h3{color:#fff;font-size:16px;font-weight:600;margin-bottom:12px}.steps-list{color:hsla(0,0%,100%,.9);font-size:13px;line-height:1.6;margin:0;padding-left:20px}.steps-list li{margin-bottom:8px}.steps-list li:last-child{margin-bottom:0}.registration-button{background:transparent;border:2px solid #fff;border-radius:15px;box-sizing:border-box;color:#fff;cursor:pointer;display:block;font-family:inherit;font-size:15px;font-weight:600;letter-spacing:.5px;margin-top:18px;padding:14px;text-align:center;text-decoration:none;text-transform:uppercase;transition:all .3s ease;width:100%}.registration-button:hover{background:hsla(0,0%,100%,.1);border-color:#fff;box-shadow:0 4px 12px rgba(0,0,0,.3);transform:translateY(-1px)}.registration-button:active{box-shadow:0 2px 8px rgba(0,0,0,.3);transform:translateY(0)}.registration-footer{border-top:1px solid hsla(0,0%,100%,.1);margin-top:20px;padding-top:16px;text-align:center}.registration-footer p{color:#a0a0a0;font-size:12px;line-height:1.5;margin:0}.registration-footer strong{color:hsla(0,0%,100%,.9);font-weight:600}.registration-loading{align-items:center;display:flex;flex-direction:column;gap:16px;justify-content:center;margin:0 auto;min-height:100vh;width:100%}.registration-loading p{color:hsla(0,0%,100%,.7);font-size:16px}.loading-spinner{animation:spin 1s linear infinite;border:3px solid hsla(0,0%,100%,.2);border-radius:50%;border-top-color:#fff;height:40px;width:40px}@keyframes spin{to{transform:rotate(1turn)}}.error-message{padding:24px;text-align:center}.unsupported-device-container{align-items:center!important;flex-direction:column!important;justify-content:center!important}.unsupported-device-form{margin:0 auto;max-width:500px;width:100%}.error-message.unsupported-device{align-items:center;background:rgba(255,193,7,.1);border:1px solid rgba(255,193,7,.4);box-sizing:border-box;color:hsla(0,0%,100%,.9);display:flex;flex-direction:column;padding:32px;text-align:center;width:100%}.unsupported-device-icon{display:block;font-size:48px;line-height:1;margin-bottom:16px}.error-message.unsupported-device h2{color:#fff;font-size:22px;font-weight:600;margin:0 0 16px;text-align:center;width:100%}.error-message.unsupported-device p{color:hsla(0,0%,100%,.85);font-size:15px;line-height:1.6;margin:0 0 12px;text-align:center;width:100%}.unsupported-device-subtext{color:hsla(0,0%,100%,.75)!important;font-size:14px!important;text-align:center!important;width:100%!important}.unsupported-device-instructions{border-top:1px solid hsla(0,0%,100%,.1);margin-top:24px;padding-top:24px;text-align:center;width:100%}.unsupported-device-instructions-title{color:hsla(0,0%,100%,.9)!important;font-size:15px!important;font-weight:600;margin-bottom:12px;text-align:center!important;width:100%!important}.unsupported-device-list{color:hsla(0,0%,100%,.8);display:block;font-size:14px;line-height:1.8;margin:12px auto 0;max-width:100%;padding-left:24px;text-align:left;width:-webkit-fit-content;width:fit-content}.unsupported-device-list li{margin-bottom:8px}.error-message.unsupported-device strong{color:#fff;font-weight:600}.error-message h2{color:#dc3545;font-size:20px;font-weight:600;margin:0 0 12px}.error-message p{color:#dc3545;font-size:14px;line-height:1.6;margin:0}.forgot-container{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;align-items:stretch;background:linear-gradient(135deg,#121212,#1a2332 50%,#2e3441);display:flex;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif;min-height:100vh}.forgot-split-left{align-items:center;display:flex;flex:1 1;justify-content:center;overflow:hidden;padding:40px;position:relative}.forgot-background-image{image-rendering:-webkit-optimize-contrast;object-fit:cover;object-position:center;will-change:transform}.forgot-background-image,.forgot-image-overlay{height:100%;left:0;position:absolute;top:0;width:100%}.forgot-image-overlay{-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0);background:linear-gradient(135deg,hsla(0,0%,7%,.3),rgba(26,35,50,.4))}.forgot-split-right{align-items:center;background:linear-gradient(135deg,#121212,#1a2332 50%,#2e3441);display:flex;flex:1 1;justify-content:center;padding:40px}@media (max-width:968px){.forgot-container{flex-direction:column}.forgot-split-left{min-height:40vh;padding:20px}.forgot-split-right{min-height:60vh;padding:20px}}.forgot-form{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:hsla(0,0%,100%,.02);border:1px solid hsla(0,0%,100%,.2);border-radius:12px;box-shadow:0 8px 32px rgba(0,0,0,.3);max-width:450px;padding:40px;position:relative;width:100%;z-index:1}[data-theme=light] .forgot-form{background:rgba(0,0,0,.02);border:1px solid var(--border-color);box-shadow:0 8px 32px var(--shadow)}.forgot-header{align-items:center;display:flex;flex-direction:column;gap:12px;margin-bottom:32px;overflow:hidden;text-align:center;width:100%}.forgot-logo{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:block;height:80px;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges;image-rendering:pixelated;image-rendering:auto;margin-bottom:4px;max-height:80px;max-width:100%;object-fit:contain;transform:translateZ(0);width:auto}.forgot-header h1{color:#fff;font-size:28px;font-weight:700;margin:0 0 8px}.mode-selector{display:flex;gap:12px;margin-bottom:24px}.mode-button{background:hsla(0,0%,100%,.05);border:1px solid hsla(0,0%,100%,.2);border-radius:8px;color:hsla(0,0%,100%,.6);cursor:pointer;flex:1 1;font-family:inherit;font-size:14px;font-weight:500;padding:12px 20px;transition:all .3s ease}.mode-button:hover{background:hsla(0,0%,100%,.08);border-color:hsla(0,0%,100%,.3);color:hsla(0,0%,100%,.8)}.mode-button.active{background:hsla(0,0%,100%,.1);border-color:hsla(0,0%,100%,.4);color:#fff;font-weight:600}.form-group{margin-bottom:24px;position:relative}.form-group label{background:transparent;color:hsla(0,0%,100%,.6);font-weight:400;left:26px;padding:0 4px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.form-group input,.form-group label{font-size:16px;transition:all .3s ease}.form-group input{background:hsla(0,0%,100%,.05);border:1px solid hsla(0,0%,100%,.2);border-radius:8px;color:#fff;font-family:inherit;padding:26px 26px 12px;width:100%}.form-group input:focus+label,.form-group input:not(:placeholder-shown)+label{color:hsla(0,0%,100%,.8);font-size:12px;font-weight:500;top:8px;transform:translateY(0)}.form-group input:focus{background:hsla(0,0%,100%,.08);border-color:hsla(0,0%,100%,.4);outline:none}.form-group input:disabled{cursor:not-allowed;opacity:.5}.error-message{background:rgba(220,53,69,.1);border:1px solid rgba(220,53,69,.3);border-radius:8px;color:#dc3545;padding:12px}.error-message,.success-message{font-size:14px;margin-bottom:16px}.success-message{background:rgba(40,167,69,.1);border:1px solid rgba(40,167,69,.3);border-radius:8px;color:#28a745;padding:16px;text-align:center}.success-message p{color:#28a745;margin:8px 0}.forgot-button{background:transparent;border:2px solid #fff;border-radius:15px;color:#fff;cursor:pointer;font-family:inherit;font-size:16px;font-weight:600;letter-spacing:.5px;padding:14px;text-transform:uppercase;transition:all .3s ease;width:100%}.forgot-button:hover:not(:disabled){background:hsla(0,0%,100%,.1);border-color:#fff;transform:translateY(-1px)}.forgot-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.forgot-footer{margin-top:24px;text-align:center}.forgot-footer p{color:#a0a0a0;font-size:14px;margin:0}.login-link{color:#fff;font-weight:600;text-decoration:none;transition:color .3s ease}.login-link:hover{color:hsla(0,0%,100%,.8);text-decoration:underline}.legal-page{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#121212,#1a2332 50%,#2e3441);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif;min-height:100vh;padding:40px 20px}.legal-container{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:hsla(0,0%,100%,.05);border:1px solid hsla(0,0%,100%,.1);border-radius:16px;box-shadow:0 8px 32px rgba(0,0,0,.3);margin:0 auto;max-width:900px;padding:60px 50px}.legal-container h1{color:#fff;font-size:2.5rem;font-weight:700;margin-bottom:20px;text-align:center}.legal-content{color:#e0e0e0;line-height:1.8}.last-updated{color:#a0a0a0;font-size:.9rem;font-style:italic;text-align:center}.last-updated,.legal-content section{margin-bottom:40px}.legal-content h2{color:#fff;font-size:1.5rem;font-weight:600;margin-bottom:16px;margin-top:32px}.legal-content p{font-size:1rem;margin-bottom:16px}.legal-content ul{margin-bottom:16px;margin-left:24px}.legal-content li{margin-bottom:8px;padding-left:8px}@media (max-width:768px){.legal-container{padding:40px 30px}.legal-container h1{font-size:2rem}.legal-content h2{font-size:1.3rem}}.onboarding-funnel-page{flex:1 1;overflow-y:auto;padding:24px 16px 28px}.onboarding-funnel-content{margin:0 auto;max-width:920px}.onboarding-funnel-card{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:hsla(0,0%,100%,.03);border:1px solid var(--border-color-light);border-radius:14px;box-shadow:0 12px 30px rgba(0,0,0,.26);padding:22px}[data-theme=light] .onboarding-funnel-card{background:hsla(0,0%,100%,.72);box-shadow:0 10px 24px rgba(0,0,0,.12)}.onboarding-funnel-header-row{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.onboarding-funnel-title{font-size:clamp(1.6rem,2vw,2.1rem);letter-spacing:.2px;margin:0}.onboarding-funnel-description{color:var(--text-secondary);line-height:1.45;margin:0 0 14px}.onboarding-funnel-back-button,.onboarding-funnel-save-button{background:var(--bg-card);border:1px solid var(--border-color-light);border-radius:8px;color:var(--text-primary);cursor:pointer;font-size:14px;font-weight:600;padding:10px 14px;transition:all .2s ease}.onboarding-funnel-back-button:hover,.onboarding-funnel-save-button:hover:not(:disabled){border-color:var(--accent-primary);box-shadow:0 6px 14px var(--shadow-light);transform:translateY(-1px)}.onboarding-funnel-save-button{background:linear-gradient(135deg,rgba(0,123,255,.22),rgba(0,123,255,.08));min-width:132px}.onboarding-funnel-save-button:disabled{box-shadow:none;cursor:not-allowed;opacity:.65;transform:none}.onboarding-funnel-form{grid-gap:16px;display:grid;gap:16px}.onboarding-funnel-field{grid-gap:7px;display:grid;gap:7px}.onboarding-funnel-label{color:var(--text-primary);font-size:14px;font-weight:600}.onboarding-funnel-label-row{align-items:center;display:inline-flex;gap:8px}.onboarding-funnel-help-wrap{align-items:center;display:inline-flex;position:relative}.onboarding-funnel-help-icon{align-items:center;background:var(--bg-card);border:1px solid var(--border-color-light);border-radius:999px;color:var(--text-secondary);cursor:help;display:inline-flex;font-size:12px;font-weight:700;height:20px;justify-content:center;line-height:1;padding:0;width:20px}.onboarding-funnel-help-icon:hover{border-color:var(--accent-primary);color:var(--text-primary)}.onboarding-funnel-help-tooltip{background:var(--bg-card);border:1px solid var(--border-color-light);border-radius:6px;box-shadow:0 6px 18px var(--shadow);color:var(--text-primary);font-size:12px;left:calc(100% + 8px);line-height:1.35;max-width:340px;min-width:280px;opacity:0;padding:8px 10px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);transition:opacity .14s ease,visibility .14s ease;visibility:hidden;z-index:50}.onboarding-funnel-help-wrap:focus-within .onboarding-funnel-help-tooltip,.onboarding-funnel-help-wrap:hover .onboarding-funnel-help-tooltip{opacity:1;visibility:visible}.onboarding-funnel-input,.onboarding-funnel-textarea{background:hsla(0,0%,100%,.05);border:1px solid var(--border-color-light);border-radius:8px;color:var(--text-primary);font-size:15px;padding:11px 12px;transition:border-color .2s ease,box-shadow .2s ease;width:100%}[data-theme=light] .onboarding-funnel-input,[data-theme=light] .onboarding-funnel-textarea{background:var(--bg-primary);color:var(--text-primary)}.onboarding-funnel-input::placeholder,.onboarding-funnel-textarea::placeholder{color:var(--text-secondary)}.onboarding-funnel-input:focus,.onboarding-funnel-textarea:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px rgba(0,123,255,.2);outline:none}.onboarding-funnel-upload-row{align-items:center;display:flex;gap:10px;margin-top:2px}.onboarding-funnel-upload-button{align-items:center;background:var(--bg-card);border:1px solid var(--border-color-light);border-radius:8px;color:var(--text-primary);cursor:pointer;display:inline-flex;font-size:13px;font-weight:600;justify-content:center;padding:8px 12px;transition:all .2s ease}.onboarding-funnel-upload-button:hover{border-color:var(--accent-primary)}.onboarding-funnel-hidden-file-input{display:none}.onboarding-funnel-file-name{color:var(--text-secondary);font-size:12px;max-width:420px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.onboarding-funnel-image-preview{background:hsla(0,0%,100%,.03);border:1px solid var(--border-color-light);border-radius:8px;margin-top:8px;padding:8px}.onboarding-funnel-preview-image{border-radius:6px;display:block;max-height:220px;object-fit:contain;width:100%}.onboarding-funnel-default-preview{grid-gap:8px;display:grid;gap:8px;justify-items:center}.onboarding-funnel-default-preview-image{border-radius:6px;display:block;max-height:220px;object-fit:contain;width:100%}.onboarding-funnel-default-preview-text{color:var(--text-secondary);font-size:14px;font-weight:600}.onboarding-funnel-textarea{line-height:1.45;min-height:220px;resize:vertical}.onboarding-funnel-alert{border-radius:8px;font-size:14px;margin-bottom:12px;padding:10px 12px}.onboarding-funnel-alert-error{background:rgba(185,28,28,.14);border:1px solid rgba(239,68,68,.4);color:#fecaca}[data-theme=light] .onboarding-funnel-alert-error{color:#991b1b}.onboarding-funnel-alert-success{background:rgba(22,101,52,.16);border:1px solid rgba(34,197,94,.36);color:#bbf7d0}[data-theme=light] .onboarding-funnel-alert-success{color:#166534}.onboarding-funnel-actions{display:flex}.onboarding-funnel-domain-panel{grid-gap:10px;background:hsla(0,0%,100%,.03);border:1px solid var(--border-color-light);border-radius:10px;display:grid;gap:10px;padding:12px}.onboarding-funnel-domain-header{align-items:center;display:flex;justify-content:space-between}.onboarding-funnel-domain-help{color:var(--text-secondary);font-size:13px;margin:0}.onboarding-funnel-domain-input-row{align-items:center;display:flex;gap:8px}.onboarding-funnel-domain-danger,.onboarding-funnel-domain-provision,.onboarding-funnel-domain-refresh,.onboarding-funnel-domain-secondary{background:var(--bg-card);border:1px solid var(--border-color-light);border-radius:8px;color:var(--text-primary);cursor:pointer;font-size:13px;font-weight:600;padding:9px 11px}.onboarding-funnel-domain-danger:hover,.onboarding-funnel-domain-provision:hover,.onboarding-funnel-domain-refresh:hover,.onboarding-funnel-domain-secondary:hover{border-color:var(--accent-primary)}.onboarding-funnel-domain-danger{border-color:rgba(239,68,68,.5)}.onboarding-funnel-domain-status-wrap{grid-gap:8px;border:1px dashed var(--border-color-light);border-radius:8px;display:grid;gap:8px;padding:10px}.onboarding-funnel-domain-status-line{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.onboarding-funnel-domain-status-label{color:var(--text-secondary);font-size:13px}.onboarding-funnel-domain-status-badge{border-radius:999px;font-size:12px;font-weight:700;padding:3px 8px;text-transform:uppercase}.onboarding-funnel-domain-status-pending_dns,.onboarding-funnel-domain-status-verifying{background:rgba(234,179,8,.18);color:#fde68a}.onboarding-funnel-domain-status-active{background:rgba(34,197,94,.2);color:#bbf7d0}.onboarding-funnel-domain-status-failed,.onboarding-funnel-domain-status-removed{background:rgba(239,68,68,.2);color:#fecaca}.onboarding-funnel-domain-provider-status{color:var(--text-secondary);font-size:12px}.onboarding-funnel-domain-records{grid-gap:5px;display:grid;gap:5px}.onboarding-funnel-domain-record-item{color:var(--text-secondary);font-size:12px;word-break:break-all}.onboarding-funnel-domain-last-error{color:#fecaca;font-size:12px}.onboarding-funnel-domain-actions{display:flex;gap:8px}.onboarding-funnel-loading{color:var(--text-secondary)}@media (max-width:768px){.onboarding-funnel-card{padding:16px}.onboarding-funnel-header-row{align-items:flex-start;flex-direction:column}}
/*# sourceMappingURL=main.8c5f0f92.css.map*/