: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{width:100%;min-width:320px;min-height:100%}body{width:100%;min-width:320px;min-height:100dvh;margin:0}button,input{font:inherit}button{-webkit-tap-highlight-color:transparent}#root{min-height:100%}.setup-screen{min-height:100dvh;padding:max(16px, env(safe-area-inset-top)) max(20px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(20px, env(safe-area-inset-left));color:#171717;background:#fff;justify-content:center;align-items:center;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-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{box-sizing:border-box;width:100%;height:100dvh;padding:max(16px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));flex-direction:column;transition:background-color .15s;display:flex;overflow:hidden}.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;flex-shrink:0;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;min-height:0;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;flex-shrink:0;margin:0 0 20px;font-size:clamp(16px,4vw,20px);font-weight:700}.timer-controls{flex-direction:column;flex-shrink:0;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}.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)}.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<=760px){.setup-screen{padding-top:12px;padding-bottom:12px}.setup-header{margin-bottom:14px}.setup-logo{width:clamp(100px,18vh,140px)}.setup-card{gap:12px;padding:16px}.form-field{gap:5px}.form-field input{padding:10px 12px;font-size:18px}.toggle-field{padding-top:12px}.setup-duration{padding:10px;font-size:14px}.setup-form{gap:10px}.start-button{min-height:50px}}@media (height<=700px){.timer-screen{padding-top:10px;padding-bottom:10px}.phase-label{margin-bottom:0;font-size:clamp(16px,4vh,24px)}.circular-progress{width:clamp(170px,40vh,260px)}.circular-progress .timer-display{margin:0;font-size:clamp(64px,14vh,100px)}.timer-screen.countdown .timer-display{font-size:clamp(100px,28vh,170px)}.round-label{margin-top:4px;font-size:clamp(16px,4vh,22px)}.total-duration{margin-bottom:8px;font-size:14px}.timer-controls{gap:8px}.timer-controls .button-primary{min-height:52px}.timer-controls .button-secondary{flex-direction:row;min-height:44px}}@keyframes screen-fade-in{0%{opacity:0}to{opacity:1}}.setup-screen,.timer-screen{animation:.2s ease-out screen-fade-in}@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}.button,.back-button{transition:transform .12s,opacity .12s}.button:active,.back-button:active{opacity:.85;transform:scale(.97)}@media (prefers-reduced-motion:reduce){.timer-screen,.toggle-input,.toggle-input:before,.button,.back-button{transition:none}.button:active,.back-button:active{transform:none}.setup-screen,.timer-screen,.exercise-timer-enter{animation:none}}.circular-progress{width:min(88vw,52vh,440px)}.circular-progress .timer-display{font-size:clamp(76px,24vw,144px)}@media (orientation:landscape) and (height<=600px){.timer-screen{padding:10px 20px}.timer-header{flex-shrink:0}.timer-content{grid-template-rows:1fr auto;grid-template-columns:minmax(0,1.2fr) minmax(220px,.8fr);align-items:center;column-gap:24px;display:grid}.timer-main{grid-area:1/1/3;justify-content:center}.phase-label{margin-bottom:4px;font-size:clamp(16px,4vh,24px)}.circular-progress{flex-shrink:1;width:min(46vh,100%,360px)}.circular-progress .timer-display{letter-spacing:-2px;font-size:clamp(56px,min(46vh,100%,360px)/3.44828,100px)}.timer-screen.countdown .timer-display{font-size:clamp(90px,20vh,150px)}.round-label{margin-top:6px;font-size:clamp(15px,3.5vh,21px)}.total-duration{grid-area:1/2;align-self:end;margin:0 0 16px;font-size:clamp(13px,3vh,17px)}.timer-controls{grid-area:2/2;align-self:start;gap:8px}.timer-content{grid-template-rows:auto auto;align-content:center}.timer-controls{margin-top:0}.timer-controls .button-primary{min-height:52px;font-size:18px}.secondary-controls{gap:8px}.timer-controls .button-secondary{flex-direction:row;min-height:46px;font-size:13px}}
