:root{--brand:#0e7169;--ink:#18343c;--muted:#71848b;--line:#e1e9ec;background:#f4f7fa;color:var(--ink);font-family:'Segoe UI',Arial,sans-serif}
body{background:radial-gradient(ellipse at top right,#eaf5f2 0,transparent 45%),#f4f7fa}aside{width:250px;padding:22px 16px 15px;background:linear-gradient(160deg,#102f3a,#143e45 70%,#12464a);display:flex;flex-direction:column;overflow:hidden;border-right:1px solid #ffffff0d;z-index:20}
.sidebar-brand{display:flex;gap:12px;align-items:center;padding:0 5px 19px;border-bottom:1px solid #ffffff18}.sidebar-brand img{width:68px;height:68px;object-fit:contain;background:white;border-radius:13px;padding:5px;margin:0}.sidebar-brand strong{display:block;font-size:18px;letter-spacing:1.3px;color:#fff}.sidebar-brand small{display:block;font-size:11px;line-height:1.5;letter-spacing:.2px;margin-top:4px;color:#b2cdd0}
nav{flex:1;min-height:0;overflow:auto;margin:17px -3px 12px;padding:0 3px;scrollbar-width:thin;scrollbar-color:#496972 transparent}nav button{font-size:13px;margin:2px 0;padding:11px 12px;line-height:1.35;color:#c6d8df;transition:background .18s,color .18s}nav .nav-link,nav .nav-group-toggle{display:flex;align-items:center;gap:12px;border-radius:10px;width:100%}nav svg{width:19px;height:19px;flex:none;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linejoin:round;stroke-linecap:round}nav .active,nav button.active,nav .nav-group-toggle.selected{background:#ffffff13;color:#fff}nav button:hover{background:#ffffff0c;color:#fff}nav .nav-link.active{box-shadow:inset 3px 0 #58c7ad;background:linear-gradient(90deg,#1d675f77,#ffffff0c)}.nav-chevron{margin-left:auto;font-size:18px;transition:transform .22s}.nav-group.open .nav-chevron{transform:rotate(180deg)}.nav-slide{display:grid;grid-template-rows:0fr;transition:grid-template-rows .22s ease}.nav-group.open .nav-slide{grid-template-rows:1fr}.nav-children{overflow:hidden;min-height:0;padding-left:27px}.nav-children button{padding:9px 12px;font-size:12px;border-left:1px solid #ffffff17;border-radius:0 8px 8px 0;margin:2px 0}.nav-children button.active{border-left:2px solid #58c7ad;background:#ffffff0c}.nav-section-label{font-size:9px;letter-spacing:1.8px;color:#91afb7;margin:22px 12px 8px}.nav-count{margin-left:auto;border-radius:7px;padding:2px 7px;background:#e9ae52;color:#163c44;font-size:11px}
.account{margin:0;padding-top:12px;border-top:1px solid #ffffff17}.profile-card{display:flex;gap:10px;align-items:center;border:0;background:transparent;width:100%;padding:8px;color:#fff;text-align:left}.profile-card strong{display:block;font-size:12px;font-weight:600}.profile-card small{display:block;font-size:10px;color:#acc6cf}.avatar{width:34px;height:34px;flex:none;display:inline-flex;align-items:center;justify-content:center;border-radius:11px;background:#d9f1e7;color:#166b59;font-size:12px;font-weight:700}.avatar.large{width:62px;height:62px;font-size:23px;border-radius:18px}.logout-button{margin-top:4px!important;background:#ffffff08;color:#bfd1d6;border:1px solid #ffffff13;padding:8px;font-size:11px}.logout-button:hover{background:#ffffff12}.profile-heading{display:flex;align-items:center;gap:18px;margin-bottom:24px}.profile-heading h2{margin:0 0 4px}.profile-heading p{margin:0;color:var(--muted)}.profile-heading .access-chip{margin-left:auto}.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.access-chip{display:inline-flex;padding:5px 9px;border-radius:7px;font-size:11px;background:#e5f2ed;color:#206e57}
main{margin-left:250px;padding:30px 36px;max-width:1900px}h1{font-size:29px;letter-spacing:-.7px;color:#173b46}h2{letter-spacing:-.35px}h3{font-size:16px}.eyebrow{font-size:10px;letter-spacing:2px;color:#729098}.bar{margin-bottom:26px;padding-bottom:20px;border-bottom:1px solid #dfe9ed}.bar p{font-size:12px;color:#71878f;margin-bottom:0}.bar label{font-size:11px}.bar select{height:36px;font-size:12px}.panel,.card{border:1px solid #e0e9ed;box-shadow:0 4px 15px #16333f04;border-radius:15px}.card{padding:17px 19px}.card strong{font-size:24px;font-variant-numeric:tabular-nums}.card span{font-size:11px}.dashboard-cards{gap:13px}.dashboard-partners .card{border-top:3px solid #299d82}.tools{align-items:end}.tools button,button{border-radius:8px;font-size:12px;padding:10px 14px}button.primary{background:#127d70;border-color:#127d70;box-shadow:0 3px 8px #0b776a18}button.primary:hover{background:#0f6f63}input,select,textarea{border-color:#d8e4e8;border-radius:8px}input:focus,select:focus,textarea:focus{outline:2px solid #2a9a8030;outline-offset:1px;border-color:#60a998}.patient-filters{gap:7px}.patient-filters button{background:#fff;border-color:#dbe6e9;color:#5b747e}.patient-filters .primary,.patient-filters button[aria-selected=true]{background:#127d70;color:#fff}.patient-summary{background:#fff;border:1px solid #e1e9ec;border-radius:12px;padding:13px 17px;gap:23px;font-size:12px}.patient-summary strong{font-variant-numeric:tabular-nums}.patient-scroll{border-color:#dfe8ec;border-radius:13px;box-shadow:0 3px 15px #173d4904}.patient-scroll th{background:#ecf3f5;color:#66838c;padding:12px 10px}.patient-scroll td{padding:12px 10px;font-size:12px}.patient-scroll tbody tr:hover td{background:#f3f9f7}.patient-scroll tr.patient-incomplete:hover td{background:#ffe8a3}dialog{box-shadow:0 30px 100px #153d4955;border-radius:18px}dialog::backdrop{background:#12343c80;backdrop-filter:blur(3px)}dialog label{margin-bottom:9px}.auth{border-radius:21px;box-shadow:0 20px 80px #163c4810}.auth h1{font-size:24px}.auth img{width:150px}.auth form{gap:15px}.auth .primary{padding:13px}.mobile-menu-toggle{display:none}.user-actions{display:flex;gap:6px}
@media(max-width:1100px){aside{width:222px}main{margin-left:222px;padding:25px 22px}.sidebar-brand img{width:55px;height:55px}.sidebar-brand strong{font-size:16px}.profile-grid{grid-template-columns:1fr}}
@media(max-width:700px){aside{position:fixed;left:0;top:0;width:250px;height:100dvh;transform:translateX(-100%);transition:transform .2s}body.mobile-nav-open aside{transform:translateX(0);box-shadow:0 0 0 100vmax #12343c60}main{margin-left:0;padding:20px 16px}.mobile-menu-toggle{display:inline-flex;align-self:start;margin-bottom:10px}.bar{display:block}.bar>label{margin-top:16px}.sidebar-brand{flex:none}nav{display:block;overflow:auto}nav button{min-width:0}.profile-heading{flex-wrap:wrap}.cards{gap:10px}.card strong{font-size:22px}.tools input{min-width:180px;max-width:100%}}
@media(prefers-reduced-motion:reduce){.nav-slide,.nav-chevron,aside{transition:none}}

/* Compact page headings and single-row patient view tabs. */
main{padding-top:20px}.bar{margin-bottom:14px;padding-bottom:10px;gap:10px}.bar h1{font-size:23px;line-height:1.2;margin:3px 0;letter-spacing:-.4px}
.patient-filters{flex-wrap:nowrap;gap:5px;margin:12px 0;overflow-x:auto;padding-bottom:3px;scrollbar-width:thin}.patient-filters button{flex:1 0 auto;white-space:nowrap;font-size:11px;line-height:1.25;padding:8px 9px;border-radius:7px}.patient-filters span{font-size:10px;padding:2px 5px;margin-left:4px}
@media(max-width:700px){main{padding-top:15px}.bar h1{font-size:21px}.patient-filters button{flex:0 0 auto}}
