:root{--bg:#f6f3ee;--card:#fff;--text:#1f2328;--muted:#6b6f76;--border:#e4dfd6;--accent:#2f7d6d;--accent-text:#fff;--danger:#c0392b;--radius:14px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;-webkit-text-size-adjust:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:18px;line-height:1.45}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#16181b;--card:#212428;--text:#ecebe8;--muted:#9da1a8;--border:#33373d;--accent:#4fb39d;--accent-text:#0e1513;--danger:#ff7262}}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);margin:0}body{min-height:100dvh;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}main{max-width:640px;margin:0 auto;padding:0 16px 32px}h1{margin:0 0 .5rem;font-size:1.6rem}h2{margin:0 0 .75rem;font-size:1.25rem}h3{margin:1.25rem 0 .5rem;font-size:1.05rem}p{margin:0 0 1rem}.topbar{justify-content:space-between;align-items:center;max-width:640px;margin:0 auto;padding:12px 16px;display:flex}.brand{color:var(--text);align-items:center;gap:8px;font-weight:700;text-decoration:none;display:flex}.topbar-link{color:var(--muted);text-decoration:none}.center{justify-content:center;align-items:center;min-height:100dvh;padding:16px;display:flex}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:16px;padding:20px}.card.narrow{text-align:center;width:100%;max-width:420px}.hero-icon{margin-bottom:8px}button{font:inherit;cursor:pointer;border:1px solid #0000;border-radius:12px;min-height:48px;padding:12px 18px}button:disabled{opacity:.6;cursor:default}button.primary{background:var(--accent);color:var(--accent-text);font-weight:600}button.secondary{color:var(--accent);border-color:var(--accent);background:0 0}button.big{width:100%;min-height:56px;margin:8px 0 12px;font-size:1.1rem}button.link{color:var(--accent);white-space:nowrap;background:0 0;min-height:0;padding:6px 4px}button.danger,.danger{color:var(--danger)}input:not([type=checkbox]){font:inherit;border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text);border-radius:12px;margin-bottom:12px;padding:12px 14px}.checkbox{text-align:left;align-items:center;gap:10px;margin-bottom:12px;display:flex}.checkbox input{width:22px;height:22px}.list{margin:0 0 16px;padding:0;list-style:none}.list li{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.list li:last-child{border-bottom:none}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.row.tight{flex-wrap:nowrap;gap:4px}.badge{background:var(--accent);color:var(--accent-text);vertical-align:middle;border-radius:999px;margin-left:8px;padding:2px 8px;font-size:.7rem;display:inline-block}.share-box{background:var(--bg);border-radius:12px;margin-bottom:8px;padding:16px}.muted{color:var(--muted)}.small{font-size:.85rem}.error{color:var(--danger);margin-top:8px}.button-link{background:var(--accent);color:var(--accent-text);border-radius:12px;padding:12px 18px;font-weight:600;text-decoration:none;display:inline-block}.button-link.secondary-link{color:var(--accent);border:1px solid var(--accent);background:0 0}a{color:var(--accent)}:root{--ok:#2e8b57;--warn:#c77700;--overdue:#c0392b;--ok-bg:#e5f4ec;--wait-bg:#fdecea}@media (prefers-color-scheme:dark){:root{--ok:#5fd08f;--warn:#f0a640;--overdue:#ff7262;--ok-bg:#1d3327;--wait-bg:#3a2220}}.page-title{margin:4px 0 12px;font-size:1.35rem}.dose-group{margin-bottom:18px}.group-time{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin:0 0 6px 4px;font-size:.95rem}.card.flush{padding:0;overflow:hidden}.dose-row{text-align:left;width:100%;color:var(--text);border:none;border-bottom:1px solid var(--border);background:0 0;border-left:5px solid #0000;border-radius:0;align-items:center;gap:12px;min-height:64px;padding:14px 16px;display:flex}.dose-row:last-child{border-bottom:none}.dose-row:active{background:var(--bg)}.dose-row.due{border-left-color:var(--warn)}.dose-row.overdue{border-left-color:var(--overdue)}.dose-row.taken{border-left-color:var(--ok)}.dose-row.taken .dose-name,.dose-row.skipped .dose-name{color:var(--muted)}.dose-row.prn-ok{border-left-color:var(--ok)}.dose-row.prn-wait{border-left-color:var(--overdue)}.dose-main{flex:1;min-width:0}.dose-name{font-size:1.05rem;font-weight:600}.status{text-align:right;max-width:45%;font-size:.85rem;font-weight:600}.status.taken,.status.ok{color:var(--ok)}.status.skipped,.status.upcoming{color:var(--muted);font-weight:500}.status.due{color:var(--warn)}.status.overdue,.status.wait{color:var(--overdue)}.prn-banner{border-radius:12px;padding:12px 14px;font-weight:600}.prn-banner.ok{background:var(--ok-bg);color:var(--ok)}.prn-banner.wait{background:var(--wait-bg);color:var(--overdue)}.logged{font-weight:600}.logged.taken{color:var(--ok)}.logged.skipped{color:var(--muted)}.note{font-style:italic}.sheet-backdrop{z-index:10;background:#0006;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{background:var(--card);width:100%;max-width:640px;max-height:90dvh;padding:20px 16px calc(16px + env(safe-area-inset-bottom));border-radius:20px 20px 0 0;overflow-y:auto}.sheet h2{margin-bottom:4px}button.wide{width:100%;margin-bottom:8px}button.close{margin:8px auto 0;display:block}.danger-outline{color:var(--danger);border-color:var(--danger)}.row.stretch>*{flex:1}.field{text-align:left;color:var(--muted);margin-bottom:4px;font-size:.9rem;display:block}.field input,.field textarea{color:var(--text);margin-top:4px}.field.inline{justify-content:space-between;align-items:center;margin:8px 0 12px;display:flex}textarea{font:inherit;border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text);border-radius:12px;margin-bottom:12px;padding:12px 14px}.stepper{color:var(--text);align-items:center;gap:14px;font-size:1.1rem;font-weight:600;display:flex}.stepper button{min-width:48px;padding:8px}.segmented{border:1px solid var(--accent);border-radius:12px;margin:8px 0 16px;display:flex;overflow:hidden}.segmented button{color:var(--accent);background:0 0;border-radius:0;flex:1}.segmented button.on{background:var(--accent);color:var(--accent-text);font-weight:600}.presets{margin-bottom:10px}.small-btn{min-height:36px;padding:4px 12px}.time-row{align-items:center;gap:8px;margin-bottom:8px;display:flex}.time-row input{margin-bottom:0}.time-row input[type=number]{text-align:center;flex:none;width:64px;padding:12px 8px}.time-row input[type=time]{flex:1;min-width:0}.time-row span{white-space:nowrap}.med-link{color:var(--text);width:100%;text-decoration:none;display:block}input[type=date],input[type=time],input[type=datetime-local]{appearance:none;min-width:0;max-width:100%;min-height:48px;display:block}input::-webkit-date-and-time-value{text-align:left}.date-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.date-row .field{min-width:0}
