:root{--bg:#f6f4ef;--surface:#fff;--ink:#1b2428;--ink-2:#3f4a4f;--muted:#5f696d;--line:#e0dbd0;--line-strong:#c9c2b4;--accent:#1f5e6e;--accent-hover:#174b58;--accent-soft:#e4eff1;--ok:#276140;--ok-bg:#e3f1e7;--ok-mark:#3a8a5a;--high:#9c3418;--high-bg:#fbe8e1;--high-mark:#c4502f;--low:#234f96;--low-bg:#e5ecf8;--low-mark:#3a67b8;--none:#4f585c;--none-bg:#eceeef;--none-mark:#8a9397;--band:#cfe8d7;--warn-bg:#fdf3d8;--warn:#6b4e00;--radius:16px;--shadow:0 1px 2px #1b24280f, 0 2px 10px #1b24280a;--tabbar-h:76px;--view:#4a2f7a;--view-soft:#efe9f8;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;font-size:18px}body{background:var(--bg);color:var(--ink);margin:0;font-family:Segoe UI,system-ui,-apple-system,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.5}h1,h2,h3{color:var(--ink);margin:0 0 .5rem;line-height:1.25}h1{letter-spacing:-.01em;font-size:1.75rem;font-weight:700}h2{font-size:1.3rem;font-weight:650}h3{font-size:1.1rem;font-weight:650}p{margin:0 0 .75rem}a{color:var(--accent)}code{background:var(--none-bg);word-break:break-all;border-radius:6px;padding:.1em .35em;font-size:.85em}:focus-visible{outline-offset:2px;outline:3px solid #e0a100}.muted{color:var(--muted)}.small{font-size:.9rem}.center{text-align:center}.lead{color:var(--ink-2);font-size:1.1rem}.nowrap{white-space:nowrap}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.center-screen{place-items:center;min-height:60vh;display:grid}.main{max-width:980px;padding:1rem 16px calc(var(--tabbar-h) + 2rem + env(safe-area-inset-bottom,0px));margin:0 auto}.page>*+*{margin-top:1rem}.topbar{background:var(--surface);border-bottom:1px solid var(--line);z-index:10;padding-top:env(safe-area-inset-top,0px);position:sticky;top:0}.topbar-inner{align-items:center;gap:1rem;max-width:980px;min-height:60px;margin:0 auto;padding:0 16px;display:flex}.brand{color:var(--ink);align-items:center;gap:.5rem;margin-right:auto;font-size:1.2rem;font-weight:700;text-decoration:none;display:flex}.gear{min-width:48px;min-height:48px;color:var(--ink-2);border-radius:12px;justify-content:center;align-items:center;gap:.4rem;padding:0 .5rem;text-decoration:none;display:inline-flex}.gear.active{color:var(--accent);background:var(--accent-soft)}.gear svg{width:26px;height:26px}.gear-text{font-size:.95rem}.tabs a{color:var(--ink-2);font-weight:600;text-decoration:none}.tabs a.active{color:var(--accent)}.tabs-top{display:none}.tabs-bottom{z-index:10;background:var(--surface);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom,0px);grid-template-columns:repeat(3,1fr);display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -2px 12px #1b24280d}.tabs-bottom a{min-height:var(--tabbar-h);flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:1rem;display:flex;position:relative}.tabs-bottom a.active:before{content:"";background:var(--accent);border-radius:0 0 4px 4px;height:4px;position:absolute;top:0;left:22%;right:22%}.tabs[hidden]{display:none!important}.tabs-bottom.tabs-2{grid-template-columns:repeat(2,1fr)}.tabs-bottom.tabs-1{grid-template-columns:1fr}@media (width>=800px){.tabs-top{gap:.25rem;display:flex}.tabs-top a{border-radius:12px;align-items:center;gap:.5rem;min-height:48px;padding:0 1.1rem;font-size:1.05rem;display:inline-flex}.tabs-top a:hover{background:var(--bg)}.tabs-top a.active{background:var(--accent-soft)}.tabs-bottom{display:none}.topbar-inner{min-height:72px}.main{padding:2rem 24px 4rem}h1{font-size:2rem}}@media (width<=799px){.gear-text{display:none}}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.1rem 1.15rem}.card>:last-child{margin-bottom:0}.btn{min-height:52px;font:inherit;border:2px solid var(--line-strong);background:var(--surface);color:var(--ink);cursor:pointer;text-align:center;border-radius:12px;justify-content:center;align-items:center;gap:.5rem;padding:.6rem 1.25rem;font-size:1.05rem;font-weight:600;text-decoration:none;display:inline-flex}.btn:hover{border-color:var(--accent)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.btn-danger{background:var(--high);border-color:var(--high);color:#fff}.btn-danger-outline{color:var(--high);border-color:#e3b5a6}.btn-ghost{color:var(--ink-2);background:0 0;border-color:#0000}.btn-small{min-height:48px;padding:.4rem .9rem;font-size:.95rem}.btn-xl{min-height:64px;font-size:1.15rem}.btn-block{width:100%;display:flex}.link-btn{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:0;min-height:48px;text-decoration:underline}.back{align-items:center;min-height:48px;font-size:1.05rem;font-weight:600;text-decoration:none;display:inline-flex}.stack>*+*{margin-top:.75rem}.row-actions{flex-wrap:wrap;gap:.6rem;margin-top:.75rem;display:flex}.alert{border:1px solid #0000;border-radius:12px;padding:.8rem 1rem}.alert>:last-child{margin-bottom:0}.alert-error{background:var(--high-bg);color:var(--high);border-color:#efc4b6}.alert-ok{background:var(--ok-bg);color:var(--ok);border-color:#bfdcc8}.alert-warn{background:var(--warn-bg);color:var(--warn);border-color:#ecd795}.chip{white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:.35rem;padding:.2rem .7rem .2rem .45rem;font-size:.95rem;font-weight:650;display:inline-flex}.chip-icon{color:#fff;border-radius:50%;place-items:center;width:1.35em;height:1.35em;font-size:.85em;display:inline-grid}.chip-lg{padding:.35rem .9rem .35rem .5rem;font-size:1.05rem}.chip-normal{background:var(--ok-bg);color:var(--ok)}.chip-normal .chip-icon{background:var(--ok-mark)}.chip-high{background:var(--high-bg);color:var(--high)}.chip-high .chip-icon{background:var(--high-mark)}.chip-low{background:var(--low-bg);color:var(--low)}.chip-low .chip-icon{background:var(--low-mark)}.chip-none{background:var(--none-bg);color:var(--none)}.chip-none .chip-icon{background:var(--none-mark)}.dot-normal{--dot:var(--ok-mark)}.dot-high{--dot:var(--high-mark)}.dot-low{--dot:var(--low-mark)}.dot-none{--dot:var(--none-mark)}.discuss{border-left:6px solid var(--high-mark)}.discuss-ok{border-left-color:var(--ok-mark)}.discuss-list{gap:.5rem;margin:.5rem 0 0;padding:0;list-style:none;display:grid}.discuss-item{min-height:56px;color:var(--ink);background:var(--bg);border-radius:12px;align-items:center;gap:.75rem;padding:.6rem .8rem;text-decoration:none;display:flex}.discuss-item:hover{background:var(--accent-soft)}.discuss-icon{color:#fff;border-radius:50%;flex:none;place-items:center;width:2rem;height:2rem;font-weight:700;display:grid}.st-high .discuss-icon{background:var(--high-mark)}.st-low .discuss-icon{background:var(--low-mark)}.discuss-text{flex:1}.discuss-val{color:var(--muted);font-size:.95rem;display:block}.chev{color:var(--muted);font-size:1.8rem;line-height:1}.category{margin-top:2rem!important}.category>h2{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-2);margin-bottom:.75rem;font-size:1.15rem}.cards{gap:.9rem;display:grid}@media (width>=700px){.cards{grid-template-columns:1fr 1fr}}.marker-card{color:inherit;text-decoration:none;transition:border-color .15s;display:block}.marker-card:hover{border-color:var(--accent)}.mc-head{justify-content:space-between;gap:.5rem;display:flex}.mc-head h3{margin:0}.mc-value{margin:.35rem 0 .4rem}.big-num{font-variant-numeric:tabular-nums;letter-spacing:-.01em;font-size:1.9rem;font-weight:700}.unit{color:var(--muted);font-size:1rem}.mc-meta{flex-wrap:wrap;align-items:center;gap:.5rem .9rem;margin-bottom:.4rem;display:flex}.empty{text-align:center;padding:2rem 1.25rem}.gauge{padding:.6rem 0 1.6rem;position:relative}.gauge-lg{padding:3rem 0 2rem}.gauge-track{background:#e8e4dc;border-radius:999px;height:12px;position:relative}.gauge-lg .gauge-track{height:22px}.gauge-band{background:var(--band);border:2px solid #8fc3a0;border-radius:999px;position:absolute;top:0;bottom:0}.gauge-band.open-left{border-top-left-radius:999px;border-bottom-left-radius:999px}.gauge-dot{background:var(--dot);border:3px solid #fff;border-radius:50%;width:22px;height:22px;margin:-11px 0 0 -11px;position:absolute;top:50%;box-shadow:0 0 0 1px #00000026}.gauge-lg .gauge-dot{border-width:4px;width:36px;height:36px;margin:-18px 0 0 -18px}.gauge-ticks{height:0;position:relative}.gauge-tick{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.85rem;position:absolute;top:4px;transform:translate(-50%)}.gauge-lg .gauge-tick{font-size:1rem;top:8px}.gauge-value{white-space:nowrap;font-size:1.1rem;font-weight:700;position:absolute;top:.2rem;transform:translate(-50%)}.gauge-left{transform:translate(-10%)}.gauge-right{transform:translate(-90%)}.gauge-legend,figcaption{color:var(--muted);align-items:center;gap:.5rem;margin-top:2rem;font-size:.9rem;display:flex}.legend-band{background:var(--band);border:2px solid #8fc3a0;border-radius:6px;width:28px;height:12px;display:inline-block}.hero-top{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.huge-num{font-variant-numeric:tabular-nums;font-size:2.8rem;font-weight:750;line-height:1.1}.norm-line{margin-top:.5rem;font-size:1.05rem}.trend svg{width:100%;height:auto;margin-top:.5rem;display:block}.trend{margin:0}.trend figcaption{margin-top:.5rem}.trend-band{fill:var(--band)}.trend-grid{stroke:#ebe7df;stroke-width:1px}.trend-axis{fill:var(--muted);font-family:inherit;font-size:15px}.trend-line{fill:none;stroke:var(--accent);stroke-width:2.5px;stroke-linejoin:round}.trend-dot{fill:var(--dot);stroke:#fff;stroke-width:3px}.trend-label{fill:var(--ink);paint-order:stroke;stroke:#fff;stroke-width:5px;font-size:18px;font-weight:700}.history{margin:0;padding:0;list-style:none}.history-row{border-top:1px solid var(--line);padding:.9rem 0}.history-row:first-child{border-top:0;padding-top:.25rem}.hr-main{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.hr-date{font-weight:650}.hr-value{font-variant-numeric:tabular-nums;font-size:1.35rem;font-weight:700}.history-row.editing,.history-row.confirm{background:var(--bg);border:1px solid var(--line-strong);border-radius:12px;padding:1rem}.history-row.confirm{background:var(--high-bg);border-color:#efc4b6}.field{min-width:0;border:0;min-inline-size:0;margin:0 0 .9rem;padding:0;display:block}.field>span,.field>legend{margin-bottom:.3rem;padding:0;font-size:1rem;font-weight:600;display:block}input:not([type=checkbox]):not([type=radio]),select,textarea{width:100%;font:inherit;border:2px solid var(--line-strong);min-height:52px;color:var(--ink);background:#fff;border-radius:12px;padding:.6rem .8rem;font-size:1.1rem}input:focus,select:focus,textarea:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #1f5e6e2e}input[aria-invalid=true]{border-color:var(--high-mark)}.form-grid{grid-template-columns:1fr 1fr;gap:0 .75rem;display:grid}.form-grid .field-wide{grid-column:1/-1}.check{cursor:pointer;align-items:center;gap:.6rem;min-height:48px;margin-bottom:.5rem;display:flex}.check input{width:24px;height:24px}.seg{gap:.5rem;display:flex}.seg label{border:2px solid var(--line-strong);cursor:pointer;border-radius:12px;flex:1;align-items:center;gap:.5rem;min-width:0;min-height:52px;padding:0 .75rem;font-weight:600;display:flex}.seg label.on{border-color:var(--accent);background:var(--accent-soft)}.seg input{width:22px;height:22px}details.optional{margin-bottom:1rem}details.optional summary{cursor:pointer;min-height:48px;color:var(--accent);align-items:center;font-weight:600;display:flex}.conn{gap:.5rem;font-weight:650;display:flex}.conn-on{color:var(--ok)}.conn-off{color:var(--none)}.mega-btn{text-align:center;background:var(--accent);color:#fff;cursor:pointer;border-radius:20px;flex-direction:column;justify-content:center;align-items:center;gap:.4rem;min-height:220px;padding:1.5rem;display:flex;box-shadow:0 6px 18px #1f5e6e40}.mega-btn:hover{background:var(--accent-hover)}.mega-title{font-size:1.45rem;font-weight:700;line-height:1.25}.mega-sub{opacity:.9}.reading,.done{text-align:center;padding:2.5rem 1.25rem}.spinner{border:6px solid var(--accent-soft);border-top-color:var(--accent);border-radius:50%;width:64px;height:64px;margin:0 auto 1.25rem;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spinner{animation-duration:3s}}.done-icon{color:#fff;background:var(--ok-mark);border-radius:50%;place-items:center;width:72px;height:72px;margin:0 auto 1rem;font-size:2.2rem;display:grid}.review-list{gap:.9rem;margin:0;padding:0;list-style:none;display:grid}.rr-head{justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:.5rem;display:flex}.rr-head h3{margin:.5rem 0 0}.tag{background:var(--accent-soft);color:var(--accent);vertical-align:middle;border-radius:999px;margin-left:.5rem;padding:.05rem .5rem;font-size:.8rem;font-weight:650;display:inline-block}.is-dup{background:#fbfaf6;border-style:dashed}.dup-note{background:var(--warn-bg);color:var(--warn);border-radius:10px;padding:.4rem .75rem;font-weight:600}.sticky-actions{bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom,0px));background:linear-gradient(to bottom, #f6f4ef00, var(--bg) 20%);gap:.5rem;padding:1.25rem 0 .75rem;display:grid;position:sticky}@media (width>=800px){.sticky-actions{bottom:0}}.chat-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1rem;display:flex}.chat-head h1{margin:0}.suggestions{gap:.6rem;display:grid}.suggestion{text-align:left;font:inherit;border:2px solid var(--line);background:var(--surface);min-height:60px;color:var(--ink);cursor:pointer;box-shadow:var(--shadow);border-radius:14px;padding:.8rem 1.1rem;font-size:1.1rem}.suggestion:hover{border-color:var(--accent);background:var(--accent-soft)}.messages{flex-direction:column;gap:.9rem;display:flex}.msg{border-radius:18px;max-width:92%;padding:.85rem 1.1rem;font-size:1.08rem;line-height:1.6}.msg>:last-child,.msg p:last-child{margin-bottom:0}.msg ul,.msg ol{margin:.25rem 0 .75rem;padding-left:1.3rem}.msg li{margin-bottom:.3rem}.msg-user{background:var(--accent);color:#fff;white-space:pre-wrap;border-bottom-right-radius:6px;align-self:flex-end}.msg-assistant{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-bottom-left-radius:6px;align-self:flex-start}.msg-assistant h1,.msg-assistant h2,.msg-assistant h3{margin-top:.5rem;font-size:1.1rem}.msg-error{background:var(--high-bg);color:var(--high);border-color:#efc4b6}.typing{color:var(--muted)}.dots:after{content:"…";animation:1.2s infinite blink}@keyframes blink{50%{opacity:.2}}.composer{bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom,0px) + 1.6rem);background:var(--bg);align-items:flex-end;gap:.5rem;padding-top:.75rem;display:flex;position:sticky}.composer textarea{resize:none;line-height:1.4}.composer .btn{flex:none;min-height:52px}.disclaimer{bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom,0px));background:var(--bg);text-align:center;color:var(--muted);padding:.25rem 0 .5rem;font-size:.9rem;position:sticky;margin:0!important}@media (width>=800px){.composer{bottom:1.8rem}.disclaimer{bottom:0}}.confirm-box{background:var(--warn-bg);border-color:#ecd795}.login-wrap{place-items:center;min-height:100vh;padding:1.5rem 16px;display:grid}.login{text-align:center;width:100%;max-width:440px;padding:2rem 1.5rem}.login .lead{margin-bottom:1.5rem}.gsi-btn{color:#1f1f1f;box-sizing:border-box;background:#fff;border:1px solid #747775;border-radius:12px;justify-content:center;align-items:center;gap:14px;width:100%;min-height:64px;padding:12px 20px;font-family:Roboto,Segoe UI,system-ui,-apple-system,Arial,sans-serif;font-size:1.15rem;font-weight:500;text-decoration:none;display:flex}.gsi-btn:hover{background:#f8f9fa;box-shadow:0 1px 3px #3c40434d}.gsi-btn:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.gsi-logo{flex:none}@media (width<=440px){.gsi-btn{white-space:nowrap;gap:10px;padding:12px;font-size:1.05rem}}.dev-login{border-top:1px dashed var(--line-strong);gap:.5rem;margin-top:1.25rem;padding-top:1rem;display:grid}.dev-login p{margin:0}.account-line{overflow-wrap:anywhere}.summary-head p{color:var(--ink-2)}.summary-flags{padding-left:1.2rem}.summary-flags li{margin-bottom:.4rem}.table-wrap{overflow-x:auto}.summary-table{border-collapse:collapse;background:var(--surface);width:100%;font-size:.95rem}.summary-table th,.summary-table td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:.45rem .6rem}.summary-table thead th{background:var(--bg);text-transform:uppercase;letter-spacing:.04em;font-size:.85rem}.summary-table .cat-row th{background:var(--accent-soft);color:var(--accent)}.summary-table .num{font-variant-numeric:tabular-nums;white-space:nowrap}.summary-table tr.st-high td,.summary-table tr.st-low td{font-weight:650}.summary-actions{max-width:420px}@media print{@page{margin:14mm}html{font-size:11pt}body{background:#fff}.no-print,.tabs-bottom,.topbar{display:none!important}.main{max-width:none;padding:0}.summary-table{font-size:10pt}.summary-table tr{break-inside:avoid}*{box-shadow:none!important}}.acct-bar{max-width:980px;margin:0 auto;padding:.9rem 16px 0}.acct-switch{flex-wrap:wrap;gap:.6rem;display:flex}.acct-btn{min-height:56px;font:inherit;border:2px solid var(--line-strong);background:var(--surface);color:var(--ink);cursor:pointer;overflow-wrap:anywhere;border-radius:14px;flex:12rem;padding:.6rem 1rem;font-size:1.05rem;font-weight:650}.acct-btn:hover{border-color:var(--accent)}.acct-btn.on{background:var(--accent);border-color:var(--accent);color:#fff}.acct-btn-other.on{background:var(--view);border-color:var(--view)}.acct-btn-other:not(.on):hover{border-color:var(--view)}.view-banner{background:var(--view);color:#fff}.view-banner-inner{flex-wrap:wrap;align-items:center;gap:.4rem .8rem;max-width:980px;margin:0 auto;padding:.55rem 16px;display:flex}.view-banner-inner svg{flex:none}.view-banner p{flex:14rem;margin:0;line-height:1.3}.view-banner strong{overflow-wrap:anywhere;font-size:1.1rem;display:block}.view-banner-sub{opacity:.92;font-size:.95rem}.view-banner .view-banner-back{color:var(--view);background:#fff;border-color:#fff}.view-banner .view-banner-back:hover{background:var(--view-soft)}.notice-bar{background:var(--warn-bg);color:var(--warn);border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem 1rem;padding:.6rem 16px;display:flex}.notice-bar p{margin:0;font-weight:600}.share-form{flex-wrap:wrap;align-items:flex-end;gap:.75rem;display:flex}.share-form .field{flex:16rem;margin:0}.share-form .btn{flex:none}.share-list-h{margin-top:1.25rem}.share-list{margin:0;padding:0;list-style:none}.share-row{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem 1rem;padding:.85rem 0;display:flex}.share-who{overflow-wrap:anywhere;flex:14rem}.share-status{color:var(--ink-2);margin-top:.15rem}.share-confirm{border:1px solid #ecd795;border-radius:12px;flex:100%;padding:.8rem 1rem}.topbar-inner{position:relative}.cg-switch{position:static}.cg-toggle{font:inherit;cursor:pointer;background:0 0;border:0}.cg-toggle:hover{background:var(--bg)}.cg-menu{z-index:20;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius);width:min(22rem,100vw - 32px);max-height:min(70vh,32rem);padding:.5rem;position:absolute;top:calc(100% + 4px);right:16px;overflow-y:auto;box-shadow:0 8px 28px #1b242829}.cg-menu-h{color:var(--ink-2);margin:.3rem .6rem .5rem;font-weight:650}.cg-item{text-align:left;width:100%;font:inherit;min-height:56px;color:var(--ink);cursor:pointer;overflow-wrap:anywhere;background:0 0;border:2px solid #0000;border-radius:12px;padding:.55rem .8rem;display:block}.cg-item+.cg-item{margin-top:.25rem}.cg-item strong{font-size:1.05rem;display:block}.cg-item span{color:var(--muted);font-size:.92rem;display:block}.cg-item:hover{background:var(--bg)}.cg-item.on{border-color:var(--view);background:var(--view-soft)}.caregiver-note{background:var(--view-soft);color:var(--view);border-radius:12px;padding:.7rem .9rem}
