:root{--bg: #f4efe6;--ink: #1a1714;--muted: #5c564e;--card: #fffdf8;--line: #d9d0c3;--green: #1f6b45;--green-soft: #d7efe3;--blue: #1d4e89;--warn: #8a4b12;--danger: #8f2d2d;--shadow: 0 8px 24px rgb(40 30 10 / 8%)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;color:var(--ink);background:var(--bg);font-family:system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.4}button,input,select,textarea{font:inherit;color:inherit}a{color:var(--blue)}.boot{padding:2rem;font-size:1.4rem}.mom-photo{display:block;object-fit:cover;object-position:center 38%;border-radius:50%;box-shadow:var(--shadow);background:#ddd}.mom-photo.sm{width:44px;height:44px}.mom-photo.md{width:88px;height:88px}.mom-photo.lg{width:168px;height:168px;margin:0 auto .8rem;border:4px solid #fff}.login-hero{text-align:center;margin-bottom:1.4rem}.login-hero h1{margin-top:.2rem}.brand{display:flex;align-items:center;gap:.7rem}.mom-head{display:flex;align-items:center;gap:1rem;margin-bottom:1.2rem}.mom-foot{margin-top:2.5rem;padding-top:1rem;display:flex;justify-content:center;gap:1.2rem;opacity:.45}.mom-foot a{color:var(--muted);font-size:.95rem}.er-head .mom-photo{margin-bottom:.6rem}.login-page,.mom-page,.family-main{max-width:720px;margin:0 auto;padding:1.25rem 1.1rem 3rem}.login-page h1,.mom-head h1,.page-head h1,.family-main>div>h1{margin:0 0 .4rem;font-size:clamp(1.8rem,5vw,2.4rem)}.lede,.eyebrow{color:var(--muted);margin:0 0 1rem}.eyebrow{text-transform:uppercase;letter-spacing:.06em;font-size:.85rem}.people{display:grid;gap:.75rem}.person{text-align:left;background:var(--card);border:2px solid var(--line);border-radius:16px;padding:1rem 1.1rem;min-height:72px;box-shadow:var(--shadow)}.person strong{display:block;font-size:1.4rem}.person span{color:var(--muted)}.person.selected{border-color:var(--blue);background:#eef4fb}.login-form,.edit-form{display:grid;gap:.9rem;margin-top:1.25rem}label{display:grid;gap:.35rem;font-weight:600}input,select,textarea{width:100%;padding:.7rem .8rem;border:1px solid var(--line);border-radius:10px;background:#fff}.primary,.mom-btn,.family-main button,.family-top button,.banner button{border:0;border-radius:14px;background:var(--blue);color:#fff;padding:.85rem 1.1rem;min-height:52px;cursor:pointer}.mom-btn{width:100%;font-size:1.35rem;min-height:68px;background:var(--green);margin-top:.8rem}.mom-btn.quiet{background:var(--blue)}.ghost,.text-btn{background:transparent;color:var(--blue);border:1px solid var(--line)}.text-btn{min-height:auto;padding:.2rem .4rem;border:0;color:var(--muted)}.primary-link{display:inline-flex;align-items:center;background:var(--blue);color:#fff;text-decoration:none;padding:.6rem .9rem;border-radius:12px}.error{color:var(--danger)}.done{color:var(--green);font-weight:700}.mom-card,.fam-card{background:var(--card);border-radius:20px;padding:1.1rem;margin:1rem 0;box-shadow:var(--shadow)}.mom-meds,.compact-meds{list-style:none;padding:0;margin:0 0 .5rem;display:grid;gap:.8rem}.mom-meds li,.compact-meds li,.insulin-row{display:grid;grid-template-columns:auto 1fr;gap:.85rem;align-items:center}.mom-meds strong,.insulin-row strong{display:block;font-size:1.35rem}.mom-meds span,.insulin-row span,.med-row span{color:var(--muted);display:block}.mom-meds em,.insulin-row em{display:block;color:var(--warn);font-style:normal;margin-top:.2rem}.glyph,.med-photo{width:56px;height:56px;border-radius:16px;display:block;flex-shrink:0;object-fit:cover}.glyph.large,.med-photo.large{width:92px;height:92px;font-size:1.1rem}.family-shell{min-height:100%}.family-top,.family-nav{max-width:720px;margin:0 auto;padding:.9rem 1.1rem;display:flex;justify-content:space-between;align-items:center;gap:.75rem}.family-nav{justify-content:flex-start;overflow-x:auto;border-bottom:1px solid var(--line)}.family-nav a{text-decoration:none;color:var(--muted);font-weight:700;padding:.45rem .2rem;white-space:nowrap}.family-nav a.active{color:var(--ink);box-shadow:inset 0 -2px 0 var(--green)}.who{display:flex;gap:.6rem;align-items:center}.banner{max-width:720px;margin:0 auto .5rem;background:#fff4d6;border:1px solid #e2c36a;border-radius:14px;padding:.8rem 1rem;display:flex;justify-content:space-between;gap:.8rem;align-items:center}.banner p{margin:.2rem 0 0}.page-head.row,.fam-card-head,.row-actions,.photo-row{display:flex;justify-content:space-between;align-items:center;gap:.75rem;flex-wrap:wrap}.allergy{color:var(--danger);font-weight:700}.pill{border-radius:999px;padding:.2rem .6rem;font-size:.85rem;font-weight:700}.pill.ok{background:var(--green-soft);color:var(--green)}.pill.wait{background:#f3e2cf;color:var(--warn)}.med-list,.log{list-style:none;padding:0;margin:0;display:grid;gap:.7rem}.med-row{display:grid;grid-template-columns:auto 1fr;gap:.8rem;text-decoration:none;color:inherit;background:var(--card);padding:.85rem;border-radius:16px}.meta{font-size:.9rem}.warn{color:var(--warn);font-style:normal;display:block;margin-top:.25rem}.check{display:flex;align-items:center;gap:.5rem;font-weight:600}.check input{width:auto}fieldset{border:1px solid var(--line);border-radius:12px}.changes ul{list-style:none;padding:0}.changes span{color:var(--muted);font-size:.85rem}code{background:#efe8dc;padding:.1rem .3rem;border-radius:6px}.fact{font-size:1.45rem;font-weight:800;line-height:1.3;margin:.8rem 0 0;color:var(--ink)}.mom-card.standing{border:3px solid var(--danger)}.call-list{display:grid;gap:.55rem;margin:.8rem 0 0}.call-list a{display:block;font-size:1.25rem;font-weight:800;color:var(--blue);text-decoration:none}.mom-card.danger h2,.er-block.danger h2{color:var(--danger)}.er-page{max-width:800px;margin:0 auto;padding:1.2rem 1.1rem 3rem}.er-head h1{margin:0}.er-block{background:var(--card);border-radius:16px;padding:.9rem 1rem;margin:.8rem 0}.er-block.danger{background:#fdecea}.unconfirmed{color:var(--warn);font-weight:700}.er-table{width:100%;border-collapse:collapse;font-size:.92rem}.er-table th,.er-table td{text-align:left;border-bottom:1px solid var(--line);padding:.35rem .3rem;vertical-align:top}@media print{.family-top,.family-nav,.banner,.row-actions,.login-page button{display:none!important}.er-page{max-width:none;padding:0}.er-block{box-shadow:none;break-inside:avoid}}@media(min-width:800px){.people{grid-template-columns:repeat(2,1fr)}}
