/* Option 1: readable customer home and grouped operations workspace. */
:root{--color-paper:#fff;--color-surface:#fff;--color-sidebar:#f1f6ef;--color-soft:#f3f6f2;--color-ink:#203c33;--color-muted:#58655f;--color-rule:#e0e7e1;--color-accent:#224b40;--color-active:#deeadc;--text-base:15px;--text-sm:13px;--radius-md:8px}
body{line-height:1.75}
.sidebar{width:244px;padding:30px 22px 22px;border-right:0}
.brand{justify-content:center}.brand img{width:180px;height:auto;display:block}
.portal-label{margin:22px 12px 16px;font-size:12px}
.nav-link{min-height:48px;padding:11px 12px;font-size:14px;color:#365246;gap:12px;white-space:normal}
.nav-link .icon{width:22px;height:22px}.nav-link>span:not(.count){flex:1}
.nav-link.active{background:#dce9d8;color:#173f30;font-weight:700}
.nav-group-label{font-size:12px;font-weight:700;color:#596e61;letter-spacing:.04em;margin:20px 12px 7px}
.nav-group-label:first-child{margin-top:0}.nav-link .count{font-size:12px;background:white;border-radius:20px;min-width:23px;padding:0 5px}
.sidebar-help{padding-top:28px}.help-link{background:white;border:0;border-radius:8px;font-size:14px;min-height:58px;padding:14px}.sidebar-help>.btn{margin-top:12px;font-size:12px;white-space:normal}.sidebar-note{font-size:11px}
.workspace{margin-left:244px}.topbar{height:76px;padding:0 36px;gap:18px}.breadcrumbs{font-size:13px}.top-actions{gap:16px}.portal-identity{display:none}.account-button{font-size:13px}.topbar .logout-button{font-size:13px;border:0;background:transparent;min-height:44px}.icon-button{min-width:44px;min-height:44px}
.demo-context{padding:12px 36px 0;font-size:12px;color:#627168}.demo-context>span{display:flex;align-items:center;gap:7px}.demo-context .icon{width:14px;height:14px;flex-shrink:0}
.main-content{padding:28px 36px 32px;max-width:1540px}.page-heading{margin-bottom:28px}.page-heading h1{font-size:30px;font-weight:700}.page-heading p{font-size:14px;margin-top:8px}
.btn,.btn.small{min-height:44px;font-size:14px;padding:10px 16px;border-radius:6px}.btn.primary{box-shadow:0 2px 3px #15342510}.btn .icon{width:18px;height:18px}.text-link{font-size:13px;gap:6px}.status{font-size:12px;padding:4px 10px;border-radius:4px}.count{font-size:12px}
.home-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:165px;margin:0 0 30px}.home-hero h1{font-size:clamp(28px,2.65vw,42px);font-weight:700;color:#1d4c3a;letter-spacing:.025em;line-height:1.5}.home-hero p{font-size:15px;margin-top:12px;line-height:1.95}.home-hero>div{flex:1;min-width:0}.home-hero img{width:30%;max-width:330px;height:auto;object-fit:contain;flex-shrink:0}
.home-overview{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px}.home-bill,.home-generation,.home-notices,.home-secondary>.maintenance-preview{border:1px solid var(--color-rule);border-radius:8px;padding:24px;min-width:0;background:white}
.home-overview h2,.home-secondary h2{font-size:18px;font-weight:700}.home-overview .section-top{gap:12px}.home-overview h2>.icon,.home-notices h2>.icon{width:26px;height:26px;color:var(--color-accent)}
.bill-main{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:20px}.home-bill .bill-value{font-size:clamp(42px,4vw,60px);font-weight:700;color:#1d4c3a;line-height:1.3;margin:0;letter-spacing:-1.5px}.home-bill .bill-value small{font-size:25px;margin:0 0 0 8px;font-weight:600}.bill-tax{font-size:12px;color:var(--color-muted);margin-top:8px}.home-bill-details{margin:22px 0 0;padding-top:20px;border-top:1px solid var(--color-rule);display:grid;gap:14px;font-size:13px}.home-bill-details>div{display:grid;grid-template-columns:115px minmax(0,1fr);gap:12px;align-items:center}.home-bill-details dt{color:var(--color-muted)}.home-bill-details dd{margin:0}.home-bill>.text-link{margin-top:10px}.home-period{font-size:12px;color:var(--color-muted);margin-top:12px}.home-generation .generation-value{font-size:50px;font-weight:700;color:#1d4c3a;margin-top:8px}.home-generation .generation-value small{font-size:18px;color:var(--color-accent);font-weight:500}.home-generation .chart{height:160px;margin-top:4px}.home-generation .chart .bar{fill:#a3bc94}.home-generation .chart .gridline{stroke-dasharray:none;stroke:#edf0ed}.home-generation .chart text{font-size:11px}.home-generation .data-alternative{margin-top:4px}.home-generation .data-alternative summary{font-size:12px}.home-generation>.inline-note{font-size:11px;margin-top:2px}
.home-secondary{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:20px;margin-top:20px}.home-secondary>.maintenance-preview{margin:0}.home-notices .notice-list{margin-top:8px}.home-notices .notice-row:last-child{border-bottom:0}.notice-row{padding:16px 0;grid-template-columns:8px 86px minmax(0,1fr) 16px;gap:10px}.notice-date{font-size:12px}.notice-copy{font-size:14px}.notice-category{font-size:11px}.notice-dot{width:6px;height:6px}.notice-list.large .notice-copy{font-size:15px}.home-secondary .calendar-date p{font-size:14px}.home-secondary .calendar-date small,.home-secondary .maintenance-preview>p{font-size:13px}.home-secondary .date-tile{width:56px}.home-secondary .date-tile span{font-size:12px}.home-secondary .date-tile strong{font-size:28px}.home-secondary .maintenance-preview h2{margin-bottom:14px}.home-secondary .maintenance-preview .text-link{margin-top:6px}
.home-support{background:#f0f6ed;border-radius:8px;padding:22px 24px;display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:20px}.home-support>div{display:flex;align-items:center;gap:18px}.home-support>div>.icon{width:34px;height:34px;color:var(--color-accent)}.home-support p{font-size:15px}.home-support p span{display:block;font-size:12px;color:var(--color-muted);margin-top:3px}.home-support .btn{flex-shrink:0}
.footer{font-size:11px;margin-top:30px;padding-top:20px}.footer-links{gap:20px}
/* All existing routes inherit the same reading and input sizes. */
.form-field{font-size:14px}.form-field input,.form-field select,.form-field textarea,input,select,textarea{font-size:15px;min-height:44px}.inline-note{font-size:13px}.description-list{font-size:14px}.description-list dt{font-size:13px}.toolbar{padding:20px;background:#f8faf7;border:1px solid var(--color-rule);border-radius:8px;margin-bottom:14px}.toolbar-left{gap:12px}.toolbar>.toolbar-left{width:100%}.toolbar .search-field{flex:1;min-width:200px}.toolbar .search-field input{width:100%;min-height:48px;font-size:14px}.toolbar select{min-height:48px;min-width:168px;font-size:14px}.filter-summary{font-size:13px}.active-filters{margin:4px 0 14px}.table-wrap{border:1px solid var(--color-rule);border-radius:8px}table{font-size:14px}th{font-size:12px;font-weight:600;background:#f3f6f2;color:#4e6257}td,th{padding:17px 16px}td small{font-size:12px}td strong{font-size:14px;font-weight:600}.table-footer{font-size:12px;padding-top:16px}.record-row:hover{background:#f7faf5}.data-alternative table{font-size:12px}.data-alternative .table-wrap{border-radius:4px}.chat-list button{font-size:14px}.message{font-size:14px}.chat-form textarea{font-size:16px}.faq-group summary{font-size:15px}.faq-group details p{font-size:14px}dialog{border-radius:12px}dialog h2{font-size:23px}
.admin-view .sidebar{padding-top:24px}.admin-view .portal-label{margin:12px 12px 16px}.admin-view .nav-link{font-size:13px;min-height:43px;padding:8px 12px}.admin-view .nav-group-label{margin-top:18px}.admin-view .nav-group-label:first-child{margin-top:0}.admin-view .sidebar-help{padding-top:20px}.admin-view .main-content{max-width:1500px;padding-top:32px}
@media(min-width:769px) and (max-width:1100px){.sidebar{width:214px;padding-inline:16px}.workspace{margin-left:214px}.topbar{padding-inline:24px}.breadcrumbs{max-width:220px;overflow:hidden;text-overflow:ellipsis}.top-actions{gap:8px}.top-actions .account-button>span:not(.avatar){display:none}.main-content{padding-inline:24px}.demo-context{padding-inline:24px}.home-hero img{width:26%}.home-hero h1{font-size:30px}.home-hero p{font-size:13px}.home-overview{gap:14px}.home-bill,.home-generation,.home-notices,.home-secondary>.maintenance-preview{padding:20px}.home-overview h2{font-size:16px}.home-overview .section-top{flex-wrap:wrap;gap:0}.home-secondary{grid-template-columns:1fr}.home-support{flex-wrap:wrap}.nav-link{font-size:13px}}
@media(max-width:768px){.sidebar{width:260px;padding:24px 20px}.workspace{margin-left:0}.topbar{height:68px;padding:0 16px}.topbar .top-actions{gap:8px}.topbar .portal-identity{display:none}.topbar .account-button>span:not(.avatar){display:none}.topbar .logout-button{font-size:12px}.breadcrumbs{display:none}.demo-context{padding:12px 20px 0;font-size:11px}.main-content,.admin-view .main-content{padding:20px 20px calc(max(var(--mobile-bottom-occupied,0px),calc(var(--mobile-tabbar-height) + var(--safe-area-bottom))) + 24px)}.home-hero{min-height:0;margin-bottom:24px;gap:8px}.home-hero h1{font-size:28px}.home-hero p{font-size:13px;line-height:1.85}.home-hero img{width:26%;max-width:200px}.home-overview{grid-template-columns:1fr;gap:16px}.home-bill,.home-generation,.home-notices,.home-secondary>.maintenance-preview{padding:22px}.home-overview h2,.home-secondary h2{font-size:17px}.home-bill .bill-value{font-size:50px}.home-bill .bill-value small{font-size:24px}.home-generation .generation-value{font-size:46px}.home-generation .chart{height:180px}.home-secondary{grid-template-columns:1fr;gap:16px;margin-top:16px}.home-support{align-items:flex-start;flex-direction:column;padding:22px;margin-top:16px;gap:16px}.home-support .btn{width:100%}.home-support p{font-size:14px}.home-bill-details{font-size:14px}.notice-copy{font-size:14px}.notice-date{font-size:11px}.notice-category{font-size:11px}.notice-row{grid-template-columns:8px 78px minmax(0,1fr) 14px;gap:8px}.home-notices .section-top{flex-wrap:wrap;gap:0}.btn,.btn.small,.page-heading .btn{font-size:14px;min-height:44px}.text-link{font-size:13px}.status{font-size:12px}.page-heading{align-items:flex-start;gap:16px}.page-heading h1{font-size:26px}.page-heading p{font-size:13px}.page-heading>.toolbar-left{width:100%}.toolbar{padding:16px}.toolbar .toolbar-left{gap:12px}.toolbar .search-field{min-width:0;flex-basis:100%}.toolbar select{width:100%;min-width:0}.filter-summary{font-size:12px}.mobile-records .record-row{padding:18px}.mobile-records .mobile-cell-label{font-size:12px}.mobile-records td{font-size:14px}.mobile-records td strong{font-size:15px}.mobile-records td small{font-size:12px}.mobile-bottom a{font-size:11px}.footer{font-size:11px;gap:16px}.form-field input,.form-field select,.form-field textarea{font-size:16px}.description-list>div{grid-template-columns:100px minmax(0,1fr)}.facility-line,.reading-label{font-size:12px}.reading-aside{font-size:11px}.graph-date{font-size:12px}.segmented button{font-size:13px}.energy-totals small{font-size:11px}.energy-totals strong span{font-size:11px}.chart-legend{font-size:12px}.support-aside p{font-size:13px}.auth-login-help{font-size:13px}}
@media(max-width:480px){.home-hero{position:relative;display:block}.home-hero h1{font-size:26px;letter-spacing:0}.home-hero p{font-size:12px;max-width:28ch}.home-hero img{position:absolute;right:0;bottom:0;width:85px;opacity:.85}.home-hero>div{position:relative;z-index:1}.home-bill,.home-generation,.home-notices,.home-secondary>.maintenance-preview{padding:18px}.home-overview h2,.home-secondary h2{font-size:16px}.home-bill .bill-value{font-size:46px}.home-bill-details>div{grid-template-columns:110px minmax(0,1fr)}.home-overview .section-top{flex-wrap:wrap;gap:0}.bill-main{margin-top:18px}.bill-main>.btn{font-size:13px;padding-inline:12px}.home-period{font-size:11px}.notice-row{grid-template-columns:8px minmax(0,1fr) 14px;gap:4px 8px}.notice-date{grid-column:2}.notice-copy{grid-column:2}.notice-row>.icon{grid-column:3;grid-row:1 / span 2;align-self:center}.notice-dot{grid-row:1 / span 2}.notice-category{display:none}.home-support p span{font-size:12px}.home-support>div{gap:12px}.current-bill .bill-value{font-size:38px}.top-actions>.icon-button{display:none}.footer-links{gap:16px}}
@media(max-width:360px){.main-content,.admin-view .main-content{padding-inline:16px}.demo-context{padding-inline:16px}.home-hero h1{font-size:23px}.home-hero img{display:none}.home-bill .bill-value{font-size:44px}.bill-main>.btn{width:100%}.home-bill-details>div{grid-template-columns:100px minmax(0,1fr);gap:6px}.topbar{padding-inline:12px}.mobile-bottom a{font-size:10px}}
/* Balance the two summary surfaces without shrinking text or tap targets. */
@media(min-width:769px){.home-hero{min-height:145px;margin-bottom:24px}.home-generation .generation-value{line-height:1.2;margin:4px 0}.home-generation .chart{height:125px}.home-generation .section-top .text-link{padding:0}.home-generation .home-period{margin-top:4px}.home-generation .inline-note{line-height:1.5}.home-bill-details{gap:10px;margin-top:16px;padding-top:16px}.home-bill>.text-link{margin-top:4px}.home-bill .bill-main{margin-top:16px}.home-overview{align-items:stretch}}
.admin-view .sidebar{background:var(--color-sidebar)}.admin-view .nav-link.active{background:#dce9d8;color:#173f30}
@media(max-width:768px){.sidebar:not(.open){visibility:hidden}.sidebar.open{visibility:visible}}
.account-button{min-height:44px;min-width:44px;justify-content:center}.admin-view .nav-link{min-height:44px}

/* Cross-portal work queue, customer record and submission review. */
.work-queue{background:#fff;border:1px solid var(--border,#dce5e0);border-radius:16px;padding:24px;margin-bottom:24px}.work-queue h2{font-size:20px;margin:0 0 8px}.queue-counts{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.work-queue summary{cursor:pointer;padding:12px 0;font-weight:600}.queue-items article{display:flex;align-items:center;gap:12px;padding:14px 0;border-top:1px solid #e5ebe7}.queue-items article>div{flex:1;min-width:0}.queue-items small,.dossier-section small,.inquiry-receipt small{display:block;color:#62726a;margin-top:6px;line-height:1.7}.dossier-section{border-top:1px solid #e5ebe7;padding:16px 0}.dossier-section p{margin:12px 0}.submission-review dd{white-space:pre-wrap;overflow-wrap:anywhere}.inquiry-receipt{padding:14px 0;border-top:1px solid #e5ebe7}.inquiry-receipt>.status{margin-left:12px}.queue-items strong,.dossier-section strong{overflow-wrap:anywhere}@media(max-width:600px){.work-queue{padding:16px}.queue-items article{flex-wrap:wrap}.queue-items article>div{flex-basis:100%}.queue-counts .btn{flex:1 1 100%}.submission-review .description-list>div{display:block}}
.form-grid[hidden]{display:none!important}
