.th-chips{gap:var(--s-2);grid-template-columns:repeat(3,1fr);display:grid}.th-chips-2{grid-template-columns:repeat(2,1fr)}.th-chips-4{grid-template-columns:repeat(4,1fr)}.th-chips-5{grid-template-columns:repeat(5,1fr)}.th-chips .chip{gap:6px;min-block-size:44px;padding-inline:6px}.th-toggles{gap:var(--s-2);flex-wrap:wrap;display:flex}.th-toggles .chip{gap:6px;min-block-size:44px}.th-side{gap:var(--s-3)}.th-side>.lbl{align-items:center;gap:6px;margin-block-end:0;display:flex}.th-note{font-size:var(--fs-14);color:var(--color-muted);margin:0;line-height:1.45}.th-note a{color:inherit;word-break:break-all}.th-next{font-size:var(--fs-14);color:var(--color-muted);margin:0}.th-icon-btn{flex:none;inline-size:56px;padding-inline:0}.th-link{block-size:44px;inline-size:auto;font-size:var(--fs-14);justify-self:start}.th-field{font-size:var(--fs-14);color:var(--color-muted);gap:6px;font-weight:600;display:grid}.th-input{box-sizing:border-box;border-radius:var(--r-md);background:var(--color-bg);min-block-size:48px;inline-size:100%;box-shadow:var(--border);color:var(--color-text);padding-inline:var(--s-3);font:inherit;font-size:var(--fs-16);border:0}.th-input-sm{text-align:end;inline-size:104px}.th-empty{color:var(--color-muted);padding:var(--s-6)}.th-ring{flex:none;position:relative}.th-ring svg{display:block}.th-ring circle{transition:stroke-dasharray .25s linear}.th-ring-in{text-align:center;place-content:center;justify-items:center;gap:2px;display:grid;position:absolute;inset:0}.th-ctrls{grid-template-columns:48px minmax(0,1fr) minmax(0,1.6fr) 48px}.th-ctrls>button{padding-inline:var(--s-2);min-inline-size:0}.th-ctrls .th-icon-btn{inline-size:48px}.th-breath .th-ctrls{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}.th-breath:is(.is-idle,.is-done) .th-breath-phase{font-family:var(--font-text);font-size:var(--fs-17);max-inline-size:12em}.th-ctrls-static{grid-template-columns:1fr;gap:10px;inline-size:100%;max-inline-size:440px;display:grid}.th-ctrls-static:has(>:nth-child(2)){grid-template-columns:2fr 1fr}.th-plan{gap:var(--s-2);display:grid}.th-stepper{align-items:center;gap:var(--s-2);grid-template-columns:1fr 44px minmax(64px,auto) 44px;display:grid}.th-stepper .th-icon-btn{border-radius:var(--r-md);block-size:44px;inline-size:44px}.th-stepper-label{font-size:var(--fs-14);text-align:start;font-weight:600}.th-stepper-val{text-align:center;font-size:var(--fs-17)}.kt-stage{text-align:start;align-content:start;justify-items:stretch}.kt-stage .stage-head{text-align:center}.kt-list{gap:var(--s-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.kt-card{padding:var(--s-3) var(--s-4);gap:var(--s-3);grid-template-columns:1fr auto;align-items:center;display:grid}.kt-label{font-size:var(--fs-14);color:var(--color-muted);align-items:center;gap:6px;margin:0;font-weight:600;display:flex}.kt-time{margin:4px 0 0;font-size:3rem}.kt-actions{grid-column:1/-1;grid-template-columns:2fr repeat(4,1fr);gap:6px;display:grid}.kt-actions>button{block-size:48px;font-size:var(--fs-16);padding-inline:0}.kt-card.is-focus{box-shadow:inset 0 0 0 2px var(--color-accent)}.kt-card.is-ringing{background:var(--color-accent);color:var(--color-accent-text);animation:1s step-end infinite kt-flash}.kt-card.is-ringing .kt-label{color:inherit}.kt-card.is-ringing .pri{background:var(--color-accent-text);color:var(--color-accent)}@keyframes kt-flash{50%{background:var(--color-text);color:var(--color-bg)}}@media (prefers-reduced-motion:reduce){.kt-card.is-ringing{animation:none}}.th-presets{margin:0;padding:0;list-style:none}.th-preset{justify-content:space-between;align-items:center;gap:var(--s-3);border-block-start:1px solid var(--color-border);min-block-size:48px;inline-size:100%;font-size:var(--fs-16);font-weight:600;display:flex}.th-presets li:first-child .th-preset{border-block-start:0}.th-preset:disabled{opacity:.45}.th-preset-name{text-align:start;align-items:center;gap:10px;display:flex}.th-preset-time{font-size:var(--fs-17);color:var(--color-muted)}.th-custom{gap:var(--s-2)}.th-custom-row{gap:var(--s-2);grid-template-columns:1fr 72px auto;align-items:center;display:grid}.th-unit{color:var(--color-muted);font-size:var(--fs-14)}.th-egg{gap:var(--s-2)}.th-egg .th-chips .chip{font-size:var(--fs-12);padding-inline:2px}.th-stage{min-block-size:0}.th-interval-kind{margin:var(--s-4) 0 0;font-family:var(--font-display);font-weight:700;font-size:var(--fs-40);color:var(--color-accent);text-transform:uppercase;letter-spacing:-.02em;line-height:1}.th-interval:is(.is-rest,.is-setRest,.is-prepare,.is-cooldown) .th-interval-kind{color:var(--color-muted)}.th-interval-time{margin:0;font-size:clamp(5.5rem,28vw,7.5rem)}.th-rounds{gap:4px;inline-size:100%;display:flex}.th-round{background:var(--color-track);border-radius:5px;flex-basis:0;block-size:10px}.th-round.is-work{background:color-mix(in srgb, var(--color-accent) 30%, var(--color-track))}.th-round.past.is-work,.th-round.now.is-work{background:var(--color-accent)}.th-round.past:not(.is-work){background:var(--color-muted)}.th-round.now{outline:2px solid var(--color-text);outline-offset:1px}.th-interval[data-status=running].is-work .stage{background:color-mix(in srgb, var(--color-accent) 10%, var(--color-stage))}.th-breath-stage{aspect-ratio:1;inline-size:min(76vw,320px);margin-block:var(--s-2);place-items:center;display:grid;position:relative}.th-breath-shape,.th-breath-fill{border-radius:50%;position:absolute;inset:0}.th-breath-shape{box-shadow:inset 0 0 0 2px var(--color-border);background:var(--color-bg)}.th-breath-fill{background:color-mix(in srgb, var(--color-accent) 22%, var(--color-surface));box-shadow:inset 0 0 0 3px var(--color-accent);will-change:transform}.th-breath-stage.is-square :is(.th-breath-shape,.th-breath-fill){border-radius:6%}.th-breath-dot{background:var(--color-accent);border-radius:50%;block-size:18px;inline-size:18px;margin:-9px;position:absolute}.th-breath-label{justify-items:center;gap:4px;display:grid;position:relative}.th-breath-phase{font-family:var(--font-display);font-weight:700;font-size:var(--fs-24);margin:0}.th-breath-count{margin:0;font-size:3.5rem}@media (prefers-reduced-motion:reduce){.th-breath-fill{transition:transform .6s}}.th-noise-play{background:var(--color-accent);block-size:160px;inline-size:160px;color:var(--color-accent-text);margin-block:var(--s-4) var(--s-2);transition:transform var(--dur-ui) var(--ease-out);border-radius:50%;place-items:center;display:grid;position:relative}.th-noise-play:active{transform:scale(.96)}.th-noise-bars{opacity:0;align-items:flex-end;gap:4px;block-size:20px;display:flex;position:absolute;inset-block-end:26px}.th-noise-bars i{background:currentColor;border-radius:2px;block-size:30%;inline-size:4px}.th-noise.is-playing .th-noise-bars{opacity:.8}.th-noise.is-playing .th-noise-bars i{animation:1.2s ease-in-out infinite th-bar}@keyframes th-bar{50%{block-size:100%}}@media (prefers-reduced-motion:reduce){.th-noise.is-playing .th-noise-bars i{block-size:60%;animation:none}}.th-noise-title{font-family:var(--font-display);font-weight:700;font-size:var(--fs-30);margin:0}.th-noise-kinds{inline-size:100%;max-inline-size:480px}.th-range{gap:var(--s-3);grid-template-columns:auto 1fr 48px;align-items:center;display:grid}.th-range .lbl{margin:0}.th-range input{accent-color:var(--color-accent);block-size:44px;inline-size:100%}.th-fast-ring{margin-block:var(--s-2)}.th-fast-time{margin:6px 0;font-size:2.6rem}.th-fast-sub{font-size:var(--fs-14);color:var(--color-muted);margin:0}.th-fast-facts{gap:var(--s-6);margin:0;display:flex}.th-fast-facts dt,.th-stats dt{font-size:var(--fs-12);color:var(--color-muted);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.th-fast-facts dd,.th-stats dd{font-size:var(--fs-20);margin:4px 0 0}.th-fast-edit{gap:var(--s-2);flex-wrap:wrap;inline-size:100%;max-inline-size:440px;display:flex}.th-fast-edit .th-input{flex:200px}.th-fast-edit button{flex:100px;block-size:48px}.th-stats{gap:var(--s-3);grid-template-columns:repeat(3,1fr);margin:0;display:grid}.th-history{font-size:var(--fs-14);gap:6px;margin:0;padding:0;list-style:none;display:grid}.th-history li{align-items:center;gap:var(--s-2);display:flex}.th-history li>span:first-child{flex:none;inline-size:96px}.th-bar{background:var(--color-track);border-radius:3px;flex:1;block-size:6px;overflow:hidden}.th-bar i{background:var(--color-accent);block-size:100%;display:block}.tool.th-chess{grid-template-columns:1fr}.th-chess-board{gap:var(--s-2);block-size:calc(100dvh - var(--header-h) - var(--nav-h) - var(--safe-bottom) - 56px);grid-template-rows:1fr auto 1fr;min-block-size:440px;display:grid}.th-chess-side{border-radius:var(--r-xl);background:var(--color-surface);box-shadow:var(--border);color:var(--color-text);align-content:center;justify-items:center;gap:var(--s-2);padding:var(--s-4);touch-action:manipulation;-webkit-user-select:none;user-select:none;transition:background-color var(--dur-ui);display:grid}.th-chess-side.side-1{rotate:180deg}.th-chess-side.is-active{background:var(--color-accent);color:var(--color-accent-text);box-shadow:none}.th-chess-side.is-low.is-active,.th-chess-side.is-flag{background:var(--color-danger);color:#fff}.th-chess-side:disabled{opacity:1}.th-chess-name{font-size:var(--fs-14);opacity:.8;font-weight:600}.th-chess-time{font-size:clamp(4.5rem,22vw,11rem)}.th-chess-hint{font-size:var(--fs-14);opacity:.85;min-block-size:20px}.th-chess-bar{gap:var(--s-2);justify-content:center;align-items:center;display:flex}.th-chess-bar .th-icon-btn{border-radius:var(--r-md);block-size:48px;inline-size:48px}.th-chess-tc{text-align:center;min-inline-size:64px;font-size:var(--fs-17)}.th-chess-result{margin:var(--s-3) 0 0;text-align:center;font-weight:700;font-size:var(--fs-17)}.th-chess-custom{gap:var(--s-3);grid-template-columns:1fr 1fr;display:grid}.th-chess:fullscreen{padding:var(--s-3);background:var(--color-bg)}.th-chess:fullscreen .th-chess-board{block-size:calc(100dvh - var(--s-6))}@media (min-width:1024px){.kt-stage{align-content:start;padding-block-start:calc(var(--s-6) + 40px);overflow-y:auto}.kt-stage .stage-head{text-align:start}.kt-list{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));display:grid}.kt-card{padding:var(--s-5)}.kt-time{font-size:4.2rem}.th-interval-kind{font-size:4rem}.th-interval-time{font-size:clamp(8rem,14vw,13rem)}.th-rounds{max-inline-size:760px}.th-breath-stage{inline-size:min(400px,48dvh)}.th-breath-count{font-size:4.5rem}.th-noise-play{block-size:200px;inline-size:200px}.th-fast-time{font-size:3.4rem}.th-ctrls{grid-template-columns:56px minmax(0,1fr) minmax(0,1.6fr) 56px;inline-size:520px}.th-ctrls .th-icon-btn{inline-size:56px}.th-breath .th-ctrls{grid-template-columns:1fr 1.6fr;inline-size:440px}.th-chess-board{grid-template-rows:none;grid-template-columns:1fr auto 1fr;block-size:100%;min-block-size:0}.th-chess-side.side-1{rotate:none}.th-chess-bar{flex-direction:column}}
