:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--accent:#2563eb;font-family:system-ui,-apple-system,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--accent:#3b82f6}}body{justify-content:center;min-height:100dvh;margin:0;display:flex}main{width:100%;max-width:28rem;padding:1.25rem 1.25rem 2rem;padding-top:calc(1.25rem + env(safe-area-inset-top))}main.with-tabs{padding-bottom:calc(5.5rem + env(safe-area-inset-bottom))}h1{letter-spacing:-.02em;margin:0 0 1.25rem;font-size:1.35rem;font-weight:700}.checks{flex-direction:column;gap:.5rem;padding:0;list-style:none;display:flex}.status{background:color-mix(in srgb, currentColor 12%, transparent);border-radius:.5rem;padding:.75rem 1rem}.up{color:#15803d}.down{color:#b91c1c}.muted{opacity:.6}form{flex-direction:column;gap:.75rem;display:flex}h2{margin:0;font-size:1.15rem;font-weight:600}input{font:inherit;border:1px solid color-mix(in srgb, currentColor 30%, transparent);color:inherit;background:0 0;border-radius:.5rem;padding:.75rem 1rem}button{font:inherit;background:var(--accent);color:#fff;cursor:pointer;-webkit-tap-highlight-color:transparent;border:none;border-radius:.5rem;padding:.75rem 1rem;font-weight:600}button:disabled{opacity:.6}button.secondary{background:color-mix(in srgb, currentColor 12%, transparent);color:inherit;font-weight:400}button.small{padding:.4rem .7rem;font-size:.85rem}.row{flex-direction:row;gap:.5rem;display:flex}.row input{flex:1;min-width:0}.item{background:color-mix(in srgb, currentColor 7%, transparent);border-radius:.5rem;flex-direction:column;gap:.5rem;padding:.75rem 1rem;display:flex}.item-text{overflow-wrap:anywhere;flex-direction:column;display:flex}footer{flex-direction:column;gap:.75rem;margin-top:2.5rem;display:flex}section{margin-bottom:2rem}select{font:inherit;border:1px solid color-mix(in srgb, currentColor 30%, transparent);min-width:0;color:inherit;background:0 0;border-radius:.5rem;flex:1;padding:.65rem .75rem}.goals{flex-direction:column;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.goals .row{justify-content:space-between;align-items:center}.goal-title{overflow-wrap:anywhere}label.muted{flex-direction:column;gap:.25rem;font-size:.9rem;display:flex}.row.wrap{flex-wrap:wrap}.schedule-summary{font-size:.85rem;display:block}.schedule-editor{background:color-mix(in srgb, currentColor 6%, transparent);border-radius:.5rem;flex-direction:column;gap:.5rem;margin-top:.5rem;padding:.75rem;display:flex}.schedule-editor p{margin:0;font-size:.85rem}button.day{background:color-mix(in srgb, currentColor 12%, transparent);color:inherit;padding:.4rem .6rem;font-size:.85rem;font-weight:400}button.day.active{background:var(--accent);color:#fff;font-weight:600}.check-in{margin-top:.5rem}button.choice{background:color-mix(in srgb, currentColor 12%, transparent);color:inherit;flex:1;font-weight:400}button.choice.active{color:#fff;background:#15803d;font-weight:600}button.choice.active-down{color:#fff;background:#b91c1c;font-weight:600}button.secondary.up{color:#15803d}button.secondary.down{color:#b91c1c}textarea{font:inherit;border:1px solid color-mix(in srgb, currentColor 30%, transparent);color:inherit;resize:vertical;background:0 0;border-radius:.5rem;padding:.75rem 1rem}.reflection-text{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.past-reflections{margin-top:.75rem}.progress-goal{flex-direction:column;gap:.25rem;display:flex}.bar{background:color-mix(in srgb, currentColor 12%, transparent);border-radius:.25rem;height:.5rem;overflow:hidden}.bar-fill{background:#b91c1c;border-radius:.25rem;height:100%;transition:width .3s}.bar-fill.good{background:#15803d}.tabs{padding:.4rem .75rem calc(.4rem + env(safe-area-inset-bottom));background:color-mix(in srgb, canvas 82%, transparent);-webkit-backdrop-filter:blur(12px);border-top:1px solid color-mix(in srgb, currentColor 12%, transparent);justify-content:center;gap:.25rem;display:flex;position:fixed;bottom:0;left:0;right:0}.tabs button{max-width:9rem;color:inherit;opacity:.55;background:0 0;flex-direction:column;flex:1;align-items:center;gap:.1rem;padding:.35rem .5rem;font-size:.75rem;font-weight:500;display:flex}.tabs button span{font-size:1.15rem}.tabs button.active{opacity:1;color:var(--accent);font-weight:700}.health-line{opacity:.55;margin:0;font-size:.8rem}.health-line.down{color:#b91c1c;opacity:1}@media (prefers-color-scheme:dark){.up{color:#4ade80}.down{color:#f87171}}
