@font-face{font-family:Klee One;src:url(/fonts/klee-one-latin-ext-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Klee One;src:url(/fonts/klee-one-latin-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Klee One;src:url(/fonts/klee-one-latin-ext-600.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Klee One;src:url(/fonts/klee-one-latin-600.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--serif: "Klee One", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--hand: "Klee One", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--sans: "Klee One", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;font-family:var(--sans);font-size:16px;line-height:1.5;font-weight:400;color-scheme:light;color:var(--text);background-color:var(--background);background-image:var(--paper-texture);background-repeat:repeat;background-size:160px 160px;font-synthesis:none;-webkit-text-size-adjust:100%;--background: #fcfbf7;--surface: #ffffff;--text: #343730;--muted: #686b63;--border: #deded5;--control-border: #89828e;--primary: #355b43;--primary-surface: #dce8de;--on-primary: #26392d;--accent: #edf3ed;--tint: #e4eee5;--support: #edf3ed;--hover: #d1e1d4;--pen: #506d59;--warning-bg: #fff3d8;--warning-text: #644408;--danger: #982d2b;--danger-bg: #fbe9e3;--focus: #214f35;--fresh: #087c49;--pending: #936300;--radius: 10px;--paper-texture: url(/paper-light.png);--ink-rule-image: url(/ink-rule.svg)}:root[data-theme=dark]{color-scheme:dark;--background: #24251f;--surface: #2f302a;--text: #f4f2e8;--muted: #c7c7bc;--border: #585a50;--control-border: #aaa5b1;--primary: #b9d8c0;--primary-surface: #3d5545;--on-primary: #f1f7f2;--accent: #303c32;--tint: #38493c;--support: #303c32;--hover: #49634f;--pen: #a9c5af;--warning-bg: #3d321c;--warning-text: #f7d88b;--danger: #ffb6aa;--danger-bg: #422a29;--focus: #d0f1d6;--fresh: #5cdf92;--pending: #edc574;--paper-texture: url(/paper-dark.png);--ink-rule-image: url(/ink-rule-dark.svg)}*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}html{scroll-padding-bottom:calc(8rem + env(safe-area-inset-bottom))}body{margin:0;min-width:320px;background-color:var(--background);background-image:var(--paper-texture);background-repeat:repeat;background-size:160px 160px}button,input,select,textarea{font:inherit}button,.button,a,summary,input,select,textarea{touch-action:manipulation}button,.button,input,select,textarea{min-height:48px}button,.button{display:inline-flex;justify-content:center;align-items:center;padding:10px 16px;border:1px solid var(--control-border);border-radius:8px;background:var(--surface);color:var(--text);font-weight:600;line-height:1.5;max-width:100%;cursor:pointer;text-align:center;text-decoration:none;transition:border-color .12s ease}button:has(>.ink-label){padding:2px 4px;background:transparent;border-color:transparent}:is(button,a)>.ink-label>.pen-loop{display:none}:is(button,a)>.ink-label:after{content:"";position:absolute;left:20%;right:20%;bottom:.15em;height:8px;background-image:var(--ink-rule-image);background-repeat:no-repeat;background-position:center;background-size:100% 8px;pointer-events:none}button:active:not(:disabled),.button:active{border-color:var(--pen)}button:disabled,input:disabled,select:disabled{cursor:not-allowed;opacity:.55}button.primary,.button.primary{position:relative;padding-inline:18px;border-color:transparent;border-radius:0;background:transparent;color:var(--primary);font:600 1.25rem/1.1 var(--hand)}button.primary:before,.button.primary:before{content:"";position:absolute;inset:4px 2px 3px;border:1.5px solid var(--primary);border-radius:48% 52% 49% 51%;transform:rotate(-.4deg);pointer-events:none}button.primary:after,.button.primary:after{content:"";position:absolute;left:18%;right:13%;bottom:3px;border-bottom:1px solid var(--primary);border-radius:50%;opacity:.32;transform:rotate(.65deg);pointer-events:none}button.primary:hover:not(:disabled),.button.primary:hover{background:transparent;color:var(--primary)}button.danger,button.danger-outline{position:relative;border-color:transparent;border-radius:0;background:transparent;color:var(--danger)}button.danger:after{content:"";position:absolute;left:16px;right:16px;bottom:8px;border-bottom:1.5px solid var(--danger);transform:rotate(-.4deg);pointer-events:none}button.danger:hover:not(:disabled),button.danger-outline:hover:not(:disabled){background:transparent;color:var(--danger)}button.danger-outline>.ink-label:after{bottom:.48em;height:0;border-bottom:1.5px solid var(--danger);background-image:none;transform:rotate(-.4deg)}a{color:var(--primary);text-underline-offset:.2em}:focus-visible{outline:3px solid var(--focus);outline-offset:4px}main:focus{outline:none}[hidden]{display:none!important}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-optical-sizing:auto;font-weight:400}h1{font-size:2rem;letter-spacing:-.025em;line-height:1.1}h2{font-size:1.5rem;line-height:1.2;letter-spacing:-.02em}h3{font-size:1.25rem}p,li,span,h1,h2,h3{overflow-wrap:anywhere}p+p{margin-top:12px}svg{flex-shrink:0}.muted,.footnote,.field-hint{color:var(--muted)}.eyebrow{color:var(--muted);margin-bottom:4px}.app-shell,.public-shell{max-width:800px;margin:0 auto;padding:max(16px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) 0 max(20px,env(safe-area-inset-left))}.app-shell main{min-width:0;max-width:720px}.app-shell{padding-inline:max(24px,env(safe-area-inset-left)) max(24px,env(safe-area-inset-right))}.app-shell[data-tab=today] main{max-width:560px;margin-inline:auto}.app-header{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;align-items:center;margin-bottom:22px}.brand{display:flex;flex-direction:column;font:600 2.5rem/.9 var(--hand);letter-spacing:.005em}.brand-symbol{background:var(--accent);color:var(--primary);padding:4px;display:flex;border-radius:10px}.brand-symbol svg{width:28px;height:28px}.appearance-toggle{width:44px;height:44px;min-height:44px;padding:8px;flex:0 0 44px;background:transparent;color:var(--muted);border-color:transparent}.appearance-toggle svg{pointer-events:none}.appearance-toggle:hover{background:var(--accent);color:var(--primary)}.appearance-toggle:active{background:var(--primary-surface)}.header-actions{display:flex;align-items:center;gap:4px;margin-inline-start:auto}.account-menu{position:relative}.account-avatar{position:relative;width:48px;height:48px;min-height:48px;flex:0 0 48px;padding:0;border:0;background:transparent;color:var(--primary);font:600 1.25rem/1 var(--hand)}.account-avatar>svg:first-child{position:absolute;inset:1px;width:46px;height:46px;fill:var(--accent);stroke:var(--pen);stroke-width:1.35;stroke-linecap:round}.account-avatar>span,.account-avatar .neutral-person{position:relative;width:24px;height:24px;display:grid;place-items:center}.account-avatar:hover,.account-avatar[aria-expanded=true]{color:var(--primary)}.account-avatar:hover>svg:first-child,.account-avatar[aria-expanded=true]>svg:first-child{fill:var(--primary-surface)}.account-popover{position:fixed;z-index:40;top:max(72px,calc(env(safe-area-inset-top) + 56px));right:max(12px,env(safe-area-inset-right));width:min(320px,calc(100vw - 24px));max-height:calc(100dvh - 84px - env(safe-area-inset-bottom));overflow:auto;padding:20px;border:1px solid var(--border);border-radius:var(--radius);background-color:var(--surface);background-image:var(--paper-texture);box-shadow:0 10px 32px #0000002e}.account-popover-heading{display:flex;align-items:start;justify-content:space-between;gap:16px}.account-popover-heading>div{min-width:0;display:flex;flex-direction:column;gap:3px}.account-popover-heading span{color:var(--muted);font-size:.8125rem}.account-popover-heading strong{overflow-wrap:anywhere;font-weight:600}.account-popover>a,.account-popover>button{display:inline-flex;min-height:44px;margin-top:12px;padding-inline:0;border:0;background:transparent;color:var(--primary)}.account-popover>button{color:var(--danger)}.account-popover .popover-close{min-height:44px;margin:-10px -10px 0 0;padding:8px 10px;border:0;background:transparent;color:var(--muted);font-size:.875rem}.account-popover>.muted{margin-top:12px;font-size:.875rem}.account-kind{color:var(--muted);font:400 .75rem/1.4 var(--sans);letter-spacing:0;margin-top:4px}.navigation{position:fixed;inset:auto 0 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,4.7rem),1fr));padding:4px max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));background-color:var(--background);background-image:var(--paper-texture);background-repeat:repeat;background-size:160px 160px;z-index:10}.navigation a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:6px 0;margin:0;min-height:48px;color:var(--muted);font-size:clamp(15px,.5rem,17px);font-weight:400;position:relative;border-radius:0;border:0;text-decoration:none}.navigation a[aria-current=page]{color:var(--primary);font-weight:600}.navigation .ink-label{padding-inline:.3em;overflow-wrap:normal;white-space:nowrap;font-size:1em}.navigation .ink-label:after{opacity:0}.navigation a[aria-current=page]>.ink-label:after,.navigation a:focus-visible>.ink-label:after{opacity:1}.ink-label{display:inline-block;position:relative;max-width:100%;padding:.6em 1.25em;vertical-align:middle;text-align:center;text-wrap:balance;font-family:var(--hand);font-size:1.125em;font-weight:600;line-height:1.15}.pen-loop{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.35;stroke-linecap:round;pointer-events:none;overflow:visible}.ink-label>.pen-loop{opacity:0;transition:opacity .13s ease}.ink-label>svg:not(.pen-loop){display:block}:is(button,a,summary):focus-visible>.ink-label>.pen-loop,:is(button,a,summary):active:not(:disabled)>.ink-label>.pen-loop,.navigation a[aria-current=page]>.ink-label>.pen-loop,button[aria-pressed=true]>.ink-label>.pen-loop{opacity:1}@media(hover:hover){:is(button,a,summary):hover:not(:disabled)>.ink-label>.pen-loop{opacity:1}.navigation a:hover>.ink-label:after{opacity:1}.calendar-day:hover:not(:disabled) .pen-loop{opacity:.65}}.skip-link{position:fixed;top:-100px;left:16px;padding:12px;z-index:100;background:var(--surface)}.skip-link:focus{top:max(8px,env(safe-area-inset-top))}.page-heading{display:flex;flex-wrap:wrap;align-items:start;justify-content:space-between;gap:12px;margin:0 0 24px}.page-subtitle{margin-top:4px;font-size:.875rem}.connection-tools{display:flex;align-items:center;gap:4px;color:var(--muted);margin-inline-start:auto}.connection-status{min-height:44px;padding:8px;gap:8px;border-color:transparent;background:transparent;font:400 .875rem/1.5 var(--sans);color:var(--muted)}.connection-light{width:8px;height:8px;flex:0 0 8px;border-radius:50%;background:var(--muted)}.connection-light.is-refreshing{animation:connection-refresh-pulse .75s ease-in-out 1}@keyframes connection-refresh-pulse{0%,to{opacity:1}50%{opacity:.5}}.connection-status[data-tone=fresh] .connection-light{background:var(--fresh)}.connection-status[data-tone=pending] .connection-light{background:var(--pending)}.connection-status[data-tone=error] .connection-light{background:var(--danger)}.connection-status:hover,.connection-close:hover,.connection-refresh:hover{background:var(--surface);border-color:var(--border)}.connection-popover{position:fixed;z-index:30;width:340px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);overflow:auto;padding:16px;border:1px solid var(--border);border-radius:12px;background-color:var(--surface);background-image:var(--paper-texture);background-repeat:repeat;background-size:160px 160px;color:var(--text);box-shadow:0 8px 28px #00000029;font:400 .875rem/1.6 var(--sans)}.connection-popover-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.connection-popover h2{font:600 1rem/1.5 var(--sans);letter-spacing:0}.connection-close{min-width:44px;min-height:44px;padding:4px;background:transparent;border-color:transparent;font-size:1.5rem}.connection-reason{color:var(--danger)}.connection-refresh{margin-top:16px;font-size:1rem}.availability-notice{margin:0 0 20px}.quiet-button{background:transparent;border-color:transparent;text-decoration:underline;padding:8px 0;color:inherit}.quiet-button:has(>.ink-label){text-decoration:none}.today-content{display:flex;flex-direction:column}.daily-report{display:flex;flex-direction:column;gap:12px;padding:4px 0 32px}.routine-label{color:var(--muted);font-weight:600}.daily-report h2{font-size:1.65rem;line-height:1.3;letter-spacing:-.025em}.daily-report>button{align-self:start;margin-top:8px}.status-section{display:flex;flex-direction:column;gap:8px;padding:16px 0}.section-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px}.section-heading h2{font-size:1rem;font-weight:600}.section-heading .text-link{font-weight:400}.support-details>summary,.receipt-details>summary{min-height:44px;padding:8px 0;color:var(--muted);font-weight:400}.detail-content{display:flex;flex-direction:column;gap:12px;padding:8px 0 16px}.support-details p+p{margin-top:8px}.report-details{margin-top:12px}.glance-heading{align-items:end;margin-bottom:32px;gap:8px}.glance-heading h1{font-size:2rem;letter-spacing:-.02em}.glance-heading .page-subtitle{margin-top:12px}.glance-heading .connection-status{padding-inline-end:0}.glance-content{width:100%}.glance-hero{display:grid;grid-template-columns:minmax(0,1fr) 88px;gap:16px;align-items:center;padding:0;text-align:left}.glance-hero.logged,.glance-hero.unknown{background:transparent;border:0}.glance-hero.no-daily{display:block}.glance-hero p{margin:0}.glance-state{min-width:0;width:100%}.today-medication{font:600 2.375rem/1.05 var(--hand);letter-spacing:.005em}.glance-state .today-time{margin-top:16px;font:400 1rem/1.5 var(--sans);letter-spacing:0;color:var(--muted)}.logged .glance-state .today-time{color:var(--primary)}.marked-status{font:600 1.375rem/1 var(--hand);letter-spacing:.01em}.recorded-time{font-variant-numeric:tabular-nums}.daily-facts{display:flex;flex-direction:column;gap:4px;margin-top:10px;color:var(--muted);font-size:.875rem;font-variant-numeric:tabular-nums}.no-daily-state{max-width:34rem}.no-daily-state .muted{margin-top:12px}.daily-set{grid-column:1 / -1;min-width:0}.daily-set-heading{margin-bottom:24px}.daily-set-heading .today-time{margin-top:8px;color:var(--muted)}.daily-row-list{display:flex;flex-direction:column;gap:28px}.daily-row{display:grid;grid-template-columns:minmax(0,1fr) 72px;gap:16px;align-items:center;min-width:0}.daily-row-copy{min-width:0}.daily-row h3{font:600 1.625rem/1.1 var(--hand)}.daily-row-count{margin-top:6px!important;color:var(--primary);font-weight:600;font-variant-numeric:tabular-nums}.daily-row.incomplete .daily-row-count{color:var(--muted)}.daily-row .completion-glyph,.day-mark-control.compact .mark-symbol{width:72px;height:72px;margin:0}.day-mark-control.compact{width:72px;min-height:72px}.scheduled-cue{grid-column:1 / -1;color:var(--muted);font-size:.8125rem}.glance-hero>button{grid-column:1 / -1;justify-self:start;min-height:44px}.glance-hero>.quiet-button{text-underline-offset:5px}.completion-glyph{width:100px;height:100px;margin:0 auto 16px;overflow:visible;color:var(--primary)}.today-mark-slot{display:flex;justify-content:end;align-items:center}.today-mark-slot .completion-glyph{width:88px;height:88px;margin:0}.day-mark-control{display:flex;flex-direction:column;gap:4px;padding:0;border:0;border-radius:10px;background:transparent;color:var(--primary)}.mark-action-cue{display:grid;font:600 .9375rem/1.1 var(--hand);max-width:88px}.mark-action-cue>span{grid-area:1 / 1}.mark-cue-preview{visibility:hidden}.mark-symbol{display:block;position:relative;width:88px;height:88px}.mark-preview{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:var(--primary);stroke-linecap:round;stroke-linejoin:round;opacity:0;pointer-events:none}.mark-preview-stroke{stroke-width:5.4}.mark-preview-detail{stroke-width:1.7;opacity:.72}.mark-preview-pool{fill:var(--primary);opacity:.58}@media(hover:hover)and (pointer:fine){.day-mark-control[data-preview-allowed=true]:is(:hover,:focus-visible) .mark-preview{opacity:.3}.day-mark-control[data-preview-allowed=true]:is(:hover,:focus-visible) .mark-cue-default{visibility:hidden}.day-mark-control[data-preview-allowed=true]:is(:hover,:focus-visible) .mark-cue-preview{visibility:visible}}.day-mark-control .pen-outline{transition:stroke .12s ease,stroke-width .12s ease}.day-mark-control:focus-visible .pen-outline,.day-mark-control:active:not(:disabled) .pen-outline{stroke:var(--focus);stroke-width:2.6}@media(hover:hover){.day-mark-control:hover:not(:disabled) .pen-outline{stroke:var(--primary);stroke-width:2.2}}.pen-fill{fill:var(--primary-surface)}.pen-outline{fill:none;stroke:var(--pen);stroke-width:1.6;stroke-linecap:round}.unknown-dash{stroke-width:2.2}.pen-stroke,.pen-stroke-detail{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:0}.pen-stroke{stroke-width:5.1}.pen-stroke-detail{stroke:var(--pen);stroke-width:1.7;opacity:.78}.pen-pool{fill:currentColor;opacity:.58}.completion-glyph.is-celebrating :is(.pen-stroke,.pen-stroke-detail){animation:log-complete .55s ease-out 1}.completion-glyph.is-celebrating .pen-pool{animation:ink-pool .55s ease-out 1}@keyframes log-complete{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}@keyframes ink-pool{0%,65%{opacity:0}to{opacity:.58}}.corrected-hint{grid-column:1 / -1;color:var(--muted);font-size:.875rem}.streak{padding:18px 0 0;margin-top:22px;text-align:center}.streak .streak-label{font:600 .8125rem/1.5 var(--sans);color:var(--muted)}.streak p{margin:2px 0 0}.streak-count{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:center;gap:8px;font-size:.875rem}.streak-count strong{font:400 2.125rem/1 var(--serif);font-variant-numeric:lining-nums tabular-nums}.streak>.muted{font-size:.8125rem;margin-top:6px}.streak-compact{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 16px;align-items:center;text-align:left;margin-block:32px;padding:0}.streak-compact .streak-count{display:block;font:400 1.25rem/1.4 var(--serif)}.streak-compact .streak-count strong{font:inherit}.streak-compact>.muted,.streak-compact .progress-error{grid-column:1 / -1}.streak-compact .calendar-link{grid-column:2;grid-row:1;color:var(--muted);font-weight:400;align-self:center}.ink-check{width:20px;height:20px;color:var(--primary);flex-shrink:0;overflow:visible}.ink-check :is(.ink-check-stroke,.ink-check-detail){fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round}.ink-check-stroke{stroke-width:7}.ink-check-detail{stroke:var(--pen);stroke-width:2.5;opacity:.8}.ink-check-pool{fill:currentColor;opacity:.62}.day-dash{width:9px;border-bottom:1px solid var(--muted)}.last-known{margin-top:24px;padding-top:20px}.last-known h3{font:600 .75rem/1.5 var(--sans);text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.last-known>p:first-of-type{margin-top:10px;font:400 1.5rem/1.2 var(--serif)}.last-known .muted{margin-top:8px;font-size:.875rem}.progress-error{margin-top:8px}.today-log-details{max-width:480px}.month-history{max-width:560px}.month-history>.streak{text-align:left;padding:0 0 20px;margin-top:0}.month-history .streak-count{justify-content:start;gap:12px}.month-history .streak-count strong{font-size:3.5rem}.month-history>.streak>.muted{flex-basis:100%}.month-navigation{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:8px;align-items:center;padding-top:12px}.month-navigation h2{text-align:center}.month-navigation button{width:44px;min-height:44px;padding:0;font-size:1.25rem;border-color:transparent;background:transparent}.month-navigation .ink-label{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:40px;height:40px;padding:0}.month-navigation .ink-label:after{display:none}.month-count{margin:4px 0 12px;color:var(--muted);font-size:.8125rem}.calendar-grid{margin-top:8px}.calendar-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;margin-bottom:2px}.calendar-week [role=columnheader]{text-align:center;padding:6px 0;color:var(--muted);font-size:.75rem}.calendar-day{width:100%;min-width:0;min-height:48px;display:flex;flex-direction:column;gap:2px;padding:4px 2px;border:1px solid transparent;border-radius:6px;position:relative;background:transparent;font-weight:400;line-height:1.1}.calendar-date{display:block;position:relative;min-width:28px;font:400 1.125rem/1.2 var(--serif);font-variant-numeric:lining-nums tabular-nums}.calendar-day.logged{background:var(--accent)}.calendar-day.unlogged{background:transparent}.calendar-day.before-account{color:var(--muted);background:transparent}.calendar-date>.pen-loop{inset:-4px -3px;width:calc(100% + 6px);height:calc(100% + 8px);color:var(--pen);opacity:0}.calendar-day.today .calendar-date>.pen-loop,.calendar-day[aria-pressed=true] .calendar-date>.pen-loop{opacity:1}.calendar-day[aria-pressed=true] .calendar-date{font-weight:600;text-decoration:underline;text-underline-offset:5px}.calendar-day:focus-visible .calendar-date>.pen-loop{opacity:1}.calendar-day:disabled{opacity:1;color:var(--muted);cursor:default}.calendar-day:focus-visible{outline-offset:-3px;z-index:1}.calendar-symbol{display:flex;align-items:center;justify-content:center;gap:2px;line-height:1.2;min-height:18px}.calendar-legend{display:flex;flex-wrap:wrap;gap:8px 16px;margin:16px 0;color:var(--muted);font-size:.8125rem}.legend-mark{display:inline-flex;align-items:center;gap:5px}.legend-today{position:relative;padding:0 8px}.legend-today>.pen-loop{inset-block:-4px;height:calc(100% + 8px)}.calendar-detail{padding-top:20px;margin:24px 0;display:flex;flex-direction:column;gap:12px}.calendar-detail>button{align-self:start}.daily-evidence-list{display:flex;flex-direction:column;gap:8px;margin:4px 0;padding:0;list-style:none}.daily-evidence-list li{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 16px}.daily-evidence-list li>span:last-child{color:var(--muted);font-variant-numeric:tabular-nums}@media(max-width:979px){.app-shell[data-tab=today]>.app-header{margin-bottom:28px}}.timeline-line{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 16px}.timeline-line strong{font-weight:600}.receipt-details{color:var(--muted)}.receipt-details p{margin-bottom:8px}.page-sections{display:flex;flex-direction:column;gap:32px}.page-sections>.stack{gap:32px}.page-sections>.stack+.stack{padding-top:28px}.stack{display:flex;flex-direction:column;gap:20px;min-width:0}.secondary-flow{gap:24px}.panel{display:flex;flex-direction:column;gap:16px;padding:0;min-width:0}.panel>h2{font-size:1.5rem;font-weight:400}.panel+.panel{padding-top:24px}.panel p+p{margin-top:0}.panel>button,.panel>.button{align-self:start}.status-line{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.pill{display:inline-flex;align-items:center;padding:2px 8px;border-radius:5px;background:var(--tint);font-weight:600;font-size:.875rem}.pill.warning{color:var(--warning-text);background:var(--warning-bg)}.decision-note{color:var(--muted);max-width:62ch}.ledger-field-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(8rem,.55fr);gap:16px}.ledger-facts{margin:0}.ledger-facts>div{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:12px;align-items:baseline;padding:9px 0}.ledger-facts dt{color:var(--muted)}.ledger-facts dd{margin:0;text-align:right;font-weight:600;font-variant-numeric:tabular-nums}.entry-ledger-summary{padding:4px 0}.entry-ledger-summary-amber{padding:12px 16px;color:var(--warning-text);background:var(--warning-bg)}.entry-ledger-summary-red{padding:12px 16px;color:var(--danger);background:var(--danger-bg)}.entry-summary-heading{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 16px;align-items:baseline;padding:8px 0 12px}.entry-summary-heading h3{color:var(--text);font-size:1.375rem}.entry-summary-heading span{font-variant-numeric:tabular-nums}.entry-fact-cluster{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 24px}.entry-fact-cluster p{display:flex;flex-direction:column;gap:2px;margin:0}.entry-fact-cluster span{color:var(--muted)}.entry-fact-cluster strong{font-variant-numeric:tabular-nums}.entry-ledger-summary .callout,.entry-ledger-summary .error-text{margin:12px 0 0;padding:0;border:0;background:transparent}.entry-time-field{gap:4px}.entry-time-field .field-hint,.entry-time-field .error-text{margin-top:0}.secondary-flow>.actions{padding-top:8px}.secondary-flow>button.primary{align-self:flex-start}.entry-choice-list{display:flex;flex-direction:column;gap:8px}.entry-choice{justify-content:flex-start;width:100%;padding:16px 0;border:0;border-radius:0;background:transparent;font:400 1.375rem/1.25 var(--serif)}.entry-choice:hover:not(:disabled){color:var(--primary);background:var(--accent)}.today-time{font-weight:600}.text-link{min-height:44px;display:inline-flex;align-items:center;gap:12px;align-self:start;font-weight:600}.inset{background:var(--background);padding:12px 16px;border-radius:8px}.inset p{margin-top:8px}.actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.callout{padding:12px 16px;border-radius:4px;margin-bottom:12px;border-left:3px solid currentColor}.callout.warning{background:var(--warning-bg);color:var(--warning-text)}.callout.error{background:var(--danger-bg);color:var(--danger)}.callout p{margin-top:8px}.notice{color:var(--text);background:var(--support);width:fit-content;padding:4px 8px;border-radius:4px;margin:-8px 0 16px}.error-text{color:var(--danger)}.footnote{margin:24px 0;max-width:75ch}.app-footer{padding:24px 0 calc(8rem + env(safe-area-inset-bottom));color:var(--muted)}.history-list{margin-top:16px}.history-list details{background:transparent}summary{cursor:pointer;display:flex;align-items:center;gap:4px;min-height:44px;padding:8px 0;list-style:none;font:400 1.25rem/1.4 var(--serif);color:var(--muted)}summary::-webkit-details-marker{display:none}summary>.ink-label{max-width:calc(100% - 24px);padding-block:1em}.note-toggle{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;pointer-events:none}.note-label{display:inline-block;position:relative;max-width:100%}.note-label{font-family:var(--hand);font-size:1.125em;font-weight:600;letter-spacing:.01em}.ink-underline{position:absolute;left:-2px;bottom:calc(-6px - .12em);width:calc(100% + 4px);height:6px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;pointer-events:none;opacity:0;transition:opacity .13s ease}summary:focus-visible .ink-underline,summary:active .ink-underline{opacity:1}@media(hover:hover){summary:hover .ink-underline{opacity:1}}details[open]>summary .note-toggle-vertical{display:none}details[open]>summary{color:var(--text)}details>:not(summary){margin-inline-start:24px;max-width:min(65ch,calc(100% - 24px))}details p{line-height:1.65}summary:focus-visible{outline-offset:-5px}.history-list>details>summary{display:grid;grid-template-columns:5.5rem minmax(0,1fr) 16px;gap:12px;align-items:center;padding:14px 0;list-style:none}.history-list>details>summary::-webkit-details-marker{display:none}.history-list>details>summary:after{content:"›";color:var(--muted);font-size:1.4rem}.history-list>details[open]>summary:after{transform:rotate(90deg)}.day-date{font-weight:600;margin:0}.day-date>.muted{display:block;font-weight:400}.day-state{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;margin:0}.day-source{font-size:.875rem}.report-status{color:var(--muted)}.history-detail{padding:8px 0 24px;display:flex;flex-direction:column;gap:16px}.history-detail h2{font-size:1rem;font-weight:600}.history-detail button{align-self:start}.timeline{list-style:none;margin:0;padding:0}.timeline li{margin:0;padding:12px 0}.timeline li:last-child{margin-bottom:0}.steps{margin:0;padding-left:24px}.steps li{margin-bottom:16px;padding-left:4px}.steps li:last-child{margin-bottom:0}.secret-box{display:flex;flex-direction:column;gap:12px}.secret-box button{align-self:start}.query-option{margin-block:8px}.query-option>summary{min-height:48px;padding:12px 0}.query-option>.stack{padding:0 0 16px}.setup-instructions{margin-top:8px}.header-guide{color:var(--muted)}.header-example{display:block;margin:12px 0;padding:12px;background:var(--surface);border-radius:8px;font:inherit;font-family:ui-monospace,monospace;overflow-wrap:anywhere}.selected-medication{padding:4px 0 8px;margin-bottom:28px}.selected-medication h2{font:600 2rem/1.05 var(--hand);color:var(--primary)}.selected-medication p{margin-top:6px;color:var(--muted)}.setup-ledger{padding-bottom:8px}.setup-status{max-width:62ch}.technical-details{margin-top:-4px}.technical-details>:not(summary){margin-inline-start:16px;max-width:min(65ch,calc(100% - 16px))}.receipt-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px}.receipt-facts p{display:flex;flex-direction:column;gap:2px;margin:0}.receipt-facts span{color:var(--muted)}label{display:block;font-weight:600}input,select,textarea{display:block;width:100%;max-width:100%;min-width:0;margin-top:8px;padding:10px 12px;color:var(--text)}input,textarea{border:1px solid var(--control-border);border-radius:3px;background:var(--surface)}select,input:is([type=number],[type=date],[type=time],[type=datetime-local],[inputmode=decimal]),.form-pair input{padding:10px 2px 8px;border:0;border-radius:0;background:transparent;background-image:var(--ink-rule-image);background-repeat:no-repeat;background-position:left bottom;background-size:100% 8px}textarea{resize:vertical;overflow-wrap:anywhere;font-family:var(--sans);font-weight:400}.header-example,.setup-ledger textarea,.secret-box input,.secret-box textarea{font-family:ui-monospace,monospace}input[type=time]{min-width:0;max-width:100%}.field-hint{display:block;font-weight:400;margin-top:8px}.check-label{display:flex;gap:12px;align-items:center;min-height:48px;cursor:pointer;font-weight:400}.check-label input{flex:0 0 24px;width:24px;min-height:24px;height:24px;margin:0;accent-color:var(--primary)}.danger-zone{border-color:var(--danger)}.danger-zone>h2{color:var(--danger)}.local-test-note{color:var(--muted)}.local-test-note strong{color:var(--text);font-weight:600}.local-test-note p{margin-top:4px}.correction-details>summary{min-height:44px;padding:8px 0;font-weight:400}.sign-in-connection{align-self:start;color:var(--muted);font-weight:400}.account-email{overflow-wrap:anywhere}dialog{width:min(540px,calc(100% - 32px));max-height:calc(100dvh - 48px - env(safe-area-inset-top) - env(safe-area-inset-bottom));margin:auto;padding:24px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);background-image:var(--paper-texture);background-repeat:repeat;background-size:160px 160px;color:var(--text);overflow-y:auto}dialog::backdrop{background:#07140ca6}dialog>*+*{margin-top:16px}dialog .actions{margin-top:24px}dialog h2{font-size:1.5rem}.public-shell{max-width:420px}.public-shell header{margin-bottom:32px}.public-shell main{padding-bottom:max(32px,env(safe-area-inset-bottom))}.sign-in-content{display:flex;flex-direction:column;gap:20px}.pain-form fieldset,.report-inclusions{padding:0;margin:0;border:0;min-width:0}.pain-form legend{margin-bottom:12px;font-weight:600}.pain-score-grid{display:grid;grid-template-columns:repeat(11,minmax(0,1fr))}.pain-score{display:flex;align-items:center;justify-content:center;position:relative;min-height:48px;min-width:0;border:0;cursor:pointer}.pain-score>span{display:flex;width:34px;height:34px;align-items:center;justify-content:center;border-radius:50%}.pain-score:has(input:checked)>span{color:var(--primary);outline:1.5px solid var(--primary)}.pain-score:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:-3px}.pain-score:has(input:disabled){opacity:.55;cursor:not-allowed}.pain-scale-labels{display:flex;justify-content:space-between;gap:16px;margin-top:7px;color:var(--muted);font-size:.8125rem}.pain-form textarea{font-family:var(--sans)}.entry-options>:not(summary){margin-inline-start:16px;max-width:min(65ch,calc(100% - 16px))}.entry-option-fields{padding-bottom:8px}.medication-notes{display:flex;flex-direction:column;gap:12px;margin-top:32px}.medication-notes>h2{color:var(--muted);font-size:1.25rem;margin-bottom:8px}.as-needed-notes{display:flex;flex-direction:column;gap:12px}.as-needed-notes>h2{color:var(--muted);font-size:1.25rem;margin-bottom:8px}.as-needed-notes:not(:has(.medication-note)),.medication-notes:not(:has(.medication-note,.review-link-row)){display:none}.medication-note{display:block;width:calc(100% + 24px);max-width:none;margin-inline:-12px;padding:20px 12px;border:0;text-align:left;font-weight:400;background:transparent;color:var(--text)}.medication-note-caution{background:var(--warning-bg);color:var(--warning-text)}.medication-note-exceeded{background:var(--danger-bg);color:var(--danger)}.medication-note-line{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px 16px;align-items:baseline}.medication-note-line+.medication-note-line{margin-top:16px}.medication-note-last-taken{display:block;margin-block:16px;font-variant-numeric:tabular-nums}.medication-note-name{min-width:0;font:600 1.75rem/1.05 var(--hand);letter-spacing:.005em;color:var(--text)}.note-detail-cue{color:var(--muted);font:400 1rem/1 var(--sans)}.medication-note-metric{margin-inline-start:auto;font-variant-numeric:tabular-nums}.medication-note-neutral .medication-note-metric{color:var(--muted)}.medication-note-state{display:block;margin-top:12px}.medication-settings-list{padding:0;margin:0;list-style:none}.medication-settings-list li{margin:0}.medication-settings-list li+li{margin-top:8px}.medication-settings-row{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name strength" "role action";gap:4px 16px;width:100%;padding:14px 0;border:0;border-radius:0;background:transparent;text-align:left;font-weight:400}.medication-settings-row:hover:not(:disabled){color:var(--primary);background:var(--accent)}.medication-setting-name{grid-area:name;font:600 1.5rem/1.05 var(--hand);letter-spacing:.005em}.medication-setting-strength{grid-area:strength;text-align:right;font-variant-numeric:tabular-nums}.medication-setting-role{grid-area:role;color:var(--muted);font-size:.875rem}.medication-setting-action{grid-area:action;justify-self:end;color:var(--primary)}.medication-setting-action .ink-label{padding-block:.25em}.medication-setting-action .pen-loop{display:none}.medication-setting-action .ink-label:after{content:"";position:absolute;left:20%;right:20%;bottom:-.2em;height:8px;background-image:var(--ink-rule-image);background-repeat:no-repeat;background-position:center;background-size:100% 8px}.editor-core-fields{gap:16px}.editor-section{position:relative;padding-top:12px}.editor-section>:not(summary){margin-inline-start:16px;max-width:min(65ch,calc(100% - 16px))}.editor-section-fields{padding-bottom:12px;gap:16px}.form-pair{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,10rem),1fr));gap:16px}.medication-selector{display:block;margin-bottom:24px}.review-link-row{display:flex;justify-content:space-between;align-items:center;gap:16px;color:var(--warning-text)}.review-group{padding-top:4px}.review-group-heading{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding-bottom:10px}.review-group-heading span{color:var(--muted)}.review-list{padding:0;margin:0;list-style:none}.review-list>li{padding:8px 0 20px}.review-list>li+li{margin-top:24px}.review-evidence{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px}.review-evidence>strong{font:400 1.375rem/1.25 var(--serif);font-variant-numeric:tabular-nums}.review-state{padding:2px 8px;border-radius:4px;color:var(--warning-text);background:var(--warning-bg);font-size:.875rem}.review-time{margin-top:8px;font-variant-numeric:tabular-nums}.review-time span{color:var(--muted)}.review-reason{margin-top:8px}.review-actions{margin-top:16px}.retained-cue{color:var(--muted)}.dialog-close{align-self:start}.review-cue{color:var(--warning-text)}.medication-evaluation{margin-block:24px}.medication-evaluation{gap:12px}.medication-evaluation h3{margin-bottom:2px}.add-entry-action{display:flex;gap:8px;padding:8px 0;min-height:44px;border-color:transparent;background:transparent;margin-bottom:24px}.add-entry-action>span{color:var(--primary);font-size:1.5rem}.tracking-timeline .actions{margin-top:12px}.observation-note{white-space:pre-wrap}.pain-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--primary);flex:0 0 5px}.calendar-pain-dot{position:absolute;right:4px;bottom:5px}.report-date-range{padding-bottom:4px}.report-inclusions legend{margin-bottom:6px;font-weight:600}.privacy-note{padding:12px 16px;background:var(--support)}.report-preview{position:relative;margin-top:32px;padding-top:24px}.report-preview-actions{margin-top:20px}.print-report{margin-block:24px 0}.print-report>p{margin-top:12px}.print-report article{margin-top:0;padding:20px 0;break-inside:avoid}.report-summary{margin-top:16px}.editor-section:before,.report-preview:before{content:"";position:absolute;inset:0 auto auto 0;width:min(180px,45%);height:8px;background:var(--ink-rule-image) no-repeat center / 100% 8px;pointer-events:none}@media print{.skip-link,.app-shell>.app-header,.app-shell>.app-footer,.app-shell main>:not(section),.app-shell main>section:not(:has(.print-report)),.app-shell main>section:has(.print-report)>:not(dialog){display:none}.app-shell,.app-shell main,.app-shell main>section:has(.print-report){display:contents}body *{visibility:hidden}.print-report,.print-report *{visibility:visible}dialog:has(.print-report){position:static;display:block;visibility:visible;width:100%;max-width:none;max-height:none;overflow:visible;margin:0;padding:0;border:0;background:#fff}dialog:has(.print-report)>:not(.report-preview),.report-preview>:not(.print-report){display:none}.report-preview{display:block;visibility:visible;margin:0;padding:0;border:0}.print-report{margin:0;padding:24px;color:#000;background:#fff}dialog::backdrop{display:none}}.medication-note:active .medication-note-name{text-decoration:underline;text-underline-offset:4px}@media(hover:hover){.medication-note:hover .medication-note-name{text-decoration:underline;text-underline-offset:4px}}.sign-in-form .actions>button,.sign-in-content>.actions>.button{width:100%}.local-account-cue{font-size:.875rem}@media(min-width:760px){html{scroll-padding-bottom:24px}.app-shell{padding-top:max(32px,env(safe-area-inset-top))}.app-header{align-items:center;margin-bottom:24px}.navigation{position:static;background:transparent;padding:0;display:flex;flex-basis:100%;justify-content:center;order:3}.navigation a{flex-direction:row;gap:8px;min-height:48px;margin:0;padding:8px 12px}.page-heading{margin:0 0 28px}.app-footer{padding-bottom:max(32px,env(safe-area-inset-bottom))}}@media(max-width:520px){.ledger-field-grid{grid-template-columns:1fr}.pain-score-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.today-medication{font-size:2rem}}@media(min-width:980px){.app-shell{padding-top:36px}.app-shell .navigation a{padding:10px 20px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
