:root{color:#243c34;font-synthesis:none;background:#f7f5ee;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6}*{box-sizing:border-box}body{margin:0}a{color:inherit}button,input,textarea{font:inherit}button{color:#fff;cursor:pointer;background:#22594c;border:1px solid #0000;border-radius:12px;min-height:46px;padding:12px 18px;font-weight:650}button:hover{filter:brightness(.93)}button:disabled{opacity:.5;cursor:wait}.secondary{color:#22594c;background:#fff;border-color:#cbd4ce}.text-button{color:#22594c;background:0 0;text-decoration:underline}input,textarea{color:#243c34;background:#fff;border:1px solid #c7cdc5;border-radius:9px;width:100%;padding:11px;font-size:16px}input[type=checkbox]{accent-color:#22594c;flex-shrink:0;width:24px;height:24px}label{gap:5px;font-size:14px;font-weight:600;display:grid}form{gap:16px;display:grid}h1,h2,p{margin:0 0 14px}h1{letter-spacing:-1.5px;font-size:clamp(30px,4vw,48px);line-height:1.12}h2{font-size:20px;line-height:1.35}p{color:#58695f}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline-offset:4px;outline:3px solid #ba7c20}.brand{letter-spacing:-2px;color:#22594c;font-size:38px;font-weight:850;text-decoration:none}.eyebrow{letter-spacing:2px;color:#627568;font-size:11px;font-weight:750}.auth{max-width:460px;margin:8vh auto;padding:24px}.auth .brand{font-size:60px}.auth h1{margin:32px 0 20px}.auth form{margin:28px 0}.layout{grid-template-columns:235px 1fr;min-height:100dvh;display:grid}aside{background:#efeee5;border-right:1px solid #dde0d6;padding:36px 26px}aside .family{margin:20px 0 32px}nav{gap:6px;display:grid}nav a{border-radius:10px;padding:11px 14px;font-size:15px;text-decoration:none}nav a[aria-current]{color:#fff;background:#22594c}main{width:100%;max-width:1100px;margin:0 auto;padding:48px clamp(20px,5vw,64px)}header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;display:flex}.connection{font-size:13px}.welcome{background:#e3eadb;border-radius:20px;margin-bottom:24px;padding:34px}.welcome h2{margin:10px 0;font-size:32px}.tiles{grid-template-columns:1fr 1fr;gap:18px;display:grid}.tile,article{background:#fffdf8;border:1px solid #e1e3d8;border-radius:16px;padding:24px}.tile{min-height:190px;text-decoration:none}.tile:nth-child(2){background:#fff0c8}.tile:nth-child(3){background:#ece8f3}.tile:nth-child(4){background:#e9eedc}.tile span{font-size:13px;font-weight:700}.entries{gap:12px;display:grid}.entry{align-items:flex-start;gap:18px;display:flex}.entry input{margin-top:3px}.entry h2{margin-bottom:6px;font-size:18px}.entry p:last-child{margin-bottom:0}.entry.completed h2{color:#758178;text-decoration:line-through}.note-text{white-space:pre-wrap;overflow-wrap:anywhere}.add-form{background:#ebece2;border-radius:16px;margin-bottom:24px;padding:22px}.add-form>button{justify-self:start}.check{align-items:center;gap:12px;margin:16px 0;display:flex}.recording{flex-wrap:wrap;align-items:center;gap:12px;display:flex}audio{max-width:100%}#message:not(:empty){background:#fff0c8;border-radius:12px;padding:12px}footer{color:#7d897d;margin-top:48px;font-size:12px}details{margin-top:12px}summary{cursor:pointer}dialog{color:#243c34;background:#f7f5ee;border:1px solid #cbd4ce;border-radius:18px;width:min(94vw,580px);max-height:90dvh;padding:26px;overflow:auto}dialog::backdrop{background:#132d2699}.actions{flex-wrap:wrap;gap:10px;margin:16px 0;display:flex}select{font:inherit;background:#fff;border:1px solid #c7cdc5;border-radius:9px;max-width:100%;padding:12px}.dialog-error{color:#992a2a}.danger{background:#a12e2e}.entry>div{width:100%;min-width:0}@media (width<=740px){.layout{display:block}aside{padding:12px max(16px,env(safe-area-inset-left));z-index:1;border-bottom:1px solid #dde0d6;border-right:0;position:sticky;top:0}aside .brand{font-size:30px}aside .family{margin-left:16px;font-size:13px;display:inline}nav{gap:5px;margin-top:6px;padding:3px 0;display:flex;overflow-x:auto}nav a{white-space:nowrap;padding:9px 12px;font-size:13px}main{padding:28px max(18px,env(safe-area-inset-left)) calc(28px + env(safe-area-inset-bottom))}header{align-items:flex-start}header button{padding:10px;font-size:12px}.tiles{grid-template-columns:1fr}.tile{min-height:auto}.welcome{padding:24px}.welcome h2{font-size:26px}.auth{margin:3vh auto}article{padding:20px}}
