:root{--ink:#1f2933;--muted:#6b7680;--teal:#119f96;--teal-dark:#0a756f;--line:#dfe7e6;--bg:#f4f7f7;--white:#fff;--danger:#b42318;--shadow:0 12px 32px rgba(28,45,48,.09)}*{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--ink)}button,input,select,textarea{font:inherit}button{cursor:pointer;border:0;border-radius:9px;padding:10px 14px;background:#e8eeee;color:var(--ink);font-weight:700}button.primary,.actions>button{background:var(--teal);color:#fff}.ghost{background:transparent;border:1px solid var(--line)}.small{padding:7px 10px;font-size:12px}.wide{width:100%}.hidden{display:none!important}.shell{display:grid;grid-template-columns:250px 1fr;min-height:100vh}aside{background:#20292e;color:#eef6f5;padding:22px 16px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.side-brand{padding:4px 10px 18px}.brand{max-width:150px;filter:brightness(0) invert(1);opacity:.95}.product{font-size:12px;letter-spacing:2px;margin-top:10px;color:#bcd3d0}.product b{color:#50d1c5}nav{display:flex;flex-direction:column;gap:3px;overflow:auto}nav a{color:#cbd5d4;text-decoration:none;padding:10px 12px;border-radius:8px;font-size:13px}nav a:hover,nav a.active{background:#2d393e;color:#fff}nav a.active{border-left:3px solid #48c9bd}.deployment{margin-top:auto;border-top:1px solid #344146;padding:16px 8px;display:flex;gap:9px;align-items:center}.deployment .dot{width:9px;height:9px;background:#55d36c;border-radius:50%;box-shadow:0 0 0 4px rgba(85,211,108,.12)}.deployment b,.deployment small{display:block}.deployment b{font-size:12px}.deployment small{font-size:10px;color:#9db0ae;margin-top:3px}.logout{color:#dce8e7;border-color:#405157}main{min-width:0}header{height:78px;padding:14px 28px;background:#fff;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:10}header small,.section-title small,.workbench-head small,.panel-head small,.eyebrow{font-size:10px;letter-spacing:1.7px;color:var(--teal-dark);font-weight:800}h1{font-size:22px;margin:3px 0}.actions{display:flex;gap:10px;align-items:center}.actions select{min-width:180px}.avatar{width:38px;height:38px;border-radius:12px;background:#243238;color:#fff;display:grid;place-items:center;font-size:12px;font-weight:800}.page{display:none;padding:26px 28px;min-height:calc(100vh - 130px)}.active-page{display:block}.hero{background:linear-gradient(118deg,#243238,#31474a);border-radius:18px;color:#fff;padding:32px;display:flex;justify-content:space-between;gap:30px;box-shadow:var(--shadow)}.hero h2{font-size:31px;margin:12px 0 8px}.hero p{margin:0;color:#c5d4d3}.pill,.chips span{display:inline-block;border-radius:999px;padding:5px 9px;background:rgba(73,205,193,.12);color:#5fd7cc;font-size:10px;font-weight:800;letter-spacing:.6px}.hero-stat{max-width:310px;border-left:1px solid rgba(255,255,255,.18);padding-left:28px;display:flex;flex-direction:column;justify-content:center}.hero-stat strong{color:#5fd7cc;font-size:12px}.hero-stat span{font-size:13px;line-height:1.5;margin-top:6px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:16px 0 28px}.stats article,.panel,.modules article,.journey{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;box-shadow:0 3px 12px rgba(30,45,48,.03)}.stats span,.stats small{display:block;color:var(--muted);font-size:11px}.stats b{font-size:25px;display:block;margin:7px 0}.section-title,.panel-head,.toolbar,.workbench-head{display:flex;justify-content:space-between;align-items:center;gap:14px}.section-title h3,.panel h3{margin:4px 0}.section-title>span,.panel-head>span{font-size:11px;color:var(--muted)}.modules{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.modules .icon{font-size:23px}.modules h4{margin:9px 0 5px}.modules p{font-size:12px;color:var(--muted);line-height:1.5;margin:0}.journey{margin-top:16px}.journey-flow{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.journey-flow span{background:#eef8f7;border:1px solid #d5eeee;padding:8px 10px;border-radius:9px;font-size:11px;font-weight:700}.journey-flow i{font-style:normal;color:#7c8a8b}.toolbar{margin-bottom:16px}.search{display:flex;gap:8px;flex:1;max-width:650px}.search input{flex:1}.content-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.content-grid.two-thirds{grid-template-columns:1.6fr 1fr}.panel{min-width:0}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:12px}th,td{text-align:left;padding:11px 9px;border-bottom:1px solid #edf1f1}th{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.5px}.empty{padding:30px 12px;text-align:center;color:#879192;font-size:12px}.patient-identity{display:flex;gap:12px;align-items:center}.patient-identity>span{width:48px;height:48px;border-radius:14px;background:#e3f5f3;color:#0d8179;display:grid;place-items:center;font-weight:900}.patient-identity h3{margin:0 0 3px}.patient-identity b{font-size:11px;color:var(--teal-dark)}dl{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0}dl div{background:#f7f9f9;border-radius:9px;padding:9px}dt{font-size:9px;color:var(--muted);text-transform:uppercase}dd{margin:3px 0 0;font-size:12px;font-weight:700}.mini-list{display:grid;gap:7px}.enc-row{display:flex;justify-content:space-between;text-align:left;background:#f7f9f9}.enc-row span{font-size:10px;color:var(--muted)}.workbench-head{background:#223136;color:#fff;padding:22px;border-radius:14px;margin-bottom:12px}.workbench-head h2{margin:4px 0}.workbench-head p{margin:0;color:#bfd0cf;font-size:12px}.chips{display:flex;gap:6px}.tabs{display:flex;gap:5px;border-bottom:1px solid var(--line);margin-bottom:16px}.tabs button{background:transparent;border-radius:0;padding:12px}.tabs button.active{color:var(--teal-dark);border-bottom:3px solid var(--teal)}.tab-body{display:none}.tab-body.active{display:block}.form-grid{display:grid;gap:12px}.form-grid.one{grid-template-columns:1fr}.form-grid.two{grid-template-columns:1fr 1fr}.form-grid.three{grid-template-columns:repeat(3,1fr)}.form-grid.four{grid-template-columns:repeat(4,1fr)}label{font-size:11px;color:#536063;font-weight:700;display:flex;flex-direction:column;gap:6px}.span-2{grid-column:span 2}.check{flex-direction:row;align-items:center}.check input{width:auto}input,select,textarea{width:100%;border:1px solid #ccd9d8;background:#fff;border-radius:9px;padding:10px 11px;outline:none}textarea{min-height:82px;resize:vertical}input:focus,select:focus,textarea:focus{border-color:#62beb8;box-shadow:0 0 0 3px rgba(17,159,150,.08)}.stack-list{display:grid;gap:8px}.list-card,.queue-row{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:10px;border:1px solid #e6ecec;border-radius:10px;padding:10px}.list-card small,.queue-row small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.money{text-align:right}.queue-row{grid-template-columns:70px 1fr minmax(120px,180px) auto auto}.queue-number{font-size:18px;font-weight:900;color:var(--teal-dark)}.ticket-preview,.receipt-preview{margin-top:16px}.thermal{width:280px;margin:0 auto;background:#fff;border:1px dashed #aab7b6;padding:18px;text-align:center;font-family:Consolas,monospace}.thermal>*{display:block;margin:5px 0}.thermal strong{font-size:38px}.thermal .total{font-size:25px;font-weight:900}.powered-line{font-size:8px;margin-top:12px!important}.modal{position:fixed;inset:0;background:rgba(16,25,28,.55);display:grid;place-items:center;z-index:50;padding:20px}.modal-card{background:#fff;border-radius:16px;width:min(520px,95vw);max-height:90vh;overflow:auto;padding:24px;position:relative;box-shadow:0 30px 80px rgba(0,0,0,.22)}.modal-card.large{width:min(900px,96vw)}.modal-close{position:absolute;right:14px;top:14px;background:transparent;font-size:22px}.toast{position:fixed;right:24px;top:90px;background:#183b37;color:#fff;padding:12px 16px;border-radius:10px;box-shadow:var(--shadow);z-index:60;max-width:380px;font-size:12px}.toast.error{background:#8f261f}.alert{padding:10px;border-radius:8px;margin-top:10px;font-size:12px}.alert.error{background:#fff0ee;color:#9c291f}.alert.ok{background:#eaf8f2;color:#116849}.muted{color:var(--muted);font-size:12px}.login-wrap{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at top left,#e9f7f6,transparent 40%),#eef2f2;padding:20px}.login-card{width:min(420px,94vw);background:#fff;border:1px solid var(--line);border-radius:20px;padding:34px;box-shadow:var(--shadow)}.login-logo{width:180px}.login-card h1{font-size:28px;margin:10px 0}.login-card p{font-size:13px;color:var(--muted);margin:0 0 22px}.login-card .powered{display:block;text-align:center;color:#8a9595;margin-top:20px;font-size:9px}footer{margin:26px 28px;padding:16px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;color:#899494;font-size:10px}footer b{color:#596768}@media(max-width:1050px){.shell{grid-template-columns:210px 1fr}.stats,.modules{grid-template-columns:repeat(2,1fr)}.form-grid.four{grid-template-columns:repeat(2,1fr)}.form-grid.three{grid-template-columns:repeat(2,1fr)}.content-grid.two-thirds{grid-template-columns:1fr}.queue-row{grid-template-columns:60px 1fr auto}.queue-row .room{grid-column:2/4}}@media(max-width:760px){.shell{display:block}aside{position:relative;height:auto}nav{display:none}.deployment,.logout{display:none}header{position:relative;padding:12px 16px;height:auto}.actions select{max-width:130px}.actions>button{display:none}.page{padding:16px}.stats,.modules,.content-grid,.form-grid.two,.form-grid.three,.form-grid.four{grid-template-columns:1fr}.span-2{grid-column:span 1}.hero{flex-direction:column}.hero-stat{border-left:0;border-top:1px solid rgba(255,255,255,.2);padding:18px 0 0}.queue-row{grid-template-columns:1fr}.queue-row .room{grid-column:auto}footer{margin:20px 16px;gap:8px;flex-wrap:wrap}}
@media print{aside,header,footer,.page,.login-wrap,.toast,.receipt-preview>button,.ticket-preview>button{display:none!important}.shell,.active-page{display:block!important}.receipt-preview,.ticket-preview{display:block!important}.thermal{border:0;width:80mm;box-shadow:none}.receipt-preview,.ticket-preview{position:absolute;left:0;top:0;width:100%}}

.profile-bands{display:grid;gap:8px;margin:14px 0}.profile-bands>div{border-left:3px solid var(--teal);background:#f7f9f9;padding:10px 12px;border-radius:7px}.profile-bands b,.profile-bands span{display:block}.profile-bands b{font-size:10px;text-transform:uppercase;color:var(--teal-dark);margin-bottom:3px}.profile-bands span{font-size:11px;line-height:1.45}.patient-actions{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0 18px}.invoice-actions{display:flex;gap:6px}.queue-display-panel{grid-column:1/-1;background:#17272b;color:#fff}.queue-display{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding-top:12px}.display-call{background:#fff;color:#203033;border-radius:14px;padding:20px;text-align:center}.display-call strong{display:block;font-size:34px;color:var(--teal-dark)}.display-call span{display:block;font-size:14px;margin-top:6px;font-weight:800}@media(max-width:900px){.queue-display{grid-template-columns:repeat(2,1fr)}}

.capability-strip{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px}.capability-strip span{background:#fff;border:1px solid #dfe8e7;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:700;color:#334643;box-shadow:0 2px 8px rgba(0,0,0,.03)}

/* PASS 1 — operational workstation redesign */
.dashboard-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:16px}.dashboard-heading h2{margin:3px 0;font-size:28px}.dashboard-heading p{margin:0;color:var(--muted);font-size:12px}.dashboard-date{font-size:12px;color:var(--muted);font-weight:700}.executive-stats{grid-template-columns:repeat(6,1fr);margin-top:0}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.chart-panel{min-height:285px}.mini-chart{height:205px;display:grid;grid-template-columns:repeat(7,1fr);gap:10px;align-items:end;padding:14px 4px 0}.bar-col{height:100%;display:grid;grid-template-rows:22px 1fr 24px;text-align:center;align-items:end}.bar-value{font-size:10px;font-weight:800;color:#334643}.bar-track{height:140px;background:#eef4f3;border-radius:8px 8px 3px 3px;display:flex;align-items:flex-end;overflow:hidden}.bar-track i{display:block;width:100%;background:var(--teal);border-radius:7px 7px 0 0;min-height:3px}.bar-col small{font-size:9px;color:var(--muted);padding-top:7px}.metric-bars{display:grid;gap:15px;padding-top:12px}.metric-row>div:first-child{display:flex;justify-content:space-between;gap:8px;font-size:11px}.metric-row span{color:var(--muted)}.metric-track{height:8px;background:#edf2f2;border-radius:99px;overflow:hidden;margin-top:6px}.metric-track i{display:block;height:100%;background:var(--teal);border-radius:99px}.alert-row{border-left:4px solid #7d9290;background:#f7f9f9;padding:11px 12px;border-radius:8px}.alert-row b,.alert-row span{display:block}.alert-row span{font-size:11px;color:var(--muted);margin-top:3px}.alert-row.warning{border-left-color:#e2a62e}.alert-row.critical{border-left-color:#c94035}.snapshot-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.snapshot-grid>div{background:#f7f9f9;border:1px solid #e8eeee;border-radius:10px;padding:14px}.snapshot-grid span,.snapshot-grid b{display:block}.snapshot-grid span{font-size:10px;color:var(--muted)}.snapshot-grid b{font-size:19px;margin-top:5px}.reception-stats,.triage-stats{margin-top:0}.triage-layout{grid-template-columns:.72fr 1.6fr}.danger-box{background:#fff5f3;border:1px solid #f0cbc6;border-radius:12px;padding:14px;margin:8px 0 16px}.danger-head{display:flex;justify-content:space-between;gap:10px;margin-bottom:10px}.danger-head b{color:#a33129}.danger-head span{font-size:10px;color:#8f5b57}.danger-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.danger-check{flex-direction:row;align-items:center;background:#fff;border:1px solid #ead9d6;padding:9px;border-radius:8px;font-size:10px}.danger-check input{width:auto}.modal-card.xlarge{width:min(1120px,97vw)}.span-3{grid-column:span 3}.form-section{border-bottom:1px solid var(--line);padding:8px 0 5px;color:var(--teal-dark);font-size:12px;text-transform:uppercase;letter-spacing:1px}.insurance-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.service-price{background:#eef8f7;border:1px solid #d3ece9;border-radius:10px;padding:12px;display:flex;justify-content:space-between;gap:12px;font-size:11px}.service-price span{color:var(--teal-dark);font-weight:800}.clinical-tabs{position:sticky;top:78px;background:var(--bg);z-index:5}.disposition-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:12px 0}.disposition-btn{background:#f3f7f7;border:1px solid #dce7e6}.disposition-btn.selected{background:#dff3f1;border-color:var(--teal);color:var(--teal-dark)}.plan-note{margin-top:16px}#billingTab,#clearanceTab{display:none!important}.workbench-head{margin-top:0}.panel h3{font-size:18px}.page{background:#f5f8f8}header{box-shadow:0 1px 0 rgba(24,45,47,.03)}
@media(max-width:1200px){.executive-stats{grid-template-columns:repeat(3,1fr)}.danger-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.dashboard-grid,.triage-layout{grid-template-columns:1fr}.executive-stats{grid-template-columns:repeat(2,1fr)}.danger-grid{grid-template-columns:1fr}.span-3{grid-column:span 1}.insurance-grid{grid-template-columns:1fr}}

/* PASS 2 — departmental workstations */
.workstation-stats{margin-top:14px;margin-bottom:16px}.four-stats{grid-template-columns:repeat(4,1fr)}.six-stats{grid-template-columns:repeat(6,1fr)}.eight-stats{grid-template-columns:repeat(8,1fr)}.workstation-stats article{min-height:104px;padding:15px}.workstation-stats b{font-size:23px}.workstation-grid{display:grid;grid-template-columns:minmax(340px,.78fr) minmax(560px,1.5fr);gap:16px;align-items:start}.cashier-layout{grid-template-columns:minmax(360px,.8fr) minmax(580px,1.35fr)}.diagnostic-layout,.pharmacy-layout{grid-template-columns:minmax(390px,.82fr) minmax(620px,1.35fr)}.worklist-panel{padding:0;overflow:hidden}.worklist-panel .panel-head{padding:18px;border-bottom:1px solid var(--line)}.workstation-list{max-height:670px;overflow:auto;padding:10px}.worklist-filter{padding:10px 12px 0}.worklist-item{width:100%;display:grid;grid-template-columns:1fr auto;gap:10px;text-align:left;background:#fff;border:1px solid #e1e9e8;border-radius:11px;padding:13px;margin:0;color:var(--ink);font-weight:400}.worklist-item:hover{border-color:#8bcac5;background:#f8fcfb}.worklist-item.selected{border-color:var(--teal);background:#eef9f7;box-shadow:0 0 0 2px rgba(17,159,150,.08)}.worklist-main{min-width:0}.worklist-title{display:flex;justify-content:space-between;align-items:center;gap:8px}.worklist-title b{font-size:13px}.worklist-item small{display:block;color:var(--muted);font-size:10px;margin-top:4px;line-height:1.35}.worklist-status,.worklist-amount{text-align:right;align-self:center}.worklist-status b,.worklist-amount b{display:block;font-size:12px}.priority-badge,.status-pill{display:inline-flex;align-items:center;border-radius:999px;padding:4px 7px;font-size:9px;font-weight:900;letter-spacing:.3px;background:#edf3f3;color:#526362;white-space:nowrap}.priority-badge.urgent{background:#fff4db;color:#8a5b00}.priority-badge.critical,.status-pill.critical{background:#ffebe8;color:#a22920}.priority-badge.routine{background:#eaf7f5;color:#126f68}.active-workspace{min-height:520px}.workspace-empty{min-height:440px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--muted);padding:40px}.workspace-empty h3{color:var(--ink);margin:12px 0 4px}.workspace-empty p{max-width:430px;line-height:1.5}.empty-state-icon{width:64px;height:64px;border-radius:18px;display:grid;place-items:center;background:#e7f6f4;color:var(--teal-dark);font-weight:900;font-size:15px}.patient-banner{display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--line);padding-bottom:15px;margin-bottom:15px}.patient-avatar{width:48px;height:48px;border-radius:14px;background:#dff4f1;color:var(--teal-dark);display:grid;place-items:center;font-weight:900}.patient-banner h3{margin:0 0 4px;font-size:18px}.patient-banner p{margin:0;color:var(--muted);font-size:11px}.cashier-reference-grid,.order-meta-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:14px 0}.cashier-reference-grid{grid-template-columns:repeat(3,1fr)}.cashier-reference-grid>div,.order-meta-grid>div{background:#f5f8f8;border:1px solid #e4ebea;border-radius:9px;padding:10px}.cashier-reference-grid span,.order-meta-grid span{display:block;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.4px}.cashier-reference-grid b,.order-meta-grid b{display:block;margin-top:4px;font-size:11px}.service-summary{border-top:1px solid var(--line);padding-top:12px}.service-summary h4,.workflow-action h4,.result-entry h4{margin:0 0 10px}.amount-due{margin:18px 0;background:#17373a;color:#fff;border-radius:14px;padding:18px 20px}.amount-due span,.amount-due small{display:block}.amount-due span{font-size:10px;color:#bcd1cf;text-transform:uppercase}.amount-due strong{display:block;font-size:31px;margin:6px 0}.amount-due small{font-size:10px;color:#bcd1cf}.cashier-payment-form{border-top:1px solid var(--line);padding-top:16px}.payment-method-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.payment-confirm{width:100%;font-size:15px;margin-top:14px;padding:14px}.receipt-success{text-align:center;background:#f1faf8;border:1px solid #cfe9e5;border-radius:13px;padding:18px;margin-top:14px}.receipt-success>*{display:block;margin:4px auto}.receipt-success strong{font-size:25px;color:var(--teal-dark)}.receipt-success small{font-size:10px;color:var(--muted)}.receipt-check{width:38px;height:38px;border-radius:50%;background:var(--teal);color:#fff;display:grid;place-items:center!important;font-weight:900;font-size:19px}.workflow-tabs{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin:0 0 14px}.workflow-tab{background:#fff;border:1px solid var(--line);border-radius:999px;padding:8px 13px;font-size:11px}.workflow-tab.active{background:#183c3a;color:#fff;border-color:#183c3a}.tab-refresh{margin-left:auto}.clinical-indication{background:#f7f9f9;border-left:3px solid var(--teal);padding:10px 12px;margin:12px 0;border-radius:7px}.clinical-indication span{font-size:9px;text-transform:uppercase;color:var(--muted)}.clinical-indication p{font-size:11px;line-height:1.5;margin:4px 0 0}.workflow-action{margin-top:14px;border-top:1px solid var(--line);padding-top:14px}.compact-form input,.compact-form select{padding:8px}.specimen-card,.study-card{border:1px solid #dfe8e7;border-radius:12px;padding:13px;margin-top:13px;background:#fbfdfd}.specimen-card{display:grid;grid-template-columns:1fr 1fr auto;gap:14px;align-items:center}.specimen-card span{display:block;font-size:9px;color:var(--muted);text-transform:uppercase}.specimen-card b{display:block;margin:3px 0}.specimen-card small{font-size:10px;color:var(--muted)}.specimen-actions,.workspace-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.danger-ghost{background:#fff2f0;color:#a62d24;border:1px solid #efc7c2}.danger-action{background:#a83229;color:#fff}.danger-text{color:#a83229!important}.ok-text{color:#16725d}.specimen-label{max-width:340px;margin:12px auto;padding:14px;border:1px dashed #8d9c9b;text-align:center;background:#fff}.specimen-label>*{display:block;margin:4px}.barcode-text{font-family:monospace;font-size:22px;letter-spacing:2px}.inline-action-form{display:flex;gap:8px;margin-top:10px}.result-entry{margin-top:16px}.result-table{border:1px solid #e1e8e7;border-radius:11px;overflow:hidden}.result-row{display:grid;grid-template-columns:1.2fr 1fr 1fr .7fr .6fr;gap:8px;align-items:center;padding:9px;border-bottom:1px solid #edf1f1;font-size:11px}.result-row:last-child{border-bottom:0}.result-head{background:#f4f7f7;color:var(--muted);font-size:9px;text-transform:uppercase;font-weight:800}.result-row small{display:block;color:var(--muted);font-size:9px;margin-top:2px}.result-row input{padding:7px}.result-flag{display:inline-block;padding:4px 6px;border-radius:999px;font-size:8px;font-weight:900;background:#e9f7f2;color:#176e58}.result-flag.abnormal{background:#fff3d8;color:#8a5b00}.result-flag.critical{background:#ffebe8;color:#a52c24}.critical-panel{margin-top:16px}.critical-result-row{display:flex;justify-content:space-between;gap:14px;align-items:center;background:#fff4f2;border-left:4px solid #bd352b;padding:11px 13px;border-radius:8px}.critical-result-row small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.critical-result-row>span{font-size:10px;font-weight:800;color:#a32e26}.report-card{margin-top:14px;background:#f7f9f9;border-radius:12px;padding:15px}.report-card h4{font-size:11px;margin:12px 0 4px}.report-card p{font-size:11px;line-height:1.55;margin:0}.critical-report{border:1px solid #efbcb7;background:#fff5f3}.report-status{display:flex;justify-content:space-between;gap:10px}.report-status span,.report-status b{font-size:9px;text-transform:uppercase}.report-status b{color:#ad3027}.released-stamp{margin-top:14px;padding:9px;text-align:center;border:1px solid #abd9c9;color:#16705a;font-size:10px;font-weight:900;border-radius:8px}.critical-check{background:#fff0ee;border:1px solid #f1cbc6;padding:10px;border-radius:8px}.safety-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:13px 0}.safety-card{border:1px solid #dfe8e7;background:#f8faf9;border-radius:10px;padding:10px}.safety-card span,.safety-card b,.safety-card small{display:block}.safety-card span{font-size:9px;text-transform:uppercase;color:var(--muted)}.safety-card b{font-size:11px;margin:4px 0}.safety-card small{font-size:9px;line-height:1.45;color:var(--muted)}.safety-card.danger{background:#fff2f0;border-color:#efc7c2}.safety-card.warning{background:#fff9e8;border-color:#ebd597}.safety-card.ok{background:#f0faf6;border-color:#cee8dc}.dispense-lines{display:grid;gap:10px}.dispense-line{border:1px solid #dfe8e7;border-radius:11px;padding:12px;position:relative}.medication-order b,.medication-order small{display:block}.medication-order small{color:var(--muted);font-size:10px;margin-top:3px}.medication-order p{font-size:10px;background:#f5f8f8;padding:7px;border-radius:7px}.batch-picker{display:grid;grid-template-columns:1.4fr .6fr;gap:10px;margin-top:10px}.controlled-chip{position:absolute;right:10px;top:10px;border-radius:999px;background:#fff0dc;color:#87550a;padding:4px 7px;font-size:8px;font-weight:900}.controlled-witness{margin:12px 0;background:#fff8e9;border:1px solid #ead39a;border-radius:10px;padding:12px}.controlled-witness small{font-size:9px;color:#7d6541}.dispense-footer{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:end;margin-top:14px}.admin-drawer{margin-top:16px;padding:0}.admin-drawer summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;padding:16px 18px}.admin-drawer summary::-webkit-details-marker{display:none}.admin-drawer summary span:first-child b,.admin-drawer summary span:first-child small{display:block}.admin-drawer summary small{font-size:10px;color:var(--muted);margin-top:3px}.admin-drawer-body{border-top:1px solid var(--line);padding:18px}.admin-drawer-body>article{min-width:0}.admin-note{background:#f5f9f8;border-radius:11px;padding:15px}.admin-note p{font-size:11px;line-height:1.55;color:var(--muted)}.ip-tab-panel{display:none}.ip-tab-panel.active{display:block}.ward-board{display:grid;gap:15px;margin-top:10px}.ward-section{border:1px solid #dfe8e7;border-radius:12px;padding:12px}.ward-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.ward-heading b,.ward-heading small{display:block}.ward-heading small,.ward-heading span{font-size:9px;color:var(--muted)}.bed-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(125px,1fr));gap:8px}.bed-tile{text-align:left;min-height:90px;display:flex;flex-direction:column;justify-content:space-between;border:1px solid #dce5e4;background:#f7faf9;padding:10px;border-radius:10px}.bed-tile span{font-size:9px;color:var(--muted)}.bed-tile b{font-size:10px;line-height:1.25}.bed-tile small{font-size:8px;color:#768482}.bed-tile.occupied{background:#eaf7f5;border-color:#b8ddd8}.bed-tile.available{background:#f3faf6;border-color:#cce6d7}.bed-tile.cleaning{background:#fff7e8;border-color:#ead4a6}.bed-tile.maintenance,.bed-tile.blocked{background:#f3f3f3;color:#8b9292}.bed-tile.selected{box-shadow:0 0 0 2px var(--teal);border-color:var(--teal)}.pending-admission,.task-row,.clinical-order-row{display:flex;justify-content:space-between;gap:10px;align-items:center;border-bottom:1px solid #edf1f1;padding:10px 2px}.pending-admission b,.pending-admission small,.task-row b,.task-row small,.clinical-order-row b,.clinical-order-row small{display:block}.pending-admission small,.task-row small,.clinical-order-row small{font-size:9px;color:var(--muted);margin-top:3px}.admission-placement{margin-top:12px;background:#eef8f6;border:1px solid #d4eae6;border-radius:11px;padding:12px}.admission-placement h4{margin:0 0 10px}.patient-census-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:10px}.inpatient-card{text-align:left;background:#fff;border:1px solid #dfe7e6;border-radius:11px;padding:12px}.inpatient-card:hover,.inpatient-card.selected{border-color:var(--teal);background:#f0f9f8}.inpatient-card-head{display:flex;justify-content:space-between;gap:8px}.inpatient-card-head b,.inpatient-card-head small{display:block}.inpatient-card-head small{font-size:9px;color:var(--muted);margin-top:3px}.inpatient-card-body{display:grid;gap:4px;margin-top:10px}.inpatient-card-body span{font-size:9px;color:#536564}.patient-context-banner{background:#203237;color:#fff;border-radius:13px;padding:14px 18px;margin-bottom:14px}.patient-context-banner .patient-banner{border:0;margin:0;padding:0}.patient-context-banner .patient-avatar{background:#3a5356;color:#7be0d6}.patient-context-banner .patient-banner h3{color:#fff}.patient-context-banner .patient-banner p{color:#c4d4d2}.empty-context{text-align:center;color:#70807f;background:#edf2f2}.inpatient-care-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.vitals-strip{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;margin:10px 0 14px}.vitals-strip>div{background:#f5f8f8;border-radius:8px;padding:8px}.vitals-strip span,.vitals-strip b{display:block}.vitals-strip span{font-size:8px;color:var(--muted);text-transform:uppercase}.vitals-strip b{font-size:11px;margin-top:3px}.empty.compact{padding:14px 4px}.compact-list{max-height:230px;overflow:auto}.top-gap{margin-top:12px}.clinical-note-card,.care-plan-row{background:#f6f9f9;border-radius:9px;padding:10px;font-size:10px}.clinical-note-card p,.care-plan-row p{margin:5px 0;line-height:1.45}.care-plan-row small{display:block;color:var(--muted);margin:4px 0}.mar-row{border:1px solid #dfe8e7;border-radius:10px;padding:12px;display:grid;grid-template-columns:minmax(210px,.7fr) 1.3fr;gap:12px;align-items:center}.mar-row.overdue{border-color:#e6b0aa;background:#fff6f4}.mar-row b,.mar-row small{display:block}.mar-row small{font-size:9px;color:var(--muted);margin-top:3px}.mar-controls{display:grid;grid-template-columns:minmax(95px,.7fr) auto auto minmax(120px,1fr) auto auto;gap:6px;align-items:center}.mar-controls input{padding:7px;font-size:10px}.check.tiny{font-size:8px;flex-direction:row}.fluid-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:10px 0 15px}.fluid-summary>div{background:#f4f8f7;border-radius:9px;padding:12px;text-align:center}.fluid-summary span,.fluid-summary b{display:block}.fluid-summary span{font-size:9px;color:var(--muted)}.fluid-summary b{font-size:17px;margin-top:5px}.checklist-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.checklist-grid .check{background:#f6f9f8;border:1px solid #e2e9e8;border-radius:8px;padding:10px}.span-all{grid-column:1/-1}.danger-action.wide{width:100%;padding:13px}.danger-action:hover{background:#8b2821}
@media(max-width:1350px){.six-stats{grid-template-columns:repeat(3,1fr)}.eight-stats{grid-template-columns:repeat(4,1fr)}.patient-census-grid{grid-template-columns:repeat(2,1fr)}.vitals-strip{grid-template-columns:repeat(3,1fr)}}
@media(max-width:1100px){.workstation-grid,.cashier-layout,.diagnostic-layout,.pharmacy-layout{grid-template-columns:1fr}.workstation-list{max-height:430px}.inpatient-care-grid{grid-template-columns:1fr}.safety-grid{grid-template-columns:1fr}.mar-row{grid-template-columns:1fr}.mar-controls{grid-template-columns:1fr 1fr 1fr}.patient-census-grid{grid-template-columns:1fr}.dispense-footer{grid-template-columns:1fr}.four-stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.six-stats,.eight-stats,.four-stats{grid-template-columns:1fr 1fr}.cashier-reference-grid,.order-meta-grid{grid-template-columns:1fr 1fr}.result-row{grid-template-columns:1fr}.result-head{display:none}.batch-picker,.payment-method-row,.checklist-grid{grid-template-columns:1fr}.mar-controls{grid-template-columns:1fr}.bed-grid{grid-template-columns:repeat(2,1fr)}}
.panel-subhead{font-size:9px;text-transform:uppercase;letter-spacing:.7px;color:var(--muted);font-weight:800;margin:12px 0 5px}.nursing-note-row{background:#f6f9f8;border-left:3px solid #97cbc5;border-radius:7px;padding:9px}.nursing-note-row p{font-size:10px;line-height:1.45;margin:0}.nursing-note-row small{display:block;color:var(--muted);font-size:8px;margin-top:4px}.mar-generate-bar{display:grid;grid-template-columns:1fr minmax(180px,.5fr) auto;gap:9px;align-items:center;background:#eef8f6;border:1px solid #d3e9e5;border-radius:10px;padding:10px;margin-bottom:10px}.mar-generate-bar b,.mar-generate-bar small{display:block}.mar-generate-bar b{font-size:10px}.mar-generate-bar small{font-size:8px;color:var(--muted);margin-top:3px}.mar-generate-bar select{padding:7px;font-size:10px}@media(max-width:900px){.mar-generate-bar{grid-template-columns:1fr}}

/* PASS 3 · Complete hospital operations */
.nav-group{margin:0 0 12px}.nav-group>small{display:block;padding:8px 14px 5px;color:#6f8a8d;font-size:.68rem;letter-spacing:.14em;font-weight:800}.nav-group a{margin:2px 0}.p3-page{padding-bottom:28px}.stats.six{grid-template-columns:repeat(6,minmax(0,1fr))}.ops-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(360px,.85fr);gap:20px;align-items:start}.sticky-workspace{position:sticky;top:96px}.ops-board{display:flex;flex-direction:column;gap:8px;min-height:76px}.ops-row{width:100%;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(150px,.8fr) auto;gap:14px;align-items:center;text-align:left;border:1px solid #d9e4e5;background:#fff;border-radius:14px;padding:13px 14px;color:var(--ink);cursor:pointer}.ops-row:hover{border-color:#8acbc5;background:#fbfefe}.ops-row.static{cursor:default}.ops-row.warning{border-left:5px solid #d99516}.ops-row.critical{border-left:5px solid #c83d48;background:#fffafa}.ops-row b{display:block}.ops-row small{display:block;color:var(--muted);margin-top:3px}.ops-row .right{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:5px}.acuity{font-size:.72rem;font-weight:900;border-radius:999px;padding:7px 8px;text-align:center;background:#edf2f2}.acuity-red{background:#ffe8eb;color:#a71d2a}.acuity-orange{background:#fff0dc;color:#9a5700}.acuity-yellow{background:#fff7c7;color:#6d5700}.acuity-green{background:#e8f7ee;color:#167240}.acuity-blue{background:#e8f2ff;color:#1f5a9a}.acuity-untriaged{background:#eef1f2;color:#526165}.workflow-tabs{display:flex;gap:6px;flex-wrap:wrap;margin:15px 0}.workflow-tabs .workflow-tab{border:none;background:#eef6f6;padding:9px 12px;border-radius:10px;font-weight:800}.workflow-tabs .workflow-tab.active{background:#d8f0ee;color:#087970}.action-strip{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:16px}.action-strip select{min-width:180px}.action-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.chip-row{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:12px}.chip{padding:7px 10px;border:1px solid #d7e2e3;border-radius:999px;background:#f8fbfb;font-size:.78rem;font-weight:700}.safety-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0 16px}.safety-item{display:flex;align-items:center;gap:8px;border:1px solid #dbe4e5;border-radius:12px;padding:10px;background:#fafcfc}.safety-item span{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;font-weight:900}.safety-item.done span{background:#dff4e6;color:#126b38}.safety-item.pending span{background:#fff0dc;color:#8a5400}.status-pill.danger{background:#ffe7e9;color:#a61e2a}.status-pill.warning{background:#fff0d5;color:#8a5800}.dual-track{height:160px;display:flex;align-items:flex-end;justify-content:center;gap:4px}.dual-track i{width:11px;border-radius:5px 5px 0 0;background:#183c43}.dual-track i.collection{background:#13a49b}.mini-chart .bar-col.dual{min-width:54px}.admin-master-layout{display:grid;grid-template-columns:235px minmax(0,1fr);gap:18px;align-items:start}.master-nav{display:flex;flex-direction:column;gap:7px;position:sticky;top:96px}.master-nav button{text-align:left;border:1px solid #d7e2e3;border-radius:12px;background:#fff;padding:12px 13px;font-weight:800;color:#22373c}.master-nav button.active{background:#143d43;color:white;border-color:#143d43}.report-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.report-card{display:flex;flex-direction:column;align-items:flex-start;gap:7px;text-align:left;padding:18px;border:1px solid #d8e3e4;background:#fff;border-radius:15px}.report-card small{color:#008b82;font-weight:900;letter-spacing:.08em}.report-card b{font-size:1rem}.report-card span{color:var(--muted);font-size:.8rem}.data-table{width:100%;border-collapse:collapse;font-size:.86rem}.data-table th{background:#f5f9f9;text-align:left;padding:10px;border-bottom:1px solid #d8e3e4;white-space:nowrap}.data-table td{padding:10px;border-bottom:1px solid #e6eded;vertical-align:top}.data-table tr:hover td{background:#fbfdfd}.top-gap{margin-top:16px}.danger-text{color:#b4202c}.admin-drawer summary{cursor:pointer}.admin-drawer-body{padding-top:16px}.stats.six article b{font-size:1.5rem}
@media(max-width:1200px){.stats.six{grid-template-columns:repeat(3,1fr)}.ops-layout{grid-template-columns:1fr}.sticky-workspace{position:static}.admin-master-layout{grid-template-columns:1fr}.master-nav{position:static;display:grid;grid-template-columns:repeat(3,1fr)}.report-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.stats.six{grid-template-columns:repeat(2,1fr)}.ops-row{grid-template-columns:1fr}.ops-row .right{align-items:flex-start;text-align:left}.safety-grid{grid-template-columns:1fr 1fr}.master-nav{grid-template-columns:1fr 1fr}.report-grid{grid-template-columns:1fr}}


/* Pass 3 v4.3.0 completion */
.permission-matrix{display:grid;gap:12px;max-height:58vh;overflow:auto;padding-right:6px}.permission-module{border:1px solid var(--border,#d9e2e4);border-radius:14px;padding:12px;background:#fff}.permission-module h4{margin:0 0 10px;font-size:.82rem;letter-spacing:.08em;text-transform:uppercase}.permission-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.permission-check{display:flex;gap:8px;align-items:flex-start;padding:8px;border-radius:9px;background:#f7f9f9;font-size:.88rem}.permission-check input{margin-top:2px}.permission-check span{display:flex;flex-direction:column}.permission-check small{color:var(--muted,#66777d);font-weight:400}.admin-form-stack{display:grid;gap:18px}.admin-config-card{border:1px solid var(--border,#d9e2e4);border-radius:14px;padding:16px}.admin-config-card h4{margin:0 0 12px}.compact-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.compact-form .span-2{grid-column:1/-1}.status-pill.danger{background:#fde8e8;color:#9f1d1d}.status-pill.warning{background:#fff4d8;color:#835d00}.ops-row.selected{outline:2px solid var(--teal,#119f97);background:#f2fbfa}.claim-auth-context{padding:12px;border-left:4px solid var(--teal,#119f97);background:#f3fbfa;border-radius:8px}.clinical-stage-actions{display:flex;flex-wrap:wrap;gap:8px}.newborn-form{margin-top:14px;border-top:1px solid var(--border,#d9e2e4);padding-top:14px}@media(max-width:850px){.permission-list,.compact-form{grid-template-columns:1fr}.compact-form .span-2{grid-column:auto}}

/* Pass 4C v4.6.0 — administration control centre and SHA workflow */
.admin-control-centre{margin:18px 0 14px;padding:18px}.admin-command-tabs{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:9px;margin-top:14px}.admin-command-tabs button{display:flex;flex-direction:column;align-items:flex-start;gap:3px;text-align:left;border:1px solid #d7e3e4;background:#f8fbfb;border-radius:14px;padding:13px 14px;color:#21383d;min-height:66px;transition:.15s ease}.admin-command-tabs button b{font-size:.88rem}.admin-command-tabs button span{font-size:.71rem;color:#71868a;font-weight:600}.admin-command-tabs button:hover{border-color:#89c9c4;background:#fff;transform:translateY(-1px)}.admin-command-tabs button.active{background:#163f45;border-color:#163f45;color:#fff;box-shadow:0 6px 18px rgba(22,63,69,.14)}.admin-command-tabs button.active span{color:#d9efed}.admin-master-panel{min-height:360px}.admin-workspace-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,.7fr);gap:20px;align-items:start}.admin-payer-layout{display:grid;grid-template-columns:1fr 1fr;gap:18px}.panel-lite{border:1px solid #dbe6e7;background:#fbfdfd;border-radius:16px;padding:16px}.admin-config-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.admin-inline-price{width:140px;max-width:100%;padding:8px 9px;border:1px solid #cddadb;border-radius:9px;background:#fff;font-weight:800}.payer-lane-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.payer-lane-grid>div{border:1px solid #d8e5e5;border-radius:14px;padding:14px;background:#fafdfd;display:flex;flex-direction:column;gap:4px}.payer-lane-grid b{font-size:1rem}.payer-lane-grid span{font-weight:800;color:#087c75}.payer-lane-grid small{color:var(--muted)}.clean-steps{padding-left:21px;line-height:1.8}.sha-workflow-panel{margin:16px 0}.sha-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:10px}.sha-summary-grid>div{border:1px solid #dbe6e7;border-radius:13px;padding:12px;background:#fbfdfd;display:flex;flex-direction:column;gap:4px}.sha-summary-grid span{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:800}.sha-modal{max-width:1100px}.sha-stepper{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin:16px 0}.sha-stepper button{border:1px solid #d8e4e5;background:#f7fbfb;border-radius:11px;padding:10px 8px;font-weight:800;font-size:.78rem}.sha-stepper button.active{background:#0d8178;color:#fff;border-color:#0d8178}.sha-workspace{min-height:300px;border-top:1px solid #e1e9ea;padding-top:16px}.sha-section{animation:fadeIn .15s ease}.sha-selection-summary{display:flex;gap:12px;align-items:center;justify-content:space-between;border:1px solid #dbe7e7;border-radius:12px;padding:12px;background:#f8fbfb}.select-card{border:1px solid #d7e3e4;border-radius:14px;padding:14px;background:#fff;text-align:left;display:flex;flex-direction:column;gap:5px;color:var(--ink)}.select-card:hover{border-color:#42aaa2;background:#fbfefe}.card-grid.compact{grid-template-columns:repeat(3,1fr)}
/* The old vertical Administration master rail is intentionally retired. */
.admin-master-layout,.master-nav{display:contents}
@media(max-width:1200px){.admin-command-tabs{grid-template-columns:repeat(3,1fr)}.admin-workspace-grid,.admin-payer-layout{grid-template-columns:1fr}.admin-config-grid{grid-template-columns:1fr}.sha-summary-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.admin-command-tabs{grid-template-columns:repeat(2,1fr)}.payer-lane-grid{grid-template-columns:1fr}.sha-stepper{grid-template-columns:1fr 1fr}.sha-summary-grid{grid-template-columns:1fr}.card-grid.compact{grid-template-columns:1fr}}

/* Pass 4D v4.7.0 — SHA eClaims workbench. Cash and private payer lanes remain separate. */
.eclaim-row{border-left:4px solid #0d8178}.action-strip.compact{justify-content:flex-end;margin-top:5px;gap:6px}.action-strip.compact button{white-space:nowrap}.code-preview,#p4dPayloadPreview{border:1px solid #d8e5e5;border-radius:14px;background:#f8fbfb;margin-top:14px;padding:14px;max-height:560px;overflow:auto}.code-preview pre,#p4dPayloadPreview pre{margin:8px 0 0;background:#102b30;color:#d7f4f0;border-radius:11px;padding:14px;overflow:auto;font:12px/1.5 Consolas,Monaco,monospace}.payer-architecture-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.payer-architecture-grid>div{border:1px solid #d7e4e4;border-radius:14px;padding:14px;background:#fbfdfd}.payer-architecture-grid b,.payer-architecture-grid span,.payer-architecture-grid small{display:block}.payer-architecture-grid span{margin:4px 0;font-weight:800;color:#087c75}.payer-architecture-grid small{color:var(--muted)}button.warning{background:#fff0d5;color:#845700;border:1px solid #f0d49c}@media(max-width:1050px){.payer-architecture-grid{grid-template-columns:1fr}.action-strip.compact{justify-content:flex-start}}

/* v4.9.0 — vertical, collapsible master navigation */
.shell>aside{width:auto;min-width:0}
#nav{display:flex;flex-direction:column;gap:5px;overflow:auto;padding-right:2px}
#nav .nav-group{margin:0;border:1px solid rgba(255,255,255,.055);border-radius:11px;background:rgba(255,255,255,.015);overflow:hidden}
#nav .nav-group summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:11px 12px;color:#d8e5e4;font-size:10px;letter-spacing:1.25px;font-weight:900;user-select:none}
#nav .nav-group summary::-webkit-details-marker{display:none}
#nav .nav-group summary::after{content:'+';display:grid;place-items:center;width:20px;height:20px;border:1px solid #46585d;border-radius:6px;color:#7ed9d0;font-size:15px;line-height:1;font-weight:500}
#nav .nav-group[open] summary::after{content:'−'}
#nav .nav-group[open] summary{background:#26343a;color:#fff}
#nav .nav-group-items{display:flex;flex-direction:column;padding:4px 5px 7px}
#nav .nav-group-items a{display:block;padding:9px 10px;margin:1px 0;border-radius:8px;font-size:12px;border-left:3px solid transparent}
#nav .nav-group-items a.active{border-left-color:#48c9bd;background:#314148}
#nav .nav-group-items a span{display:block;white-space:normal;line-height:1.3}

.admin-master-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:18px;align-items:start;margin-top:16px}
.admin-local-panel{position:sticky;top:96px;display:flex;flex-direction:column;gap:8px;max-height:calc(100vh - 120px);overflow:auto}
.admin-local-panel details{border:1px solid #d8e3e4;border-radius:13px;background:#fff;overflow:hidden}
.admin-local-panel summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;padding:12px 13px;background:#f7fafb;color:#274047;font-size:11px;font-weight:900}
.admin-local-panel summary::-webkit-details-marker{display:none}
.admin-local-panel summary::after{content:'+';width:20px;height:20px;display:grid;place-items:center;border-radius:6px;border:1px solid #c7d7d8;color:#087c75;font-size:15px;font-weight:500}
.admin-local-panel details[open] summary::after{content:'−'}
.admin-local-panel details>div{display:flex;flex-direction:column;gap:4px;padding:7px}
.admin-local-panel button{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;border:0;border-radius:9px;background:#fff;padding:10px 11px;color:#263d42;width:100%}
.admin-local-panel button b{font-size:12px}.admin-local-panel button span{font-size:10px;color:#718185;font-weight:600}
.admin-local-panel button:hover{background:#f0f8f7}.admin-local-panel button.active{background:#163f45;color:#fff}.admin-local-panel button.active span{color:#d7ecea}
.admin-master-panel{min-height:520px}
.admin-command-tabs{display:none!important}

@media(max-width:950px){.admin-master-layout{grid-template-columns:1fr}.admin-local-panel{position:relative;top:auto;max-height:none}.admin-local-panel details>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.shell{grid-template-columns:1fr}.shell>aside{position:relative;height:auto;min-height:auto}.admin-local-panel details>div{grid-template-columns:1fr}}

/* Pass 5 v5.0.0 — MOH/KHIS automated reporting + special clinics */
.moh-report-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:16px 0}.moh-report-card{border:1px solid #d9e5e6;background:#fff;border-radius:15px;padding:15px;display:flex;flex-direction:column;justify-content:space-between;gap:10px}.moh-report-card.priority{border-left:4px solid #0d8178}.moh-report-card h3{margin:4px 0;font-size:1.05rem}.moh-report-card p{margin:0;color:var(--muted);font-size:.85rem}.moh-report-card small{font-weight:800;color:#0d8178;text-transform:uppercase;letter-spacing:.04em}.moh-report-card .action-strip{justify-content:flex-start}.moh-report-card button{padding:7px 10px}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}#mohPreview .table-wrap{max-height:520px;overflow:auto;margin-top:14px}#mohPreview table{min-width:720px}#specialClinicFields{padding:0;margin:0}.status-pill{display:inline-flex;align-items:center;padding:6px 9px;border-radius:999px;background:#e6f5f2;color:#087c75;font-weight:800;font-size:.74rem}@media(max-width:1100px){.moh-report-grid{grid-template-columns:repeat(2,1fr)}.form-grid.three{grid-template-columns:1fr 1fr}}@media(max-width:760px){.moh-report-grid,.form-grid.three{grid-template-columns:1fr}}

/* UAT Fix 02 — desktop sidebar usability
   Keep the full Kebarick HMIS navigation usable at normal browser zoom.
   The navigation owns the remaining viewport height and scrolls independently,
   while branding, server status and sign-out remain visible. */
@media (min-width:761px){
  .shell>aside{
    height:100vh;
    min-height:0;
    overflow:hidden;
    padding:16px 12px 14px;
  }
  .side-brand{
    flex:0 0 auto;
    padding:2px 10px 12px;
  }
  .side-brand .brand{
    display:block;
    width:auto;
    max-width:132px;
    max-height:58px;
    object-fit:contain;
  }
  .side-brand .product{
    margin-top:7px;
  }
  #nav{
    flex:1 1 auto;
    min-height:0;
    overflow-y:auto;
    overflow-x:hidden;
    overscroll-behavior:contain;
    padding:0 4px 8px 0;
    scrollbar-width:thin;
    scrollbar-color:#607278 transparent;
  }
  #nav::-webkit-scrollbar{width:7px}
  #nav::-webkit-scrollbar-track{background:transparent}
  #nav::-webkit-scrollbar-thumb{background:#607278;border-radius:999px}
  #nav .nav-group summary{
    padding:9px 10px;
    min-height:38px;
  }
  #nav .nav-group-items{
    padding:3px 4px 5px;
  }
  #nav .nav-group-items a{
    padding:7px 9px;
    font-size:11.5px;
  }
  .deployment{
    flex:0 0 auto;
    margin-top:0;
    padding:12px 8px 10px;
  }
  .logout{
    flex:0 0 auto;
    margin-top:0;
    padding:10px 12px;
  }
}

/* UAT Fix 03 — natural-height desktop navigation groups
   DEF-004 follow-up: the details groups were flex children with flex-shrink:1.
   When the sidebar was full, Chrome compressed each group and overflow:hidden
   clipped labels and open-menu contents instead of allowing #nav to scroll. */
@media (min-width:761px){
  #nav{
    align-items:stretch;
    align-content:flex-start;
  }
  #nav .nav-group{
    flex:0 0 auto;
    min-height:max-content;
    overflow:hidden;
  }
  #nav .nav-group summary{
    flex:0 0 auto;
    min-height:42px;
    height:auto;
    line-height:1.25;
    white-space:normal;
  }
  #nav .nav-group summary::after{
    flex:0 0 20px;
  }
  #nav .nav-group-items{
    flex:0 0 auto;
  }
}

/* UAT Fix 04 — definitive desktop sidebar grid layout
   DEF-004 follow-up.  Native <details> sizing combined with overflow:hidden
   could still clip an opened group.  The sidebar now has four explicit rows:
   branding / independently scrollable navigation / server status / sign out. */
@media (min-width:761px){
  .shell>aside{
    display:grid !important;
    grid-template-rows:auto minmax(0,1fr) auto auto;
    height:100vh;
    min-height:0;
    overflow:hidden;
    padding:14px 12px 12px;
  }
  .side-brand{
    min-height:0;
    padding:2px 10px 12px;
  }
  #nav{
    display:block !important;
    min-height:0;
    overflow-y:auto !important;
    overflow-x:hidden !important;
    overscroll-behavior:contain;
    padding:0 4px 8px 0;
    scrollbar-width:thin;
    scrollbar-color:#607278 transparent;
  }
  #nav .nav-group{
    display:block !important;
    flex:none !important;
    width:100%;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    overflow:visible !important;
    margin:0 0 5px 0;
  }
  #nav .nav-group summary{
    display:flex !important;
    min-height:42px;
    height:auto !important;
    padding:9px 10px;
    line-height:1.25;
    white-space:normal;
  }
  #nav .nav-group summary::after{
    flex:0 0 20px;
  }
  #nav .nav-group:not([open]) > .nav-group-items{
    display:none !important;
  }
  #nav .nav-group[open] > .nav-group-items{
    display:flex !important;
    flex-direction:column;
    flex:none !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    overflow:visible !important;
    padding:3px 4px 6px;
  }
  #nav .nav-group-items a{
    flex:none !important;
    min-height:34px;
    height:auto !important;
    padding:7px 9px;
  }
  .deployment{
    flex:none !important;
    margin-top:0 !important;
    padding:12px 8px 10px;
  }
  .logout{
    flex:none !important;
    margin-top:0 !important;
    padding:10px 12px;
  }
}


/* UAT Fix 06 — core workflow recovery and administrator usability */
.system-generated{background:#f3f7f7!important;color:#607074!important}
.auto-code-note{display:block;margin-top:4px;color:#708087;font-size:.72rem;font-weight:600}
.triage-danger-alert{display:flex;gap:12px;align-items:center;margin:12px 0;padding:14px 16px;border-radius:14px;background:#fff0ee;border:2px solid #b42318;color:#8b1f17;flex-wrap:wrap}
.triage-danger-alert b{font-size:1rem}.triage-danger-alert small{flex-basis:100%}.danger-check.danger-positive{background:#ffe0dc!important;border-color:#b42318!important;color:#8b1f17!important;font-weight:800}
.admin-security-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:20px;align-items:start}.admin-security-grid .admin-config-card{margin:0}
.permission-module.friendly{border:1px solid #d9e3e5;border-radius:14px;padding:14px;margin-bottom:12px;background:#fbfdfd}.permission-module-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:10px}.permission-module-head h4{margin:0;text-transform:capitalize}.tiny{padding:5px 9px;font-size:.75rem;border-radius:8px}
.permission-check small{display:none}.role-manager-grid{grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr)}
.integration-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.integration-summary-grid>div{padding:16px;border-radius:14px;background:#f4f8f8;border:1px solid #dce7e8}.integration-summary-grid span{display:block;color:#68777d;font-size:.8rem}.integration-summary-grid b{font-size:1.45rem}
.simple-workflow{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.simple-workflow>div{display:grid;grid-template-columns:36px 1fr;column-gap:10px;padding:14px;border:1px solid #dce7e8;border-radius:14px}.simple-workflow b{grid-row:1/3;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#e3f7f3;color:#087d73}.simple-workflow span{font-weight:800}.simple-workflow small{color:#65757a;margin-top:3px}
.accounting-report-controls{align-items:end}.accounting-statements .table-wrap{max-height:none}.soft{border:0;border-top:1px solid #dce4e5;margin:24px 0}.public-health-advanced{margin-top:18px}
.moh-report-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}.moh-report-card{border:1px solid #dce7e8;border-radius:14px;padding:14px;background:#fff}.moh-report-card h3{margin:.25rem 0}.moh-report-card p{min-height:42px;color:#5e6e73}.moh-report-card.priority{border-left:4px solid #0d9488}
@media(max-width:1000px){.admin-security-grid,.role-manager-grid,.integration-summary-grid,.simple-workflow{grid-template-columns:1fr}.accounting-report-controls{grid-template-columns:1fr 1fr}}


/* UAT Fix 07 — clinical safety and compact responsive workspaces */
.vital-critical{background:#fff1f0;border:1px solid #d92d20;border-radius:12px;padding:8px;color:#8f1f17}.vital-critical input{border-color:#d92d20;background:#fff8f7;box-shadow:0 0 0 3px rgba(217,45,32,.08)}
.vital-warning{background:#fff8e6;border:1px solid #d98b00;border-radius:12px;padding:8px;color:#7a4b00}.vital-warning input{border-color:#d98b00;background:#fffbf2}.vital-normal{background:#f0faf6;border:1px solid #a8dfc3;border-radius:12px;padding:8px}.vital-screen-note{font-size:.68rem;line-height:1.25;font-weight:650;color:inherit}
.triage-vital-alert{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:10px 0;padding:12px 14px;border-radius:13px;background:#fff0ee;border:1px solid #d92d20;color:#8f1f17}.triage-vital-alert small{flex-basis:100%}
.search-select-wrap{position:relative;width:100%}.native-search-select{position:absolute!important;opacity:0!important;pointer-events:none!important;width:1px!important;height:1px!important}.search-select-input{width:100%}.search-select-menu{position:absolute;z-index:80;left:0;right:0;top:calc(100% + 5px);max-height:300px;overflow:auto;background:#fff;border:1px solid #cddada;border-radius:12px;box-shadow:0 18px 45px rgba(30,45,48,.16);padding:6px}.search-select-menu button{display:block;width:100%;text-align:left;background:#fff;padding:10px 11px;border-radius:8px;font-weight:650}.search-select-menu button:hover{background:#eef8f7}.search-select-menu span{display:block;white-space:normal}
.management-reports-centre{margin-top:18px}.management-report-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:14px}.management-report-grid button{text-align:left;background:#f8fbfb;border:1px solid #dbe5e5;padding:14px;min-height:92px}.management-report-grid button:hover{border-color:#55bdb5;background:#eef9f7}.management-report-grid b,.management-report-grid span{display:block}.management-report-grid span{font-size:.74rem;color:#65767a;margin-top:5px;line-height:1.35;font-weight:500}
.service-context-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:16px}.responsive-workspace-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px}.clinical-callout{margin-top:14px;padding:12px;border-radius:12px;background:#eef8f7;display:flex;flex-direction:column;gap:4px}.clinical-callout span{font-size:.82rem;color:#5e6d72}
.p3-page .ops-layout,.p3-page .dashboard-grid,.p3-page .content-grid,.p3-page .form-grid{min-width:0}.p3-page .panel,.p3-page .sticky-workspace,.p3-page form,.p3-page label,.p3-page input,.p3-page select,.p3-page textarea{min-width:0;max-width:100%}.p3-page{overflow-x:hidden}.p3-page .form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:1650px){#p3TheatrePage .ops-layout,#p3MaternityPage .ops-layout{grid-template-columns:1fr!important}#p3TheatrePage .sticky-workspace,#p3MaternityPage .sticky-workspace{position:static!important}.management-report-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1150px){.service-context-grid,.responsive-workspace-grid{grid-template-columns:1fr}.management-report-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.p3-page .form-grid.two{grid-template-columns:1fr}.p3-page .span-2{grid-column:span 1}}
@media(max-width:760px){.management-report-grid{grid-template-columns:1fr}.service-context-grid,.responsive-workspace-grid{grid-template-columns:1fr}}
.triage-summary-grid{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.triage-summary-badge{display:flex;gap:7px;align-items:baseline;border:1px solid #dbe5e5;background:#f8fbfb;border-radius:10px;padding:7px 9px}.triage-summary-badge small{color:#67767b}.triage-summary-badge.flagged{background:#fff0ee;border-color:#d92d20;color:#8f1f17}.triage-summary-notes{margin-top:8px;font-size:.82rem}

/* UAT Fix 07B — Kebarick teal navigation refresh
   Keeps the proven Fix 04 grid/scroll behaviour while replacing the flat dark
   sidebar with a richer Kebarick green-teal treatment.  Desktop only: mobile
   navigation behaviour remains unchanged. */
@media (min-width:761px){
  .shell>aside{
    background:
      radial-gradient(circle at 14% 9%,rgba(112,235,219,.10) 0 1.2px,transparent 1.6px) 0 0/24px 24px,
      linear-gradient(180deg,#07534d 0%,#064943 52%,#053a37 100%) !important;
    color:#effffb;
    border-right:1px solid rgba(148,235,224,.16);
    box-shadow:10px 0 30px rgba(7,55,52,.10);
  }
  .side-brand{
    border-bottom:1px solid rgba(159,235,226,.13);
    margin-bottom:8px;
  }
  .side-brand .product{color:#d0ece8;letter-spacing:2.2px}
  .side-brand .product b{color:#72e6d7}
  #nav{scrollbar-color:#66c8bd transparent}
  #nav::-webkit-scrollbar-thumb{background:#66c8bd}
  #nav .nav-group{
    border-color:rgba(184,241,234,.15);
    background:rgba(255,255,255,.025);
  }
  #nav .nav-group summary{
    color:#e5f8f5;
  }
  #nav .nav-group summary::after{
    border-color:rgba(146,224,214,.45);
    color:#a1f2e7;
    background:rgba(255,255,255,.025);
  }
  #nav .nav-group[open] summary{
    background:linear-gradient(90deg,rgba(20,139,129,.62),rgba(7,86,81,.40)) !important;
    color:#fff;
    box-shadow:inset 3px 0 0 #76e8db;
  }
  #nav .nav-group-items a{
    color:#d6eeeb;
    transition:background .15s ease,color .15s ease,transform .15s ease;
  }
  #nav .nav-group-items a:hover{
    background:rgba(50,183,169,.18);
    color:#fff;
    transform:translateX(1px);
  }
  #nav .nav-group-items a.active{
    border-left-color:#9af4e8 !important;
    background:linear-gradient(90deg,#159f93 0%,#0c7d75 100%) !important;
    color:#fff !important;
    box-shadow:0 5px 16px rgba(3,55,52,.18);
  }
  .deployment{
    border-top-color:rgba(151,229,220,.20) !important;
    background:rgba(1,38,36,.10);
  }
  .deployment b{color:#f3fffd}
  .deployment small{color:#b8dbd7}
  .deployment .dot{
    background:#56df83;
    box-shadow:0 0 0 4px rgba(86,223,131,.15),0 0 14px rgba(86,223,131,.25);
  }
  .logout{
    color:#f1fffd !important;
    border-color:rgba(139,220,211,.42) !important;
    background:rgba(255,255,255,.025);
  }
  .logout:hover{
    background:rgba(44,172,159,.18);
    border-color:#69d4c8 !important;
  }
}

/* ============================================================
   UAT FIX 08 — ADMINISTRATION & RECEPTION FOUNDATION
   ============================================================ */
:root{--text-strong:#17252b;--text-body:#34464c;--text-muted:#5f7076;--panel-soft:#f7fbfb}
body{color:var(--text-strong);font-size:14px;line-height:1.45}
p,.muted{color:var(--text-muted);line-height:1.55}
label{color:#42565c;font-size:12.5px;line-height:1.35}
input,select,textarea{color:#18282d;font-size:14px}
.panel h2,.panel h3,.dashboard-heading h2{overflow-wrap:anywhere}
.table-wrap{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain}
table{font-size:12.5px}th{font-size:10.5px}td,th{vertical-align:top;overflow-wrap:anywhere}

/* Administration is a control centre: readable, bounded and responsive. */
#p3AdminPage{max-width:1800px;margin:0 auto}
#p3AdminPage .stats article{padding:14px}
#p3AdminPage .stats b{font-size:21px}
.admin-master-layout{grid-template-columns:270px minmax(0,1fr);gap:18px}
.admin-local-panel summary{font-size:12px;color:#1f3b40;background:#f4f8f8}
.admin-local-panel button{padding:11px 12px}
.admin-local-panel button b{font-size:13px;line-height:1.25}.admin-local-panel button span{font-size:11px;line-height:1.3;color:#5f7479}
.admin-master-panel{min-width:0;padding:20px}
.admin-master-panel>.panel-head{padding-bottom:12px;border-bottom:1px solid #e4ecec;margin-bottom:16px}
.admin-master-panel>.panel-head h3{font-size:22px;margin:3px 0}
.admin-workspace-grid{grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:18px}
.admin-config-card,.admin-settings-form{border:1px solid #d8e5e5;border-radius:16px;background:#fff;padding:18px;box-shadow:0 3px 12px rgba(18,52,55,.035);min-width:0}
.admin-settings-form{max-width:1050px;margin:0 auto}
.admin-section-intro{border-bottom:1px solid #e1eaea;padding-bottom:12px;margin-bottom:4px}
.admin-section-intro small{font-size:10px;letter-spacing:1.4px;font-weight:900;color:#087b74}.admin-section-intro h3{font-size:21px;margin:4px 0}.admin-section-intro p{margin:4px 0 0}
.admin-toggle-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:16px 0}.setting-toggle{border:1px solid #dbe6e6;background:#f9fcfc;border-radius:12px;padding:13px;align-items:flex-start}.setting-toggle span{display:flex;flex-direction:column;gap:2px}.setting-toggle b{font-size:13px;color:#20373c}.setting-toggle small{font-size:11px;color:#687b80}
.admin-location-summary{display:flex;gap:10px;align-items:baseline;margin:14px 0;padding:13px;border-radius:12px;background:#edf8f6;border:1px solid #d3ebe7}.admin-location-summary b{font-size:24px;color:#087b74}.admin-location-summary span{color:#53686d}
.system-generated{background:#f1f5f5!important;color:#506166!important}
@media(max-width:1650px){.admin-workspace-grid,.admin-payer-layout{grid-template-columns:1fr}.admin-master-panel .dashboard-grid{grid-template-columns:1fr}}
@media(max-width:1050px){.admin-master-layout{grid-template-columns:1fr}.admin-local-panel{position:relative;top:auto;max-height:none}.admin-local-panel details>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.admin-local-panel details>div,.admin-toggle-grid{grid-template-columns:1fr}}

/* Reception registration: one coherent patient + visit workflow. */
.patient-registration-modal{width:min(1180px,97vw);padding:24px 28px}
.patient-registration-modal .form-section{display:flex;justify-content:space-between;gap:12px;align-items:baseline;border-bottom:1px solid #dfe9e9;padding:12px 0 7px;color:#087b74;text-transform:uppercase;letter-spacing:.08em}
.patient-registration-modal .form-section b{font-size:12px}.patient-registration-modal .form-section small{font-size:10.5px;text-transform:none;letter-spacing:0;color:#718287;font-weight:600}
.patient-checkbox{align-self:end;min-height:43px;padding:10px 12px;background:#f7fafb;border:1px solid #dce7e7;border-radius:10px}
.registration-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;border-top:1px solid #dfe8e8;padding-top:16px;margin-top:4px}.registration-actions button{min-width:180px}.registration-actions .primary{min-width:220px}
.registration-note{margin:0;padding:10px 12px;background:#f3f8f8;border-radius:10px}
.reception-actions{display:flex;gap:7px;flex-wrap:wrap;margin:14px 0}.reception-actions button{font-size:12px;padding:8px 10px}
.reception-safety-alert{margin:12px 0;padding:10px 12px;border-radius:10px;background:#fff5e9;border:1px solid #efcf9e;display:flex;flex-direction:column;gap:3px}.reception-safety-alert b{color:#8b5700;font-size:12px}.reception-safety-alert span{font-size:11.5px;color:#684f28}
@media(max-width:900px){.patient-registration-modal .form-grid.three{grid-template-columns:1fr 1fr}.patient-registration-modal .span-3{grid-column:1/-1}.registration-actions{justify-content:stretch}.registration-actions button{flex:1}}
@media(max-width:650px){.patient-registration-modal .form-grid.three{grid-template-columns:1fr}.patient-registration-modal .span-3{grid-column:span 1}.patient-registration-modal .form-section{align-items:flex-start;flex-direction:column}.registration-actions{flex-direction:column}.registration-actions button{width:100%}}

/* Appointments */
.page-action-row{display:flex;justify-content:flex-start;margin-bottom:14px}.back-button{display:inline-flex;align-items:center;gap:6px}.appointments-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}
#appointmentPatientHint{color:#65787d;font-size:11px}
@media(max-width:1000px){.appointments-layout{grid-template-columns:1fr}}

/* Management report cards: no concatenated/oversized text. */
.management-report-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.management-report-grid button{display:grid;grid-template-columns:1fr auto;grid-template-areas:'title arrow' 'desc desc';align-items:start;gap:5px 10px;min-height:112px;padding:16px;border-radius:14px;background:#f8fbfb;border:1px solid #d9e6e5;white-space:normal;overflow:hidden}
.management-report-grid button b{grid-area:title;font-size:15px;line-height:1.25;color:#1e3439;overflow-wrap:anywhere}.management-report-grid button span{grid-area:desc;font-size:12px;line-height:1.45;color:#607277;margin:0;font-weight:500}.management-report-grid button::after{content:'→';grid-area:arrow;color:#07958c;font-size:19px;line-height:1}
.management-report-grid button:hover{transform:translateY(-1px);box-shadow:0 7px 18px rgba(20,75,72,.08)}
.management-report-focus{margin:0 0 18px;border-left:4px solid var(--teal)}.management-focus-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}.management-focus-metrics>div{padding:14px;border-radius:12px;background:#f4f9f8;border:1px solid #dbe8e7}.management-focus-metrics span{display:block;font-size:11px;color:#687a7f}.management-focus-metrics b{display:block;font-size:18px;margin-top:4px;color:#17353a}.report-action-row{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}
.report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.report-pack-card{display:flex;flex-direction:column;align-items:flex-start;text-align:left;border:1px solid #dae6e6;background:#f9fcfc;padding:14px;border-radius:13px}.report-pack-card b{font-size:14px;margin:3px 0}.report-pack-card span{font-size:11.5px;color:#64777c}.report-pack-card em{font-size:11px;color:#078b83;font-style:normal;font-weight:800;margin-top:8px}
@media(max-width:1100px){.management-report-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.management-focus-metrics{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.management-report-grid,.management-focus-metrics,.report-grid{grid-template-columns:1fr}}

/* UAT Fix 09 — approved Kenya county/sub-county dataset */
.admin-location-stats{display:flex;gap:12px;flex-wrap:wrap;margin-top:10px}
.admin-location-stats .admin-location-summary{min-width:150px}
#patientCounty,#patientSubCounty{background:#fff}

/* ============================================================
   UAT FIX 10 — KEBARICK DOT MOTIF VISUAL PREVIEW
   Purely visual/reversible. Extends the sidebar dot language into selected
   non-clinical/background surfaces while keeping forms and tables clean.
   ============================================================ */
:root{
  --kebarick-dot:rgba(8,123,116,.055);
  --kebarick-dot-strong:rgba(104,226,212,.12);
  --kebarick-dot-card:rgba(8,123,116,.045);
  --kebarick-dot-size:26px;
}

/* A very light branded texture in the whitespace between working cards. */
body{
  background:
    radial-gradient(circle at 1px 1px,var(--kebarick-dot) 0 1px,transparent 1.35px) 0 0/var(--kebarick-dot-size) var(--kebarick-dot-size),
    var(--bg);
  background-attachment:fixed;
}
main{background:transparent}
.page{background:transparent}

/* Header: almost white, with the motif just visible on close inspection. */
header{
  background:
    radial-gradient(circle at 1px 1px,rgba(8,123,116,.045) 0 1px,transparent 1.3px) 0 0/24px 24px,
    rgba(255,255,255,.985);
  backdrop-filter:saturate(110%) blur(3px);
}

/* Strong branded surfaces use brighter dots, matching the sidebar language. */
.hero,
.workbench-head{
  background-image:
    radial-gradient(circle at 1px 1px,var(--kebarick-dot-strong) 0 1.15px,transparent 1.55px),
    linear-gradient(118deg,#243238,#31474a);
  background-size:24px 24px,auto;
}

/* Dashboard KPI cards get a restrained texture, never enough to compete with numbers. */
#dashboardPage .stats article,
.management-reports-centre,
.management-report-focus,
.management-report-grid button,
.report-pack-card{
  background-image:
    radial-gradient(circle at 1px 1px,var(--kebarick-dot-card) 0 1px,transparent 1.35px),
    linear-gradient(#fff,#fff);
  background-size:24px 24px,auto;
}

/* Give management report cards a small teal visual anchor so the dots feel intentional. */
.management-report-grid button,
.report-pack-card{
  box-shadow:inset 0 3px 0 rgba(17,159,150,.10),0 3px 12px rgba(18,52,55,.025);
}
.management-report-grid button:hover,
.report-pack-card:hover{
  background-image:
    radial-gradient(circle at 1px 1px,rgba(8,123,116,.065) 0 1px,transparent 1.35px),
    linear-gradient(#f6fcfb,#f6fcfb);
}

/* Administration category chrome carries the motif; the actual setting forms stay white. */
#p3AdminPage .admin-local-panel,
#p3AdminPage .admin-local-panel summary,
#p3AdminPage .admin-location-summary{
  background-image:
    radial-gradient(circle at 1px 1px,rgba(8,123,116,.045) 0 1px,transparent 1.3px),
    linear-gradient(#f7fbfb,#f7fbfb);
  background-size:23px 23px,auto;
}
#p3AdminPage .admin-config-card,
#p3AdminPage .admin-settings-form,
#p3AdminPage input,
#p3AdminPage select,
#p3AdminPage textarea{
  background-image:none;
}

/* Modal branding is limited to a subtle top strip; the data-entry body stays clean. */
.modal-card{overflow:auto}
.modal-card::before{
  content:"";
  display:block;
  height:7px;
  margin:-24px -24px 18px;
  background:
    radial-gradient(circle at 1px 1px,rgba(151,244,232,.26) 0 1px,transparent 1.3px) 0 0/12px 12px,
    linear-gradient(90deg,#087b74,#13a69b);
}
.patient-registration-modal::before{margin:-24px -28px 18px}

/* Preserve clinical readability: no texture inside high-attention working surfaces. */
#p3TriagePage .panel,
#p3ConsultationPage .panel,
#p3CashierPage .panel,
#p3LaboratoryPage .panel,
#p3ImagingPage .panel,
#p3PharmacyPage .panel,
#p3TheatrePage .panel,
#p3MaternityPage .panel,
#p3EmergencyPage .panel,
#p3IcuPage .panel,
#p3DentalPage .panel,
#p3DialysisPage .panel,
.panel form,
.table-wrap,
table,
input,select,textarea{
  background-image:none;
}

/* Login gets the same identity without becoming visually noisy. */
.login-wrap{
  background:
    radial-gradient(circle at 1px 1px,rgba(8,123,116,.065) 0 1px,transparent 1.35px) 0 0/28px 28px,
    radial-gradient(circle at top left,#e9f7f6,transparent 40%),
    #eef2f2;
}

/* Respect reduced-motion/high-comfort preferences; this motif is static anyway. */
@media(max-width:760px){
  body{background-size:30px 30px,auto}
  header{background:rgba(255,255,255,.99)}
  .modal-card::before{height:5px}
}

/* UAT Fix 11 — payer/tariff and clinical-safety usability */
.patient-registration-modal{font-size:13px}
.patient-registration-modal h2{font-size:24px;line-height:1.15}
.patient-registration-modal label{font-size:12px;line-height:1.25}
.patient-registration-modal input,.patient-registration-modal select,.patient-registration-modal textarea{font-size:13px;min-height:42px;padding:9px 12px}
.patient-registration-modal small,.patient-registration-modal .muted{font-size:10.5px;line-height:1.35}
.patient-registration-modal .registration-actions button{font-size:13px;padding:11px 15px}

.triage-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
.triage-worklist-panel,.triage-active-panel{min-width:0}
.triage-horizontal-list{display:block;width:100%;padding:2px 0 0;overflow:visible}
.triage-horizontal-list>.triage-queue-table-wrap{width:100%;min-width:0;max-width:none;overflow-x:auto;overflow-y:visible}
.triage-queue-table{min-width:780px;table-layout:auto}
.triage-queue-table th{white-space:nowrap;background:#f4f8f8;color:#4e6568;font-size:11px;padding:12px}
.triage-queue-table td{padding:13px 12px;vertical-align:middle;overflow-wrap:normal}
.triage-queue-table tbody tr:last-child td{border-bottom:0}
.triage-queue-table tbody tr:hover td{background:#f5fbfa}
.triage-queue-table td:first-child{border-left:4px solid transparent}
.triage-queue-table tr.priority-critical td:first-child{border-left-color:#bd352b}
.triage-queue-table tr.priority-urgent td:first-child{border-left-color:#d99516}
.triage-queue-table tr.priority-routine td:first-child{border-left-color:#36a69c}
.triage-queue-table td small{display:block;margin-top:4px;color:var(--muted);font-size:10px;line-height:1.35}
.triage-patient-cell{min-width:190px}.triage-patient-cell b{display:block;font-size:13px;color:var(--ink)}
.triage-action-cell{text-align:right;white-space:nowrap}.triage-action-cell button{min-width:128px}
.clinical-screening-note{display:flex;gap:12px;align-items:flex-start;background:#f0f8f7;border:1px solid #cfe5e2;border-radius:11px;padding:11px 13px;margin:0 0 14px}
.clinical-screening-note b{color:#0a706b;white-space:nowrap}.clinical-screening-note span{font-size:11px;color:#526d70;line-height:1.45}
.clinical-check{align-self:end;min-height:58px;border:1px solid #d9e6e5;border-radius:10px;background:#f8fbfb;padding:12px!important;flex-direction:row!important;align-items:center!important;gap:8px}
.clinical-check input{width:auto!important;min-height:0!important}
.news2-live-summary{display:flex;align-items:center;gap:12px;background:#f4f8f8;border:1px solid #d8e5e4;border-radius:10px;padding:11px 13px;min-height:48px}
.news2-live-summary b{color:#0b706a}.news2-live-summary span{font-size:11px;color:#536c70}.news2-live-summary.medium{background:#fff7df;border-color:#eacb74}.news2-live-summary.high{background:#fff0ee;border-color:#e3978f}.news2-live-summary.red{background:#fff3ed;border-color:#edae8c}
.vital-screen-note{line-height:1.35!important}
.vital-normal .vital-screen-note{color:#3d6c5b!important}.vital-warning .vital-screen-note{color:#8a6414!important}.vital-critical .vital-screen-note{color:#a52b24!important}

.price-list-dashboard{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:16px}
.price-list-card{border:1px solid #dce8e7;border-radius:12px;background:#fff;padding:14px}
.price-list-card .price-list-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:7px;font-size:10px;color:#65777a}
.price-list-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.price-list-upload-result{margin-top:10px}
.scheme-rule-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.scheme-rule-grid .span-all{grid-column:1/-1}
.rule-chip-list{display:flex;gap:6px;flex-wrap:wrap}.rule-chip{font-size:10px;padding:4px 7px;border-radius:99px;background:#edf6f5;color:#315b59}

@media(max-width:1000px){.price-list-dashboard{grid-template-columns:1fr}.scheme-rule-grid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.clinical-screening-note{flex-direction:column}.scheme-rule-grid{grid-template-columns:1fr}.patient-registration-modal{font-size:12px}.triage-queue-table{min-width:720px}.triage-worklist-panel{padding:14px}.triage-worklist-panel .panel-head{align-items:flex-start}.triage-action-cell button{min-width:118px}}

/* UAT Fix 12 — selective Medicore benchmark convergence. */
.visit-account-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:14px}.visit-account-head b,.visit-account-head small{display:block}.visit-account-head small{color:var(--muted);margin-top:4px}.strong-pill{background:#e5f7f4!important;color:#087b74!important}.visit-account-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.visit-account-grid>div{border:1px solid #e0e9e8;background:rgba(247,250,250,.92);border-radius:10px;padding:10px;min-width:0}.visit-account-grid span,.visit-account-grid b{display:block}.visit-account-grid span{font-size:10px;color:var(--muted);margin-bottom:4px}.visit-account-grid b{font-size:12px;overflow-wrap:anywhere}.account-caveat{display:block;margin-top:10px;line-height:1.45}.estimate-lines{display:grid;gap:7px}.estimate-line{display:flex;justify-content:space-between;align-items:center;gap:10px;border:1px solid #e1e9e8;border-radius:10px;padding:10px;background:#fafcfc}.estimate-line b,.estimate-line small{display:block}.estimate-line small{color:var(--muted);margin-top:3px}.estimate-document{border:1px solid #bcded9;border-radius:13px;padding:16px;background:#fff}.estimate-document table{margin-top:12px}.estimate-total{display:flex;justify-content:flex-end;gap:18px;align-items:center;font-size:14px;margin-top:14px}.estimate-total b{font-size:20px;color:var(--teal-dark)}.approval-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,420px);gap:16px;align-items:center;border:1px solid #dfe9e7;border-radius:12px;padding:14px;background:#fff}.approval-card p{margin:7px 0;font-size:12px}.approval-title{display:flex;gap:8px;align-items:center}.approval-actions{display:grid;grid-template-columns:1fr auto auto;gap:7px;align-items:center}.approval-actions input{min-width:0}.document-search{max-width:900px;margin-top:12px}.compact-list{margin-top:10px;max-width:900px}.patient-document-actions{margin-top:16px;border-top:1px solid var(--line);padding-top:16px}.patient-doc-summary{display:grid;gap:4px}.patient-doc-summary span,.patient-doc-summary small{color:var(--muted)}.document-action-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:12px}.document-action-grid button{background:#e9f5f3;border:1px solid #cce6e2}.case-preview{margin-top:12px;padding:12px;border-radius:10px;background:#f7faf9;border:1px solid #e1e8e7;display:grid;gap:4px}.case-preview span,.case-preview small{color:var(--muted)}
@media(max-width:1150px){.visit-account-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.approval-card{grid-template-columns:1fr}.approval-actions{grid-template-columns:1fr auto auto}}
@media(max-width:760px){.visit-account-grid,.document-action-grid{grid-template-columns:1fr}.approval-actions{grid-template-columns:1fr 1fr}.approval-actions input{grid-column:1/-1}.visit-account-head{flex-direction:column}}

/* UAT Fix 13 — Administration Control Centre */
#p3AdminPage{--admin-ink:#172f35;--admin-muted:#52696e;--admin-line:#d4e1e2;--admin-soft:#f4f9f8;--admin-teal:#087f76;--admin-deep:#0d4f4b;color:var(--admin-ink);font-size:15px;line-height:1.45}
#p3AdminPage *{min-width:0}
#p3AdminPage p,#p3AdminPage small,#p3AdminPage label,#p3AdminPage td,#p3AdminPage th{color:var(--admin-muted)}
#p3AdminPage h2,#p3AdminPage h3,#p3AdminPage h4,#p3AdminPage b{color:var(--admin-ink)}
.admin13-hero{display:flex;justify-content:space-between;gap:28px;align-items:flex-end;padding:20px 22px;border:1px solid #d9e6e5;border-radius:18px;background:linear-gradient(135deg,#f5fbfa,#fff);margin:10px 0 16px}
.admin13-hero small,.admin13-settings-head small{color:var(--admin-teal)!important;font-weight:900;letter-spacing:.14em;font-size:.72rem}.admin13-hero h2{font-size:30px;line-height:1.1;margin:5px 0 7px}.admin13-hero p{margin:0;max-width:860px;font-size:15px}.admin13-hero-actions{display:flex;gap:10px;flex-wrap:wrap;flex:none}
.admin13-readiness{border:1px solid #d7e5e4;border-radius:18px;background:#fff;padding:18px 20px;margin-bottom:14px;box-shadow:0 4px 18px rgba(17,61,62,.04)}
.admin13-score{display:grid;grid-template-columns:auto auto 1fr;align-items:baseline;gap:12px}.admin13-score span{font-weight:850;color:var(--admin-ink)}.admin13-score b{font-size:27px;color:var(--admin-teal)}.admin13-score small{font-size:13px}
.admin13-progress{height:8px;border-radius:999px;background:#e8f0ef;overflow:hidden;margin:12px 0 15px}.admin13-progress i{display:block;height:100%;width:0;background:linear-gradient(90deg,#0b716a,#18a399);border-radius:999px;transition:width .3s ease}
.admin13-readiness-cards{display:grid;grid-template-columns:repeat(5,minmax(130px,1fr));gap:8px}.admin13-readiness-item{border:1px solid #dbe6e5;background:#f8fbfb;border-radius:12px;padding:10px 11px;text-align:left;display:flex;flex-direction:column;gap:3px}.admin13-readiness-item b{font-size:13px;line-height:1.25}.admin13-readiness-item span{font-size:11px;font-weight:800;color:#7a5a00}.admin13-readiness-item.complete{background:#eef9f5;border-color:#bee4d5}.admin13-readiness-item.complete span{color:#13734b}.admin13-readiness-item.incomplete{border-left:4px solid #d7a127}
.admin13-stats{margin-bottom:14px}.admin13-stats article{min-height:88px;padding:13px 14px}.admin13-stats article span{font-size:12px}.admin13-stats article b{font-size:22px!important}
.admin13-layout{grid-template-columns:310px minmax(0,1fr);gap:20px}.admin13-nav{max-height:calc(100vh - 116px);padding-right:4px}.admin13-search{position:sticky;top:0;z-index:2;background:#f5f8f8;border:1px solid #d6e3e3;border-radius:14px;padding:10px;margin-bottom:5px}.admin13-search input{width:100%;height:42px;border:1px solid #cbdadb;border-radius:10px;padding:0 12px;font-size:14px;color:#173237;background:#fff}.admin13-search small{display:block;margin:6px 3px 0;font-size:11px}
.admin13-nav details{border-radius:15px!important}.admin13-nav summary{font-size:13px!important;padding:14px 15px!important;color:#17383c!important}.admin13-nav button{position:relative;padding:11px 60px 11px 13px!important;min-height:58px}.admin13-nav button b{font-size:14px!important;line-height:1.25}.admin13-nav button span{font-size:11.5px!important;line-height:1.3!important}.admin13-nav button em{position:absolute;right:9px;top:50%;transform:translateY(-50%);font-style:normal;font-size:9.5px;font-weight:900;padding:4px 6px;border-radius:999px;background:#edf2f2;color:#607276}.admin13-nav button em.complete,.admin13-nav button em.ready{background:#dff5ec;color:#11714d}.admin13-nav button em.incomplete,.admin13-nav button em.setup{background:#fff0cf;color:#805900}.admin13-nav button em.optional{background:#eef1f2;color:#617176}.admin13-nav button.active em{background:rgba(255,255,255,.15);color:#fff}
.admin13-workspace{padding:22px!important;overflow:visible}.admin13-workspace-head{display:flex;gap:20px;align-items:flex-start}.admin13-workspace-head h3{font-size:25px!important;line-height:1.15}.admin13-save-state{margin-left:auto;white-space:nowrap;font-size:11px;font-weight:900;padding:7px 10px;background:#eef5f4;color:#32615e;border-radius:999px}
#adminCategorySettings{margin-bottom:18px}.admin13-settings-loading{padding:15px;border:1px dashed #cad9d9;border-radius:12px;color:#65787c}.admin13-settings-card,.admin13-master-edit{border:1px solid #d6e4e3;border-radius:17px;background:#fbfdfd;padding:18px;margin-bottom:18px}.admin13-settings-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;border-bottom:1px solid #e0e9e8;padding-bottom:13px;margin-bottom:15px}.admin13-settings-head h3{font-size:20px!important;margin:3px 0 4px}.admin13-settings-head p{margin:0;font-size:13.5px;max-width:760px}.admin13-settings-head>span{font-size:11px;color:#6d7e81;white-space:nowrap}
.admin13-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 15px}.admin13-settings-grid label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:800;color:#2c474d}.admin13-settings-grid input,.admin13-settings-grid select,.admin13-settings-grid textarea,.admin13-reason input,.admin13-master-picker select{width:100%;border:1px solid #cbd9da;border-radius:10px;background:#fff;padding:10px 11px;color:#172f35;font-size:14px;min-height:42px}.admin13-settings-grid textarea{min-height:90px;resize:vertical}.admin13-settings-grid label>small{font-size:11px;font-weight:500}.admin13-check{flex-direction:row!important;align-items:flex-start!important;border:1px solid #dce6e5;border-radius:11px;padding:10px 11px;background:#fff;gap:9px!important}.admin13-check input{width:17px!important;min-height:17px!important;height:17px;margin-top:2px}.admin13-check span{display:flex;flex-direction:column;gap:2px}.admin13-check b{font-size:13px}.admin13-check small{font-size:11px!important}.admin13-reason{display:flex;flex-direction:column;gap:6px;margin-top:14px;font-size:12px;font-weight:800}.admin13-form-actions{display:flex;gap:12px;align-items:center;margin-top:14px}.admin13-form-actions button{white-space:nowrap}.admin13-form-actions span{font-size:11px;color:#65777b}.admin13-master-picker{display:grid;grid-template-columns:1fr 2fr;gap:14px;margin-bottom:15px}.admin13-master-picker label{font-size:12px;font-weight:850;color:#344f54;display:flex;flex-direction:column;gap:6px}
#p3AdminPage .admin-master-panel .data-table{font-size:13px;min-width:760px}#p3AdminPage .admin-master-panel .data-table th{font-size:11px;letter-spacing:.03em;color:#607176;padding:10px 11px}#p3AdminPage .admin-master-panel .data-table td{padding:11px;color:#294348;line-height:1.35}#p3AdminPage .table-wrap{width:100%;overflow-x:auto;border-radius:12px}#p3AdminPage .data-table button{white-space:nowrap;min-width:68px}
#p3AdminPage .admin-workspace-grid{grid-template-columns:minmax(0,1fr);gap:18px}#p3AdminPage .admin-workspace-grid>form,#p3AdminPage .admin-config-card{max-width:900px}#p3AdminPage .admin-payer-layout{grid-template-columns:1fr}#p3AdminPage .dashboard-grid{grid-template-columns:minmax(0,1fr)}#p3AdminPage .admin-form-stack{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}#p3AdminPage .admin-form-stack>.muted{grid-column:1/-1}
#p3AdminPage .admin-config-card h3,#p3AdminPage .admin-config-card h4{font-size:18px}#p3AdminPage input,#p3AdminPage select,#p3AdminPage textarea{font-size:14px;color:#173137}#p3AdminPage label{font-size:13px;color:#324b50;font-weight:750}#p3AdminPage button{font-size:13px}#p3AdminPage button.primary,#p3AdminPage button.ghost{white-space:nowrap}
.admin13-modal{width:min(1180px,92vw);max-width:1180px}.admin13-modal pre{white-space:pre-wrap;word-break:break-word;font-size:11px;background:#f5f8f8;padding:10px;border-radius:8px}.admin13-modal details summary{cursor:pointer;color:#087f76;font-weight:800}
@media(max-width:1450px){.admin13-layout{grid-template-columns:280px minmax(0,1fr)}.admin13-readiness-cards{grid-template-columns:repeat(4,1fr)}#p3AdminPage .admin-form-stack{grid-template-columns:1fr}}
@media(max-width:1050px){.admin13-layout{grid-template-columns:1fr}.admin13-nav{position:relative;top:auto;max-height:none}.admin13-readiness-cards{grid-template-columns:repeat(3,1fr)}.admin13-settings-grid{grid-template-columns:1fr}.admin13-settings-grid .span-2{grid-column:auto}.admin13-master-picker{grid-template-columns:1fr}.admin13-hero{align-items:flex-start;flex-direction:column}.admin13-score{grid-template-columns:auto auto}}
@media(max-width:700px){.admin13-readiness-cards{grid-template-columns:1fr 1fr}.admin13-hero h2{font-size:26px}.admin13-workspace{padding:14px!important}}
.admin13-context-note{display:flex;gap:10px;align-items:flex-start;padding:14px 15px;border:1px solid #dbe6e5;border-left:4px solid #13a198;border-radius:12px;background:#f8fcfb}.admin13-context-note b{font-size:13px;white-space:nowrap}.admin13-context-note span{font-size:12px;color:#607478}

/* UAT Fix 14 · Clinical Reference & Rules Engine */
.cr14 .stats article{min-width:0}.cr14-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:14px 0}.cr14-actions span{font-size:13px;color:#52636a}.cr14-stats{margin-top:14px}.cr14 .table-wrap{max-height:520px;overflow:auto}.cr14-bulk{display:flex;gap:12px;align-items:center;padding:12px 0}.cr14-bulk small{color:#58696f}.cr14 .ops-row .right{display:flex;align-items:center;gap:8px}@media(max-width:1100px){.cr14 .dashboard-grid{grid-template-columns:1fr}.cr14 .stats.six{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:720px){.cr14 .stats.six{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* UAT Fix 16 — departmental bulk catalogue & tariff import */
.bulk-tariff-workspace{display:grid;grid-template-columns:minmax(320px,.8fr) minmax(420px,1.2fr);gap:20px;align-items:start}
.bulk-tariff-form{display:grid;gap:14px}
.bulk-tariff-step{display:flex;gap:12px;align-items:flex-start;padding:12px 0;border-bottom:1px solid var(--line,#e5e7eb)}
.bulk-tariff-step>b{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:rgba(13,148,136,.12);font-size:14px}
.bulk-tariff-step span{display:grid;gap:2px}.bulk-tariff-step small{line-height:1.45}
.bulk-tariff-example{display:grid;gap:7px;padding:14px;border:1px dashed var(--line,#d1d5db);border-radius:12px;background:rgba(15,23,42,.025)}
.bulk-tariff-example code{display:block;white-space:normal;padding:9px 10px;border-radius:8px;background:rgba(15,23,42,.06);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px}
.bulk-tariff-result{min-height:340px}.bulk-tariff-preview{display:grid;gap:14px}
.bulk-tariff-mapped{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.bulk-tariff-mapped>b{width:100%;margin-bottom:2px}.bulk-tariff-mapped span{padding:7px 10px;border-radius:999px;background:rgba(13,148,136,.09);font-size:12px;font-weight:700}
.bulk-tariff-confirm{display:flex;gap:14px;align-items:center;justify-content:flex-end;flex-wrap:wrap;padding-top:4px}.bulk-tariff-confirm span{font-size:12px;opacity:.75}
@media(max-width:980px){.bulk-tariff-workspace{grid-template-columns:1fr}.bulk-tariff-result{min-height:0}}


/* ============================================================
   KEBARICK HMIS UI REVAMP 01 — SHARED LAPTOP BASELINE + ADMINISTRATION
   User-interface remediation only. No API, workflow, validation or data rules.
   Baseline acceptance target: 1366×768 / 1440×900 at 100% browser zoom.
   ============================================================ */
:root{
  --ink:#2a3a40;
  --text-strong:#26383e;
  --text-body:#40545a;
  --text-muted:#687a80;
  --muted:#687a80;
  --ui-heading:#26383e;
  --ui-body:#40545a;
  --ui-muted:#6c7d82;
  --ui-line:#d7e2e1;
  --ui-soft:#f7faf9;
  --ui-teal:#128f87;
  --ui-teal-soft:#eaf7f4;
}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{
  font-family:"Segoe UI Variable Text","Segoe UI",system-ui,-apple-system,BlinkMacSystemFont,Arial,sans-serif;
  color:var(--ui-body);
  font-size:14px;
  line-height:1.5;
  font-weight:400;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
}
h1,h2,h3,h4,h5,h6{color:var(--ui-heading);font-weight:700;letter-spacing:-.012em;line-height:1.22}
b,strong{font-weight:650}
p,.muted{color:var(--ui-muted);font-weight:400}
label{color:#43575d;font-weight:600}
button{font-weight:650}
header small,.section-title small,.workbench-head small,.panel-head small,.eyebrow,.dashboard-heading small{font-weight:700;letter-spacing:1.45px}
input,select,textarea{min-height:42px;color:#2d4147;font-weight:400;border-color:#cbd9d8}
textarea{line-height:1.5}
.page{width:100%;max-width:1800px;margin:0 auto;padding:24px clamp(18px,2vw,30px)}
.panel,.stats article{box-shadow:0 2px 10px rgba(30,55,58,.035)}
.panel h3{font-weight:700}
.table-wrap{max-width:100%;overflow:auto;scrollbar-gutter:stable;overscroll-behavior-inline:contain}
table,.data-table{color:#40545a}
th,.data-table th{font-weight:650;color:#65777c}
td,.data-table td{font-weight:400}

/* Main navigation can be hidden without changing the current module. */
.shell{grid-template-columns:250px minmax(0,1fr);transition:grid-template-columns .18s ease}
.shell>aside{width:250px;transition:transform .18s ease,opacity .15s ease,visibility .15s ease}
.shell.sidebar-collapsed{grid-template-columns:0 minmax(0,1fr)}
.shell.sidebar-collapsed>aside{transform:translateX(-102%);opacity:0;visibility:hidden;pointer-events:none}
.header-left{display:flex;align-items:center;gap:13px;min-width:0}
.header-left>div{min-width:0}
.sidebar-toggle{width:42px;height:42px;padding:0;display:grid;place-items:center;flex:0 0 42px;border:1px solid #cfdbda;background:#f8fbfa;color:#315057;border-radius:11px;font-size:20px;line-height:1;box-shadow:none}
.sidebar-toggle:hover{background:#edf7f5;border-color:#a9d7d2;color:#0b746d}
header{padding-inline:clamp(16px,2vw,28px)}
header h1{font-weight:700;color:#26383e}
.actions select{min-width:240px;max-width:min(360px,32vw)}

/* Sidebar typography is quieter: navigation supports the workspace instead of competing with it. */
#nav .nav-group summary{font-weight:700;letter-spacing:1.05px}
#nav .nav-group-items a{font-weight:450}
#nav .nav-group-items a.active{font-weight:600}
.side-brand .product{font-weight:500}
.side-brand .product b{font-weight:700}
.deployment b{font-weight:650}

/* Administration: setup selector no longer consumes a permanent second column. */
#p3AdminPage{max-width:1800px}
#p3AdminPage .admin13-hero h2{font-size:clamp(28px,2.2vw,36px);font-weight:700;color:#294047}
#p3AdminPage .admin13-hero p{font-size:14px;max-width:920px}
#p3AdminPage b,#p3AdminPage strong{font-weight:650}
#p3AdminPage .admin13-score span{font-weight:650}
#p3AdminPage .admin13-score b{font-weight:700}
#p3AdminPage .admin13-readiness-item b{font-weight:650;color:#31474d}
#p3AdminPage .admin13-readiness-item span{font-weight:650}
#p3AdminPage .admin13-stats article span{font-weight:500}
#p3AdminPage .admin13-stats article b{font-weight:700!important;color:#2e4349}
.admin13-readiness-cards{grid-template-columns:repeat(auto-fit,minmax(205px,1fr));gap:10px}
.admin13-readiness-item{min-height:78px;padding:12px 14px}
.admin13-layout{grid-template-columns:minmax(0,1fr)!important;gap:14px}
.admin13-section-bar{display:flex;align-items:center;gap:14px;margin:0 0 14px;padding:11px 14px;border:1px solid #d7e3e2;border-radius:13px;background:rgba(255,255,255,.82)}
.admin13-section-bar button{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}
.admin13-section-bar>span{font-size:12px;color:#6a7c81}
.admin13-nav{position:relative!important;top:auto!important;max-height:none!important;overflow:visible!important;padding:14px!important;border:1px solid #d6e3e2!important;border-radius:16px;background:#fbfdfd}
.admin-sections-hidden .admin13-nav{display:none!important}
.admin13-search{position:relative!important;top:auto!important;margin:0 0 10px;padding:0 0 10px;border:0;border-bottom:1px solid #e0e9e8;border-radius:0;background:transparent}
.admin13-search input{font-weight:400}
.admin13-nav details{margin:8px 0!important;border:1px solid #dce7e6!important;background:#fff!important;border-radius:12px!important;overflow:hidden}
.admin13-nav summary{padding:12px 14px!important;font-size:13px!important;font-weight:650!important;color:#345057!important;background:#f7faf9!important}
.admin13-nav details>div{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:0!important;padding:4px 8px 8px!important}
.admin13-nav button{width:100%;min-height:54px!important;display:grid!important;grid-template-columns:minmax(190px,260px) minmax(0,1fr) auto!important;align-items:center!important;column-gap:16px!important;padding:10px 12px!important;text-align:left!important;border:0!important;border-bottom:1px solid #edf2f1!important;border-radius:8px!important;background:transparent!important;color:#354d53!important}
.admin13-nav button:last-child{border-bottom:0!important}
.admin13-nav button:hover{background:#f0f8f6!important}
.admin13-nav button b{font-size:13px!important;font-weight:650!important;color:#30484e!important}
.admin13-nav button span{font-size:12px!important;font-weight:400!important;color:#697b80!important;line-height:1.4!important}
.admin13-nav button em{position:static!important;transform:none!important;justify-self:end;font-size:10px!important;font-weight:650!important}
.admin13-nav button.active{background:var(--ui-teal-soft)!important;color:#0b6d66!important;box-shadow:inset 3px 0 0 #169b91!important}
.admin13-nav button.active b{color:#0b6d66!important}
.admin13-nav button.active span{color:#426b68!important}
.admin13-nav button.active em{background:#d9eee9!important;color:#0b6d66!important}
.admin13-workspace{width:100%;min-width:0;padding:clamp(16px,2vw,24px)!important}
.admin13-workspace-head h3{font-weight:700!important;color:#2c4248}
.admin13-settings-head h3{font-weight:700!important}
.admin13-settings-grid label,#p3AdminPage label{font-weight:600!important}
.admin13-settings-grid label>small{font-weight:400!important}
.admin13-check b{font-weight:650!important}
.admin13-form-actions span{font-weight:400}
#p3AdminPage .admin-workspace-grid{grid-template-columns:minmax(0,1fr)!important}
#p3AdminPage .admin-workspace-grid>form,#p3AdminPage .admin-config-card{max-width:none!important;width:100%}
#p3AdminPage .dashboard-grid{grid-template-columns:minmax(0,1fr)!important}
#p3AdminPage .admin-form-stack{grid-template-columns:minmax(0,1fr)!important}
#p3AdminPage .admin-master-panel .data-table{min-width:680px}

/* Roles & Permissions: one clear vertical task at a time. */
.role-flow-help{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0 18px}
.role-flow-help>div{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:start;padding:13px 14px;border:1px solid #dae5e4;border-radius:13px;background:#f8fbfa}
.role-flow-help>div>b{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#e4f5f1;color:#0b766e;font-weight:700}
.role-flow-help span{display:flex;flex-direction:column;gap:2px}.role-flow-help strong{color:#324a50;font-weight:650}.role-flow-help small{color:#718187;font-size:11px;line-height:1.35}
.role-manager-stack{display:grid;grid-template-columns:minmax(0,1fr);gap:18px}
.role-manager-stack>.panel{width:100%;min-width:0}
.permission-matrix{display:grid;gap:12px;max-height:none!important;overflow:visible!important;padding-right:0!important}
.permission-module.friendly{padding:15px 16px;background:#fbfdfc}
.permission-module-head h4{font-weight:700!important;color:#344c52}
.permission-list{grid-template-columns:minmax(0,1fr)!important;gap:7px}
.permission-check{min-height:44px;padding:10px 12px;background:#fff;border:1px solid #e3ebea;font-weight:500}
.permission-check b{font-weight:600;color:#40565c}
.role-save-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:16px}.role-save-row p{margin:0;flex:1;min-width:260px}.role-simple-form{max-width:860px}

/* Laptop workflow rule: whole clinical/operational workspaces stack vertically.
   Small related fields and KPI cards may still share a row. */
@media(max-width:1600px){
  #p3EmergencyPage .ops-layout,#p3CriticalPage .ops-layout,#p3TheatrePage .ops-layout,#p3MaternityPage .ops-layout,#p3EquipmentPage .ops-layout,#p3ProcurementPage .ops-layout{grid-template-columns:minmax(0,1fr)!important}
  #p3EmergencyPage .sticky-workspace,#p3CriticalPage .sticky-workspace,#p3TheatrePage .sticky-workspace,#p3MaternityPage .sticky-workspace,#p3EquipmentPage .sticky-workspace,#p3ProcurementPage .sticky-workspace{position:static!important;top:auto!important}
  .specialty-service-page .service-context-grid,.specialty-service-page .responsive-workspace-grid{grid-template-columns:minmax(0,1fr)!important}
}

/* Normal laptop density: retain readable fields and use rows only where they are genuinely related. */
@media(max-width:1450px){
  .stats.six{grid-template-columns:repeat(3,minmax(0,1fr))}
  .stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .admin13-readiness-cards{grid-template-columns:repeat(3,minmax(0,1fr))}
  .role-flow-help{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:1120px){
  .form-grid.four,.form-grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}
  .admin13-readiness-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .admin13-nav button{grid-template-columns:minmax(150px,220px) minmax(0,1fr) auto!important}
}
@media(max-width:820px){
  .admin13-section-bar{align-items:flex-start;flex-direction:column}
  .admin13-nav button{grid-template-columns:minmax(0,1fr) auto!important;row-gap:3px!important}
  .admin13-nav button span{grid-column:1/-1}
  .role-flow-help{grid-template-columns:minmax(0,1fr)}
}

/* Mobile/off-canvas shell. */
@media(max-width:760px){
  .shell{display:block!important;min-height:100vh}
  .shell>aside{display:grid!important;grid-template-rows:auto minmax(0,1fr) auto auto;position:fixed!important;inset:0 auto 0 0;width:min(300px,88vw)!important;height:100vh!important;z-index:80;transform:translateX(-105%);opacity:0;visibility:hidden;pointer-events:none;box-shadow:18px 0 44px rgba(18,45,47,.24)}
  .shell.sidebar-mobile-open>aside{transform:translateX(0);opacity:1;visibility:visible;pointer-events:auto}
  .shell.sidebar-mobile-open::before{content:"";position:fixed;inset:0;background:rgba(18,31,34,.38);z-index:70}
  #nav{display:flex!important;overflow:auto!important}
  .deployment,.logout{display:flex!important}
  main{width:100%}
  header{position:sticky!important;top:0!important;z-index:60!important}
  .actions select{min-width:0;max-width:42vw}
  .page{padding:16px}
  .admin13-readiness-cards,.stats,.stats.six{grid-template-columns:minmax(0,1fr)}
}

/* ============================================================================
   HMIS UI REVAMP 02 — COMPLETE SYSTEM LAPTOP BASELINE
   Presentation-only remediation.  Uses the actual workspace width, not only
   browser width, so the interface remains comfortable with the sidebar open.
   Functional / clinical / DHA / billing behaviour is intentionally untouched.
   ========================================================================== */

/* The main application workspace is the responsive design container. */
main{container-type:inline-size;container-name:hmis-workspace}

/* Shared visual hierarchy across every module. */
.dashboard-heading,.section-title{gap:16px;flex-wrap:wrap;align-items:flex-start}
.dashboard-heading>div,.section-title>div{min-width:0}
.dashboard-heading h2,.section-title h2,.section-title h3{letter-spacing:-.018em}
.dashboard-heading p,.section-title p{max-width:880px;line-height:1.55}
.panel{min-width:0}
.panel-head{align-items:flex-start;flex-wrap:wrap}
.panel-head>div{min-width:0}
.panel-head h3{line-height:1.25}
.muted,small{line-height:1.45}

/* Forms should breathe, rather than looking compressed into boxes. */
.form-grid{align-items:start}
.form-grid label{min-width:0}
.form-grid input,.form-grid select,.form-grid textarea{min-width:0}
.form-grid textarea{min-height:92px}
.action-strip,.page-action-row,.registration-actions{flex-wrap:wrap}
.actions{flex-wrap:nowrap}
.action-grid>button{min-height:42px}

/* Wide data tables remain usable without forcing the entire page wider. */
.table-wrap{width:100%;max-width:100%;overflow-x:auto;overflow-y:auto}
.table-wrap table,.table-wrap .data-table{margin:0}
.data-table th,table th{position:relative}
.data-table td,table td{overflow-wrap:anywhere}
.data-table th,table th{overflow-wrap:normal}

/* Tabs remain available at laptop width without squeezing their labels. */
.tabs,.workflow-tabs{max-width:100%;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin}
.tabs button,.workflow-tabs button{white-space:nowrap;flex:0 0 auto}

/* Modals are always viewport-safe at 100% browser zoom. */
.modal{overflow:auto;padding:clamp(10px,2vw,22px)}
.modal-card,.modal-card.large,.modal-card.xlarge,.admin13-modal{max-height:min(92dvh,900px);max-width:calc(100vw - 24px);overflow:auto}

/* Small KPI cards ARE allowed to share horizontal space.  The previous pass
   was too conservative and made six-/eight-metric pages unnecessarily tall. */
.stats{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}
.four-stats{grid-template-columns:repeat(4,minmax(0,1fr))}
.six-stats,.stats.six{grid-template-columns:repeat(3,minmax(0,1fr))}
.eight-stats{grid-template-columns:repeat(4,minmax(0,1fr))}
.workstation-stats article,.stats article{min-width:0}

/* The main worklist/detail pattern is preserved where both panes have enough
   usable width.  Below the threshold it becomes vertical automatically. */
.workstation-grid,.content-grid,.dashboard-grid,.inpatient-care-grid,
.service-context-grid,.responsive-workspace-grid,.ops-layout{min-width:0}
.workstation-grid>* ,.content-grid>* ,.dashboard-grid>* ,.inpatient-care-grid>* ,
.service-context-grid>* ,.responsive-workspace-grid>* ,.ops-layout>*{min-width:0}

/* Operational pages follow the Triage principle: a full workflow should not
   be squeezed beside another full workflow at normal laptop workspace width. */
@container hmis-workspace (max-width:1220px){
  .p3-page .ops-layout{grid-template-columns:minmax(0,1fr)!important}
  .p3-page .sticky-workspace{position:static!important;top:auto!important}
  .specialty-service-page .service-context-grid,
  .specialty-service-page .responsive-workspace-grid{grid-template-columns:minmax(0,1fr)!important}

  /* Complex governance / reporting / finance workspaces become a readable
     vertical sequence while simple metric cards stay horizontal above them. */
  #p3RecordsPage .dashboard-grid,
  #p3ClaimsPage .dashboard-grid,
  #p3AccountingPage .dashboard-grid,
  #p3StoresPage .dashboard-grid,
  #p3ReportsPage .dashboard-grid,
  #mohReportingPage .dashboard-grid,
  #specialClinicsPage .dashboard-grid,
  #dhaHiePage .dashboard-grid{grid-template-columns:minmax(0,1fr)!important}

  /* Legacy operational workspaces still present in the build should obey the
     same design rule instead of retaining old side-by-side layouts. */
  #stage5Page .content-grid,#stage6Page .content-grid,#stage8Page .content-grid{
    grid-template-columns:minmax(0,1fr)!important
  }

  .approval-card{grid-template-columns:minmax(0,1fr)!important}
  .approval-actions{grid-template-columns:minmax(0,1fr) auto auto}
}

/* Diagnostics / cashier worklists may remain split at a comfortable laptop
   width, but stack once the ACTUAL module workspace is too narrow. */
@container hmis-workspace (max-width:1040px){
  .workstation-grid,.cashier-layout,.diagnostic-layout,.pharmacy-layout{
    grid-template-columns:minmax(0,1fr)!important
  }
  .workstation-list{max-height:420px}
  .active-workspace{min-height:0}
  .workspace-empty{min-height:260px}
  .price-list-dashboard{grid-template-columns:minmax(0,1fr)!important}
}

/* Common two-column clinical / reception layouts remain side-by-side while
   useful, then stack based on the real available content width. */
@container hmis-workspace (max-width:900px){
  .content-grid,.content-grid.two-thirds,.appointments-layout,.dashboard-grid,
  .inpatient-care-grid,.insurance-grid{grid-template-columns:minmax(0,1fr)!important}
  .form-grid.four,.form-grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}
  .snapshot-grid,.patient-census-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .approval-actions{grid-template-columns:minmax(0,1fr) auto}
  .approval-actions input{grid-column:1/-1}
}

/* Dense medication / clinical-control rows need their own laptop behaviour. */
@container hmis-workspace (max-width:980px){
  .mar-row{grid-template-columns:minmax(0,1fr)!important}
  .mar-controls{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .mar-controls>*{min-width:0}
  .dispense-footer{grid-template-columns:minmax(0,1fr)!important;align-items:stretch}
  .order-meta-grid,.cashier-reference-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .vitals-strip{grid-template-columns:repeat(3,minmax(0,1fr))}
}

/* Phone / very narrow tablet finishing rules. */
@container hmis-workspace (max-width:650px){
  .stats,.four-stats,.six-stats,.stats.six,.eight-stats{grid-template-columns:minmax(0,1fr)!important}
  .form-grid.two,.form-grid.three,.form-grid.four{grid-template-columns:minmax(0,1fr)!important}
  .span-2,.span-3,.span-all{grid-column:auto!important}
  .danger-grid,.safety-grid,.scheme-rule-grid,.visit-account-grid,
  .document-action-grid,.checklist-grid,.fluid-summary,.snapshot-grid,
  .patient-census-grid,.vitals-strip,.order-meta-grid,.cashier-reference-grid{
    grid-template-columns:minmax(0,1fr)!important
  }
  .action-grid,.payment-method-row{grid-template-columns:minmax(0,1fr)!important}
  .approval-actions{grid-template-columns:minmax(0,1fr)!important}
  .approval-actions input{grid-column:auto}
  .role-flow-help{grid-template-columns:minmax(0,1fr)!important}
}

/* Header must not consume the workspace on ordinary laptops. */
@container hmis-workspace (max-width:900px){
  header{height:auto;min-height:72px;gap:12px;align-items:center;flex-wrap:wrap}
  .header-left{flex:1 1 320px}
  .actions{margin-left:auto;flex:1 1 auto;justify-content:flex-end}
  .actions select{min-width:190px;max-width:min(100%,320px)}
}

/* Sidebar and footer polish. */
#mainSidebar{box-shadow:inset -1px 0 rgba(255,255,255,.045)}
#nav{padding-right:2px;scrollbar-width:thin}
footer{gap:12px;flex-wrap:wrap;line-height:1.4}

/* Explicit fixes for modules identified during the full-screen audit. */
@container hmis-workspace (max-width:1220px){
  #p3ReferralsPage .ops-layout{grid-template-columns:minmax(0,1fr)!important}
  #p3ReferralsPage .sticky-workspace{position:static!important}
  #p3CriticalPage .ops-layout,#p3EmergencyPage .ops-layout,#p3TheatrePage .ops-layout,
  #p3MaternityPage .ops-layout,#p3EquipmentPage .ops-layout,#p3ProcurementPage .ops-layout{
    grid-template-columns:minmax(0,1fr)!important
  }
}
.avatar{flex:0 0 38px}

/* ========================================================================
   UAT FIX 18 — PATIENT JOURNEY, CONSULTATION, LAB & QUEUE HARDENING
   ======================================================================== */
.required-mark{color:#a83229;font-weight:700;margin-left:3px}.optional-mark{color:var(--muted);font-size:.82em;font-weight:500;margin-left:4px}
.help-text,.field-help{color:var(--muted);font-size:11px;line-height:1.45;margin-top:5px}

.consultation-search{margin:14px 0 4px;border:1px solid var(--line);background:#fbfdfd;border-radius:14px;padding:14px}
.consultation-search h4{margin:0 0 8px}.journey-search-row{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:8px;align-items:center}
.journey-search-results{display:grid;gap:8px;margin-top:10px}.journey-search-result{border:1px solid #dce7e5;background:#fff;border-radius:11px;padding:11px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}.journey-search-result b,.journey-search-result small{display:block}.journey-search-result small{color:var(--muted);margin-top:3px}

/* The clinician banner must be unmistakable and readable on a laptop. */
.clinical-patient-banner{background:linear-gradient(135deg,#17383a,#234b4d);color:#fff;border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:18px 20px;margin:0 0 16px;box-shadow:0 8px 24px rgba(19,49,51,.08)}
.clinical-patient-banner *{color:inherit}.clinical-patient-banner .eyebrow{color:#7fe0d7!important}.clinical-patient-banner h2,.clinical-patient-banner h3,.clinical-patient-banner strong,.clinical-patient-banner b{color:#fff!important}.clinical-patient-banner p,.clinical-patient-banner small,.patient-banner-details{color:#d4e2e0!important}.patient-banner-details{font-size:12px;line-height:1.55;margin-top:5px}.clinical-patient-banner .status-pill{background:rgba(45,167,157,.18);border:1px solid rgba(111,218,209,.25);color:#a9f0e9!important}
.clinical-alert-strip{display:grid;gap:7px;margin-top:12px}.clinical-alert-item{background:#fff0ee;color:#8f251e!important;border:1px solid #efbbb5;border-left:4px solid #b93228;border-radius:9px;padding:9px 11px;font-size:11px;font-weight:650;line-height:1.4}.clinical-alert-item.warning{background:#fff8e8;color:#79510b!important;border-color:#ead49d;border-left-color:#c48a16}.clinical-alert-item.info{background:#edf8f7;color:#135f5a!important;border-color:#c9e5e2;border-left-color:var(--teal)}

.internal-referral-box{margin-top:16px;border:1px solid #cfe4e1;background:#f5fbfa;border-radius:14px;padding:16px}.internal-referral-box h3,.internal-referral-box h4{margin-top:0}.internal-referral-box .form-grid{margin-bottom:8px}

.bmi-live-card{border:1px solid #cfe4e1;background:#f3faf8;border-radius:11px;padding:11px 13px;min-height:56px;display:flex;align-items:center;justify-content:space-between;gap:12px}.bmi-live-card strong{font-size:18px;color:#176e67}.bmi-live-card span{font-size:10px;color:var(--muted)}.bmi-live-card.warning{background:#fff8e9;border-color:#e6cf9b}.bmi-live-card.warning strong{color:#80560f}

/* Cashier: every waiting patient must look like an action, not a subtle list row. */
.cashier-patient-card{width:100%;border:1px solid #cedddb;background:#fff;border-radius:15px;padding:16px 18px;margin:10px 0;display:grid;grid-template-columns:minmax(0,1fr) minmax(175px,auto);gap:18px;align-items:center;text-align:left;box-shadow:0 4px 14px rgba(26,61,61,.035);transition:.15s ease}.cashier-patient-card:hover{border-color:#75bfb8;box-shadow:0 8px 20px rgba(26,61,61,.07);transform:translateY(-1px)}.cashier-patient-card.selected{border:2px solid var(--teal);background:#f3fbfa;box-shadow:0 0 0 3px rgba(17,159,150,.08)}.cashier-card-main{min-width:0}.cashier-card-head{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.cashier-card-head strong{font-size:16px;color:var(--ink)}.cashier-card-refs{color:var(--muted);font-size:11px;line-height:1.5;margin-top:5px}.cashier-card-service{font-size:12px;margin-top:7px;color:#405758}.cashier-card-action{text-align:right;display:grid;justify-items:end;gap:8px}.cashier-card-action .cashier-card-amount{font-size:20px;font-weight:750;color:#17373a;white-space:nowrap}.cashier-card-action button{min-width:150px}.payer-chip{display:inline-flex;align-items:center;border-radius:999px;padding:4px 8px;background:#e8f6f4;color:#176b64;font-size:9px;font-weight:750;letter-spacing:.25px;text-transform:uppercase}

.professional-receipt-success{border:1px solid #bfe0dc;background:#fbfefd;border-radius:16px;padding:18px;text-align:center}.professional-receipt-success .receipt-check{width:46px;height:46px;border-radius:50%;margin:0 auto 8px;display:grid;place-items:center;background:#e7f7f3;color:#177366;font-size:23px}.professional-receipt-success h3{margin:3px 0}.professional-receipt-success .paid-amount{display:block;font-size:27px;color:#0f776e;margin:9px 0;font-weight:760}.receipt-success-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:12px auto;max-width:620px}.receipt-success-grid>div{background:#f3f7f7;border-radius:9px;padding:8px}.receipt-success-grid span,.receipt-success-grid b{display:block}.receipt-success-grid span{font-size:8px;color:var(--muted);text-transform:uppercase}.receipt-success-grid b{font-size:10px;margin-top:3px}

/* Laboratory inference: absence of an approved interval is never NORMAL. */
.reference-missing{color:#7b5b19;font-weight:650}.result-flag.uninterpreted{background:#f1f3f3;color:#5d6a69;border:1px solid #d9dfde}.result-flag.pending{background:#fff7e6;color:#7b5710;border:1px solid #ead49f}.result-flag.normal{background:#e9f7f2;color:#176e58}.result-flag.low,.result-flag.high,.result-flag.abnormal{background:#fff3d8;color:#80590d}.result-flag.critical{background:#ffebe8;color:#9f2b23}
.lab-reference-readiness{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;border:1px solid #d8e5e3;background:#f8fbfb;border-radius:12px;padding:12px 14px;margin:12px 0}.lab-reference-readiness strong,.lab-reference-readiness span{display:block}.lab-reference-readiness span{font-size:10px;color:var(--muted);line-height:1.5;margin-top:3px}.lab-reference-readiness.warning{background:#fff9e9;border-color:#e9d4a4}.lab-reference-readiness.warning strong{color:#785315}.lab-reference-readiness.ready{background:#f0faf6;border-color:#cbe6da}.lab-reference-readiness.ready strong{color:#176d58}

/* Queue Management is an operations board, not another cramped admin table. */
.queue-manager-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) minmax(170px,260px) auto;gap:9px;align-items:center;margin:12px 0 14px}.queue-manager-board{display:grid;gap:9px}.queue-manager-row{display:grid;grid-template-columns:90px minmax(180px,1.4fr) minmax(140px,.8fr) 110px minmax(260px,auto);gap:12px;align-items:center;border:1px solid #dce6e5;background:#fff;border-radius:13px;padding:12px 14px}.queue-manager-row:hover{border-color:#9bcbc7}.queue-ticket-number{font-size:15px;font-weight:780;color:#126f68}.queue-manager-row b,.queue-manager-row small{display:block}.queue-manager-row small{color:var(--muted);font-size:10px;margin-top:2px}.queue-manager-actions{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}.queue-manager-actions button{padding:7px 9px;font-size:10px}

@container hmis-workspace (max-width:900px){
  .journey-search-row,.queue-manager-toolbar{grid-template-columns:minmax(0,1fr)}
  .cashier-patient-card{grid-template-columns:minmax(0,1fr)}.cashier-card-action{text-align:left;justify-items:start;grid-template-columns:auto auto;align-items:center}.cashier-card-action button{min-width:0}
  .queue-manager-row{grid-template-columns:80px minmax(0,1fr) 120px}.queue-manager-row .queue-service{grid-column:2}.queue-manager-actions{grid-column:1/-1;justify-content:flex-start}
}
@container hmis-workspace (max-width:650px){
  .receipt-success-grid{grid-template-columns:minmax(0,1fr)}.journey-search-result{grid-template-columns:minmax(0,1fr)}
  .cashier-card-action{grid-template-columns:minmax(0,1fr)}.queue-manager-row{grid-template-columns:minmax(0,1fr)}.queue-manager-row .queue-service,.queue-manager-actions{grid-column:auto}
}
/* Fix18 small visual corrections after full flow validation */
.cashier-card-head h3{margin:2px 0 0;font-size:17px;line-height:1.2}.cashier-card-head small{display:block;color:var(--muted);font-size:9px;letter-spacing:.45px}.cashier-card-action>b{font-size:21px;font-weight:780;color:#17373a;white-space:nowrap}.cashier-card-action>span{font-size:9px;color:var(--muted);letter-spacing:.4px}.cashier-card-action>em{font-style:normal;font-size:10px;font-weight:700;color:#0f756e}
.queue-manager-row{grid-template-columns:90px minmax(190px,1.35fr) minmax(145px,.75fr) minmax(300px,auto)}
@container hmis-workspace (max-width:900px){.queue-manager-row{grid-template-columns:80px minmax(0,1fr) 120px}.queue-manager-row .queue-manager-actions{grid-column:1/-1}}
@container hmis-workspace (max-width:650px){.queue-manager-row{grid-template-columns:minmax(0,1fr)}.queue-manager-row .queue-manager-actions{grid-column:auto}}

/* ============================================================
   UAT FIX 19 · CONSULTATION, TRIAGE, SERVICE-CENTRE & ADMISSION FLOW
   ============================================================ */
.consultation-command{margin-bottom:16px}.consultation-arrivals{padding:18px}.consult-worklist-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:14px}.consult-worklist-grid>div{min-width:0;border:1px solid var(--line);border-radius:14px;padding:14px;background:#fbfdfd}.panel-subhead{font-size:12px;font-weight:700;color:var(--text);margin-bottom:10px}.service-centre-filter{display:flex;gap:8px;align-items:center;margin-bottom:10px}.service-centre-filter select{min-width:0;flex:1}.patient-journey-ribbon{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:-4px 0 16px}.patient-journey-ribbon>div{border:1px solid #d8e6e4;background:#f7fbfa;border-radius:12px;padding:11px 13px;min-width:0}.patient-journey-ribbon span,.patient-journey-ribbon b{display:block}.patient-journey-ribbon span{font-size:10px;text-transform:uppercase;letter-spacing:.7px;color:var(--muted)}.patient-journey-ribbon b{font-size:12px;margin-top:4px;overflow-wrap:anywhere}.history-lock{display:flex;gap:12px;align-items:center;padding:13px 15px;margin:0 0 14px;border:1px solid #e7c46a;background:#fff8e7;border-radius:12px;color:#68480c}.history-lock span{font-size:12px}.history-row{background:#fafafa}.consultation-section{margin-bottom:16px}.diagnosis-list{display:grid;gap:8px;margin-top:14px}.diagnosis-row{padding:11px 13px;border:1px solid var(--line);border-radius:11px;background:#f8fbfb}.diagnosis-row b,.diagnosis-row small{display:block}.diagnosis-row small{margin-top:3px;color:var(--muted)}.outcome-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.outcome-card{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:6px;min-height:88px;padding:15px;border:1px solid #d8e5e3;border-radius:13px;background:#f7faf9}.outcome-card b{font-size:13px}.outcome-card span{font-size:11px;color:var(--muted);line-height:1.4}.outcome-card:hover,.outcome-card.selected{border-color:var(--teal);background:#eaf8f5}.outcome-card.emphasis{border-color:#a9dcd5;background:#f0faf8}.outcome-panel{margin-top:14px}.button-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.admission-status-card{display:grid;gap:6px;margin-top:12px;padding:13px;border:1px solid #cae3df;background:#f4faf9;border-radius:12px}.diagnostic-result-card{border:1px solid var(--line);border-radius:14px;padding:15px;margin-bottom:14px;background:#fff}.result-card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px}.result-card-head h4{margin:2px 0}.result-table-wrap{overflow-x:auto}.result-flag{display:inline-flex;border-radius:99px;padding:4px 8px;font-size:10px;font-weight:700;background:#eef3f3}.result-flag.ok{background:#e6f5ef;color:#116448}.result-flag.warning{background:#fff3d8;color:#835a0d}.result-flag.critical{background:#fde8e6;color:#9b2b24}.result-flag.neutral{background:#edf1f1;color:#53666b}.critical-result-row{background:#fff4f2}.abnormal-result-row{background:#fffaf0}.imaging-report{padding:12px;border-radius:10px;background:#f7faf9}.imaging-report p{white-space:pre-wrap}.critical-imaging{border-left:4px solid #b42318;background:#fff4f2}.status-pill.ok{background:#e5f4ee;color:#0b7155}.status-pill.warning{background:#fff3d8;color:#835a0d}.status-pill.danger{background:#fde5e2;color:#9b2b24}

.triage-structured-form{display:grid;gap:14px}.triage-form-group{border:1px solid #dbe8e6;background:#fbfdfd;border-radius:14px;padding:15px;min-width:0}.triage-form-group.triage-chief{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}.triage-group-title{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin-bottom:11px}.triage-group-title b{font-size:13px;color:#244347}.triage-group-title span{font-size:10px;color:var(--muted)}.form-grid.five{grid-template-columns:repeat(5,minmax(0,1fr))}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.triage-form-group .bmi-live-card{height:100%;min-height:74px;align-self:end}.triage-form-group .news2-live-summary{height:100%;min-height:74px;align-self:end}

.admission-gateway-list{gap:12px}.admission-request-card{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(320px,.8fr);gap:16px;border:1px solid var(--line);border-radius:14px;padding:16px;background:#fff}.admission-request-main h4{margin:8px 0 5px}.admission-request-main p{margin:0;color:var(--muted)}.gateway-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}.gateway-status-grid span{display:block;background:#f6f9f9;border-radius:9px;padding:8px;font-size:10px;color:var(--muted)}.gateway-status-grid b{display:block;margin-top:3px;color:var(--text);font-size:11px}.gateway-action{display:grid;gap:9px;border-left:1px solid var(--line);padding-left:16px}.gateway-action label{font-size:11px}.gateway-next{display:flex;align-items:center;justify-content:center;text-align:center;color:var(--muted);border-left:1px solid var(--line);padding-left:16px}

@media(max-width:1180px){.consult-worklist-grid{grid-template-columns:1fr}.patient-journey-ribbon{grid-template-columns:repeat(2,1fr)}.outcome-grid{grid-template-columns:repeat(2,1fr)}.form-grid.five{grid-template-columns:repeat(3,minmax(0,1fr))}.admission-request-card{grid-template-columns:1fr}.gateway-action,.gateway-next{border-left:0;border-top:1px solid var(--line);padding-left:0;padding-top:12px}}
@media(max-width:820px){.patient-journey-ribbon,.outcome-grid,.form-grid.five,.form-grid.three{grid-template-columns:1fr}.triage-group-title{flex-direction:column}.result-card-head{flex-direction:column}.gateway-status-grid{grid-template-columns:1fr 1fr}}

/* UAT Fix 19 · Admission policy control */
.admission-policy-editor>summary{display:flex;align-items:center;justify-content:space-between;gap:18px;cursor:pointer;list-style:none}.admission-policy-editor>summary::-webkit-details-marker{display:none}.admission-policy-editor>summary h3{margin:4px 0 0}.policy-editor-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px;border-top:1px solid var(--line);padding-top:18px}.policy-card{border:1px solid var(--line);border-radius:16px;padding:16px;background:#fff}.policy-card h4{margin:0 0 6px}.policy-card p{margin:0 0 12px;color:var(--muted)}.policy-card>label{display:block;margin-top:12px}.policy-card input,.policy-card select{width:100%;margin-top:6px}.policy-role-list{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.policy-role-list .check{border:1px solid var(--line);border-radius:12px;padding:9px 11px;background:var(--soft)}.policy-editor-body>.alert,.policy-editor-body>button{grid-column:1/-1}@media(max-width:980px){.policy-editor-body{grid-template-columns:1fr}}
\n\n/* UAT Fix 19.4 — Reception payer/visit flow + service-centre mapping */\n.reception-flow-section{margin-top:8px;padding-top:18px;border-top:1px solid #dbe8e7}.reception-flow-section:first-of-type{margin-top:0}.reception-flow-section b{color:#087f78;letter-spacing:.05em}.payer-cover-grid{padding:16px;border:1px solid #dce9e7;border-radius:16px;background:#f8fbfb}.visit-route-summary{display:flex;gap:14px;align-items:flex-start;padding:16px 18px;border:1px solid #bfe0dc;border-radius:16px;background:#f0faf8;color:#28444a}.visit-route-summary>span{display:grid;place-items:center;min-width:32px;height:32px;border-radius:50%;background:#0d8f86;color:white;font-weight:800}.visit-route-summary div{display:grid;gap:4px}.visit-route-summary b{font-size:1rem}.visit-route-summary small{color:#546b70;line-height:1.4}.admin-unmapped{display:inline-flex;padding:4px 8px;border-radius:999px;background:#fff3d9;color:#8a6200;font-weight:800;font-size:.78rem}.admin-setup-guide{margin:18px 0;border:1px solid #d4e5e3;border-radius:18px;background:white;overflow:hidden}.admin-setup-guide summary{cursor:pointer;padding:18px 22px;display:flex}.admin-setup-guide summary span{display:grid;gap:3px}.admin-setup-guide summary small{color:#667a7e;font-weight:500}.admin-setup-guide-grid{padding:0 18px 18px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.admin-setup-guide-grid button{appearance:none;text-align:left;border:1px solid #d8e7e5;background:#f8fbfb;border-radius:14px;padding:14px;display:grid;gap:5px;cursor:pointer;color:#294248}.admin-setup-guide-grid button:hover{border-color:#63bcb5;background:#effaf8}.admin-setup-guide-grid button b{color:#087f78}.admin-setup-guide-grid button span{font-size:.86rem;line-height:1.4;color:#607579}@media(max-width:1100px){.admin-setup-guide-grid{grid-template-columns:1fr 1fr}}@media(max-width:700px){.admin-setup-guide-grid{grid-template-columns:1fr}.payer-cover-grid{padding:12px}}\n
/* UAT Fix 19.5 · sample master + target-first tariff workspace */
.sample-master-card{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:22px;border:1px solid var(--line,#d9e5e5);border-radius:20px;background:linear-gradient(135deg,#f4fbfa,#fff);margin-bottom:18px}.sample-master-card h4{margin:4px 0 8px}.sample-master-card p{max-width:850px}.sample-master-actions{display:flex;flex-direction:column;gap:10px;min-width:260px}.sample-master-actions .danger{background:#9f2f27;color:#fff;border:0;border-radius:12px;padding:12px 16px;font-weight:750;cursor:pointer}.bulk-tariff-example code{display:block;margin:6px 0;white-space:normal}.bulk-tariff-form select,.bulk-tariff-form input[type=file]{width:100%}@media(max-width:900px){.sample-master-card{align-items:stretch;flex-direction:column}.sample-master-actions{min-width:0;width:100%}}

/* UAT Fix 20 · unified consultation and clinical handoffs */
.consult-worklist-grid-three{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}
.admission-availability{padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--soft);font-size:.9rem;color:var(--muted)}
.preauth-medical-report{margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}
.preauth-actions{display:flex;gap:10px;flex-wrap:wrap}.preauth-actions button{flex:1 1 220px}
.admission-status-card strong{display:block;margin-top:8px;color:var(--ink)}
#ipDischargeSummaryForm textarea{min-height:86px}
@container main (max-width:1050px){.consult-worklist-grid-three{grid-template-columns:1fr}}
@media(max-width:1050px){.consult-worklist-grid-three{grid-template-columns:1fr}}

/* UAT Fix 21 · consultation, triage and line-level cashier hardening */
.consult-worklist-grid-three{grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:14px}
.consult-worklist-grid-three>div{min-width:0;overflow:hidden}
.consult-worklist-grid-three .list-card{min-width:0;align-items:flex-start;gap:10px}
.consult-worklist-grid-three .list-card>div{min-width:0;overflow-wrap:anywhere}
.consult-worklist-grid-three .list-card b,.consult-worklist-grid-three .list-card small{overflow-wrap:anywhere;word-break:break-word}
.consult-worklist-grid-three .list-card button{flex:0 0 auto;max-width:130px;white-space:normal}
.consultation-search{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:8px;max-width:660px}
.clinical-tabs{overflow-x:auto;flex-wrap:nowrap}.clinical-tabs button{white-space:nowrap;flex:0 0 auto}
.vitals-recheck-panel summary{display:flex;justify-content:space-between;gap:16px;align-items:center;cursor:pointer}.vitals-recheck-panel summary span:first-child{display:grid;gap:3px}.vitals-timeline{display:grid;gap:8px;margin-top:14px;max-height:280px;overflow:auto}.vitals-timeline-row{display:grid;grid-template-columns:145px minmax(0,1fr);gap:12px;border:1px solid var(--line);border-radius:11px;padding:10px;background:#fafcfc}.vitals-timeline-row.latest{background:#f0faf8;border-color:#b9ddd8}.vitals-timeline-row>div:first-child b,.vitals-timeline-row>div:first-child small{display:block}.vitals-timeline-row>div:first-child small{color:var(--muted);margin-top:3px}
.rx-diagnosis-context{display:grid;gap:4px;border:1px solid #cfe3df;background:#f4faf9;border-radius:11px;padding:11px 13px;margin-bottom:14px}.rx-diagnosis-context span{font-size:12px;color:var(--muted)}
.triage-action-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.triage-action-row button{min-width:170px}.queue-row>div:nth-child(2){min-width:0;overflow-wrap:anywhere}.queue-row small{display:block;overflow-wrap:anywhere}
.cashier-selector-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.cashier-selector-head>div{display:flex;gap:6px}.cashier-line-selector table{width:100%;border-collapse:collapse}.cashier-line-selector td{padding:10px 8px;border-bottom:1px solid var(--line);vertical-align:middle}.cashier-line-selector td small{display:block;color:var(--muted);margin-top:3px}.cashier-check{width:34px}.cashier-line-check{width:18px;height:18px;accent-color:var(--teal)}
.active-admission-notice{display:grid;gap:5px;border:1px solid #a9dcd5;background:#eef9f7;border-radius:12px;padding:13px 15px;margin-bottom:14px}.active-admission-notice span{font-size:12px;color:var(--muted)}
@media(max-width:1100px){.consult-worklist-grid-three{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.form-grid.five{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.consultation-search{grid-template-columns:1fr}.vitals-timeline-row{grid-template-columns:1fr}.triage-action-row button{width:100%}.cashier-selector-head{align-items:flex-start}.form-grid.five{grid-template-columns:1fr}}
/* UAT Fix 22 · Nursing owns physical bed allocation after Billing clearance. */
.pending-bed-allocation{display:flex;gap:8px;align-items:center;min-width:min(520px,55%)}
.pending-bed-allocation select{min-width:260px;flex:1}
@media(max-width:1000px){.pending-admission{align-items:flex-start;flex-direction:column}.pending-bed-allocation{width:100%;min-width:0}}
@media(max-width:620px){.pending-bed-allocation{align-items:stretch;flex-direction:column}.pending-bed-allocation select{min-width:0;width:100%}}

/* UAT Fix 24 · ward placement follows the clinician-selected ward. */
.ip-ward-stack{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;align-items:start}
.ip-ward-stack>.panel{min-width:0}
.ip-admission-queue-panel{border-color:#b9ddd8;background:linear-gradient(180deg,#fbfefd 0,#fff 120px)}
.pending-admission{display:grid;grid-template-columns:minmax(250px,.8fr) minmax(420px,1.2fr);gap:18px;align-items:start;padding:16px 2px}
.pending-admission-patient{min-width:0}
.doctor-selected-ward{display:inline-grid;gap:2px;margin-top:10px;padding:8px 11px;border:1px solid #b9ddd8;border-radius:10px;background:#eef9f7;color:#125f5a}
.doctor-selected-ward small{margin:0!important;text-transform:uppercase;letter-spacing:.06em;color:#37716d!important}
.doctor-selected-ward b{font-size:12px}
.pending-bed-workflow{display:grid;gap:10px;min-width:0}
.pending-bed-allocation{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;gap:8px;align-items:end;min-width:0}
.pending-bed-allocation label{display:grid;gap:5px;min-width:0}
.pending-bed-allocation label>span{font-size:10px;font-weight:750;color:var(--muted)}
.pending-bed-allocation select{width:100%;min-width:0}
.pending-bed-allocation button{white-space:normal;min-height:38px}
.ward-amendment{display:grid;gap:8px;padding:12px;border:1px solid #e3d2a7;border-radius:11px;background:#fffaf0}
.ward-amendment>small{font-size:10px;color:#6f654e}
.ward-amendment-controls{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(220px,1.2fr) auto auto;gap:8px;align-items:center}
.ward-amendment-controls select,.ward-amendment-controls input{width:100%;min-width:0}
@media(max-width:1050px){.pending-admission{grid-template-columns:1fr}.pending-bed-allocation{grid-template-columns:minmax(220px,1fr) auto auto}}
@media(max-width:760px){.pending-bed-allocation,.ward-amendment-controls{grid-template-columns:1fr}.pending-bed-allocation button,.ward-amendment-controls button{width:100%}}

.triage-form-group .bmi-live-card{display:grid;grid-template-columns:auto 1fr;align-content:center;justify-content:stretch;column-gap:14px;row-gap:2px}
.triage-form-group .bmi-live-card>span{grid-column:1;grid-row:2;font-size:10px}
.triage-form-group .bmi-live-card>b{grid-column:1;grid-row:1;font-size:20px;color:#176e67;align-self:center}
.triage-form-group .bmi-live-card>small{grid-column:2;grid-row:1;font-size:11px;font-weight:750;color:var(--text)}
.triage-form-group .bmi-live-card>em{grid-column:2;grid-row:2;font-size:9px;font-style:normal;color:var(--muted)}
.triage-form-group .bmi-live-card.warning>b{color:#80560f}

/* UAT Fix 23 · payer, scheme and benefit contract engine */
.payer-engine-forms{display:grid;grid-template-columns:minmax(360px,.78fr) minmax(620px,1.35fr);gap:18px;align-items:start}.payer-master-form,.payer-scheme-form{max-width:none!important}.payer-form-heading{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;border-bottom:1px solid #e4ecec;padding-bottom:10px;margin-bottom:3px}.payer-form-heading small{display:block;color:#07827a;font-weight:900;letter-spacing:.12em}.payer-form-heading h4{margin:3px 0 0!important}.payer-form-heading>span,.payer-form-heading.minor>span{font-size:11px;color:var(--muted);font-weight:650;text-align:right}.payer-form-heading.minor{margin-top:9px;background:#f4faf9;border:1px solid #deecea;border-radius:11px;padding:10px 12px;align-items:center}.payer-form-heading.minor b{font-size:13px}.payer-benefit-matrix{display:grid;gap:6px;border:1px solid #deeaeb;border-radius:12px;padding:10px;background:#fbfdfd}.payer-benefit-row{display:grid;grid-template-columns:minmax(130px,1fr) minmax(120px,.8fr) minmax(110px,.65fr);gap:8px;align-items:center}.payer-benefit-row.header{padding:0 4px 5px;color:#688087;font-size:10px;text-transform:uppercase;letter-spacing:.06em}.payer-benefit-row input,.payer-benefit-row select{width:100%;min-width:0}.payer-engine-forms textarea{min-height:74px}.payer-master-form textarea[name="address"]{min-height:58px}@media(max-width:1250px){.payer-engine-forms{grid-template-columns:1fr}}@media(max-width:720px){.payer-benefit-row{grid-template-columns:1fr}.payer-benefit-row.header{display:none}.payer-form-heading{flex-direction:column}.payer-form-heading>span{text-align:left}}

/* ============================================================================
   UAT FIX 25 — RECEPTION WORKSPACE REDESIGN ONLY
   Queue-first Reception layout. Patient Summary is now an on-demand modal.
   No other HMIS module is restyled by this block.
   ========================================================================== */
#patientsPage{max-width:1800px;margin:0 auto;overflow-x:hidden}
#patientsPage .reception-journey-stats{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:0 0 14px}
#patientsPage .reception-journey-stats article{min-width:0;min-height:98px;padding:14px 16px;border-radius:16px}
#patientsPage .reception-journey-stats span{font-size:11px;font-weight:700;color:#66797e}
#patientsPage .reception-journey-stats b{font-size:25px;line-height:1;margin:9px 0 7px;color:#263f45}
#patientsPage .reception-journey-stats small{font-size:10.5px;line-height:1.35}
#patientsPage .reception-worklist-panel{padding:0;overflow:hidden;border-radius:18px}
#patientsPage .reception-worklist-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:18px 20px 15px;border-bottom:1px solid #e2eaea;background:linear-gradient(180deg,#fff,#fbfdfd)}
#patientsPage .reception-worklist-head>div:first-child{min-width:0}
#patientsPage .reception-worklist-head small{font-size:10px;letter-spacing:1.5px;color:var(--teal-dark);font-weight:900}
#patientsPage .reception-worklist-head h3{font-size:22px;margin:3px 0 3px;color:#21383e}
#patientsPage .reception-worklist-head p{margin:0;color:#6a7b80;font-size:11.5px;line-height:1.45}
#patientsPage .reception-head-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}
#patientsPage .reception-head-actions button{white-space:nowrap;min-height:40px}
#patientsPage .reception-commandbar{display:grid;grid-template-columns:minmax(300px,1fr) auto;gap:14px;align-items:center;padding:14px 20px 12px;background:#f8fbfb;border-bottom:1px solid #e5eeee}
#patientsPage .reception-search{display:flex;max-width:none;min-width:0;margin:0}
#patientsPage .reception-search input{min-width:0;height:42px;background:#fff}
#patientsPage .reception-search button{height:42px;white-space:nowrap}
#patientsPage .reception-filter-row{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}
#patientsPage .reception-filter{display:inline-flex;align-items:center;gap:7px;padding:7px 9px;border:1px solid #d6e3e2;background:#fff;border-radius:999px;color:#53686d;font-size:11px;line-height:1;white-space:nowrap;box-shadow:none}
#patientsPage .reception-filter b{display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#edf3f2;color:#4f6569;font-size:10px}
#patientsPage .reception-filter:hover{border-color:#9dcfca;background:#f7fcfb}
#patientsPage .reception-filter.active{background:#0d8178;border-color:#0d8178;color:#fff}
#patientsPage .reception-filter.active b{background:rgba(255,255,255,.18);color:#fff}
#patientsPage .reception-list-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 20px;background:#fff;border-bottom:1px solid #edf2f1}
#patientsPage .reception-list-meta>span{font-size:11.5px;font-weight:900;color:#263e43}
#patientsPage .reception-list-meta small{font-size:10.5px;color:#77878b;text-align:right}
#patientsPage .reception-table-wrap{width:100%;max-height:calc(100vh - 330px);min-height:330px;overflow:auto;background:#fff;scrollbar-gutter:stable}
#patientsPage .reception-queue-table{width:100%;min-width:960px;border-collapse:separate;border-spacing:0;table-layout:fixed;margin:0}
#patientsPage .reception-queue-table .col-patient{width:22%}
#patientsPage .reception-queue-table .col-demographic{width:10%}
#patientsPage .reception-queue-table .col-payer{width:15%}
#patientsPage .reception-queue-table .col-stage{width:27%}
#patientsPage .reception-queue-table .col-wait{width:10%}
#patientsPage .reception-queue-table .col-priority{width:9%}
#patientsPage .reception-queue-table .col-action{width:7%}
#patientsPage .reception-queue-table thead th{position:sticky;top:0;z-index:3;background:#f6f9f9;padding:10px 12px;border-bottom:1px solid #dce7e6;color:#687b80;font-size:9.5px;letter-spacing:.08em;white-space:nowrap}
#patientsPage .reception-queue-table tbody td{padding:12px;border-bottom:1px solid #edf2f1;vertical-align:middle;overflow-wrap:normal}
#patientsPage .reception-queue-row{cursor:pointer;outline:none;transition:background .12s ease,box-shadow .12s ease}
#patientsPage .reception-queue-row:hover td,#patientsPage .reception-queue-row:focus td{background:#f5fbfa}
#patientsPage .reception-queue-row:focus{box-shadow:inset 3px 0 #119f96}
#patientsPage .reception-patient-cell,#patientsPage .reception-payer-cell,#patientsPage .reception-stage-cell,#patientsPage .reception-demographic{display:grid;gap:3px;min-width:0}
#patientsPage .reception-patient-cell b{font-size:12.5px;line-height:1.3;color:#263d42;white-space:normal}
#patientsPage .reception-patient-cell span{font-size:10px;color:#0b7d75;font-weight:900;letter-spacing:.02em}
#patientsPage .reception-demographic b{font-size:12px;color:#30484d}
#patientsPage .reception-demographic span,#patientsPage .reception-payer-cell span{font-size:10px;color:#718287;white-space:normal;line-height:1.3}
#patientsPage .reception-payer-cell b{font-size:11px;color:#334b50}
#patientsPage .reception-stage-cell small{display:block;margin-top:1px;color:#687a7f;font-size:10px;line-height:1.3;white-space:normal}
#patientsPage .reception-stage-pill{display:inline-flex;width:max-content;max-width:100%;align-items:center;padding:5px 8px;border-radius:999px;font-size:9.5px;font-weight:900;letter-spacing:.02em;white-space:nowrap}
#patientsPage .reception-stage-pill.billing{background:#fff2d8;color:#805700}
#patientsPage .reception-stage-pill.triage{background:#e9f5ff;color:#245d86}
#patientsPage .reception-stage-pill.consultation{background:#e7f7f4;color:#0b756e}
#patientsPage .reception-stage-pill.admission{background:#f1edff;color:#604a8e}
#patientsPage .reception-stage-pill.other{background:#edf1f2;color:#586a6f}
#patientsPage .reception-wait{display:inline-flex;align-items:center;justify-content:center;min-width:58px;padding:5px 8px;border-radius:9px;font-weight:900;font-size:10.5px;white-space:nowrap;background:#eef5f4;color:#445d61}
#patientsPage .reception-wait.watch{background:#fff8df;color:#785e00}
#patientsPage .reception-wait.warning{background:#fff0dc;color:#895200}
#patientsPage .reception-wait.critical{background:#ffe9e7;color:#9a332b}
#patientsPage .reception-priority{display:inline-flex;align-items:center;padding:5px 7px;border-radius:999px;font-size:9px;font-weight:900;white-space:nowrap;background:#eef3f3;color:#607176}
#patientsPage .reception-priority.priority{background:#fff0d8;color:#845500}
#patientsPage .reception-priority.emergency{background:#ffe6e7;color:#a62831}
#patientsPage .reception-action-cell{text-align:right;white-space:nowrap}
#patientsPage .reception-action-cell .patient-open{min-width:68px;white-space:nowrap;padding:7px 10px}
#patientsPage .reception-search-table{min-width:760px}
#patientsPage .reception-empty{min-height:270px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px}
#patientsPage .reception-empty b{font-size:14px;color:#41565b}
#patientsPage .reception-empty span{color:#7a898d}
#patientsPage .sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

#patientSummaryModal .patient-summary-modal{width:min(980px,96vw);padding:22px 24px 24px}
#patientSummaryModal .patient-summary-modal-head{padding:0 42px 14px 0;margin-bottom:16px;border-bottom:1px solid #e3ebea}
#patientSummaryModal .patient-summary-modal-head h2{font-size:24px;margin:3px 0}
#patientSummaryModal .reception-patient-summary{padding:0;text-align:left;color:inherit}
#patientSummaryModal .reception-patient-summary .patient-identity{padding:2px 0 14px;border-bottom:1px solid #edf2f1}
#patientSummaryModal .reception-patient-summary .patient-identity>span{width:54px;height:54px;border-radius:16px;font-size:15px}
#patientSummaryModal .reception-patient-summary .patient-identity h3{font-size:19px;color:#243b40}
#patientSummaryModal .reception-patient-summary dl{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:14px 0}
#patientSummaryModal .reception-patient-summary dl div{border:1px solid #e5eceb;background:#f8fbfb;padding:10px 11px}
#patientSummaryModal .reception-patient-summary .profile-bands{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:12px 0}
#patientSummaryModal .reception-patient-summary .profile-bands>div{border:1px solid #e2eaea;border-radius:11px;background:#fff;padding:11px;min-width:0}
#patientSummaryModal .reception-patient-summary .profile-bands b,#patientSummaryModal .reception-patient-summary .profile-bands span{display:block}
#patientSummaryModal .reception-patient-summary .profile-bands b{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:#687b80;margin-bottom:4px}
#patientSummaryModal .reception-patient-summary .profile-bands span{font-size:11.5px;line-height:1.4;color:#334b50;overflow-wrap:anywhere}
#patientSummaryModal .reception-patient-summary .reception-actions{padding:13px 0;margin:4px 0 12px;border-top:1px solid #edf2f1;border-bottom:1px solid #edf2f1}
#patientSummaryModal .reception-patient-summary .reception-actions button{white-space:nowrap}
#patientSummaryModal .reception-patient-summary .mini-list{max-height:220px;overflow:auto}
#patientSummaryModal .reception-patient-summary .enc-row{padding:9px 10px;border-radius:9px}

@container hmis-workspace (max-width:980px){
  #patientsPage .reception-commandbar{grid-template-columns:minmax(0,1fr)}
  #patientsPage .reception-filter-row{justify-content:flex-start}
  #patientsPage .reception-table-wrap{max-height:none;min-height:360px}
}
@container hmis-workspace (max-width:900px){
  #patientsPage .reception-journey-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@container hmis-workspace (max-width:720px){
  #patientsPage .reception-journey-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  #patientsPage .reception-worklist-head{flex-direction:column}
  #patientsPage .reception-head-actions{width:100%}
  #patientsPage .reception-head-actions button{flex:1}
  #patientsPage .reception-search{flex-direction:column}
  #patientsPage .reception-search button{width:100%}
  #patientsPage .reception-list-meta{align-items:flex-start;flex-direction:column}
  #patientsPage .reception-list-meta small{text-align:left}
  #patientSummaryModal .reception-patient-summary dl,#patientSummaryModal .reception-patient-summary .profile-bands{grid-template-columns:minmax(0,1fr)}
}

/* UAT Fix 26 · Billing registers */
.billing-register-toolbar{display:flex;align-items:end;gap:14px;justify-content:space-between;margin:10px 0 18px}.billing-register-toolbar .search{flex:1;max-width:760px}.billing-register-toolbar label{display:grid;gap:6px;min-width:180px;font-weight:700;color:#40565d}.billing-register-table{min-width:1120px}.billing-register-table td small{display:block;margin-top:3px;color:#71838a}.billing-register-table td.right,.billing-register-table th.right{text-align:right}.billing-register-table td:last-child{white-space:nowrap}.billing-register-stats b{font-size:clamp(1.15rem,1.7vw,1.7rem)}
@media (max-width:900px){.billing-register-toolbar{align-items:stretch;flex-direction:column}.billing-register-toolbar .search{max-width:none}.billing-register-toolbar label{min-width:0}.billing-register-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}


.admission-gateway-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin:14px 0 12px}.admission-gateway-filters{display:flex;gap:8px;flex-wrap:wrap}.admission-gateway-filters button{background:#f6f9f9;border:1px solid #d5e1e2;color:#294348;padding:8px 12px;border-radius:999px;font-size:12px}.admission-gateway-filters button.active{background:#dff3f1;border-color:var(--teal);color:var(--teal-dark)}.admission-gateway-count{font-size:12px;color:var(--muted);font-weight:800}.admission-gateway-table-wrap{border:1px solid #e2ebec;border-radius:14px;background:#fff}.admission-gateway-table td small{display:block;color:var(--muted);margin-top:4px;line-height:1.35}.admission-gateway-table td b{display:block;line-height:1.35}.admission-gateway-table .status-pill{margin-top:7px;display:inline-block}.admission-gateway-row{cursor:pointer}.admission-gateway-row:hover td{background:#f9fcfc}.admission-gateway-modal .panel-head h2{margin:4px 0}.admission-gateway-modal-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.admission-gateway-modal-summary>div,.gateway-mini-grid>div{background:#f7faf9;border:1px solid #e3eceb;border-radius:12px;padding:12px}.admission-gateway-modal-summary span,.gateway-mini-grid span{display:block;font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.admission-gateway-modal-summary b,.gateway-mini-grid b{display:block;margin-top:5px;font-size:13px;color:#21373c}.admission-gateway-modal-section{margin-top:16px;border:1px solid #e0ebea;border-radius:14px;padding:16px;background:#fff}.admission-gateway-modal-section h4{margin:0 0 12px}.gateway-mini-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.admission-gateway-modal-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:14px}.admission-gateway-modal-footer span{font-size:12px;color:var(--muted)}
@media(max-width:900px){.admission-gateway-modal-summary{grid-template-columns:1fr 1fr}.gateway-mini-grid{grid-template-columns:1fr}}
@media(max-width:620px){.admission-gateway-modal-summary{grid-template-columns:1fr}}


/* UAT Fix 28 · IPD operational redesign */
#inpatientPage .panel{overflow:visible}
.ip-ward-stack,.ip-patient-care-stack,.ip-mar-fluid-stack{display:grid;gap:16px}
.ip-patient-care-stack{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}
.ip-mar-fluid-stack{grid-template-columns:minmax(0,1.25fr) minmax(420px,.75fr);align-items:start}
.ip-table-toolbar,.ip-census-filters{display:grid;gap:10px;margin:14px 0}
.ip-table-toolbar{grid-template-columns:minmax(260px,1fr) minmax(180px,260px)}
.ip-census-filters{grid-template-columns:minmax(280px,1.4fr) repeat(3,minmax(150px,.6fr))}
.ip-operational-table{border:1px solid #dfe9e9;border-radius:14px;overflow:auto;background:#fff}
.ip-operational-table .data-table,.ip-history-table .data-table{min-width:900px;margin:0}
.ip-operational-table th,.ip-history-table th{position:sticky;top:0;background:#f4f8f8;z-index:1}
.ip-operational-table tr[data-request],.ip-operational-table tbody tr{transition:background .15s ease}
.ip-operational-table tbody tr:hover{background:#f7fbfb}
.ip-table td{vertical-align:top;line-height:1.35}
.ip-table td small{display:block;color:var(--muted);margin-top:4px;line-height:1.35}
.ip-wrap{max-width:460px;white-space:normal;line-height:1.45}
.ip-history-table{border:1px solid #e1eaea;border-radius:12px;overflow:auto;max-height:360px;background:#fff}
.ip-subsection{margin-top:16px}.ip-subsection h4{margin:0 0 9px;font-size:13px;color:#385158}
.ip-capture-drawer{border:1px solid #dbe6e6;border-radius:12px;background:#f9fbfb;padding:0 14px}
.ip-capture-drawer>summary{cursor:pointer;padding:13px 2px;font-weight:800;color:#0b766f;list-style:none;display:flex;align-items:center;justify-content:space-between}
.ip-capture-drawer>summary::-webkit-details-marker{display:none}.ip-capture-drawer>summary::after{content:'＋';font-size:18px;color:#5d7478}.ip-capture-drawer[open]>summary::after{content:'−'}
.ip-capture-drawer form{padding-bottom:14px}
.ip-patient-banner{display:grid!important;grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);gap:16px;align-items:center;background:#20383d!important;color:#fff!important;border:0!important;padding:16px 18px!important;border-radius:16px!important;margin-bottom:16px}
.ip-banner-main{display:flex;gap:13px;align-items:center}.ip-banner-avatar{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;background:#35565d;color:#73ddd4;font-weight:900;font-size:16px;flex:none}.ip-banner-main h3{margin:0 0 4px;font-size:20px}.ip-banner-main span,.ip-banner-main small{display:block;color:#c4d3d5;margin-top:3px}.ip-banner-meta{display:grid;grid-template-columns:minmax(150px,.7fr) minmax(220px,1.3fr);gap:9px}.ip-banner-meta span{background:rgba(255,255,255,.07);border-radius:10px;padding:9px 11px}.ip-banner-meta small,.ip-banner-meta b{display:block}.ip-banner-meta small{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:#97b7bb}.ip-banner-meta b{margin-top:3px;color:#fff;font-size:11px;line-height:1.35}
.ip-placement-context{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.ip-placement-context>div{background:#f5f9f9;border:1px solid #e1ebea;border-radius:11px;padding:11px}.ip-placement-context span,.ip-placement-context b{display:block}.ip-placement-context span{font-size:9px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}.ip-placement-context b{font-size:12px;margin-top:4px;color:#284248}
.ip-row-actions{display:flex;gap:6px;flex-wrap:wrap;min-width:175px}.ip-row-actions button{white-space:nowrap}
#ipMarList .mar-reason,#ipMarList .mar-witness{min-width:170px;margin-top:5px;padding:7px 8px;font-size:11px}.check.tiny{font-size:10px;margin-top:5px}.check.tiny input{width:auto}
#ipFluidHistory{max-height:430px}.fluid-summary{margin-bottom:14px}
#ipPendingAdmissions tbody tr{cursor:pointer}
#ipPatientTasks{max-height:300px}#ipNursingNotes{max-height:360px}
@media(max-width:1200px){.ip-patient-care-stack,.ip-mar-fluid-stack{grid-template-columns:1fr}.ip-census-filters{grid-template-columns:1fr 1fr}.ip-patient-banner{grid-template-columns:1fr}.ip-banner-meta{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.ip-table-toolbar,.ip-census-filters,.ip-placement-context,.ip-banner-meta{grid-template-columns:1fr}.ip-operational-table .data-table,.ip-history-table .data-table{min-width:760px}.ip-patient-banner{padding:14px!important}}

/* UAT Fix 29 · IPD placement safety, structured orders, charge capture & continuity */
.ip-span-all{grid-column:1/-1}
.ip-safety-continuity{border-color:#cfe3e1}
.ip-safety-banner-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:12px 0 16px}
.ip-safety-banner-grid>div{border:1px solid #dfeaea;border-radius:12px;padding:13px;background:#f8fbfb;min-width:0}
.ip-safety-banner-grid>div>small{display:block;font-size:10px;letter-spacing:.08em;color:var(--teal-dark);font-weight:800;margin-bottom:8px}
.ip-compact-history{display:flex;flex-wrap:wrap;gap:7px;align-items:center}
.ip-safety-chip{display:inline-flex;gap:6px;align-items:center;border:1px solid #cfe4e1;background:#edf8f6;border-radius:999px;padding:7px 10px;font-size:11px;color:#23464a}
.ip-safety-chip.danger{background:#fff1ef;border-color:#f1c9c4;color:#8d2921}.ip-safety-chip.ok{background:#eaf8f2;border-color:#cbe9dc;color:#146948}
.ip-safety-history-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.ip-safety-history-grid section{min-width:0;border-top:1px solid #e6eded;padding-top:10px}.ip-safety-history-grid h4,.ip-orders-charge-panel h4{margin:0 0 9px;color:#385157}
.ip-order-action-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ip-orders-charge-panel>.ip-subsection+ .ip-subsection{margin-top:16px}
.ip-permission-disabled{opacity:.6}.ip-permission-disabled>summary::after{content:'Permission required';float:right;color:#8a5a00;font-size:10px}
#ipPlacementAvailability{margin-bottom:4px}.ip-placement-modal button:disabled,.ip-placement-modal select:disabled{opacity:.55;cursor:not-allowed}
.admission-availability.warning{background:#fff7e9;border-color:#edd39b;color:#76521c}
@media(max-width:1100px){.ip-safety-history-grid,.ip-order-action-grid{grid-template-columns:1fr}}
@media(max-width:760px){.ip-safety-banner-grid{grid-template-columns:1fr}}

/* UAT Fix 30 · IPD automatic billing */
.ip-auto-billing-summary{padding:12px 14px;margin:12px 0;background:#f1f8f7;border:1px solid #d8eae8;border-radius:12px;color:#456066;font-size:12px}.ip-auto-billing-summary b{color:#0a756f}.ip-payer-checks{display:flex;gap:14px;flex-wrap:wrap;padding:10px 0}.ip-payer-checks label{min-width:100px}.ip-account-panel{margin:0 0 16px}.ip-account-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0}.ip-account-summary>div{background:#f6f9f9;border:1px solid #e1eaea;border-radius:12px;padding:12px}.ip-account-summary span,.ip-account-summary b{display:block}.ip-account-summary span{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.ip-account-summary b{margin-top:5px;font-size:15px;color:#274148}@media(max-width:900px){.ip-account-summary{grid-template-columns:1fr 1fr}}@media(max-width:620px){.ip-account-summary{grid-template-columns:1fr}}

/* UAT Fix 31 · IPD auto-billing administration */
.ip-auto-status-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:12px 0}.ip-auto-status-grid>div{min-width:0;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--panel-soft,#f7fafa)}.ip-auto-status-grid span,.ip-auto-status-grid b{display:block}.ip-auto-status-grid span{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.ip-auto-status-grid b{margin-top:5px;font-size:14px;color:var(--ink)}
.ipd-auto-admin{display:block}.ipd-auto-admin-stats{margin:14px 0}.ipd-template-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.ipd-template-card{border:1px solid var(--line);border-radius:12px;padding:14px;background:var(--panel-soft,#f8fbfb);min-width:0}.ipd-template-card small{font-size:10px;letter-spacing:.06em;color:var(--muted)}.ipd-template-card h4{margin:5px 0 4px}.ipd-template-card p{margin:4px 0}.ipd-template-card button{margin-top:8px}.ipd-auto-admin-form{margin-top:0}.row-actions{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
@media(max-width:1100px){.ip-auto-status-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ipd-template-grid{grid-template-columns:1fr}}@media(max-width:720px){.ip-auto-status-grid{grid-template-columns:1fr 1fr}}@media(max-width:520px){.ip-auto-status-grid{grid-template-columns:1fr}}


/* UAT Fix 32 · Administration responsive workspace rebuild */
#p3AdminPage .admin13-hero{padding:16px 18px;margin:8px 0 12px;gap:18px;align-items:center}
#p3AdminPage .admin13-hero h2{font-size:clamp(24px,1.8vw,32px);margin:4px 0 6px}
#p3AdminPage .admin13-hero p{font-size:13px;line-height:1.45;max-width:920px}
#p3AdminPage .admin13-hero-actions{margin-left:auto;display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
#p3AdminPage .admin13-hero-actions button{min-height:40px}
#p3AdminPage .admin13-readiness{padding:14px 16px;margin-bottom:12px}
#p3AdminPage .admin13-score{gap:10px}
#p3AdminPage .admin13-score b{font-size:24px}
#p3AdminPage .admin13-progress{margin:10px 0 12px}
#p3AdminPage .admin13-readiness-cards{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}
#p3AdminPage .admin13-readiness-item{min-height:64px;padding:10px 12px}
#p3AdminPage .admin13-readiness-item b{font-size:12.5px}
#p3AdminPage .admin13-readiness-item span{font-size:10.5px}
#p3AdminPage .admin13-stats{margin:0 0 12px}
#p3AdminPage .admin13-stats article{min-height:74px;padding:11px 12px}
#p3AdminPage .admin13-stats article span{font-size:11px}
#p3AdminPage .admin13-stats article b{font-size:20px!important}
#p3AdminPage .admin13-section-bar{margin:0 0 12px;padding:10px 12px;flex-wrap:wrap;justify-content:space-between}
#p3AdminPage .admin13-section-bar > span{flex:1 1 340px}
#p3AdminPage .admin13-layout{display:grid!important;grid-template-columns:minmax(300px,350px) minmax(0,1fr)!important;gap:16px;align-items:start}
#p3AdminPage.admin-sections-hidden .admin13-layout{grid-template-columns:minmax(0,1fr)!important}
#p3AdminPage .admin13-nav{position:sticky!important;top:92px;max-height:calc(100vh - 110px)!important;overflow:auto!important;padding:10px!important}
#p3AdminPage .admin13-search{position:sticky!important;top:0;background:#fbfdfd;z-index:3;padding:0 0 10px}
#p3AdminPage .admin13-nav details{margin:6px 0!important}
#p3AdminPage .admin13-nav summary{padding:10px 12px!important;font-size:12px!important}
#p3AdminPage .admin13-nav details > div{padding:4px 6px 6px!important}
#p3AdminPage .admin13-nav button{grid-template-columns:minmax(112px,145px) minmax(0,1fr) auto!important;column-gap:10px!important;min-height:48px!important;padding:9px 10px!important}
#p3AdminPage .admin13-nav button b{font-size:12.5px!important}
#p3AdminPage .admin13-nav button span{font-size:10.8px!important;line-height:1.35!important}
#p3AdminPage .admin13-nav button em{font-size:9.5px!important}
#p3AdminPage .admin13-workspace{width:100%;min-width:0;min-height:560px;padding:18px!important}
#p3AdminPage .admin13-workspace-head{gap:12px;align-items:flex-start}
#p3AdminPage .admin13-workspace-head h3{font-size:23px!important;margin:3px 0 5px}
#p3AdminPage .admin13-save-state{font-size:10.5px;padding:6px 9px}
#p3AdminPage .admin13-settings-card,#p3AdminPage .admin13-master-edit{padding:16px;margin-bottom:14px}
#p3AdminPage .admin13-settings-head{padding-bottom:10px;margin-bottom:12px}
#p3AdminPage .admin13-settings-head h3{font-size:18px!important}
#p3AdminPage .admin13-settings-grid{gap:11px 13px}
#p3AdminPage .admin13-settings-grid label{font-size:12.5px}
#p3AdminPage .admin13-settings-grid input,
#p3AdminPage .admin13-settings-grid select,
#p3AdminPage .admin13-settings-grid textarea,
#p3AdminPage .admin13-reason input,
#p3AdminPage .admin13-master-picker select{min-height:40px;font-size:13px;padding:9px 10px}
#p3AdminPage .admin13-settings-grid textarea{min-height:84px}
#p3AdminPage .admin13-overview-hidden #adminSetupSummary,
#p3AdminPage .admin13-overview-hidden .admin-setup-guide,
#p3AdminPage .admin13-overview-hidden .admin13-stats{display:none!important}
#p3AdminPage .admin13-overview-hidden .admin13-hero{margin-bottom:10px}
#p3AdminPage .admin-setup-guide{margin-bottom:12px}
#p3AdminPage .admin-setup-guide summary{padding:12px 14px}
#p3AdminPage .admin-setup-guide-grid{gap:10px}
#p3AdminPage .admin-setup-guide-grid button{min-height:74px;padding:12px 13px}
#p3AdminPage .admin-master-panel .data-table{min-width:640px}
@media (max-width:1500px){
  #p3AdminPage .admin13-layout{grid-template-columns:minmax(275px,320px) minmax(0,1fr)!important}
  #p3AdminPage .admin13-nav button{grid-template-columns:minmax(104px,132px) minmax(0,1fr) auto!important}
  #p3AdminPage .admin13-nav button span{font-size:10.5px!important}
}
@media (max-width:1200px){
  #p3AdminPage .admin13-layout{grid-template-columns:1fr!important}
  #p3AdminPage .admin13-nav{position:relative!important;top:auto!important;max-height:none!important}
  #p3AdminPage .admin13-search{position:relative!important}
}
@media (max-width:760px){
  #p3AdminPage .admin13-hero{padding:14px;align-items:flex-start}
  #p3AdminPage .admin13-workspace{padding:14px!important}
  #p3AdminPage .admin13-readiness-cards{grid-template-columns:1fr 1fr}
}


/* UAT Fix 33 · Administration single-workspace navigation */
#p3AdminPage .admin13-layout{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:14px!important;align-items:start}
#p3AdminPage .admin13-nav{position:relative!important;top:auto!important;max-height:none!important;overflow:visible!important;padding:12px!important;border:1px solid #d6e3e2!important;border-radius:18px!important;background:#fbfdfd!important}
#p3AdminPage.admin-sections-hidden .admin13-nav{display:none!important}
#p3AdminPage .admin13-workspace{width:100%;min-width:0;min-height:0;padding:18px!important}
#p3AdminPage .admin13-workspace-tools{margin-left:auto;display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
#p3AdminPage #adminBackToSetup[hidden]{display:none!important}
#p3AdminPage .admin13-workspace-head{display:flex;gap:12px;align-items:flex-start;justify-content:space-between;flex-wrap:wrap}
#p3AdminPage .admin13-nav details{overflow:visible!important}
#p3AdminPage .admin13-nav details > div{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:0!important;padding:4px 8px 8px!important;overflow:visible!important}
#p3AdminPage .admin13-nav button{width:100%;display:grid!important;grid-template-columns:minmax(180px,260px) minmax(0,1fr) auto!important;align-items:center;column-gap:14px;min-height:52px!important;padding:10px 12px!important}
#p3AdminPage .admin13-nav button span{font-size:11px!important;line-height:1.35!important}
#p3AdminPage .admin13-nav button em{justify-self:end;white-space:nowrap}
#p3AdminPage .admin13-section-bar{padding:10px 14px!important}
#p3AdminPage .admin13-section-bar > span{max-width:none}
#p3AdminPage .admin13-search input{height:44px}
#p3AdminPage .admin13-hero-actions{gap:10px}
#p3AdminPage .admin13-readiness-cards{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important}
@media (max-width:900px){
  #p3AdminPage .admin13-nav button{grid-template-columns:minmax(0,1fr) auto!important;row-gap:4px}
  #p3AdminPage .admin13-nav button span{grid-column:1/-1}
  #p3AdminPage .admin13-workspace-tools{width:100%;justify-content:flex-start}
}

/* UAT Fix 34 · Simple Price Centre */
.simple-price-pack{display:grid;grid-template-columns:minmax(0,1.5fr) auto auto;gap:18px;align-items:center;border:1px solid #b9ddd8;background:linear-gradient(135deg,#f1fbf8,#fff);border-radius:18px;padding:18px 20px;margin-bottom:16px}
.simple-price-pack small,.simple-price-card small{font-size:10px;letter-spacing:.14em;font-weight:900;color:#087b74}.simple-price-pack h4{font-size:20px;margin:4px 0 6px}.simple-price-pack p{margin:0;color:#5f7479;line-height:1.5}.simple-price-pack-counts{display:grid;grid-template-columns:repeat(2,minmax(82px,1fr));gap:8px}.simple-price-pack-counts span{display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #d6e7e4;border-radius:12px;background:#fff;padding:8px 10px;font-size:10px;color:#61777b}.simple-price-pack-counts b{font-size:18px;color:#25434a}
.simple-price-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.simple-price-card{border:1px solid #d5e3e2;border-radius:17px;background:#fff;padding:16px;min-width:0}.simple-price-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.simple-price-head h4{margin:3px 0 0;font-size:18px}.simple-price-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:13px 0}.simple-price-kpis>div{border:1px solid #e0e9e8;border-radius:11px;background:#f8fbfb;padding:9px 10px;display:flex;flex-direction:column;gap:2px}.simple-price-kpis span{font-size:10px;color:#697c80}.simple-price-kpis b{font-size:17px;color:#2d474d}.simple-price-actions{display:flex;gap:8px;flex-wrap:wrap}.simple-price-upload{margin-top:12px;border-top:1px solid #e1e9e8;padding-top:10px}.simple-price-upload summary{cursor:pointer;font-weight:800;color:#087b74}.simple-price-upload-body{display:grid;grid-template-columns:1fr 1.35fr auto;gap:10px;align-items:end;margin-top:10px}.simple-price-upload-body label{display:flex;flex-direction:column;gap:5px;font-size:11px;font-weight:700;color:#405b60}.simple-price-upload-body input{width:100%;min-height:42px;border:1px solid #cedcdd;border-radius:10px;padding:8px 10px;background:#fff}.simple-price-upload-body small{grid-column:1/-1;color:#6d8084;line-height:1.4}.simple-price-editor-bar{display:flex;gap:12px;align-items:center;justify-content:space-between;margin-bottom:12px}.simple-price-editor-bar input{flex:1;min-height:42px;border:1px solid #cadadb;border-radius:10px;padding:0 12px}.simple-price-editor-bar span{font-size:11px;color:#6b7c80;white-space:nowrap}.simple-price-table{max-height:52vh;overflow:auto}.simple-inline-price{width:120px;min-height:36px;border:1px solid #c9d9da;border-radius:8px;padding:6px 8px;text-align:right;font-weight:700}
@media(max-width:1150px){.simple-price-pack{grid-template-columns:1fr}.simple-price-pack-counts{grid-template-columns:repeat(4,minmax(70px,1fr));}.simple-price-grid{grid-template-columns:1fr}.simple-price-upload-body{grid-template-columns:1fr 1fr}.simple-price-upload-body button{grid-column:1/-1}}
@media(max-width:700px){.simple-price-pack-counts{grid-template-columns:repeat(2,1fr)}.simple-price-upload-body{grid-template-columns:1fr}.simple-price-upload-body button,.simple-price-upload-body small{grid-column:auto}.simple-price-editor-bar{align-items:stretch;flex-direction:column}}

/* UAT Fix 35 · Pharmacy operational workspace */
.pharmacy-heading{align-items:center}.pharmacy-heading-actions{display:flex;gap:10px;flex-wrap:wrap}.pharmacy-tabs{margin:14px 0}.pharmacy-tab-panel{min-width:0}.pharmacy-filter-bar{display:grid;grid-template-columns:minmax(260px,1fr) 210px 210px;gap:10px;margin:10px 0 14px}.pharmacy-filter-bar input,.pharmacy-filter-bar select{width:100%;min-height:44px;border:1px solid #ccdada;border-radius:11px;background:#fff;padding:9px 12px;color:#274047;font-size:14px}.pharmacy-table-wrap{width:100%;overflow:auto;border:1px solid #e0e8e8;border-radius:14px}.pharmacy-table-wrap .data-table{min-width:980px}.pharmacy-queue-table td small,.pharmacy-history-table td small,.pharmacy-stock-table td small{display:block;margin-top:3px;color:#718286}.pharmacy-dispense-modal{width:min(1320px,94vw);max-width:1320px;max-height:92vh;overflow:auto}.pharmacy-stock-modal{width:min(760px,92vw);max-width:760px}.pharmacy-billing-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0}.pharmacy-billing-strip>div,.pharmacy-history-meta>div{border:1px solid #d9e6e5;background:#f8fbfb;border-radius:12px;padding:12px 14px;display:flex;flex-direction:column;gap:3px}.pharmacy-billing-strip span,.pharmacy-history-meta span,.pharmacy-line-price span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#6c7e82;font-weight:800}.pharmacy-billing-strip b,.pharmacy-history-meta b{font-size:14px;color:#294047}.pharmacy-billing-strip small{font-size:11px;color:#6d7f83}.pharmacy-dispense-line{display:grid;grid-template-columns:minmax(280px,1.3fr) minmax(150px,.55fr) minmax(330px,1fr) auto;gap:14px;align-items:center;border:1px solid #dbe5e5;border-radius:14px;padding:14px;margin:10px 0;background:#fff}.pharmacy-line-price{display:flex;flex-direction:column;gap:4px}.pharmacy-line-price b{font-size:14px}.pharmacy-line-price small{font-size:11px;color:#6d7f83}.pharmacy-safety-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.pharmacy-history-meta{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0}.pharmacy-setup-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.pharmacy-setup-card{min-height:220px;display:flex;flex-direction:column;align-items:flex-start}.pharmacy-setup-card>small{color:#087b74;font-weight:900;letter-spacing:.12em}.pharmacy-setup-card h3{margin:6px 0 8px}.pharmacy-setup-card p{color:#607478;line-height:1.55;flex:1}.pharmacy-setup-card button{margin-top:12px}.pharmacy-stats article{min-height:88px}.pharmacy-stock-table .status-pill,.pharmacy-queue-table .status-pill{white-space:nowrap}
@media(max-width:1200px){.pharmacy-filter-bar{grid-template-columns:1fr 180px}.pharmacy-filter-bar>*:last-child{grid-column:auto}.pharmacy-dispense-line{grid-template-columns:1fr 1fr}.pharmacy-dispense-line .medication-order{grid-column:1/-1}.pharmacy-safety-grid{grid-template-columns:1fr}.pharmacy-setup-grid{grid-template-columns:1fr}}
@media(max-width:760px){.pharmacy-filter-bar{grid-template-columns:1fr}.pharmacy-dispense-line{grid-template-columns:1fr}.pharmacy-billing-strip,.pharmacy-history-meta{grid-template-columns:1fr}.pharmacy-heading-actions{width:100%}.pharmacy-heading-actions button{flex:1}}

/* UAT Fix 36 · Unified stock movement */
.stock-template-line{display:grid;grid-template-columns:minmax(190px,1.5fr) 100px 170px minmax(190px,1.2fr) auto;gap:9px;align-items:end;border:1px solid #dce7e6;border-radius:12px;padding:10px;margin-bottom:8px;background:#fbfdfd}.stock-template-line label{display:flex;flex-direction:column;gap:5px;font-size:11px;font-weight:700}.stock-template-line select,.stock-template-line input{min-height:38px;border:1px solid #cddbdc;border-radius:9px;padding:7px 8px;background:#fff}.custody-return,.custody-waste{white-space:nowrap}.mar-qty{width:80px!important;min-height:32px!important}.pharmacy-billing-strip+.alert{margin-top:10px}@media(max-width:1050px){.stock-template-line{grid-template-columns:1fr 1fr}.stock-template-line .tpl-remove{grid-column:1/-1}}


/* UAT Fix 38 · module-owned Settings + employee-level access rights */
.module-local-tabs{display:flex;gap:8px;align-items:center;margin:0 0 18px;padding:6px;border:1px solid var(--line,#dbe4ec);border-radius:14px;background:var(--surface,#fff);position:relative;z-index:2}
.module-local-tabs button{border:0;background:transparent;padding:10px 16px;border-radius:10px;font-weight:700;cursor:pointer;color:inherit}
.module-local-tabs button.active{background:rgba(15,104,92,.1);box-shadow:inset 0 0 0 1px rgba(15,104,92,.16)}
.module-local-tabs button.locked{opacity:.62}
.module-settings-pane{display:none}
.page.module-settings-open>.module-workspace-content{display:none!important}
.page.module-settings-open>.module-settings-pane{display:block}
.module-settings-header{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:16px}
.module-settings-header h3{margin:.2rem 0}.module-settings-header p{margin:.25rem 0;color:var(--muted,#667085)}
.module-settings-form{max-width:none}
.module-pricing-tool{border-style:dashed}
.employee-access-panel{border:1px solid rgba(15,104,92,.22)}
.access-rights-legend{display:flex;gap:18px;flex-wrap:wrap;font-size:.85rem;color:var(--muted,#667085)}
.access-rights-legend span{display:flex;align-items:center;gap:7px}.access-rights-legend i{width:10px;height:10px;border-radius:50%;display:inline-block;background:#98a2b3}
.access-rights-legend .grant-dot{background:#12b76a}.access-rights-legend .deny-dot{background:#f04438}.access-rights-legend .role-dot{background:#2e90fa}
.employee-rights-module .permission-check{position:relative}
.employee-rights-module .permission-check>span{display:flex;flex-direction:column;gap:3px;min-width:0}
.employee-rights-module .permission-check em{font-size:.72rem;font-style:normal;font-weight:800;letter-spacing:.02em}
.employee-rights-module .right-role em{color:#175cd3}.employee-rights-module .right-grant em{color:#027a48}.employee-rights-module .right-deny em{color:#b42318}.employee-rights-module .right-none em{color:#667085}
.employee-rights-module .right-grant{box-shadow:inset 3px 0 0 #12b76a}.employee-rights-module .right-deny{box-shadow:inset 3px 0 0 #f04438}.employee-rights-module .right-role{box-shadow:inset 3px 0 0 #2e90fa}
@media(max-width:760px){.module-local-tabs{overflow-x:auto}.module-local-tabs button{white-space:nowrap}.module-settings-header{flex-direction:column}.access-rights-legend{gap:10px}}

/* UAT Fix 40 · completion controls, facility branding and consultant routing */
.facility-profile-photo{width:42px;height:42px;object-fit:cover;border-radius:10px;border:1px solid #cddedc;background:#fff;padding:2px}
.facility-branding-editor{display:grid;grid-template-columns:180px minmax(0,1fr);gap:18px;align-items:start;border:1px solid #d8e6e4;border-radius:14px;padding:14px;background:#fbfdfd}
.facility-branding-preview{min-height:135px;display:flex;align-items:center;justify-content:center;border:1px dashed #bfcfce;border-radius:12px;background:#fff;overflow:hidden}
.facility-branding-preview img{display:block;width:100%;height:135px;object-fit:contain;padding:8px}
.facility-branding-editor input[type=file]{width:100%;margin-top:6px}
.consultant-revenue-table td small{display:block;margin-top:4px;color:#6d8084}.consultant-revenue-table select,.consultant-revenue-table input{min-height:38px;border:1px solid #cad9d8;border-radius:9px;padding:7px 9px;background:#fff}.consultant-revenue-table input{width:150px}
.gate-pass-panel{display:grid;gap:10px}.gate-check{border:1px solid #dae4e4;border-radius:11px;padding:11px 12px;display:flex;flex-direction:column;gap:3px}.gate-check.ok{background:#f0faf6;border-color:#b9e1cf}.gate-check.blocked{background:#fff5f3;border-color:#f0c5bd}.gate-check small{color:#61777b}
.encounter-order-row{display:grid;grid-template-columns:minmax(180px,1.5fr) 140px 160px;gap:10px;align-items:center;padding:10px 12px;border:1px solid #dde8e7;border-radius:10px;margin:7px 0;background:#fff}.encounter-order-row small{display:block;color:#6c7f83;margin-top:3px}
@media(max-width:760px){.facility-branding-editor{grid-template-columns:1fr}.facility-branding-preview{min-height:110px}.encounter-order-row{grid-template-columns:1fr}.consultant-revenue-table{min-width:760px}}

/* Stage 4 account recovery */
.link-button{border:0;background:transparent;color:var(--primary,#5b2a86);font:inherit;font-weight:700;cursor:pointer;padding:.55rem 1rem;text-align:center}.link-button:hover{text-decoration:underline}.login-card .alert.ok{border-color:rgba(35,134,54,.3)}

/* Stage 5 — Management Command Centre */
.management-attention-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:0 0 16px}.management-attention-strip article{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px;min-width:0}.management-attention-strip small,.management-attention-strip span{display:block;color:var(--muted)}.management-attention-strip small{font-size:9px;font-weight:800;letter-spacing:.08em}.management-attention-strip b{display:block;font-size:24px;margin:5px 0 2px}.management-attention-strip span{font-size:10px}.alert-row{display:flex;justify-content:space-between;gap:12px;align-items:center}.management-alert-main{min-width:0}.management-alert-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}.management-alert-actions strong{min-width:28px;text-align:center;font-size:18px}.management-alert-actions button{white-space:nowrap}@media(max-width:1200px){.management-attention-strip{grid-template-columns:repeat(3,1fr)}}@media(max-width:700px){.management-attention-strip{grid-template-columns:repeat(2,1fr)}.alert-row{align-items:flex-start}.management-alert-actions{flex-direction:column}}
