@font-face{font-family:Assistant;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/af20f594d26ec4fd-s.p.06674-1f_j6ex.woff2)format("woff2");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Assistant;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/ac2c0ac0bffc7253-s.0pbuaq42ok1zw.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Assistant;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/f595011b4d8c1509-s.p.0xw0t0hr1xcps.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Assistant Fallback;src:local(Arial);ascent-override:109.94%;descent-override:30.9%;line-gap-override:0.0%;size-adjust:92.87%}.m-59kG_className{font-family:Assistant,Assistant Fallback;font-style:normal}.m-59kG_variable{--font-assistant:"Assistant", "Assistant Fallback"}
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f5f4f0;--surface:#fff;--surface-2:#faf9f6;--border:#e4e2dc;--border-strong:#cfccc3;--text:#1c1b19;--text-2:#55534e;--text-3:#85827b;--brand:#0d6e6e;--brand-ink:#fff;--brand-soft:#e3f1f0;--brand-dark:#0a5454;--series-1:#2a78d6;--series-1-soft:#dbe8f8;--good:#1d7a3a;--good-soft:#e3f3e7;--warn:#9a6100;--warn-soft:#fdf1d8;--bad:#b3261e;--bad-soft:#fbe5e3;--info-soft:#e8eefb;--radius:12px;--radius-sm:8px;--shadow:0 1px 2px #1c1b190d, 0 2px 8px #1c1b190a}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:var(--font-assistant), "Assistant", "Segoe UI", Arial, sans-serif;font-size:15.5px;line-height:1.5}a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{margin:0 0 .5rem;line-height:1.25}h1{font-size:1.6rem;font-weight:700}h2{font-size:1.15rem;font-weight:700}h3{font-size:1rem;font-weight:700}p{margin:0 0 .6rem}small,.muted{color:var(--text-2)}.faint{color:var(--text-3)}.demo-banner{color:#f3f1ea;text-align:center;background:#2d2b27;padding:6px 12px;font-size:.85rem}.topbar{background:var(--surface);border-bottom:1px solid var(--border);z-index:10;position:sticky;top:0}.topbar-inner{flex-wrap:wrap;align-items:center;gap:20px;max-width:1280px;margin:0 auto;padding:10px 20px;display:flex}.logo{color:var(--text);align-items:center;gap:10px;font-size:1.1rem;font-weight:800;display:flex}.logo-mark{background:var(--brand);color:#fff;border-radius:9px;place-items:center;width:32px;height:32px;font-size:1rem;display:grid}.logo:hover{text-decoration:none}.nav{flex-wrap:wrap;flex:1;gap:4px;display:flex}.nav a{color:var(--text-2);border-radius:999px;padding:6px 12px;font-size:.95rem;font-weight:600}.nav a:hover{background:var(--surface-2);color:var(--text);text-decoration:none}.nav a.active{background:var(--brand-soft);color:var(--brand-dark)}.role-switch{color:var(--text-2);align-items:center;gap:8px;font-size:.85rem;display:flex}.role-switch select{border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface-2);padding:5px 8px;font-size:.9rem}main.page{max-width:1280px;margin:0 auto;padding:24px 20px 64px}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:20px;display:flex}.page-head p{color:var(--text-2);margin:0}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px 20px}.card+.card{margin-top:16px}.card-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px;display:flex}.card-head h2{margin:0}.grid{gap:16px;display:grid}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.split{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:20px;display:grid}.stack>*+*{margin-top:16px}@media (max-width:960px){.grid-2,.grid-3,.grid-4,.split{grid-template-columns:1fr}}.tiles{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-bottom:20px;display:grid}.tile{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:14px 16px}.tile-label{color:var(--text-2);font-size:.88rem;font-weight:600}.tile-value{font-variant-numeric:tabular-nums;margin-top:4px;font-size:1.9rem;font-weight:800;line-height:1.15}.tile-sub{color:var(--text-3);font-size:.82rem}.tile.accent{border-color:var(--brand);background:linear-gradient(0deg, var(--surface), var(--brand-soft))}.tile.bad .tile-value{color:var(--bad)}.tile.warn .tile-value{color:var(--warn)}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.94rem}th,td{text-align:start;border-bottom:1px solid var(--border);vertical-align:middle;padding:9px 10px}th{color:var(--text-2);background:var(--surface-2);white-space:nowrap;font-size:.84rem;font-weight:700}tr:last-child td{border-bottom:none}tbody tr:hover{background:var(--surface-2)}td.num,th.num{text-align:end;font-variant-numeric:tabular-nums;white-space:nowrap}.row-link{color:var(--text);font-weight:700}.badge{white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:5px;padding:2px 9px;font-size:.8rem;font-weight:700;display:inline-flex}.badge-neutral{background:var(--surface-2);color:var(--text-2);border-color:var(--border)}.badge-brand{background:var(--brand-soft);color:var(--brand-dark)}.badge-good{background:var(--good-soft);color:var(--good)}.badge-warn{background:var(--warn-soft);color:var(--warn)}.badge-bad{background:var(--bad-soft);color:var(--bad)}.badge-info{background:var(--info-soft);color:#2b4a8a}.badge-elderly{color:#5b3a8c;background:#f3ecfb}.badge-caregiver{color:#17644a;background:#e6f4ef}label{color:var(--text-2);margin-bottom:4px;font-size:.9rem;font-weight:600;display:block}input[type=text],input[type=tel],input[type=search],input[type=date],input[type=datetime-local],select,textarea{width:100%;font:inherit;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);color:var(--text);padding:8px 10px;font-size:.95rem}textarea{resize:vertical;min-height:80px}input:focus,select:focus,textarea:focus,button:focus-visible{outline:2px solid var(--brand);outline-offset:1px}.field{margin-bottom:12px}.form-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;display:grid}.filters{flex-wrap:wrap;align-items:flex-end;gap:10px;margin-bottom:14px;display:flex}.filters .field{min-width:150px;margin:0}.filters .grow{flex:1;min-width:200px}.check{color:var(--text-2);align-items:center;gap:6px;margin:0;padding-bottom:8px;font-size:.9rem;font-weight:600;display:inline-flex}.btn{font:inherit;border-radius:var(--radius-sm);border:1px solid var(--brand);background:var(--brand);color:var(--brand-ink);cursor:pointer;white-space:nowrap;justify-content:center;align-items:center;gap:6px;padding:8px 16px;font-size:.93rem;font-weight:700;display:inline-flex}.btn:hover{background:var(--brand-dark);text-decoration:none}.btn-secondary{background:var(--surface);color:var(--brand-dark);border-color:var(--border-strong)}.btn-secondary:hover{background:var(--surface-2)}.btn-danger{background:var(--surface);color:var(--bad);border-color:#e7b4b0}.btn-danger:hover{background:var(--bad-soft)}.btn-sm{padding:5px 11px;font-size:.85rem}.btn-block{width:100%}.flash{border-radius:var(--radius-sm);margin-bottom:16px;padding:10px 14px;font-weight:600}.flash-error{background:var(--bad-soft);color:var(--bad)}.flash-ok{background:var(--good-soft);color:var(--good)}.tabs{border-bottom:1px solid var(--border);gap:6px;margin-bottom:14px;display:flex}.tabs a{color:var(--text-2);border-bottom:3px solid #0000;margin-bottom:-1px;padding:8px 14px;font-weight:700}.tabs a:hover{color:var(--text);text-decoration:none}.tabs a.active{color:var(--brand-dark);border-bottom-color:var(--brand)}.tabs .count{color:var(--text-3);margin-inline-start:4px;font-weight:600}.stepper{flex-wrap:wrap;gap:4px;margin:6px 0 4px;display:flex}.step{text-align:center;background:var(--surface-2);min-width:84px;color:var(--text-3);border:1px solid var(--border);border-radius:6px;flex:1 1 0;padding:7px 6px;font-size:.78rem;font-weight:700}.step.done{background:var(--brand-soft);color:var(--brand-dark);border-color:#0000}.step.current{background:var(--brand);color:#fff;border-color:var(--brand)}.step.lost{background:var(--bad-soft);color:var(--bad);border-color:#0000}.mini-progress{gap:2px;margin-top:4px;display:flex}.mini-progress span{background:var(--border);border-radius:2px;flex:1;height:4px}.mini-progress span.on{background:var(--brand)}.timeline{margin:0;padding:0;list-style:none}.timeline li{padding:0 22px 14px 0;position:relative}.timeline li:before{content:"";background:var(--brand);border-radius:50%;width:9px;height:9px;position:absolute;top:7px;right:5px}.timeline li:after{content:"";background:var(--border);width:1px;position:absolute;top:18px;bottom:0;right:9px}.timeline li:last-child:after{display:none}.timeline .when{color:var(--text-3);font-size:.8rem}.kv{grid-template-columns:max-content 1fr;gap:6px 16px;margin:0;display:grid}.kv dt{color:var(--text-2);font-size:.9rem;font-weight:600}.kv dd{margin:0}.bars{gap:8px;display:grid}.bar-row{grid-template-columns:minmax(120px,220px) minmax(0,1fr) 72px;align-items:center;gap:10px;font-size:.9rem;display:grid}.bar-row .bar-label{color:var(--text);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.bar-row .bar-value{color:var(--text-2);text-align:end;font-variant-numeric:tabular-nums;font-weight:600}.bar-track{background:0 0;border-radius:4px;height:14px;position:relative}.bar-fill{background:var(--series-1);border-radius:0 4px 4px 0;min-width:2px;position:absolute;inset-block:0;inset-inline-start:0}[dir=rtl] .bar-fill{border-radius:4px 0 0 4px}.bar-row:hover .bar-fill{filter:brightness(.9)}.inline-bar{background:var(--series-1);vertical-align:middle;border-radius:4px;height:8px;margin-inline-start:8px;display:inline-block}.wa{border-radius:var(--radius-sm);background:#efeae2;padding:12px}.bubble{white-space:pre-wrap;background:#fff;border-radius:10px;max-width:520px;padding:8px 11px;font-size:.93rem;box-shadow:0 1px 1px #00000014}.bubble.out{background:#d9fdd3;margin-inline-start:auto}.bubble .meta{color:var(--text-3);text-align:end;margin-top:4px;font-size:.72rem;display:block}.ph{background:var(--warn-soft);color:var(--warn);border-radius:4px;padding:0 3px;font-weight:700}.empty{color:var(--text-3);text-align:center;padding:24px 8px}.hr{border:none;border-top:1px solid var(--border);margin:14px 0}.note-box{background:var(--warn-soft);color:#6b4a00;border-radius:var(--radius-sm);border:1px solid #f0d9a4;padding:10px 14px;font-size:.9rem}.info-box{background:var(--info-soft);color:#263f73;border-radius:var(--radius-sm);border:1px solid #cdd9f3;padding:10px 14px;font-size:.9rem}details summary{cursor:pointer;color:var(--brand-dark);font-weight:700}.actions-list form+form,.actions-list details+details{margin-top:10px}.chip-list{flex-wrap:wrap;gap:6px;display:flex}.upload-card{margin-bottom:16px}.upload-card summary{cursor:pointer;list-style-position:inside}.upload-form{grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:end;gap:12px;margin-top:4px;display:grid}.upload-field{flex-direction:column;gap:6px;margin:0;font-size:.9rem;font-weight:600;display:flex}.upload-field input[type=file]{font:inherit;max-width:100%;font-size:.85rem}@media (max-width:960px){.upload-form{grid-template-columns:1fr}}.login-wrap{place-items:center;min-height:70vh;padding:24px 0;display:grid}.login-card{width:100%;max-width:380px}.login-form input[type=password]{border-radius:var(--radius-sm);border:1px solid var(--border-strong);width:100%;padding:10px 12px;font-size:1rem}.logout-form{margin:0}.logout-form button{color:var(--text-2);font:inherit;cursor:pointer;background:0 0;border:none;padding:4px 6px;font-size:.85rem}.logout-form button:hover{color:var(--text);text-decoration:underline}.guide{border-color:var(--brand);background:linear-gradient(180deg, var(--brand-soft), var(--surface) 120px);margin-bottom:18px}.guide-body{margin-top:12px}.guide-roles{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.guide-roles li{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);flex-direction:column;gap:4px;padding:10px 12px;font-size:.9rem;display:flex}.guide-role{color:var(--brand-dark)}.guide-role.current{color:var(--text)}.guide-steps{margin:0;padding-inline-start:22px}.guide-steps li+li{margin-top:6px}.guide-foot{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;padding-top:12px;display:flex}.guide-foot form{margin:0}.bot-thread{border-radius:0;flex-direction:column;gap:8px;min-height:420px;max-height:520px;display:flex;overflow-y:auto}@media (max-width:720px){body{font-size:15px}.demo-banner{padding:5px 10px;font-size:.78rem}.topbar{position:static}.topbar-inner{gap:10px;padding:10px 16px}.logo{order:1}.logout-form{order:2;margin-inline-start:auto}.role-switch{order:3;width:100%}.role-switch label{white-space:nowrap}.role-switch select{flex:1;min-width:0;font-size:16px}.nav{scrollbar-width:none;flex-wrap:nowrap;flex:100%;order:4;margin:0 -16px;padding:0 16px 2px;overflow-x:auto}.nav::-webkit-scrollbar{display:none}.nav a{white-space:nowrap;flex:none;padding:7px 12px}main.page{padding:16px 16px 48px}h1{font-size:1.35rem}.card{padding:14px}.tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.tile{padding:10px 12px}.tile-value{font-size:1.45rem}.guide-roles{grid-template-columns:1fr}.card-head{flex-wrap:wrap}input[type=text],input[type=tel],input[type=search],input[type=date],input[type=datetime-local],select,textarea,.login-form input[type=password]{font-size:16px}.bar-row{grid-template-columns:minmax(90px,40%) minmax(0,1fr) 64px;gap:6px;font-size:.85rem}.kv{grid-template-columns:1fr;gap:2px}.kv dd{margin-bottom:8px}.step{min-width:70px;font-size:.72rem}.filters .field,.filters .grow{flex:140px;min-width:0}.btn{padding:9px 14px}.bot-thread{min-height:240px;max-height:55vh}}
