:root{--bg:#f6f7f9;--surface:#fff;--text:#15191e;--muted:#5b6573;--border:#dde2e8;--accent:#0f766e;--accent-text:#fff;--accent-soft:#e6f4f2;--danger:#b42318;--figure:#15191e;--prop:#0f766e;--chevron:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%235b6573' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");--tick:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8.5l3 3 6-7' fill='none' stroke='%23ffffff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");--radius:12px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}:root:not([data-theme=light]){--bg:#0f1215;--surface:#181c21;--text:#e8ecf0;--muted:#9aa5b1;--border:#2b323a;--accent:#2dd4bf;--accent-text:#062a26;--accent-soft:#123532;--danger:#f97066;--figure:#e8ecf0;--prop:#2dd4bf;--chevron:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%239aa5b1' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");--tick:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8.5l3 3 6-7' fill='none' stroke='%23062a26' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}}:root[data-theme=dark]{--bg:#0f1215;--surface:#181c21;--text:#e8ecf0;--muted:#9aa5b1;--border:#2b323a;--accent:#2dd4bf;--accent-text:#062a26;--accent-soft:#123532;--danger:#f97066;--figure:#e8ecf0;--prop:#2dd4bf;--chevron:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%239aa5b1' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");--tick:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8.5l3 3 6-7' fill='none' stroke='%23062a26' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0}a{color:var(--accent)}h1{margin:.5rem 0;font-size:1.6rem}h2{margin:0 0 .5rem;font-size:1.15rem}h3{margin:0 0 .5rem;font-size:1rem}.container{max-width:960px;margin:0 auto;padding:1rem}.center{place-content:center;min-height:100vh;padding:1rem;display:grid}.center-text{text-align:center}.narrow{max-width:460px}.muted{color:var(--muted)}.error{color:var(--danger);min-height:1em;margin:.25rem 0}.success{color:var(--accent)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin:.75rem 0;padding:1rem}.card.highlight{border-color:var(--accent)}.note{background:var(--accent-soft);border-color:#0000}.stack>*{margin:.75rem 0}.row{flex-wrap:wrap;align-items:center;gap:.5rem;margin:.5rem 0;display:flex}.actions{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.field{flex-direction:column;gap:.25rem;margin:.75rem 0;display:flex}.field.inline{flex-direction:row;align-items:center;gap:.5rem}.hint{color:var(--muted)}label.inline{align-items:center;gap:.35rem;display:inline-flex}input,select,textarea,button,.button{font:inherit;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:8px;padding:.55rem .75rem}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:2px}input.num{width:5.5rem}input[type=number]{appearance:textfield}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.stepper{vertical-align:middle;align-items:stretch;display:inline-flex}.stepper input{text-align:center;border-radius:0;min-width:0;position:relative}.stepper input:not(.num){width:6rem}.stepper input.num{width:4.25rem}.stepper input:hover,.stepper input:focus-visible{z-index:1}.step-btn{background:var(--accent-soft);min-width:2.4rem;color:var(--accent);border-color:var(--border);touch-action:manipulation;padding:0 .7rem;font-size:1.15rem;font-weight:600;line-height:1;transition:background-color .15s,color .15s}.step-btn:first-child{border-right:none;border-radius:8px 0 0 8px}.step-btn:last-child{border-left:none;border-radius:0 8px 8px 0}.step-btn:hover{background:var(--accent);color:var(--accent-text)}.theme-toggle{font-size:1.15rem;line-height:1}button,.button{cursor:pointer;text-decoration:none;display:inline-block}button.primary,.button.primary{background:var(--accent);color:var(--accent-text);border-color:var(--accent);font-weight:600}button.secondary,.button.secondary{background:var(--accent-soft);color:var(--text);border-color:#0000}button.danger{background:var(--danger);color:#fff;border-color:var(--danger)}button.link{color:var(--accent);background:0 0;border:none;padding:.25rem;text-decoration:underline}button.link.danger,button.icon.danger{color:var(--danger)}button.icon{background:0 0;border:1px solid #0000;padding:.25rem .5rem}button:disabled{opacity:.5;cursor:not-allowed}button.wide{width:100%;padding:.75rem 1rem}fieldset{border:none;margin:.75rem 0;padding:0}legend{margin-bottom:.35rem;font-weight:600}.checklist{padding-left:1.2rem}.strength meter{width:100%}.topbar{z-index:5;background:var(--surface);border-bottom:1px solid var(--border);align-items:center;gap:.75rem;padding:.5rem 1rem;display:flex;position:sticky;top:0}.brand{color:var(--accent);font-weight:800;text-decoration:none}.topbar nav{flex:1;gap:.25rem;display:flex;overflow-x:auto}.topbar nav a{color:var(--text);white-space:nowrap;border-radius:8px;padding:.4rem .6rem;text-decoration:none}.topbar nav a[aria-current=page]{background:var(--accent-soft);font-weight:600}.menu-toggle{color:var(--text);line-height:0;display:none}.menu-toggle line{stroke:currentColor;stroke-width:2px;stroke-linecap:round;transform-origin:12px 12px;transition:transform .2s,opacity .2s}@media (max-width:760px){.menu-toggle{display:inline-block}.brand{flex:1}.topbar nav{background:var(--surface);border-bottom:1px solid var(--border);flex-direction:column;gap:.15rem;padding:.5rem 1rem .75rem;display:none;position:absolute;top:100%;left:0;right:0;overflow:visible;box-shadow:0 12px 24px #0000001f}.topbar.menu-open nav{display:flex}.topbar nav a{padding:.7rem .75rem}.menu-open .menu-toggle line:first-child{transform:translateY(6px)rotate(45deg)}.menu-open .menu-toggle line:nth-child(2){opacity:0}.menu-open .menu-toggle line:nth-child(3){transform:translateY(-6px)rotate(-45deg)}}@media (prefers-reduced-motion:reduce){.menu-toggle line{transition:none}}.steps{flex-wrap:wrap;gap:.5rem;padding:0;list-style:none;display:flex}.steps li{background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:.25rem .6rem;font-size:.85rem}.steps li.current{border-color:var(--accent);font-weight:600}.steps li.done{background:var(--accent-soft)}.choice-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.75rem;display:grid}.choice{border:2px solid var(--border);border-radius:var(--radius);background:var(--surface);cursor:pointer;flex-direction:column;gap:.25rem;padding:.9rem;display:flex}.choice:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}.chips{flex-wrap:wrap;gap:.4rem;display:flex}.chip.small{padding:.2rem .6rem;font-size:.85rem}.stats{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:.75rem;margin:.75rem 0;display:grid}.stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;padding:.75rem;display:flex}.stat-value{font-size:1.5rem;font-weight:700}.stat-label{color:var(--muted);font-size:.85rem}.tips li,.compact li{margin:.25rem 0}.grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:.75rem;display:grid}.exercise-card{color:var(--text);flex-direction:column;gap:.25rem;margin:0;text-decoration:none;display:flex}.exercise-card:hover{border-color:var(--accent)}.load-more{margin:.75rem auto;display:block}.load-more[hidden]{display:none}.how-to-text{display:contents}.exercise-figure{width:100%;height:auto;display:block}.exercise-figure .figure line{stroke:var(--figure);stroke-width:6px;stroke-linecap:round}.exercise-figure .head{fill:var(--figure)}.exercise-figure .prop{fill:var(--prop)}.exercise-figure .scene{stroke:var(--muted);stroke-width:3px;fill:var(--muted);stroke-linecap:round;opacity:.6}.exercise-figure .arrow{stroke:var(--accent);stroke-width:3px;fill:none}.exercise-figure .caption{fill:var(--muted);font-size:12px}.detail{gap:1rem;display:grid}@media (min-width:720px){.detail{grid-template-columns:360px 1fr}}.link-card{color:var(--text);flex-direction:column;text-decoration:none;display:flex}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--border);padding:.35rem}.nowrap{white-space:nowrap}.day-name{flex:1;min-width:10rem;font-weight:600}.chart{width:100%;max-width:520px;height:auto}.chart .line{fill:none;stroke:var(--accent);stroke-width:2.5px}.chart .dot{fill:var(--accent)}.chart .axis{stroke:var(--border)}.chart-wrap{margin:.5rem 0}.bars{padding:0;list-style:none}.bars li{grid-template-columns:7rem 1fr 2.5rem;align-items:center;gap:.5rem;margin:.3rem 0;display:grid}.bar{background:linear-gradient(90deg, var(--accent) var(--w,0%), var(--accent-soft) var(--w,0%));border-radius:999px;height:.7rem}.history{padding:0;list-style:none}.history li{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:.4rem 0;display:flex}.danger-zone{border-color:var(--danger)}.toast{background:var(--text);color:var(--bg);z-index:10;pointer-events:none;opacity:0;visibility:hidden;border-radius:999px;padding:.6rem 1rem;transition:transform .25s,opacity .25s,visibility .25s;position:fixed;bottom:1rem;left:50%;transform:translate(-50%)translateY(150%)}.toast button.link{pointer-events:auto;color:inherit;font-weight:600}.toast.show{opacity:1;visibility:visible;transform:translate(-50%)translateY(0)}@media (prefers-reduced-motion:reduce){.toast{transition:none}}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.small{font-size:.8rem}select{appearance:none;cursor:pointer;background:var(--surface) var(--chevron) no-repeat right .8rem center / .75rem;padding-right:2.2rem;transition:border-color .15s,background-color .15s}select:hover{border-color:var(--accent);background-color:var(--accent-soft)}@supports (appearance:base-select){select{appearance:base-select}::picker(select){appearance:base-select}select{background-image:none;padding-right:.75rem}select::picker-icon{color:var(--muted);transition:rotate .2s}select:open::picker-icon{rotate:180deg}::picker(select){border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:10px;margin-top:.25rem;padding:.3rem;box-shadow:0 10px 30px #0000002e}option{border-radius:6px;padding:.45rem .7rem}option:hover,option:focus-visible{background:var(--accent-soft);outline:none}option:checked{color:var(--accent);font-weight:600}option::checkmark{color:var(--accent)}}input[type=checkbox]:not(.visually-hidden){appearance:none;border:2px solid var(--muted);background:var(--surface) no-repeat center / .9rem;cursor:pointer;border-radius:6px;flex:none;width:1.25rem;height:1.25rem;margin:0;padding:0;transition:background-color .15s,border-color .15s}input[type=checkbox]:not(.visually-hidden):hover{border-color:var(--accent)}input[type=checkbox]:not(.visually-hidden):checked{background-color:var(--accent);border-color:var(--accent);background-image:var(--tick)}input[type=number],input[type=text],input[type=password],input[type=search],input[type=date],textarea{transition:border-color .15s}input:hover:not(:disabled),textarea:hover{border-color:var(--accent)}input[type=file]{padding:.4rem}input[type=file]::file-selector-button{font:inherit;background:var(--accent-soft);color:var(--text);cursor:pointer;border:none;border-radius:6px;margin-right:.6rem;padding:.35rem .7rem}meter::-webkit-meter-optimum-value{background:var(--accent)}.chip{border:1px solid var(--border);background:var(--surface);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:999px;align-items:center;gap:.4rem;padding:.45rem .85rem;transition:background-color .15s,border-color .15s;display:inline-flex}.chip:hover{border-color:var(--accent)}.chip:has(input:checked){background:var(--accent);border-color:var(--accent);color:var(--accent-text);font-weight:600}.chip:has(input[type=checkbox]:checked):before{content:"";background:var(--tick) no-repeat center / contain;width:.8rem;height:.8rem}:is(.chip:has(input:focus-visible),.choice:has(input:focus-visible)){outline:3px solid var(--accent);outline-offset:2px}.chip:has(input:disabled){opacity:.75;cursor:default}.choice{transition:border-color .15s,background-color .15s;position:relative}.choice:hover{border-color:var(--accent)}.grid-3{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:0 .75rem;display:grid}.demo img{background:var(--border);object-fit:cover;aspect-ratio:3/2;border-radius:10px;width:100%;height:auto;display:block}.demo.photo.animated{position:relative}.demo.photo.animated img:last-child{animation:3s ease-in-out infinite demo-swap;position:absolute;inset:0}@keyframes demo-swap{0%,35%{opacity:0}50%,85%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){.demo.photo.animated img:last-child{opacity:0;animation:none}}.demo.photo.static{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.demo.photo.static figure{margin:0}.demo.photo.static figcaption{text-align:center;color:var(--muted);margin-top:.2rem;font-size:.85rem}.demo.thumb{flex:none;width:72px}.demo.thumb img{border-radius:8px}.demo.thumb .exercise-figure{background:var(--surface);border-radius:8px}.exercise-card .demo.thumb{width:100%}.demo-large{max-width:520px;margin-bottom:.5rem}.demo-large .figure-demo{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.5rem}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.plan-view.today{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.day-head{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.day-head h2{flex-direction:column;margin:0;display:flex}.day-title{color:var(--muted);font-size:.95rem;font-weight:500}.badge{background:var(--accent);color:var(--accent-text);border-radius:999px;padding:.15rem .6rem;font-size:.8rem;font-weight:700}.exercise-list{margin:.5rem 0 1rem;padding:0;list-style:none}.exercise-list>li{border-top:1px solid var(--border)}.shuffle-in{animation:.55s cubic-bezier(.2,.8,.3,1.25) both shuffle-in;animation-delay:calc(var(--i,0) * 90ms);transform-origin:top}@keyframes shuffle-in{0%{opacity:0;transform:perspective(600px)rotateX(-90deg)}60%{opacity:1;transform:perspective(600px)rotateX(12deg)}to{opacity:1;transform:none}}.shuffle-icon{display:inline-block}.shuffle-icon.spinning{animation:.6s ease-out shuffle-spin}@keyframes shuffle-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.shuffle-in,.shuffle-icon.spinning{animation:none}}.exercise-item summary{cursor:pointer;align-items:center;gap:.75rem;padding:.6rem 0;list-style:none;display:flex}.exercise-item summary::-webkit-details-marker{display:none}.exercise-item summary:hover .ex-hint{background:var(--accent);color:var(--accent-text)}.ex-text{flex-direction:column;flex:1;min-width:0;display:flex}.ex-hint{background:var(--accent-soft);white-space:nowrap;border-radius:999px;padding:.2rem .6rem;font-size:.8rem;transition:background-color .15s}.exercise-item[open] .ex-hint{background:var(--accent);color:var(--accent-text)}.how-to{max-width:520px;padding:0 0 .75rem}.how-to ol{padding-left:1.2rem}.note-inline{background:var(--accent-soft);border-radius:8px;padding:.5rem .75rem}.log-head{align-items:center;gap:.75rem;display:flex}.log-head h2{margin:0}.log-head p{margin:.1rem 0 0}.how-to-toggle{margin:.5rem 0}.how-to-toggle>summary{cursor:pointer;color:var(--accent);font-weight:600}input::placeholder{color:var(--muted);opacity:.6}.install-card{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.landing{max-width:1040px;margin:0 auto;padding:1.5rem 1rem 2rem}.hero{align-items:center;gap:2rem;padding:1.5rem 0 2.5rem;display:grid}@media (min-width:800px){.hero{grid-template-columns:1.1fr .9fr;padding:3rem 0 3.5rem}}.eyebrow{color:var(--accent);letter-spacing:.02em;margin:0 0 .5rem;font-size:.9rem;font-weight:700}.hero h1{letter-spacing:-.02em;margin:0 0 1rem;font-size:clamp(2rem,5vw,3rem);line-height:1.1}.lead{color:var(--muted);max-width:34rem;margin:0 0 1.5rem;font-size:1.15rem}.cta{flex-wrap:wrap;gap:.75rem;margin-bottom:.75rem;display:flex}.cta button{padding:.8rem 1.4rem;font-size:1.05rem}@media (max-width:480px){.cta button{flex:100%}}.preview{justify-self:center;gap:.75rem;width:100%;max-width:420px;display:grid}.preview-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem;box-shadow:0 18px 40px #0000001a}.features{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;padding:1rem 0 2.5rem;display:grid}.feature{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem}.feature h2{margin:.5rem 0 .35rem;font-size:1.1rem}.feature p{color:var(--muted);margin:0}.feature-icon{background:var(--accent-soft);border-radius:10px;place-items:center;width:2.5rem;height:2.5rem;font-size:1.3rem;display:inline-grid}.how{padding:.5rem 0 2.5rem}.how h2{margin-bottom:1rem;font-size:1.5rem}.how-steps{counter-reset:step;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin:0;padding:0;list-style:none;display:grid}.how-steps li{counter-increment:step;flex-direction:column;gap:.25rem;padding-left:3rem;display:flex;position:relative}.how-steps li:before{content:counter(step);background:var(--accent);width:2.1rem;height:2.1rem;color:var(--accent-text);border-radius:999px;place-items:center;font-weight:700;display:grid;position:absolute;top:0;left:0}.promise{background:var(--accent-soft);border-radius:var(--radius);gap:.5rem;padding:1.25rem 1.5rem;display:grid}.promise p{margin:0}.landing-footer{text-align:center;padding:2rem 0 0}.link-card .badge.in-progress{align-self:flex-start;margin-top:.4rem}.today-row{gap:0 .75rem;display:grid}@media (min-width:720px){.today-row{grid-template-columns:1fr 300px;align-items:stretch}}.wheel-card{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;display:flex}.wheel{aspect-ratio:1;flex:none;width:min(220px,100%);position:relative}.wheel-disc{width:100%;height:100%;transition-property:transform;transition-timing-function:cubic-bezier(.12,.7,.08,1);display:block}.wheel-slice{fill:var(--accent)}.wheel-slice.alt{fill:var(--accent-soft)}.wheel-label{fill:var(--accent-text);font-size:10px;font-weight:700}.wheel-label.alt{fill:var(--text)}.wheel-rim{fill:none;stroke:var(--border);stroke-width:3px}.wheel-hub{fill:var(--surface);stroke:var(--accent);stroke-width:3px}.wheel-pointer{z-index:1;border:10px solid #0000;border-top:18px solid var(--danger);border-bottom:0;position:absolute;top:-6px;left:50%;transform:translate(-50%)}.wheel-body{flex-direction:column;align-items:center;gap:.4rem;display:flex}.wheel-body h2,.wheel-result{margin:0}.wheel-result{min-height:3em}.wheel-result.revealed{animation:.45s cubic-bezier(.2,.8,.3,1.3) wheel-reveal}.wheel-demo{text-align:left;width:100%;max-width:420px}.wheel-demo:empty{display:none}.wheel-demo h3{margin:.25rem 0 .5rem}.wheel-demo .figure-demo{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.5rem}.wheel-demo>*{animation:.35s ease-out wheel-reveal}@keyframes wheel-reveal{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.wheel-disc{transition:none}.wheel-result.revealed,.wheel-demo>*{animation:none}}.not-found{text-align:center;max-width:560px;padding-top:2.5rem;padding-bottom:3rem}.not-found.full{flex-direction:column;justify-content:center;min-height:100vh;display:flex}.not-found h1{letter-spacing:-.02em;margin:0 0 .75rem;font-size:clamp(1.7rem,5vw,2.4rem);line-height:1.15}.not-found .lead{margin:0 auto 1rem}.nf-art{width:100%;max-width:340px;height:auto;margin:0 auto 1.25rem;display:block;overflow:visible}.nf-digit{fill:none;stroke:var(--text);stroke-width:18px;stroke-linecap:round;stroke-linejoin:round}.nf-floor{stroke:var(--border);stroke-width:3px;stroke-linecap:round}.nf-plate{transform-box:fill-box;transform-origin:50%;animation:1.1s cubic-bezier(.25,.9,.35,1) both nf-roll}.nf-plate-rim{fill:var(--accent)}.nf-plate-ring{fill:none;stroke:var(--accent-text);stroke-width:3px;opacity:.35}.nf-hole{fill:var(--accent-text);opacity:.45}.nf-hub{fill:var(--bg);stroke:var(--accent-text);stroke-width:3px;opacity:.9}.nf-shadow{fill:var(--text);opacity:.12;transform-box:fill-box;transform-origin:50%;animation:1.1s cubic-bezier(.25,.9,.35,1) both nf-shadow}@keyframes nf-roll{0%{opacity:0;transform:translate(170px)rotate(185deg)}15%{opacity:1}80%{transform:translate(-6px)rotate(-6deg)}to{transform:none}}@keyframes nf-shadow{0%{opacity:0;transform:translate(170px)}80%{transform:translate(-6px)}to{transform:none}}.nf-path{overflow-wrap:anywhere;margin:0 0 1.25rem}.nf-path code{background:var(--accent-soft);border-radius:6px;padding:.1rem .4rem}.nf-actions{justify-content:center}.nf-actions .button{padding:.75rem 1.3rem}@media (max-width:480px){.nf-actions .button{flex:100%}}@media (prefers-reduced-motion:reduce){.nf-plate,.nf-shadow{animation:none}}.reel{z-index:8;background:var(--surface);color:var(--text);overscroll-behavior:none;position:fixed;inset:0;overflow:hidden}.reel,.reel-feed,.reel-face,.reel-sheet{touch-action:pan-y}.reel-feed{scroll-snap-type:y mandatory;overscroll-behavior:contain;scrollbar-width:none;position:absolute;inset:0;overflow:hidden auto}.reel-feed::-webkit-scrollbar{display:none}.reel-page{scroll-snap-align:start;scroll-snap-stop:always;perspective:1400px;height:100%;position:relative;overflow:hidden}.reel-top{z-index:2;padding:calc(.6rem + env(safe-area-inset-top,0px)) max(1rem, env(safe-area-inset-right,0px)) 1.2rem max(1rem, env(safe-area-inset-left,0px));color:#fff;pointer-events:none;background:linear-gradient(#0000008c,#0000);align-items:center;gap:.75rem;display:flex;position:absolute;top:0;left:0;right:0}.reel-top>*{pointer-events:auto}.reel-close{width:2.25rem;height:2.25rem;color:inherit;background:#00000059;border-radius:50%;place-items:center;display:grid}.reel-close svg{fill:currentColor;width:1.2rem;height:1.2rem}.reel-elapsed{font-variant-numeric:tabular-nums;font-size:.85rem;font-weight:600}.reel-bars{flex:1;gap:3px;display:flex}.reel-bars i{background:#ffffff4d;border-radius:2px;flex:1;height:3px}.reel-bars i.done{background:var(--accent)}.reel-bars i.now{background:#fff}.reel-flip{transform-style:preserve-3d;transition:transform .6s cubic-bezier(.3,.9,.3,1);position:absolute;inset:0}.reel-page.flipped .reel-flip{transform:rotateY(180deg)}.reel-page.flipped.from-left .reel-flip{transform:rotateY(-180deg)}.reel-face{background:var(--surface);backface-visibility:hidden;position:absolute;inset:0;overflow:hidden}.reel-back{transform:rotateY(180deg)}.reel-front,.reel-back{transition:visibility 0s .3s}.reel-page.flipped .reel-front,.reel-page:not(.flipped) .reel-back{visibility:hidden}.reel.no-motion .reel-flip,.reel.no-motion .reel-front,.reel.no-motion .reel-back{transition:none}.reel-media{background:var(--bg);position:absolute;inset:0 0 44%}.reel-media img{object-fit:cover;width:100%;height:100%;display:block}.reel-media.figure{place-items:center;padding:3.5rem 1rem 1rem;display:grid}.reel-media.figure svg{width:min(100%,320px);height:100%}.reel-media:after{content:"";background:linear-gradient(transparent 45%, var(--surface) 95%);pointer-events:none;position:absolute;inset:0 0 -1px}body:has(.reel) .toast{top:calc(4rem + env(safe-area-inset-top,0px));z-index:10;bottom:auto;transform:translate(-50%)translateY(-150%)}body:has(.reel) .toast.show{transform:translate(-50%)translateY(0)}.reel-body{padding:0 max(1rem, env(safe-area-inset-right,0px)) calc(1rem + env(safe-area-inset-bottom,0px)) max(1rem, env(safe-area-inset-left,0px));flex-direction:column;gap:.75rem;max-width:560px;margin:0 auto;display:flex;position:absolute;inset:52% 0 0}.reel-body h2{letter-spacing:-.01em;text-transform:uppercase;text-wrap:balance;margin:-2rem 0 0;font-size:1.9rem;font-weight:800;line-height:1.05;position:relative}.reel-sets{scrollbar-width:none;gap:.4rem;min-height:2.9rem;display:flex;overflow-x:auto}.reel-sets::-webkit-scrollbar{display:none}.reel-set{border:1px solid var(--border);text-align:center;color:var(--muted);background:0 0;border-radius:10px;flex:0 0 4.75rem;padding:.3rem .25rem;font-size:.75rem}.reel-set b{color:var(--text);font-variant-numeric:tabular-nums;font-size:.85rem;display:block}.reel-set.done{background:var(--accent-soft);border-color:#0000}.reel-set.done b{color:var(--accent)}.reel-set.now{border-color:var(--text);color:var(--text)}.reel-empty{color:var(--muted);align-self:center;font-size:.85rem}.reel-timer{text-align:center}.reel-clock-label{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:.75rem;font-weight:600}.reel-clock{font-variant-numeric:tabular-nums;font-size:3.6rem;font-weight:700;line-height:1}.reel-page[data-mode=pause] .reel-clock{color:var(--muted)}.reel-page[data-mode=rest] .reel-clock{color:var(--accent)}.reel-quick{flex-wrap:wrap;justify-content:center;gap:.6rem;display:flex}.reel-chip{border:1px solid var(--border);font-variant-numeric:tabular-nums;border-radius:999px;align-items:center;display:inline-flex;overflow:hidden}.reel-chip button{color:var(--muted);touch-action:manipulation;background:0 0;border:0;border-radius:0;width:2.25rem;height:2.25rem;padding:0;font-size:1.1rem}.reel-chip .chip-value{text-align:center;min-width:5.5rem;font-size:.9rem}.reel-chip.big button{width:2.9rem;height:2.9rem}.reel-controls{justify-content:center;align-items:center;gap:1.4rem;margin-top:auto;display:flex}.reel-btn{background:var(--accent-soft);width:3.5rem;height:3.5rem;color:var(--text);touch-action:manipulation;border:0;border-radius:50%;place-items:center;padding:0;display:grid}.reel-btn svg{fill:currentColor;width:1.4rem;height:1.4rem}.reel-btn.main{background:var(--accent);width:4.9rem;height:4.9rem;color:var(--accent-text)}.reel-btn.main svg{width:1.9rem;height:1.9rem}.reel-btn.stop{color:var(--danger)}.reel-btn:disabled{opacity:.3}.reel-page[data-mode=run] .reel-btn.main{animation:1.6s infinite reel-pulse}@keyframes reel-pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--accent) 60%, transparent)}to{box-shadow:0 0 0 16px #0000}}.reel-hints{color:var(--muted);justify-content:space-between;gap:.5rem;font-size:.8rem;display:flex}.reel-hint-btn{color:inherit;font-size:inherit;background:0 0;border:0;padding:.25rem 0}.reel-back{overscroll-behavior:contain;padding:calc(3.75rem + env(safe-area-inset-top,0px)) max(1.1rem, env(safe-area-inset-right,0px)) calc(1rem + env(safe-area-inset-bottom,0px)) max(1.1rem, env(safe-area-inset-left,0px));flex-direction:column;gap:.9rem;display:flex;overflow:hidden auto}.reel-back>*,.reel-back>.how-to-text>*{width:100%;max-width:560px;margin-left:auto;margin-right:auto}.reel-back h3{text-transform:uppercase;margin:0;font-size:1.6rem;font-weight:800;line-height:1.05}.reel-muscles{color:var(--muted);margin:-.6rem 0 0;font-size:.85rem}.reel-steps{flex-direction:column;gap:.5rem;margin:0;padding-left:1.3rem;display:flex}.reel-tip{border-left:3px solid var(--accent);margin:0;padding:.3rem 0 .3rem .75rem}.reel-back .reel-hints{margin-top:auto}.reel-summary{background:var(--surface);padding:calc(4rem + env(safe-area-inset-top,0px)) max(1.25rem, env(safe-area-inset-right,0px)) calc(1.25rem + env(safe-area-inset-bottom,0px)) max(1.25rem, env(safe-area-inset-left,0px));flex-direction:column;gap:.9rem;display:flex}.reel-summary>*{width:100%;max-width:560px;margin-left:auto;margin-right:auto}.reel-summary h2{text-transform:uppercase;margin:0;font-size:2rem;font-weight:800;line-height:1.05}.reel-summary .reel-muscles{margin-top:-.5rem}.reel-summary-list{flex-direction:column;gap:.5rem;padding:0;list-style:none;display:flex;overflow-y:auto}.reel-summary-list li{border-bottom:1px solid var(--border);justify-content:space-between;gap:1rem;padding-bottom:.5rem;display:flex}.reel-summary-list span{color:var(--muted);white-space:nowrap}.reel-list-link{align-self:center;font-size:.9rem}.reel-save{background:var(--accent);color:var(--accent-text);border:0;border-radius:14px;margin-top:auto;padding:1rem;font-size:1.05rem;font-weight:700}.reel-scrim[hidden],.reel-sheet[hidden]{display:none}.reel-scrim{z-index:3;background:#00000080;position:absolute;inset:0}.reel-sheet{z-index:4;background:var(--surface);border:1px solid var(--border);max-width:560px;padding:1.1rem max(1.1rem, env(safe-area-inset-right,0px)) calc(1.3rem + env(safe-area-inset-bottom,0px)) max(1.1rem, env(safe-area-inset-left,0px));border-bottom:0;border-radius:22px 22px 0 0;flex-direction:column;gap:.9rem;margin:0 auto;display:flex;position:absolute;bottom:0;left:0;right:0}.reel-sheet h2{margin:0;font-size:1.3rem}.sheet-row{justify-content:space-between;align-items:center;gap:1rem;display:flex}.sheet-actions{grid-template-columns:1fr 1fr;gap:.6rem;display:grid}.sheet-actions button{border-radius:12px;padding:.8rem;font-weight:700}.sheet-delete{color:var(--danger);background:0 0}.sheet-done{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}@media (prefers-reduced-motion:reduce){.reel-flip,.reel-front,.reel-back{transition:none}.reel-page[data-mode=run] .reel-btn.main{animation:none}}.reel-rest-adjust{visibility:hidden;justify-content:center;gap:.5rem;margin-top:.35rem;display:flex}.reel-page[data-mode=rest] .reel-rest-adjust{visibility:visible}.reel-rest-btn{border:1px solid var(--border);background:var(--accent-soft);color:var(--text);touch-action:manipulation;border-radius:999px;padding:.3rem .8rem;font-size:.85rem;font-weight:600}
