@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-sans-latin-ext-400-normal-BtiwyxMk.woff2)format("woff2"),url(/assets/dm-sans-latin-ext-400-normal-BjWJ59Pq.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-sans-latin-400-normal-CW0RaeGs.woff2)format("woff2"),url(/assets/dm-sans-latin-400-normal-BwCSEQnW.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-sans-latin-ext-500-normal-BJfUCQsA.woff2)format("woff2"),url(/assets/dm-sans-latin-ext-500-normal-DR84L5F-.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-sans-latin-500-normal-B9HHJjqV.woff2)format("woff2"),url(/assets/dm-sans-latin-500-normal-Dr3UlScf.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/dm-sans-latin-ext-700-normal-CJIcxD6K.woff2)format("woff2"),url(/assets/dm-sans-latin-ext-700-normal-BLI3TTWz.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:DM Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/dm-sans-latin-700-normal-DvUfVpUG.woff2)format("woff2"),url(/assets/dm-sans-latin-700-normal-CUSSCpQX.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f5f1ea;--surface:#fff;--surface-2:#efe8de;--border:#e4ddd1;--text:#2b241d;--muted:#6f655a;--accent:#8a5a33;--accent-soft:#f7efe5;--green:#4d6b2a;--toast-bg:#2b241d;--toast-text:#f5f1ea;--danger:#a3372b;--success:#3f6b2a;--backdrop:#2b241d73;--shadow:0 10px 30px #2b241d2e}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#1c1915;--surface:#26221d;--surface-2:#2f2a24;--border:#3a342d;--text:#f1ebe2;--muted:#b0a596;--accent:#d39a68;--accent-soft:#33291f;--green:#a3c27a;--toast-bg:#f1ebe2;--toast-text:#1c1915;--danger:#f08a7c;--success:#a3c27a;--backdrop:#0009;--shadow:0 10px 30px #00000080}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#1c1915;--surface:#26221d;--surface-2:#2f2a24;--border:#3a342d;--text:#f1ebe2;--muted:#b0a596;--accent:#d39a68;--accent-soft:#33291f;--green:#a3c27a;--toast-bg:#f1ebe2;--toast-text:#1c1915;--danger:#f08a7c;--success:#a3c27a;--backdrop:#0009;--shadow:0 10px 30px #00000080}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);-webkit-tap-highlight-color:transparent;margin:0;font-family:DM Sans,system-ui,sans-serif;font-size:17px;line-height:1.4}h1{letter-spacing:-.01em;margin:.4rem 0 1.25rem;font-size:1.75rem;font-weight:700;line-height:1.2}button,input,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.55}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.muted{color:var(--muted)}.small{font-size:.875rem}.block{display:block}.error{color:var(--danger);margin:.5rem 0}.success{color:var(--success);margin:.5rem 0}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.shell{min-height:100dvh}.main{padding-bottom:calc(84px + env(safe-area-inset-bottom))}.page{max-width:680px;padding:calc(16px + env(safe-area-inset-top)) 20px 24px;margin:0 auto}.nav{z-index:10;background:var(--surface);border-top:1px solid var(--border);padding-bottom:env(safe-area-inset-bottom);grid-template-columns:repeat(4,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.nav-brand{display:none}.nav-link{color:var(--muted);flex-direction:column;align-items:center;gap:3px;padding:10px 0 8px;font-size:.8rem;text-decoration:none;display:flex}.nav-link svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:26px;height:26px}.nav-link.active{color:var(--green);font-weight:700}@media (width>=900px){.shell{grid-template-columns:220px 1fr;display:grid}.nav{border-top:0;border-right:1px solid var(--border);flex-direction:column;gap:4px;height:100dvh;padding:28px 14px;display:flex;position:sticky;top:0}.nav-brand{color:var(--accent);padding:0 12px 20px;font-size:1.15rem;font-weight:700;display:block}.nav-link{border-radius:12px;flex-direction:row;gap:12px;padding:10px 12px;font-size:1rem}.nav-link.active{background:var(--surface-2)}.main{padding-bottom:40px}.page{padding-top:40px}.page-top .brand{visibility:hidden}}.page-top{justify-content:space-between;align-items:baseline;gap:12px;font-size:.95rem;display:flex}.brand{color:var(--accent);font-weight:700}.brand.big{margin:0 0 1.5rem;font-size:1.8rem}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:28px;display:grid}.log-card{text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:18px;flex-direction:column;align-items:flex-start;gap:6px;min-height:96px;padding:18px 16px;transition:transform 80ms,border-color .15s;display:flex}.log-card:active{transform:scale(.98)}.log-card-name{overflow-wrap:anywhere;font-size:1.25rem;font-weight:700}.log-card-sub{color:var(--muted);font-size:.92rem}.section-title{margin:22px 0 10px;font-size:1.05rem;font-weight:700}.card{background:var(--surface);border:1px solid var(--border);border-radius:18px;overflow:hidden}.card.pad{padding:16px}.entry-list{margin:0;padding:0;list-style:none}.entry-list li+li .entry-row{border-top:1px solid var(--border)}.entry-row{text-align:left;background:0 0;border:0;grid-template-columns:52px minmax(0,1fr) auto;align-items:start;gap:12px;width:100%;padding:15px 16px;display:grid}.entry-row:hover{background:var(--accent-soft)}.entry-row.fresh{animation:2.5s ease-out fresh}@keyframes fresh{0%{background:var(--accent-soft)}to{background:0 0}}.entry-time{color:var(--muted);font-variant-numeric:tabular-nums;padding-top:1px}.entry-main{flex-direction:column;gap:3px;min-width:0;display:flex}.entry-name{font-weight:500}.entry-note{color:var(--muted);overflow-wrap:anywhere;font-size:.9rem}.entry-value{text-align:right;max-width:45vw}.empty-box{border:1.5px dashed var(--border);color:var(--muted);border-radius:18px;margin:0;padding:16px}.chips{scrollbar-width:none;gap:8px;margin:0 -20px;padding:4px 20px 8px;display:flex;overflow-x:auto}.chips::-webkit-scrollbar{display:none}.chip{background:var(--surface);border:1px solid var(--border);border-radius:999px;flex:none;padding:8px 16px}.chip.on{background:var(--green);border-color:var(--green);color:var(--bg);font-weight:700}.field{border:0;flex-direction:column;gap:6px;min-width:0;margin:0 0 14px;padding:0;display:flex}.field>span,.field>legend{color:var(--muted);margin-bottom:6px;padding:0;font-size:.92rem}.field input,.field textarea,.label-input input{border:1px solid var(--border);background:var(--surface);border-radius:14px;width:100%;padding:12px 14px;font-size:1rem}.field textarea{resize:vertical}.field-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.label-input{align-items:center;gap:10px;margin-bottom:8px;display:flex}.check{align-items:flex-start;gap:12px;margin:4px 0 14px;display:flex}.check input{width:22px;height:22px;accent-color:var(--accent);flex:none;margin-top:1px}.segmented{background:var(--surface-2);border-radius:14px;gap:4px;padding:4px;display:flex}.segmented button{color:var(--muted);background:0 0;border:0;border-radius:10px;flex:1;padding:10px 8px}.segmented button.on{background:var(--surface);color:var(--text);font-weight:700;box-shadow:0 1px 3px #00000014}.btn{background:0 0;border:1px solid #0000;border-radius:14px;padding:12px 18px;font-weight:500}.btn.small{padding:7px 12px;font-size:.9rem}.btn.wide{width:100%;margin-top:12px}.btn.primary{background:var(--accent);color:var(--bg)}.btn.ghost{border-color:var(--border);background:var(--surface)}.btn.danger-text{color:var(--danger);padding-left:0}.link-btn{color:var(--accent);background:0 0;border:0;padding:10px 0;font-size:1rem}.icon-btn{border:1px solid var(--border);background:var(--surface);border-radius:10px;width:36px;height:36px}.spacer{flex:1}.sheet-backdrop{z-index:30;background:var(--backdrop);justify-content:center;align-items:flex-end;animation:.15s ease-out fade;display:flex;position:fixed;inset:0}.sheet{background:var(--surface);width:100%;max-width:560px;max-height:92dvh;padding:10px 20px calc(16px + env(safe-area-inset-bottom));border-radius:26px 26px 0 0;animation:.2s ease-out rise;overflow-y:auto}@media (width>=900px){.sheet-backdrop{align-items:center}.sheet{border-radius:26px;padding-bottom:20px}}.sheet-handle{background:var(--border);border-radius:3px;width:44px;height:5px;margin:0 auto 16px}.sheet-title{margin:0 0 4px;font-size:1.6rem}.sheet-subtitle{color:var(--muted);margin:0 0 16px}.sheet-actions{align-items:center;gap:10px;margin-top:8px;display:flex}@keyframes fade{0%{opacity:0}}@keyframes rise{0%{opacity:.5;transform:translateY(40px)}}.rating-options{flex-direction:column;gap:10px;margin:8px 0 12px;display:flex}.rating-option{text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:16px;align-items:center;gap:16px;min-height:60px;padding:12px 16px;font-size:1.1rem;display:flex}.rating-option:active{transform:scale(.99)}.rating-option.selected{border:2px solid var(--accent);padding:11px 15px}.rating-num{background:var(--surface-2);border-radius:50%;flex:none;place-items:center;width:36px;height:36px;font-weight:700;display:inline-grid}.hint{color:var(--muted);margin:0 0 4px;font-size:.92rem}.toast{z-index:20;left:12px;right:12px;bottom:calc(80px + env(safe-area-inset-bottom));background:var(--toast-bg);max-width:560px;color:var(--toast-text);box-shadow:var(--shadow);border-radius:18px;align-items:center;gap:8px;margin:0 auto;padding:10px 10px 10px 18px;animation:.2s ease-out rise;display:flex;position:fixed}@media (width>=900px){.toast{bottom:24px;left:232px}}.toast-text{flex:1;min-width:0}.toast-btn{border:1px solid color-mix(in srgb, var(--toast-text) 35%, transparent);color:var(--toast-text);background:0 0;border-radius:12px;flex:none;padding:10px 14px;font-weight:500}.toast-btn.primary{background:var(--toast-text);color:var(--toast-bg);font-weight:700}section{margin-bottom:8px}.item-list{margin:0;padding:0;list-style:none}.item-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:14px 16px;display:flex}.item-row+.item-row{border-top:1px solid var(--border)}.item-row.is-hidden .item-name{color:var(--muted)}.item-info{flex-direction:column;flex:160px;gap:2px;min-width:0;display:flex}.item-name{font-weight:700}.item-actions{align-items:center;gap:6px;display:flex}.login{place-items:center;min-height:100dvh;padding:20px;display:grid}.login-card{width:100%;max-width:380px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}:root{--event-bg:#eef1e6;--event-border:#d3dcc2;--sleep-bg:#efe6dc;--sleep-border:#e0d2c2}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--event-bg:#262b1f;--event-border:#3a4330;--sleep-bg:#2e2620;--sleep-border:#463a30}}:root[data-theme=dark]{--event-bg:#262b1f;--event-border:#3a4330;--sleep-bg:#2e2620;--sleep-border:#463a30}.log-card.kind-medication,.log-card.kind-event{background:var(--event-bg);border-color:var(--event-border)}.log-card.kind-sleep{background:var(--sleep-bg);border-color:var(--sleep-border);flex-direction:row;grid-column:1/-1;justify-content:space-between;align-items:center;min-height:72px}.log-card.kind-sleep .log-card-sub{text-align:right}.sleep-summary{color:var(--green);margin:-4px 0 14px;font-weight:500}.quality-row{grid-template-columns:repeat(5,1fr);gap:8px;margin-bottom:6px;display:grid}.quality-btn{border:1px solid var(--border);background:var(--surface);border-radius:14px;min-height:48px;font-size:1.1rem;font-weight:700}.quality-btn.on{border:2px solid var(--accent);background:var(--accent-soft)}.add-row{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px;display:grid}.add-row .btn{white-space:nowrap;padding:12px 4px;font-size:.92rem}.kind-tag{background:var(--surface-2);color:var(--muted);vertical-align:2px;border-radius:999px;padding:2px 8px;font-size:.72rem;font-weight:500;display:inline-block}.sub-title{margin:18px 0 4px;font-size:.98rem}.no-top{margin-top:0}.btn.danger{background:var(--danger);color:var(--bg)}.btn.small.danger-text{padding-left:8px}.med-group{background:var(--event-bg);border:1px solid var(--event-border);border-radius:18px;grid-column:1/-1;overflow:hidden}.med-head{text-align:left;background:0 0;border:0;grid-template-rows:auto auto;grid-template-columns:1fr auto;align-items:center;gap:6px 12px;width:100%;min-height:72px;padding:18px 16px;display:grid}.med-head .log-card-sub{grid-column:1}.chevron{fill:none;width:24px;height:24px;stroke:var(--muted);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;grid-area:1/2/span 2;transition:transform .15s}.med-group.open .chevron{transform:rotate(180deg)}.med-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0 12px 12px;display:grid}.med-btn{text-align:left;background:var(--surface);border:1px solid var(--event-border);border-radius:14px;flex-direction:column;align-items:flex-start;gap:4px;min-height:72px;padding:14px;display:flex}.med-btn:active{transform:scale(.98)}.med-name{overflow-wrap:anywhere;font-size:1.08rem;font-weight:700}:root{--k-rating:#a8623a;--k-rating-bg:#f6e8dc;--k-med:#557535;--k-med-bg:#e6eed9;--k-event:#a77a22;--k-event-bg:#f5ead2;--k-sleep:#5d5a91;--k-sleep-bg:#e7e5f2;--sleep-grad:linear-gradient(120deg, #ebe8f4 0%, #f3ece4 100%);--card-shadow:0 1px 2px #2b241d0d, 0 4px 14px #2b241d0d;--tone-0:#ece6dc;--tone-1:#dde8cf;--tone-2:#ebebd0;--tone-3:#f4e2c4;--tone-4:#f2cfb6;--tone-5:#ecbba6}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--k-rating:#e3a479;--k-rating-bg:#3a2a20;--k-med:#a9c983;--k-med-bg:#2a3322;--k-event:#e0b864;--k-event-bg:#3a3020;--k-sleep:#b3afe8;--k-sleep-bg:#2c2a44;--sleep-grad:linear-gradient(120deg, #2a2840 0%, #2c2620 100%);--card-shadow:0 1px 2px #0000004d;--tone-0:#34302a;--tone-1:#2f3a26;--tone-2:#3a3a26;--tone-3:#45391f;--tone-4:#4a3324;--tone-5:#512c25}}:root[data-theme=dark]{--k-rating:#e3a479;--k-rating-bg:#3a2a20;--k-med:#a9c983;--k-med-bg:#2a3322;--k-event:#e0b864;--k-event-bg:#3a3020;--k-sleep:#b3afe8;--k-sleep-bg:#2c2a44;--sleep-grad:linear-gradient(120deg, #2a2840 0%, #2c2620 100%);--card-shadow:0 1px 2px #0000004d;--tone-0:#34302a;--tone-1:#2f3a26;--tone-2:#3a3a26;--tone-3:#45391f;--tone-4:#4a3324;--tone-5:#512c25}.greeting{margin-bottom:.15rem}.lede{color:var(--muted);margin:0 0 1.2rem;font-size:1.05rem}.log-card,.log-card.kind-medication,.log-card.kind-event,.med-group{background:var(--surface);box-shadow:var(--card-shadow);border-color:#0000}.log-card{gap:4px;padding:14px 16px 16px}.log-card:hover{border-color:var(--border)}.card-top{justify-content:space-between;align-items:center;width:100%;margin-bottom:6px;display:flex}.kind-icon{border-radius:11px;place-items:center;width:34px;height:34px;display:inline-grid}.kind-icon svg{fill:none;stroke:currentColor;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.k-rating{color:var(--k-rating);background:var(--k-rating-bg)}.k-medication{color:var(--k-med);background:var(--k-med-bg)}.k-event{color:var(--k-event);background:var(--k-event-bg)}.k-sleep{color:var(--k-sleep);background:var(--k-sleep-bg)}.tick{background:var(--green);width:22px;height:22px;color:var(--bg);border-radius:50%;place-items:center;animation:.25s ease-out tick-in;display:inline-grid}.tick svg{fill:none;stroke:currentColor;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px}@keyframes tick-in{0%{opacity:0;transform:scale(.3)}}.log-card.kind-sleep{background:var(--sleep-grad);border-color:#0000;grid-template-columns:auto 1fr auto;grid-template-areas:"icon name sub";align-items:center;gap:14px;display:grid}.log-card.kind-sleep .card-top{grid-area:icon;gap:8px;width:auto;margin:0}.log-card.kind-sleep .log-card-name{grid-area:name}.log-card.kind-sleep .log-card-sub{grid-area:sub}.log-card.kind-sleep .kind-icon{background:var(--surface)}.med-head{grid-template-rows:auto auto auto;row-gap:4px;padding:14px 16px 16px}.med-head .card-top,.med-head .log-card-name{grid-column:1}.chevron{grid-row:1/span 3}.med-btn{border-color:var(--border);background:var(--bg)}.med-name{justify-content:space-between;align-items:center;gap:8px;width:100%;display:flex}.pop{animation:.45s ease-out pop}@keyframes pop{0%{transform:scale(1)}35%{box-shadow:0 0 0 3px color-mix(in srgb, var(--green) 35%, transparent);transform:scale(1.035)}to{transform:scale(1)}}.rating-num.tone-0{background:var(--tone-0)}.rating-num.tone-1{background:var(--tone-1)}.rating-num.tone-2{background:var(--tone-2)}.rating-num.tone-3{background:var(--tone-3)}.rating-num.tone-4{background:var(--tone-4)}.rating-num.tone-5{background:var(--tone-5)}.rating-option{box-shadow:var(--card-shadow);border-color:#0000}.rating-option:hover{border-color:var(--border)}.card{box-shadow:var(--card-shadow);border-color:#0000}.nav-link svg{border-radius:999px;width:54px;height:32px;padding:3px 14px;transition:background .15s}.nav-link.active svg{background:var(--k-med-bg)}@media (width>=900px){.nav-link svg{width:24px;height:24px;padding:0}.nav-link.active{background:var(--k-med-bg)}.nav-link.active svg{background:0 0}}
