:root{color-scheme:light;--bg:#f7f4ef;--panel:#fffefd;--ink:#30292b;--muted:#786b70;--line:#e7dedb;--brand:#7a293e;--soft:#f5e9ec;--green:#31604a;--green-soft:#edf4ee;--amber:#78551a;--amber-soft:#fff3da;--shadow:0 5px 24px #492b3507;font:15px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg)}
*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;min-width:320px}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.55}button,a,summary,input,textarea{outline-offset:4px}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--brand)}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.25}h2{font-size:23px;font-weight:650}h3{font-size:17px;font-weight:650}button{touch-action:manipulation}.skip{position:absolute;left:12px;top:-60px;background:var(--panel);padding:12px;z-index:5}.skip:focus{top:12px}.site-header{border-bottom:1px solid var(--line);background:var(--panel)}.header-inner{max-width:1120px;margin:auto;padding:18px 26px;display:flex;justify-content:space-between;gap:18px;align-items:center}.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:46px;height:46px;background:var(--brand);color:white;display:grid;place-items:center;border-radius:50%;font:28px Georgia,serif}.brand strong{display:block;color:var(--brand);font-size:15px;letter-spacing:.5px}.brand span:not(.brand-mark){display:block;color:var(--muted);font-size:12px;margin-top:2px}.private-badge{font-size:12px;color:#745839;background:#f4ede3;padding:6px 10px;border-radius:20px;white-space:nowrap}main{max-width:1120px;margin:auto;padding:30px 26px 0}.page-title{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:25px}.eyebrow{text-transform:uppercase;letter-spacing:1.1px;font-size:10px;font-weight:650;color:var(--muted);margin-bottom:7px}h1{font-size:38px;font-weight:500;letter-spacing:-1.2px}h1 span{font-weight:650}.muted{color:var(--muted);font-size:13px;line-height:1.55}.tabs{display:flex;gap:6px;padding:5px;background:#eee8e3;border:1px solid #e9dfd9;border-radius:13px;margin-bottom:28px}.tabs button{flex:1 1 auto;min-height:45px;padding:10px 13px;background:transparent;border:1px solid transparent;border-radius:9px;color:var(--muted);font-size:14px;font-weight:550}.tabs button[aria-selected=true]{color:var(--brand);background:var(--panel);box-shadow:0 2px 8px #3c25310a}.tabs button:hover{color:var(--brand)}.screen{min-width:0}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:20px}.section-heading p{margin-top:7px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.card{background:var(--panel);border:1px solid var(--line);border-radius:17px;padding:24px;box-shadow:var(--shadow);min-width:0}.card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:22px}.card-head h2,.card-head h3{font-size:18px}.tag{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:600;padding:5px 9px;border-radius:20px;background:#f3eeeb;color:var(--muted);white-space:normal}.tag.green{color:var(--green);background:var(--green-soft)}.tag.amber{color:var(--amber);background:var(--amber-soft)}.tag.brand{color:var(--brand);background:var(--soft)}.metric{font-size:49px;letter-spacing:-1.8px;line-height:1.15;font-weight:650;font-variant-numeric:tabular-nums;color:var(--brand)}.metric small{font-size:19px;font-weight:450;letter-spacing:0;color:var(--muted);margin-left:6px}.metric-caption{color:var(--muted);font-size:13px;margin-top:7px}.metric-support{display:flex;gap:20px;flex-wrap:wrap;margin-top:22px;padding-top:16px;border-top:1px solid var(--line);font-size:13px}.metric-support strong{font-weight:650}.metric-support span{color:var(--muted);margin-right:5px}.card-actions{display:flex;gap:12px;margin-top:22px}.button{min-height:44px;padding:10px 14px;border:1px solid var(--line);border-radius:9px;background:var(--panel);color:var(--brand);font-size:13px;font-weight:600;white-space:normal}.button.primary{background:var(--brand);border-color:var(--brand);color:white}.button:hover:not(:disabled){border-color:#b78f9a}.primary:hover:not(:disabled){background:#632033}.link-button{border:0;padding:8px 0;min-height:44px;background:transparent;color:var(--brand);font-size:13px;font-weight:600;text-align:left}.link-button::after{content:' →';margin-left:4px}.wide-card{margin-top:18px}.payment-mini{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:15px 0;border-top:1px solid var(--line)}.payment-mini:first-of-type{border-top:0}.payment-mini strong{font-size:16px}.payment-mini small{display:block;color:var(--muted);font-size:12px;margin-top:3px}.payment-amount{text-align:right}.payment-amount strong{font-variant-numeric:tabular-nums;color:var(--brand)}.quiet-strip{display:flex;justify-content:space-between;gap:16px;border-top:1px solid var(--line);padding-top:16px;margin-top:6px;font-size:13px;color:var(--muted)}.quiet-strip strong{color:var(--ink);font-weight:550}.info{margin-top:17px;color:var(--muted);font-size:13px}.info summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:8px;list-style:none;font-weight:500}.info summary::-webkit-details-marker{display:none}.info summary::before{content:'i';display:grid;place-items:center;width:20px;height:20px;flex:none;border:1px solid #d4bec5;border-radius:50%;font:600 12px Georgia,serif;color:var(--brand)}.info[open] summary{color:var(--brand)}.info-content{padding:12px 14px;background:#faf5f3;border-radius:9px;line-height:1.65;overflow-wrap:anywhere}.info-content p+p{margin-top:8px}.source{font-size:12px;color:var(--muted);line-height:1.6}.resource-switch{display:flex;padding:4px;border:1px solid var(--line);border-radius:11px;background:#f0eae5;flex-shrink:0}.resource-switch button{min-height:40px;padding:8px 12px;border:0;border-radius:8px;background:transparent;color:var(--muted);font-size:13px}.resource-switch button[aria-pressed=true]{background:var(--panel);color:var(--brand);font-weight:650}.reading-top{display:flex;justify-content:space-between;gap:20px;align-items:start;margin-bottom:20px}.meter-label{color:var(--muted);font-size:12px;margin-top:7px}.reading-table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}.reading-table th{font-size:12px;font-weight:500;color:var(--muted);padding:12px 10px;border-bottom:1px solid var(--line);text-align:right}.reading-table td{padding:14px 10px;border-bottom:1px solid #f0e9e5;text-align:right;font-size:16px}.reading-table th:first-child,.reading-table td:first-child{text-align:left;padding-left:0}.reading-table th:last-child,.reading-table td:last-child{padding-right:0}.reading-table td:last-child{color:var(--brand);font-weight:650}.table-note{font-size:12px;color:var(--muted);margin-top:12px}.table-wrap{overflow-x:auto}.history-table td,.history-table th{font-size:12px;white-space:nowrap;padding:11px 10px}.reading-foot{display:flex;gap:12px;justify-content:space-between;margin-top:18px;flex-wrap:wrap;font-size:13px;color:var(--muted)}.water-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px}.water-pair>div+div{border-left:1px solid var(--line);padding-left:24px}.water-pair .metric{font-size:38px}.difference{margin-top:23px;border-radius:10px;padding:14px 16px;background:var(--soft);display:flex;gap:16px;align-items:center}.difference strong{font-size:25px;color:var(--brand);white-space:nowrap}.difference span{font-size:12px;color:var(--muted)}.pending{margin-top:16px;padding:13px 16px;border:1px solid #ecdcb9;background:#fff8e9;border-radius:10px;color:var(--amber);font-size:13px}.timeline{list-style:none;margin:0;padding:0}.timeline li{padding:12px 0;border-bottom:1px solid var(--line)}.timeline li:last-child{border-bottom:0}.timeline strong{font-size:15px}.timeline p{font-size:12px;color:var(--muted);margin-top:4px}.draft-card{margin-top:18px}.draft-card>details>summary{min-height:44px;cursor:pointer;font-size:17px;font-weight:650;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:15px}.draft-card>details>summary::-webkit-details-marker{display:none}.summary-arrow{font-size:22px;color:var(--brand)}.draft-scope{font-size:13px;color:var(--muted);margin:14px 0 8px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:22px}.form-grid label{font-size:13px;display:flex;flex-direction:column;gap:7px}.full{grid-column:1/-1}.optional{font-size:12px;color:var(--muted)}input,textarea{width:100%;min-width:0;padding:11px 12px;border:1px solid #dcd0cf;border-radius:9px;color:var(--ink);background:var(--panel);font-size:16px;min-height:46px}textarea{resize:vertical}.draft-delta{margin-top:16px;background:#f7f0ed;border-radius:9px;padding:12px 14px;color:var(--muted);font-size:13px}.draft-delta strong{color:var(--brand)}.form-message{font-size:13px;margin:16px 0 10px;color:var(--green);white-space:pre-line}.form-message.error{color:#a22a35}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.conflict{padding:17px;border:1px solid #dec592;border-radius:11px;background:#fff7e7;margin-top:18px}.conflict p{font-size:13px;margin-top:8px;overflow-wrap:anywhere}.invoice-card+.invoice-card{margin-top:18px}.invoice-top{display:flex;justify-content:space-between;gap:16px;margin-bottom:22px}.invoice-top p{margin-top:5px}.invoice-sum{font-size:31px;font-weight:650;color:var(--brand);letter-spacing:-.7px;font-variant-numeric:tabular-nums}.invoice-flow{display:grid;grid-template-columns:1fr auto 1fr;gap:16px;align-items:center;margin-top:19px;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.invoice-flow p{font-size:12px;color:var(--muted);margin-top:5px}.flow-arrow{color:#c9b4bc;font-size:25px}.line-item{display:flex;justify-content:space-between;gap:15px;padding:9px 0;border-bottom:1px solid var(--line);font-size:13px}.line-item strong{white-space:nowrap;font-weight:550}.doc-list{display:grid;gap:12px}.doc-card{box-shadow:none;padding:18px 21px}.doc-card>summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:14px;min-height:44px;align-items:center}.doc-card>summary::-webkit-details-marker{display:none}.doc-card h3{font-size:16px}.doc-card .doc-date{font-size:12px;color:var(--muted);text-align:right}.doc-card .doc-kind{font-size:11px;color:var(--brand);margin-bottom:5px}.doc-body{border-top:1px solid var(--line);margin-top:14px;padding-top:16px;font-size:14px;line-height:1.65}.doc-body .source{margin-top:12px}.load-status{padding:18px 0;color:var(--muted)}.load-status.error{color:#a22a35}footer{display:flex;justify-content:space-between;gap:18px;border-top:1px solid var(--line);padding:20px 0 26px;margin-top:36px;color:var(--muted);font-size:11px;line-height:1.55}footer span:last-child{max-width:350px;text-align:right}
@media(max-width:700px){main{padding:24px 16px 0}.header-inner{padding:15px 16px}.grid{gap:14px}.card{padding:20px}.section-heading{align-items:start;flex-direction:column}.resource-switch{width:100%}.resource-switch button{flex:1}.metric{font-size:42px}.card-head{align-items:start}.tabs{margin-bottom:22px}.tabs button{font-size:13px;padding:10px 8px}.invoice-sum{font-size:28px}.brand strong{font-size:13px}}
@media(max-width:520px){.header-inner{gap:10px}.brand{gap:9px}.brand-mark{width:38px;height:38px;font-size:24px}.private-badge{font-size:10px;padding:5px 7px}.brand span:not(.brand-mark){font-size:11px}.page-title{align-items:start;gap:10px;margin-bottom:22px}h1{font-size:33px}.page-title>.muted{max-width:116px;text-align:right;font-size:11px;padding-top:5px}.tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px}.tabs button{font-size:13px;min-height:42px}.grid{grid-template-columns:1fr}.card{padding:19px;border-radius:14px}.card-head{margin-bottom:18px}.metric{font-size:46px}.metric-support{margin-top:18px}.wide-card{margin-top:14px}.payment-mini{gap:10px}.payment-mini strong{font-size:14px}.quiet-strip{flex-direction:column;gap:3px}.reading-top{gap:12px;flex-wrap:wrap}.reading-table th{padding:11px 6px;font-size:10px}.reading-table td{padding:13px 6px;font-size:14px}.reading-table .empty-register{font-size:12px}.water-pair{gap:14px}.water-pair>div+div{padding-left:15px}.water-pair .metric{font-size:34px}.water-pair .metric small{font-size:15px;margin-left:3px}.water-pair .metric-caption{font-size:11px}.difference{align-items:start;gap:12px;padding:12px}.difference span{font-size:11px}.form-grid{grid-template-columns:1fr}.full{grid-column:auto}.actions{flex-direction:column}.actions .button{width:100%}.invoice-top{gap:10px}.invoice-top .tag{font-size:10px}.invoice-sum{font-size:28px}.invoice-flow{gap:10px;grid-template-columns:1fr auto 1fr;font-size:13px}.invoice-flow p{font-size:11px}.line-item{font-size:12px}.doc-card{padding:16px}.doc-card>summary{align-items:start}.doc-card h3{font-size:14px}.doc-card .doc-date{max-width:95px;font-size:11px;flex-shrink:0}.doc-body{font-size:13px}footer{display:block;margin-top:28px}footer span{display:block}footer span:last-child{text-align:left;margin-top:6px;max-width:none}}
@media(prefers-reduced-motion:no-preference){.button,.tabs button{transition:background .15s,border-color .15s}}

.billing-flow-card{margin-bottom:18px;padding-top:12px;padding-bottom:12px}.billing-flow-card>.info{margin-top:0}.billing-flow-party{border-top:1px solid var(--line);padding-top:14px;margin-top:14px}.billing-flow-title{font-size:16px;margin:12px 0}.billing-flow-party>summary{font-size:14px;color:var(--ink);font-weight:600}.billing-flow-party>summary::before{content:"+";font-family:inherit}.billing-flow-party[open]>summary::before{content:"−"}.billing-flow-party[open]>summary{margin-bottom:8px}.billing-flow-rule{border-top:1px solid var(--line);padding-top:14px;margin-top:14px}
.bills-current{margin-bottom:28px}.bills-paid{color:var(--green);font-weight:600;margin:14px 0 8px}.bill-history{margin-bottom:24px}.bill-filters{display:grid;grid-template-columns:1fr 1fr 1.5fr;gap:12px;margin-bottom:14px}.bill-filters label{display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--muted)}.bill-filters select{font:inherit;font-size:15px;min-height:46px;padding:10px;border:1px solid var(--line);border-radius:9px;min-width:0;max-width:100%;color:var(--ink);background:var(--panel)}.bill-filters select:focus-visible{outline:3px solid var(--brand);outline-offset:3px}#bill-history-count{margin-bottom:10px}.invoice-history{padding:0}.invoice-history>summary{display:grid;grid-template-columns:minmax(0,1fr) auto 18px;gap:18px;align-items:center;cursor:pointer;list-style:none;padding:20px 24px}.invoice-history>summary::-webkit-details-marker{display:none}.invoice-history h4{font-size:16px;margin:0 0 5px;overflow-wrap:anywhere}.invoice-history-total{display:flex;flex-direction:column;align-items:flex-end;gap:7px}.invoice-history-total>strong{font-size:18px;color:var(--brand);font-variant-numeric:tabular-nums;white-space:nowrap}.invoice-chevron{color:var(--brand);font-size:20px}.invoice-history[open] .invoice-chevron{transform:rotate(180deg)}.invoice-history-body{padding:0 24px 20px}.invoice-history-body .invoice-flow{margin-top:0}.bill-history-scope{margin-top:12px}
@media(max-width:520px){.bill-filters{grid-template-columns:1fr 1fr}.bill-filters label:last-child{grid-column:1/-1}.invoice-history>summary{padding:16px;gap:10px;grid-template-columns:minmax(0,1fr) auto 14px}.invoice-history-total>strong{font-size:16px}.invoice-history h4{font-size:14px}.invoice-history-body{padding:0 16px 16px}}

/* House dashboard: everyday actions, then details. */
.house-page .header-help{color:var(--brand);font-size:13px;text-decoration:none;min-height:44px;display:flex;align-items:center;white-space:nowrap}.house-page .header-help:hover{text-decoration:underline}.house-page main{max-width:1120px;padding-top:28px}.house-page .page-title{align-items:center;margin-bottom:24px}.house-page h1{font-size:36px}.house-page .tabs{margin-bottom:24px}.house-page .home-focus{display:flex;justify-content:space-between;gap:28px;align-items:center;border-left:4px solid var(--brand);padding:25px 28px}.house-page .home-focus h2{font-size:23px;letter-spacing:-.3px}.house-page .home-focus .eyebrow{margin-bottom:9px}.house-page .focus-provider{font-size:14px;color:var(--muted);margin-top:9px}.house-page .home-focus-action{text-align:right;flex:none}.house-page .focus-amount{font-size:32px;line-height:1.2;font-weight:650;letter-spacing:-.8px;color:var(--brand);font-variant-numeric:tabular-nums;margin-bottom:12px}.house-page .home-section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:14px;margin:28px 0 13px}.house-page .home-section-heading h2{font-size:18px}.house-page .home-section-heading>span{font-size:12px;color:var(--muted)}.house-page .home-readings .card{padding:21px 24px}.house-page .home-readings .card-head{margin-bottom:18px;min-height:30px}.house-page .home-readings .card-head h3{display:flex;align-items:center;gap:7px;font-size:17px}.house-page .home-readings .metric{font-size:37px;letter-spacing:-1px}.house-page .home-readings .metric small{font-size:17px}.house-page .home-readings .card-actions{margin-top:13px}.house-page .utility-icon{color:var(--brand);background:var(--soft);border-radius:8px;width:30px;height:30px;display:inline-grid;place-items:center;font-size:22px}.house-page .water-icon{background:#edf3f6;color:#386474}.house-page .home-shortcuts{display:grid;grid-template-columns:1fr 1fr;gap:18px}.house-page .home-shortcut{display:flex;align-items:center;gap:14px;text-align:left;padding:20px 22px;background:var(--panel);border:1px solid var(--line);border-radius:14px;text-decoration:none;color:var(--ink);font:inherit}.house-page .home-shortcut:hover{border-color:#b78f9a}.house-page .home-shortcut strong{font-size:15px;display:block;font-weight:600}.house-page .home-shortcut small{font-size:12px;color:var(--muted);display:block;margin-top:3px}.house-page .shortcut-icon{font-size:28px;color:var(--brand);flex:none}.house-page .shortcut-arrow{color:var(--brand);margin-left:auto}.house-page footer{align-items:start;margin-top:32px}.house-page .house-data{max-width:430px;font-size:12px;color:var(--muted)}.house-page .house-data summary{cursor:pointer;min-height:30px;text-align:right}.house-page .house-data p{margin-top:8px}.house-page .info-content{font-size:13px}.house-page #panel-readings .info{margin-top:10px}
@media(max-width:600px){.house-page .home-focus{align-items:start;padding:22px;gap:20px;flex-direction:column}.house-page .home-focus-action{display:flex;justify-content:space-between;align-items:center;gap:16px;width:100%;text-align:left}.house-page .focus-amount{font-size:28px;margin:0}.house-page .home-focus h2{font-size:21px}.house-page .home-shortcuts{grid-template-columns:1fr;gap:10px}.house-page .home-section-heading>span{max-width:135px;text-align:right;font-size:11px}.house-page h1{font-size:30px}.house-page .header-help{font-size:12px}.house-page .private-badge{font-size:10px}.house-page .home-shortcut{padding:16px 19px}.house-page footer{display:flex}.house-page .house-data{max-width:230px}.house-page .home-readings .card{padding:20px}.house-page .tabs button{font-size:13px}}
@media(max-width:360px){.house-page .home-focus-action{align-items:start;flex-direction:column}.house-page .home-focus-action .button{width:100%}.house-page .page-title{gap:8px}.house-page h1{font-size:28px}}
.house-page .home-readings .card{position:relative}.house-page .home-readings .card:hover,.house-page .home-readings .card:focus-within{border-color:#b78f9a;background:#fffaf9}.house-page .home-readings .link-button::before{content:"";position:absolute;inset:0;border-radius:17px}.house-page .home-readings .link-button:focus-visible{outline:none}.house-page .home-readings .link-button:focus-visible::before{outline:3px solid var(--brand);outline-offset:3px}.house-page .utility-icon svg{width:20px;height:20px}.house-page .home-focus .button,.house-page .home-readings .link-button{font-size:15px}.house-page .home-shortcut strong{font-size:17px}.house-page .home-shortcut small,.house-page .home-readings .metric-caption{font-size:14px}.house-page .home-focus .eyebrow{font-size:11px}

/* Unified product surfaces, matching the approved home dashboard. */
.product-page .page-title{align-items:center;gap:18px;margin-bottom:24px}
.product-page .page-title h1{font-size:34px;font-weight:600;line-height:1.16;letter-spacing:-1px;text-wrap:balance}
.product-page .page-title .eyebrow{font-size:11px;letter-spacing:.13em;margin-bottom:10px}
.product-page .header-inner{gap:20px;min-height:88px}
.product-page .header-inner a.button{font-size:14px;text-decoration:none;white-space:nowrap}
.product-page .card{border-radius:17px;box-shadow:var(--shadow)}
.product-page a.button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}
.product-page .button{font-size:14px;min-height:44px;line-height:1.4}
.product-page .button.primary:hover{background:#652034}
.product-page a:focus-visible,.product-page button:focus-visible,.product-page summary:focus-visible,.product-page select:focus-visible{outline:3px solid #b57386;outline-offset:3px}
.product-page .tabs{gap:6px;padding:5px;background:#eee8e3}
.product-page .tabs button{font-size:14px;min-height:46px}
.product-page .tag{line-height:1.4;max-width:100%}
.product-page .info-content{line-height:1.6}
.product-page input:not([type=checkbox]):not([type=radio]),.product-page select,.product-page textarea{font-family:inherit;font-size:16px;border-radius:9px}
.product-page .load-status:empty,.product-page [role=status]:empty{display:none}
.product-page .release-link,.product-page .home-shortcut{transition:border-color .15s,box-shadow .15s}
.product-page .release-link:hover,.product-page .home-shortcut:hover{border-color:#b98a96;box-shadow:0 5px 18px #492b350c}
@media(max-width:600px){
 .product-page .header-inner{min-height:76px;padding:14px 16px;gap:12px;flex-wrap:wrap}
 .product-page .header-inner .brand{min-width:0}
 .product-page .header-inner .brand-mark{width:40px;height:40px;flex-shrink:0}
 .product-page .header-inner a.button{font-size:13px}
 .product-page .page-title{align-items:flex-start;gap:12px;flex-wrap:wrap}
 .product-page .page-title h1{font-size:28px;letter-spacing:-.7px}
 .product-page .page-title .eyebrow{font-size:10px}
 .product-page .card{border-radius:14px}
 .product-page .tabs button{font-size:14px;min-height:46px}
 .product-page .button{min-height:46px}
}
@media(prefers-reduced-motion:reduce){.product-page .release-link,.product-page .home-shortcut{transition:none}}

.product-page .header-inner>.brand{margin-right:auto}
