@font-face{font-family:Oswald Variable;font-style:normal;font-display:swap;font-weight:200 700;src:url(./oswald-cyrillic-ext-wght-normal-DLWmRmaW.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Oswald Variable;font-style:normal;font-display:swap;font-weight:200 700;src:url(./oswald-cyrillic-wght-normal-C8sJyxwB.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Oswald Variable;font-style:normal;font-display:swap;font-weight:200 700;src:url(./oswald-vietnamese-wght-normal-Tdf5mmdl.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Oswald Variable;font-style:normal;font-display:swap;font-weight:200 700;src:url(./oswald-latin-ext-wght-normal-Dj_1K-Kw.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Oswald Variable;font-style:normal;font-display:swap;font-weight:200 700;src:url(./oswald-latin-wght-normal-CzS3kehr.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#0b0d10;--surface:#15191f;--surface-2:#1e242c;--line:#2a313b;--text:#f4f6f8;--muted:#8b95a3;--prep:#ffc531;--work:#2ee66b;--rest:#ff4d4d;--accent:#2ee66b;--k-stopwatch:#4fe3d6;--k-fortime:#ff7a1a;--k-amrap:#2ee66b;--k-emom:#3aa8ff;--k-tabata:#ff4d6d;--k-custom:#b98cff;--k-mix:#ffc531;--radius:16px;--display:"Oswald Variable", "Oswald", "Arial Narrow", system-ui, sans-serif;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);overscroll-behavior:none;-webkit-user-select:none;user-select:none;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:16px}button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation}button:disabled{opacity:.3;cursor:default}input{font:inherit;color:inherit;-webkit-user-select:text;user-select:text}.screen{height:100%;padding-top:var(--safe-top);padding-bottom:var(--safe-bottom);flex-direction:column;display:flex}.btn{border-radius:var(--radius);font-family:var(--display);letter-spacing:.06em;text-transform:uppercase;background:var(--surface-2);border:0;padding:16px 20px;font-size:20px}.btn.ghost{border:1px solid var(--line);background:0 0}.btn.wide{width:100%}.btn.start{background:var(--accent);color:#04130a;font-size:26px;font-weight:600}.btn.danger{background:var(--rest);color:#1a0303;font-weight:600}.icon-btn{background:0 0;border:0;border-radius:12px;flex:none;width:44px;height:44px;font-size:20px}.icon-btn:active{background:var(--surface-2)}.armed{color:var(--rest);border-color:var(--rest)}.icon-btn.armed{width:auto;padding:0 10px;font-size:14px;font-weight:600}.muted{color:var(--muted)}.small{font-size:13px}.empty{color:var(--muted);text-align:center;margin-top:64px;line-height:1.6}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{border:1px solid var(--line);background:0 0;border-radius:999px;padding:8px 14px;font-size:14px}.chip.on{background:var(--text);color:var(--bg);border-color:var(--text)}.chip.k-fortime.on{background:var(--k-fortime);border-color:var(--k-fortime)}.chip.k-amrap.on{background:var(--k-amrap);border-color:var(--k-amrap)}.chip.k-emom.on{background:var(--k-emom);border-color:var(--k-emom)}.chip.k-tabata.on{background:var(--k-tabata);border-color:var(--k-tabata)}.chip.k-custom.on{background:var(--k-custom);border-color:var(--k-custom)}.chip.k-rest.on{background:var(--rest);border-color:var(--rest)}.card{background:var(--surface);border-radius:var(--radius);flex-direction:column;gap:16px;padding:16px;display:flex}.field{flex-direction:column;gap:8px;display:flex}.field-label{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:13px}.name-field input{background:var(--surface);border:1px solid var(--line);border-radius:12px;outline:none;padding:14px;font-size:18px}.name-field input:focus{border-color:var(--muted)}.stepper{align-items:center;gap:10px;display:flex}.step-btn{background:var(--surface-2);border:0;border-radius:14px;flex:none;width:64px;height:64px;font-size:32px;line-height:1}.step-btn:active{background:var(--line)}.step-value{flex:1;justify-content:center;min-width:0;display:flex}.value-btn,.num-input,.dur-edit{font-family:var(--display);font-variant-numeric:tabular-nums;font-feature-settings:"tnum";text-align:center;background:0 0;border:0;width:100%;padding:0;font-size:40px}.num-input{outline:none}.dur-edit{justify-content:center;align-items:center;gap:4px;display:flex}.dur-edit input{width:2.4ch;font:inherit;text-align:center;background:var(--surface-2);border:0;border-radius:8px;outline:none}.toggle{background:var(--surface);border-radius:var(--radius);align-items:center;gap:12px;padding:16px;display:flex}.toggle>span:first-child{flex:1}.toggle input{opacity:0;pointer-events:none;position:absolute}.toggle-track{background:var(--line);border-radius:999px;flex:none;width:52px;height:30px;transition:background .2s;position:relative}.toggle-track:after{content:"";background:var(--text);border-radius:50%;width:24px;height:24px;transition:transform .2s;position:absolute;top:3px;left:3px}.toggle input:checked+.toggle-track{background:var(--accent)}.toggle input:checked+.toggle-track:after{transform:translate(22px)}.brand{font-family:var(--display);align-items:baseline;gap:8px;padding:20px 16px 8px;display:flex}.brand-mark{letter-spacing:.04em;font-size:34px;font-weight:700}.brand-sub{color:var(--accent);letter-spacing:.3em;font-size:18px}.home-body{flex:1;padding:12px 16px 24px;overflow-y:auto}.mode-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}@media (width>=720px){.mode-grid{grid-template-columns:repeat(3,1fr)}}.mode-card{--c:var(--accent);aspect-ratio:1/.85;border-radius:var(--radius);background:var(--surface);border:0;border-top:4px solid var(--c);text-align:left;flex-direction:column;justify-content:space-between;padding:16px;display:flex}.mode-card.k-stopwatch{aspect-ratio:auto;grid-column:1/-1;gap:8px;min-height:110px}.mode-card:active{background:var(--surface-2);transform:scale(.98)}.mode-name{font-family:var(--display);color:var(--c);text-transform:uppercase;font-size:30px;font-weight:600}.mode-hint{color:var(--muted);font-size:13px;line-height:1.35}.k-stopwatch{--c:var(--k-stopwatch)}.k-fortime{--c:var(--k-fortime)}.k-amrap{--c:var(--k-amrap)}.k-emom{--c:var(--k-emom)}.k-tabata{--c:var(--k-tabata)}.k-custom{--c:var(--k-custom)}.k-rest{--c:var(--rest)}.k-mix{--c:var(--k-mix)}.tabs{border-top:1px solid var(--line);background:var(--bg);display:flex}.tabs button{color:var(--muted);background:0 0;border:0;flex-direction:column;flex:1;align-items:center;gap:2px;padding:10px 0 12px;font-size:12px;display:flex}.tabs button.on{color:var(--text)}.tab-icon{font-size:20px}.list{flex-direction:column;gap:10px;margin:0 0 16px;padding:0;list-style:none;display:flex}.list-item{background:var(--surface);border-radius:var(--radius);align-items:center;gap:4px;padding:4px 8px 4px 4px;display:flex}.list-item.column{flex-direction:column;align-items:stretch;padding:4px}.list-main{text-align:left;background:0 0;border:0;flex-direction:column;flex:1;gap:4px;min-width:0;padding:12px;display:flex}.list-main strong{font-size:18px}.list-main .muted{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tag{letter-spacing:.1em;text-transform:uppercase;color:var(--c);font-size:11px;font-weight:700}.icon-btn.play{color:var(--accent);font-size:22px}.hist-time{font-family:var(--display);font-variant-numeric:tabular-nums;font-size:22px}.settings{flex-direction:column;gap:12px;display:flex}.motivation textarea{font:inherit;color:inherit;resize:vertical;background:var(--surface-2);border:1px solid var(--line);-webkit-user-select:text;user-select:text;border-radius:12px;outline:none;padding:12px;font-size:17px}.motivation textarea:focus{border-color:var(--muted)}.motivation-actions{gap:8px;display:flex}.guide-link{text-align:center;color:var(--text);text-decoration:none;display:block}.motivation-actions .btn{flex:1}.topbar{align-items:center;gap:8px;padding:8px;display:flex}.topbar-spacer{width:44px}.kind-title{text-align:center;font-family:var(--display);text-transform:uppercase;color:var(--c,var(--text));flex:1;margin:0;font-size:28px}.setup-body{flex-direction:column;flex:1;gap:16px;padding:8px 16px 24px;display:flex;overflow-y:auto}.setup-actions .btn.ghost{font-size:16px}.setup-actions{border-top:1px solid var(--line);grid-template-columns:1fr 1.4fr;gap:12px;padding:12px 16px 16px;display:grid}.total{text-align:center;color:var(--muted);margin:0}.total strong{color:var(--text);font-family:var(--display);margin-left:6px;font-size:22px}.interval-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.interval{border-left:4px solid var(--work);flex-direction:column;gap:8px;padding-left:12px;display:flex}.interval.rest{border-left-color:var(--rest)}.interval-head{align-items:center;gap:8px;display:flex}.interval-name{background:var(--surface-2);border:0;border-radius:10px;outline:none;flex:1;min-width:0;padding:10px 12px;font-size:16px}.phase-chip.work{color:var(--work);border-color:var(--work)}.phase-chip.rest{color:var(--rest);border-color:var(--rest)}.mix-head{align-items:center;gap:4px;display:flex}.mix-index{background:var(--surface-2);width:32px;height:32px;font-family:var(--display);border-radius:50%;flex:none;place-items:center;font-size:18px;display:grid}.mix-desc{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex:1;margin-left:6px;font-size:14px;overflow:hidden}.run{--phase:var(--work);background:var(--bg);position:relative;overflow:hidden}.run.phase-prep{--phase:var(--prep)}.run.phase-work{--phase:var(--work)}.run.phase-rest{--phase:var(--rest)}.run:before{content:"";pointer-events:none;background:radial-gradient(120% 80% at 50% 45%, color-mix(in srgb, var(--phase) 16%, transparent), transparent 70%);position:absolute;inset:0}.progress{background:var(--surface-2);flex:none;height:6px}.progress-fill{background:var(--phase);transform-origin:0;height:100%;transition:transform .1s linear}.run-top{z-index:1;align-items:center;gap:8px;padding:8px;display:flex;position:relative}.run-meta{min-width:0;color:var(--muted);text-align:center;flex-direction:column;flex:1;align-items:center;font-size:14px;display:flex}.run-total{text-align:right;width:64px;font-family:var(--display);color:var(--muted);font-variant-numeric:tabular-nums;padding-right:8px}.run-main{z-index:1;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;min-height:0;padding:0 8px;display:flex;position:relative}.phase-label{font-family:var(--display);text-transform:uppercase;letter-spacing:.12em;color:var(--phase);font-size:clamp(24px,7vmin,56px);font-weight:600}.clock{font-family:var(--display);font-variant-numeric:tabular-nums;font-feature-settings:"tnum";letter-spacing:-.02em;color:var(--phase);text-shadow:0 0 40px color-mix(in srgb, var(--phase) 35%, transparent);font-size:min(38vw,46vh);font-weight:600;line-height:.9}.clock.long{font-size:min(28vw,40vh)}.is-paused .clock{opacity:.45;animation:1.2s steps(2,end) infinite blink}@keyframes blink{50%{opacity:.2}}.sub{font-size:clamp(20px,5.5vmin,40px);font-family:var(--display);align-items:baseline;gap:20px;display:flex}.round strong{font-size:1.4em}.round em{color:var(--muted);font-size:.7em;font-style:normal}.cap{color:var(--muted);font-size:.75em}.tap-hint{color:var(--muted);font-size:13px}.next{color:var(--muted);margin-top:8px;font-size:16px}.laps{width:min(360px,100%);max-height:26vh;font-family:var(--display);font-variant-numeric:tabular-nums;margin:4px 0 0;padding:0;list-style:none;overflow-y:auto}.laps li{border-bottom:1px solid var(--surface-2);grid-template-columns:2.5em 1fr 1fr;gap:8px;padding:6px 4px;font-size:20px;display:grid}.laps li span:first-child{color:var(--muted)}.laps li span:last-child{color:var(--muted);text-align:right}.laps .best span:nth-child(2),.splits .best td:nth-child(2){color:var(--k-amrap)}.laps .worst span:nth-child(2),.splits .worst td:nth-child(2){color:var(--k-tabata)}.next strong{color:var(--text)}.run-controls{z-index:1;justify-content:center;gap:16px;padding:12px 16px 20px;display:flex;position:relative}.ctl{background:var(--surface-2);border:0;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:2px;width:84px;height:84px;font-size:28px;display:flex}.ctl small{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:11px}.ctl.main{background:var(--phase);color:#050505;width:100px;height:100px;font-size:32px}.ctl.main small{color:#0009}.ctl.done{background:var(--k-fortime);color:#1a0a00}.ctl.done small{color:#0009}.ctl:active{transform:scale(.95)}.flash{z-index:5;pointer-events:none;background:var(--phase);animation:.5s ease-out forwards flash;position:absolute;inset:0}@keyframes flash{0%{opacity:.85}to{opacity:0}}@media (orientation:landscape) and (height<=560px){.run{grid-template-rows:auto auto 1fr;grid-template-columns:1fr auto;display:grid}.progress{grid-area:1/1/auto/-1}.run-top{grid-area:2/1;padding:4px 8px}.run-main{grid-area:3/1}.run-controls{flex-direction:column;grid-area:2/2/4;justify-content:center;padding:8px 16px}.clock{font-size:min(28vw,58vh)}.clock.long{font-size:min(22vw,52vh)}.tap-hint,.next{display:none}.laps{max-height:30vh}.ctl{width:68px;height:68px}.ctl.main{width:84px;height:84px}}.modal{z-index:10;background:#000000b3;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal-card{background:var(--surface);border-radius:var(--radius);width:min(360px,100%);padding:24px}.modal-card p{text-align:center;margin:0 0 20px;font-size:20px}.modal-actions{grid-template-columns:1fr 1fr;gap:12px;display:grid}.summary-body{text-align:center;flex:1;padding:32px 16px;overflow-y:auto}.summary-body h1{font-family:var(--display);text-transform:uppercase;margin:16px 0 0;font-size:32px}.badge{letter-spacing:.1em;text-transform:uppercase;border-radius:999px;padding:6px 14px;font-size:13px;font-weight:700;display:inline-block}.badge.ok{background:color-mix(in srgb, var(--work) 20%, transparent);color:var(--work)}.badge.stopped{background:color-mix(in srgb, var(--rest) 20%, transparent);color:var(--rest)}.summary-time{font-family:var(--display);font-variant-numeric:tabular-nums;margin-top:16px;font-size:min(26vw,140px);font-weight:600;line-height:1}.splits{text-align:left;flex-direction:column;gap:16px;margin-top:24px;padding:0 8px 8px;display:flex}.splits h3{color:var(--muted);margin:0 0 8px;font-size:14px;font-weight:600}.splits table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.splits th{text-align:left;color:var(--muted);border-bottom:1px solid var(--line);padding:6px 4px;font-size:12px;font-weight:500}.splits td{border-bottom:1px solid var(--surface-2);font-family:var(--display);padding:8px 4px;font-size:18px}
