@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap";:root{color:#272827;font-synthesis:none;--accent:#426f61;--accent-dark:#2b5d4c;--muted:#80837e;--line:#e9e7e2;--paper:#fff;--bg:#f6f4f0;background:#f6f4f0;font-family:DM Sans,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}h1,h2,h3,p{margin:0}h1,h2{font-family:Manrope,sans-serif}h1{letter-spacing:-1px;font-size:29px;line-height:1.2}h2{letter-spacing:-.2px;font-size:16px}.shell{min-height:100vh;display:flex}.sidebar{border-right:1px solid var(--line);background:#fdfcf9;flex-direction:column;flex-shrink:0;width:234px;height:100vh;padding:28px 18px 22px;display:flex;position:sticky;top:0}.brand{letter-spacing:-.9px;align-items:center;gap:11px;padding:0 12px;font-family:Manrope,sans-serif;font-size:19px;font-weight:800;display:flex}.brand-icon{color:#fff;background:#426f61;border-radius:12px;justify-content:center;align-items:center;width:37px;height:37px;font-size:22px;display:inline-flex}.brand-light{font-weight:500}.brand small{color:#989c97;letter-spacing:0;font-size:10px;font-weight:600;display:block}.side-nav{gap:7px;margin-top:48px;display:grid}.nav{text-align:left;color:#686b66;background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;padding:13px 15px;font-size:14px;font-weight:600;display:flex}.nav.active{color:#245848;background:#e4efe7}.sidebar-bottom{border-top:1px solid var(--line);margin-top:auto;padding:18px 12px 0}.sidebar-user{color:#646762;overflow-wrap:anywhere;margin-bottom:12px;font-size:12px}.ghost{color:#436a5c;background:0 0;border:0;padding:0;font-size:13px;font-weight:700}.content{width:100%;min-width:0;max-width:1500px;margin:0 auto;padding:43px 45px 36px}.topbar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:32px;display:flex}.eyebrow{letter-spacing:2.4px;color:#879289;margin-bottom:9px;font-size:10px;font-weight:700;display:block}.top-pill{color:#557e69;white-space:nowrap;background:#e8f0e9;border-radius:30px;padding:9px 13px;font-size:12px}.toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;display:flex}.tabs{background:#eeece7;border-radius:11px;gap:4px;padding:4px;display:flex}.chip{color:#6b706b;background:0 0;border:0;border-radius:8px;padding:9px 14px;font-size:13px;font-weight:600}.chip.selected{color:#345f50;background:#fff;box-shadow:0 2px 7px #17251d12}.date-pair{align-items:center;gap:8px;display:flex}.date-pair input{max-width:160px}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.metric{background:var(--paper);border:1px solid var(--line);border-radius:15px;min-width:0;padding:22px}.metric.primary{background:#e3ede5;border-color:#d7e5db}.metric small{color:#6f756f;margin-bottom:20px;font-size:12px;display:block}.metric strong{letter-spacing:-.7px;overflow-wrap:anywhere;margin-bottom:12px;font-family:Manrope,sans-serif;font-size:23px;display:block}.metric span{color:#949a94;font-size:11px}.two-col{grid-template-columns:1.2fr 1fr;gap:18px;margin-bottom:18px;display:grid}.panel{border:1px solid var(--line);background:#fff;border-radius:15px;min-width:0;margin-bottom:18px;padding:24px}.two-col>.panel{margin-bottom:0}.section-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:22px;display:flex}.muted{color:var(--muted);font-size:12px}.bar-chart{gap:14px;display:grid}.bar-row{color:#737771;grid-template-columns:49px minmax(20px,1fr) 100px;align-items:center;gap:12px;font-size:12px;display:grid}.bar-row b{color:#434944;text-align:right}.bar-track{background:#eff0ed;border-radius:9px;height:10px;overflow:hidden}.bar-track i{background:#71a28d;border-radius:9px;height:100%;display:block}.status-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.status{color:#737771;border:1px solid #f0eeea;border-radius:10px;justify-content:space-between;gap:5px;padding:15px;font-size:12px;display:flex}.status b{color:#345b4d;font-size:17px}.hint{color:#8b8f89;margin-top:18px;font-size:11px;line-height:1.6}.table-wrap{overflow:auto}table{border-collapse:collapse;text-align:left;width:100%;font-size:13px}th{color:#858984;border-bottom:1px solid var(--line);padding:13px 8px;font-size:11px;font-weight:600}td{border-bottom:1px solid #f2f2ef;padding:16px 8px}td:last-child{color:#3b6f59}.patients-layout{grid-template-columns:minmax(260px,.75fr) minmax(420px,1.5fr);align-items:start;gap:18px;display:grid}.patient-list{max-height:56vh;overflow:auto}.patient-item{text-align:left;background:0 0;border:0;border-bottom:1px solid #f1f0ec;border-radius:5px;align-items:center;gap:11px;width:100%;padding:15px 7px;display:flex}.patient-item.chosen{background:#ecf4ed}.patient-item>span:nth-child(2){flex:1;min-width:0}.patient-item b,.patient-item small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.patient-item b{font-size:13px}.patient-item small{color:#9a9f98;margin-top:5px;font-size:11px}.avatar{color:#4c7965;background:#e2eee7;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:15px;display:flex}.chevron{color:#a1a4a0;font-size:22px}.patient-facts{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.patient-facts>div{background:#f9faf7;border-radius:10px;min-width:0;padding:14px}.patient-facts small{color:#8f9690;margin-bottom:6px;font-size:10px;display:block}.patient-facts strong{overflow-wrap:anywhere;font-size:13px}.notes{color:#59635b;white-space:pre-wrap;margin-top:16px;font-size:13px}.tag{color:#4b7865;background:#edf3ef;border-radius:7px;padding:5px 8px;font-size:10px}.field{gap:7px;min-width:0;display:grid}.field span{color:#757c75;font-size:11px;font-weight:700}input,select,textarea{color:#303a32;background:#fff;border:1px solid #e3e6e0;border-radius:8px;outline:none;width:100%;min-width:0;padding:11px 12px;font-size:13px}input:focus,textarea:focus,select:focus{border-color:#78a08a;box-shadow:0 0 0 3px #79a98b20}textarea{resize:vertical}.search{margin-bottom:10px}.button{background:var(--accent);color:#fff;border:0;border-radius:8px;min-height:40px;padding:11px 16px;font-size:12px;font-weight:700}.button:hover{background:var(--accent-dark)}.button.small{min-height:34px;padding:9px 13px}.button.wide{width:100%}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:13px;display:grid}.form-grid button{justify-self:start}.full{grid-column:1/-1}.subhead{color:#4b6557;letter-spacing:.2px;margin:3px 0 17px;font-size:12px;font-weight:800}.subhead.second{border-top:1px solid var(--line);margin-top:28px;padding-top:23px}.stack{gap:14px;display:grid}.inset{background:#f8faf7;border-radius:11px;margin:13px 0;padding:14px}.empty{text-align:center;color:#9a9e99;padding:28px 14px;font-size:12px}.empty-selection{text-align:center;color:#a0a49f;flex-direction:column;justify-content:center;align-items:center;gap:13px;min-height:310px;display:flex}.empty-selection h2{color:#5b695f}.empty-selection p{max-width:260px;font-size:12px;line-height:1.7}.big-icon{color:#75a48e;font-size:40px}.timeline{gap:23px;display:grid}.visit-entry{border-left:2px solid #d7e7d8;padding-left:20px;position:relative}.visit-entry p{white-space:pre-wrap;color:#5a625c;margin:12px 0;font-size:13px}.visit-date{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.visit-date strong{font-size:13px}.visit-date small{color:#8b918a;font-size:11px}.dot{background:#75a88b;border:2px solid #fff;border-radius:50%;width:12px;height:12px;position:absolute;left:-7px}.entry-detail{border-bottom:1px solid #f0f0ec;justify-content:space-between;gap:12px;padding:10px 0;font-size:12px;display:flex}.entry-detail b{white-space:nowrap}.entry-detail small{color:#8a958d}.inline-edit select{width:118px;padding:6px 8px;font-size:11px}.footer{color:#a0a5a0;text-align:center;margin:25px 0 0;font-size:10px}.bottom-nav{display:none}.notice{color:#335f49;cursor:pointer;background:#eaf4ec;border:1px solid #d9e6da;border-radius:10px;justify-content:space-between;margin-bottom:18px;padding:12px 16px;font-size:13px;display:flex}.login-screen{background:radial-gradient(circle at 24% 18%,#e5eee6 0%,#0000 38%),#f6f4f0;place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{border:1px solid var(--line);background:#fff;border-radius:20px;width:100%;max-width:418px;padding:42px;box-shadow:0 14px 60px #2d413214}.logo-center{margin-bottom:42px;padding:0}.login-card h1{margin-bottom:8px;font-size:24px}.login-card>.muted{margin-bottom:27px}.error{color:#a43c39;background:#fff1ef;border-radius:8px;padding:12px;font-size:13px}.centered{color:#67806d;justify-content:center;align-items:center;gap:16px;min-height:100vh;display:flex}.spinner{border:2px solid #cad9cc;border-top-color:#4b795e;border-radius:50%;width:22px;height:22px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=1100px){.sidebar{width:190px}.content{padding:36px 28px}.metric-grid{grid-template-columns:repeat(2,1fr)}.patients-layout{grid-template-columns:minmax(230px,.85fr) minmax(390px,1.35fr)}}@media (width<=760px){.sidebar{display:none}.content{padding:24px 16px 105px}.topbar{margin-bottom:23px}.topbar h1{font-size:23px}.top-pill{display:none}.two-col,.patients-layout{grid-template-columns:1fr}.patient-list{max-height:260px}.bottom-nav{border-top:1px solid var(--line);padding:7px 16px calc(7px + env(safe-area-inset-bottom));z-index:3;background:#fff;justify-content:space-around;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-nav button{color:#8e958e;background:0 0;border:0;justify-items:center;gap:2px;width:45%;padding:7px;font-size:19px;display:grid}.bottom-nav button.active{color:#2d7857}.bottom-nav span{font-size:10px}.panel{padding:20px}.footer{margin-top:8px}}@media (width<=430px){.metric-grid{gap:10px}.metric{padding:15px}.metric strong{font-size:19px}.metric small{margin-bottom:12px}.chip{padding:9px 10px;font-size:11px}.bar-row{grid-template-columns:42px minmax(20px,1fr) 85px;gap:6px;font-size:11px}.form-grid{grid-template-columns:1fr}.patient-facts{grid-template-columns:1fr 1fr}.login-card{padding:30px}}.record-editor{border-top:1px solid var(--line);margin-top:16px;padding-top:12px}.edit-toggle{color:#3b7159;text-underline-offset:3px;padding:6px 0;font-size:12px;text-decoration:underline}.visit-editor{margin:7px 0 10px}.returns-list{gap:2px;display:grid}.return-item{text-align:left;background:0 0;border:0;border-bottom:1px solid #f0f0ec;align-items:center;gap:14px;width:100%;padding:13px 6px;display:flex}.return-item:hover,.return-item:focus-visible{background:#f2f7f1;border-radius:8px}.return-date{color:#48715d;flex:0 0 90px;font-size:12px;font-weight:700}.return-person{flex:1;min-width:0}.return-person strong,.return-person small{display:block}.return-person strong{overflow-wrap:anywhere;font-size:13px}.return-person small{color:#858e86;margin-top:4px;font-size:11px}.record-editor .form-grid,.visit-editor .form-grid{align-items:end}@media (width<=430px){.return-date{flex-basis:73px;font-size:11px}.return-item{gap:8px}}.voice-panel{gap:15px;margin-top:14px;display:grid}.voice-panel h3{color:var(--accent-dark);margin:13px 0 0;font-size:14px}.voice-panel .hint{margin-top:0;font-size:12px}.voice-consent{border:1px solid #e1e7df;border-radius:10px;align-items:flex-start;gap:9px;padding:12px;font-size:12px;line-height:1.5;display:flex}.voice-consent input{width:18px;min-width:18px;height:18px;accent-color:var(--accent);margin:0}.voice-actions{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.voice-actions button:not(.ghost){color:#245d42;background:#e5f0e7;border:1px solid #d0e2d4;border-radius:8px;padding:11px 13px;font-size:12px;font-weight:700}.voice-actions .recording-action{color:#9f2c2c!important;background:#f9e8e6!important;border-color:#eabeba!important}.voice-item{border:1px solid #e3e9e2;border-radius:10px;gap:11px;padding:13px;display:grid}.voice-item-head{justify-content:space-between;align-items:center;gap:10px;font-size:12px;display:flex}.voice-item .form-grid{gap:10px}.voice-confirm{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:12px;padding-top:20px;display:flex}.voice-confirm small{color:var(--muted);font-size:11px}.voice-panel .error{margin:0}.voice-panel .notice{cursor:default;margin:0}@media (width<=760px){.voice-item{padding:10px}.voice-confirm .button{width:100%}}.voice-file-picker{background:#f8fbf8;border:1px dashed #b9d3bf;border-radius:10px;padding:13px}.voice-file-picker input{background:#fff;max-width:100%;padding:11px}.voice-file-picker small{color:var(--muted);font-size:11px;line-height:1.5}.connections-list{gap:12px;margin-top:18px;display:grid}.connection-item{border:1px solid var(--line);border-radius:10px;justify-content:space-between;align-items:center;gap:15px;padding:16px;display:flex}.connection-item strong{overflow-wrap:anywhere;margin-bottom:8px;font-size:14px;display:block}.connection-item small{color:var(--muted);margin-top:4px;font-size:11px;line-height:1.5;display:block}.connection-item .button{flex-shrink:0}.danger-action{background:#a33f3c}.danger-action:hover{background:#7c2928}@media (width<=760px){.connection-item{flex-direction:column;align-items:flex-start}.bottom-nav button{width:33%}}
