:root{--md-sys-color-primary:#000;--md-sys-color-on-primary:#e2e2e2;--md-sys-color-primary-container:#3b3b3b;--md-sys-color-on-primary-container:#fff;--md-sys-color-secondary:#000;--md-sys-color-on-secondary:#e2e2e2;--md-sys-color-secondary-container:#3b3b3b;--md-sys-color-on-secondary-container:#fff;--md-sys-color-tertiary:#000;--md-sys-color-on-tertiary:#e2e2e2;--md-sys-color-tertiary-container:#3b3b3b;--md-sys-color-on-tertiary-container:#fff;--md-sys-color-error:#ba1a1a;--md-sys-color-on-error:#fff;--md-sys-color-error-container:#ffdad6;--md-sys-color-on-error-container:#410002;--md-sys-color-surface:#f9f9f9;--md-sys-color-surface-dim:#dadada;--md-sys-color-surface-bright:#f9f9f9;--md-sys-color-surface-container-lowest:#fff;--md-sys-color-surface-container-low:#f3f3f3;--md-sys-color-surface-container:#eee;--md-sys-color-surface-container-high:#e8e8e8;--md-sys-color-surface-container-highest:#e2e2e2;--md-sys-color-on-surface:#1b1b1b;--md-sys-color-on-surface-variant:#474747;--md-sys-color-outline:#777;--md-sys-color-outline-variant:#c6c6c6;--md-sys-color-inverse-surface:#303030;--md-sys-color-inverse-on-surface:#f1f1f1;--md-sys-color-scrim:#000;--md-sys-color-shadow:#000}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--md-sys-color-primary:#fff;--md-sys-color-on-primary:#1b1b1b;--md-sys-color-primary-container:#d4d4d4;--md-sys-color-on-primary-container:#000;--md-sys-color-secondary:#fff;--md-sys-color-on-secondary:#1b1b1b;--md-sys-color-secondary-container:#d4d4d4;--md-sys-color-on-secondary-container:#000;--md-sys-color-tertiary:#fff;--md-sys-color-on-tertiary:#1b1b1b;--md-sys-color-tertiary-container:#d4d4d4;--md-sys-color-on-tertiary-container:#000;--md-sys-color-error:#ffb4ab;--md-sys-color-on-error:#690005;--md-sys-color-error-container:#93000a;--md-sys-color-on-error-container:#ffdad6;--md-sys-color-surface:#131313;--md-sys-color-surface-dim:#131313;--md-sys-color-surface-bright:#393939;--md-sys-color-surface-container-lowest:#0e0e0e;--md-sys-color-surface-container-low:#1b1b1b;--md-sys-color-surface-container:#1f1f1f;--md-sys-color-surface-container-high:#2a2a2a;--md-sys-color-surface-container-highest:#353535;--md-sys-color-on-surface:#e2e2e2;--md-sys-color-on-surface-variant:#c6c6c6;--md-sys-color-outline:#919191;--md-sys-color-outline-variant:#474747;--md-sys-color-inverse-surface:#e2e2e2;--md-sys-color-inverse-on-surface:#303030;--md-sys-color-scrim:#000;--md-sys-color-shadow:#000}}html[data-theme=dark]{--md-sys-color-primary:#fff;--md-sys-color-on-primary:#1b1b1b;--md-sys-color-primary-container:#d4d4d4;--md-sys-color-on-primary-container:#000;--md-sys-color-secondary:#fff;--md-sys-color-on-secondary:#1b1b1b;--md-sys-color-secondary-container:#d4d4d4;--md-sys-color-on-secondary-container:#000;--md-sys-color-tertiary:#fff;--md-sys-color-on-tertiary:#1b1b1b;--md-sys-color-tertiary-container:#d4d4d4;--md-sys-color-on-tertiary-container:#000;--md-sys-color-error:#ffb4ab;--md-sys-color-on-error:#690005;--md-sys-color-error-container:#93000a;--md-sys-color-on-error-container:#ffdad6;--md-sys-color-surface:#131313;--md-sys-color-surface-dim:#131313;--md-sys-color-surface-bright:#393939;--md-sys-color-surface-container-lowest:#0e0e0e;--md-sys-color-surface-container-low:#1b1b1b;--md-sys-color-surface-container:#1f1f1f;--md-sys-color-surface-container-high:#2a2a2a;--md-sys-color-surface-container-highest:#353535;--md-sys-color-on-surface:#e2e2e2;--md-sys-color-on-surface-variant:#c6c6c6;--md-sys-color-outline:#919191;--md-sys-color-outline-variant:#474747;--md-sys-color-inverse-surface:#e2e2e2;--md-sys-color-inverse-on-surface:#303030;--md-sys-color-scrim:#000;--md-sys-color-shadow:#000}html[data-theme=light]{--md-sys-color-primary:#000;--md-sys-color-on-primary:#e2e2e2;--md-sys-color-primary-container:#3b3b3b;--md-sys-color-on-primary-container:#fff;--md-sys-color-secondary:#000;--md-sys-color-on-secondary:#e2e2e2;--md-sys-color-secondary-container:#3b3b3b;--md-sys-color-on-secondary-container:#fff;--md-sys-color-tertiary:#000;--md-sys-color-on-tertiary:#e2e2e2;--md-sys-color-tertiary-container:#3b3b3b;--md-sys-color-on-tertiary-container:#fff;--md-sys-color-error:#ba1a1a;--md-sys-color-on-error:#fff;--md-sys-color-error-container:#ffdad6;--md-sys-color-on-error-container:#410002;--md-sys-color-surface:#f9f9f9;--md-sys-color-surface-dim:#dadada;--md-sys-color-surface-bright:#f9f9f9;--md-sys-color-surface-container-lowest:#fff;--md-sys-color-surface-container-low:#f3f3f3;--md-sys-color-surface-container:#eee;--md-sys-color-surface-container-high:#e8e8e8;--md-sys-color-surface-container-highest:#e2e2e2;--md-sys-color-on-surface:#1b1b1b;--md-sys-color-on-surface-variant:#474747;--md-sys-color-outline:#777;--md-sys-color-outline-variant:#c6c6c6;--md-sys-color-inverse-surface:#303030;--md-sys-color-inverse-on-surface:#f1f1f1;--md-sys-color-scrim:#000;--md-sys-color-shadow:#000}:root{--md-sys-shape-corner-small:8px;--md-sys-shape-corner-medium:12px;--md-sys-shape-corner-large:16px;--md-sys-shape-corner-large-increased:20px;--md-sys-shape-corner-extra-large:28px;--md-sys-shape-corner-full:999px;--md-sys-typescale-body-medium-size:14px;--md-sys-typescale-body-large-size:16px;--md-sys-typescale-title-small-size:14px;--md-sys-typescale-title-small-weight:600;--md-sys-typescale-title-medium-size:16px;--md-sys-typescale-title-medium-weight:600;--md-sys-typescale-label-small-size:11px;--md-sys-typescale-label-medium-size:12px;--md-sys-typescale-label-large-size:14px;--md-sys-state-hover-opacity:.08;--md-sys-state-pressed-opacity:.1;--md-sys-state-focus-opacity:.1;--ns-pill-fill:#f4a0c2;--ns-pill-stroke:#d47ba3}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{background:var(--md-sys-color-surface);color:var(--md-sys-color-on-surface);min-height:100dvh;padding:1rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}#app-stack{flex-direction:column;gap:.75rem;max-width:480px;margin:0 auto;padding-bottom:8.2rem;display:flex}.card{background:var(--md-sys-color-surface-container-low);border-radius:var(--md-sys-shape-corner-large-increased);border:none;flex-direction:column;gap:.5rem;padding:1.125rem;animation:.2s slide-in;display:flex}@keyframes slide-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.card-title{color:var(--md-sys-color-on-surface);font-size:1rem;font-weight:600}.card-body{color:var(--md-sys-color-on-surface-variant);white-space:pre-wrap;font-size:.9rem;line-height:1.5}.card-footer{justify-content:space-between;align-items:center;margin-top:.25rem;display:flex}.card-time{color:var(--md-sys-color-outline);font-size:.75rem}.btn-dismiss,.btn-snooze{border-radius:var(--md-sys-shape-corner-full);cursor:pointer;background:0 0;border:none;padding:.5rem .75rem;font-size:.8rem;font-weight:600;transition:background .15s,color .15s}.btn-snooze{color:var(--md-sys-color-tertiary)}.btn-snooze:hover,.btn-snooze:active{background:var(--md-sys-color-tertiary-container)}.btn-dismiss{color:var(--md-sys-color-error)}.btn-dismiss:hover,.btn-dismiss:active{background:var(--md-sys-color-error-container)}.snooze-picker{flex-wrap:wrap;gap:.4rem;display:flex}.snooze-duration{background:var(--md-sys-color-secondary-container);color:var(--md-sys-color-on-secondary-container);border-radius:var(--md-sys-shape-corner-full);cursor:pointer;border:none;padding:.3rem .8rem;font-size:.75rem;font-weight:500}.empty{text-align:center;color:var(--md-sys-color-outline);margin-top:3rem;font-size:.9rem}.card.snoozed{background:var(--md-sys-color-surface);border:1px solid var(--md-sys-color-outline-variant);opacity:.8}.card.snoozed .card-title,.card.snoozed .card-body{color:var(--md-sys-color-on-surface-variant)}.snooze-label{color:var(--md-sys-color-tertiary);margin-bottom:.25rem;font-size:.75rem}.stack-divider{color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-title-small-size);font-weight:var(--md-sys-typescale-title-small-weight);text-transform:uppercase;letter-spacing:.06em;align-items:center;gap:.75rem;margin:.25rem 0;display:flex}.stack-divider:before,.stack-divider:after{content:"";background:var(--md-sys-color-outline-variant);flex:1;height:1px}.question-card{border-color:color-mix(in srgb, var(--md-sys-color-primary) 27%, transparent)}.response-buttons{flex-wrap:wrap;gap:.4rem;margin-top:.25rem;display:flex}.btn-answer{background:var(--md-sys-color-secondary-container);color:var(--md-sys-color-on-secondary-container);border-radius:var(--md-sys-shape-corner-full);cursor:pointer;border:none;flex:1;padding:.5rem .9rem;font-size:.85rem;font-weight:500;transition:background .15s}.btn-answer:hover{background:color-mix(in srgb, var(--md-sys-color-primary) 22%, var(--md-sys-color-secondary-container))}.btn-answer-yes:hover{background:color-mix(in srgb, var(--md-sys-color-primary) 30%, var(--md-sys-color-secondary-container))}.btn-answer-no:hover{background:var(--md-sys-color-error-container);color:var(--md-sys-color-on-error-container)}.freeform-input{gap:.5rem;margin-top:.25rem;display:flex}.freeform-field{background:var(--md-sys-color-surface-container-lowest);border:1px solid var(--md-sys-color-outline);border-radius:var(--md-sys-shape-corner-small);color:var(--md-sys-color-on-surface);outline:none;flex:1;padding:.5rem .75rem;font-family:inherit;font-size:.875rem}.freeform-field:focus{border-color:var(--md-sys-color-primary);border-width:2px;padding:.5rem calc(.75rem - 1px)}.chart-wrap{flex-direction:column;gap:.5rem;margin-top:.5rem;display:flex}.chart-label{color:var(--md-sys-color-outline);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem;font-size:.7rem}.banner{background:var(--md-sys-color-tertiary-container);border-radius:var(--md-sys-shape-corner-large-increased);border:none;justify-content:space-between;align-items:center;gap:1rem;max-width:480px;margin:.75rem auto 0;padding:.875rem 1rem;display:flex}.banner span{color:var(--md-sys-color-on-tertiary-container);font-size:.85rem}.banner-actions{align-items:center;gap:.5rem;display:flex}.banner-enable{background:var(--md-sys-color-tertiary);border-radius:var(--md-sys-shape-corner-full);color:var(--md-sys-color-on-tertiary);cursor:pointer;white-space:nowrap;border:none;padding:.5rem 1rem;font-size:.8rem;font-weight:600}.banner-enable:disabled{opacity:.6}.banner-dismiss{color:var(--md-sys-color-on-tertiary-container);cursor:pointer;background:0 0;border:none;padding:.25rem;font-size:.8rem;line-height:1}.app-header{z-index:5;background:color-mix(in srgb, var(--md-sys-color-surface) 92%, transparent);-webkit-backdrop-filter:blur(10px);justify-content:space-between;align-items:center;max-width:480px;margin:0 auto;padding:.5rem .25rem;display:flex;position:sticky;top:0}.loc-wrap{position:relative}.loc-btn{background:var(--md-sys-color-surface-container-high);color:var(--md-sys-color-on-surface);border-radius:var(--md-sys-shape-corner-full);cursor:pointer;border:none;align-items:center;gap:.4rem;padding:.5rem .9rem;font-size:.875rem;font-weight:600;display:flex}.loc-btn:active{background:var(--md-sys-color-secondary-container)}.loc-btn .caret{color:var(--md-sys-color-on-surface-variant);font-size:.7rem}.loc-menu{background:var(--md-sys-color-surface-container-high);border-radius:var(--md-sys-shape-corner-large-increased);z-index:10;border:none;flex-direction:column;min-width:11rem;padding:.4rem;display:flex;position:absolute;top:2.75rem;left:0;box-shadow:0 4px 16px #00000040}.loc-item{color:var(--md-sys-color-on-surface);text-align:left;border-radius:var(--md-sys-shape-corner-large);cursor:pointer;background:0 0;border:none;padding:.6rem .85rem;font-size:.9rem}.loc-item:hover,.loc-item:active{background:var(--md-sys-color-surface-container-highest)}.loc-item.active{color:var(--md-sys-color-on-primary-container);background:var(--md-sys-color-primary-container);font-weight:600}.scheme-row{border-top:1px solid var(--md-sys-color-outline-variant);gap:.2rem;margin-top:.4rem;padding-top:.4rem;display:flex}.scheme-seg{color:var(--md-sys-color-on-surface-variant);border-radius:var(--md-sys-shape-corner-full);cursor:pointer;background:0 0;border:none;flex:1;padding:.4rem 0;font-size:.75rem;font-weight:600}.scheme-seg.active{background:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container)}.header-status{color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-label-medium-size);font-weight:500}.dock{z-index:6;pointer-events:none;justify-content:center;display:flex;position:fixed;bottom:0;left:0;right:0}.dock-inner{pointer-events:auto;background:var(--md-sys-color-surface-container-high);border-radius:var(--md-sys-shape-corner-extra-large);width:calc(100% - 1.25rem);max-width:460px;padding:.6rem .6rem calc(.6rem + env(safe-area-inset-bottom,0));flex-direction:column;gap:.4rem;margin-bottom:.6rem;display:flex;box-shadow:0 6px 20px #00000040}.dock-row{gap:.4rem;display:flex}.grp{border-radius:var(--md-sys-shape-corner-large-increased);background:var(--md-sys-color-surface-container-highest);gap:.25rem;padding:.25rem;display:flex}.grp.intake,.grp.symptoms,.grp.activity{flex:1}.ebtn{background:var(--md-sys-color-surface-container-lowest);border-radius:var(--md-sys-shape-corner-medium);cursor:pointer;width:44px;min-width:40px;height:44px;color:var(--md-sys-color-on-surface);border:none;flex:1;justify-content:center;align-items:center;font-size:1.2rem;line-height:1;display:flex;position:relative}.ebtn:active{background:var(--md-sys-color-primary-container)}.ebtn:disabled{opacity:.6;cursor:default}.ebtn.logged{background:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary)}.ebtn.logged:after{content:"✓";color:var(--md-sys-color-on-primary);font-size:9px;font-weight:700;position:absolute;top:2px;right:3px}.water-wrap{flex:1;display:flex;position:relative}.water-quick{background:var(--md-sys-color-surface-container-high);border-radius:var(--md-sys-shape-corner-large-increased);z-index:8;white-space:nowrap;border:none;gap:.4rem;padding:.4rem;display:flex;position:absolute;bottom:52px;left:0;box-shadow:0 4px 16px #00000047}.water-quick button{background:var(--md-sys-color-primary-container);border-radius:var(--md-sys-shape-corner-medium);color:var(--md-sys-color-on-primary-container);cursor:pointer;border:none;padding:.55rem .75rem;font-size:.8rem;font-weight:600}.water-quick button:active{background:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary)}.dock-hint{text-align:center;color:var(--md-sys-color-on-surface-variant);letter-spacing:.03em;margin-top:1px;font-size:.6rem}.tracker-card{background:var(--md-sys-color-secondary-container);border:none}.tracker-card .card-title{color:var(--md-sys-color-on-secondary-container)}.tracker-buttons{flex-wrap:wrap;gap:.5rem;margin-top:.25rem;display:flex}.btn-tracker{color:var(--md-sys-color-on-secondary-container);border-radius:var(--md-sys-shape-corner-full);cursor:pointer;background:#ffffff8c;border:none;padding:.45rem 1rem;font-size:.875rem;font-weight:500;transition:background .15s}.btn-tracker:hover{background:#fff6}.btn-tracker:active{background:var(--md-sys-color-secondary);color:var(--md-sys-color-on-secondary)}#setup{flex-direction:column;gap:1rem;max-width:480px;margin:4rem auto 0;display:flex}#setup h1{color:var(--md-sys-color-on-surface);font-size:1.1rem;font-weight:600}#setup p{color:var(--md-sys-color-on-surface-variant);font-size:.875rem;line-height:1.5}#setup input{background:var(--md-sys-color-surface-container-low);border:1px solid var(--md-sys-color-outline);border-radius:var(--md-sys-shape-corner-small);width:100%;color:var(--md-sys-color-on-surface);outline:none;padding:.75rem;font-family:monospace;font-size:.875rem}#setup input:focus{border-color:var(--md-sys-color-primary);border-width:2px;padding:calc(.75rem - 1px)}#setup button{background:var(--md-sys-color-primary);border-radius:var(--md-sys-shape-corner-full);color:var(--md-sys-color-on-primary);cursor:pointer;border:none;padding:.75rem;font-size:.9rem;font-weight:600}#setup button:disabled{opacity:.5}.error{color:var(--md-sys-color-error);font-size:.8rem}.overlay-backdrop{background:color-mix(in srgb, var(--md-sys-color-scrim) 70%, transparent);z-index:50;flex-direction:column;display:flex;position:fixed;inset:0}.overlay-content{background:var(--md-sys-color-surface);flex:1;width:100%;max-width:480px;margin:0 auto;padding:1rem;overflow-y:auto}.overlay-close{background:var(--md-sys-color-surface-container-high);color:var(--md-sys-color-on-surface);border-radius:var(--md-sys-shape-corner-full);cursor:pointer;border:none;align-self:flex-end;width:2.25rem;height:2.25rem;font-size:1.1rem;position:sticky;top:0}
