:root{color-scheme:dark;--space-3xs: 2px;--space-2xs: 4px;--space-xs: 8px;--space-sm: 12px;--space-md: 16px;--space-lg: 24px;--space-xl: 40px;--space-2xl: 64px;--space-3xl: 96px;--space-4xl: 144px;--text-xs: .8125rem;--text-sm: .9375rem;--text-md: 1.0625rem;--text-lg: 1.2rem;--text-xl: 1.44rem;--text-2xl: 1.728rem;--text-3xl: 2.074rem;--text-display-s: 1.44rem;--text-display: 1.728rem;--text-section: 1.2rem;--text-title: 1.0625rem;--text-lead: 1.0625rem;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in: cubic-bezier(.7, 0, .84, 0);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--dur-micro: .12s;--dur-short: .22s;--dur-long: .42s;--color-error: oklch(72% .15 27);--color-success: oklch(76% .13 150);--container: 1440px;--gutter: 64px;--gap-columns: 32px;--section-gap-s: 120px;--section-gap: 144px;--section-gap-l: 176px;--z-base: 1;--z-raised: 10;--z-dropdown: 100;--z-sticky: 200;--z-sticky-nav: 300;--z-modal: 400;--z-toast: 500;--z-tooltip: 600;--color-paper: oklch(21% .006 255);--color-paper-2: oklch(25.5% .007 255);--color-paper-3: oklch(30% .008 255);--color-ink: oklch(96% .004 255);--color-ink-2: oklch(89% .01 255);--color-muted: oklch(78% .012 255);--color-rule: oklch(34% .008 255);--color-rule-2: oklch(48% .01 255);--color-accent: oklch(74% .16 148);--color-accent-2: oklch(58% .14 150);--color-accent-ink: oklch(19% .03 150);--color-focus: oklch(82% .15 148);--mark-1: oklch(36% .08 152);--mark-2: oklch(50% .12 150);--mark-3: oklch(66% .16 148);--mark-4: oklch(82% .17 146);--font-display: "Mona Sans", ui-sans-serif, system-ui, sans-serif;--font-body: var(--font-display);--font-outlier: var(--font-display);--radius-card: 8px;--radius-pill: 6px;--radius-mark: 3px;--rule-hair: 1px;--shadow-card: 0 12px 32px -16px oklch(8% .01 255 / .6);--tracking-display: -.01em;--display-weight: 600;--display-stretch: 100%}:root[data-palette=midnight]{--color-paper: oklch(14% .048 264);--color-paper-2: oklch(18.5% .052 264);--color-paper-3: oklch(23% .055 264);--color-ink: oklch(95% .016 250);--color-ink-2: oklch(88% .05 245);--color-muted: oklch(76% .04 256);--color-rule: oklch(29% .058 264);--color-rule-2: oklch(42% .06 262);--color-accent: oklch(80% .11 230);--color-accent-2: oklch(58% .1 236);--color-accent-ink: oklch(16% .05 264);--color-focus: oklch(84% .12 228);--mark-1: oklch(42% .06 250);--mark-2: oklch(58% .07 248);--mark-3: oklch(75% .06 246);--mark-4: oklch(95% .016 250);--radius-card: 0;--radius-pill: 0;--radius-mark: 0}*,*:before,*:after{box-sizing:border-box}html,body{overflow-x:clip}html{scrollbar-color:var(--color-muted) var(--color-paper);scroll-padding-top:var(--space-3xl)}body{margin:0;background:var(--color-paper);color:var(--color-ink);font-family:var(--font-body);font-size:var(--text-md);line-height:1.55;-webkit-font-smoothing:antialiased;caret-color:var(--color-accent)}::selection{background:color-mix(in oklab,var(--color-accent) 22%,transparent);color:var(--color-ink)}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:.16em}h1,h2,h3{margin:0;font-family:var(--font-display);font-weight:var(--display-weight, 700);font-synthesis:none;letter-spacing:var(--tracking-display);line-height:1.05;overflow-wrap:break-word;min-width:0;text-wrap:balance}h1{max-width:20ch;font-size:var(--text-display)}h2{max-width:30ch;font-size:var(--text-section)}h3{max-width:40ch;font-size:var(--text-title);line-height:1.2}.lead{font-size:var(--text-lead);line-height:1.45;max-width:52ch}p{margin:0;text-wrap:pretty}p:not([class]){max-width:65ch}img,video{max-width:100%;height:auto;display:block}svg{display:block}[hidden]{display:none!important}button,input,select,textarea{font:inherit}.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter);box-sizing:border-box}.num,.figure,td.num{font-variant-numeric:tabular-nums}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}[data-slot]{position:relative;overflow:hidden;background:linear-gradient(160deg,var(--color-paper-2, var(--color-paper)),var(--color-paper-3, var(--color-paper)))}[data-slot]>img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;z-index:1}[data-slot]:has(>img)>:not(img):not([data-keep]){display:none!important}@media(max-width:60rem){:root{--gutter: 24px;--section-gap-s: 80px;--section-gap: 96px;--section-gap-l: 120px}}@media(max-width:40rem){:root{--gutter: 16px;--section-gap-s: 56px;--section-gap: 72px;--section-gap-l: 96px;--gap-columns: 16px}}@media(prefers-reduced-motion:reduce){*:not(.keep-motion),*:not(.keep-motion):before,*:not(.keep-motion):after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}[data-slot]:has(>img){isolation:isolate;background:var(--color-ink-2);outline:1px solid color-mix(in oklab,var(--color-ink) 8%,transparent);outline-offset:-1px}[data-slot]>img{z-index:0;filter:grayscale(1) contrast(1.08);mix-blend-mode:multiply}[data-slot]:has(>img):before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:var(--color-paper);mix-blend-mode:lighten;pointer-events:none}:root{--mark-size: 14px;--control-h: 44px;--hit: 48px;--font-kanji: "Noto Sans JP", "Hiragino Sans", "Yu Gothic", sans-serif}:root[data-text=large]{font-size:112.5%}:root[data-text=small]{font-size:88%;--text-xs: 13px}.label{font-size:var(--text-sm);font-weight:500;color:var(--color-muted)}.fig{font-weight:500;font-stretch:var(--display-stretch);letter-spacing:-.03em;line-height:.95;font-variant-numeric:tabular-nums;font-size:var(--text-3xl)}.fig--s{font-size:var(--text-2xl)}.unit{font-stretch:100%;font-weight:400;font-size:var(--text-md);letter-spacing:0;color:var(--color-ink-2);margin-left:.35em}.kanji{font-family:var(--font-kanji);font-weight:300;letter-spacing:0;margin-right:.3em}h3{font-weight:500;font-stretch:100%;letter-spacing:0}.btn{min-height:var(--control-h);padding:0 var(--space-lg);border:var(--rule-hair) solid transparent;border-radius:var(--radius-pill);background:none;color:var(--color-ink);font-weight:500;cursor:pointer;position:relative;transition:background-color var(--dur-short) var(--ease-out),border-color var(--dur-short) var(--ease-out)}.btn:after{content:"";position:absolute;inset:calc((var(--control-h) - var(--hit)) / 2) 0}.btn--primary{background:var(--color-accent);color:var(--color-accent-ink)}.btn--primary:hover{background:var(--color-focus)}.btn--primary:active{background:var(--color-ink-2)}.btn--secondary{border-color:var(--color-rule-2)}.btn--secondary:hover{background:var(--color-paper-2)}.btn--secondary:active{background:var(--color-paper-3)}.btn--block{width:100%}.btn:disabled{opacity:.55;cursor:not-allowed}.btn[aria-busy=true]{cursor:progress;opacity:.8}.field{display:grid;gap:var(--space-2xs)}.amount{display:inline-flex;align-items:baseline;gap:var(--space-xs)}.amount input,textarea{background:var(--color-paper);color:var(--color-ink);border:var(--rule-hair) solid var(--color-muted);border-radius:var(--radius-pill);font-size:var(--text-md)}.amount input{width:4.5em;min-height:var(--control-h);padding:0 var(--space-xs);text-align:right;font-variant-numeric:tabular-nums}.amount .unit{margin-left:0;font-size:var(--text-sm);color:var(--color-muted);min-width:4.2em}.amount input::placeholder,textarea::placeholder{color:var(--color-muted)}.amount input:focus-visible,textarea:focus-visible{outline:2px solid var(--color-focus);outline-offset:-2px}.amount input:disabled,textarea:disabled{opacity:.55;cursor:not-allowed}.amount input[aria-invalid=true],textarea[aria-invalid=true]{border-color:var(--color-error)}textarea{width:100%;padding:var(--space-xs) var(--space-sm);line-height:1.5;resize:vertical}.segmented{display:inline-flex;flex-wrap:wrap}.segmented button{min-height:var(--control-h);padding:0 var(--space-sm);background:none;color:var(--color-ink);border:var(--rule-hair) solid var(--color-rule-2);margin-left:-1px;border-radius:0;cursor:pointer;font-weight:500;font-size:var(--text-sm);transition:background-color var(--dur-micro) var(--ease-out)}.segmented button:first-child{margin-left:0;border-start-start-radius:var(--radius-pill);border-end-start-radius:var(--radius-pill)}.segmented button:last-child{border-start-end-radius:var(--radius-pill);border-end-end-radius:var(--radius-pill)}.segmented button:hover{background:var(--color-paper-2)}.segmented button[aria-pressed=true]{background:var(--color-ink);color:var(--color-paper);border-color:var(--color-rule-2)}.segmented--full{display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}.segmented--full button{padding:0}.mark{display:inline-block;width:var(--mark-size);height:var(--mark-size);flex:none;background:none;border-radius:var(--radius-mark)}.mark[data-s=done]{background:var(--mark-4)}.mark[data-s=done][data-l="1"]{background:var(--mark-1)}.mark[data-s=done][data-l="2"]{background:var(--mark-2)}.mark[data-s=done][data-l="3"]{background:var(--mark-3)}.mark[data-s=partial]{background:linear-gradient(to top,var(--mark-3) 50%,transparent 50%);box-shadow:inset 0 0 0 1px var(--mark-3)}.mark[data-s=missed]{box-shadow:inset 0 0 0 1px var(--color-rule-2)}.mark[data-s=rest]{background:linear-gradient(var(--color-rule-2),var(--color-rule-2)) center / 50% 1px no-repeat}.mark[data-today]{outline:2px solid var(--color-accent);outline-offset:2px}.app{display:grid;gap:var(--space-lg);align-content:start;background:var(--color-paper);padding-top:var(--space-md)}.app-top{display:grid;gap:var(--space-2xs)}.tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:var(--color-paper-2);border-radius:var(--radius-card);overflow:hidden}.tabs a{min-height:56px;display:grid;place-items:center;text-decoration:none;color:var(--color-muted);font-size:var(--text-sm);font-weight:500;box-shadow:inset 0 2px 0 transparent;transition:color var(--dur-micro) var(--ease-out)}.tabs a:hover{color:var(--color-ink)}.tabs a[aria-current=page]{color:var(--color-ink);box-shadow:inset 0 2px 0 var(--color-accent)}.app-action{display:grid}.checkins{list-style:none;margin:0;padding:0;display:grid}.checkins>li{display:grid;gap:var(--space-sm);padding-block:var(--space-sm);border-bottom:var(--rule-hair) solid var(--color-rule)}.checkins>li.ci-row{grid-template-columns:minmax(0,1fr) auto;align-items:center}.ci-name{display:grid;gap:var(--space-3xs);min-width:0}.ci-name h3{max-width:none}.nudge{font-size:var(--text-sm);color:var(--color-ink-2)}.journal{display:grid;gap:var(--space-xs)}.journal h2{margin-bottom:var(--space-2xs)}.prompt{font-size:var(--text-sm);color:var(--color-ink-2)}.month{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:var(--space-2xs)}.dow{font-size:var(--text-xs);color:var(--color-muted);text-align:center}.cday{--mark-size: 7px;display:grid;gap:var(--space-2xs);align-content:start;justify-items:start;min-height:52px;padding:var(--space-2xs);background:var(--color-paper-2);border:0;color:var(--color-muted);border-radius:var(--radius-pill);cursor:pointer;font-size:var(--text-xs);font-variant-numeric:tabular-nums;transition:background-color var(--dur-micro) var(--ease-out)}.cday:hover{background:var(--color-paper-3)}.cday[aria-pressed=true]{background:var(--color-paper-3);color:var(--color-ink);box-shadow:inset 0 0 0 1px var(--color-ink)}.six{display:grid;grid-template-columns:repeat(3,var(--mark-size));gap:var(--space-3xs)}.day{display:grid;gap:var(--space-sm)}.daylist{margin:0;display:grid}.daylist>div{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:var(--space-sm);align-items:center;padding-block:var(--space-xs);border-bottom:var(--rule-hair) solid var(--color-rule)}.daylist dt{font-weight:500}.daylist dd{margin:0;color:var(--color-ink-2);font-variant-numeric:tabular-nums}.quote{color:var(--color-ink-2)}.ledger-wrap{overflow-x:auto}.ledger{border-collapse:collapse;font-size:var(--text-xs);font-variant-numeric:tabular-nums}.ledger th,.ledger td{padding:0;text-align:center}.ledger thead th{color:var(--color-muted);font-weight:500;padding-bottom:var(--space-xs)}.ledger thead th span{display:block}.ledger th.h{position:sticky;left:0;z-index:var(--z-raised);background:var(--color-paper);text-align:left;padding-right:var(--space-sm);font-size:var(--text-sm);font-weight:500;color:var(--color-ink);white-space:nowrap}.ledger tbody tr{border-bottom:var(--rule-hair) solid var(--color-rule)}.ledger td{width:30px;min-width:30px;height:48px;vertical-align:middle}.ledger td .mark{display:block;margin:0 auto}.ledger td .v{display:block;min-height:1lh;color:var(--color-muted);margin-top:var(--space-3xs)}.ledger .tot{padding-left:var(--space-sm);text-align:left;white-space:nowrap;color:var(--color-ink-2)}.stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-md)}.stats>div{display:grid;gap:var(--space-xs)}.year-wrap{overflow-x:auto}.year{--mark-size: 10px;--radius-mark: 2px;display:grid;grid-auto-flow:column;grid-template-rows:repeat(7,var(--mark-size));gap:var(--space-3xs);width:max-content}.sub{color:var(--color-ink-2)}.state{display:grid;gap:var(--space-sm);justify-items:start;padding:var(--space-lg);background:var(--color-paper-2);border-radius:var(--radius-card)}.state p{color:var(--color-ink-2);font-size:var(--text-sm)}.state--error h3:before{content:"!";display:inline-grid;place-items:center;width:1.3em;height:1.3em;margin-right:var(--space-xs);border:var(--rule-hair) solid var(--color-error);border-radius:50%;color:var(--color-error);font-size:var(--text-sm)}.skeleton{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-sm);width:100%}.skeleton li{height:44px;background:var(--color-paper-3);border-radius:var(--radius-pill)}@media(prefers-reduced-motion:no-preference){.skeleton li{animation:breathe 1.6s var(--ease-in-out) infinite alternate}}@keyframes breathe{0%{opacity:.55}to{opacity:1}}.shell{min-height:100dvh;display:grid;grid-template-rows:1fr auto}.page{width:100%;max-width:40rem;margin-inline:auto;display:grid;gap:var(--space-lg);align-content:start;padding-block:var(--space-md) var(--space-xl);padding-left:max(var(--space-md),env(safe-area-inset-left,0px));padding-right:max(var(--space-md),env(safe-area-inset-right,0px))}.shell>.tabs{position:sticky;bottom:0;z-index:var(--z-sticky-nav);border-radius:0;padding-bottom:env(safe-area-inset-bottom,0px);padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px)}@media(min-width:60rem){.shell{grid-template-rows:auto 1fr}.shell>.tabs{grid-row:1;top:env(safe-area-inset-top,0px);bottom:auto;grid-template-columns:repeat(4,8rem);justify-content:center}.shell>.page{grid-row:2}}.app-top{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-md)}.app-top>div{display:grid;gap:var(--space-2xs);min-width:0}.app-top h2{font-size:var(--text-2xl);max-width:none}:root:not([data-text=large]) .app-top h2.day-head{font-size:var(--text-xl)}.account-btn{flex:none;min-height:var(--hit);display:inline-flex;align-items:center;gap:var(--space-xs);padding-inline:var(--space-2xs);color:var(--color-ink-2);font-weight:500;text-decoration:none;border-radius:var(--radius-pill)}.account-btn:hover{color:var(--color-ink);background:var(--color-paper-2)}.account-btn:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.initial{width:2.5rem;height:2.5rem;flex:none;border-radius:50%;display:grid;place-items:center;background:var(--color-paper-3);border:var(--rule-hair) solid var(--color-rule-2);color:var(--color-ink);font-weight:600}.initial--l{width:3rem;height:3rem;font-size:var(--text-lg)}.auth{max-width:24rem;margin-inline:auto;display:grid;gap:var(--space-lg);padding-block:var(--space-2xl);padding-left:max(var(--space-md),env(safe-area-inset-left,0px));padding-right:max(var(--space-md),env(safe-area-inset-right,0px))}.auth h1{font-size:var(--text-2xl)}.wordmark{font-size:var(--text-lg);font-weight:500;color:var(--color-ink-2)}.form{display:grid;gap:var(--space-md)}.form .field>span:first-child,.form .field>label:first-child{font-size:var(--text-sm);font-weight:500;color:var(--color-ink-2)}.form input,.form select{min-height:var(--control-h);padding:0 var(--space-sm);background:var(--color-paper);color:var(--color-ink);border:var(--rule-hair) solid var(--color-muted);border-radius:var(--radius-pill);font-size:var(--text-md)}.form input:focus-visible,.form select:focus-visible{outline:2px solid var(--color-focus);outline-offset:-2px}.hint{font-size:var(--text-sm);color:var(--color-muted)}.form-error,.field-error{font-size:var(--text-sm);color:var(--color-ink)}.form-error:before,.field-error:before{content:"! ";color:var(--color-error);font-weight:600}.amount-field{display:grid;gap:var(--space-2xs);justify-items:end}.tick{width:var(--control-h);height:var(--control-h);display:grid;place-items:center;background:none;color:transparent;border:var(--rule-hair) solid var(--color-rule-2);border-radius:var(--radius-pill);cursor:pointer;font-size:var(--text-lg);position:relative;transition:background-color var(--dur-micro) var(--ease-out)}.tick:after{content:"";position:absolute;inset:calc((var(--control-h) - var(--hit)) / 2)}.tick:hover{background:var(--color-paper-2)}.tick[aria-pressed=true]{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-accent-ink)}.scales{display:flex;flex-wrap:wrap;gap:var(--space-md) var(--space-xl)}.scales .field,.app-action{display:grid;gap:var(--space-xs)}.saved{min-height:1lh;font-size:var(--text-sm);color:var(--color-muted);text-align:center}a.btn{display:inline-grid;place-items:center;text-decoration:none}.month-nav{display:flex;gap:var(--space-xs)}.cday[aria-current=date]{box-shadow:inset 0 0 0 2px var(--color-accent)}.cday[aria-current=date][aria-pressed=true]{box-shadow:inset 0 0 0 2px var(--color-accent),inset 0 0 0 3px var(--color-ink)}.ledger th.h a{color:inherit;text-decoration:none}.ledger th.h a:hover{text-decoration:underline;text-decoration-color:var(--color-accent)}.ledger td .mark[data-today]{outline-offset:1px}.stats{grid-template-columns:repeat(auto-fit,minmax(7rem,1fr))}.settings-top{display:grid;gap:var(--space-2xs)}.settings-top h2{font-size:var(--text-2xl);max-width:none}.back-link{justify-self:start;min-height:var(--hit);display:inline-flex;align-items:center;gap:var(--space-2xs);color:var(--color-ink-2);font-weight:500;text-decoration:none;border-radius:var(--radius-pill)}.back-link:before{content:"‹";font-size:1.4em;line-height:1}.back-link:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.menu-who{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-md);background:var(--color-paper-2);border-radius:var(--radius-card)}.menu-who>div{display:grid;min-width:0}.menu-who .label{overflow-wrap:anywhere}.who-name{font-weight:500}.menu-group{display:grid;gap:var(--space-2xs)}.menu-group>h3{padding-left:var(--space-2xs)}.menu-list{display:grid;background:var(--color-paper-2);border-radius:var(--radius-card);overflow:hidden}.menu-row{display:flex;justify-content:space-between;align-items:center;gap:var(--space-sm);min-height:3.25rem;padding:var(--space-xs) var(--space-md);color:var(--color-ink);text-decoration:none}.menu-row+.menu-row{border-top:var(--rule-hair) solid var(--color-rule)}.menu-row:hover{background:var(--color-paper-3)}.menu-row:focus-visible{outline:2px solid var(--color-focus);outline-offset:-2px}.menu-value{display:inline-flex;align-items:center;gap:var(--space-xs);min-width:0;color:var(--color-muted);font-size:var(--text-sm);text-align:right}.password-field{display:flex;gap:var(--space-xs)}.password-field input{flex:1 1 auto;min-width:0}.password-field .btn{flex:none}.choice-list{display:grid;background:var(--color-paper-2);border-radius:var(--radius-card);overflow:hidden}.choice-row{display:flex;align-items:center;gap:var(--space-sm);min-height:4rem;padding:var(--space-xs) var(--space-md);cursor:pointer}.choice-row+.choice-row{border-top:var(--rule-hair) solid var(--color-rule)}.choice-row:hover{background:var(--color-paper-3)}.choice-row:focus-within{outline:2px solid var(--color-focus);outline-offset:-2px}.choice-row input{width:1.5rem;height:1.5rem;margin:0;flex:none;accent-color:var(--color-ink)}.choice-row input:focus-visible{outline:none}.choice-name{flex:1 1 auto;font-weight:500}.choice-tag{font-size:var(--text-sm);font-weight:500;color:var(--color-ink)}.about-mark{font-size:var(--text-2xl);font-weight:500}.about-facts dt{color:var(--color-ink)}.about-facts dd{margin:0;color:var(--color-muted);font-variant-numeric:tabular-nums}.menu-value:after{content:"›";font-size:var(--text-lg);line-height:1;color:var(--color-ink-2)}.habit-list{display:grid;gap:var(--space-md);justify-items:start}.habit-list>ul{width:100%}.row-actions,.form-actions{display:flex;flex-wrap:wrap;gap:var(--space-xs)}.row-actions .btn{padding-inline:var(--space-sm)}.habit-form{width:100%;padding:var(--space-md);background:var(--color-paper-2);border-radius:var(--radius-card)}.habit-form .field{display:grid;gap:var(--space-xs)}.confirm{display:grid;gap:var(--space-sm)}.archived summary{cursor:pointer;color:var(--color-muted);font-weight:500;min-height:var(--hit);display:flex;align-items:center}.link-box{display:flex;flex-wrap:wrap;gap:var(--space-xs);align-items:center;width:100%}.link-box input{flex:1 1 14rem;min-width:0}
