/* Evening hospital palette: deep blue glass, sky blue and warm window light. */
.dashboard-shell{background:radial-gradient(ellipse at 85% 0,#29415788,transparent 42%),radial-gradient(at 25% 35%,#16375566,transparent 60%),#0e1c2a;color:#dce8f2;--line:#ffffff12;--muted:#9daebf}
.dashboard-shell aside{background:linear-gradient(180deg,#13293df7,#0f2032);border-right:1px solid #ffffff0c}
.dashboard-shell .main header{background:#122334e6;border-color:#ffffff10;color:#c6d9e9}.dashboard-shell .breadcrumb{color:#9aadc0}
.dashboard-shell #content{max-width:1760px;margin:auto;padding-top:26px}.dashboard-shell .page-title{margin-bottom:24px}.dashboard-shell .page-title h1{color:#edf3f8;font-weight:500;letter-spacing:-.6px}.dashboard-shell .page-title p{color:#9baebe}.dashboard-shell .eyebrow{color:#91abc2;letter-spacing:1.8px;font-size:9px}
.dashboard-shell .panel,.dashboard-shell .category-overview{background:linear-gradient(135deg,#20374a88,#152839bb);border:1px solid #afcde719;box-shadow:0 12px 35px #050f1a18,inset 0 1px 0 #ffffff05;border-radius:19px;backdrop-filter:blur(16px)}
.dashboard-shell .panel h2,.dashboard-shell .category-heading h2{color:#e4eff6}.dashboard-shell .muted{color:#a0b1c1}.dashboard-shell .link{color:#a8c3d9}.dashboard-shell .secondary{background:#adcde00c;border-color:#c3def124;color:#d3e4f1}.dashboard-shell .secondary:hover{background:#adcde019}.dashboard-shell input,.dashboard-shell select{background:#1c3346;color:#d4e6f1;border-color:#adcde025;color-scheme:dark}
.dashboard-pulse{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:27px 30px;border:1px solid #b6cadc26;border-radius:22px;margin-bottom:21px;background:linear-gradient(90deg,#264865db,#1d344bf0),url('assets/hospital-login-v46.jpg') center 48%/cover;box-shadow:inset 0 1px 0 #ffffff13}.dashboard-pulse:after{content:'';position:absolute;width:350px;height:180px;right:-90px;top:-75px;background:radial-gradient(ellipse,#edc08022,transparent 66%);pointer-events:none}.pulse-copy h2{font-size:25px;font-weight:400;margin:7px 0;color:#f0f5f9}.pulse-copy p{font-size:12px;color:#b2c7d9;margin:0 0 14px}.pulse-date{font-size:11px;color:#e1c697}.pulse-health{display:flex;gap:20px;align-items:center;flex-shrink:0}.health-ring{width:92px;height:92px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#ebc486 var(--ready),#56738744 0);position:relative}.health-ring:before{content:'';position:absolute;inset:6px;border-radius:50%;background:#223c51}.health-ring strong{position:relative;color:#f8e4bf;font-size:29px;font-weight:400}.health-ring small{font-size:14px}.pulse-health b,.pulse-health small,.pulse-health span{display:block}.pulse-health b{font-weight:400;font-size:14px;color:#d9e7f1}.pulse-health small{font-size:11px;color:#a4bed1;margin:5px 0 10px}.pulse-health span{font-size:10px;color:#ebcb9a;background:#f2ca8610;border:1px solid #f2ca8625;border-radius:30px;padding:4px 10px}
.dashboard-shell .dashboard-categories{grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin-bottom:22px}.dashboard-shell .category-overview.water{grid-column:auto}.dashboard-shell .category-overview{padding:20px}.dashboard-shell .category-heading{gap:10px}.dashboard-shell .category-heading h2{font-size:16px;font-weight:400}.dashboard-shell .category-heading>.link{margin-left:auto;font-size:10px;white-space:nowrap}.dashboard-shell .category-icon{width:35px;height:35px;background:#9cbce519;color:#a6c5e9}.dashboard-shell .generator .category-icon{background:#f4c17713;color:#efd098}.dashboard-shell .water .category-icon{background:#72cbd91c;color:#82c7d7}.dashboard-shell .category-stats{gap:7px;margin-top:22px}.dashboard-shell .category-stats strong{color:#d9e8f4;font-weight:400;font-size:24px}.dashboard-shell .category-stats .category-total strong{font-size:38px;line-height:1.2}.dashboard-shell .category-total{min-width:56px}.dashboard-shell .category-stats span{color:#97afc1;font-size:10px}.dashboard-shell .category-number{padding-left:9px;border-color:#afc9dc1f}.dashboard-shell .category-number.ok strong{color:#92c7b8}.dashboard-shell .category-number.due strong{color:#e1c08e}.dashboard-shell .category-number.fail strong{color:#e5989e}.dashboard-shell .category-readiness{color:#90aabb;font-size:10px;margin-top:20px}.dashboard-shell .category-readiness b{color:#d5e4ec}.dashboard-shell .readiness-track{background:#a1c0d411;height:4px;margin-bottom:13px}.dashboard-shell .readiness-track i{background:linear-gradient(90deg,#789fbe,#b8d8eb)}.dashboard-shell .generator .readiness-track i{background:linear-gradient(90deg,#b79057,#edcf96)}.dashboard-shell .water .readiness-track i{background:linear-gradient(90deg,#5597a9,#98d1d8)}.dashboard-shell .category-breakdown{min-height:24px}.dashboard-shell .category-breakdown>span{background:#d0e2ef09;border-color:#ffffff08;color:#aabecb;font-size:9px}.dashboard-shell .category-foot{border-top-color:#b9d4e412;color:#92aaba;margin-top:10px;padding-top:10px}.dashboard-shell .category-overview.water .category-breakdown{display:flex}
.dashboard-workspace{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:20px;margin-bottom:22px;align-items:stretch}.dashboard-workspace>*{min-width:0}.dashboard-workspace .panel{margin:0;height:100%;padding:20px}.dashboard-shell .section-heading h2{font-size:17px;font-weight:400}.dashboard-shell .section-heading p{font-size:10px;margin-top:5px}.dashboard-shell .site-map,.dashboard-shell #site-map{height:290px;min-height:290px}.dashboard-shell .map-toolbar{gap:5px}.dashboard-shell .map-toolbar button{font-size:9px;padding:6px 8px}.dashboard-shell .map-toolbar select{font-size:10px;max-width:180px}.dashboard-shell .map-equipment-filter{gap:4px}.dashboard-shell .map-kind-button,.dashboard-shell .map-state-filter button{font-size:9px}.dashboard-shell .map-help,.dashboard-shell .map-metrics,.dashboard-shell .map-legend,.dashboard-shell .plan-tools{color:#99b2c5;font-size:10px}.dashboard-shell .plan-tools{border-color:#c9deee14}.dashboard-shell .map-dimension{color:#c5d9e5;border-color:#c9deee22;background:#d3e5f00a}.dashboard-shell .map-stage{border-color:#b8cfdf18;overflow:hidden;border-radius:12px}
.water-trend .section-heading{flex-wrap:wrap;gap:12px}.trend-picker{max-width:210px;margin:0}.trend-picker select{font-size:11px;padding:8px 27px 8px 10px}.usage-metrics{display:flex;gap:20px;justify-content:space-between;margin:26px 0 18px;align-items:flex-end}.usage-metrics strong{color:#dceff7;font-size:29px;font-weight:400}.usage-metrics strong small{font-size:11px;color:#98b5c6}.usage-metrics b{font-size:16px;font-weight:400;color:#d0e3eb}.usage-metrics span{display:block;font-size:10px;color:#9cb2c1;margin-top:5px}.usage-change{border-left:1px solid #b7d0df1f;padding-left:18px}.usage-change b{color:#e9c68f}.usage-chart{width:100%;height:auto;display:block;margin:17px 0 4px;overflow:visible}.usage-chart line{stroke:#c5deeb12;stroke-width:1}.usage-chart text{fill:#90a9bc;font-size:9px}.usage-chart rect{fill:#6e9cafaa}.usage-chart rect.latest{fill:#e8c48d}.usage-details{margin-top:18px;border-top:1px solid #c5deeb15;padding-top:14px}.usage-details summary{font-size:11px;color:#b5c9d9;cursor:pointer}.trend-caption{font-size:10px;color:#819aad;margin:18px 0 0;line-height:1.8}.trend-empty{min-height:244px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#c6dbe6;font-size:15px}.trend-empty p{font-size:12px;color:#97b0c0;text-align:center;line-height:1.9}
.dashboard-shell .water-results{border-top:1px solid #afcde719;padding:22px;margin-bottom:22px}.dashboard-shell .water-results .section-heading{margin-bottom:13px}.dashboard-shell .water-results table{min-width:750px}.dashboard-shell .table-wrap{border-color:#b3cbdc15;background:transparent}.dashboard-shell .table-wrap th{background:#29435650;color:#a7bdce;font-weight:400;font-size:10px}.dashboard-shell .table-wrap td,.dashboard-shell .table-wrap tr{background:transparent;border-color:#c7deed0d;color:#bacddc;font-size:11px}.dashboard-shell .table-wrap td b{color:#d6e3ed}.dashboard-shell .table-wrap small{color:#95adbf;font-size:10px}.dashboard-shell .water-check{color:#a9c3d4}.dashboard-shell .water-check.fail{color:#e2a0a5}.dashboard-shell .water-check-results{padding:12px 0}.dashboard-shell details summary{cursor:pointer}.dashboard-shell .chlorine-value{font-size:20px;color:#9ed5db}.dashboard-shell .attention-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.dashboard-shell .attention-panel{padding:19px}.dashboard-shell .attention-panel h2{font-size:14px}.dashboard-shell .attention-item{border-color:#d6e6f00e;gap:9px}.dashboard-shell .attention-item:hover{background:#bfdaea05}.dashboard-shell .attention-text b{color:#c8dce8;font-size:10px}.dashboard-shell .attention-text small{color:#88a2b6;font-size:9px}.dashboard-shell .attention-icon{width:28px;height:34px;background:#d9eaf10c}.dashboard-shell .count{background:#adcade10;color:#b2cad9}.dashboard-shell .popup-status{font-size:9px}.dashboard-shell .popup-status.ok{background:#315e4f55;color:#acd7c8}.dashboard-shell .popup-status.due{background:#765c3244;color:#e8c991}.dashboard-shell .popup-status.fail{background:#8c435142;color:#ecabb6}.dashboard-shell .empty{color:#b0c6d4}.dashboard-shell .footnote,.dashboard-shell footer{color:#7f98ac}.dashboard-shell footer{border-color:#b7cfe010}
.meter-capture{padding:20px;background:#edf5fa;border:1px solid #c9dfea;border-radius:15px;margin-bottom:20px}.meter-capture h3{margin:5px 0}.export-includes{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:18px 0}.export-includes span{font-size:11px;background:#eef4f9;border:1px solid #dce7ee;border-radius:10px;padding:10px;color:#41647c}.export-includes span:before{content:'✓ ';color:#53857b}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:1680px){.dashboard-shell .category-heading h2{font-size:19px}.dashboard-shell .category-stats strong{font-size:30px}}
@media(max-width:1250px){.dashboard-shell .category-overview{padding:16px}.dashboard-shell .category-heading h2{font-size:14px}.dashboard-shell .category-heading .eyebrow{font-size:7px}.dashboard-shell .category-heading>.link{display:none}.dashboard-shell .category-number{padding-left:6px}.dashboard-shell .category-stats strong{font-size:21px}.dashboard-shell .category-stats span{font-size:9px}.dashboard-workspace{grid-template-columns:1fr}.dashboard-shell .attention-grid{grid-template-columns:1fr 1fr}.dashboard-shell .attention-panel:last-child{grid-column:1/-1}.water-trend .usage-chart{max-height:220px}.dashboard-shell .site-map,.dashboard-shell #site-map{height:360px}}
@media(max-width:900px){.dashboard-pulse{padding:23px}.pulse-health{gap:10px}.health-ring{height:70px;width:70px}.health-ring strong{font-size:23px}.pulse-copy h2{font-size:21px}.pulse-copy p{max-width:270px}.dashboard-shell .dashboard-categories{gap:10px}.dashboard-shell .category-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.dashboard-shell .category-total{grid-column:1/-1}.dashboard-shell .category-total span{display:inline;margin-left:7px}.dashboard-shell .category-number{padding-left:0;border:0}.dashboard-shell .category-breakdown>span{font-size:8px}.dashboard-shell .category-foot{font-size:8px}}
@media(max-width:650px){.dashboard-shell #content{padding-top:20px}.dashboard-shell .page-title h1{font-size:27px}.dashboard-shell .page-title .actions{width:100%}.dashboard-shell .page-title .actions button{flex:1;font-size:11px}.dashboard-pulse{display:block;padding:22px}.pulse-copy h2{font-size:24px}.pulse-copy p{max-width:none}.pulse-health{margin-top:21px;padding-top:18px;border-top:1px solid #b9d1e31c;gap:15px}.health-ring{width:65px;height:65px}.pulse-health>div:last-child{flex:1}.pulse-health span{display:inline-block}.pulse-health small{margin:3px 0 6px}.dashboard-shell .dashboard-categories{grid-template-columns:1fr;gap:13px}.dashboard-shell .category-overview{padding:20px}.dashboard-shell .category-heading h2{font-size:18px}.dashboard-shell .category-heading .eyebrow{font-size:8px}.dashboard-shell .category-heading>.link{display:block}.dashboard-shell .category-stats{display:flex;justify-content:space-between;gap:9px;margin-top:17px}.dashboard-shell .category-total span{display:block;margin-left:0}.dashboard-shell .category-number{padding-left:10px;border-left:1px solid #b7d0df20}.dashboard-shell .category-stats strong{font-size:27px}.dashboard-shell .category-stats span{font-size:10px}.dashboard-shell .category-breakdown>span{font-size:9px}.dashboard-shell .category-foot{font-size:10px}.dashboard-shell .attention-grid{grid-template-columns:1fr}.dashboard-shell .attention-panel:last-child{grid-column:auto}.dashboard-shell .attention-panel h2{font-size:17px}.dashboard-shell .attention-text b{font-size:12px}.dashboard-shell .attention-text small{font-size:10px}.dashboard-workspace{gap:15px}.dashboard-workspace .panel{padding:17px}.usage-metrics{gap:10px}.usage-metrics strong{font-size:25px}.usage-metrics b{font-size:14px}.usage-change{padding-left:9px}.usage-metrics span{font-size:9px}.dashboard-shell .water-results{padding:17px}.dashboard-shell .site-map,.dashboard-shell #site-map{height:300px;min-height:300px}.dashboard-shell .table-wrap th,.dashboard-shell .table-wrap td{background:transparent}.export-includes{grid-template-columns:1fr}.meter-capture{padding:15px}}
@media(prefers-reduced-motion:no-preference){.dashboard-pulse,.category-overview{animation:dashboard-enter .5s ease both}.category-overview:nth-child(2){animation-delay:.06s}.category-overview:nth-child(3){animation-delay:.12s}@keyframes dashboard-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}}
.dashboard-shell #content{width:100%;min-width:0}.health-ring strong{display:flex;align-items:baseline;gap:2px}.health-ring strong small{display:inline}.dashboard-shell .map-filters button{background:#b9d7e710;border:1px solid #bcd7e123;color:#adc7d8;padding:6px 9px;font-size:10px}.dashboard-shell .map-filters button[aria-pressed=true]{background:#afd3e424;border-color:#a9cfdf60;color:#ebf4fa}.dashboard-shell .map-filters button b{background:#bedaea12;color:#adc9d7}.dashboard-shell .map-filters{border-color:#bfdbe518;gap:5px;padding-bottom:12px}.dashboard-shell .map-status,.dashboard-shell .map-opacity{color:#93afc2}.dashboard-shell button[data-map=roads][aria-pressed=true]{background:#719eaa26;border-color:#87acb650;color:#b8d7df}.trend-current{border-top:1px solid #bcd6e51a;padding-top:19px;margin-top:20px}.trend-current-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:13px}.trend-current h3{font-size:12px;font-weight:400;margin:0;color:#c8dce7}.trend-current-heading strong{font-size:18px;font-weight:400;color:#a0d1d9}.trend-current-heading small{font-size:9px;color:#92b0c0}.trend-checks{display:grid;grid-template-columns:1fr 1fr;gap:9px}.trend-checks>div{display:flex;justify-content:space-between;gap:8px;background:#b4d6e507;border:1px solid #b4d6e50a;border-radius:8px;padding:9px;font-size:9px;color:#a7bdcc}.trend-checks b{font-weight:400;color:#a5cfbd}.trend-checks .fail b{color:#e5a4ac}.trend-current>small{display:block;font-size:9px;color:#839eaf;margin-top:12px}
@media(max-width:650px){.dashboard-shell .water-results table{min-width:0;width:100%}.dashboard-shell .table-wrap{max-width:100%}.dashboard-shell #content{padding-left:16px;padding-right:16px}.trend-checks{grid-template-columns:1fr}.dashboard-shell .main{width:100%}.dashboard-shell .map-filters button{font-size:9px}.dashboard-shell .map-opacity{white-space:normal}}

/* v4.9: map takes the full workspace width */
.dashboard-shell .dashboard-workspace{grid-template-columns:minmax(0,1fr)}
.dashboard-shell .site-map,.dashboard-shell #site-map{height:560px;min-height:560px}
.generator-fuel{margin-top:16px;padding-top:12px;border-top:1px solid #ffffff20}.generator-fuel h3{font-size:14px;margin:0 0 10px}.fuel-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.fuel-row small{display:block;color:#aec3d2;font-size:11px}.fuel-row strong{font-size:24px;color:#f3cf92}.fuel-track{height:5px;background:#ffffff15;border-radius:8px;margin:7px 0 12px;overflow:hidden}.fuel-track i{display:block;height:100%;background:#e9bf7e}.generator-fuel>small{font-size:11px;color:#aec3d2}
@media(max-width:650px){.dashboard-shell .site-map,.dashboard-shell #site-map{height:420px;min-height:420px}}
