*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif;background:#f5f7fb;color:#172033}.auth-page{min-height:100vh;display:grid;place-items:center;padding:24px}.auth-card{width:min(440px,100%);background:#fff;border:1px solid #e5e9f2;border-radius:18px;padding:32px;box-shadow:0 18px 50px rgba(20,30,55,.08)}.brand{display:flex;gap:14px;align-items:center;margin-bottom:28px}.logo{width:48px;height:48px;border-radius:12px;display:grid;place-items:center;background:#173b6d;color:#fff;font-weight:800}.brand h1{font-size:21px;margin:0}.brand p,.muted{color:#687386;margin:4px 0}.alert{background:#fff1f1;border:1px solid #f0caca;color:#a12525;padding:12px;border-radius:10px;margin-bottom:16px}label{display:block;font-weight:650;margin:16px 0}input{display:block;width:100%;margin-top:7px;padding:12px;border:1px solid #ccd3df;border-radius:9px;font:inherit}button{width:100%;padding:12px 16px;border:0;border-radius:9px;background:#173b6d;color:#fff;font-weight:700;cursor:pointer}.top{height:64px;background:#fff;border-bottom:1px solid #e5e9f2;display:flex;align-items:center;justify-content:space-between;padding:0 24px}.top form{margin:0}.top .secondary{width:auto;background:#eef2f7;color:#27354a}.container{max-width:1100px;margin:0 auto;padding:40px 24px}.hero{background:#fff;border:1px solid #e5e9f2;border-radius:18px;padding:30px}.hero h1{margin:5px 0}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:800;color:#61718b}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:18px}.grid article{background:#fff;border:1px solid #e5e9f2;border-radius:14px;padding:20px}.grid span{display:block;color:#687386;font-size:13px}.grid strong{display:block;margin-top:6px}@media(max-width:700px){.grid{grid-template-columns:1fr}.auth-card{padding:24px}}
.success{background:#ecfdf3;color:#166534;border:1px solid #bbf7d0;border-radius:10px;padding:12px;margin-bottom:16px}
nav{display:flex;align-items:center;gap:12px;flex-wrap:wrap}nav a{color:#173b6d;text-decoration:none;font-weight:650}.panel,.form-card{background:#fff;border:1px solid #e5e9f2;border-radius:18px;padding:24px;margin-top:18px}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px}.panel-head h2{margin:0}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:760px}th,td{text-align:left;padding:13px 12px;border-bottom:1px solid #edf0f5;vertical-align:top}th{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:#687386}.button-link{display:inline-block;padding:8px 11px;border-radius:8px;background:#eef2f7;color:#173b6d;text-decoration:none;font-weight:700;font-size:13px}.badge{display:inline-block;padding:4px 8px;border-radius:999px;background:#eef2f7;font-size:12px;font-weight:700}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 16px}.form-grid .full{grid-column:1/-1}textarea,select{display:block;width:100%;margin-top:7px;padding:12px;border:1px solid #ccd3df;border-radius:9px;font:inherit;background:#fff}small{display:block;color:#687386;margin-top:5px}.quick-links{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:18px}.quick-links a{background:#fff;border:1px solid #e5e9f2;border-radius:14px;padding:20px;text-decoration:none;color:#172033}.quick-links strong,.quick-links span{display:block}.quick-links span{margin-top:6px;color:#687386;font-size:13px}@media(max-width:700px){.form-grid,.quick-links{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.top{height:auto;padding:16px 20px;gap:10px;flex-wrap:wrap}}

.schedule-actions,.doctor-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.action-primary,.action-edit,.action-delete{display:inline-flex;align-items:center;justify-content:center;padding:9px 13px;border-radius:8px;text-decoration:none;font-weight:800;font-size:13px;white-space:nowrap}.action-primary{background:#173b6d;color:#fff}.action-edit{background:#e8f0ff;color:#173b6d;border:1px solid #c8d8f5}.action-delete{width:auto;background:#fff0f0;color:#b42318;border:1px solid #f0b7b7;cursor:pointer}.delete-form{display:inline;margin:0}.schedule-actions .delete-form button{font:inherit}
.date-help{display:block;font-size:12px;color:#667085;margin-top:5px}

/* Professional DD-MM-YYYY date picker */
.date-picker-wrap{position:relative;display:block;width:100%;margin-top:7px}
.date-picker-wrap .date-picker-input{width:100%;margin-top:0;padding-right:44px;background:#fff}
.date-picker-wrap .date-picker-input:focus{border-color:#7b9bc8;outline:0;box-shadow:0 0 0 3px rgba(23,59,109,.08)}
button.date-picker-trigger{position:absolute;right:7px;top:50%;transform:translateY(-50%);width:28px!important;min-width:28px!important;max-width:28px!important;height:28px!important;min-height:28px!important;padding:0!important;margin:0!important;border:0!important;border-radius:6px!important;background:transparent!important;color:#53657e!important;display:grid!important;place-items:center!important;line-height:1!important;box-shadow:none!important;appearance:none!important;-webkit-appearance:none!important;cursor:pointer}
button.date-picker-trigger:hover{background:#eef2f7!important;color:#173b6d!important}
button.date-picker-trigger:focus-visible{outline:2px solid #7b9bc8;outline-offset:1px}
.date-picker-trigger svg{width:17px;height:17px;display:block;pointer-events:none}
.date-picker-popup{position:absolute;z-index:1100;top:calc(100% + 7px);left:0;width:316px;background:#fff;border:1px solid #d9e0ea;border-radius:12px;box-shadow:0 14px 35px rgba(20,30,55,.14);padding:12px;color:#172033}
.date-picker-popup[hidden]{display:none!important}
.dp-head{display:grid;grid-template-columns:32px 1fr 32px;align-items:center;text-align:center;gap:6px;padding:1px 0 10px;border-bottom:1px solid #edf0f5}
.dp-head strong{font-size:13px;font-weight:750;color:#27354a}
.dp-nav{width:30px!important;min-width:30px!important;height:30px!important;padding:0!important;margin:0!important;border:1px solid #e0e5ec!important;border-radius:7px!important;background:#fff!important;color:#53657e!important;font-size:19px!important;line-height:1!important;display:grid!important;place-items:center!important;box-shadow:none!important}
.dp-nav:hover{background:#f5f7fa!important;color:#173b6d!important}
.dp-week,.dp-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}
.dp-week{margin:8px 0 3px}
.dp-week span{text-align:center;font-size:10px;font-weight:750;color:#8490a1;padding:3px 0}
.dp-day,.dp-empty{height:32px}
.dp-day{width:100%!important;min-width:0!important;padding:0!important;margin:0!important;border:1px solid transparent!important;border-radius:7px!important;background:#fff!important;color:#27354a!important;font:600 12px/1 system-ui,-apple-system,Segoe UI,sans-serif!important;cursor:pointer;box-shadow:none!important}
.dp-day:hover{background:#f1f4f8!important;border-color:#dce3ec!important;color:#173b6d!important}
.dp-day.dp-today{border-color:#8ca6c8!important}
.dp-day.dp-selected{background:#173b6d!important;color:#fff!important;border-color:#173b6d!important}
.dp-day.dp-selected:hover{background:#173b6d!important;color:#fff!important}
.dp-foot{display:flex;justify-content:space-between;gap:8px;border-top:1px solid #edf0f5;margin-top:9px;padding-top:9px}
.dp-foot button{width:auto!important;min-width:0!important;height:30px!important;padding:0 10px!important;margin:0!important;border-radius:7px!important;font-size:11px!important;font-weight:700!important;background:#f4f6f9!important;color:#53657e!important;box-shadow:none!important}
.dp-foot button:hover{background:#e9eef5!important;color:#173b6d!important}
@media(max-width:520px){.date-picker-popup{width:min(316px,calc(100vw - 32px))}}

/* UI v5 hardening */
html,body{min-height:100%;} a{color:#173b6d;} button{font:inherit;} .top nav a{white-space:nowrap;} .table-wrap{width:100%;}

/* ERP desktop sidebar navigation */
:root{--erp-sidebar:258px;--erp-navy:#173b6d;--erp-text:#172033;--erp-muted:#687386;--erp-border:#e5e9f2;--erp-bg:#f5f7fb}
body{background:var(--erp-bg)}
.erp-sidebar{position:fixed;inset:0 auto 0 0;width:var(--erp-sidebar);background:#fff;border-right:1px solid var(--erp-border);display:flex;flex-direction:column;z-index:1200;box-shadow:4px 0 18px rgba(20,30,55,.035)}
.erp-brand{height:76px;display:flex;align-items:center;gap:11px;padding:0 20px;border-bottom:1px solid #edf0f5}
.erp-brand-mark{width:40px;height:40px;border-radius:10px;background:var(--erp-navy);color:#fff;display:grid;place-items:center;font-size:11px;font-weight:850;letter-spacing:.06em}
.erp-brand strong{display:block;font-size:15px;line-height:1.15;color:#172033}.erp-brand span{display:block;font-size:11px;color:#8993a4;margin-top:3px}
.erp-user-card{margin:18px 14px 10px;padding:12px;background:#f7f9fc;border:1px solid #edf0f5;border-radius:11px;display:flex;align-items:center;gap:10px}
.erp-avatar{width:34px;height:34px;border-radius:9px;background:#e8f0ff;color:var(--erp-navy);display:grid;place-items:center;font-weight:800;font-size:13px;flex:0 0 auto}
.erp-user-meta{min-width:0}.erp-user-meta strong{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.erp-user-meta span{display:block;font-size:10px;color:var(--erp-muted);margin-top:3px;text-transform:capitalize}
.erp-nav{padding:4px 12px;overflow:auto}.erp-nav-label{font-size:10px;text-transform:uppercase;letter-spacing:.11em;color:#9aa3b2;font-weight:800;padding:15px 10px 7px}
.erp-nav-item{position:relative;display:flex;align-items:center;gap:10px;height:42px;padding:0 11px;margin:2px 0;border-radius:9px;color:#4e5d73;text-decoration:none;font-size:13px;font-weight:650;transition:background .15s,color .15s}
.erp-nav-item:hover{background:#f3f6fa;color:var(--erp-navy)}.erp-nav-item.active{background:#eaf1fb;color:var(--erp-navy);font-weight:750}.erp-nav-item.active:before{content:"";position:absolute;left:0;top:9px;bottom:9px;width:3px;border-radius:3px;background:var(--erp-navy)}
.erp-nav-icon{width:20px;text-align:center;font-size:15px;color:#7a879a}.erp-nav-item.active .erp-nav-icon{color:var(--erp-navy)}
.erp-sidebar-footer{margin-top:auto;padding:12px 14px;border-top:1px solid #edf0f5}.erp-sidebar-footer form{margin:0}.erp-logout{width:100%;height:40px;padding:0 11px!important;background:#fff!important;color:#59677c!important;border:1px solid #e1e6ee!important;border-radius:9px!important;text-align:left;font-size:12px!important;box-shadow:none!important}.erp-logout:hover{background:#f7f9fc!important;color:#173b6d!important}.erp-logout span{margin-right:8px}
.container{max-width:1160px;margin:0 0 0 var(--erp-sidebar);padding:34px 38px 50px}.top{display:none}.erp-mobile-header,.sidebar-mobile-toggle,.sidebar-overlay{display:none}
@media(max-width:900px){.erp-sidebar{transform:translateX(-100%);transition:transform .2s ease;box-shadow:12px 0 30px rgba(20,30,55,.14)}body.sidebar-open .erp-sidebar{transform:translateX(0)}.sidebar-overlay{position:fixed;inset:0;background:rgba(15,23,42,.32);z-index:1100}.sidebar-mobile-toggle{position:fixed;left:12px;top:12px;z-index:1300;display:grid;place-items:center;width:38px!important;height:38px!important;padding:0!important;border:1px solid #dce3ec!important;border-radius:9px!important;background:#fff!important;color:#173b6d!important;box-shadow:0 4px 12px rgba(20,30,55,.08)!important}.erp-mobile-header{display:flex;height:62px;margin-left:0;background:#fff;border-bottom:1px solid var(--erp-border);align-items:center;padding-left:62px;gap:8px}.erp-mobile-header strong{font-size:14px}.erp-mobile-header span{font-size:11px;color:#7b8798}.container{margin-left:0;padding:24px 18px 40px}}
@media(min-width:901px){body{padding-top:0}}

/* Foundation 5 — Clinical consultation */
.encounter-strip{display:flex;gap:22px;flex-wrap:wrap;margin-top:18px;padding-top:14px;border-top:1px solid #edf0f5}.encounter-strip span{font-size:12px;color:#687386}.encounter-strip strong{display:block;color:#172033;font-size:13px;margin-top:3px}.clinical-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.clinical-form-grid .full{grid-column:1/-1}.clinical-form-grid label,.diagnosis-box label{font-size:13px;font-weight:700;color:#344054}.clinical-form-grid textarea,.diagnosis-box textarea{min-height:100px;resize:vertical}.diagnosis-box{margin-top:24px;padding:20px;border:1px solid #e1e7ef;background:#f9fafc;border-radius:14px}.diagnosis-box h3{margin:0 0 4px;font-size:16px}.diagnosis-box .form-grid{margin-top:14px}.diagnosis-box select[multiple]{min-height:170px}.form-actions{display:flex;justify-content:flex-end;gap:10px;align-items:center;flex-wrap:wrap;margin-top:24px;padding-top:18px;border-top:1px solid #edf0f5}.secondary-button{width:auto!important;background:#f4f6f9!important;color:#344054!important;border:1px solid #dce2ea!important}.diagnosis-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.diagnosis-list>div{padding:12px 14px;border:1px solid #e6eaf0;border-radius:10px;background:#fafbfd}.diagnosis-list span{margin-left:8px;font-size:11px;color:#687386}.clinical-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.clinical-summary>div{padding:14px;background:#f8fafc;border:1px solid #edf0f5;border-radius:10px}.clinical-summary span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#7b8798;font-weight:800}.clinical-summary p{margin:8px 0 0;font-size:13px;line-height:1.6}@media(max-width:700px){.clinical-form-grid,.clinical-summary,.diagnosis-list{grid-template-columns:1fr}.clinical-form-grid .full{grid-column:auto}.form-actions{justify-content:stretch}.form-actions>*{flex:1 1 auto;text-align:center}}

/* Appointment confirmation, notifications and messaging */
.appointment-confirm-hero{display:flex;justify-content:space-between;align-items:stretch;gap:28px}.token-card{min-width:220px;background:#f7f9fc;border:1px solid #dfe6ef;border-radius:14px;padding:18px 22px;display:flex;flex-direction:column;justify-content:center;text-align:center}.token-card span{font-size:10px;letter-spacing:.12em;font-weight:800;color:#7a8798}.token-card strong{font-size:38px;line-height:1.1;color:#173b6d;margin:6px 0}.token-card small{margin:0;color:#687386}.appointment-success{display:flex;gap:8px;flex-direction:column}.detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px}.detail-grid article{background:#fff;border:1px solid #e5e9f2;border-radius:14px;padding:17px}.detail-grid span{display:block;color:#687386;font-size:12px}.detail-grid strong{display:block;margin-top:5px;font-size:14px}.integration-status{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.integration-status>div{padding:15px;border:1px solid #e5e9f2;border-radius:11px;background:#fafbfd}.integration-status strong{display:block;font-size:13px}.integration-status span{display:inline-block;margin-top:7px;font-size:11px;font-weight:800}.integration-status small{line-height:1.45}.status-ok{color:#147a43}.status-neutral{color:#53657e}.notice{display:flex;flex-direction:column;gap:5px;padding:14px 16px;border:1px solid #eadfb8;background:#fffaf0;border-radius:10px;color:#5f4b16}.inline-form{display:flex;gap:9px;align-items:center;margin-top:15px;flex-wrap:wrap}.inline-form .secondary-button,.inline-form .button-link{width:auto}.empty-state{padding:30px;text-align:center;color:#687386;border:1px dashed #dce2ea;border-radius:12px}.empty-state strong,.empty-state span{display:block}.empty-state span{margin-top:5px;font-size:13px}.conversation-list{display:flex;flex-direction:column}.conversation-row{display:flex;align-items:center;gap:13px;padding:15px 5px;border-bottom:1px solid #edf0f5;text-decoration:none;color:#172033}.conversation-row:hover{background:#fafbfd}.conversation-avatar{width:40px;height:40px;border-radius:11px;background:#eaf1fb;color:#173b6d;display:grid;place-items:center;font-weight:800;flex:0 0 auto}.conversation-main{min-width:0;flex:1}.conversation-main strong,.conversation-main span{display:block}.conversation-main strong{font-size:13px}.conversation-main span{font-size:12px;color:#687386;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:4px}.conversation-meta{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.conversation-meta time{font-size:10px;color:#8a94a3}.conversation-meta b{min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:#173b6d;color:#fff;display:grid;place-items:center;font-size:10px}.message-panel{padding:0;overflow:hidden}.message-list{padding:20px;display:flex;flex-direction:column;gap:10px;min-height:300px;max-height:58vh;overflow:auto;background:#f8fafc}.message-bubble{max-width:min(75%,650px);padding:11px 13px;border-radius:12px;background:#fff;border:1px solid #e3e8ef;font-size:13px;line-height:1.55}.message-bubble.mine{align-self:flex-end;background:#eaf1fb;border-color:#cbdcf2}.message-bubble.theirs{align-self:flex-start}.message-bubble small{font-size:10px;margin-top:6px}.message-compose{display:flex;gap:10px;padding:15px;border-top:1px solid #e5e9f2;align-items:flex-end}.message-compose textarea{margin:0;flex:1}.message-compose button{width:auto;white-space:nowrap}.notification-list{display:flex;flex-direction:column}.notification-row{display:flex;gap:12px;padding:15px 5px;border-bottom:1px solid #edf0f5}.notification-row.unread{background:#f8fbff}.notification-dot{width:8px;height:8px;border-radius:50%;background:#aeb8c6;margin:7px 2px 0 4px;flex:0 0 auto}.notification-row.unread .notification-dot{background:#173b6d}.notification-row strong{font-size:13px}.notification-row p{margin:5px 0;color:#536175;font-size:12px;line-height:1.5}.notification-row small{font-size:10px}.panel-head form{margin:0}@media(max-width:800px){.appointment-confirm-hero{flex-direction:column}.token-card{min-width:0}.detail-grid,.integration-status{grid-template-columns:1fr 1fr}}@media(max-width:600px){.detail-grid,.integration-status{grid-template-columns:1fr}.message-compose{flex-direction:column;align-items:stretch}.message-compose button{width:100%}.message-bubble{max-width:88%}}
/* Foundation 5.1 — clinical vitals workspace */
.vitals-panel{box-shadow:0 1px 2px rgba(20,30,55,.02)}

/* Clinical consultation workspace */
.consultation-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:24px}.consultation-hero-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding-top:4px}.consultation-hero-meta strong{font-size:16px}.consultation-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px;margin-top:20px}.consultation-main{min-width:0}.consultation-sidebar{display:flex;flex-direction:column;gap:20px}.clinical-section{padding:24px 0;border-bottom:1px solid #edf0f5}.clinical-section:first-of-type{padding-top:4px}.clinical-section:last-of-type{border-bottom:0;padding-bottom:4px}.section-title{display:flex;gap:13px;align-items:flex-start;margin-bottom:18px}.section-title>span{width:30px;height:30px;border-radius:8px;background:#eef3fa;color:#173b6d;display:grid;place-items:center;font-size:11px;font-weight:800;flex:0 0 auto}.section-title h3{margin:0;font-size:16px}.section-title p{margin:4px 0 0;color:#687386;font-size:12px}.clinical-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.clinical-form-grid label,.diagnosis-picker label,.followup-card label{display:block;font-size:12px;font-weight:750;color:#344054}.clinical-form-grid textarea,.diagnosis-picker textarea,.followup-card textarea{margin-top:7px;min-height:108px;resize:vertical}.diagnosis-picker{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.diagnosis-picker select{min-height:190px}.diagnosis-search{display:grid;gap:14px}.followup-card{display:grid;gap:14px;padding:16px;background:#f8fafc;border:1px solid #e8edf4;border-radius:12px}.date-picker-field{margin-top:7px}.date-picker-field input{margin-top:0}.actions-spacer{flex:1}.side-title{margin:0 0 16px;font-size:14px}.summary-list{margin:0}.summary-list>div{padding:10px 0;border-bottom:1px solid #edf0f5}.summary-list>div:last-child{border-bottom:0}.summary-list dt{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:#8993a4;font-weight:800}.summary-list dd{margin:4px 0 0;font-size:13px;color:#172033;font-weight:650}.full-width{display:flex;justify-content:center;margin-top:14px}.status-card{padding:13px;background:#f8fafc;border:1px solid #edf0f5;border-radius:10px}.status-card p{margin:9px 0 0;font-size:12px;line-height:1.5}.compact-diagnoses{display:grid;gap:8px}.compact-diagnoses>div{padding:10px 11px;background:#f8fafc;border:1px solid #edf0f5;border-radius:9px}.compact-diagnoses strong{display:block;font-size:12px}.compact-diagnoses span{display:block;margin-top:3px;color:#7b8798;font-size:10px}.status-draft{background:#fff7d6}.status-completed{background:#ecfdf3}.date-picker-wrap{position:relative}.date-picker-wrap .date-picker-input{padding-right:42px}.date-picker-popup{z-index:2000}
@media(max-width:900px){.consultation-layout{grid-template-columns:1fr}.consultation-sidebar{order:-1}.consultation-hero{flex-direction:column}.diagnosis-picker{grid-template-columns:1fr}}
@media(max-width:700px){.clinical-form-grid{grid-template-columns:1fr}.actions-spacer{display:none}.form-actions{justify-content:stretch}.form-actions>*{flex:1 1 auto;text-align:center}}

/* Foundation 6 — Prescription & medicines */
.page-head{display:flex;align-items:center;justify-content:space-between;gap:20px}.hero-meta{display:flex;align-items:center;gap:14px}.rx-row{border:1px solid #e4e9f0;border-radius:14px;background:#fbfcfe;padding:18px;margin-bottom:14px}.rx-row-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.rx-row-head strong{font-size:14px;color:#27354a}.rx-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px 16px}.rx-grid .full{grid-column:1/-1}.rx-grid label{font-size:12px;color:#344054}.rx-grid input,.rx-grid select,.rx-grid textarea{margin-top:6px}.dose-times{grid-column:1/-1;display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:10px 12px;margin:5px 0 9px;border:1px solid #e6eaf0;border-radius:9px;background:#fff}.dose-times>span{font-size:12px;font-weight:750;color:#687386;margin-right:4px}.dose-times label{display:flex;align-items:center;gap:5px;margin:0;font-weight:600}.dose-times input[type=checkbox]{display:inline-block;width:auto;margin:0}.rx-notes{margin:0;flex:1 1 280px}.rx-notes textarea{min-height:58px}.empty-state{text-align:center;padding:28px;color:#687386}.empty-state strong{display:block;color:#27354a;margin-bottom:4px}.empty-state p{margin:0 0 14px}.actions-spacer{flex:1}@media(max-width:850px){.rx-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.page-head{align-items:flex-start;flex-direction:column}.rx-grid{grid-template-columns:1fr}.rx-grid .full{grid-column:auto}.hero-meta{align-self:flex-start}.form-actions{align-items:stretch}.actions-spacer{display:none}.rx-notes{flex-basis:100%}}
/* Foundation 6 Pro — prescription UX */
.page-actions,.rx-toolbar-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.rx-toolbar{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:18px}.rx-toolbar p{margin:4px 0 0}.rx-toolbar select{margin:0;min-width:230px}.rx-pro-hero{display:flex;justify-content:space-between;gap:20px}.token-card.compact{min-width:150px;padding:12px 16px}.token-card.compact strong{font-size:30px}.rx-row-head>div{display:flex;align-items:center;gap:7px}.quick-chip{width:34px;height:34px;border:1px solid #dbe3ed;border-radius:9px;background:#fff;color:#173b6d;cursor:pointer;display:inline-grid;place-items:center}.voice-textarea{position:relative}.voice-textarea textarea{padding-right:48px}.voice-textarea .quick-chip{position:absolute;right:8px;bottom:8px}.rx-footer-grid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:end;margin-top:18px}.rx-actions{margin:0;align-items:flex-end}.pharmacy-send-form{display:grid;grid-template-columns:1fr 1fr auto;gap:14px;align-items:end}.pharmacy-send-form label{font-size:12px;font-weight:750}.pharmacy-send-form textarea,.pharmacy-send-form select{margin-top:6px}.stylus-panel{position:fixed;left:calc(50% - 420px);top:7vh;width:min(840px,90vw);background:#fff;border:1px solid #dfe6ef;border-radius:16px;box-shadow:0 18px 55px rgba(20,30,55,.2);z-index:3000;padding:14px}.stylus-head{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:10px}.stylus-head strong,.stylus-head span{display:block}.stylus-head span{font-size:11px;color:#748094;margin-top:3px}.stylus-head>div:last-child{display:flex;gap:7px}.stylus-panel canvas{width:100%;height:380px;background:#fff;border:1px solid #dce3ec;border-radius:10px;touch-action:none;cursor:crosshair}.template-builder{margin-top:18px;padding:16px;background:#f8fafc;border:1px solid #e6ebf2;border-radius:12px}.template-med-row{display:grid;grid-template-columns:1.3fr 1.2fr 1fr 1fr .8fr 1.4fr auto;gap:8px;margin-top:10px}.template-med-row input,.template-med-row select{margin:0}.check-line{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:650;margin-top:14px}.check-line input{width:auto;margin:0}.small-note{font-size:11px}.notice a{width:max-content}.rx-pro-row{background:#fff}.rx-pro-row .dose-times label{min-height:32px;padding:5px 8px;border-radius:7px}.rx-pro-row .dose-times input{accent-color:#173b6d}@media(max-width:900px){.rx-toolbar,.pharmacy-send-form{grid-template-columns:1fr;display:grid}.rx-toolbar-actions{justify-content:flex-start}.pharmacy-send-form{display:grid}.rx-footer-grid{grid-template-columns:1fr}.stylus-panel{left:5vw;top:4vh;width:90vw}.template-med-row{grid-template-columns:1fr 1fr}}@media(max-width:600px){.page-actions,.rx-toolbar-actions{width:100%}.page-actions>*{flex:1}.rx-toolbar-actions>*{width:100%}.rx-pro-hero{flex-direction:column}.token-card.compact{width:100%}.template-med-row{grid-template-columns:1fr}.stylus-head{align-items:flex-start;flex-direction:column}.stylus-head>div:last-child{width:100%;flex-wrap:wrap}.stylus-head>div:last-child>*{flex:1}.stylus-panel canvas{height:320px}}

/* Laboratory Test Master actions */
.lab-master-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.lab-master-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 16px;border-radius:10px;text-decoration:none;font-weight:800;font-size:13px;white-space:nowrap}.lab-master-actions .primary-action{background:#1f6feb;color:#fff;border:1px solid #1f6feb}.lab-master-actions .secondary-action{background:#fff;color:#344054;border:1px solid #d0d7e2}.lab-master-actions a:hover{transform:translateY(-1px)}
@media(max-width:600px){.lab-master-actions{width:100%}.lab-master-actions a{flex:1}}

/* =========================================================
   Dashboard Pro UI v12 — modern medical ERP dashboard
   ========================================================= */
.dashboard-page{background:#f7f9fc;color:#172033}.dashboard-container{max-width:none!important;padding:0 34px 42px!important;margin-left:var(--erp-sidebar)!important}.dashboard-topbar{height:72px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid #e9edf3;background:#fff;margin:0 -34px;padding:0 34px;position:sticky;top:0;z-index:900}.dashboard-search{height:42px;width:min(560px,48vw);border:1px solid #dfe5ed;border-radius:11px;background:#fbfcfe;display:flex;align-items:center;padding:0 14px;gap:10px}.dashboard-search span{font-size:23px;color:#8a96a8;line-height:1}.dashboard-search input{border:0!important;outline:0;width:100%;padding:0!important;margin:0!important;background:transparent;font-size:13px;color:#27354a}.dashboard-top-actions{display:flex;align-items:center;gap:9px}.top-icon{position:relative;width:38px;height:38px;border:1px solid #e1e6ed;border-radius:10px;display:grid;place-items:center;text-decoration:none;color:#526176;background:#fff;font-size:19px}.top-icon:hover{background:#f4f7fb;color:#173b6d}.notification-icon b{position:absolute;right:-4px;top:-5px;min-width:17px;height:17px;padding:0 4px;border-radius:10px;background:#dc3545;color:#fff;font-size:9px;display:grid;place-items:center;border:2px solid #fff}.dashboard-profile{display:flex;align-items:center;gap:9px;margin-left:7px;padding-left:12px;border-left:1px solid #e7ebf1}.dashboard-avatar{width:38px;height:38px;border-radius:50%;background:#eaf1fb;color:#1d5db8;display:grid;place-items:center;font-size:12px;font-weight:850}.dashboard-profile strong,.dashboard-profile small{display:block}.dashboard-profile strong{font-size:12px}.dashboard-profile small{font-size:10px;color:#7b8798;margin-top:2px;text-transform:capitalize}.profile-chevron{color:#7c8797;margin-left:3px}.dashboard-welcome{min-height:178px;margin-top:24px;border:1px solid #e2e9f2;border-radius:18px;background:linear-gradient(105deg,#fff 0%,#f8fbff 66%,#f0f7ff 100%);padding:25px 28px;display:flex;justify-content:space-between;align-items:center;overflow:hidden;position:relative}.dashboard-welcome:after{content:"";position:absolute;width:240px;height:240px;border:1px solid #d8e7fb;border-radius:50%;right:55px;top:-125px;opacity:.65}.dashboard-kicker{font-size:10px;text-transform:uppercase;letter-spacing:.14em;font-weight:800;color:#6c86a7;margin:0 0 5px}.dashboard-welcome h1{font-size:28px;letter-spacing:-.03em;margin:0;color:#182538}.dashboard-welcome h1 span{color:#1d68c9}.dashboard-welcome>div:first-child>p:last-of-type{margin:7px 0 15px;color:#718096;font-size:13px}.welcome-meta{display:flex;flex-wrap:wrap;gap:18px;color:#5f7088;font-size:11px}.welcome-pulse{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-end;color:#7a8da6;font-size:12px;font-style:italic}.welcome-pulse strong{font-size:60px;line-height:.9;color:#54a5e8;opacity:.55;margin-top:8px}.dashboard-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:16px}.kpi-card{min-height:112px;padding:18px 16px;border:1px solid #e0e7f0;border-radius:15px;background:#fff;display:flex;align-items:center;gap:13px;text-decoration:none;color:#172033;position:relative;overflow:hidden}.kpi-card:hover{transform:translateY(-1px);box-shadow:0 8px 22px rgba(40,73,110,.08)}.kpi-icon{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;font-size:21px;flex:0 0 auto}.kpi-card.blue .kpi-icon{background:#e7f1ff;color:#1766c1}.kpi-card.green .kpi-icon{background:#e8f8f0;color:#19a16a}.kpi-card.purple .kpi-icon{background:#f1eaff;color:#7d45d8}.kpi-card.amber .kpi-icon{background:#fff4df;color:#d68b00}.kpi-card small{font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:#607089;font-weight:750;display:block}.kpi-card strong{font-size:27px;line-height:1.15;display:block;margin:4px 0}.kpi-card p{font-size:10px;color:#7c8899;margin:0}.kpi-card p b{color:#3f536e}.kpi-card i{font-style:normal;color:#8b97a8;font-size:24px;margin-left:auto}.dashboard-grid-main{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(310px,.9fr);gap:16px;margin-top:16px}.dashboard-col-right{display:grid;gap:16px;align-content:start}.dash-card{background:#fff;border:1px solid #e1e7ef;border-radius:15px;box-shadow:0 2px 10px rgba(27,47,74,.025);overflow:hidden}.dash-card-head{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:17px 18px 13px}.dash-card-head h2{margin:0;font-size:15px;letter-spacing:-.01em}.dash-card-head p{margin:3px 0 0;color:#8a95a5;font-size:10px}.dash-card-head a{font-size:10px;color:#1c67c7;text-decoration:none;font-weight:750;white-space:nowrap}.dash-tabs{display:flex;gap:7px;overflow:auto;padding:0 18px 13px}.dash-tabs span{white-space:nowrap;padding:7px 11px;border:1px solid #e2e7ee;border-radius:18px;font-size:10px;color:#65748a}.dash-tabs span.active{background:#1768d1;border-color:#1768d1;color:#fff}.appointment-list{padding:0 13px}.appointment-row{display:grid;grid-template-columns:72px 38px minmax(150px,1fr) 128px 78px 15px;align-items:center;gap:10px;min-height:72px;padding:9px 7px;border-top:1px solid #edf0f4}.appointment-row:hover{background:#fafcff}.apt-time strong,.apt-time span{display:block}.apt-time strong{font-size:12px}.apt-time span{font-size:9px;color:#8a95a5;margin-top:3px}.patient-mini-avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#edf3fb;color:#4774a7;font-size:10px;font-weight:800}.apt-patient strong{display:block;font-size:12px}.apt-patient span,.apt-patient small,.apt-doctor small{display:block;color:#7d899a;font-size:9px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.apt-doctor{text-align:left}.apt-doctor small{font-size:10px;color:#586981}.status-pill{display:inline-block;padding:4px 7px;border-radius:6px;font-size:9px;font-weight:800;white-space:nowrap}.status-completed{background:#e5f8ee;color:#148355}.status-scheduled{background:#eef2f7;color:#52647c}.status-confirmed{background:#e5f1ff;color:#1664bc}.status-checked_in,.status-waiting{background:#fff4dd;color:#a66a00}.status-in_consultation{background:#eae8ff;color:#6741bd}.status-cancelled,.status-no_show{background:#ffeded;color:#b63b3b}.apt-action{display:block;text-align:center;padding:7px 5px;border-radius:7px;text-decoration:none;font-size:9px;font-weight:800}.apt-action.primary{background:#1768d1;color:#fff}.apt-action.secondary{background:#f2f5f9;color:#42546b;border:1px solid #dfe5ec}.apt-arrow{font-size:19px;color:#8a98aa}.full-schedule{display:flex;justify-content:center;gap:8px;padding:12px;border-top:1px solid #edf0f4;text-decoration:none;color:#3974b9;font-size:10px;font-weight:750}.provider-card{padding-bottom:8px}.provider-row{display:flex;align-items:center;gap:10px;padding:9px 16px;border-top:1px solid #edf0f4}.provider-avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#e9f2ff;color:#2869ae;font-size:10px;font-weight:850;flex:0 0 auto}.provider-row>div{min-width:0;flex:1}.provider-row strong{display:block;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.provider-row small{display:block;color:#8a95a5;font-size:9px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.provider-row small i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#32b878;margin-right:5px}.provider-row>b{min-width:29px;height:29px;border-radius:8px;background:#e8f1ff;color:#1768d1;display:grid;place-items:center;font-size:11px}.quick-card{padding-bottom:14px}.quick-card .dash-card-head{padding-bottom:11px}.bolt{color:#1768d1;font-size:21px}.quick-action-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;padding:0 13px}.quick-action-grid a{min-height:62px;border:1px solid #e0e7ef;border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;text-decoration:none;color:#40536c;background:#fbfcfe}.quick-action-grid a:hover{background:#f2f7fd;border-color:#bcd2ed}.quick-action-grid span{font-size:18px;color:#2671c7}.quick-action-grid strong{font-size:8px;text-align:center}.dashboard-lower-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:16px;margin-top:16px}.queue-card,.smart-card,.activity-card{min-height:238px}.queue-visual{display:flex;align-items:center;gap:22px;padding:4px 18px 10px}.queue-donut{width:122px;height:122px;border-radius:50%;background:conic-gradient(#3f8fe8 0deg 110deg,#2bb59a 110deg 210deg,#77c89e 210deg 325deg,#ef9c87 325deg 360deg);display:grid;place-items:center;position:relative;flex:0 0 auto}.queue-donut:after{content:"";position:absolute;width:82px;height:82px;border-radius:50%;background:#fff}.queue-donut>div{position:relative;z-index:1;text-align:center}.queue-donut strong,.queue-donut span{display:block}.queue-donut strong{font-size:22px}.queue-donut span{font-size:9px;color:#8a95a5}.queue-legend{display:grid;gap:9px;width:100%}.queue-legend span{font-size:9px;color:#6e7c8f;display:flex;align-items:center;gap:7px}.queue-legend i{width:7px;height:7px;border-radius:50%;background:#3f8fe8}.queue-legend span:nth-child(2) i{background:#2bb59a}.queue-legend span:nth-child(3) i{background:#77c89e}.queue-legend span:nth-child(4) i{background:#ef9c87}.queue-legend b{margin-left:auto;color:#34475f}.wait-summary{border-top:1px solid #edf0f4;display:grid;grid-template-columns:1fr 1fr;padding:13px 18px}.wait-summary div+div{border-left:1px solid #edf0f4;padding-left:18px}.wait-summary span{display:block;color:#8994a4;font-size:9px}.wait-summary strong{display:block;font-size:16px;margin-top:4px}.reminder-row,.activity-row{display:flex;align-items:center;gap:10px;padding:11px 17px;border-top:1px solid #edf0f4}.reminder-row>span,.activity-icon{width:29px;height:29px;border-radius:8px;background:#edf5ff;color:#2b71c7;display:grid;place-items:center;font-size:12px;flex:0 0 auto}.reminder-row div,.activity-row div{min-width:0;flex:1}.reminder-row strong,.activity-row strong{display:block;font-size:10px}.reminder-row small,.activity-row small{display:block;font-size:8px;color:#8994a4;margin-top:3px}.reminder-row a{font-size:9px;color:#286fc0;text-decoration:none}.activity-icon{background:#e8f7ef;color:#19a16a;border-radius:50%}.dashboard-bottom-grid{display:grid;grid-template-columns:1fr 1.55fr;gap:16px;margin-top:16px}.calendar-card{padding-bottom:14px}.calendar-controls{display:flex;gap:4px}.calendar-controls button{width:27px!important;height:27px!important;padding:0!important;border:1px solid #e0e5ec!important;border-radius:7px!important;background:#fff!important;color:#627187!important;font-size:17px!important}.calendar-week,.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;padding:0 15px}.calendar-week span{text-align:center;font-size:8px;color:#98a2b0;font-weight:800;padding-bottom:7px}.calendar-grid{row-gap:3px}.cal-day{height:29px!important;width:100%!important;padding:0!important;background:#fff!important;color:#44566e!important;border:1px solid transparent!important;border-radius:7px!important;font-size:9px!important;box-shadow:none!important}.cal-day:hover{background:#f1f5fa!important}.cal-day.today{background:#1d70d2!important;color:#fff!important;border-color:#1d70d2!important}.cal-empty{height:29px}.assistant-card{display:flex;align-items:center;gap:18px;padding:23px 25px;background:linear-gradient(110deg,#f7fbff,#eef7ff)}.assistant-badge{width:62px;height:62px;border-radius:17px;background:#e0efff;color:#1b72cc;display:grid;place-items:center;font-size:27px;flex:0 0 auto}.assistant-label{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:#2372c2;font-weight:850}.assistant-card h2{margin:4px 0 4px;font-size:18px}.assistant-card p{margin:0;color:#718198;font-size:10px;line-height:1.5}.assistant-links{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.assistant-links a{padding:6px 8px;border:1px solid #cfe0f3;background:#fff;border-radius:7px;text-decoration:none;color:#41617f;font-size:8px;font-weight:750}.empty-state{padding:40px 15px;text-align:center;color:#7d899a;display:flex;flex-direction:column;gap:5px}.empty-state strong{font-size:12px;color:#4b5c73}.empty-state span{font-size:10px}.empty-state.compact{padding:22px}.dashboard-mobile-nav{display:none}
@media(max-width:1200px){.dashboard-kpis{grid-template-columns:repeat(2,1fr)}.dashboard-lower-grid{grid-template-columns:1fr 1fr}.activity-card{grid-column:1/-1}.appointment-row{grid-template-columns:65px 34px minmax(130px,1fr) 105px 70px 12px}.dashboard-bottom-grid{grid-template-columns:1fr 1.2fr}}
@media(max-width:900px){.dashboard-container{margin-left:0!important;padding:0 16px 88px!important}.dashboard-topbar{margin:0 -16px;padding:0 16px;height:62px}.dashboard-search{width:45%;}.dashboard-profile{display:none}.dashboard-top-actions{margin-left:auto}.dashboard-welcome{margin-top:16px}.dashboard-grid-main,.dashboard-lower-grid,.dashboard-bottom-grid{grid-template-columns:1fr}.activity-card{grid-column:auto}.dashboard-mobile-nav{position:fixed;display:flex;left:0;right:0;bottom:0;height:64px;background:rgba(255,255,255,.97);border-top:1px solid #dfe5ec;z-index:1400;box-shadow:0 -5px 18px rgba(30,50,75,.08);padding-bottom:env(safe-area-inset-bottom)}.dashboard-mobile-nav a{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;text-decoration:none;color:#738196;font-size:8px;font-weight:700}.dashboard-mobile-nav a span{font-size:17px}.dashboard-mobile-nav a.active{color:#1768d1}.dashboard-welcome{padding:20px}.welcome-pulse{display:none}.dashboard-search input::placeholder{font-size:10px}}
@media(max-width:620px){.dashboard-kpis{grid-template-columns:1fr}.dashboard-top-actions .top-icon:nth-child(2){display:none}.dashboard-search{width:calc(100% - 120px)}.dashboard-search{height:38px}.dashboard-welcome h1{font-size:23px}.welcome-meta{gap:8px;font-size:9px}.appointment-row{grid-template-columns:57px 32px minmax(120px,1fr) 72px 10px}.apt-action{display:none}.apt-patient small{display:none}.apt-doctor small{font-size:8px}.dash-tabs{padding-bottom:10px}.queue-visual{gap:14px}.queue-donut{width:105px;height:105px}.queue-donut:after{width:71px;height:71px}.quick-action-grid{grid-template-columns:repeat(2,1fr)}}
