@import url(https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700&display=swap);.settings-pane{background-color:#333;border:1px solid #444;border-radius:8px;box-shadow:0 4px 6px #0000001a;color:#fff;padding:20px;position:fixed;right:10px;top:60px;width:300px;z-index:1000}.settings-close{align-items:center;background:none;border:none;color:#999;cursor:pointer;display:flex;font-size:24px;height:30px;justify-content:center;padding:0;position:absolute;right:10px;top:10px;width:30px}.settings-close:hover{color:#fff}.settings-pane h2{color:#bd9757;font-size:1.5em;margin:0 0 20px}.settings-group{margin-bottom:5px}.settings-group label{color:#ccc;display:block;font-size:.9em;margin-bottom:5px}.settings-group input{background-color:#222;border:1px solid #444;border-radius:4px;box-sizing:border-box;color:#fff;font-size:1em;padding:8px;width:100%}.unit-toggle{background-color:#444}.unit-toggle:hover{background-color:#555}.button-group{margin-top:10px}.settings-pane .save-button{background-color:#ffcb74!important;border:none!important;border-radius:4px!important;box-sizing:border-box!important;color:#222!important;cursor:pointer!important;display:block!important;font-size:.9em!important;font-weight:700!important;margin-bottom:15px!important;padding:10px 16px!important;text-decoration:none!important;transition:background-color .2s!important}.settings-pane .save-button:hover{background-color:#cea661!important;text-decoration:none!important}.settings-pane .clear-button{background-color:#dc3545!important;border:none!important;border-radius:4px!important;box-sizing:border-box!important;color:#fff!important;cursor:pointer!important;display:block!important;font-size:.9em!important;font-weight:700!important;margin-bottom:0!important;margin-top:0!important;padding:10px 16px!important;text-decoration:none!important;transition:background-color .2s!important}.settings-pane .clear-button:hover{background-color:#c82333!important;text-decoration:none!important}.navbar{background-color:#2f2f2f;padding:10px}.navbar-title{color:#cea661;margin:0}.navbar-title:hover{color:#e4b768}.navbar-title-link{margin:0;text-decoration:none}.navbar-links{align-items:anchor-center;display:flex;gap:10px;margin-left:auto}.navbar-button{color:#fff;padding:0 10px;text-decoration:none}.navbar-button:hover{text-decoration:underline}.settings-button{align-items:center;background:none;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:1.2em;justify-content:center;margin-left:10px;padding:8px}.settings-button:hover{background-color:#444}.hamburger-button{background:none;border:none;border-radius:4px;color:#fff;cursor:pointer;display:none;font-size:1.5em;padding:8px}.hamburger-button:hover{background-color:#444}.mobile-nav{background-color:#2f2f2f;box-shadow:-2px 0 10px #0000004d;display:none;flex-direction:column;height:100vh;padding-top:5px;position:fixed;right:-300px;top:0;transition:right .3s ease;width:280px;z-index:1000}.mobile-nav-open{right:0}.mobile-nav-button{border-bottom:1px solid #444;color:#fff;display:block;padding:15px 20px;text-decoration:none;transition:background-color .2s}.mobile-nav-button:hover{background-color:#444;text-decoration:none}.mobile-settings-button{align-items:center;background:none;border:none;border-bottom:1px solid #444;color:#fff;cursor:pointer;display:flex;font-size:1em;gap:10px;padding:15px 20px;text-align:left;transition:background-color .2s;width:100%}.mobile-settings-button:hover{background-color:#444}.mobile-overlay{background-color:#00000080;display:none;height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:999}@media screen and (max-width:768px){.desktop-nav{display:none!important}.hamburger-button{align-items:center;display:flex;justify-content:center}.mobile-nav{display:flex}.mobile-overlay{display:block}.navbar-title{font-size:1.2em}.navbar{padding:8px 15px}}.mobile-only{display:none}@media screen and (max-width:768px){.mobile-only{display:block}}.home-link{border:1px solid #2f2f2f;border-radius:5px;color:#2f2f2f;font-size:1.1rem;padding:1rem 2rem;text-decoration:none;transition:all .3s ease}.home-link:hover{background-color:#cea661;color:#2f2f2f}.home-links-container{display:flex;gap:1rem;justify-content:center}.home-container{align-items:center;display:flex;flex-direction:column;margin:0 auto;max-width:800px;text-align:center}.home-logo{border-radius:20px;display:block;height:auto;margin:0 auto;max-width:300px;width:100%}.home-description{color:#555;font-size:1.2rem;line-height:1.6}.home-title{color:#333}@media screen and (max-width:768px){.home-container{gap:0;justify-content:space-between;min-height:calc(100vh - 70px);padding:0}.home-logo{height:auto;margin:0 auto;max-height:30vh;max-width:min(40vw,250px);object-fit:contain;width:auto}.home-description{font-size:1rem;line-height:1.4;margin-bottom:1rem;padding:0 .5rem}.home-title{font-size:1.3rem;margin-bottom:1.5rem}.home-links-container{align-items:center;flex-direction:column;gap:.8rem;margin-bottom:1rem}.home-link{font-size:1rem;padding:.8rem 1.5rem;text-align:center;width:200px}.home-footer{font-size:12px;line-height:1.3;margin-top:auto;padding:15px 0 10px}}.home-footer{border-top:1px solid #e0e0e0;color:#666;font-size:14px;margin-top:3rem;padding:20px 0;text-align:center}.feedback-link{color:#666;font-size:14px;text-decoration:none;transition:color .3s ease}.feedback-link:hover{color:#cea661;text-decoration:underline}.workout-list{display:flex;flex-direction:column;gap:10px;margin-left:10px;margin-top:10px;max-height:80vh;width:100%}.controls-container{align-items:center;background-color:#f5f5f5;border-radius:5px;display:flex;justify-content:space-between;margin-bottom:20px;padding:10px}.button-container{display:flex;flex-wrap:wrap;gap:10px}.display-toggle{background-color:#fff;border:1px solid #ddd;border-radius:4px;padding:8px 15px}.display-toggle label{align-items:center;cursor:pointer;display:flex;gap:8px}.display-toggle input[type=checkbox]{margin:0}.interval-form{background-color:#fff;border:1px solid #ddd;border-radius:8px;margin-bottom:20px;max-width:400px;padding:20px}.interval-form h3{color:#333;margin-bottom:15px;margin-top:0}.interval-form div{margin-bottom:12px}.interval-form input{margin-left:8px;width:80px}.interval-form input,.interval-form select{border:1px solid #ccc;border-radius:4px;padding:5px}.interval-form button{margin-right:10px;padding:8px 16px}.workout-stage{align-items:center;background-color:#fff;border:1px solid #ddd;border-left-width:10px;border-radius:5px;box-sizing:border-box;cursor:move;display:flex;padding:15px;transition:background-color .2s;width:100%}.workout-stage.selected{background-color:#f0f7ff;border-color:#06c}.workout-stage:hover{background-color:#f8f9fa}.workout-stage input{border:1px solid #ddd;border-radius:4px;margin-right:10px;padding:6px 8px;width:80px}.workout-stage input.power-input{margin:0 10px 0 3px;width:40px}.workout-stage input.duration-input{flex:0 0 auto;margin:0 10px 0 5px;width:40px}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}.workout-stage select{background-color:#fff;border:1px solid #ddd;border-radius:4px;margin-left:10px;padding:6px 8px}.interval-stage{cursor:pointer;display:flex;flex-direction:column;gap:5px;width:100%}.interval-stage div:first-child{font-weight:500}.interval-stage div:last-child{color:#666;font-size:.9em}.interval-stage.editing{background-color:#f5f5f5;border-radius:5px;margin:10px 0;padding:15px}.interval-edit-form{display:flex;flex-direction:column;gap:10px}.interval-edit-form div{align-items:center;display:flex;gap:10px;justify-content:space-between;margin-bottom:0}.interval-edit-form input,.interval-edit-form select{border:1px solid #ccc;border-radius:3px;padding:5px;width:100px}.interval-edit-form label{color:#333;min-width:120px}.interval-edit-form .save-button{align-self:flex-end;background-color:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;margin-top:10px;padding:8px 16px}.interval-edit-form .save-button:hover{background-color:#45a049}button{background-color:#06c;border-radius:4px;padding:8px 16px;transition:background-color .2s}button:hover{background-color:#0052a3}button:active{background-color:#004080}@media (max-width:768px){.workout-list{gap:5px;margin:0;padding:5px}.controls-container{flex-direction:column;gap:10px;margin-bottom:10px;padding:8px}.button-container{gap:5px;justify-content:center}.button-container button{flex:1 1;font-size:14px;font-weight:500;min-width:75px;padding:8px 14px}.display-toggle{align-self:center;padding:8px 12px}.display-toggle label{font-size:15px;font-weight:500}.workout-stage{flex-wrap:wrap;font-size:16px;font-weight:500;gap:10px;line-height:1.4;padding:12px}.workout-stage input{-webkit-appearance:none;appearance:none;border:2px solid #ddd;border-radius:6px;font-size:16px;font-weight:500;margin-right:8px;padding:6px 8px;width:65px}.workout-stage input.duration-input,.workout-stage input.power-input{margin:0 8px 0 4px;width:45px}.workout-stage select{-webkit-appearance:none;appearance:none;background-color:#fff;border:2px solid #ddd;border-radius:6px;font-size:16px;font-weight:500;margin-left:8px;padding:6px 8px}.interval-form{margin-bottom:15px;max-width:none;padding:15px}.interval-form input{border:2px solid #ddd;border-radius:6px;font-size:16px;font-weight:500;margin-left:8px;padding:6px;width:70px}.interval-edit-form div{align-items:flex-start;flex-direction:column;gap:8px}.interval-edit-form input,.interval-edit-form select{border:2px solid #ddd;border-radius:6px;font-size:16px;font-weight:500;padding:6px;width:90px}.interval-edit-form label{font-size:16px;font-weight:500;min-width:auto}.interval-stage{font-size:16px;font-weight:500;line-height:1.4}.interval-stage div:last-child{font-size:14px;font-weight:400}}@media (max-width:480px){.workout-list{padding:2px}.controls-container{margin-bottom:8px;padding:5px}.button-container button{font-size:11px;min-width:60px;padding:4px 8px}.workout-stage{font-size:12px;padding:8px}.workout-stage input{font-size:12px;margin-right:3px;padding:3px 4px;width:50px}.workout-stage input.duration-input,.workout-stage input.power-input{margin:0 3px 0 2px;width:30px}.workout-stage select{font-size:12px;margin-left:3px;padding:3px 4px}.interval-form{padding:10px}.interval-form input{padding:3px;width:50px}.interval-edit-form input,.interval-edit-form select{padding:3px;width:70px}.interval-stage{font-size:12px}.interval-stage div:last-child{font-size:11px}}#canva{height:400px;width:100%}@media (max-width:768px){#canva{height:200px;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges;image-rendering:pixelated}}@media (max-width:480px){#canva{height:180px;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges;image-rendering:pixelated}}.settings-form{padding:20px}.form-group{margin-bottom:15px}.form-group label{display:block;font-weight:700;margin-bottom:5px}.form-group input{border:1px solid #ccc;border-radius:4px;font-size:16px;padding:8px;width:100%}.form-group input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.description{color:#aaa8a8;padding:0 20px}.weight-input-group{display:flex;gap:10px}.weight-input-group input{flex:1 1}.unit-toggle{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.9em;min-width:50px;padding:8px 12px;transition:background-color .2s}.unit-toggle:hover{background-color:#0056b3}.workout-stage-modal-overlay{background-color:#000000b3;box-sizing:border-box;overflow:hidden;padding:10px}.workout-stage-modal{background-color:#2d3748!important;box-shadow:0 20px 25px -5px #0000004d,0 10px 10px -5px #0000001a;box-sizing:border-box;color:#fff!important;display:flex;flex-direction:column;max-height:100%;max-width:600px;overflow:hidden;width:100%}.modal-header{margin-bottom:15px}.modal-header h2{color:#f7fafc!important;font-weight:600}.close-button{align-items:center;background:none;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.5rem;height:30px;justify-content:center;padding:0;width:30px}.close-button:hover{background-color:#ffffff1a}.modal-content{flex:1 1;min-height:0;overflow-y:auto}.description{color:#e2e8f0!important;line-height:1.5;margin-bottom:20px}.stages-list{display:flex;flex-direction:column;gap:10px}.stage-item{background-color:#4a5568!important;border-left:4px solid;border-radius:6px;margin-bottom:8px;padding:12px;transition:background-color .2s ease}.stage-item:hover{background-color:#5a6578!important}.stage-header{color:#f7fafc!important;font-size:1rem;font-weight:600;margin-bottom:8px}.stage-details{color:#e2e8f0!important;display:flex;flex-direction:column;font-size:.95rem;gap:4px;line-height:1.4}.modal-footer{display:flex;justify-content:flex-end;margin-top:20px}.select-button{background-color:#48bb78!important;border:none;border-radius:6px;color:#fff!important;cursor:pointer;font-size:1rem;font-weight:500;padding:12px 24px;transition:background-color .2s ease}.select-button:hover{background-color:#38a169!important}@media (max-width:768px){.workout-stage-modal-overlay{align-items:flex-start;padding:20px 5px 5px}.workout-stage-modal{border-radius:6px;max-height:calc(100vh - 40px);padding:15px}.close-button,.modal-header h2{font-size:1.3rem}.close-button{height:28px;width:28px}.stage-item{padding:10px}.select-button{padding:12px 16px;width:100%}}@media (max-width:480px){.workout-stage-modal-overlay{align-items:stretch;padding:0}.workout-stage-modal{align-self:center;border-radius:0;height:90vh;max-width:90vw;padding:12px}.modal-header h2{font-size:1.2rem}.stage-item{padding:8px}.stage-details{font-size:.9rem}}.upload-section{margin:10px;text-align:center}.file-upload-label{background-color:#bd9757;border-radius:4px;color:#fff;cursor:pointer;display:inline-block;float:right;padding:5px 10px;transition:background-color .3s}.file-upload-label:hover{background-color:#cea661}.file-upload-input{display:none}.create-workout-page{display:flex;flex-direction:column;height:80vh;overflow:hidden}.create-area{display:flex;flex:1 1;flex-direction:row;gap:10px;overflow:hidden}.workout-list{flex:0 0 500px;max-width:500px;min-width:500px;overflow-y:auto;padding:10px;width:500px}.workout-chart{flex:1 1;margin-right:10px;margin-top:10px;overflow:hidden;padding:10px;position:relative;width:70%}.save-button{background-color:#bd9757;border:none;border-radius:5px;bottom:10px;color:#fff;cursor:pointer;padding:10px 20px;position:absolute;right:10px;z-index:10}.save-button:hover{background-color:#cea661}@media (max-width:768px){.file-upload-label,.upload-section{display:none}.create-workout-page{height:auto;overflow:hidden;padding:0}.create-area{flex:1 1;flex-direction:column;gap:2px;min-height:0;overflow:hidden}.workout-list{flex:0 0 auto;margin:0;max-height:calc(50vh - 30px);max-width:none;min-width:0;min-width:auto;order:1;overflow-y:auto;padding:2px 5px;width:100%}.workout-chart{flex:1 1;margin:0;max-height:calc(50vh - 90px);min-height:0;order:2;overflow:hidden;padding-left:12px;width:100%}.save-button{bottom:5px;font-size:12px;height:40px;padding:6px 12px;position:fixed;right:5px;width:100%;z-index:1000}}@media (max-width:480px){.upload-section{display:none}.workout-list{max-height:calc(55vh - 30px);padding:2px}.workout-chart{max-height:calc(45vh - 80px);padding:0 0 0 12px}.save-button{bottom:2px;font-size:11px;padding:4px 8px;right:2px}}.workout-page{display:flex;flex-direction:column;height:calc(100vh - 69px);padding:10px 10px 0}.workout-page-header{align-items:center;display:flex;height:0;justify-content:flex-end;position:relative;z-index:100}.main-workout-area{display:flex;flex:1 1;flex-direction:row;height:75%;width:100%}.upcoming-stages{border-right:1px solid #ccc;max-width:400px;min-width:250px;order:1;overflow-y:auto;padding:0 10px 10px;width:30%}.current-stage-view{flex:1 1;min-width:0;order:2}.workout-chart-bar{background-color:#f0f0f0;box-shadow:0 -2px 5px #0000001a;height:15%;overflow-y:hidden;padding:10px}@media screen and (max-width:768px) and (orientation:portrait){.workout-page{padding:0}.main-workout-area{align-items:center;flex-direction:column;height:100vh;overflow:hidden}.upcoming-stages{border-right:none;border-top:1px solid #ccc;flex:0 1 auto;max-height:40vh;max-width:none;min-width:auto;order:0;overflow-y:auto;padding-top:0;width:-webkit-fill-available}.current-stage-view{flex-shrink:0;order:0;padding:0 10px}.workout-chart-bar{display:none}}.stage-row{align-items:center;border-radius:5px;color:#fff;display:flex;justify-content:space-between;margin-bottom:5px;padding:4px 10px}.spacer{flex-grow:1}.time-remaining{font-size:24px;font-weight:700}.current-cadence,.current-power,.target-power{font-size:18px}button{background-color:#bd9757;border:none;border-radius:5px;color:#fff;cursor:pointer;padding:10px 20px}button:hover{background-color:#cea661}.workout-stage-modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.workout-stage-modal{background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;max-width:500px;padding:20px;width:90%}.modal-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.modal-header h2{font-size:1.5rem;margin:0}.modal-content{margin-bottom:20px}.modal-actions{display:flex;gap:10px;justify-content:center;margin-top:20px}.modal-button{background-color:#4caf50;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:1rem;padding:10px 20px;text-decoration:none;transition:background-color .2s}.modal-button:hover{background-color:#45a049}.power-chart-container{height:150px;margin-top:20px;position:relative;width:100%}.power-chart-canvas{height:100%;width:100%}.live-stage{justify-content:end!important;text-align:right}.interval-container{align-items:left;border:1px solid #ccc;border-radius:5px;display:flex;flex-direction:column;margin-bottom:10px;overflow:hidden}.interval-row{align-items:left;background-color:#f9f9f9;border-bottom:1px solid #eee;border-left-style:solid;border-left-width:8px;display:flex;font-size:.9em;padding:6px 10px}.interval-row:last-child{border-bottom:none}.completed-interval{color:#888;opacity:.7}.current-interval{background-color:#fff;font-size:1.1em;font-weight:700}.upcoming-interval{background-color:#fff;font-size:.9em;font-weight:400}.interval-title{align-self:flex-end;padding-bottom:10px}.workout-stage-live{align-items:right;background-color:#f9f9f9;border:1px solid #ccc;border-left-width:12px;border-radius:5px;box-sizing:border-box;display:flex;padding:10px;width:100%}.workout-list-header{display:flex;justify-content:end;padding-bottom:10px}.workout-list-header-sticky{align-items:center;background-color:#fff;background-color:#f4f4f4;border-bottom:1px solid #eee;flex-direction:row;gap:15px;justify-content:space-between;padding:10px 0;position:-webkit-sticky;position:sticky;top:0;z-index:10}.workout-list-items-scrollable{overflow-y:auto;padding-top:10px}@media screen and (max-width:768px) and (orientation:portrait){.workout-list-header{font-size:14px;justify-content:center;padding-bottom:8px}.workout-list-header-sticky{flex-direction:row;font-size:14px;gap:20px;justify-content:start;padding:8px 5px}.workout-list-items-scrollable{max-height:300px;padding-left:10px;padding-right:10px;padding-top:8px}.time-remain-list{padding-left:2px}.workout-stage-live{border-left-width:8px;font-size:.9em;justify-content:center;padding:8px;text-align:center}.live-stage{justify-content:center!important;text-align:center}.current-stage{font-size:1.1em}.interval-container{margin-bottom:8px}.interval-row{border-left-width:6px;font-size:.8em;padding:4px 8px}.current-interval{font-size:.9em}.interval-title{font-size:.9em;padding-bottom:8px}.completed-stages-line{height:6px;margin:8px 0 15px}}.time-remain-list{padding-left:3px}.current-stage{border-radius:4px;box-shadow:0 0 10px var(--stage-color);font-size:1.3em;font-weight:700}.completed-stage,.interval-container.completed-stage{border:none!important;display:none!important;height:0!important;margin:0!important;overflow:hidden!important;padding:0!important}.workout-list-items{display:flex;flex-direction:column;gap:10px;position:relative}.completed-stages-line{background-color:#eee;border-radius:2px;display:flex;height:10px;margin:10px 0 20px;overflow:hidden;position:-webkit-sticky;position:sticky;top:0;width:100%;z-index:1}.completed-stage-segment{height:100%;transition:width .3s ease-out}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.03)}to{transform:scale(1)}}.connect-container{align-items:center;color:#bd9757;display:flex;height:100%;justify-content:center}.connect-container button{animation:pulse 2s ease-in-out infinite;background:none;border:2px solid #bd9757;border-radius:5px;color:#bd9757;cursor:pointer;font-size:18px;padding:12px 24px}.connecting-message{align-items:center;display:flex;font-size:18px;gap:4px}.dots span{animation:dot 1.4s infinite;animation-fill-mode:both;opacity:0}.dots span:nth-child(2){animation-delay:.2s}.dots span:nth-child(3){animation-delay:.4s}@keyframes dot{0%{opacity:0}50%{opacity:1}to{opacity:0}}.current-stage-view{display:flex;flex-direction:column;justify-content:space-between;padding:10px;width:100%}.stage-title-box{align-items:center;background-color:#4b4a4ab3;border-radius:5px;color:#fff;display:flex;height:40px;justify-content:center;justify-self:center;min-width:150px;padding:10px;text-align:center}.connected-view{height:90%;justify-content:space-between;padding-top:20px}.connected-view,.hud-box{display:flex;flex-direction:column}.hud-box{align-self:center;border:2px solid #000000b3;border-radius:10px;color:#000;height:350px;justify-self:center;margin-bottom:10px;margin-top:20px;min-width:350px;padding:20px;position:relative;text-align:center;width:70%}@media screen and (max-width:768px) and (orientation:portrait){.current-stage-view{padding:0 0 10px}.connected-view{flex-shrink:0;height:auto;padding-top:10px}.stage-status{margin-bottom:10px}.stage-title-box{font-size:18px;height:auto;min-height:40px;min-width:auto;padding:8px}.stage-title{font-size:18px}.stage-power{font-size:28px;padding-left:5px;padding-right:5px}.hud-box{height:auto;margin:3px 3px 10px;min-height:180px;min-width:auto;padding:5px;width:-webkit-fill-available}.power-title{font-size:20px;padding-top:10px}.power-value{font-size:48px}.watt-unit{font-size:16px;padding-bottom:15px}.sub-hud{height:60px;padding-left:10px;padding-right:10px}.subhud-title{font-size:14px}.subhud-value{font-size:24px}.control-box{flex-wrap:nowrap;height:40px;min-width:280px;padding:8px 12px;width:90%}.scale-button{flex-shrink:0;height:30px;width:30px}.pause-button,.skip-button{flex-shrink:0;font-size:1em;height:35px;width:35px}.scale-controls{gap:6px}.playback-controls{gap:8px}.pedal-prompt p{font-size:24px}}.hud-box h3{margin:0 0 10px}.hud-box p{margin:0}.sub-hud{flex-direction:row;height:80px;justify-content:space-between;margin-top:auto;padding-left:20px;padding-right:20px}.control-box,.sub-hud{border:2px solid #000000b3;border-radius:10px;display:flex}.control-box{align-items:center;align-self:center;color:#000;height:30px;justify-content:center;justify-self:center;min-width:200px;padding:3px 10px;text-align:center}.scale-controls{align-items:center;display:flex;gap:8px}.scale-button{background:none;border:none;border-radius:4px;color:#000;cursor:pointer;height:30px;width:30px}.scale-button:hover{background-color:#ffffff1a}.playback-controls{display:flex;gap:10px}.pause-button,.skip-button{background:none;border:none;border-radius:4px;color:#000;cursor:pointer;font-size:1.2em;height:40px;width:40px}.pause-button:hover,.skip-button:hover{background-color:#ffffff1a;color:#000;cursor:pointer}.scale-button:hover{background-color:#0000001a;border-radius:4px}.scale-display{color:#000;font-weight:700;min-width:50px}.power-title{font-size:32px;font-weight:700;padding-top:20px}.power-value{align-items:center;display:flex;font-size:88px;font-weight:700;justify-content:center}.watt-unit{align-self:end;font-size:24px;padding-bottom:25px;text-align:bottom}.subhud-title{font-size:20px;font-weight:700}.subhud-value{font-size:36px;font-weight:700;padding-bottom:5px;text-align:top}.pause-button{background:none;border:none;color:inherit;color:#000;cursor:pointer}.pause-button:hover{color:inherit}.stage-power{color:#fff;font-size:42px;padding-left:10px;padding-right:10px}.stage-title{align-items:center;color:#000;display:flex;font-size:24px;font-weight:700;vertical-align:top}.watt-icon{align-self:flex-end;color:#fff;padding-bottom:8px;padding-right:10px}.pedal-prompt{align-items:center;bottom:0;display:flex;justify-content:center;left:0;pointer-events:none;position:absolute;right:0;top:0}.pedal-prompt-overlay{background-color:#ffffffe6;border-radius:10px;box-shadow:0 2px 10px #0000001a;padding:20px 40px}.pedal-prompt p{color:#666;font-size:36px;font-weight:700;margin:0;text-transform:uppercase}.progress-bar-container{align-self:center;height:30px;justify-self:center;margin-bottom:10px;width:60%}.progress-bar-background{background-color:#000000b3;border-radius:5px;display:flex;height:100%;overflow:hidden;position:relative;width:100%}.progress-bar-fill{border-radius:5px 0 0 5px;height:100%;left:0;position:absolute;top:0;transform-origin:left;width:100%;will-change:transform}.time-remaining{align-self:center;color:#fff;float:right;font-size:16px;font-weight:lighter;position:absolute;right:5px;top:50%;transform:translateY(-50%)}.power-bar-container{align-self:center;height:20px;justify-self:center;margin-bottom:10px;width:90%}.power-bar-background{background-color:#000000b3;overflow:hidden;width:100%}.power-bar-background,.power-bar-fill{border-radius:5px;height:100%}.workout-chart-bar-container{border-top:1px solid #000;height:100px;margin:0;padding:3px 0 0;position:relative;width:100%}@media screen and (max-width:768px) and (orientation:portrait){.workout-chart-bar-container{height:80px}}.workout-chart-bar-live{display:block;height:100%;width:100%}.progress-line{background-color:#f63030cc;transition:left 1s linear;width:2px;z-index:2}.completed-overlay,.progress-line{height:100%;pointer-events:none;position:absolute;top:0}.completed-overlay{background-color:#0003;left:0;transition:width 1s linear;z-index:1}.bluetooth-dropdown{display:inline-block;position:relative;top:20px}.bluetooth-icon{align-items:center;background:none;border:none;border-radius:4px;color:#666;cursor:pointer;display:flex;font-size:30px;height:40px;justify-content:center;min-height:40px;min-width:40px;padding:3px;transition:all .2s ease;width:40px}.bluetooth-icon:hover{background-color:#0000001a;color:#333}.bluetooth-icon.connected{color:#4caf50}.bluetooth-dropdown-menu{background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 4px 12px #00000026;margin-top:4px;min-width:280px;overflow:hidden;position:absolute;right:0;top:100%;z-index:1000}.bluetooth-dropdown-header{background-color:#f8f9fa;border-bottom:1px solid #eee;padding:16px}.bluetooth-dropdown-header h3{color:#333;font-size:16px;font-weight:600;margin:0}.bluetooth-device-list{padding:8px 0}.bluetooth-device-item{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;padding:12px 16px;transition:background-color .2s ease}.bluetooth-device-item:last-child{border-bottom:none}.bluetooth-device-item:hover{background-color:#f8f9fa}.device-info{display:flex;flex-direction:column;gap:4px}.device-name{color:#333;font-size:14px;font-weight:500}.device-status{font-size:12px;font-weight:400}.device-status.connected{color:#4caf50}.device-status.disconnected{color:#999}.connect-button,.disconnect-button{border:none;border-radius:4px;cursor:pointer;font-size:12px;font-weight:500;min-width:70px;padding:6px 12px;transition:all .2s ease}.connect-button{background-color:#007bff;color:#fff}.connect-button:hover{background-color:#0056b3}.disconnect-button{background-color:#dc3545;color:#fff}.disconnect-button:hover{background-color:#c82333}.connect-button:disabled,.disconnect-button:disabled{cursor:not-allowed;opacity:.6}@media (max-width:768px){.bluetooth-dropdown-menu{min-width:260px;right:-8px}.bluetooth-device-item{padding:10px 12px}.device-name{font-size:13px}.device-status{font-size:11px}}.find-workout-page{margin:0 auto;max-width:1200px;padding:20px}.filter-controls{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;margin-bottom:20px;padding:15px}.filter-row{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.filter-dropdown{cursor:pointer;min-width:150px}.filter-dropdown,.search-input{background-color:#fff;border:1px solid #ccc;border-radius:4px;font-size:16px;padding:8px 12px}.search-input{flex:1 1;min-width:200px}.duration-input:focus,.filter-dropdown:focus,.search-input:focus{border-color:#2196f3;box-shadow:0 0 0 2px #2196f31a;outline:none}.duration-filter{justify-content:center;margin-top:12px}.duration-input-group{align-items:center;display:flex;gap:4px}.duration-input{background-color:#fff;border:1px solid #ccc;border-radius:4px;font-size:16px;padding:8px 12px;width:100px}.duration-label,.duration-separator{color:#666;font-size:14px}.duration-separator{margin:0 12px}.workouts-container{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.plan-group{background-color:#f8f9fa;border-radius:12px;box-shadow:0 4px 6px #0000000d;grid-column:1/-1;margin-bottom:40px;padding:25px}.plan-group h2{border-bottom:3px solid #2196f3;color:#1976d2;font-size:1.8em;font-weight:600;margin-bottom:25px;padding-bottom:12px}.week-group{background-color:#fff;border:1px solid #eee;border-radius:10px;box-shadow:0 2px 4px #0000000d;margin-bottom:30px;padding:20px}.week-group:last-child{margin-bottom:0}.week-group h3{border-bottom:1px solid #e0e0e0;color:#333;font-size:1.4em;font-weight:500;margin-bottom:20px;padding-bottom:8px}.workouts-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));padding:5px}.workout-card{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;cursor:pointer;overflow:hidden;padding:15px;position:relative;transition:transform .2s ease-in-out,box-shadow .2s ease-in-out}.workout-card:focus,.workout-card:hover{box-shadow:0 4px 8px #00000026;outline:none;transform:translateY(-2px)}.workout-card:focus-visible{box-shadow:0 0 0 2px #2196f3}.workout-card:after{background:#2196f30d;bottom:0;content:"";left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .2s ease}.workout-card:hover:after{opacity:1}.workout-card h3{color:#333;font-size:1em;font-weight:600;margin:0 0 10px}.workout-card h4{color:#333;font-size:1.1em;font-weight:500;margin:0 0 10px}.workout-card p{color:#666;margin:0 0 10px}.duration{background-color:#2196f31a;border-radius:4px;color:#1976d2!important;display:inline-block;font-size:.95em;font-weight:500;padding:4px 8px}.workout-visual{background-color:#f5f5f5;border:1px solid #e0e0e0;border-radius:4px;display:flex;height:55px;margin-top:10px;overflow:hidden;padding-top:5px;position:relative}.segment-visual{height:100%;margin:0;min-width:10px;position:relative;transition:all .3s ease}.segment-i{background:#0000!important}.segment-i>div{height:100%;width:100%}.segment-visual:hover{opacity:.8}.workout-visual:before{background:repeating-linear-gradient(0deg,#0000,#0000 calc(20% - 1px),#0000001a calc(20% - 1px),#0000001a 20%);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.segment-r{background-color:#ff9800}.segment-i{background-color:#4caf50}.segment-s{background-color:#2196f3}.segment-visual+.segment-visual{margin-left:2px}.find-workout-page>.error-message{background-color:#ffebee;border-radius:8px;color:#c62828;font-size:1.1em;margin:20px 0;padding:20px;text-align:center}.find-workout-page>:first-child:not(.filter-controls){color:#666;font-size:1.2em;padding:40px;text-align:center}.no-results{background-color:#f5f5f5;border-radius:8px;color:#666;font-size:1.1em;grid-column:1/-1;padding:40px;text-align:center}@media (max-width:768px){.filter-row{flex-direction:column;gap:10px}.filter-dropdown,.search-input{width:100%}.workouts-grid{grid-template-columns:1fr}.plan-group,.week-group{padding:15px}}.about-page{margin:0 auto;max-width:1200px;padding:2rem}.about-page h1{color:#333;margin-bottom:3rem;text-align:center}.feature-section{background:#f8f9fa;border-radius:10px;box-shadow:0 2px 4px #0000001a;margin-bottom:4rem;padding:2rem}.feature-section h2{color:#2c3e50;margin-bottom:1.5rem}.feature-demo{display:flex;flex-direction:column;gap:1.5rem}.demo-container{grid-gap:1rem;background:#fff;border:1px solid #e1e4e8;border-radius:8px;display:grid;gap:1rem;min-height:200px;padding:2rem}.screenshot-placeholder{align-items:center;background:#f1f3f5;border:2px dashed #ddd;border-radius:8px;color:#666;cursor:help;display:flex;font-size:1.1rem;justify-content:center;min-height:300px;padding:2rem;position:relative;text-align:center;transition:all .2s ease}.screenshot-placeholder:hover{transform:translateY(-2px)}.screenshot-placeholder:hover:after{background:#333;border-radius:4px;bottom:100%;color:#fff;content:attr(data-tooltip);font-size:.875rem;left:50%;padding:.5rem 1rem;position:absolute;transform:translateX(-50%);white-space:nowrap;z-index:1000}.screenshot-placeholder img{border:2px solid #ddd;box-shadow:0 4px 8px #0000001a;transition:transform .2s ease}.screenshot-placeholder img:hover{transform:scale(1.02)}.screenshot-placeholder:has(img){background:#0000;border:none;min-height:auto;padding:0}.demo-component{align-items:center;background:#f1f3f5;border-radius:6px;color:#495057;cursor:help;display:flex;font-weight:500;justify-content:center;padding:1rem;position:relative;text-align:center;transition:all .2s ease}.demo-component:hover{background:#e9ecef;transform:translateY(-2px)}.demo-component:hover:after{background:#333;border-radius:4px;bottom:100%;color:#fff;content:attr(data-tooltip);font-size:.875rem;left:50%;padding:.5rem 1rem;position:absolute;transform:translateX(-50%);white-space:nowrap;z-index:1000}.feature-demo p{color:#666;line-height:1.6;margin:0;text-align:center}.privacy-banner{background:#333;border-top:1px solid #555;bottom:0;box-shadow:0 -2px 10px #0000004d;color:#fff;left:0;padding:0;position:fixed;right:0;z-index:1000}.privacy-banner-content{align-items:center;display:flex;flex-wrap:wrap;gap:20px;margin:0 auto;max-width:1200px;padding:16px 20px}.privacy-banner-text{flex:1 1;min-width:300px}.privacy-banner-text h4{color:#fff;font-size:16px;font-weight:600;margin:0 0 8px}.privacy-banner-text p{color:#ddd;font-size:14px;line-height:1.4;margin:0}.privacy-banner-buttons{display:flex;flex-shrink:0;gap:12px}.privacy-button{border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;min-width:80px;padding:8px 16px;transition:all .2s ease}.accept-button{background:#007bff;color:#fff}.accept-button:hover{background:#0056b3}.reject-button{background:#6c757d;color:#fff}.reject-button:hover{background:#545b62}@media (max-width:768px){.privacy-banner-content{align-items:stretch;flex-direction:column;gap:16px;padding:16px}.privacy-banner-text{min-width:auto}.privacy-banner-buttons{justify-content:center}.privacy-button{flex:1 1;max-width:120px}}body{background-color:#f4f4f4;font-family:Poppins,sans-serif;margin:0}h1{color:#333;text-align:center}.navbar{align-items:center;color:#fff;display:flex;justify-content:space-between;padding:10px 20px}.navbar button{background-color:#bd9757;border:none;border-radius:5px;color:#fff;cursor:pointer;padding:10px 15px}.navbar button:hover{background-color:#cea661}.container{display:flex;padding:20px}.workout-list{flex:1 1}.workout-chart,.workout-list{background-color:#fff;border-radius:5px;box-shadow:0 2px 5px #0000001a;padding:15px}.workout-chart{flex:2 1;max-height:80vh}@media (max-width:768px){.workout-chart{align-self:center;flex:1 1;margin:0;max-height:calc(50vh - 90px);min-height:0;order:2;overflow:hidden;padding-left:22px;width:100%}}
/*# sourceMappingURL=main.0dfeacbc.css.map*/