:root{font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#171717;font-optical-sizing:auto;background:#f5f5f5;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{min-width:320px;min-height:100%}body{min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button{-webkit-tap-highlight-color:transparent}.setup-duration{color:#404040;text-align:center;background:#e5e5e5;border-radius:12px;margin:0;padding:14px 16px;font-size:14px;font-weight:700}#root{min-height:100vh}.setup-screen{color:#171717;background:#fff;justify-content:center;min-height:100vh;padding:32px 20px;display:flex}.setup-content{width:100%;max-width:460px}.setup-header{justify-content:center;align-items:center;margin-bottom:28px;display:flex}.setup-logo{object-fit:contain;width:180px;max-width:60%;height:auto;display:block}.setup-title{text-align:center;margin-bottom:28px}.setup-title h1{letter-spacing:-.7px;margin:0 0 8px;font-size:30px;font-weight:800}.setup-title p{color:#737373;margin:0;font-size:15px}.setup-form{flex-direction:column;gap:16px;display:flex}.setup-card{background:#f8f9f7;border:1px solid #e5e9e1;border-radius:16px;flex-direction:column;gap:20px;padding:24px;display:flex}.form-field{flex-direction:column;gap:8px;font-size:14px;font-weight:600;display:flex}.form-field input{color:#171717;width:100%;font:inherit;background:#fff;border:1px solid #dde2d9;border-radius:10px;padding:16px;font-size:20px}.form-field input:focus{outline-offset:1px;border-color:#93a384;outline:2px solid #93a384}.toggle-field{cursor:pointer;border-top:1px solid #e5e9e1;justify-content:space-between;align-items:center;gap:16px;padding-top:18px;display:flex}.toggle-description{flex-direction:column;gap:5px;display:flex}.toggle-description strong{font-size:14px;font-weight:700}.toggle-description small{color:#737373;font-size:12px;line-height:1.4}.toggle-input{appearance:none;cursor:pointer;background:#d4d4d4;border:0;border-radius:999px;flex-shrink:0;width:48px;height:28px;margin:0;padding:3px;transition:background-color .15s}.toggle-input:before{content:"";background:#fff;border-radius:50%;width:22px;height:22px;transition:transform .15s;display:block}.toggle-input:checked{background:#93a384}.toggle-input:checked:before{transform:translate(20px)}.toggle-input:focus-visible{outline-offset:3px;outline:3px solid #93a384}.button{min-height:56px;font:inherit;cursor:pointer;border:0;border-radius:12px;padding:14px 20px;font-size:16px;font-weight:700}.button:focus-visible{outline-offset:3px;outline:3px solid #737373}.button-primary{color:#fff;background:#93a384}.button-secondary{color:inherit;background:#ffffff24;border:1px solid}.start-button{width:100%;min-height:60px;margin-top:4px;font-size:18px}.setup-duration{color:#263322;text-align:center;background:#eef2ea;border:1px solid #93a384;border-radius:12px;margin:0;padding:16px;font-size:16px;font-weight:700}.timer-screen{flex-direction:column;min-height:100dvh;padding:16px;transition:background-color .15s;display:flex}.timer-screen.exercise{color:#fff;background:#245b43}.timer-screen.rest{color:#fff;background:#b95440}.timer-screen.countdown{color:#fff;background:#285a8e}.timer-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.status-label{letter-spacing:1px;font-size:11px;font-weight:700}.timer-content{text-align:center;flex-direction:column;flex:1;width:100%;max-width:700px;margin:0 auto;display:flex}.timer-main{flex-direction:column;flex:1;justify-content:center;align-items:center;min-height:0;display:flex}.phase-label{letter-spacing:3px;margin:0 0 8px;font-size:clamp(20px,5vw,30px);font-weight:800}.timer-display{letter-spacing:-4px;font-variant-numeric:tabular-nums;white-space:nowrap;width:100%;margin:8px 0;font-size:clamp(88px,27vw,176px);font-weight:800;line-height:1}.round-label{letter-spacing:1.5px;margin:16px 0 0;font-size:clamp(19px,4.5vw,28px);font-weight:800}.finished-title{margin:8px 0;font-size:clamp(36px,9vw,56px)}.total-duration{opacity:.9;margin:0 0 20px;font-size:clamp(16px,4vw,20px);font-weight:700}.timer-controls{flex-direction:column;gap:12px;width:100%;max-width:420px;margin:0 auto;display:flex}.timer-controls .button{justify-content:center;align-items:center;gap:10px;display:flex}.timer-controls .button-primary{color:#171717;background:#fff;min-height:68px;font-size:20px}.secondary-controls{grid-template-columns:1fr 1fr;gap:12px;display:grid}.timer-controls .button-secondary{min-height:56px;color:inherit;background:0 0;border-color:currentColor;flex-direction:column;gap:4px;padding:8px;font-size:13px}.back-button{color:inherit;cursor:pointer;background:0 0;border:1px solid;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:10px 14px;font-size:14px;font-weight:700;display:flex}.back-button:focus-visible{outline-offset:3px;outline:3px solid}.timer-screen.countdown .timer-display{font-size:clamp(120px,36vw,220px)}@media (width>=600px){.timer-screen{padding:32px 48px}.timer-controls{max-width:400px}.circular-progress{width:clamp(320px,48vw,440px)}.circular-progress .timer-display{font-size:clamp(120px,14vw,160px)}}@media (height<=600px){.timer-screen{padding-top:10px;padding-bottom:10px}.timer-main{justify-content:center}.phase-label{margin-bottom:0}.circular-progress{width:clamp(190px,42vh,260px)}.circular-progress .timer-display{margin:0;font-size:clamp(64px,14vh,100px)}.round-label{margin-top:4px}.total-duration{margin-bottom:8px}.timer-controls{gap:8px}.timer-controls .button-primary{min-height:52px}.timer-controls .button-secondary{flex-direction:row;min-height:44px}}.circular-progress{aspect-ratio:1;place-items:center;width:clamp(260px,76vw,440px);display:grid;position:relative}.circular-progress-ring{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.circular-progress-ring circle{fill:none;stroke-width:2.5px}.circular-progress-track{stroke:#fff;opacity:.22}.circular-progress-value{stroke:#fff;stroke-linecap:round;transform-origin:50%;transform:rotate(-90deg)}.circular-progress-content{justify-content:center;align-items:center;width:100%;display:flex;position:relative}.circular-progress .timer-display{letter-spacing:-3px;width:auto;margin:0;font-size:clamp(76px,20vw,144px)}@media (prefers-reduced-motion:reduce){.timer-screen,.toggle-input,.toggle-input:before{transition:none}}.button,.back-button{transition:transform .12s,opacity .12s}.button:active,.back-button:active{opacity:.85;transform:scale(.97)}@media (prefers-reduced-motion:reduce){.button,.back-button{transition:none}.button:active,.back-button:active{transform:none}}@keyframes screen-fade-in{0%{opacity:0}to{opacity:1}}.setup-screen,.timer-screen{animation:.2s ease-out screen-fade-in}@media (prefers-reduced-motion:reduce){.setup-screen,.timer-screen{animation:none}}@keyframes exercise-timer-enter{0%{opacity:0;transform:scale(1.08)}to{opacity:1;transform:scale(1)}}.exercise-timer-enter{animation:.25s ease-out exercise-timer-enter}@media (prefers-reduced-motion:reduce){.exercise-timer-enter{animation:none}}
