.bill-wizard-section{padding:64px 5%;background:#eef5f1}
.bill-wizard-shell{width:min(1120px,100%);margin:0 auto}
.bill-wizard-heading{max-width:760px;margin-bottom:28px}
.bill-wizard-heading h2{margin:8px 0 12px;color:#10291d;font:800 clamp(2rem,4vw,3.5rem)/1.06 'Manrope',Arial,sans-serif;letter-spacing:0}
.bill-wizard-heading p{margin:0;color:#53675b;font-size:1.02rem;line-height:1.65}
.bill-wizard{overflow:hidden;border:1px solid rgba(10,61,98,.16);border-radius:8px;background:#fff;box-shadow:0 18px 48px rgba(18,56,38,.09)}
.bill-wizard-progress{padding:20px 24px 18px;background:#0a3d62;color:#fff}
.bill-wizard-progress-top{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:12px}
.bill-wizard-progress-top strong{font:800 .9rem 'Manrope',Arial,sans-serif}
.bill-wizard-progress-top span{color:rgba(255,255,255,.76);font-size:.78rem}
.bill-progress-track{height:7px;overflow:hidden;border-radius:5px;background:rgba(255,255,255,.2)}
.bill-progress-value{width:25%;height:100%;border-radius:5px;background:#59d39b;transition:width .25s ease}
.bill-wizard-body{padding:30px}
.bill-step[hidden]{display:none}
.bill-step-head{max-width:760px;margin-bottom:24px}
.bill-step-kicker{display:block;margin-bottom:7px;color:#007f52;font:800 .75rem 'Manrope',Arial,sans-serif;text-transform:uppercase}
.bill-step-head h3{margin:0 0 8px;color:#10291d;font:800 clamp(1.55rem,3vw,2.35rem)/1.12 'Manrope',Arial,sans-serif}
.bill-step-head p{margin:0;color:#5c6d63;line-height:1.6}
.bill-entry-tabs{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:22px}
.bill-entry-tabs button{min-height:50px;padding:10px 14px;border:1px solid #cbd9d0;border-radius:6px;background:#fff;color:#173d2a;font-weight:800;cursor:pointer}
.bill-entry-tabs button.is-active{border-color:#00a86b;background:#e9f8f1;color:#075d3e;box-shadow:inset 0 0 0 1px #00a86b}
.bill-entry-panel[hidden]{display:none}
.bill-upload-zone{display:grid;min-height:210px;place-items:center;padding:24px;border:2px dashed #9eb8a8;border-radius:8px;background:#f8fbf8;text-align:center}
.bill-upload-zone.is-dragging{border-color:#00a86b;background:#e9f8f1}
.bill-upload-zone input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.bill-upload-zone label{cursor:pointer}
.bill-upload-zone strong,.bill-upload-zone span{display:block}
.bill-upload-zone strong{color:#0a3d62;font:800 1.08rem 'Manrope',Arial,sans-serif}
.bill-upload-zone span{margin-top:7px;color:#65766c;font-size:.87rem;line-height:1.5}
.bill-upload-zone .btn-outline{display:inline-flex;margin-top:16px}
.bill-preview{display:grid;grid-template-columns:140px minmax(0,1fr);gap:18px;align-items:center;margin-top:16px;padding:14px;border:1px solid #d4e0d7;border-radius:7px;background:#fff}
.bill-preview[hidden]{display:none}
.bill-preview img{width:140px;height:105px;object-fit:cover;border-radius:5px;background:#edf2ee}
.bill-preview strong,.bill-preview span{display:block}
.bill-preview span{margin-top:5px;color:#64746b;font-size:.84rem}
.bill-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.bill-field-grid label{display:flex;min-width:0;flex-direction:column;gap:7px;color:#234a36;font:800 .78rem 'Manrope',Arial,sans-serif}
.bill-field-grid input,.bill-field-grid select{width:100%;min-height:48px;padding:10px 12px;border:1px solid #c8d6cd;border-radius:6px;background:#fff;color:#173426;font:inherit}
.bill-field-grid input:focus,.bill-field-grid select:focus{border-color:#00a86b;outline:3px solid rgba(0,168,107,.16)}
.bill-field-grid small{color:#6b7a71;font-size:.72rem;font-weight:500;line-height:1.4}
.bill-field-full{grid-column:1/-1}
.bill-data-note{margin:18px 0 0;padding:13px 15px;border-left:4px solid #00a86b;background:#f0f8f3;color:#52675a;font-size:.84rem;line-height:1.55}
.bill-dashboard{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);gap:24px;align-items:stretch}
.bill-chart-card,.bill-findings,.bill-saving-card{padding:22px;border:1px solid #d6e1d9;border-radius:7px;background:#fff}
.bill-chart-wrap{position:relative;width:min(100%,330px);min-height:290px;margin:0 auto}
.bill-chart-wrap canvas{width:100%!important;height:290px!important}
.bill-chart-fallback{display:grid;gap:10px;margin-top:20px}
.bill-chart-fallback span{display:flex;justify-content:space-between;gap:16px;padding:10px;border-left:5px solid var(--bar-color,#0a3d62);background:#f4f7f5;color:#405448;font-size:.82rem}
.bill-findings h4,.bill-chart-card h4,.bill-saving-card h4{margin:0 0 15px;color:#0a3d62;font:800 1.2rem 'Manrope',Arial,sans-serif}
.bill-finding-list{display:grid;gap:11px}
.bill-finding{padding:14px 15px;border-left:4px solid #00a86b;border-radius:4px;background:#f1f8f4}
.bill-finding.is-check{border-left-color:#e8752a;background:#fff6ef}
.bill-finding strong,.bill-finding span{display:block}
.bill-finding strong{color:#183d2a;font-size:.9rem}
.bill-finding span{margin-top:4px;color:#607168;font-size:.82rem;line-height:1.5}
.bill-estimate-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:22px;align-items:start}
.bill-saving-value{display:flex;align-items:baseline;gap:9px;margin:14px 0;color:#007f52}
.bill-saving-value strong{font:900 clamp(2.2rem,6vw,4rem)/1 'Manrope',Arial,sans-serif}
.bill-saving-value span{font-weight:800}
.bill-saving-card p{color:#56695e;line-height:1.6}
.bill-disclaimer{padding:18px;border:1px solid rgba(232,117,42,.35);border-radius:7px;background:#fff8f2}
.bill-disclaimer strong{display:block;margin-bottom:7px;color:#9c4312}
.bill-disclaimer p{margin:0;color:#6a5b51;font-size:.88rem;line-height:1.6}
.bill-actions-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.bill-action-card{display:flex;min-height:190px;flex-direction:column;padding:21px;border:1px solid #d4e0d7;border-radius:7px;background:#fff}
.bill-action-card strong{color:#123e2a;font:800 1.12rem 'Manrope',Arial,sans-serif}
.bill-action-card p{margin:8px 0 20px;color:#5b6d62;font-size:.88rem;line-height:1.55}
.bill-action-card a{margin-top:auto;text-align:center}
.bill-wizard-nav{display:flex;justify-content:space-between;gap:12px;margin-top:28px;padding-top:20px;border-top:1px solid #dce5de}
.bill-wizard-nav button{min-height:46px}
.bill-wizard-nav [hidden]{display:none}
.bill-reset{border:0;background:transparent;color:#66776d;font-size:.78rem;text-decoration:underline;cursor:pointer}
.bill-inline-error{margin:14px 0 0;color:#a13f16;font-weight:700}
.bill-inline-error:empty{display:none}
@media(max-width:820px){.bill-dashboard,.bill-estimate-layout{grid-template-columns:1fr}.bill-actions-grid{grid-template-columns:1fr}.bill-chart-wrap{min-height:250px}.bill-chart-wrap canvas{height:250px!important}}
@media(max-width:640px){.bill-wizard-section{padding:48px 14px}.bill-wizard-body{padding:20px 16px}.bill-wizard-progress{padding:17px 16px}.bill-field-grid,.bill-entry-tabs{grid-template-columns:1fr}.bill-field-full{grid-column:auto}.bill-preview{grid-template-columns:90px minmax(0,1fr)}.bill-preview img{width:90px;height:90px}.bill-wizard-nav{align-items:stretch;flex-direction:column-reverse}.bill-wizard-nav button{width:100%}.bill-reset{order:-1}.bill-dashboard{gap:14px}}
@media(prefers-reduced-motion:reduce){.bill-progress-value{transition:none}}
