:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;font-weight:400;color:#12201f;background:#f6f8fb;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,textarea,select{font:inherit}button{cursor:pointer}pre{white-space:pre-wrap;margin:0;font-family:inherit}.boot-screen,.login-page{min-height:100vh;display:grid;place-items:center;padding:24px}.academic-banner{background:#fff7ed;color:#9a3412;border:1px solid #fed7aa;padding:10px 16px;font-weight:800;font-size:.82rem;text-align:center}.login-page .academic-banner{position:fixed;top:0;left:0;right:0}.login-card,.panel{background:#fff;border:1px solid #dde7e5;border-radius:8px;box-shadow:0 14px 38px #0f172a0f}.login-card{width:min(100%,480px);padding:28px}.login-brand,.brand,.btn,.nav button,.metric,.search-box,.topbar,.page-heading,.list-row,.alert-row,.inline-form{display:flex;align-items:center}.login-brand{gap:14px;margin-bottom:20px;color:#0f766e}.login-brand h1{margin:0;font-size:1.8rem;color:#0f172a}.login-brand p{margin:4px 0 0;color:#475569}.brand-logo{width:78px;height:78px;object-fit:contain;flex:0 0 auto}.brand-logo.compact{width:42px;height:42px}.brand-logo-fallback{width:78px;height:78px;display:grid;place-items:center;color:#0f766e;flex:0 0 auto}.brand-logo-fallback.compact{width:42px;height:42px;color:#99f6e4}.notice,.error-banner,.loading-strip{padding:12px 14px;border-radius:8px;margin-bottom:16px}.notice{background:#eff6ff;color:#1d4ed8}.error-banner,.error-text{color:#b91c1c}.error-banner{background:#fef2f2;border:1px solid #fecaca}.loading-strip{background:#ecfeff;border:1px solid #a5f3fc;color:#0e7490}.form-stack{display:grid;gap:14px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.field{display:grid;gap:6px;color:#334155;font-weight:700;font-size:.9rem}.field:has(.textarea){grid-column:1 / -1}.input{width:100%;border:1px solid #cbd5e1;background:#fff;color:#0f172a;border-radius:8px;padding:10px 12px;min-height:42px}.textarea{min-height:96px;resize:vertical}.btn{gap:8px;justify-content:center;border:1px solid transparent;border-radius:8px;padding:10px 14px;font-weight:800}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:#0f766e;color:#fff}.btn-secondary{background:#eef2ff;color:#3730a3}.btn-danger{background:#fee2e2;color:#991b1b}.btn-ghost{background:transparent;color:#0f766e;border-color:#99f6e4}.demo-users{margin-top:18px;display:grid;gap:4px;color:#475569;font-size:.88rem}.app-shell{min-height:100vh;display:grid;grid-template-columns:280px 1fr}.sidebar{background:#0b1220;color:#d9f7f4;padding:20px;display:flex;flex-direction:column;gap:24px;min-height:100vh;position:sticky;top:0}.brand{gap:12px;color:#99f6e4}.brand strong{display:block;font-size:1.15rem;color:#fff}.brand span,.profile-card span{color:#9fb3c8;font-size:.86rem}.close-menu{display:none;margin-left:auto}.nav{display:grid;gap:8px}.nav button{gap:10px;width:100%;padding:12px;border:0;border-radius:8px;color:#cbd5e1;background:transparent;text-align:left;font-weight:800}.nav button.active,.nav button:hover{background:#123b3a;color:#fff}.profile-card{margin-top:auto;display:grid;gap:8px;padding-top:16px;border-top:1px solid rgba(203,213,225,.2)}.main{min-width:0}.topbar{justify-content:space-between;padding:14px 22px;background:#fff;border-bottom:1px solid #e2e8f0}.topbar>div{display:grid;text-align:right;font-size:.85rem;color:#64748b}.topbar strong{color:#0f172a}.icon-only{border:1px solid #cbd5e1;background:#fff;color:#0f172a;border-radius:8px;width:40px;height:40px;display:grid;place-items:center}.topbar .icon-only{display:none}.page-content{padding:22px;display:grid;gap:18px}.page-heading{justify-content:space-between;gap:16px}.page-heading h1{margin:0;font-size:clamp(1.45rem,2vw,2rem)}.eyebrow{text-transform:uppercase;letter-spacing:0;font-weight:900;color:#0f766e;font-size:.78rem}.muted{color:#64748b;margin:4px 0 0}.stats-grid,.content-grid{display:grid;gap:16px}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.content-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.split-view{display:grid;grid-template-columns:360px 1fr;gap:16px;align-items:start}.panel{padding:18px;min-width:0}.panel h2{margin:0 0 14px;font-size:1.05rem}.panel.wide{grid-column:1 / -1}.metric{gap:12px;background:#fff;border:1px solid #dde7e5;border-radius:8px;padding:18px}.metric svg{color:#0f766e}.metric.warning svg,.alert-row.warning{color:#b45309}.metric span{color:#64748b;font-weight:700}.metric strong{margin-left:auto;font-size:1.75rem;color:#0f172a}.list{display:grid;gap:10px}.list-row,.alert-row{justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #e2e8f0}.alert-row{width:100%;background:transparent;border-top:0;border-left:0;border-right:0;text-align:left;justify-content:flex-start;color:#0f766e}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;min-width:640px}th,td{text-align:left;padding:12px;border-bottom:1px solid #e2e8f0;vertical-align:top}th{color:#475569;font-size:.82rem;text-transform:uppercase;letter-spacing:0}.search-box{gap:8px;margin-bottom:14px}.search-box .input{border-color:transparent;background:#f1f5f9}.patient-list{display:grid;gap:8px;max-height:68vh;overflow:auto}.patient-item{width:100%;display:grid;gap:3px;text-align:left;padding:12px;border:1px solid #e2e8f0;background:#fff;border-radius:8px}.patient-item.active{border-color:#0f766e;background:#f0fdfa}.patient-item span{color:#64748b}.patient-item em{color:#b45309;font-style:normal;font-weight:800}.form-actions{grid-column:1 / -1;display:flex;gap:10px;flex-wrap:wrap}.tabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px}.tabs button{border:1px solid #cbd5e1;background:#fff;color:#334155;border-radius:8px;padding:9px 12px;font-weight:800;white-space:nowrap}.tabs button.active{background:#0f766e;border-color:#0f766e;color:#fff}.chips{display:flex;gap:8px;flex-wrap:wrap}.chips span{background:#ecfeff;color:#155e75;padding:6px 10px;border-radius:999px;font-weight:800}.inline-form{gap:8px;margin-bottom:12px}.alert-panel{border-color:#fed7aa;background:#fffaf2}.med-row,.timeline-item,.note{display:grid;gap:6px;padding:12px;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:10px}.med-row em{color:#b45309;font-weight:800;font-style:normal}.timeline{display:grid;gap:10px}.timeline-item p{margin:0;color:#475569}.empty-state{padding:22px;text-align:center;color:#64748b;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:8px}@media(max-width:1100px){.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.split-view{grid-template-columns:1fr}.patient-list{max-height:320px}}@media(max-width:780px){.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;inset:0 auto 0 0;width:min(86vw,320px);transform:translate(-110%);transition:transform .18s ease;z-index:20}.sidebar.is-open{transform:translate(0)}.close-menu,.topbar .icon-only{display:grid}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;border:0;z-index:10}.page-content{padding:16px}.content-grid,.stats-grid,.form-grid{grid-template-columns:1fr}.page-heading{align-items:stretch;flex-direction:column}.metric strong{font-size:1.45rem}}
