:root{color:#1c2526;background:#f6f4ef;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button{border:0}.login-screen{min-height:100vh;display:grid;place-items:center;padding:24px;background:#f6f4ef}.login-panel{width:min(440px,100%);background:#fff;border:1px solid #d8ded9;border-radius:8px;padding:24px;box-shadow:0 18px 48px #1c252614}.login-brand{color:#183b3f;margin-bottom:24px}.login-brand span{color:#687273}.login-form,.quick-login-grid,.demo-accounts{display:grid;gap:12px}.login-form label{display:grid;gap:6px;color:#4c5a5b;font-size:14px}.login-form input{border:1px solid #cfd8d3;border-radius:8px;padding:12px}.form-error{color:#9b342d;margin:0}.demo-accounts{margin-top:18px;padding-top:18px;border-top:1px solid #e3e7e4}.quick-login-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:16px}.quick-login-grid button{min-height:42px;cursor:pointer;border-radius:8px;background:#183b3f;color:#f7fbf8;padding:10px 12px}.quick-login-grid button:hover{background:#24535a}.demo-accounts span{color:#687273;font-size:13px}.demo-accounts button,.nav-button{cursor:pointer;text-align:left;border-radius:8px}.demo-accounts button{background:#edf2ef;color:#1c2526;padding:10px 12px}.app-shell{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh}.sidebar{background:#183b3f;color:#f7fbf8;padding:24px;display:flex;flex-direction:column;gap:32px}.brand{display:flex;align-items:center;gap:12px}.brand strong,.brand span{display:block}.brand span{color:#bfd2cf;font-size:13px}nav{display:grid;gap:8px}nav a{color:#dce8e4;text-decoration:none;display:flex;align-items:center;gap:10px;padding:12px;border-radius:8px}nav a.active,nav a:hover{background:#f0b95b;color:#152527}.nav-button{color:#dce8e4;background:transparent;display:flex;align-items:center;gap:10px;padding:12px}.nav-button:hover{background:#ffffff14}main{min-width:0}.workspace{padding:28px;min-height:100vh}.topbar{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:24px}.topbar p{color:#687273;font-size:13px;margin:0 0 4px;text-transform:uppercase}.persona-line{display:block;color:#536264;margin-top:6px;max-width:760px;line-height:1.45}h1,h2{margin:0;letter-spacing:0}h1{font-size:30px}h2{font-size:18px}.status-pill,.primary-action,.composer button{min-height:42px;border:0;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:8px}.status-pill{background:#e5eee9;color:#214c4b;padding:0 14px;font-size:14px}.primary-action,.composer button{background:#1f6f68;color:#fff;padding:0 14px;cursor:pointer}.primary-action:disabled,.composer button:disabled{cursor:not-allowed;opacity:.55}.danger{background:#b94d45!important}.page-tabs{display:flex;gap:8px;margin:0 0 18px;overflow-x:auto}.page-tabs button{min-height:38px;border-radius:8px;background:#e5eee9;color:#214c4b;padding:0 14px;cursor:pointer;white-space:nowrap}.page-tabs button.active{background:#1f6f68;color:#fff}.segmented-control{display:inline-grid;grid-template-columns:repeat(2,minmax(64px,1fr));gap:4px;padding:4px;background:#e5eee9;border-radius:8px}.segmented-control button{min-height:32px;border:0;border-radius:6px;background:transparent;color:#214c4b;cursor:pointer}.segmented-control button.active{background:#1f6f68;color:#fff}.chat-layout,.doctor-grid,.overview-grid,.profile-grid,.medication-page-grid{display:grid;gap:18px}.chat-layout{grid-template-columns:minmax(0,1fr) 320px}.chat-panel,.panel,.info-panel{background:#fff;border:1px solid #d8ded9;border-radius:8px;box-shadow:0 12px 36px #1c25260f}.chat-panel{min-height:calc(100vh - 112px);display:grid;grid-template-rows:minmax(0,1fr) auto}.chat-feed{padding:20px;display:flex;flex-direction:column;gap:12px;overflow:auto}.bubble{max-width:74%;padding:12px 14px;border-radius:8px;line-height:1.55;overflow-wrap:anywhere}.bubble.patient{align-self:flex-end;background:#1f6f68;color:#fff}.bubble.agent{align-self:flex-start;background:#edf2ef}.thinking-bubble{display:inline-flex;align-items:center;gap:8px}.thinking-dots{display:inline-flex;gap:4px;align-items:center}.thinking-dots i{width:5px;height:5px;border-radius:50%;background:#50716e;animation:thinking-pulse 1s infinite ease-in-out}.thinking-dots i:nth-child(2){animation-delay:.15s}.thinking-dots i:nth-child(3){animation-delay:.3s}@keyframes thinking-pulse{0%,80%,to{opacity:.35;transform:translateY(0)}40%{opacity:1;transform:translateY(-2px)}}.source-chip-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.source-chip{display:inline-flex;align-items:center;min-height:24px;border-radius:6px;padding:0 8px;background:#dbe7e3;color:#214c4b;font-size:11px;line-height:1.2}.bubble.error,.bubble.agent-error{background:#fff0ed;color:#9b342d}.composer{border-top:1px solid #d8ded9;padding:14px;display:grid;grid-template-columns:minmax(0,1fr) 46px 46px;gap:10px}.composer input,.visit-form input,.visit-form textarea{border:1px solid #cfd8d3;border-radius:8px;padding:12px;min-width:0}.info-panel{padding:18px;display:grid;align-content:start;gap:14px}.reminder-panel{display:grid;gap:12px}.reminder-heading{display:flex;gap:12px;align-items:center}.reminder-heading span{display:block;color:#687273;font-size:13px;margin-bottom:4px}.reminder-card{display:grid;gap:10px;padding:14px;background:#f8faf7;border:1px solid #e3e7e4;border-radius:8px}.reminder-title{display:flex;justify-content:space-between;gap:10px}.reminder-title span,.reminder-card p,.checkin-status{color:#687273;font-size:13px}.reminder-card p{margin:0;line-height:1.45}.comprehension-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.comprehension-grid div{padding:8px;background:#f2f6f3;border:1px solid #e0e7e2;border-radius:6px;min-width:0}.comprehension-grid span{display:block;color:#687273;font-size:11px;margin-bottom:4px}.comprehension-grid strong{display:block;color:#213536;font-size:12px;line-height:1.35;overflow-wrap:anywhere}.comprehension-grid.compact{grid-template-columns:1fr}.reminder-card textarea{min-height:64px;resize:vertical;border:1px solid #cfd8d3;border-radius:8px;padding:10px}.reminder-actions{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}.reminder-actions button{min-height:36px;border-radius:8px;background:#e5eee9;color:#1f4f4b;display:inline-flex;align-items:center;justify-content:center;gap:6px;cursor:pointer}.reminder-actions button:disabled{opacity:.55;cursor:not-allowed}.checkin-status.taken{color:#1f6f68}.checkin-status.missed{color:#9b342d}.checkin-status.later{color:#80611e}.metric{display:flex;gap:12px;padding:14px;background:#f8faf7;border-radius:8px}.metric span{display:block;color:#687273;font-size:13px;margin-bottom:5px}.voice-mode-metric{align-items:center}.compact-datetime-input{width:min(100%,220px);min-height:34px;border:1px solid #d5ddda;border-radius:6px;padding:0 8px;color:#213536;background:#fff}.doctor-grid,.overview-grid{grid-template-columns:300px minmax(320px,.8fr) minmax(0,1.2fr);align-items:start}.doctor-grid .visit-form,.doctor-grid .summary-panel{grid-column:2 / -1}.profile-grid,.medication-page-grid{grid-template-columns:minmax(360px,.9fr) minmax(0,1.1fr);align-items:start}.panel{padding:18px}.patient-card dl,.patient-list-panel{display:grid;gap:12px}.patient-list-item{display:grid;gap:5px;background:#f8faf7;color:#1c2526;border:1px solid #e3e7e4;border-radius:8px;padding:12px;cursor:pointer;text-align:left}.patient-list-item.selected{border-color:#1f6f68;background:#e8f2ee}.patient-list-item span,.patient-list-item small{color:#687273;line-height:1.35}dt{color:#687273;font-size:13px}dd{margin:4px 0 0}.persona-highlight{background:#f8faf7;border:1px solid #e3e7e4;border-radius:8px;padding:12px}.persona-highlight dd{line-height:1.5}.visit-form,.log-panel,.summary-panel,.checkin-panel,.medication-workspace,.medication-editor,.profile-panel{display:grid;gap:12px}.profile-panel textarea{min-height:180px;resize:vertical;border:1px solid #cfd8d3;border-radius:8px;padding:12px}.caregiver-summary-panel{display:grid;gap:12px}.summary-metric{display:grid;gap:6px;padding:14px;background:#f8faf7;border:1px solid #e3e7e4;border-radius:8px}.summary-metric span{color:#536264;line-height:1.45}.persona-card{display:grid;gap:8px;background:#f8faf7;border:1px solid #e3e7e4;border-radius:8px;padding:14px}.persona-card span,.persona-card p{color:#687273;line-height:1.45;margin:0}.section-title-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.section-title-row span{color:#687273;font-size:13px}.section-title-row button{background:#e5eee9;color:#1f4f4b;border-radius:8px;min-height:34px;padding:0 12px;cursor:pointer}.kv-grid{display:grid;grid-template-columns:1fr 1fr 150px;gap:10px}.visit-form label{display:grid;gap:6px;color:#536264;font-size:13px}.visit-form input[readonly]{background:#f8faf7;color:#536264}.medication-edit-row{display:grid;grid-template-columns:minmax(180px,1.4fr) minmax(110px,.8fr) minmax(140px,1fr) minmax(150px,1fr) 88px;gap:8px}.medication-edit-row input{border:1px solid #cfd8d3;border-radius:8px;padding:10px;min-width:0}.medication-edit-row button{border-radius:8px;background:#edf2ef;color:#1c2526;cursor:pointer}.medication-edit-row button:disabled{opacity:.45;cursor:not-allowed}.medication-row-card{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;padding:12px;background:#f8faf7;border:1px solid #e3e7e4;border-radius:8px}.medication-row-card strong,.medication-row-card span,.medication-row-card small{display:block}.medication-row-card span,.medication-row-card small,.empty-state{color:#687273;line-height:1.4}.empty-state{margin:0}.visit-form textarea{min-height:78px;resize:vertical}.log-row{border-top:1px solid #e3e7e4;padding-top:12px}.log-row-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.icon-danger-button{width:30px;height:30px;border:0;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;background:#f7e8e6;color:#9f3d35;cursor:pointer}.icon-danger-button:disabled{cursor:not-allowed;opacity:.55}.log-row span,.log-row small{color:#687273;font-size:12px}.log-row p{margin:5px 0}.summary-panel{min-height:420px}.markdown-body{line-height:1.6}.markdown-body h1{font-size:22px}.markdown-body h2{margin-top:18px}@media(max-width:920px){.app-shell,.chat-layout,.doctor-grid,.overview-grid,.profile-grid,.medication-page-grid,.kv-grid,.medication-edit-row{grid-template-columns:1fr}.sidebar{position:static;padding:16px}.topbar{align-items:flex-start;flex-direction:column}.chat-panel{min-height:62vh}.bubble{max-width:92%}}
