:root{--bg: #fbfaf7;--fg: #22211f;--muted: #6f6c64;--line: #e6e3dc;--card: #ffffff;--accent: #3f7f5f;--danger: #a8472f;color-scheme:light}@media(prefers-color-scheme:dark){:root{--bg: #161615;--fg: #ecebe7;--muted: #a3a097;--line: #2d2c29;--card: #1f1e1c;--accent: #79b896;--danger: #e08a72;color-scheme:dark}}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--fg);font:16px/1.5 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}main{max-width:480px;margin:0 auto;padding:16px 16px 88px}h1{font-size:1.5rem;margin:8px 0 4px}h1.brand{font-size:2rem;margin-top:15vh}h2{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:24px 0 8px}.muted{color:var(--muted)}.error{color:var(--danger)}label{display:flex;flex-direction:column;gap:4px;margin:10px 0;font-size:.9rem;color:var(--muted)}label.row{flex-direction:row;align-items:center;justify-content:space-between}input,select,textarea{font:inherit;color:var(--fg);background:var(--card);border:1px solid var(--line);border-radius:10px;padding:10px 12px;min-height:44px}input[type=checkbox]{width:22px;height:22px;min-height:0;accent-color:var(--accent);flex:none}input[type=color]{padding:2px;width:56px}textarea{width:100%;resize:vertical}button,.button{font:inherit;border:1px solid var(--line);background:var(--card);color:var(--fg);border-radius:10px;padding:10px 16px;min-height:44px;cursor:pointer;text-decoration:none;display:inline-block;text-align:center;margin:4px 4px 4px 0}button.primary,.button.primary{background:var(--accent);border-color:var(--accent);color:#fff;width:100%;margin-top:12px}button:disabled{opacity:.5}button.link{border:none;background:none;color:var(--accent);padding:8px;min-height:40px;margin:0}button.danger,button.link.danger{color:var(--danger)}.row{display:flex;align-items:center;gap:8px;padding:6px 0;border-bottom:1px solid var(--line)}.row.wrap{flex-wrap:wrap}.row input[type=time]{padding:4px 6px;min-height:36px}.grow{flex:1;min-width:0;overflow-wrap:anywhere}.card{display:block;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:12px 14px;margin:12px 0;color:inherit;text-decoration:none}.capture input{width:100%;font-size:1.05rem}.checkin-cta strong{color:var(--accent)}.nudge p{margin:0 0 4px}details summary{cursor:pointer;font-weight:600}.strip{display:flex;gap:6px;margin-top:28px}.strip span{flex:1;height:28px;border-radius:6px}.grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-top:16px}.grid span{aspect-ratio:1;border-radius:6px}.tile{height:160px;border-radius:20px;margin-top:16px}.quote{text-align:center;color:var(--muted);font-style:italic}.question{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--line);gap:8px}.choices{display:flex;gap:6px}.choices button{margin:0;min-width:52px;font-size:1.2rem}.choices button.on{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 18%,var(--card))}.toast{position:fixed;top:12px;left:50%;transform:translate(-50%);background:var(--fg);color:var(--bg);padding:8px 16px;border-radius:20px;z-index:10;margin:0}nav.tabs{position:fixed;bottom:0;left:0;right:0;display:flex;background:var(--card);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom)}nav.tabs a{flex:1;text-align:center;padding:14px 0;color:var(--muted);text-decoration:none;font-size:.9rem}nav.tabs a.on{color:var(--accent);font-weight:600}.row.wrap .grow{flex-basis:100%}.row.wrap{gap:4px 8px}
