/*! tailwindcss v4.1.13 | MIT License | https://tailwindcss.com */@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.static{position:static}.hidden{display:none}.inline{display:inline}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--twsa-safe-area-inset-top:env(safe-area-inset-top);--twsa-safe-area-inset-right:env(safe-area-inset-right);--twsa-safe-area-inset-bottom:env(safe-area-inset-bottom);--twsa-safe-area-inset-left:env(safe-area-inset-left);color-scheme:light dark;--bg:#e7eef1;--surface:#fff;--surface-strong:#15252f;--surface-muted:#dce6ea;--text:#15252f;--dim:#60717a;--border:#cbd7dc;--accent:#f06a4e;--accent-ink:#fff;--teal:#147d78;--radius:18px;--shadow:0 15px 45px #15252f17;--space-surface:var(--surface);--space-surface-alt:var(--surface-muted);--space-muted:var(--dim);--space-border:var(--border);--space-accent:var(--accent);font-family:Avenir Next,Segoe UI,system-ui,sans-serif}@media(prefers-color-scheme:dark){:root{--bg:#101b22;--surface:#182830;--surface-strong:#eef5f6;--surface-muted:#21363f;--text:#eef5f6;--dim:#a6b7be;--border:#324950;--accent:#ff7b60;--accent-ink:#111f25;--teal:#4fc0b7;--shadow:0 18px 55px #00000040}}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0}button,input,textarea,select{font:inherit}button{color:inherit}button,select{-webkit-tap-highlight-color:transparent}.app-shell{background:var(--bg);min-height:100vh}.page{width:min(100%,920px);padding:28px 16px calc(112px + env(safe-area-inset-bottom));margin:0 auto}.intro{padding:26px 4px 20px}.intro.compact{padding-bottom:28px}.date-line,.kicker{color:var(--teal);letter-spacing:.12em;text-transform:uppercase;margin:0 0 7px;font-size:12px;font-weight:800;line-height:1.2}.intro h1{letter-spacing:-.045em;max-width:640px;margin:0;font-size:clamp(34px,9vw,54px);font-weight:750;line-height:.98}.intro p:last-child{max-width:560px;color:var(--dim);margin:13px 0 0;font-size:16px;line-height:1.5}.logger{background:var(--surface);box-shadow:var(--shadow);border-radius:24px 24px 8px 8px;padding:18px}fieldset{border:0;min-width:0;margin:0;padding:0}legend,label>span,.select-label>span{color:var(--dim);letter-spacing:.06em;text-transform:uppercase;margin-bottom:8px;font-size:12px;font-weight:750;line-height:1.2;display:block}.exercise-picker{grid-template-columns:1fr;gap:8px;display:grid}.exercise-choice{border:1px solid var(--border);text-align:left;cursor:pointer;background:0 0;border-radius:12px;align-items:center;gap:10px;min-height:50px;padding:11px 13px;font-weight:650;display:flex}.exercise-choice.selected{border-color:var(--exercise);background:var(--exercise)}@supports (color:color-mix(in lab,red,red)){.exercise-choice.selected{background:color-mix(in srgb,var(--exercise)10%,var(--surface))}}.exercise-choice.selected{box-shadow:inset 3px 0 var(--exercise)}.choice-dot,.result-dot{background:var(--exercise);border-radius:50%;flex:0 0 10px;width:10px;height:10px}.sequence-tool{background:var(--bg);border-radius:14px;margin-top:18px;padding:16px}.admin-notes{border-bottom:1px solid var(--border);margin:-2px -2px 18px;padding:0 2px 17px}.admin-notes h2{letter-spacing:-.02em;margin:0;font-size:18px}.admin-notes ol{color:var(--text);margin:10px 0 9px;padding-left:20px}.admin-notes li{margin-top:7px;padding-left:3px;font-size:13px;line-height:1.45}.admin-notes a{color:var(--teal);text-underline-offset:3px;font-size:12px;font-weight:750}.sequence-tool-heading{grid-template-columns:minmax(0,1fr) 76px;align-items:end;gap:14px;display:grid}.sequence-tool-heading h2{letter-spacing:-.02em;margin:0;font-size:18px}.sequence-tool-heading p{color:var(--dim);margin:4px 0 0;font-size:13px;line-height:1.35}.sequence-tool-heading label>span{margin-bottom:5px}.sequence-tool-heading input{background:var(--surface);text-align:center;min-height:43px;padding:8px 10px;font-weight:800}.generated-sequence{background:var(--surface-strong);border-radius:11px;grid-template-columns:repeat(auto-fit,minmax(32px,1fr));align-items:center;gap:6px;min-height:66px;margin-top:13px;padding:9px;display:grid}.generated-sequence strong{min-height:38px;color:var(--bg);font-variant-numeric:tabular-nums;place-items:center;font-size:25px;line-height:1;display:grid}.sequence-placeholder,.sequence-hidden{border:1px dashed var(--border);min-height:66px;color:var(--dim);text-align:center;border-radius:11px;place-items:center;margin-top:13px;padding:12px;font-size:13px;display:grid}.sequence-hidden{background:var(--surface-strong);color:var(--bg);border-style:solid;font-weight:750}.sequence-controls{gap:8px;margin-top:9px;display:grid}.sequence-controls.split{grid-template-columns:1fr 1fr}.sequence-button,.hide-sequence-button{border:1px solid var(--border);background:var(--surface);width:100%;min-height:45px;color:var(--teal);cursor:pointer;border-radius:11px;padding:10px 14px;font-weight:800}.hide-sequence-button{background:var(--surface-strong);border-color:var(--surface-strong);color:var(--bg)}.sequence-button:disabled,.hide-sequence-button:disabled{opacity:.48;cursor:not-allowed}.quick-attempt-settings{gap:10px;margin-top:14px;display:grid}.quick-attempt-settings .baseline-toggle{background:var(--surface);margin-top:0}.quick-log{border-top:1px solid var(--border);margin-top:14px;padding-top:14px}.quick-log>p{color:var(--dim);margin:0 0 9px;font-size:13px;font-weight:700}.quick-log>div{grid-template-columns:1fr 1fr;gap:9px;display:grid}.success-button,.miss-button{color:#fff;cursor:pointer;border:0;border-radius:12px;min-height:58px;font-size:17px;font-weight:850}.success-button{background:#197a55;transition:transform .12s,box-shadow .12s,background .12s;box-shadow:0 5px #0e553a}.success-button:active{transform:translateY(3px);box-shadow:0 2px #0e553a}.success-button.winning{background:#0b9b62;animation:.65s cubic-bezier(.2,.85,.25,1) win-button}.miss-button{background:#b54132}.success-button:disabled,.miss-button:disabled{opacity:.5;cursor:not-allowed}.quick-message{background:#20a86b;border-radius:10px;margin:11px 0 0;padding:10px 12px}@supports (color:color-mix(in lab,red,red)){.quick-message{background:color-mix(in srgb,#20a86b 14%,var(--surface))}}.quick-message{color:#14714d;text-align:center;font-size:13px;font-weight:850}.digit-exercise-card{position:relative}.success-burst{z-index:70;pointer-events:none;width:1px;height:1px;position:fixed;inset:50% auto auto 50%}.success-burst i{background:var(--confetti);opacity:0;width:9px;height:16px;animation:confetti-pop 1.05s cubic-bezier(.12,.68,.18,1)var(--delay)both;border-radius:2px;position:absolute;top:0;left:0}.success-burst i:nth-of-type(3n){border-radius:50%;width:11px;height:11px}.success-burst i:nth-of-type(4n){width:16px;height:6px}.success-halo{border:9px solid #ffcf48b8;border-radius:50%;width:112px;height:112px;animation:.78s ease-out both halo-pop;position:absolute;transform:translate(-50%,-50%)}.success-star{color:#643f00;background:#ffcf48;border-radius:50%;place-items:center;width:76px;height:76px;font:900 38px/1 system-ui,sans-serif;animation:.9s cubic-bezier(.18,.88,.25,1.25) both star-pop;display:grid;position:absolute;transform:translate(-50%,-50%);box-shadow:0 12px 35px #4935003d}@keyframes confetti-pop{0%{opacity:0;transform:translate(-50%,-50%)rotate(var(--angle))translateY(0)rotate(0)}9%{opacity:1}72%{opacity:1}to{opacity:0;transform:translate(-50%,-50%)rotate(var(--angle))translateY(var(--distance))rotate(var(--rotation))}}@keyframes halo-pop{0%{opacity:0;transform:translate(-50%,-50%)scale(.25)}24%{opacity:1}to{opacity:0;transform:translate(-50%,-50%)scale(1.65)}}@keyframes star-pop{0%{opacity:0;transform:translate(-50%,-50%)scale(.15)rotate(-24deg)}34%{opacity:1;transform:translate(-50%,-50%)scale(1.14)rotate(8deg)}58%{opacity:1;transform:translate(-50%,-50%)scale(.94)rotate(-3deg)}80%{opacity:1;transform:translate(-50%,-50%)scale(1)rotate(0)}to{opacity:0;transform:translate(-50%,-50%)scale(.92)rotate(0)}}@keyframes win-button{0%{transform:scale(1)}34%{transform:scale(1.06)}58%{transform:scale(.98)}to{transform:scale(1)}}@media(prefers-color-scheme:dark){.quick-message{color:#7ce0ae;background:#20a86b}@supports (color:color-mix(in lab,red,red)){.quick-message{background:color-mix(in srgb,#20a86b 18%,var(--surface))}}}@media(prefers-reduced-motion:reduce){.success-burst i,.success-halo{display:none}.success-star{animation:.7s ease-out both reduced-success}.success-button.winning{animation:none}}@keyframes reduced-success{0%,to{opacity:0}18%,76%{opacity:1}}.digit-logging-section{margin-bottom:22px}.digit-section-heading{padding:0 3px}.digit-card-list{gap:10px;display:grid}.digit-exercise-card{background:var(--surface);box-shadow:inset 4px 0 var(--exercise);border-radius:10px;padding:17px}.digit-exercise-card:first-child{border-radius:22px 22px 10px 10px}.digit-exercise-card:last-child{border-radius:10px 10px 22px 22px}.digit-card-heading{align-items:center;gap:11px;display:flex}.digit-card-heading .choice-dot{background:var(--exercise)}.digit-card-heading h2{letter-spacing:-.02em;margin:0;font-size:19px}.digit-card-heading p{color:var(--dim);margin:3px 0 0;font-size:12px;line-height:1.35}.digit-card-heading .digit-baseline{color:var(--ink);margin-top:5px;font-size:13px;font-weight:700}.digit-card-heading .digit-baseline strong{color:var(--exercise);font-weight:850}.digit-cues{background:var(--exercise);border-radius:10px;margin:13px 0 0;padding:11px 12px 11px 29px}@supports (color:color-mix(in lab,red,red)){.digit-cues{background:color-mix(in srgb,var(--exercise)8%,var(--bg))}}.digit-cues li{color:var(--dim);margin-top:5px;padding-left:2px;font-size:12px;line-height:1.4}.digit-cues li:first-child{margin-top:0}.digit-controls{grid-template-columns:minmax(74px,.42fr) 1fr;align-items:end;gap:9px;margin-top:14px;display:grid}.digit-controls input{background:var(--bg);text-align:center;font-weight:850}.digit-controls .sequence-button{min-height:48px}.compact-hide{margin-top:9px}.digit-source{color:var(--teal);text-underline-offset:3px;margin:10px 3px 0;font-size:12px;font-weight:750;display:inline-block}.other-logger{border-radius:22px 22px 8px 8px;margin-top:0}@media(prefers-color-scheme:dark){.generated-sequence strong,.sequence-hidden,.hide-sequence-button{color:#15252f}}@media(min-width:520px){.quick-attempt-settings{grid-template-columns:.7fr 1.3fr;align-items:end}}@media(min-width:760px){.digit-card-list{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}.digit-exercise-card,.digit-exercise-card:first-child,.digit-exercise-card:last-child{border-radius:18px}}.entry-grid{gap:14px;margin-top:22px;display:grid}.derived-score{background:var(--surface-strong);min-height:82px;color:var(--bg);border-radius:14px;align-items:baseline;gap:8px;padding:13px 15px;display:flex}.derived-score>span{color:var(--bg);letter-spacing:.06em;text-transform:uppercase;align-self:flex-start;margin-right:auto;font-size:11px;font-weight:800}.derived-score strong{font-variant-numeric:tabular-nums;font-size:38px;line-height:1}.derived-score small{letter-spacing:.06em;text-transform:uppercase;font-size:13px;font-weight:800}@media(prefers-color-scheme:dark){.derived-score,.derived-score>span{color:#15252f}}label{min-width:0;display:block}input,textarea,select{width:100%;color:var(--text);background:var(--bg);border:1px solid #0000;border-radius:11px;outline:none}input,select{min-height:48px;padding:10px 12px}textarea{resize:vertical;padding:12px}input:focus,textarea:focus,select:focus{border-color:var(--teal);box-shadow:0 0 0 3px var(--teal)}@supports (color:color-mix(in lab,red,red)){input:focus,textarea:focus,select:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--teal)18%,transparent)}}.score-input-wrap{background:var(--surface-strong);border-radius:14px;align-items:center;gap:10px;padding:8px 13px;display:flex}.score-input-wrap input{min-width:0;height:62px;color:var(--bg);font-variant-numeric:tabular-nums;background:0 0;border:0;padding:0;font-size:38px;font-weight:800}.score-input-wrap input:focus{box-shadow:none}.score-input-wrap strong{color:var(--bg);text-transform:uppercase;letter-spacing:.06em;font-size:13px}@media(prefers-color-scheme:dark){.score-input-wrap input,.score-input-wrap strong{color:#15252f}}.details-toggle{border:0;border-top:1px solid var(--border);width:100%;color:var(--dim);text-align:left;cursor:pointer;background:0 0;justify-content:space-between;margin-top:14px;padding:14px 2px 10px;font-size:14px;font-weight:650;display:flex}.details-toggle span{color:var(--teal);font-size:21px;line-height:16px}.details-panel{gap:14px;padding-top:10px;display:grid}.details-grid,.two-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.details-grid label:last-child{grid-column:1/-1}label small{text-transform:none;letter-spacing:0;font-weight:550}.primary-button,.secondary-button{cursor:pointer;border:0;border-radius:12px;min-height:50px;padding:12px 18px;font-weight:800}.primary-button{background:var(--accent);width:100%;color:var(--accent-ink)}.secondary-button{background:var(--surface-strong);color:var(--bg)}@media(prefers-color-scheme:dark){.secondary-button{color:#15252f}}.primary-button:disabled,.secondary-button:disabled{opacity:.48;cursor:not-allowed}.baseline-toggle{border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:12px;align-items:center;gap:12px;margin-top:16px;padding:12px;display:flex}.baseline-toggle.selected{border-color:var(--teal)}@supports (color:color-mix(in lab,red,red)){.baseline-toggle.selected{border-color:color-mix(in srgb,var(--teal)58%,var(--border))}}.baseline-toggle.selected{background:var(--teal)}@supports (color:color-mix(in lab,red,red)){.baseline-toggle.selected{background:color-mix(in srgb,var(--teal)9%,var(--surface))}}.baseline-toggle>input{width:24px;height:24px;min-height:24px;accent-color:var(--teal);cursor:pointer;flex:0 0 24px;margin:0;padding:0}.baseline-toggle>.baseline-copy{color:var(--text);letter-spacing:0;text-transform:none;margin:0;display:block}.baseline-copy strong,.baseline-copy small{display:block}.baseline-copy strong{font-size:14px}.baseline-copy small{color:var(--dim);margin-top:3px;font-size:12px;font-weight:500;line-height:1.35}.save-button{margin-top:10px}.form-error{color:#bd3f2b;margin:10px 0 0;font-size:14px}.inline-empty{color:var(--dim)}.recent-section{padding:36px 2px 12px}.section-heading{justify-content:space-between;align-items:end;gap:12px;margin-bottom:14px;display:flex}.section-heading h2,.add-exercise h2,.sheet-title h2{letter-spacing:-.025em;margin:0;font-size:23px}.text-button{color:var(--teal);cursor:pointer;background:0 0;border:0;padding:8px 0;font-weight:750}.result-list{background:var(--surface);border-radius:8px 8px 22px 22px;overflow:hidden}.result-row{border:0;border-bottom:1px solid var(--border);text-align:left;cursor:pointer;background:0 0;align-items:center;gap:11px;width:100%;min-height:68px;padding:12px 14px;display:flex}.result-row:last-child{border-bottom:0}.result-copy{flex:1;min-width:0}.result-copy strong,.result-copy small,.result-value strong,.result-value small,.manage-row strong,.manage-row small{display:block}.result-copy strong{font-size:14px}.result-copy strong em{background:var(--teal);border-radius:5px;margin-left:7px;padding:2px 5px;display:inline-block}@supports (color:color-mix(in lab,red,red)){.result-copy strong em{background:color-mix(in srgb,var(--teal)13%,transparent)}}.result-copy strong em{color:var(--teal);letter-spacing:.05em;text-transform:uppercase;vertical-align:1px;font-size:9px;font-style:normal}.result-copy strong em.success{color:#197a55;background:#197a5524}.result-copy strong em.miss{color:#b54132;background:#b5413224}@media(prefers-color-scheme:dark){.result-copy strong em.success{color:#63c898}.result-copy strong em.miss{color:#ff8d7f}}.result-copy small{color:var(--dim);white-space:nowrap;text-overflow:ellipsis;margin-top:3px;font-size:12px;overflow:hidden}.result-value{text-align:right;font-variant-numeric:tabular-nums}.result-value strong{font-size:22px;line-height:1}.result-value small{color:var(--dim);text-transform:uppercase;margin-top:4px;font-size:11px}.empty-state{text-align:center;color:var(--dim);padding:34px 20px}.empty-state.tall{padding-top:76px}.empty-state h3{color:var(--text);margin:14px 0 5px;font-size:19px}.empty-state p{max-width:320px;margin:0 auto 18px}.empty-mark{justify-content:center;align-items:end;gap:6px;width:72px;height:44px;margin:0 auto;display:flex}.empty-mark span{background:var(--border);border-radius:5px 5px 2px 2px;width:10px}.empty-mark span:first-child{height:18px}.empty-mark span:nth-child(2){background:var(--teal);height:34px}.empty-mark span:nth-child(3){height:26px}.progress-view,.exercise-view{padding-bottom:16px}.select-label{margin-bottom:16px;display:block}.select-label select{background:var(--surface);font-weight:700}.progress-summary{background:var(--border);border-radius:18px 18px 5px 5px;grid-template-columns:repeat(2,1fr);gap:1px;margin-bottom:10px;display:grid;overflow:hidden}.progress-summary>div{background:var(--surface);padding:15px 12px}.progress-summary span,.progress-summary strong,.progress-summary small{display:block}.progress-summary span{color:var(--dim);text-transform:uppercase;letter-spacing:.06em;font-size:11px;font-weight:750}.progress-summary strong{margin-top:8px;font-size:22px;line-height:1}.progress-summary small{color:var(--dim);text-transform:uppercase;margin-top:5px;font-size:10px}.digit-progress{background:var(--surface);border-radius:7px 7px 20px 20px;margin-bottom:10px;overflow:hidden}.digit-progress-heading{border-bottom:1px solid var(--border);justify-content:space-between;align-items:end;gap:14px;padding:16px 14px 13px;display:flex}.digit-progress-heading h2{letter-spacing:-.02em;margin:0;font-size:19px;line-height:1.15}.digit-progress-heading>p{color:var(--dim);text-align:right;flex:none;margin:0;font-size:10px;line-height:1.4}.digit-progress-heading>p strong{color:#197a55}.digit-progress-heading>p em{color:#b54132;font-style:normal;font-weight:800}.digit-progress-scroll{overscroll-behavior-inline:contain;scrollbar-color:var(--border)transparent;outline:none;max-width:100%;overflow-x:auto}.digit-progress-scroll:focus-visible{box-shadow:inset 0 0 0 3px var(--teal)}@supports (color:color-mix(in lab,red,red)){.digit-progress-scroll:focus-visible{box-shadow:inset 0 0 0 3px color-mix(in srgb,var(--teal)30%,transparent)}}.digit-progress-table{border-spacing:0;table-layout:fixed;font-variant-numeric:tabular-nums;width:max-content;min-width:100%}.digit-progress-table th,.digit-progress-table td{border-right:1px solid var(--border);border-bottom:1px solid var(--border);text-align:center;width:76px;min-width:76px;height:54px;padding:7px 6px}.digit-progress-table tr:last-child th,.digit-progress-table tr:last-child td{border-bottom:0}.digit-progress-table th:last-child,.digit-progress-table td:last-child{border-right:0}.digit-progress-table thead th{height:42px;color:var(--dim);background:var(--surface-muted);white-space:nowrap;font-size:11px;font-weight:800;line-height:1.1}.digit-progress-table th:first-child{z-index:2;background:var(--surface);width:62px;min-width:62px;position:sticky;left:0;box-shadow:5px 0 9px -9px #060e12cc}.digit-progress-table thead th:first-child{z-index:3;background:var(--surface-muted)}.digit-progress-table tbody th strong,.digit-progress-table tbody th small{display:block}.digit-progress-table tbody th strong{font-size:17px;line-height:1}.digit-progress-table tbody th small{color:var(--dim);letter-spacing:.04em;text-transform:uppercase;margin-top:4px;font-size:8px;font-weight:750}.digit-count-cell{background:var(--surface)}.digit-count-cell.high{background:#35b98f}@supports (color:color-mix(in lab,red,red)){.digit-count-cell.high{background:color-mix(in srgb,#35b98f 16%,var(--surface))}}.digit-count-cell.mixed{background:#d7a93c}@supports (color:color-mix(in lab,red,red)){.digit-count-cell.mixed{background:color-mix(in srgb,#d7a93c 11%,var(--surface))}}.digit-count-cell.low{background:#df5b4d}@supports (color:color-mix(in lab,red,red)){.digit-count-cell.low{background:color-mix(in srgb,#df5b4d 14%,var(--surface))}}.digit-count-pair{color:var(--dim);white-space:nowrap;justify-content:center;align-items:baseline;font-size:13px;font-weight:700;display:inline-flex}.digit-count-pair strong{color:#197a55;font-size:19px;font-weight:900;line-height:1}.digit-count-pair em{color:#b54132;font-size:17px;font-style:normal;font-weight:900;line-height:1}.digit-count-pair i{color:var(--dim);font-style:normal;font-weight:650}@media(prefers-color-scheme:dark){.digit-progress-heading>p strong,.digit-count-pair strong{color:#63c898}.digit-progress-heading>p em,.digit-count-pair em{color:#ff8d7f}}.span-ladder{background:var(--surface);border-radius:7px;margin-bottom:10px;padding:16px 14px}.span-ladder-heading{justify-content:space-between;align-items:end;gap:16px;margin-bottom:14px;display:flex}.span-ladder-heading h2{letter-spacing:-.02em;margin:0;font-size:19px}.span-ladder-heading>p{color:var(--dim);text-align:right;margin:0;font-size:11px}.span-ladder-list{gap:10px;display:grid}.span-rung{grid-template-columns:58px minmax(0,1fr) 66px;align-items:center;gap:10px;display:grid}.span-rung>strong{font-variant-numeric:tabular-nums;font-size:16px}.span-rung>strong small{color:var(--dim);text-transform:uppercase;font-size:10px;font-weight:650}.span-rung>span{color:var(--text);text-align:right;font-variant-numeric:tabular-nums;font-size:12px;font-weight:800}.span-rung>span small{color:var(--dim);margin-top:1px;font-size:9px;display:block}.span-track{background:var(--surface-muted);border-radius:999px;height:9px;overflow:hidden}.span-track span{border-radius:inherit;background:#35b98f;min-width:2px;height:100%;display:block}.chart-panel{background:var(--surface);border-radius:5px 5px 20px 20px;height:300px;padding:12px 0 2px}.chart-tooltip{border:1px solid var(--border);background:var(--surface);min-width:150px;color:var(--text);box-shadow:var(--shadow);border-radius:10px;gap:4px;padding:11px 12px;display:grid}.chart-tooltip strong{font-size:15px}.chart-tooltip span{color:var(--dim);font-size:11px}.chart-tooltip .tooltip-outcome{text-transform:uppercase;border-radius:5px;width:fit-content;padding:2px 6px;font-size:10px;font-weight:800}.chart-tooltip .tooltip-outcome.success{background:#35b98f}@supports (color:color-mix(in lab,red,red)){.chart-tooltip .tooltip-outcome.success{background:color-mix(in srgb,#35b98f 16%,var(--surface))}}.chart-tooltip .tooltip-outcome.success{color:#197a55}.chart-tooltip .tooltip-outcome.miss{background:#df5b4d}@supports (color:color-mix(in lab,red,red)){.chart-tooltip .tooltip-outcome.miss{background:color-mix(in srgb,#df5b4d 16%,var(--surface))}}.chart-tooltip .tooltip-outcome.miss{color:#b54132}.chart-legend{z-index:1;color:var(--dim);flex-wrap:wrap;gap:8px 14px;margin:-32px 14px 0;padding-bottom:12px;font-size:10px;display:flex;position:relative}.chart-legend span{align-items:center;gap:5px;display:flex}.chart-legend i{background:var(--dim);border-radius:50%;width:8px;height:8px}.chart-legend i.success-dot{background:#35b98f}.chart-legend i.miss-dot{background:#df5b4d}.progress-list{border-radius:12px;margin-top:18px}.result-copy small.entry-time{color:var(--dim);margin-top:5px}@supports (color:color-mix(in lab,red,red)){.result-copy small.entry-time{color:color-mix(in srgb,var(--dim)82%,transparent)}}.result-copy small.entry-time{font-size:10px}.manage-list{gap:8px;display:grid}.manage-row{background:var(--surface);align-items:center;gap:11px;min-height:70px;padding:13px 14px;display:flex}.manage-row:first-child{border-radius:20px 20px 6px 6px}.manage-row:last-child{border-radius:6px 6px 20px 20px}.manage-row>span:nth-child(2){flex:1;min-width:0}.manage-row strong{font-size:14px}.manage-row small{color:var(--dim);margin-top:4px;font-size:12px}.status-button{border:1px solid var(--border);min-width:67px;color:var(--dim);cursor:pointer;background:0 0;border-radius:999px;padding:8px 10px;font-size:12px;font-weight:750}.status-button.active{border-color:var(--teal)}@supports (color:color-mix(in lab,red,red)){.status-button.active{border-color:color-mix(in srgb,var(--teal)45%,var(--border))}}.status-button.active{background:var(--teal)}@supports (color:color-mix(in lab,red,red)){.status-button.active{background:color-mix(in srgb,var(--teal)12%,transparent)}}.status-button.active{color:var(--teal)}.add-exercise{background:var(--surface);border-radius:20px;gap:13px;margin-top:26px;padding:20px;display:grid}.add-exercise h2{margin-bottom:3px}.add-exercise .secondary-button{width:100%}.bottom-nav{z-index:20;width:min(100%,920px);padding:8px 12px calc(8px + env(safe-area-inset-bottom));background:var(--bg);grid-template-columns:repeat(4,1fr);gap:4px;display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%)}@supports (color:color-mix(in lab,red,red)){.bottom-nav{background:color-mix(in srgb,var(--bg)94%,transparent)}}.bottom-nav{border-top:1px solid var(--border)}.bottom-nav button{min-height:55px;color:var(--dim);cursor:pointer;background:0 0;border:0;border-radius:10px;align-content:center;place-items:center;gap:2px;font-size:11px;font-weight:750;display:grid}.bottom-nav button span{font-family:system-ui,sans-serif;font-size:21px;line-height:20px}.bottom-nav button.current{background:var(--surface);color:var(--text)}.modal-backdrop{z-index:40;background:#060e1294;justify-content:center;align-items:end;padding-top:40px;display:flex;position:fixed;inset:0}.edit-sheet{width:min(100%,560px);max-height:calc(100vh - 44px);padding:8px 18px calc(18px + env(safe-area-inset-bottom));background:var(--surface);border-radius:24px 24px 0 0;gap:13px;display:grid;overflow-y:auto;box-shadow:0 -18px 70px #0003}.sheet-handle{background:var(--border);border-radius:4px;width:42px;height:5px;margin:2px auto 4px}.sheet-title{justify-content:space-between;align-items:start;gap:12px;display:flex}.close-button{background:var(--bg);width:38px;height:38px;color:var(--dim);cursor:pointer;border:0;border-radius:50%;font-size:25px}.compact-input input{height:45px;font-size:28px}.edit-timestamp{color:var(--dim);margin:-5px 0 0;font-size:11px}.delete-button{color:#bd3f2b;cursor:pointer;background:0 0;border:0;min-height:46px;font-weight:700}.confirm-backdrop{z-index:60;background:#060e12b3;place-items:center;padding:22px;display:grid;position:fixed;inset:0}.delete-confirm{background:var(--surface);border-radius:20px;width:min(100%,420px);padding:22px;box-shadow:0 22px 80px #00000052}.delete-confirm h2{letter-spacing:-.03em;margin:0;font-size:25px}.delete-confirm>p:not(.kicker){color:var(--dim);margin:8px 0 0;font-size:14px;line-height:1.45}.delete-entry-summary{background:var(--bg);border-radius:11px;gap:4px;margin:18px 0;padding:13px 14px;display:grid}.delete-entry-summary strong{font-size:14px}.delete-entry-summary span,.delete-entry-summary small{color:var(--dim);font-size:12px;line-height:1.4}.confirm-actions{grid-template-columns:1fr 1fr;gap:9px;display:grid}.cancel-button,.confirm-delete-button{cursor:pointer;border:0;border-radius:11px;min-height:48px;font-weight:800}.cancel-button{background:var(--surface-muted);color:var(--text)}.confirm-delete-button{color:#fff;background:#b54132}.confirm-delete-button:disabled{opacity:.55;cursor:not-allowed}.workout-view{padding-bottom:16px}.workout-intro h1{max-width:680px}.weekly-plan{background:var(--border);box-shadow:var(--shadow);border-radius:20px 20px 7px 7px;gap:1px;margin-bottom:18px;display:grid;overflow:hidden}.weekly-plan>div{background:var(--surface);padding:17px 16px}.weekly-plan strong,.weekly-plan span,.weekly-plan small{display:block}.weekly-plan strong{color:var(--teal);letter-spacing:.06em;text-transform:uppercase;font-size:12px}.weekly-plan span{margin-top:5px;font-size:17px;font-weight:800}.weekly-plan small{color:var(--dim);margin-top:5px;font-size:12px;line-height:1.4}.workout-date{margin:18px 0 8px}.workout-date input{background:var(--surface)}.session-count{color:var(--teal);margin:8px 2px 14px;font-size:13px;font-weight:750}.movement-list{gap:8px;margin-top:14px;display:grid}.movement-group{background:var(--surface);overflow:hidden}.movement-group:first-child{border-radius:20px 20px 7px 7px}.movement-group:last-child{border-radius:7px 7px 20px 20px}.movement-heading{text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:64px;padding:13px 16px;display:flex}.movement-heading span,.movement-heading strong,.movement-heading small{display:block}.movement-heading strong{font-size:17px}.movement-heading small{color:var(--dim);margin-top:3px;font-size:12px;font-weight:550}.movement-heading b{color:var(--teal);font-size:24px;font-weight:500}.movement-body{padding:0 14px 14px}.form-cue{background:var(--teal);border-radius:10px;margin:0;padding:11px 12px}@supports (color:color-mix(in lab,red,red)){.form-cue{background:color-mix(in srgb,var(--teal)10%,var(--bg))}}.form-cue{color:var(--text);font-size:13px;font-weight:650;line-height:1.45}.dose-line{color:var(--dim);letter-spacing:.04em;text-transform:uppercase;margin:10px 2px 4px;font-size:11px;font-weight:750}.workout-exercise{border-top:1px solid var(--border);padding:15px 2px}.workout-exercise-copy>div{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.workout-exercise h3{margin:0;font-size:15px}.workout-exercise-copy>div>span{background:var(--teal);border-radius:5px;padding:3px 6px}@supports (color:color-mix(in lab,red,red)){.workout-exercise-copy>div>span{background:color-mix(in srgb,var(--teal)14%,transparent)}}.workout-exercise-copy>div>span{color:var(--teal);letter-spacing:.05em;text-transform:uppercase;font-size:9px;font-weight:850}.workout-exercise-copy p{color:var(--dim);margin:5px 0 0;font-size:12px;line-height:1.4}.quick-dose{grid-template-columns:1fr 1fr minmax(70px,.8fr);gap:7px;margin-top:12px;display:grid}.dose-stepper{border:1px solid var(--border);border-radius:10px;grid-template-columns:32px minmax(24px,1fr) 32px;align-items:center;min-height:45px;display:grid;overflow:hidden}.dose-stepper>span{color:var(--dim);letter-spacing:.06em;text-align:center;text-transform:uppercase;grid-column:1/-1;margin:0;padding:4px 7px 2px;font-size:9px;font-weight:800}.dose-stepper button{background:var(--bg);height:31px;color:var(--teal);cursor:pointer;border:0;font-size:20px}.dose-stepper output{text-align:center;font-variant-numeric:tabular-nums;font-size:15px;font-weight:850}.log-set{background:var(--accent);min-height:45px;color:var(--accent-ink);cursor:pointer;border:0;border-radius:10px;align-self:end;font-size:13px;font-weight:850}.log-set.logged{background:var(--surface-strong);color:var(--bg)}.log-set:disabled{opacity:.55;cursor:not-allowed}@media(prefers-color-scheme:dark){.log-set.logged{color:#15252f}}.safety-notes{border:1px solid var(--border);background:var(--surface);border-radius:14px;margin-top:18px;overflow:hidden}.safety-notes summary{color:var(--text);cursor:pointer;padding:15px;font-weight:800}.safety-notes>div{padding:0 16px 15px}.safety-notes h2{margin:13px 0 7px;font-size:15px}.safety-notes ul{color:var(--dim);margin:0;padding-left:20px}.safety-notes li{margin-top:6px;font-size:13px;line-height:1.4}.workout-history{margin-top:32px}.workout-day{border-bottom:1px solid var(--border);background:var(--surface);gap:5px;padding:13px 14px;display:grid}.workout-day:first-of-type{border-radius:14px 14px 0 0}.workout-day:last-child{border-bottom:0;border-radius:0 0 14px 14px}.workout-day strong{font-size:13px}.workout-day span{color:var(--dim);font-size:12px;line-height:1.45}.loading{text-align:center;min-height:100vh;color:var(--dim);align-content:center;place-items:center;gap:18px;padding:28px;display:grid}.loading-line{background:var(--teal);border-radius:5px;width:72px;height:5px;animation:1.2s ease-in-out infinite alternate pulse}@keyframes pulse{50%{opacity:.5}}@media(prefers-reduced-motion:reduce){.loading-line{animation:none}}@media(min-width:700px){.page{padding:48px 28px 130px}.intro{padding:42px 4px 28px}.logger{padding:24px}.exercise-picker{grid-template-columns:repeat(2,minmax(0,1fr))}.entry-grid{grid-template-columns:1.35fr .65fr;align-items:end}.progress-summary{grid-template-columns:repeat(4,1fr)}.details-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.details-grid label:last-child{grid-column:auto}.progress-view{max-width:760px;margin:0 auto}.exercise-view{max-width:700px;margin:0 auto}.modal-backdrop{align-items:center;padding:28px}.edit-sheet{border-radius:24px;max-height:min(780px,100vh - 56px);padding:12px 24px 24px}}.safe-area-scrim{height:env(safe-area-inset-top);background:var(--bg)}.private-footer{border-top:1px solid var(--border);color:var(--dim);letter-spacing:.08em;text-transform:uppercase;text-align:center;margin:34px 4px 6px;padding-top:14px;font-size:11px;font-weight:750}.login-page{align-content:start;gap:16px;display:grid}.login-button{place-items:center;text-decoration:none;display:grid}.login-denied{background:#b54132;border-radius:10px;margin:0;padding:12px 14px}@supports (color:color-mix(in lab,red,red)){.login-denied{background:color-mix(in srgb,#b54132 10%,var(--surface))}}.behavior-view{padding-bottom:16px}.log-incident-button{min-height:64px;margin-bottom:18px;font-size:18px}.behavior-form{gap:14px;margin-bottom:18px;display:grid}.behavior-datetime{margin-top:16px}.behavior-save{background:var(--accent);color:var(--accent-ink)}.behavior-admin{margin-bottom:8px}.behavior-history{padding-top:8px}.behavior-day{margin-bottom:16px}.behavior-day h3{letter-spacing:-.01em;margin:0 2px 8px;font-size:15px}.behavior-row{cursor:default}.health-card{border:1px solid var(--border);background:var(--surface);border-radius:16px;margin:0 16px 18px;padding:16px}.health-options{grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0;display:grid}.health-choice{border:1px solid var(--border);color:var(--text);cursor:pointer;text-align:center;background:0 0;border-radius:12px;gap:2px;padding:10px 6px;display:grid}.health-choice small{color:var(--dim);font-size:10px;line-height:1.3}.health-choice.selected{border-width:2px;padding:9px 5px}.health-choice.selected.good{background:#197a551f;border-color:#197a55}.health-choice.selected.off{background:#b07a1e24;border-color:#b07a1e}.health-choice.selected.sick{background:#b541321f;border-color:#b54132}.health-card label input{width:100%}.health-actions{align-items:center;gap:12px;margin-top:10px;display:flex}.health-logger{color:var(--dim);font-size:12px}.health-strip{gap:6px;margin-top:12px;display:flex}.health-dot{background:var(--border);border-radius:50%;width:10px;height:10px}.health-dot.good{background:#197a55}.health-dot.off{background:#b07a1e}.health-dot.sick{background:#b54132}.health-dot.empty{opacity:.45}.health-pill{letter-spacing:.05em;text-transform:uppercase;vertical-align:1px;border-radius:5px;margin-left:7px;padding:2px 6px;font-size:9px;font-style:normal;display:inline-block}.health-pill.off{color:#b07a1e;background:#b07a1e29}.health-pill.sick{color:#b54132;background:#b5413224}.behavior-note{font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.behavior-note .note-disclosure{color:var(--teal);font-weight:700}.result-copy small.expanded{white-space:normal;overflow:visible}.result-row.static{cursor:default}.behavior-actions{flex:none;align-items:center;gap:10px;display:flex}.text-button.danger{color:#b54132}.result-copy strong em.behavior-time{color:#8a6130;background:#8a613024}.workout-log-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.workout-log-row .text-button{padding:2px 6px;font-size:18px;line-height:1}.bottom-nav{grid-template-columns:repeat(5,1fr)}@media(max-width:420px){.bottom-nav button{font-size:10px}}.data-section{border-top:1px solid var(--border);gap:12px;margin-top:28px;padding-top:18px;display:grid}.data-section h2{margin:0;font-size:17px}.data-copy{color:var(--dim);margin:0;font-size:14px}.data-actions{flex-wrap:wrap;gap:10px;display:flex}.data-actions .secondary-button{place-items:center;text-decoration:none;display:inline-grid}.delete-confirm.inline{border:1px solid var(--border);border-radius:14px;gap:10px;padding:14px;display:grid}.delete-confirm.inline p{margin:0;font-size:14px}.link-button{color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;text-underline-offset:2px;background:0 0;border:0;padding:0;text-decoration:underline}.legal-section h3{margin:14px 0 4px;font-size:15px}.legal-section p{color:var(--text);margin:0 0 6px;font-size:14px;line-height:1.55}.legal-footnote{border-top:1px solid var(--border);color:var(--dim);margin-top:18px;padding-top:12px;font-size:12px;font-weight:700}.install-sheet{gap:12px;display:grid}.install-copy{color:var(--text);margin:0;font-size:15px;line-height:1.55}.install-actions{gap:6px;margin-top:4px;display:grid}.install-actions .text-button{justify-self:center}.install-steps{gap:10px;margin:0;padding-left:20px;font-size:15px;line-height:1.55;display:grid}.install-done{width:100%;margin-top:4px}.reports-entry{background:var(--surface);box-shadow:var(--shadow);border-radius:18px;margin:0 0 18px;padding:18px}.reports-entry h2{letter-spacing:-.02em;margin:6px 0 4px;font-size:20px}.reports-entry>p{color:var(--dim);margin:0 0 14px;font-size:14px;line-height:1.45}.reports-entry-buttons{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.reports-entry-buttons button{border:1px solid var(--border);background:var(--bg);min-height:48px;color:var(--text);cursor:pointer;border-radius:12px;font-weight:800}.reports-entry-buttons button:active{transform:translateY(1px)}.report-view{align-content:start;gap:14px;display:grid}.report-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.report-toolbar .primary-button{width:auto;min-height:44px;padding:10px 16px}.report-pager{align-items:center;gap:4px;display:flex}.pager-button{border:1px solid var(--border);background:var(--surface);width:40px;height:40px;color:var(--text);cursor:pointer;border-radius:10px;font-size:20px;font-weight:800;line-height:1}.pager-button:disabled{opacity:.4;cursor:not-allowed}.report-status{color:var(--dim);font-size:14px}.report-sheet{background:var(--surface);box-shadow:var(--shadow);color:var(--text);border-radius:18px;padding:26px 22px}.report-header h1{letter-spacing:-.03em;margin:4px 0 2px;font-size:30px}.report-range{color:var(--dim);margin:0;font-size:15px;font-weight:700}.report-section{margin-top:24px}.report-section>h2{letter-spacing:.08em;text-transform:uppercase;color:var(--dim);margin:0 0 8px;font-size:12px}.report-section p{margin:6px 0;font-size:15px;line-height:1.5}.report-muted{color:var(--dim);font-size:14px}.report-list{margin:6px 0;padding-left:20px;font-size:15px;line-height:1.55}.report-list li{margin-top:4px}.report-stats{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:18px;display:grid}.report-stat{background:var(--bg);text-align:center;border-radius:12px;padding:10px 6px}.report-stat span{letter-spacing:.05em;text-transform:uppercase;color:var(--dim);margin-bottom:2px;font-size:10px;font-weight:750;display:block}.report-stat strong{font-size:20px}.report-table{border-collapse:collapse;width:100%;margin-top:6px;font-size:14px}.report-table th,.report-table td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:8px 6px}.report-table thead th{letter-spacing:.06em;text-transform:uppercase;color:var(--dim);font-size:11px}.report-table tbody th[scope=row]{font-weight:700}.report-footer{border-top:1px solid var(--border);color:var(--dim);margin-top:28px;padding-top:12px;font-size:12px}@media(max-width:560px){.report-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.report-table{font-size:13px}}@media print{:root{color-scheme:light}body{background:#fff}.no-print{display:none!important}body *{visibility:hidden}.report-sheet,.report-sheet *{visibility:visible}.report-sheet{width:100%;box-shadow:none;border-radius:0;padding:0;position:absolute;top:0;left:0}.report-stat{background:#f1f5f6}.report-table thead{display:table-header-group}.report-table tr{page-break-inside:avoid}}
