*{margin:0;padding:0;box-sizing:border-box}:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%}body{margin:0;min-width:320px;min-height:100vh;overflow-x:hidden}#root{min-height:100vh}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.2}button{font-family:inherit;cursor:pointer;transition:all .3s ease}.app.workout-active{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}input,textarea,select{font-size:16px}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:rgba(0,0,0,.1)}::-webkit-scrollbar-thumb{background:rgba(0,0,0,.3);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.5)}.timer-container{background:#f8f9fa;border-radius:20px;padding:2rem;color:#212529;border:1px solid #e9ecef;transition:all .3s ease;height:100%;display:flex;flex-direction:column;justify-content:space-between}.timer-container.rest{background:#fff5f5;border-color:#f8d7da}.timer-container.countdown{background:#f0fff4;border-color:#d4edda}.timer-container.warning{animation:warningPulse 1s infinite}@keyframes warningPulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}.round-indicator{text-align:center;flex-shrink:0}.round-text{font-size:1.8rem;font-weight:600;margin-right:.5rem;color:#495057}.round-count{font-size:1.2rem;color:#6c757d}.finish-text{font-size:2rem;font-weight:700;animation:celebrate 1s ease-in-out infinite}@keyframes celebrate{0%,to{transform:scale(1) rotate(0)}25%{transform:scale(1.1) rotate(-5deg)}75%{transform:scale(1.1) rotate(5deg)}}.circular-timer-container{position:relative;width:320px;height:320px;margin:auto;flex:1;display:flex;align-items:center;justify-content:center}.circular-timer{width:100%;height:100%;transform:scaleY(-1)}.timer-background{fill:none;stroke:#e9ecef}.timer-progress{fill:none;stroke:#007bff;transition:stroke-dashoffset .3s linear;stroke-linecap:round}.timer-progress.warning-stroke{stroke:#ffc107;animation:warningPulse 1s infinite}.timer-progress.countdown-stroke{stroke:#28a745;animation:countdownPulse 1s infinite}@keyframes warningPulse{0%,to{stroke:#ffc107}50%{stroke:#fd7e14}}@keyframes countdownPulse{0%,to{stroke:#28a745;opacity:1}50%{stroke:#20c997;opacity:.8}}.timer-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center}.time-text{font-size:4rem;font-weight:300;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;letter-spacing:.05em;color:#212529}.time-text.pulse{animation:timePulse 1s infinite}@keyframes timePulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.warning-text{margin-top:.25rem;font-size:.9rem;color:#fd7e14;font-weight:600;animation:blink 1s infinite}@keyframes blink{0%,50%,to{opacity:1}25%,75%{opacity:.7}}.progress-bars{flex-shrink:0;margin-top:auto;padding-top:1.5rem}.round-progress,.workout-progress{margin-bottom:1rem}.progress-bars label{display:block;font-size:.9rem;margin-bottom:.5rem;color:#6c757d}.progress-bar{height:8px;background:#e9ecef;border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:#007bff;border-radius:4px;transition:width .3s ease}.progress-fill.total{background:#28a745}@media (min-width: 1600px){.circular-timer-container{width:360px;height:360px}.time-text{font-size:4.5rem}}@media (max-width: 1400px){.circular-timer-container{width:280px;height:280px}.time-text{font-size:3.5rem}}@media (max-width: 768px){.timer-container{padding:1rem;margin:0;height:auto;min-height:auto}.circular-timer-container{width:240px;height:240px;margin:1.5rem auto}.time-text{font-size:3rem}.round-text{font-size:1.5rem}}@media (max-width: 480px){.circular-timer-container{width:200px;height:200px;margin:1rem auto}.time-text{font-size:2.5rem}.warning-text{font-size:.8rem}}.exercise-display{background:white;border-radius:12px;padding:1.5rem;margin:0;border:1px solid #e9ecef;transition:all .3s ease;height:fit-content}.exercise-display.rest{background:#f8f9fa;border-color:#dee2e6}.exercise-display.countdown{background:#f0fff4;border-left:4px solid #28a745}.exercise-display.jump-rope{border-left:4px solid #28a745}.exercise-display.boxing{border-left:4px solid #dc3545}.exercise-display.core{border-left:4px solid #ffc107}.rest-message,.countdown-message{text-align:center;padding:2rem 0}.rest-message h2{color:#495057;font-size:1.8rem;margin-bottom:.5rem;font-weight:600}.rest-message p{color:#6c757d;font-size:1.1rem}.countdown-message h2{color:#28a745;font-size:1.8rem;margin-bottom:.5rem;font-weight:600;animation:pulse 1s infinite}.countdown-message p{color:#6c757d;font-size:1.1rem}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.current-exercises h2{color:#212529;margin-bottom:1rem;font-size:1.2rem;font-weight:600}.exercises-list{display:flex;flex-direction:column;gap:1rem}.exercise-item{padding:1rem;background:#f8f9fa;border-radius:8px;transition:transform .2s ease;border-left:3px solid transparent}.exercise-item:hover{transform:translate(3px)}.exercise-item.boxing{background:#fff5f5;border-left-color:#dc3545}.exercise-item.bodyweight{background:#f0f8ff;border-left-color:#007bff}.exercise-item.jump-rope{background:#f0fff4;border-left-color:#28a745}.exercise-item.core{background:#fffbf0;border-left-color:#ffc107}.exercise-name{font-size:1.2rem;font-weight:600;color:#212529;margin-bottom:.4rem}.exercise-reps{font-size:1rem;color:#495057;margin-bottom:.5rem;font-weight:500}.exercise-desc{font-size:.95rem;color:#6c757d;line-height:1.5}.exercise-separator{text-align:center;color:#95a5a6;font-size:1.2rem;margin:.5rem 0;font-style:italic;position:relative}.exercise-separator:before,.exercise-separator:after{content:"";position:absolute;top:50%;width:30%;height:1px;background:#e0e0e0}.exercise-separator:before{left:0}.exercise-separator:after{right:0}.next-up{margin-top:2rem;padding-top:2rem;border-top:2px dashed #b0bec5}.next-up h3{color:#495057;margin-bottom:1rem;font-size:1.1rem;font-weight:600}.next-exercises{display:flex;flex-wrap:wrap;gap:.5rem}.next-exercise{background:white;padding:.5rem 1rem;border-radius:6px;color:#6c757d;font-size:.9rem;border:1px solid #dee2e6}@media (min-width: 1200px){.exercise-display{padding:1.75rem}.exercise-item{padding:1.25rem}}@media (max-width: 768px){.exercise-display{padding:1rem;margin:0;border-radius:8px}.current-exercises h2{font-size:1rem;margin-bottom:.75rem}.exercises-list{gap:.5rem}.exercise-item{padding:.75rem}.exercise-name{font-size:1.1rem;margin-bottom:.25rem}.exercise-reps{font-size:.9rem}.exercise-desc{font-size:.85rem;display:none}.exercise-separator{margin:.25rem 0;font-size:1rem}.rest-message,.countdown-message{padding:1rem 0}.rest-message h2,.countdown-message h2{font-size:1.4rem}.rest-message p,.countdown-message p{font-size:1rem}.next-up{margin-top:1rem;padding-top:1rem}.next-up h3{font-size:.95rem;margin-bottom:.5rem}.next-exercises{gap:.25rem}.next-exercise{padding:.4rem .75rem;font-size:.85rem}}@media (max-width: 480px){.exercise-display{padding:.75rem}.exercise-item{padding:.5rem}.exercise-name{font-size:1rem}.exercise-reps{font-size:.85rem}}.controls-container,.main-controls,.randomize-controls{display:flex;flex-direction:column;gap:.75rem;width:100%}.control-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.95rem;font-weight:500;border:1px solid;border-radius:8px;cursor:pointer;transition:all .2s ease;width:100%;justify-content:center}.control-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.control-btn:active:not(:disabled){transform:translateY(0)}.control-btn:disabled{opacity:.5;cursor:not-allowed}.btn-icon{font-size:1.3rem}.btn-text{white-space:nowrap}body.dark-mode .control-btn{background:#2d2d2d;color:#e0e0e0;border-color:#404040}body.dark-mode .control-btn:hover:not(:disabled){background:#3a3a3a;border-color:#505050;box-shadow:0 2px 8px #0000004d}body.dark-mode .control-btn.start{background:#2d5a2d;border-color:#2d5a2d}body.dark-mode .control-btn.start:hover:not(:disabled){background:#3a6b3a;border-color:#3a6b3a}body.dark-mode .control-btn.pause{background:#5a5a2d;border-color:#5a5a2d;color:#e0e0e0}body.dark-mode .control-btn.pause:hover:not(:disabled){background:#6b6b3a;border-color:#6b6b3a}body.dark-mode .control-btn.stop{background:#5a2d2d;border-color:#5a2d2d}body.dark-mode .control-btn.stop:hover:not(:disabled){background:#6b3a3a;border-color:#6b3a3a}body.dark-mode .control-btn.skip{background:#2d3d5a;border-color:#2d3d5a}body.dark-mode .control-btn.skip:hover:not(:disabled){background:#3a4a6b;border-color:#3a4a6b}body.dark-mode .control-btn.resume{background:#2d5a5a;border-color:#2d5a5a}body.dark-mode .control-btn.resume:hover:not(:disabled){background:#3a6b6b;border-color:#3a6b6b}body.dark-mode .control-btn.randomize,body.dark-mode .control-btn.randomize-all{background:#2d2d2d;color:#b0b0b0;border-color:#404040}body.dark-mode .control-btn.randomize:hover:not(:disabled),body.dark-mode .control-btn.randomize-all:hover:not(:disabled){background:#3a3a3a;border-color:#505050;color:#e0e0e0}.control-btn.start{background:#28a745;color:#fff;border:1px solid #28a745}.control-btn.start:hover:not(:disabled){background:#218838;border-color:#1e7e34}.control-btn.pause{background:#ffc107;color:#212529;border:1px solid #ffc107}.control-btn.pause:hover:not(:disabled){background:#e0a800;border-color:#d39e00}.control-btn.resume{background:#17a2b8;color:#fff;border:1px solid #17a2b8}.control-btn.resume:hover:not(:disabled){background:#138496;border-color:#117a8b}.control-btn.stop{background:#dc3545;color:#fff;border:1px solid #dc3545}.control-btn.stop:hover:not(:disabled){background:#c82333;border-color:#bd2130}.control-btn.skip{background:#007bff;color:#fff;border:1px solid #007bff}.control-btn.skip:hover:not(:disabled){background:#0069d9;border-color:#0062cc}.control-btn.randomize{background:white;color:#6c757d;border:1px solid #dee2e6}.control-btn.randomize:hover:not(:disabled){background:#f8f9fa;border-color:#adb5bd;color:#495057}.control-btn.randomize-all{background:white;color:#495057;border:1px solid #ced4da}.control-btn.randomize-all:hover:not(:disabled){background:#e9ecef;border-color:#adb5bd;color:#212529}.control-btn.start{animation:subtle-pulse 2s infinite}@keyframes subtle-pulse{0%,to{box-shadow:0 0 #28a74500}50%{box-shadow:0 0 0 8px #28a7451a}}@media (min-width: 1400px){.main-controls,.randomize-controls{flex-direction:row;flex-wrap:wrap}.control-btn{width:auto;min-width:120px}}@media (max-width: 768px){.controls-container{gap:.4rem}.main-controls,.randomize-controls{flex-direction:row;flex-wrap:wrap;justify-content:center;gap:.4rem}.control-btn{width:auto;min-width:120px;padding:.6rem 1rem;font-size:.9rem}.btn-icon{font-size:1.1rem}}@media (max-width: 480px){.controls-container,.main-controls,.randomize-controls{gap:.3rem}.control-btn{flex:1;min-width:100px;padding:.6rem .8rem}.btn-text{font-size:.9rem}}.app{min-height:100vh;display:flex;flex-direction:column;background:#ffffff;position:relative;overflow:hidden}.app-main{flex:1;padding:2rem;width:100%;position:relative;z-index:1;display:flex;align-items:center;justify-content:center}.app-layout{display:grid;grid-template-columns:1fr 2fr 1fr;gap:2rem;width:100%;max-width:1600px;height:calc(100vh - 4rem);align-items:stretch}.controls-section{display:flex;flex-direction:column;gap:1.5rem}.timer-section{display:flex;flex-direction:column;align-items:stretch;height:100%}.exercise-section{display:flex;flex-direction:column;width:100%}.settings-toggles{display:flex;flex-direction:column;gap:.4rem;margin-top:.4rem}.audio-toggle,.dark-mode-toggle{display:block}.audio-toggle label,.dark-mode-toggle label{display:flex;align-items:center;gap:.5rem;color:#495057;cursor:pointer;font-size:.95rem;padding:.5rem 1rem;background:white;border:1px solid #dee2e6;border-radius:25px;transition:all .3s ease}.audio-toggle label:hover,.dark-mode-toggle label:hover{background:#f8f9fa;border-color:#adb5bd}body.dark-mode{background:#1a1a1a;color:#e0e0e0}body.dark-mode .app{background:#1a1a1a}body.dark-mode .timer-container{background:#2d2d2d;border-color:#404040;color:#e0e0e0}body.dark-mode .timer-container.rest{background:#3d2d2d;border-color:#503030}body.dark-mode .timer-container.countdown{background:#2d3d2d;border-color:#304030}body.dark-mode .timer-background{stroke:#404040}body.dark-mode .timer-progress{stroke:#4a9eff}body.dark-mode .timer-progress.warning-stroke{stroke:gold}body.dark-mode .timer-progress.countdown-stroke{stroke:#4caf50}body.dark-mode .time-text,body.dark-mode .round-text{color:#e0e0e0}body.dark-mode .round-count,body.dark-mode .progress-bars label{color:#b0b0b0}body.dark-mode .progress-bar{background:#404040}body.dark-mode .progress-fill{background:#4a9eff}body.dark-mode .progress-fill.total{background:#4caf50}body.dark-mode .exercise-display{background:#2d2d2d;border-color:#404040}body.dark-mode .exercise-display.rest{background:#2a2a2a;border-color:#404040}body.dark-mode .exercise-display.countdown{background:#2d3d2d}body.dark-mode .current-exercises h2{color:#e0e0e0}body.dark-mode .exercise-item{background:#3a3a3a}body.dark-mode .exercise-item.boxing{background:#3d2d2d;border-left-color:#ff6b6b}body.dark-mode .exercise-item.bodyweight{background:#2d3d3d;border-left-color:#4a9eff}body.dark-mode .exercise-item.jump-rope{background:#2d3d2d;border-left-color:#4caf50}body.dark-mode .exercise-item.core{background:#3d3d2d;border-left-color:gold}body.dark-mode .exercise-name{color:#e0e0e0}body.dark-mode .exercise-reps{color:#b0b0b0}body.dark-mode .exercise-desc{color:#909090}body.dark-mode .rest-message h2,body.dark-mode .countdown-message h2{color:#e0e0e0}body.dark-mode .rest-message p,body.dark-mode .countdown-message p,body.dark-mode .next-up h3{color:#b0b0b0}body.dark-mode .next-exercise{background:#3a3a3a;border-color:#505050;color:#b0b0b0}body.dark-mode .audio-toggle label,body.dark-mode .dark-mode-toggle label{background:#2d2d2d;border-color:#404040;color:#e0e0e0}body.dark-mode .audio-toggle label:hover,body.dark-mode .dark-mode-toggle label:hover{background:#3a3a3a;border-color:#505050}.audio-toggle input[type=checkbox]{width:18px;height:18px;cursor:pointer}@media (max-width: 1400px){.app-layout{grid-template-columns:minmax(220px,1fr) minmax(350px,2fr) minmax(220px,1fr);gap:1.5rem}.app-main{padding:1.5rem}}@media (max-width: 1200px){.app-layout{grid-template-columns:minmax(200px,1fr) minmax(300px,2fr) minmax(200px,1fr);gap:1.5rem}}@media (max-width: 768px){.app{overflow-x:hidden;overflow-y:auto}.app-main{padding:.75rem;align-items:flex-start;min-height:100vh}.app-layout{display:flex;flex-direction:column;gap:.75rem;max-width:100%;height:auto}.controls-section{width:100%;order:1}.timer-section{width:100%;order:2;height:auto}.exercise-section{width:100%;order:3}}@media (max-width: 480px){.app-main{padding:.5rem}.app-layout{gap:.5rem}}@media (hover: none) and (pointer: coarse){.app{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}}
