:root{--forest:#4a115c;--forest-deep:#30063c;--forest-soft:#662075;--green:#85126f;--green-2:#a32a8a;--green-3:#c47ab5;--lime:#d6a52b;--lime-bright:#f0c94f;--lime-soft:#faf0d3;--cream:#f8f3fa;--cream-2:#f0e7f2;--paper:#fffbfe;--ink:#2a1530;--ink-soft:#4a2d50;--muted:#786a7e;--muted-2:#9b8ea1;--line:#eadcea;--line-strong:#dccadd;--orange:#d8862e;--orange-2:#e7a052;--orange-soft:#fdf0e2;--blue:#3b8fbe;--blue-soft:#e8f4fa;--red:#cf5f4b;--radius-xl:30px;--radius-lg:22px;--radius:16px;--radius-sm:11px;--shadow-card:0 22px 48px -34px #3b0a4d73, 0 2px 6px #3b0a4d0a;--shadow-float:0 18px 38px -18px #28053280;--font-body:"IBM Plex Sans Thai", "Noto Sans Thai", "Segoe UI", system-ui, sans-serif;--font-display:"Sora", "IBM Plex Sans Thai", "Noto Sans Thai", system-ui, sans-serif}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{background:radial-gradient(900px 520px at 92% -12%, #e9cdee8c 0%, transparent 62%), radial-gradient(760px 420px at -8% 18%, #ebdaf080 0%, transparent 58%), var(--cream);min-width:320px;color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:15px;line-height:1.5}body::-webkit-scrollbar{width:11px}body::-webkit-scrollbar-track{background:var(--cream-2)}body::-webkit-scrollbar-thumb{border:3px solid var(--cream-2);background:#c8bfc8;border-radius:999px}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);letter-spacing:-.015em;margin:0;font-weight:600;line-height:1.25}p{margin:0}a{color:var(--green)}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}:focus-visible{outline:2px solid var(--green-2);outline-offset:2px}::selection{background:var(--lime);color:var(--forest)}.app-shell{align-items:stretch;min-height:100vh;display:flex}.app-main{flex-direction:column;flex:1;min-width:0;display:flex}.app-content{width:100%;max-width:1480px;margin:0 auto;padding:30px 34px 42px}.app-footer{color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:8px 18px;margin-top:auto;padding:4px 34px 30px;font-size:11px;display:flex}.page{flex-direction:column;gap:20px;animation:.4s both fadeUp;display:flex}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.sidebar{z-index:40;color:#fbf7fc;scrollbar-width:thin;scrollbar-color:#d6a52b38 transparent;background:radial-gradient(340px 260px at 16% 0,#f0c94f33 0%,#0000 70%),linear-gradient(168deg,#63306f 0%,#4c1f57 54%,#3a1243 100%);flex-direction:column;flex:0 0 268px;gap:16px;width:268px;height:100vh;padding:26px 17px 20px;display:flex;position:sticky;top:0;overflow:hidden auto}.sidebar::-webkit-scrollbar{width:6px}.sidebar::-webkit-scrollbar-thumb{background:#d6a52b33;border-radius:99px}.brand{align-items:center;gap:10px;padding:0 6px 4px;display:flex}.pea-logo{object-fit:contain;background:#fff;border-radius:13px;flex-shrink:0;padding:3px;display:block;box-shadow:0 9px 20px -12px #0000008c,inset 0 0 0 1px #74045f1f}.pea-logo-small{border-radius:9px;width:31px;height:31px;padding:2px}.pea-logo-medium{width:42px;height:42px}.pea-logo-large{border-radius:14px;width:48px;height:48px}.brand-symbol{width:42px;height:42px;color:var(--forest);background:linear-gradient(140deg,#e9c1e3 0%,#b96bac 100%);border-radius:14px;flex-shrink:0;place-items:center;display:grid;box-shadow:0 10px 22px -10px #74045fb3,inset 0 1px #ffffff8c}.brand-symbol.small{border-radius:10px;width:31px;height:31px}.brand-copy{flex-direction:column;gap:2px;min-width:0;display:flex}.brand-copy strong{color:#fdf4ff;font-family:var(--font-display);letter-spacing:.08em;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:700;line-height:1.2;overflow:hidden}.brand-copy small{font-family:var(--font-display);letter-spacing:.2em;color:#d6a52bd1;font-size:8.5px}.sidebar-project{background:#ffffff0b;border:1px solid #d6a52b1f;border-radius:14px;align-items:center;gap:7px;padding:8px 9px;display:flex}.sidebar-project-main{min-width:0;color:inherit;text-align:left;background:0 0;border:0;border-radius:10px;flex:1;align-items:center;gap:9px;padding:2px;display:flex}.sidebar-project-main:hover{background:#ffffff0e}.sidebar-project-copy{min-width:0}.project-add-btn{width:26px;height:26px;color:var(--lime);background:#d6a52b1f;border:1px solid #d6a52b3d;border-radius:9px;flex-shrink:0;place-items:center;transition:background .18s;display:grid}.project-add-btn:hover{background:#d6a52b33}.project-modal-backdrop{z-index:999;background:#1806186b;place-items:center;padding:22px;display:grid;position:fixed;inset:0}.project-modal{border:1px solid var(--line);background:var(--paper);border-radius:20px;width:min(430px,100vw - 40px);max-height:86vh;padding:20px 22px;overflow-y:auto;box-shadow:0 24px 60px -26px #3b0a4d99}.project-modal-head{justify-content:space-between;align-items:center;gap:14px;margin-bottom:12px;display:flex}.project-modal-head span{color:var(--green);font-family:var(--font-display);letter-spacing:.14em;font-size:9px;display:block}.project-modal-head h3{color:var(--ink);font-size:13px}.project-modal-close{border:1px solid var(--line);width:32px;height:32px;color:var(--muted);background:#fffdf6;border-radius:10px;place-items:center;display:grid}.project-modal-close:hover{background:#f3f2f3}.project-modal-form{flex-direction:column;gap:10px;display:flex}.project-modal-fields{grid-template-columns:1fr 1fr;gap:10px;display:grid}.project-modal-actions{justify-content:flex-end;gap:8px;margin-top:14px;display:flex}.sidebar-project-icon{width:31px;height:31px;color:var(--lime);background:#d6a52b24;border-radius:9px;flex-shrink:0;place-items:center;display:grid}.sidebar-project>div:nth-child(2){min-width:0}.sidebar-project span{color:#f5ebf7c2;letter-spacing:.04em;font-size:9.5px;display:block}.sidebar-project strong{color:#f2eff2;text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;font-weight:600;display:block;overflow:hidden}.sidebar-project .muted{color:#f5ebf7ad;margin-left:auto}.sidebar-nav{flex-direction:column;gap:16px;display:flex}.nav-group{flex-direction:column;gap:3px;display:flex}.nav-group-label{color:#f0c94fc7;font-family:var(--font-display);letter-spacing:.17em;text-transform:uppercase;margin-bottom:4px;padding:0 11px;font-size:9.5px;font-weight:600}.nav-item{color:#f9f4fae6;text-align:left;background:0 0;border:1px solid #0000;border-radius:11px;align-items:center;gap:10px;width:100%;padding:9px 11px;font-size:12.5px;transition:background .18s,color .18s,border-color .18s;display:flex}.nav-item:hover{color:#f5f3f5;background:#ffffff0f}.nav-item.active{color:#f4f1f4;background:linear-gradient(90deg,#d6a52b2e,#d6a52b08);border-color:#d6a52b33}.nav-icon{color:#d6a52bb8;border-radius:7px;flex-shrink:0;place-items:center;width:24px;height:24px;display:grid}.nav-item.active .nav-icon{color:var(--lime)}.nav-active-dot{background:var(--lime);border-radius:50%;width:6px;height:6px;margin-left:auto;box-shadow:0 0 10px #d6a52be6}.sidebar-spacer{flex:1;min-height:10px}.sidebar-program{background:linear-gradient(145deg,#d6a52b24,#d6a52b08);border:1px solid #d6a52b2e;border-radius:15px;gap:10px;padding:12px;display:flex}.program-leaf{width:30px;height:30px;color:var(--lime);background:#d6a52b29;border-radius:9px;flex-shrink:0;place-items:center;display:grid}.sidebar-program span{color:#f8eef9cc;font-size:9.5px;display:block}.sidebar-program strong{color:#ebe6eb;margin-top:1px;font-size:11.5px;font-weight:600;display:block}.sidebar-program a{color:var(--lime);align-items:center;gap:2px;margin-top:5px;font-size:10px;text-decoration:none;display:inline-flex}.sidebar-program a:hover{text-decoration:underline}.sidebar-footer{color:#f6eef7b3;border-top:1px solid #ffffff24;align-items:center;gap:7px;padding-top:13px;font-size:9.5px;display:flex}.status-dot{background:#d2a126;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #d28cd21f}.sidebar-footer button{color:#e8dee88c;background:0 0;border:0;border-radius:6px;place-items:center;width:24px;height:24px;margin-left:auto;display:grid}.sidebar-footer button:hover{color:var(--lime);background:#ffffff14}.topbar{z-index:30;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f2eff2d1;border-bottom:1px solid #d4cbd4b3;align-items:center;gap:18px;min-height:72px;padding:0 34px;display:flex;position:sticky;top:0}.topbar-mobile-brand{align-items:center;gap:8px;display:none}.topbar-mobile-brand strong{font-family:var(--font-display);letter-spacing:.12em;font-size:13px}.breadcrumb{color:var(--muted);align-items:center;gap:8px;font-size:11.5px;display:flex}.breadcrumb-sep{color:var(--muted-2)}.breadcrumb strong{color:var(--ink);font-weight:600}.topbar-right{align-items:center;gap:12px;margin-left:auto;display:flex}.save-state{color:var(--muted);white-space:nowrap;align-items:center;gap:5px;font-size:10.5px;display:flex}.save-state svg{color:var(--green-2)}.price-badge svg{margin-right:1px}.topbar-price{border-left:1px solid var(--line-strong);text-align:right;white-space:nowrap;padding-left:12px}.topbar-price span{color:var(--muted);font-size:9.5px;display:block}.topbar-price strong{color:var(--forest);font-family:var(--font-display);font-size:12.5px;font-weight:600;display:block}.avatar{width:35px;height:35px;color:var(--lime-bright);background:linear-gradient(145deg,#73357c,#4e1f58);border-radius:50%;flex-shrink:0;place-items:center;font-size:12px;font-weight:600;display:grid;box-shadow:inset 0 0 0 1px #d6a52b38}.mobile-nav{display:none}.btn{white-space:nowrap;border:1px solid #0000;border-radius:11px;justify-content:center;align-items:center;gap:7px;padding:10px 15px;font-size:12px;font-weight:600;line-height:1.1;text-decoration:none;transition:transform .16s,box-shadow .16s,background .16s,border-color .16s;display:inline-flex}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn-primary{background:linear-gradient(135deg, var(--green), var(--forest));color:#fdf5fd;box-shadow:0 12px 24px -14px #74045fcc}.btn-primary:hover{box-shadow:0 16px 28px -14px #74045fe6}.btn-secondary{border-color:var(--line-strong);color:var(--ink-soft);background:#fffdf7}.btn-secondary:hover{background:#f9f7f9;border-color:#c0b4c0}.btn-lime{color:#321632;background:linear-gradient(135deg,#eec64a,#d2a126);box-shadow:0 12px 24px -14px #b44bb4b3}.btn-dark{color:#fbf7fc;background:#4c1c54}.btn-dark:hover{background:#5e2a67}.btn-ghost{border-color:var(--line-strong);color:var(--ink-soft);background:0 0}.btn-ghost:hover{background:#fff9}.btn-ghost-light{color:#f3eff3;background:#ffffff14;border-color:#ffffff2e}.btn-ghost-light:hover{background:#ffffff26}.btn-block{width:100%}.btn-icon{padding:9px 11px}.link-button{color:var(--green);background:0 0;border:0;align-items:center;gap:3px;padding:0;font-size:11.5px;font-weight:600;display:inline-flex}.link-button:hover{color:var(--forest);text-decoration:underline}.icon-button{border:1px solid var(--line);width:32px;height:32px;color:var(--ink-soft);background:#fff;border-radius:9px;place-items:center;transition:background .16s,border-color .16s;display:grid}.icon-button:hover{border-color:var(--green-2);background:var(--lime-soft)}.card{border-radius:var(--radius-lg);background:var(--paper);box-shadow:var(--shadow-card);border:1px solid #e1dae1f2;padding:23px;position:relative}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px 24px;padding:3px 0 1px;display:flex}.page-header-copy{max-width:790px}.eyebrow{color:var(--green-2);font-family:var(--font-display);letter-spacing:.18em;text-transform:uppercase;margin-bottom:7px;font-size:10px;font-weight:600;display:inline-block}.page-header h1{letter-spacing:-.03em;font-size:clamp(25px,2.8vw,35px);line-height:1.16}.page-header p{max-width:730px;color:var(--muted);margin-top:7px;font-size:12.5px;line-height:1.6}.page-header-actions{flex-wrap:wrap;gap:9px;display:flex}.section-title{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:16px;display:flex}.section-title-copy{align-items:flex-start;gap:11px;display:flex}.section-icon{background:var(--lime-soft);width:36px;height:36px;color:var(--green);border-radius:11px;flex-shrink:0;place-items:center;display:grid}.section-eyebrow{color:var(--muted);font-family:var(--font-display);letter-spacing:.16em;text-transform:uppercase;margin-bottom:2px;font-size:9px;font-weight:600;display:block}.section-title h2{letter-spacing:-.02em;font-size:15.5px}.section-title p{color:var(--muted);margin-top:3px;font-size:11.5px;line-height:1.5}.section-action{flex-shrink:0;align-self:center}.badge{white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:4px;padding:4px 8px;font-size:10.5px;font-weight:600;line-height:1.2;display:inline-flex}.badge-dot{background:currentColor;border-radius:50%;width:5px;height:5px;box-shadow:0 0 6px}.badge-lime{color:#74540f;background:#faf0d3;border-color:#d6a52b57}.badge-green{color:var(--green);background:#f6eef5;border-color:#8c1a7633}.badge-orange{background:var(--orange-soft);color:#a45c1c;border-color:#f1dcc2}.badge-blue{background:var(--blue-soft);color:#2c6d94;border-color:#cfe3f0}.badge-neutral{color:#895089;background:#f0eef0;border-color:#e2dbe2}.badge-red{color:#a84a38;background:#fcece8;border-color:#f0d3cc}.badge-dark{color:#ffe08a;background:#512058;border-color:#f0c94f52}.stats-grid,.equipment-top-stats,.finance-kpi-grid,.reference-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.stat-card{border:1px solid var(--line);background:var(--paper);box-shadow:var(--shadow-card);border-radius:19px;padding:17px 17px 15px;position:relative;overflow:hidden}.stat-card:before{content:"";background:radial-gradient(closest-side,#d6a52b2e,#0000 70%);border-radius:50%;width:110px;height:110px;position:absolute;top:-40px;right:-40px}.stat-card-top{align-items:center;gap:8px;display:flex}.stat-icon{width:29px;height:29px;color:var(--green);background:#efebef;border-radius:9px;flex-shrink:0;place-items:center;display:grid}.stat-label{color:var(--muted);font-size:10.5px;line-height:1.3}.stat-value{z-index:1;color:var(--ink);font-family:var(--font-display);letter-spacing:-.03em;margin-top:11px;font-size:clamp(22px,2.1vw,28px);font-weight:600;line-height:1.1;position:relative}.stat-value small{color:var(--muted);font-family:var(--font-body);letter-spacing:0;font-size:10.5px;font-weight:500}.stat-sub{color:var(--muted);margin-top:4px;font-size:10.5px;line-height:1.4}.stat-lime{background:linear-gradient(150deg,#f4f1f4 0%,#fffdf6 72%);border-color:#decbde}.stat-lime .stat-icon{color:#632463;background:#e8d2e8}.stat-orange{background:linear-gradient(150deg,#fff9f0 0%,#fffdf6 72%);border-color:#f0e2cf}.stat-orange .stat-icon{color:#a86120;background:#fdeed9}.stat-blue{background:linear-gradient(150deg,#f4faff 0%,#fffdf6 72%);border-color:#d9e6ef}.stat-blue .stat-icon{color:#2f7399;background:#e4f1f9}.stat-dark{color:#fbf7fc;background:linear-gradient(150deg,#65316b,#4a1d51);border-color:#f0c94f33}.stat-dark .stat-icon{color:var(--lime);background:#d6a52b24}.stat-dark .stat-label,.stat-dark .stat-sub,.stat-dark .stat-value small{color:#faf2fbd1}.stat-dark .stat-value{color:#f4f2f4}.field{flex-direction:column;gap:7px;min-width:0;display:flex}.field-label{color:var(--ink-soft);justify-content:space-between;align-items:center;gap:10px;font-size:11px;font-weight:600;display:flex}.field-hint{color:var(--muted);font-size:10.5px;font-weight:400}.field input[type=text],.field input[type=number],.field select{border:1px solid var(--line-strong);width:100%;color:var(--ink);background:#f9f8f9;border-radius:9px;outline:none;padding:10px 11px;font-size:12px;transition:border-color .16s,box-shadow .16s,background .16s}.field input:focus,.field select:focus{border-color:var(--green-2);background:#fff;box-shadow:0 0 0 3px #8c1a761f}.select-wrap{position:relative}.select-wrap .select-icon{z-index:1;color:var(--green-2);pointer-events:none;position:absolute;top:50%;left:11px;transform:translateY(-50%)}.select-wrap select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23718074' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 11px center;background-repeat:no-repeat;padding-left:34px}.money-input{border:1px solid var(--line-strong);background:#f9f8f9;border-radius:9px;align-items:center;gap:5px;padding:0 11px;transition:border-color .16s,box-shadow .16s;display:flex}.money-input:focus-within{border-color:var(--green-2);background:#fff;box-shadow:0 0 0 3px #8c1a761f}.money-input>span{color:var(--muted);font-size:11px}.money-input input{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:0;padding:9px 0;font-size:12px}.money-input small{color:var(--muted);white-space:nowrap;font-size:10px}.money-input.compact input{padding:7px 0}input[type=range]{background:linear-gradient(to right, var(--green-2) 0%, var(--green-2) var(--range-progress,35%), #e5dee5 var(--range-progress,35%), #e5dee5 100%);appearance:none;cursor:pointer;border-radius:999px;outline:none;width:100%;height:5px}input[type=range]::-webkit-slider-thumb{border:4px solid var(--green-2);appearance:none;background:#fff;border-radius:50%;width:16px;height:16px;box-shadow:0 2px 6px #3b0a4d3d}input[type=range]::-moz-range-thumb{border:4px solid var(--green-2);background:#fff;border-radius:50%;width:10px;height:10px;box-shadow:0 2px 6px #3b0a4d3d}.range-field{border:1px solid var(--line);background:#f8f7f8;border-radius:13px;padding:14px}.range-head{justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.range-head .field-label{justify-content:flex-start}.range-hint{color:var(--muted);margin-top:3px;font-size:10.5px;line-height:1.45}.range-value{color:var(--green);font-family:var(--font-display);flex-shrink:0;font-size:19px;font-weight:600;line-height:1}.range-value small{color:var(--muted);font-family:var(--font-body);margin-left:3px;font-size:10px;font-weight:400}.range-wrap{margin:13px 0 4px}.range-ticks{flex-wrap:wrap;gap:5px;margin-top:7px;display:flex}.range-tick{color:var(--muted);background:0 0;border:0;border-radius:999px;padding:4px 8px;font-size:10px;transition:background .16s,color .16s}.range-tick:hover{background:#ece9ec}.range-tick.active{background:var(--lime-soft);color:var(--green);font-weight:600}.toggle-row{cursor:pointer;justify-content:space-between;align-items:center;gap:14px;display:flex}.toggle-row>input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.toggle-label{color:var(--ink-soft);font-size:11.5px;font-weight:600;display:block}.toggle-description{color:var(--muted);margin-top:2px;font-size:10.5px;line-height:1.4;display:block}.toggle-control{background:#ded8de;border-radius:999px;flex-shrink:0;width:40px;height:22px;transition:background .18s;position:relative}.toggle-thumb{background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .18s;position:absolute;top:3px;left:3px;box-shadow:0 1px 4px #3b0a4d38}.toggle-row input:checked+.toggle-control{background:var(--green-2)}.toggle-row input:checked+.toggle-control .toggle-thumb{transform:translate(18px)}.progress{background:#e9e2e9;border-radius:999px;height:7px;overflow:hidden}.progress-fill{border-radius:inherit;height:100%;transition:width .6s;display:block}.progress-green{background:linear-gradient(90deg,#813881,#ab60ab)}.progress-lime{background:linear-gradient(90deg,#d2a126,#eec64a)}.progress-orange{background:linear-gradient(90deg,#e98a3c,#f4b26c)}.progress-blue{background:linear-gradient(90deg,#3b8fbe,#6cc7ff)}.info-note{border:1px solid var(--line);color:var(--ink-soft);background:#f4f2f4;border-radius:11px;gap:9px;padding:11px 13px;font-size:11.5px;line-height:1.55;display:flex}.info-note-icon{flex-shrink:0;margin-top:1px}.note-lime{color:#5e225e;background:#f0edf0;border-color:#e0cbe0}.note-orange{color:#8c571f;background:#fdf4e8;border-color:#f0dcc2}.note-blue{color:#2f6c8f;background:#eff7fc;border-color:#d6e7f1}.key-value{border-bottom:1px dashed var(--line);justify-content:space-between;align-items:center;gap:12px;padding:7px 0;font-size:11.5px;display:flex}.key-value span{color:var(--muted)}.key-value strong{color:var(--ink);font-family:var(--font-display);font-size:11px;font-weight:600}.key-value.strong strong{color:var(--green);font-size:13px}.brand-mark{width:34px;height:34px;font-family:var(--font-display);letter-spacing:.02em;border:1px solid #0000;border-radius:10px;flex-shrink:0;place-items:center;font-size:11px;font-weight:700;display:grid}.brand-small{border-radius:8px;width:27px;height:27px;font-size:9.5px}.brand-large{border-radius:13px;width:44px;height:44px;font-size:12px}.text-lime{color:#722772!important}.text-orange{color:var(--orange)!important}.muted{color:var(--muted)}.flex{align-items:center;gap:4px;display:flex}.right{text-align:right}.bom-table-wrap{border:1px solid var(--line);background:#fdfcfd;border-radius:13px;overflow-x:auto}.bom-table,.quote-table{border-collapse:collapse;width:100%;font-size:11.5px}.bom-table th,.quote-table th{border-bottom:1px solid var(--line);color:var(--muted);font-family:var(--font-display);letter-spacing:.12em;text-align:left;text-transform:uppercase;padding:9px 11px;font-size:9px;font-weight:600}.bom-table td,.quote-table td{vertical-align:top;border-bottom:1px solid #eceaec;padding:10px 11px}.bom-table td>strong,.quote-table td>strong{font-weight:600}.bom-table td>span,.quote-table td>span{color:var(--muted);margin-top:2px;font-size:10px;line-height:1.4;display:block}.bom-table .group-row td{color:var(--green);font-family:var(--font-display);letter-spacing:.11em;text-transform:uppercase;background:#f1eef1;border-bottom:1px solid #e5dde5;padding:7px 11px;font-size:9px;font-weight:600}.bom-table tfoot td{border-top:1px solid var(--line);color:var(--muted);padding:9px 11px;font-size:11.5px}.bom-table tfoot .grand-total td{border-top:1.5px solid var(--forest);color:var(--ink);font-family:var(--font-display);background:#f4f2f4;font-size:12px;font-weight:600}.bom-table tfoot .incentive-row td{color:var(--green)}.bom-table tfoot .net-total td{color:#ece7ec;font-family:var(--font-display);background:#301130;font-size:12px;font-weight:600}.bom-table tfoot .net-total td.right{color:var(--lime)}.empty-state{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:40px 20px;display:flex}.empty-icon{background:var(--lime-soft);width:56px;height:56px;color:var(--green);border-radius:18px;place-items:center;display:grid}.empty-state h3{font-size:14px}.empty-state p{max-width:380px;color:var(--muted);font-size:11px}.chart-card{padding:22px}.chart-area{width:100%;margin-top:4px}.recharts-responsive-container{overflow:visible}.recharts-text{font-family:var(--font-body)}.recharts-cartesian-axis-tick-value{font-size:11px}.chart-legend{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 14px;margin:4px 0 8px;display:flex}.chart-legend-items{flex-wrap:wrap;gap:6px 14px;display:flex}.chart-legend-item{color:var(--muted);align-items:center;gap:5px;font-size:10.5px;display:flex}.legend-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px;display:inline-block}.legend-dot.dashed{border-radius:2px;width:9px;height:2px}.chart-highlight{text-align:right}.chart-highlight span{color:var(--muted);font-size:9.5px;display:block}.chart-highlight strong{color:var(--green);font-family:var(--font-display);font-size:14px;font-weight:600;display:block}.chart-current-time{color:var(--muted);align-items:center;gap:4px;font-size:10px;display:inline-flex}.chart-tooltip{box-shadow:var(--shadow-float);color:#fbf7fc;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#4a1752f7;border:1px solid #d6a52b2e;border-radius:11px;padding:9px 11px;font-size:11px}.chart-tooltip-label{color:#f5f2f5;border-bottom:1px solid #ffffff1a;margin-bottom:5px;padding-bottom:5px;font-weight:600}.chart-tooltip-row{align-items:center;gap:6px;padding:1.5px 0;display:flex}.chart-tooltip-row strong{color:var(--lime);font-family:var(--font-display);margin-left:auto;font-size:11px;font-weight:600}.donut-layout{grid-template-columns:minmax(210px,.85fr) minmax(0,1fr);align-items:center;gap:14px;display:grid}.donut-wrap{place-items:center;min-height:250px;display:grid;position:relative}.donut-center{text-align:center;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.donut-center strong{color:var(--forest);font-family:var(--font-display);letter-spacing:-.03em;font-size:25px;font-weight:600;line-height:1}.donut-center span{color:var(--muted);margin-top:3px;font-size:10.5px}.donut-center small{color:var(--muted-2);margin-top:1px;font-size:9.5px}.energy-legend{flex-direction:column;gap:7px;display:flex}.energy-legend-row{border-bottom:1px dashed var(--line);grid-template-columns:11px minmax(0,1fr) auto auto;align-items:center;gap:7px;padding-bottom:6px;font-size:11px;display:grid}.energy-legend-row>span:nth-child(2){color:var(--muted)}.energy-legend-row strong{color:var(--ink);font-family:var(--font-display);font-size:11.5px;font-weight:600}.energy-legend-row small{color:var(--muted-2);text-align:right;font-size:9.5px}.energy-summary{background:#f2eff2;border-radius:11px;align-items:center;gap:10px;margin-top:5px;padding:10px 12px;display:flex}.energy-summary>div{flex:1}.energy-summary span{color:var(--muted);font-size:9.5px;display:block}.energy-summary strong{color:var(--ink);font-family:var(--font-display);font-size:14px;font-weight:600;display:block}.energy-summary strong small{color:var(--muted);font-family:var(--font-body);margin-left:1px;font-size:9px;font-weight:400}.energy-summary>svg{color:var(--green-2);flex-shrink:0}.export-income{color:#5e225e;background:#eae4ea;border-radius:9px;justify-content:space-between;align-items:center;gap:8px;padding:8px 11px;font-size:10.5px;display:flex}.export-income span{align-items:center;gap:4px;display:flex}.export-income strong{font-family:var(--font-display);font-size:11.5px;font-weight:600}.cashflow-foot{border-top:1px dashed var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:6px 12px;margin-top:10px;padding-top:9px;font-size:10px;display:flex}.cashflow-foot span{align-items:center;gap:4px;display:inline-flex}.cashflow-foot svg{color:var(--green-2)}.overview-hero-grid{grid-template-columns:minmax(0,1.62fr) minmax(300px,.82fr);gap:16px;display:grid}.hero-card{color:#fdf9fe;background:linear-gradient(138deg,#59265f 0%,#673069 46%,#763b7a 100%);border:0;grid-template-columns:minmax(0,1.08fr) minmax(250px,.92fr);min-height:408px;padding:0;display:grid;overflow:hidden;box-shadow:0 28px 60px -34px #3c1242a6}.hero-card:before{content:"";pointer-events:none;background:radial-gradient(closest-side,#d6a52b33,#0000 70%);border-radius:50%;width:440px;height:440px;position:absolute;top:-140px;right:-60px}.hero-card:after{content:"";pointer-events:none;background:radial-gradient(closest-side at 70% 80%,#b45a9e21,#0000 70%);width:55%;height:60%;position:absolute;bottom:0;right:0}.hero-copy{z-index:2;flex-direction:column;justify-content:center;padding:30px 6px 28px 30px;display:flex;position:relative}.hero-badges{flex-wrap:wrap;gap:6px;display:flex}.hero-kicker{color:#faf1fbe0;letter-spacing:.02em;margin-top:17px;font-size:11.5px;display:block}.hero-copy h2{color:#f5f2f5;letter-spacing:-.045em;margin-top:3px;font-size:clamp(31px,3.7vw,46px);line-height:1.08}.hero-copy h2 span{color:var(--lime)}.hero-copy>p{color:#faf4fbdb;max-width:430px;margin-top:9px;font-size:11px;line-height:1.65}.hero-metrics{flex-wrap:wrap;gap:10px 24px;margin-top:20px;display:flex}.hero-metrics>div{min-width:88px}.hero-metrics span{color:#faf2fbc7;font-size:9.5px;display:block}.hero-metrics strong{color:#f4f0f4;font-family:var(--font-display);letter-spacing:-.02em;margin-top:1px;font-size:16px;font-weight:600;display:block}.hero-metrics strong small{color:#faf2fbc7;font-family:var(--font-body);margin-left:2px;font-size:9.5px;font-weight:400}.hero-actions{flex-wrap:wrap;gap:8px;margin-top:20px;display:flex}.hero-art{place-items:center;min-height:340px;padding:14px 8px 14px 0;display:grid;position:relative}.hero-art-glow{filter:blur(16px);background:radial-gradient(closest-side,#d2a7d24d,#0000 72%);border-radius:50%;position:absolute;inset:12% 4% 12% 10%}.hero-scene{z-index:1;width:100%;max-width:560px;height:auto;animation:7s ease-in-out infinite sceneFloat;position:relative}@keyframes sceneFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-7px)}}.sun-glow{transform-origin:420px 88px;animation:6s ease-in-out infinite sunBreath}@keyframes sunBreath{0%,to{opacity:.8;transform:scale(.94)}50%{opacity:1;transform:scale(1.05)}}.sun-orb{transform-origin:420px 88px;animation:60s linear infinite sunTurn}@keyframes sunTurn{to{transform:rotate(360deg)}}.drift{animation:16s ease-in-out infinite alternate cloudDrift}.cloud-two{animation-duration:22s;animation-direction:alternate-reverse}@keyframes cloudDrift{0%{transform:translate(-8px)}to{transform:translate(14px)}}.float-battery{animation:5.5s ease-in-out infinite chipFloat}.float-chip{animation:6.4s ease-in-out .7s infinite chipFloat}.float-leaf{transform-origin:210px 120px;animation:8s ease-in-out infinite leafSway}@keyframes chipFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes leafSway{0%,to{transform:rotate(0)}50%{transform:rotate(4deg)}}.flow-line{animation:3.6s linear infinite flowLine}.flow-line.delay{animation-delay:1.8s}@keyframes flowLine{to{stroke-dashoffset:-20px}}.hero-float-card{z-index:3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#55245be0;border:1px solid #d6a52b33;border-radius:12px;align-items:center;gap:8px;padding:8px 11px;animation:6s ease-in-out infinite chipFloat;display:flex;position:absolute;box-shadow:0 18px 30px -18px #00000073}.hero-float-card.float-savings{bottom:48px;left:0}.hero-float-card.float-co2{animation-delay:1.2s;top:32px;right:2px}.float-icon{background:var(--lime);width:28px;height:28px;color:var(--forest);border-radius:8px;flex-shrink:0;place-items:center;display:grid}.float-icon.green{background:#d9b6d9}.hero-float-card small{color:#faf0fbd1;font-size:8.5px;line-height:1.2;display:block}.hero-float-card strong{color:#f5f2f5;font-family:var(--font-display);font-size:11px;font-weight:600;line-height:1.3;display:block}.status-card{flex-direction:column;gap:13px;padding:22px;display:flex}.status-card-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.status-card-head h3{font-size:14px}.health-score{color:var(--green);font-family:var(--font-display);letter-spacing:-.04em;font-size:28px;font-weight:600;line-height:1}.health-score small{color:var(--muted);font-size:11px;font-weight:400}.status-list{flex-direction:column;gap:10px;display:flex}.status-row{align-items:flex-start;gap:9px;display:flex}.status-check{border-radius:50%;flex-shrink:0;place-items:center;width:21px;height:21px;font-size:9.5px;font-weight:600;display:grid}.status-row.done .status-check{color:#723372;background:#f0ecf0}.status-row.current .status-check{background:var(--forest);color:var(--lime)}.status-row>div strong{color:var(--ink);font-size:11.5px;font-weight:600;line-height:1.35;display:block}.status-row>div span{color:var(--muted);margin-top:1px;font-size:10px;line-height:1.4;display:block}.size-advice{border:1px solid var(--line);background:#f3f1f3;border-radius:11px;align-items:center;gap:9px;padding:9px 10px;display:flex}.size-advice-icon{width:31px;height:31px;color:var(--green);background:#ebdeeb;border-radius:9px;flex-shrink:0;place-items:center;display:grid}.size-advice>div:nth-child(2){min-width:0}.size-advice span{color:var(--muted);font-size:9px;display:block}.size-advice strong{color:var(--ink);align-items:center;gap:5px;margin-top:1px;font-size:11px;font-weight:600;display:flex}.size-advice>button{width:26px;height:26px;color:var(--green);background:#fff;border:0;border-radius:7px;flex-shrink:0;place-items:center;margin-left:auto;display:grid}.size-advice>button:hover{background:var(--lime-soft)}.status-card .btn-dark{margin-top:auto}.payback-card{flex-direction:column;padding:22px;display:flex}.payback-ring-wrap{place-items:center;padding:8px 0 12px;display:grid}.payback-ring{border-radius:50%;place-items:center;width:168px;height:168px;display:grid;box-shadow:inset 0 0 0 1px #280e280a}.payback-ring-inner{background:var(--paper);text-align:center;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:132px;height:132px;display:flex}.payback-ring-inner span{color:var(--muted);font-size:9.5px}.payback-ring-inner strong{color:var(--forest);font-family:var(--font-display);letter-spacing:-.05em;font-size:34px;font-weight:600;line-height:1.1}.payback-ring-inner small{color:var(--muted);font-size:10px}.payback-numbers{flex-direction:column;gap:5px;margin-bottom:4px;display:flex}.payback-numbers>div{border-bottom:1px dashed var(--line);justify-content:space-between;align-items:center;gap:10px;padding:5px 0;font-size:11px;display:flex}.payback-numbers span{color:var(--muted)}.payback-numbers strong{color:var(--ink);font-family:var(--font-display);font-size:11px;font-weight:600}.payback-tag{color:#612661;background:#f0ecf0;border:1px solid #e3d1e3;border-radius:9px;align-items:center;gap:6px;margin:10px 0;padding:8px 10px;font-size:10.5px;display:flex}.payback-tag svg{color:#893289;flex-shrink:0}.payback-tag strong{font-family:var(--font-display);font-size:11px}.dashboard-grid{gap:16px;display:grid}.dashboard-grid.two-one,.dashboard-grid.chart-equipment{grid-template-columns:minmax(0,1.55fr) minmax(300px,.85fr)}.equipment-summary{flex-direction:column;padding:22px;display:flex}.equipment-list{flex-direction:column;gap:11px;display:flex}.equipment-row{border-bottom:1px dashed var(--line);grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:9px;padding-bottom:10px;display:grid}.equipment-row>div>span{color:var(--muted);font-size:9px;display:block}.equipment-row>div>strong{color:var(--ink);font-size:11.5px;font-weight:600;line-height:1.35;display:block}.equipment-row>div>small{color:var(--muted);margin-top:1px;font-size:9.5px;line-height:1.35;display:block}.equipment-price{color:var(--ink-soft);font-family:var(--font-display);white-space:nowrap;font-size:11px;font-weight:600}.battery-brand{color:var(--green)!important;background:#f0ecf0!important;border-color:#e2d6e2!important}.equipment-total{background:#f2eff2;border-radius:11px;justify-content:space-between;align-items:center;gap:10px;margin-top:12px;padding:11px 13px;display:flex}.equipment-total span{color:var(--muted);font-size:9.5px;display:block}.equipment-total strong{color:var(--forest);font-family:var(--font-display);font-size:14px;font-weight:600;display:block}.equipment-note{color:var(--muted);align-items:flex-start;gap:5px;margin-top:9px;font-size:9.5px;line-height:1.4;display:flex}.equipment-note svg{color:var(--green-2);flex-shrink:0;margin-top:1px}.next-step-banner{color:#f0ebf0;background:radial-gradient(400px 200px at 80% 120%,#d6a52b2e,#0000 65%),linear-gradient(120deg,#2f102f,#210c21);border:0;align-items:center;gap:16px;padding:24px 26px;display:flex;overflow:hidden;box-shadow:0 24px 50px -32px #1d081db3}.next-step-icon{width:52px;height:52px;color:var(--forest);background:linear-gradient(140deg,#eec64a,#d2a126);border-radius:16px;flex-shrink:0;place-items:center;display:grid;box-shadow:0 10px 24px -12px #d6a52bb3}.next-step-banner>div:nth-child(2){flex:1;min-width:0}.next-step-banner .eyebrow{color:#d6a52bad;margin-bottom:3px}.next-step-banner h3{color:#f4f1f4;letter-spacing:-.02em;font-size:14px}.next-step-banner p{color:#eee2f0a3;margin-top:4px;font-size:11px;line-height:1.55}.next-step-actions{flex-shrink:0;gap:8px;display:flex}.next-step-banner .btn-secondary{color:#f2eff2;background:#ffffff12;border-color:#ffffff2e}.next-step-banner .btn-secondary:hover{background:#ffffff21}.design-layout{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:18px;display:grid}.design-main{flex-direction:column;gap:16px;min-width:0;display:flex}.design-summary{flex-direction:column;gap:14px;display:flex;position:sticky;top:90px}.form-card{padding:23px}.form-card-head{align-items:center;gap:11px;margin-bottom:20px;display:flex}.form-card-head>div:nth-child(2){min-width:0}.form-card-head h3{font-size:14.5px}.form-card-head p{color:var(--muted);margin-top:2px;font-size:11px;line-height:1.45}.form-card-head>.badge{margin-left:auto}.step-chip{background:var(--forest);width:33px;height:33px;color:var(--lime);font-family:var(--font-display);letter-spacing:.04em;border-radius:10px;flex-shrink:0;place-items:center;font-size:11px;font-weight:600;display:grid}.capacity-editor{border:1px solid var(--line);background:#f4f2f4;border-radius:15px;flex-wrap:wrap;align-items:center;gap:12px;padding:14px;display:flex}.capacity-step{border:1px solid var(--line-strong);width:38px;height:38px;color:var(--ink);font-family:var(--font-display);background:#fff;border-radius:11px;flex-shrink:0;place-items:center;font-size:19px;line-height:1;transition:border-color .16s,background .16s;display:grid}.capacity-step:hover{border-color:var(--green-2);background:var(--lime-soft);color:var(--green)}.capacity-input-wrap{align-items:baseline;gap:5px;display:flex}.capacity-input-wrap input{width:116px;color:var(--forest);font-family:var(--font-display);letter-spacing:-.04em;background:0 0;border:0;outline:0;padding:0;font-size:33px;font-weight:600;line-height:1.1}.capacity-input-wrap span{color:var(--muted);font-size:11px}.capacity-note{border-left:1px dashed var(--line-strong);margin-left:auto;padding-left:16px}.capacity-note span{color:var(--muted);font-size:9.5px;display:block}.capacity-note strong{color:var(--green);font-family:var(--font-display);font-size:14px;font-weight:600;display:block}.capacity-note small{color:var(--muted);font-size:9.5px;display:block}.log-slider{margin-top:15px}.log-slider>input{width:100%}.log-slider-labels{justify-content:space-between;margin-top:5px;display:flex}.log-slider-labels button{color:var(--muted);background:0 0;border:0;padding:2px 0;font-size:9.5px}.log-slider-labels button.active{color:var(--green);font-weight:700}.capacity-presets{flex-wrap:wrap;gap:6px;margin-top:13px;display:flex}.preset-chip{border:1px solid var(--line);text-align:left;background:#faf8fa;border-radius:9px;flex-direction:column;align-items:flex-start;padding:7px 11px;transition:border-color .16s,background .16s;display:flex}.preset-chip span{color:var(--ink);font-size:11px;font-weight:600}.preset-chip small{color:var(--muted);font-size:9px}.preset-chip:hover{border-color:#c0b1c0}.preset-chip.active{background:var(--lime-soft);border-color:#c07fc0}.preset-chip.active span,.preset-chip.active small{color:#5d205d}.capacity-facts{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:16px;display:grid}.capacity-facts>div{background:#f6f4f6;border-radius:10px;flex-direction:column;gap:2px;padding:9px 11px;display:flex}.capacity-facts svg{color:var(--green-2)}.capacity-facts span{color:var(--muted);font-size:9.5px}.capacity-facts strong{color:var(--ink);font-size:11.5px;font-weight:600}.recommend-inline{color:#5e225e;background:#f1eef1;border:1px solid #e1cee1;border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:11px;padding:9px 11px;font-size:10.5px;display:flex}.recommend-inline>div{align-items:center;gap:5px;line-height:1.4;display:flex}.recommend-inline svg{flex-shrink:0}.recommend-inline button{background:var(--forest);color:var(--lime);white-space:nowrap;border:0;border-radius:7px;padding:5px 9px;font-size:10px;font-weight:600}.form-grid{gap:14px;display:grid}.form-grid.two{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.solar-yield-box{background:linear-gradient(135deg,#eee9ee,#f8f7f8);border:1px solid #e0cee0;border-radius:13px;align-items:center;gap:9px;padding:11px 13px;display:flex}.yield-icon{color:#732773;background:#e9d5e9;border-radius:9px;flex-shrink:0;place-items:center;width:32px;height:32px;display:grid}.solar-yield-box span{color:var(--muted);font-size:9px;display:block}.solar-yield-box strong{color:var(--forest);font-family:var(--font-display);font-size:12.5px;font-weight:600;display:block}.solar-yield-box small{color:var(--muted);font-size:9.5px;display:block}.system-type-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:2px;display:grid}.system-type-card{border:1px solid var(--line);text-align:left;background:#faf8fa;border-radius:12px;align-items:flex-start;gap:8px;padding:11px;transition:border-color .16s,background .16s,box-shadow .16s;display:flex;position:relative}.system-type-card:hover{border-color:#c2b2c2}.system-type-card.active{background:#f2eff2;border-color:#bc78bc;box-shadow:inset 0 0 0 1px #d6a52b4d}.system-type-icon{width:30px;height:30px;color:var(--green);background:#ece9ec;border-radius:8px;flex-shrink:0;place-items:center;display:grid}.system-type-card.active .system-type-icon{color:#682468;background:#e7d0e7}.system-type-card>span:nth-child(2){min-width:0}.system-type-card strong{color:var(--ink);font-size:11.5px;font-weight:600;display:block}.system-type-card small{color:var(--muted);margin-top:1px;font-size:9.5px;line-height:1.4;display:block}.select-check{border:1px solid var(--line-strong);color:#0000;border-radius:50%;flex-shrink:0;place-items:center;width:18px;height:18px;margin-left:auto;display:grid}.system-type-card.active .select-check,.incentive-card.active .select-check{border-color:var(--green);background:var(--green);color:#fff}.roof-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:2px;display:grid}.roof-card{border:1px solid var(--line);text-align:left;background:#faf8fa;border-radius:11px;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 11px;transition:border-color .16s,background .16s;display:flex}.roof-card svg{color:var(--green-2);margin-bottom:2px}.roof-card strong{color:var(--ink);font-size:11px;font-weight:600}.roof-card small{color:var(--muted);font-size:9.5px;line-height:1.35}.roof-card em{color:var(--green);font-family:var(--font-display);margin-top:2px;font-size:9px;font-style:normal;font-weight:600}.roof-card:hover{border-color:#c2b1c2}.roof-card.active{background:#f2eff2;border-color:#bc78bc}.shading-row{border-top:1px dashed var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:18px;padding-top:15px;display:flex}.shading-row .field-label{justify-content:flex-start}.shading-row p{color:var(--muted);margin-top:2px;font-size:10px}.shading-options{flex-wrap:wrap;gap:5px;display:flex}.shading-options button{border:1px solid var(--line);color:var(--muted);background:#fff;border-radius:999px;padding:6px 10px;font-size:10.5px}.shading-options button.active{border-color:var(--forest);background:var(--forest);color:var(--lime);font-weight:600}.bill-quick{flex-wrap:wrap;gap:5px;margin:10px 0 18px;display:flex}.bill-quick button{border:1px solid var(--line);color:var(--muted);background:#fff;border-radius:999px;padding:5px 9px;font-size:10px}.bill-quick button.active{background:var(--lime-soft);color:#5d205d;border-color:#c07fc0;font-weight:600}.kwh-result{background:linear-gradient(135deg,#f0ebf0,#faf8fa 72%);border:1px solid #dfcfdf;border-radius:14px;grid-template-columns:minmax(0,1.05fr) minmax(0,1.35fr);align-items:center;gap:12px;margin:0 0 18px;padding:14px;display:grid}.kwh-main{align-items:center;gap:10px;min-width:0;display:flex}.kwh-main>div{min-width:0}.kwh-main-icon{background:var(--forest);width:38px;height:38px;color:var(--lime);border-radius:11px;flex-shrink:0;place-items:center;display:grid}.kwh-main span{color:var(--muted);font-size:9.5px;display:block}.kwh-main strong{color:var(--forest);font-family:var(--font-display);overflow-wrap:anywhere;margin-top:1px;font-size:21px;line-height:1.15;display:block}.kwh-main strong em,.kwh-metrics strong em{color:var(--muted);font-family:var(--font-body);font-size:10px;font-style:normal;font-weight:500}.kwh-main small{color:var(--muted);margin-top:2px;font-size:9px;line-height:1.4;display:block}.kwh-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.kwh-metrics>div{background:#ffffffb8;border-radius:10px;min-width:0;padding:8px 9px}.kwh-metrics span{color:var(--muted);font-size:9px;display:block}.kwh-metrics strong{color:var(--ink);overflow-wrap:anywhere;margin-top:1px;font-size:11.5px;font-weight:600;display:block}.kwh-compare{color:var(--muted);border-top:1px dashed #dac9da;flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:7px;padding-top:10px;font-size:10.5px;line-height:1.45;display:flex}.kwh-compare>span{flex:210px;min-width:0}.kwh-compare .badge{margin-left:auto}.usage-estimate{background:#f3f1f3;border-radius:12px;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:16px;padding:12px 13px;display:grid}.usage-estimate span{color:var(--muted);font-size:9.5px;display:block}.usage-estimate strong{color:var(--ink);margin-top:1px;font-size:11px;font-weight:600;display:block}.incentive-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:2px;display:grid}.incentive-card{border:1px solid var(--line);text-align:left;background:#faf8fa;border-radius:12px;flex-direction:column;align-items:flex-start;gap:5px;padding:11px;transition:border-color .16s,background .16s;display:flex;position:relative}.incentive-card:hover{border-color:#c2b1c2}.incentive-card.active{background:#f2eff2;border-color:#bc78bc}.incentive-card.disabled{opacity:.5;cursor:not-allowed}.incentive-card.disabled:hover{border-color:var(--line)}.incentive-head{justify-content:space-between;align-items:center;gap:8px;width:100%;display:flex}.incentive-icon{width:29px;height:29px;color:var(--green);background:#efebef;border-radius:8px;flex-shrink:0;place-items:center;display:grid}.incentive-card>strong{color:var(--ink);font-size:11.5px;font-weight:600}.incentive-card>small{color:var(--muted);font-size:9.5px;line-height:1.42}.incentive-card>em{color:var(--orange);font-size:9px;font-style:normal;line-height:1.35}.incentive-card .select-check{position:absolute;bottom:9px;right:9px}.export-scheme-note{color:var(--muted);background:#f3f1f3;border-radius:9px;flex-wrap:wrap;align-items:center;gap:7px;margin:14px 0;padding:9px 11px;font-size:10px;line-height:1.45;display:flex}.phase-result>span{flex:190px;min-width:0}.export-scheme-note>span{flex:1}.export-scheme-note>svg{color:var(--green-2);flex-shrink:0}.battery-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin-top:2px;display:grid}.battery-card{border:1px solid var(--line);text-align:center;background:#faf8fa;border-radius:10px;flex-direction:column;align-items:center;gap:3px;padding:9px 6px;transition:border-color .16s,background .16s;display:flex}.battery-card svg{color:var(--green-2)}.battery-card strong{color:var(--ink);font-size:10.5px;font-weight:600}.battery-card small{color:var(--muted);font-size:8.5px;line-height:1.3}.battery-card:hover{border-color:#c2b1c2}.battery-card.active{background:#f0ecf0;border-color:#bc78bc}.battery-card.disabled{opacity:.42}.battery-detail{color:var(--muted);flex-wrap:wrap;gap:4px 12px;margin-top:7px;font-size:9.5px;display:flex}.summary-card{padding:20px}.summary-head{flex-direction:column;align-items:flex-start;gap:3px;display:flex}.summary-head .eyebrow{margin-bottom:1px}.summary-head h3{font-size:16px}.summary-head .badge{margin-top:4px}.summary-capacity{border-bottom:1px dashed var(--line);margin:14px 0;padding-bottom:12px}.summary-capacity>span{color:var(--muted);font-size:10px}.summary-capacity>strong{color:var(--forest);font-family:var(--font-display);letter-spacing:-.04em;font-size:29px;font-weight:600;line-height:1.15;display:block}.summary-capacity>strong small{color:var(--muted);font-family:var(--font-body);font-size:11px;font-weight:400}.summary-capacity-bar{background:#e9e2e9;border-radius:999px;height:5px;margin-top:6px;overflow:hidden}.summary-capacity-bar span{border-radius:inherit;background:linear-gradient(90deg,#813881,#d6a52b);height:100%;display:block}.summary-capacity>small{color:var(--muted);margin-top:4px;font-size:9.5px;display:block}.summary-list{flex-direction:column;display:flex}.summary-list>div{border-bottom:1px dashed var(--line);justify-content:space-between;align-items:center;gap:10px;padding:6px 0;font-size:10.5px;display:flex}.summary-list span{color:var(--muted)}.summary-list strong{color:var(--ink);font-family:var(--font-display);text-align:right;font-size:11px;font-weight:600}.summary-cost{background:#f3f1f3;border-radius:11px;margin-top:11px;padding:11px}.summary-cost>div{justify-content:space-between;align-items:center;gap:10px;padding:2px 0;font-size:10.5px;display:flex}.summary-cost span{color:var(--muted)}.summary-cost strong{color:var(--ink);font-family:var(--font-display);font-size:11.5px;font-weight:600}.summary-cost .discount strong{color:var(--green)}.summary-cost .net{border-top:1px solid var(--line);margin-top:5px;padding-top:6px}.summary-cost .net strong{color:var(--forest);font-size:14px}.summary-eligibility{border-radius:9px;align-items:flex-start;gap:6px;margin-top:10px;padding:9px 10px;font-size:10px;line-height:1.45;display:flex}.summary-eligibility svg{flex-shrink:0;margin-top:1px}.summary-eligibility.ok{color:#5f235f;background:#efebef}.summary-eligibility.warn{color:#995a1b;background:#fdf2e6}.tax-estimate{color:#2c6d94;background:#eef5fb;border-radius:8px;align-items:center;gap:5px;margin-top:8px;padding:8px 10px;font-size:10px;display:flex}.tax-estimate strong{font-family:var(--font-display);font-size:10.5px}.summary-actions{flex-direction:column;gap:7px;margin-top:13px;display:flex}.summary-foot{color:var(--muted);flex-wrap:wrap;justify-content:center;gap:4px 10px;margin-top:11px;font-size:9px;display:flex}.summary-foot span{align-items:center;gap:3px;display:inline-flex}.summary-foot svg{color:var(--green-2)}.tip-card{color:#ece8ec;background:linear-gradient(135deg,#311131,#220c22);border:0;align-items:flex-start;gap:10px;padding:16px;display:flex}.tip-icon{background:var(--lime);width:34px;height:34px;color:var(--forest);border-radius:10px;flex-shrink:0;place-items:center;display:grid}.tip-card strong{color:#f4f1f4;font-family:var(--font-display);font-size:11px}.tip-card p{color:#eee2f09e;margin-top:3px;font-size:10px;line-height:1.6}.equipment-section{padding:23px}.filter-tabs{flex-wrap:wrap;gap:5px;margin-bottom:14px;display:flex}.filter-tab{border:1px solid var(--line);color:var(--muted);background:#faf9fa;border-radius:999px;padding:6px 12px;font-size:11px;transition:background .16s,border-color .16s,color .16s}.filter-tab:hover{border-color:#c2b1c2}.filter-tab.active{border-color:var(--forest);background:var(--forest);color:var(--lime);font-weight:600}.panel-grid{grid-template-columns:repeat(auto-fill,minmax(238px,1fr));gap:10px;display:grid}.panel-card{border:1px solid var(--line);text-align:left;background:#fffdf7;border-radius:15px;flex-direction:column;gap:9px;padding:14px;transition:transform .18s,border-color .18s,box-shadow .18s;display:flex;position:relative}.panel-card:hover{border-color:#c2b1c2;transform:translateY(-2px);box-shadow:0 16px 28px -24px #3b0a4d80}.panel-card.active{border-color:#b06ab0;box-shadow:0 0 0 2px #d6a52b2e}.panel-card-head{flex-wrap:wrap;align-items:flex-start;gap:7px;display:flex}.panel-card-head>div:nth-child(2){flex:1;min-width:80px}.panel-card-head>div:nth-child(2) span{color:var(--muted);font-size:9px;display:block}.panel-card-head>div:nth-child(2) strong{color:var(--ink);font-size:11.5px;font-weight:600;line-height:1.3;display:block}.panel-card-head .selected-check,.inverter-card-head .selected-check{background:var(--green);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:21px;height:21px;display:grid}.panel-watt{align-items:baseline;gap:7px;display:flex}.panel-watt strong{color:var(--forest);font-family:var(--font-display);letter-spacing:-.04em;font-size:27px;font-weight:600;line-height:1}.panel-watt strong small{color:var(--muted);font-family:var(--font-body);margin-left:2px;font-size:10px;font-weight:400}.panel-watt>span{color:var(--muted);font-size:9.5px}.panel-specs{background:#f5f4f5;border-radius:9px;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;padding:8px 9px;display:grid}.panel-specs span{color:var(--muted);font-size:8.5px;display:block}.panel-specs strong{color:var(--ink-soft);font-size:10px;font-weight:600;display:block}.panel-blurb{color:var(--muted);font-size:9.5px;line-height:1.5}.panel-calc{justify-content:space-between;align-items:center;gap:8px;font-size:9.5px;display:flex}.panel-calc span{color:var(--muted)}.panel-calc strong{color:var(--ink-soft);font-size:10px;font-weight:600}.panel-price{border-top:1px dashed var(--line);justify-content:space-between;align-items:flex-end;gap:8px;padding-top:8px;display:flex}.panel-price>div strong{color:var(--forest);font-family:var(--font-display);font-size:14px;font-weight:600;display:block}.panel-price>div small{color:var(--muted);font-size:9px;display:block}.panel-select-label{color:var(--green);white-space:nowrap;align-items:center;gap:3px;font-size:9.5px;font-weight:600;display:inline-flex}.auto-inverter{text-align:left;background:#f5f3f5;border:1px dashed #c0b1c0;border-radius:13px;align-items:center;gap:11px;width:100%;margin-bottom:12px;padding:12px 14px;transition:border-color .16s,background .16s,box-shadow .16s;display:flex}.auto-inverter:hover{border-color:var(--green-2)}.auto-inverter.active{background:#efebef;border-style:solid;border-color:#b06ab0;box-shadow:0 0 0 2px #d6a52b24}.auto-inverter-icon{background:var(--forest);width:38px;height:38px;color:var(--lime);border-radius:11px;flex-shrink:0;place-items:center;display:grid}.auto-inverter-copy{flex:1;min-width:0}.auto-inverter-copy .eyebrow{margin-bottom:1px;font-size:8.5px}.auto-inverter-copy strong{color:var(--ink);font-family:var(--font-display);font-size:11.5px;font-weight:600;display:block}.auto-inverter-copy small{color:var(--muted);margin-top:1px;font-size:10px;line-height:1.4;display:block}.auto-inverter-check{border:1px solid var(--line-strong);color:#0000;border-radius:50%;flex-shrink:0;place-items:center;width:23px;height:23px;display:grid}.auto-inverter.active .auto-inverter-check{border-color:var(--green);background:var(--green);color:#fff}.warning-stack{flex-direction:column;gap:6px;margin-bottom:12px;display:flex}.inverter-grid{grid-template-columns:repeat(auto-fill,minmax(252px,1fr));gap:10px;display:grid}.inverter-card{border:1px solid var(--line);text-align:left;background:#fffdf7;border-radius:14px;flex-direction:column;gap:9px;padding:14px;transition:transform .18s,border-color .18s,box-shadow .18s;display:flex}.inverter-card:hover{border-color:#c2b1c2;transform:translateY(-2px);box-shadow:0 16px 28px -24px #3b0a4d80}.inverter-card.active{border-color:#b06ab0;box-shadow:0 0 0 2px #d6a52b2e}.inverter-card-head{flex-wrap:wrap;align-items:flex-start;gap:7px;display:flex}.inverter-card-head>div:nth-child(2){flex:1;min-width:80px}.inverter-card-head span{color:var(--muted);font-size:9px;display:block}.inverter-card-head strong{color:var(--ink);font-size:11.5px;font-weight:600;display:block}.inverter-card-head .badge{margin-left:auto}.inverter-specs{background:#f5f4f5;border-radius:9px;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:8px;display:grid}.inverter-specs span{color:var(--muted);font-size:8.5px;display:block}.inverter-specs strong{color:var(--ink-soft);font-size:9.5px;font-weight:600;display:block}.inverter-tags{flex-wrap:wrap;gap:4px;display:flex}.inverter-price{border-top:1px dashed var(--line);justify-content:space-between;align-items:center;gap:8px;padding-top:8px;display:flex}.inverter-price strong{color:var(--forest);font-family:var(--font-display);font-size:13px;font-weight:600}.inverter-price small{color:var(--muted);font-size:9px}.bom-summary{background:#f3f1f3;border-radius:13px;flex-wrap:wrap;align-items:center;gap:16px 24px;margin-top:15px;padding:14px 16px;display:flex}.bom-summary-main span{color:var(--muted);font-size:9.5px;display:block}.bom-summary-main strong{color:var(--forest);font-family:var(--font-display);letter-spacing:-.03em;font-size:21px;font-weight:600;display:block}.bom-summary-main small{color:var(--muted);font-size:9px;display:block}.bom-summary-metrics{flex-wrap:wrap;gap:14px 26px;display:flex}.bom-summary-metrics span{color:var(--muted);font-size:9.5px;display:block}.bom-summary-metrics strong{color:var(--ink);font-family:var(--font-display);font-size:11px;font-weight:600;display:block}.bom-summary>.btn{margin-left:auto}.equipment-bottom-grid{grid-template-columns:1.12fr .88fr;gap:14px;display:grid}.benchmark-card{align-items:flex-start;gap:12px;padding:19px;display:flex}.benchmark-icon{background:var(--lime-soft);width:40px;height:40px;color:var(--green);border-radius:12px;flex-shrink:0;place-items:center;display:grid}.benchmark-card .eyebrow{margin-bottom:2px}.benchmark-card h3{font-size:13px}.benchmark-card p{color:var(--muted);margin-top:3px;font-size:10.5px;line-height:1.5}.benchmark-row{border-top:1px dashed var(--line);flex-wrap:wrap;align-items:center;gap:8px;margin-top:9px;padding-top:8px;display:flex}.benchmark-row span{color:var(--muted);font-size:10px}.benchmark-row strong{color:var(--forest);font-family:var(--font-display);font-size:14px;font-weight:600}.benchmark-row .badge{margin-left:auto}.price-note-card{align-items:flex-start;gap:10px;padding:19px;display:flex}.price-note-card>svg{color:var(--orange);flex-shrink:0}.price-note-card h3{font-size:12.5px}.price-note-card p{color:var(--muted);margin-top:3px;font-size:10.5px;line-height:1.55}.simulation-controls{padding:18px 20px}.month-strip{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.control-kicker{color:var(--muted);font-family:var(--font-display);letter-spacing:.15em;text-transform:uppercase;font-size:9px;font-weight:600}.month-pills{flex-wrap:wrap;gap:3px;display:flex}.month-pills button{min-width:31px;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:7px;padding:5px 0;font-size:10px;transition:background .16s,color .16s}.month-pills button:hover{background:#ece9ec}.month-pills button.active{background:var(--forest);color:var(--lime);font-weight:600}.month-badge{margin-left:auto}.time-controller{border-top:1px dashed var(--line);flex-wrap:wrap;align-items:center;gap:11px 14px;margin-top:13px;padding-top:13px;display:flex}.play-button{width:42px;height:42px;color:var(--lime);background:linear-gradient(145deg,#622462,#360f36);border:0;border-radius:50%;flex-shrink:0;place-items:center;transition:transform .16s;display:grid;box-shadow:0 10px 20px -12px #3b0a4dcc}.play-button:hover{transform:scale(1.05)}.time-display{min-width:58px}.time-display span{color:var(--muted);font-size:9px;display:block}.time-display strong{color:var(--forest);font-family:var(--font-display);letter-spacing:-.02em;font-size:17px;font-weight:600;display:block}.time-slider{flex:1;min-width:160px}.time-slider input{width:100%}.time-scale{color:var(--muted-2);justify-content:space-between;margin-top:2px;font-size:9px;display:flex}.time-status{align-items:center;gap:6px;display:flex}.sun-status{white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:6px 9px;font-size:10px;display:inline-flex}.sun-status.day{color:#632663;background:#efeaef}.sun-status.night{color:#814b81;background:#f0eff0}.simulation-main-grid{grid-template-columns:minmax(0,1.5fr) minmax(290px,.82fr);align-items:start;gap:16px;display:grid}.flow-card{padding:21px}.flow-live{color:var(--green);font-family:var(--font-display);letter-spacing:.1em;white-space:nowrap;align-items:center;gap:5px;font-size:8.5px;font-weight:600;display:flex}.live-dot{background:#c7911b;border-radius:50%;width:6px;height:6px;animation:1.8s ease-in-out infinite livePulse;display:inline-block;box-shadow:0 0 0 3px #d6a52b26}@keyframes livePulse{0%,to{opacity:1;box-shadow:0 0 0 3px #d6a52b26}50%{opacity:.7;box-shadow:0 0 0 6px #d6a52b0a}}.energy-flow{color:#f2eef2;background:radial-gradient(420px 260px at 50% 42%,#8c1a7652,#0000 72%),radial-gradient(300px 200px at 80% 80%,#d6a52b1a,#0000 70%),linear-gradient(150deg,#2a0e2a,#1c091c);border-radius:16px;height:432px;margin-top:3px;position:relative;overflow:hidden}.flow-grid-bg{background-image:linear-gradient(#d6a52b0b 1px,#0000 1px),linear-gradient(90deg,#d6a52b0b 1px,#0000 1px);background-size:26px 26px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(circle at 50% 45%,#000 0%,#0000 82%);mask-image:radial-gradient(circle at 50% 45%,#000 0%,#0000 82%)}.flow-particles{pointer-events:none;position:absolute;inset:0}.flow-particles span{background:var(--lime);border-radius:50%;width:3px;height:3px;animation:5s ease-in-out infinite particleFloat;position:absolute;box-shadow:0 0 8px #d6a52bcc}.flow-particles span:nth-child(2){animation-delay:1.4s}.flow-particles span:nth-child(3){animation-delay:2.6s}@keyframes particleFloat{0%,to{opacity:.2;transform:translateY(0)scale(.8)}50%{opacity:.9;transform:translateY(-8px)scale(1.1)}}.flow-lines{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.flow-path{fill:none;stroke-width:.42px;stroke-linecap:round;opacity:.22;transition:opacity .3s}.flow-path.active{opacity:1;stroke-dasharray:1.4 1.6;animation:1.5s linear infinite flowDash}.flow-path.reverse{animation-direction:reverse}@keyframes flowDash{to{stroke-dashoffset:-6px}}.flow-node{z-index:2;text-align:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#4a1752e6;border:1px solid #be7db02e;border-radius:12px;flex-direction:column;align-items:center;gap:2px;min-width:112px;padding:8px 10px;display:flex;position:absolute;transform:translate(-50%,-50%);box-shadow:0 14px 24px -18px #0009}.flow-node.disabled{opacity:.48}.node-icon{width:28px;height:28px;color:var(--lime);background:#5a2860;border:1px solid #ffffff1f;border-radius:9px;place-items:center;margin-top:-20px;display:grid;box-shadow:0 6px 12px -6px #00000080}.node-icon-solar{color:var(--lime);background:#d6a52b2e}.node-icon-inverter{color:#d19ad1;background:#d19ad129}.node-icon-home,.node-icon-battery{color:#85d2ff;background:#6cc7ff29}.node-icon-battery-out{color:var(--lime);background:#d6a52b29}.node-icon-grid{color:#c4a9c4;background:#a57da529}.node-icon-export{color:var(--lime);background:#d6a52b2e}.node-icon-import{color:#ffbf80;background:#ffb36b29}.node-kicker{color:#d6a52b9e;font-family:var(--font-display);letter-spacing:.14em;margin-top:1px;font-size:7.5px;font-weight:600}.flow-node strong{color:#f4f2f4;font-family:var(--font-display);font-size:11.5px;font-weight:600;line-height:1.2}.node-sub{color:#e6d9e68c;font-size:8.5px;line-height:1.35}.node-sub.text-lime{color:var(--lime)!important}.node-sub.text-orange{color:#ffb36b!important}.battery-mini{background:#ffffff1f;border-radius:99px;width:56px;height:3px;margin:2px 0 1px;overflow:hidden}.battery-mini span{border-radius:inherit;background:linear-gradient(90deg,#6cc7ff,#d6a52b);height:100%;display:block}.flow-status{z-index:3;flex-wrap:wrap;align-items:center;gap:7px;display:flex;position:absolute;bottom:11px;left:12px}.flow-status .badge{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.flow-status-time{color:#e6d9e699;align-items:center;gap:4px;font-size:8.5px;display:inline-flex}.flow-footer{border-top:1px dashed var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 12px;margin-top:11px;padding-top:9px;font-size:9.5px;display:flex}.flow-footer>span{align-items:center;gap:4px;display:inline-flex}.flow-footer-legend{flex-wrap:wrap;gap:8px;display:flex}.flow-footer-legend span{align-items:center;gap:3px;display:inline-flex}.flow-footer-legend i{border-radius:50%;width:6px;height:6px;display:inline-block}.sim-side{flex-direction:column;gap:14px;min-width:0;display:flex}.live-status-card{padding:19px}.live-status-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.live-status-head h3{font-size:13px}.live-pulse{background:#bdb8bd;border-radius:50%;flex-shrink:0;width:10px;height:10px;margin-top:4px}.live-pulse.active{background:#c7911b;animation:1.6s ease-in-out infinite livePulse;box-shadow:0 0 0 4px #d6a52b24}.live-ring-wrap{place-items:center;padding:11px 0;display:grid}.live-ring{border-radius:50%;place-items:center;width:148px;height:148px;display:grid}.live-ring-inner{background:var(--paper);text-align:center;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:116px;height:116px;display:flex}.live-ring-inner span{color:var(--muted);font-size:8.5px}.live-ring-inner strong{color:var(--forest);font-family:var(--font-display);letter-spacing:-.04em;font-size:25px;font-weight:600;line-height:1.1}.live-ring-inner small{color:var(--muted);font-size:9px}.live-metric-list{flex-direction:column;display:flex}.live-metric-list>div{border-bottom:1px dashed var(--line);justify-content:space-between;align-items:center;gap:8px;padding:6px 0;font-size:10.5px;display:flex}.live-metric-list span{color:var(--muted);align-items:center;gap:4px;display:inline-flex}.live-metric-list span svg{color:var(--green-2)}.live-metric-list strong{color:var(--ink);font-family:var(--font-display);text-align:right;font-size:10.5px;font-weight:600}.battery-soc-box{background:#f3f1f3;border-radius:9px;margin-top:9px;padding:10px}.battery-soc-head{justify-content:space-between;align-items:center;gap:8px;font-size:10px;display:flex}.battery-soc-head span{color:var(--muted)}.battery-soc-head strong{color:var(--green);font-family:var(--font-display);font-size:11px}.battery-soc-bar{background:#e4dde4;border-radius:999px;height:5px;margin:5px 0;overflow:hidden}.battery-soc-bar span{border-radius:inherit;background:linear-gradient(90deg,#813881,#d6a52b);height:100%;display:block}.battery-soc-box small{color:var(--muted);font-size:9px}.no-battery-box{border:1px dashed var(--line-strong);color:var(--muted);background:#f8f7f8;border-radius:9px;align-items:center;gap:7px;margin-top:9px;padding:9px 10px;font-size:9.5px;line-height:1.4;display:flex}.no-battery-box svg{color:var(--green-2);flex-shrink:0}.live-savings{background:linear-gradient(135deg,#361236,#230b23);border-radius:11px;margin-top:10px;padding:10px 12px}.live-savings span{color:#e6d9e68f;font-size:9px;display:block}.live-savings strong{color:var(--lime);font-family:var(--font-display);letter-spacing:-.03em;font-size:19px;font-weight:600;display:block}.live-savings small{color:#e6d9e680;font-size:9px;display:block}.battery-impact-card{background:#fdf8ee;border-color:#f0e3ca;align-items:flex-start;gap:10px;padding:16px;display:flex}.battery-impact-icon{color:#a75d1d;background:#fbe8cf;border-radius:10px;flex-shrink:0;place-items:center;width:35px;height:35px;display:grid}.battery-impact-card .eyebrow{margin-bottom:2px}.battery-impact-card h3{font-size:12px}.battery-impact-card p{color:var(--muted);margin-top:2px;font-size:10px;line-height:1.5}.impact-metrics{flex-wrap:wrap;gap:8px 16px;margin-top:7px;display:flex}.impact-metrics span{color:var(--muted);font-size:9px;display:block}.impact-metrics strong{color:var(--ink);font-family:var(--font-display);font-size:11px;font-weight:600;display:block}.battery-impact-card .link-button{margin-top:7px}.daily-chart-card{padding:22px}.daily-summary{border-top:1px dashed var(--line);flex-wrap:wrap;justify-content:space-between;gap:8px 14px;margin-top:7px;padding-top:11px;display:flex}.daily-summary span{color:var(--muted);font-size:9.5px;display:block}.daily-summary strong{color:var(--ink);font-family:var(--font-display);font-size:11px;font-weight:600;display:block}.simulation-bottom-grid{grid-template-columns:minmax(0,1.32fr) minmax(290px,.68fr);align-items:start;gap:16px;display:grid}.monthly-production-card{padding:22px}.monthly-summary{border-top:1px dashed var(--line);flex-wrap:wrap;gap:12px 26px;margin-top:7px;padding-top:11px;display:flex}.monthly-summary span{color:var(--muted);font-size:9.5px;display:block}.monthly-summary strong{color:var(--ink);font-family:var(--font-display);font-size:11px;font-weight:600;display:block}.sim-summary-card{padding:22px}.performance-list{flex-direction:column;gap:12px;display:flex}.performance-row>div:first-child{justify-content:space-between;align-items:center;gap:8px;font-size:10.5px;display:flex}.performance-row>div:first-child span{color:var(--muted)}.performance-row>div:first-child strong{color:var(--ink);font-family:var(--font-display);font-size:11px;font-weight:600}.mini-bar{background:#e9e2e9;border-radius:999px;height:5px;margin:4px 0 3px;overflow:hidden}.mini-bar span{border-radius:inherit;background:linear-gradient(90deg,#813881,#b86bb8);height:100%;display:block}.mini-bar.orange span{background:linear-gradient(90deg,#e98a3c,#f4b26c)}.mini-bar.blue span{background:linear-gradient(90deg,#3b8fbe,#6cc7ff)}.performance-row small{color:var(--muted);font-size:9px;line-height:1.4}.environment-card{background:#f1edf1;border:1px solid #e2d2e2;border-radius:11px;align-items:center;gap:10px;margin-top:13px;padding:11px 12px;display:flex}.environment-icon{width:36px;height:36px;color:var(--green);background:#e5cfe5;border-radius:10px;flex-shrink:0;place-items:center;display:grid}.environment-card span{color:var(--muted);font-size:9.5px;display:block}.environment-card strong{color:var(--forest);font-family:var(--font-display);font-size:13px;font-weight:600;display:block}.environment-card small{color:var(--muted);font-size:9px;line-height:1.4;display:block}.sim-summary-card .info-note{margin-top:12px}.finance-hero-grid{grid-template-columns:minmax(0,1.42fr) minmax(300px,.78fr);gap:16px;display:grid}.finance-hero-card{color:#f2eff2;background:radial-gradient(420px 280px at 88% 10%,#d6a52b2e,#0000 68%),linear-gradient(138deg,#2c0f2c,#361236 52%,#3b163b);border:0;justify-content:space-between;align-items:center;gap:18px;padding:26px 28px;display:flex;position:relative;overflow:hidden}.finance-hero-card:after{content:"";pointer-events:none;background:radial-gradient(closest-side,#b45a9e26,#0000 70%);border-radius:50%;width:300px;height:300px;position:absolute;bottom:-110px;right:-70px}.finance-hero-copy{z-index:1;max-width:500px;position:relative}.finance-hero-copy .eyebrow{color:#d6a52bad}.finance-hero-copy h2{color:#f4f2f4;letter-spacing:-.04em;font-size:clamp(23px,2.8vw,33px)}.finance-hero-copy h2 span{color:var(--lime)}.finance-hero-copy>p{color:#eee1f09e;max-width:450px;margin-top:6px;font-size:11px;line-height:1.6}.finance-hero-metrics{flex-wrap:wrap;gap:10px 24px;margin-top:16px;display:flex}.finance-hero-metrics span{color:#ebdcec80;font-size:9px;display:block}.finance-hero-metrics strong{color:#f5f2f5;font-family:var(--font-display);margin-top:1px;font-size:14px;font-weight:600;display:block}.finance-hero-badges{flex-wrap:wrap;gap:5px;margin-top:14px;display:flex}.finance-return-visual{z-index:1;flex-direction:column;flex-shrink:0;align-items:center;gap:7px;display:flex;position:relative}.return-ring{border-radius:50%;place-items:center;width:146px;height:146px;display:grid}.return-ring-inner{text-align:center;background:#4a1752f0;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:116px;height:116px;display:flex}.return-ring-inner span{color:#f9f0facc;font-size:9px}.return-ring-inner strong{color:var(--lime);font-family:var(--font-display);letter-spacing:-.04em;font-size:29px;font-weight:600;line-height:1.1}.return-ring-inner small{color:#f9f0facc;font-size:9px}.return-labels{gap:10px;display:flex}.return-labels span{color:#ebdcec85;align-items:center;gap:4px;font-size:8.5px;display:inline-flex}.return-labels i{border-radius:50%;width:6px;height:6px;display:inline-block}.capex-card{padding:20px}.capex-donut-wrap{flex-direction:column;gap:6px;display:flex}.capex-donut{min-height:208px;position:relative}.capex-center{pointer-events:none;text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.capex-center span{color:var(--muted);font-size:9px}.capex-center strong{color:var(--forest);font-family:var(--font-display);letter-spacing:-.03em;font-size:16px;font-weight:600}.capex-legend{flex-direction:column;gap:3px;display:flex}.capex-legend>div{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:7px;font-size:9.5px;display:grid}.capex-legend span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:5px;display:inline-flex;overflow:hidden}.capex-legend i{border-radius:2px;flex-shrink:0;width:6px;height:6px;display:inline-block}.capex-legend strong{color:var(--ink);font-family:var(--font-display);font-size:9.5px;font-weight:600}.capex-legend small{color:var(--muted-2);text-align:right;font-size:9px}.capex-net{border-top:1px dashed var(--line);justify-content:space-between;align-items:center;gap:8px;margin-top:8px;padding-top:8px;font-size:10px;display:flex}.capex-net span{color:var(--muted)}.capex-net strong{color:var(--forest);font-family:var(--font-display);font-size:12px;font-weight:600}.cashflow-card{padding:22px}.finance-two-col{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:16px;display:grid}.loan-card,.assumptions-card{padding:21px}.loan-content{transition:opacity .2s}.loan-content.muted{opacity:.42;pointer-events:none}.loan-inputs{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px;display:grid}.loan-result{background:#f3f1f3;border-radius:11px;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:11px;display:grid}.loan-result span{color:var(--muted);font-size:9px;display:block}.loan-result strong{color:var(--ink);font-family:var(--font-display);font-size:13px;font-weight:600;display:block}.loan-result small{color:var(--muted);font-size:8.5px;line-height:1.35;display:block}.loan-cashflow{border-radius:10px;align-items:center;gap:8px;margin-top:10px;padding:10px 11px;display:flex}.loan-cashflow svg{flex-shrink:0}.loan-cashflow.positive{color:#5f235f;background:#f0ebf0}.loan-cashflow.negative{color:#a34c36;background:#fdefe9}.loan-cashflow div span{font-size:9px;display:block}.loan-cashflow div strong{color:inherit;font-family:var(--font-display);font-size:13px;font-weight:600;display:block}.loan-cashflow div small{opacity:.7;font-size:8.5px;display:block}.loan-card .info-note{margin-top:10px}.assumption-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-bottom:13px;display:grid}.assumption-grid input[type=range]{margin-top:4px}.assumptions-card .toggle-row{border-top:1px dashed var(--line);padding:9px 0}.assumption-summary{background:#f3f1f3;border-radius:10px;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:11px;padding:10px;display:grid}.assumption-summary span{color:var(--muted);font-size:9px;display:block}.assumption-summary strong{color:var(--ink);font-family:var(--font-display);font-size:11.5px;font-weight:600;display:block}.scenario-card{padding:22px}.scenario-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.scenario-item{border:1px solid var(--line);background:#f9f8f9;border-radius:13px;padding:14px}.scenario-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.scenario-label{color:var(--ink);font-size:11.5px;font-weight:600}.scenario-payback{margin:8px 0 4px}.scenario-payback span{color:var(--muted);font-size:9px;display:block}.scenario-payback strong{color:var(--green);font-family:var(--font-display);letter-spacing:-.04em;font-size:26px;font-weight:600;line-height:1.15;display:block}.scenario-payback strong small{color:var(--muted);font-family:var(--font-body);font-size:10px;font-weight:400}.scenario-item p{min-height:28px;color:var(--muted);font-size:9.5px;line-height:1.5}.scenario-savings{border-top:1px dashed var(--line);justify-content:space-between;align-items:center;gap:8px;margin-top:7px;padding-top:6px;font-size:9.5px;display:flex}.scenario-savings span{color:var(--muted)}.scenario-savings strong{color:var(--forest);font-family:var(--font-display);font-size:11px;font-weight:600}.scenario-bar{background:#e9e2e9;border-radius:999px;height:4px;margin-top:7px;overflow:hidden}.scenario-bar span{border-radius:inherit;background:linear-gradient(90deg,#813881,#b86bb8);height:100%;display:block}.scenario-item.scenario-warm{background:#fdf9f0;border-color:#f0dfc7}.scenario-item.scenario-warm .scenario-payback strong{color:#a45c1c}.scenario-item.scenario-warm .scenario-bar span{background:linear-gradient(90deg,#e98a3c,#f4b26c)}.scenario-item.scenario-cool{background:#f5fafd;border-color:#d8e7ef}.scenario-item.scenario-cool .scenario-payback strong{color:#2f7399}.scenario-item.scenario-cool .scenario-bar span{background:linear-gradient(90deg,#3b8fbe,#6cc7ff)}.finance-bottom-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:start;gap:16px;display:grid}.sensitivity-card,.impact-card{padding:22px}.sensitivity-table{border:1px solid var(--line);border-radius:11px;overflow:hidden}.sensitivity-head,.sensitivity-row{grid-template-columns:1.4fr repeat(3,minmax(0,1fr));display:grid}.sensitivity-head{background:#efedef}.sensitivity-head span{color:var(--muted);text-align:center;padding:8px 10px;font-size:9px;font-weight:600}.sensitivity-head span:first-child{text-align:left}.sensitivity-row{border-top:1px solid var(--line)}.sensitivity-row>span{color:var(--ink-soft);padding:8px 10px;font-size:10.5px;font-weight:500}.sensitivity-row>strong{color:var(--muted);font-family:var(--font-display);justify-content:center;align-items:center;padding:8px 10px;font-size:11px;font-weight:600;display:flex}.sensitivity-row>strong.excellent{color:#621e62;background:#ebe5eb}.sensitivity-row>strong.good{color:#6e326e;background:#f0ecf0}.sensitivity-row>strong.slow{color:#9d622d;background:#fdf1e4}.sensitivity-row>strong.bad{color:#a84a38;background:#fcece8}.sensitivity-legend{color:var(--muted);flex-wrap:wrap;gap:6px 13px;margin-top:9px;font-size:9px;display:flex}.sensitivity-legend span{align-items:center;gap:4px;display:inline-flex}.sensitivity-legend i{border-radius:2px;width:8px;height:8px;display:inline-block}.sensitivity-legend i.excellent{background:#dec4de}.sensitivity-legend i.good{background:#e4d2e4}.sensitivity-legend i.slow{background:#f6ddc3}.impact-hero{align-items:center;gap:12px;display:flex}.impact-tree{width:52px;height:52px;color:var(--green);background:#efeaef;border-radius:15px;flex-shrink:0;place-items:center;display:grid}.impact-hero span{color:var(--muted);font-size:9.5px;display:block}.impact-hero strong{color:var(--forest);font-family:var(--font-display);letter-spacing:-.03em;font-size:19px;font-weight:600;display:block}.impact-hero small{color:var(--muted);font-size:9.5px;display:block}.impact-list{flex-direction:column;margin-top:10px;display:flex}.impact-list>div{border-bottom:1px dashed var(--line);justify-content:space-between;align-items:center;gap:10px;padding:6px 0;font-size:10px;display:flex}.impact-list span{color:var(--muted)}.impact-list strong{color:var(--ink);font-family:var(--font-display);font-size:10.5px;font-weight:600}.impact-quote{color:#612661;background:#f3eff3;border-radius:9px;align-items:flex-start;gap:6px;margin-top:9px;padding:9px 10px;font-size:9.5px;line-height:1.45;display:flex}.impact-quote svg{flex-shrink:0;margin-top:1px}.impact-card .btn{margin-top:11px}.quote-layout{grid-template-columns:minmax(0,1fr) 318px;align-items:start;gap:18px;display:grid}.quote-paper{background:#fffdf8;border:1px solid #e7e3d6;border-radius:10px;padding:38px 40px;position:relative;overflow:hidden;box-shadow:0 30px 60px -44px #3b0a4d8c}.quote-watermark{color:#74045f0b;font-family:var(--font-display);letter-spacing:.08em;pointer-events:none;font-size:84px;font-weight:700;position:absolute;top:22px;right:-18px;transform:rotate(-10deg)}.quote-head{border-bottom:2px solid var(--forest);justify-content:space-between;align-items:flex-start;gap:18px;padding-bottom:18px;display:flex;position:relative}.quote-brand{align-items:center;gap:9px;display:flex}.quote-brand-mark{background:var(--forest);width:42px;height:42px;color:var(--lime);border-radius:12px;place-items:center;display:grid}.quote-brand strong{color:var(--forest);font-family:var(--font-display);letter-spacing:.08em;white-space:nowrap;font-size:13px;font-weight:700;display:block}.quote-brand div span{color:var(--muted);font-family:var(--font-display);letter-spacing:.18em;font-size:8px;display:block}.quote-title{text-align:right}.quote-title>span{color:var(--green);font-family:var(--font-display);letter-spacing:.18em;font-size:9px;font-weight:600}.quote-title h2{color:var(--forest);letter-spacing:-.02em;margin-top:1px;font-size:17px}.quote-title small{color:var(--muted);margin-top:2px;font-size:9px;display:block}.quote-meta{text-align:right;flex-shrink:0}.quote-meta>div{margin-bottom:4px}.quote-meta span{color:var(--muted);font-size:8.5px;display:block}.quote-meta strong{color:var(--ink-soft);font-size:10.5px;font-weight:600;display:block}.quote-parties{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;gap:18px;padding:18px 0;display:grid}.quote-section-label{color:var(--green);font-family:var(--font-display);letter-spacing:.15em;margin-bottom:4px;font-size:8.5px;font-weight:600;display:block}.quote-parties h3{color:var(--ink);font-size:12.5px}.quote-parties p{color:var(--muted);align-items:flex-start;gap:4px;margin-top:3px;font-size:10px;line-height:1.45;display:flex}.quote-parties p svg{color:var(--green-2);flex-shrink:0;margin-top:1px}.quote-system-banner{background:#e1dbe1;border-radius:10px;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:17px 0;display:grid;overflow:hidden}.quote-system-banner>div{background:#f3f1f3;padding:10px 12px}.quote-system-banner span{color:var(--muted);font-size:9px;display:block}.quote-system-banner strong{color:var(--forest);font-family:var(--font-display);letter-spacing:-.03em;font-size:16px;font-weight:600;line-height:1.2;display:block}.quote-system-banner strong small{color:var(--muted);font-family:var(--font-body);font-size:9px;font-weight:400}.quote-section{border-bottom:1px solid var(--line);padding:16px 0}.quote-section-head{margin-bottom:11px}.quote-section-head h3{color:var(--ink);font-size:12.5px}.spec-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.spec-item{background:#f6f5f6;border:1px solid #e9e6e9;border-radius:9px;padding:10px 11px}.spec-item span{color:var(--muted);font-size:9px;display:block}.spec-item strong{color:var(--ink);margin-top:1px;font-size:11px;font-weight:600;display:block}.spec-item small{color:var(--muted);margin-top:1px;font-size:9px;line-height:1.4;display:block}.quote-table{font-size:10px}.quote-table th{border-bottom:1.5px solid var(--forest);color:var(--muted);padding:7px 8px}.quote-table td{padding:7px 8px}.quote-table td>span{font-size:9px}.quote-totals-section{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:20px;padding:16px 0;display:flex}.quote-incentive-note{background:#f1edf1;border-radius:9px;align-items:flex-start;gap:8px;max-width:56%;padding:10px 11px;display:flex}.quote-incentive-note>svg{color:var(--green);flex-shrink:0;margin-top:1px}.quote-incentive-note strong{color:#5e225e;font-size:10.5px;font-weight:600}.quote-incentive-note p{color:#6f366f;margin-top:2px;font-size:9.5px;line-height:1.5}.quote-totals{flex:0 0 235px}.quote-totals>div{color:var(--muted);justify-content:space-between;align-items:center;gap:10px;padding:3px 0;font-size:10px;display:flex}.quote-totals strong{color:var(--ink);font-family:var(--font-display);font-size:11px;font-weight:600}.quote-totals .discount strong{color:var(--green)}.quote-totals .grand{border-top:1.5px solid var(--forest);margin-top:4px;padding-top:7px}.quote-totals .grand span{color:var(--forest);font-weight:600}.quote-totals .grand strong{color:var(--forest);font-size:14px}.quote-totals>small{color:var(--muted);text-align:right;margin-top:4px;font-size:8.5px;display:block}.quote-return-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;display:grid}.quote-return-grid>div{background:#f4f3f4;border-radius:8px;padding:9px}.quote-return-grid span{color:var(--muted);font-size:9px;display:block}.quote-return-grid strong{color:var(--forest);font-family:var(--font-display);letter-spacing:-.02em;margin-top:1px;font-size:11.5px;font-weight:600;display:block}.quote-return-grid small{color:var(--muted);font-size:8.5px;display:block}.quote-loan-section{background:#f2f7fb;border:1px solid #dbe8f1;border-radius:9px;align-items:flex-start;gap:9px;margin:14px 0;padding:11px;display:flex}.quote-loan-icon{width:32px;height:32px;color:var(--blue);background:#e3f0f8;border-radius:8px;flex-shrink:0;place-items:center;display:grid}.quote-loan-section strong{color:#2f6c8f;font-size:10.5px;font-weight:600}.quote-loan-section p{color:#4e7389;margin-top:2px;font-size:9.5px;line-height:1.5}.quote-terms{margin:0;padding-left:15px}.quote-terms li{color:var(--muted);margin-bottom:4px;font-size:9.5px;line-height:1.55}.quote-signatures{grid-template-columns:1fr 1fr;gap:44px;margin-top:26px;display:grid}.quote-signatures>div>span{color:var(--muted);font-size:9.5px}.signature-line{border-bottom:1px solid #a47da4;height:38px}.quote-signatures small{color:var(--muted);margin-top:4px;font-size:9px;display:block}.quote-footer{border-top:2px solid var(--forest);color:var(--muted);justify-content:space-between;align-items:flex-start;gap:16px;margin-top:22px;padding-top:11px;font-size:9px;line-height:1.5;display:flex}.quote-footer strong{color:var(--forest);font-family:var(--font-display);font-size:10px;display:block}.quote-footer span{display:block}.quote-footer>div:last-child{text-align:right}.quote-sidebar{flex-direction:column;gap:13px;display:flex;position:sticky;top:90px}.quote-action-card,.quote-edit-card,.quote-source-card,.quote-cta-card{padding:18px}.quote-action-card p{color:var(--muted);margin-bottom:10px;font-size:10.5px;line-height:1.55}.quote-action-card .btn+.btn{margin-top:6px}.quote-file-meta{color:var(--muted);justify-content:space-between;align-items:center;gap:8px;margin-top:9px;font-size:9.5px;display:flex}.quote-file-meta span{align-items:center;gap:4px;display:inline-flex}.quote-edit-card .field{margin-top:9px}.quote-edit-card .field input{font-size:11px}.quote-contact{color:var(--muted);flex-wrap:wrap;gap:6px 12px;margin-top:10px;font-size:9.5px;display:flex}.quote-contact span{align-items:center;gap:4px;display:inline-flex}.source-mini-list{flex-direction:column;display:flex}.source-mini-list a{border-bottom:1px dashed var(--line);color:var(--ink-soft);justify-content:space-between;align-items:center;gap:8px;padding:6px 0;font-size:10px;line-height:1.4;text-decoration:none;display:flex}.source-mini-list a:hover{color:var(--green)}.source-mini-list svg{color:var(--green-2);flex-shrink:0}.quote-source-note{margin-top:8px}.quote-source-note p{color:var(--muted);margin-top:5px;font-size:9.5px;line-height:1.5}.quote-cta-card{color:#f0ebf0;background:radial-gradient(220px 150px at 90% 0,#d6a52b33,#0000 70%),linear-gradient(140deg,#311131,#230b23);border:0;overflow:hidden}.quote-cta-card>svg{color:var(--lime)}.quote-cta-card h3{color:#f4f1f4;margin-top:6px;font-size:12.5px}.quote-cta-card p{color:#eee2f09e;margin:3px 0 10px;font-size:10px;line-height:1.55}.references-hero-grid{grid-template-columns:minmax(0,1.42fr) minmax(300px,.78fr);align-items:stretch;gap:16px;display:grid}.program-hero-card{color:#f2eff2;background:radial-gradient(420px 260px at 88% 8%,#d6a52b2b,#0000 68%),radial-gradient(280px 220px at 10% 110%,#b45a9e24,#0000 70%),linear-gradient(138deg,#2c0f2c,#361236 55%,#3b163b);border:0;justify-content:space-between;align-items:center;gap:20px;padding:26px 28px;display:flex;overflow:hidden}.program-hero-copy{z-index:1;max-width:520px;position:relative}.program-hero-copy h2{color:#f5f2f5;letter-spacing:-.04em;max-width:470px;margin-top:10px;font-size:clamp(21px,2.5vw,29px);line-height:1.2}.program-hero-copy>p{color:#eee1f09e;max-width:470px;margin-top:7px;font-size:11px;line-height:1.65}.program-points{grid-template-columns:1fr 1fr;gap:5px 14px;margin-top:13px;display:grid}.program-points>span{color:#f0e6f1cc;align-items:flex-start;gap:5px;font-size:10.5px;line-height:1.4;display:flex}.program-points svg{color:var(--lime);flex-shrink:0;margin-top:1px}.program-actions{flex-wrap:wrap;gap:7px;margin-top:16px;display:flex}.program-hero-badge{z-index:1;text-align:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff0e;border:1px solid #d6a52b2e;border-radius:18px;flex-direction:column;flex:0 0 178px;justify-content:center;align-items:center;padding:18px 14px;display:flex;position:relative}.program-big-number{color:var(--lime);font-family:var(--font-display);letter-spacing:-.04em;font-size:34px;font-weight:700;line-height:1.05}.program-hero-badge>span{color:#f0e6f1c7;font-size:11px}.program-hero-badge>small{color:#ebdcec80;margin-top:5px;font-size:9px;line-height:1.5}.program-deadline{color:#eddbed;background:#d6a52b1a;border-radius:999px;align-items:center;gap:4px;margin-top:10px;padding:5px 8px;font-size:8.5px;display:flex}.program-deadline svg{color:var(--lime);flex-shrink:0}.eligibility-card{padding:21px}.eligibility-list{flex-direction:column;gap:7px;display:flex}.eligibility-list>div{align-items:flex-start;gap:7px;display:flex}.eligibility-list>div>span{background:var(--lime-soft);width:19px;height:19px;color:var(--green);border-radius:50%;flex-shrink:0;place-items:center;font-size:9px;font-weight:600;display:grid}.eligibility-list p{color:var(--muted);font-size:10.5px;line-height:1.45}.eligibility-card .info-note{margin-top:10px}.source-section{padding:22px}.source-grid{grid-template-columns:repeat(auto-fill,minmax(285px,1fr));gap:8px;display:grid}.source-card{border:1px solid var(--line);color:var(--ink);background:#faf8fa;border-radius:11px;align-items:flex-start;gap:9px;padding:11px;text-decoration:none;transition:border-color .16s,background .16s,transform .16s;display:flex}.source-card:hover{background:#f6f3f6;border-color:#c2b1c2;transform:translateY(-1px)}.source-index{background:var(--lime-soft);color:var(--green);font-family:var(--font-display);border-radius:5px;flex-shrink:0;padding:2px 5px;font-size:9px;font-weight:600}.source-card>div{flex:1;min-width:0}.source-card strong{color:var(--ink);font-size:11px;font-weight:600;line-height:1.35;display:block}.source-card p{color:var(--muted);margin-top:2px;font-size:9.5px;line-height:1.45}.source-url{color:var(--blue);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:8.5px;display:block;overflow:hidden}.source-card>svg{color:var(--muted-2);flex-shrink:0}.method-grid{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);align-items:start;gap:16px;display:grid}.method-card,.assumption-card{padding:22px}.method-steps{flex-direction:column;gap:12px;display:flex}.method-steps>div{align-items:flex-start;gap:9px;display:flex}.method-num{background:var(--lime-soft);width:27px;height:27px;color:var(--green);font-family:var(--font-display);border-radius:8px;flex-shrink:0;place-items:center;font-size:9.5px;font-weight:600;display:grid}.method-steps strong{color:var(--ink);font-size:11.5px;font-weight:600;display:block}.method-steps p{color:var(--muted);margin-top:2px;font-size:10px;line-height:1.55}.assumption-table{flex-direction:column;display:flex}.assumption-table>div{border-bottom:1px dashed var(--line);justify-content:space-between;align-items:center;gap:10px;padding:6px 0;font-size:10px;display:flex}.assumption-table span{color:var(--muted)}.assumption-table strong{color:var(--ink);font-family:var(--font-display);text-align:right;font-size:10px;font-weight:600}.assumption-card .info-note,.assumption-card .btn{margin-top:10px}.reference-bottom-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:16px;display:grid}.price-reference-card,.quick-facts-card{padding:22px}.benchmark-list{flex-direction:column;display:flex}.benchmark-list>div{border-bottom:1px dashed var(--line);grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;padding:8px 0;display:grid}.benchmark-list span{color:var(--ink-soft);font-size:10.5px}.benchmark-list strong.price-range{color:var(--green);font-family:var(--font-display);text-align:right;white-space:nowrap;font-size:10.5px;font-weight:600}.benchmark-list small{color:var(--muted);grid-column:1/-1;font-size:9px}.price-reference-note{color:var(--muted);margin-top:8px;font-size:9.5px;line-height:1.5}.quick-facts{flex-direction:column;gap:7px;display:flex}.quick-facts>div{color:var(--muted);align-items:flex-start;gap:6px;font-size:10px;line-height:1.45;display:flex}.quick-facts svg{color:var(--green-2);flex-shrink:0;margin-top:1px}.faq-section{padding:22px}.faq-list{flex-direction:column;gap:6px;display:flex}.faq-list details{border:1px solid var(--line);background:#faf8fa;border-radius:10px;overflow:hidden}.faq-list summary{color:var(--ink);cursor:pointer;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;font-size:11.5px;font-weight:600;list-style:none;display:flex}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary>span{color:var(--green);font-family:var(--font-display);flex-shrink:0;font-size:14px;line-height:1;transition:transform .18s}.faq-list details[open] summary{border-bottom:1px solid var(--line)}.faq-list details[open] summary>span{transform:rotate(45deg)}.faq-list details p{color:var(--muted);padding:10px 12px;font-size:10.5px;line-height:1.65}.manual-hero{background:radial-gradient(420px 180px at 10% 0,#d6a52b2e,#0000 70%),linear-gradient(135deg,#f6eef8 0%,#fff8e8 100%);border-color:#e6d4e8;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;padding:24px;display:grid}.manual-hero-icon{color:#ffe08a;background:linear-gradient(145deg,#6b2477,#4c1557);border-radius:20px;place-items:center;width:62px;height:62px;display:grid;box-shadow:0 16px 30px -18px #4c1557bf}.manual-hero-copy h2{color:var(--forest);font-family:var(--font-display);letter-spacing:-.03em;margin-top:2px;font-size:clamp(20px,2.2vw,27px);font-weight:600;line-height:1.25}.manual-hero-copy p{max-width:720px;color:var(--ink-soft);margin-top:5px;font-size:12px;line-height:1.65}.manual-hero-tags{flex-wrap:wrap;gap:7px;margin-top:11px;display:flex}.manual-hero-tags span{color:var(--green);background:#ffffffad;border:1px solid #ddc9de;border-radius:999px;align-items:center;gap:5px;padding:5px 9px;font-size:9.5px;font-weight:600;display:inline-flex}.manual-hero-meta{background:#ffffff8f;border:1px solid #74045f1f;border-radius:14px;grid-template-columns:repeat(3,auto);gap:8px;padding:10px;display:grid}.manual-hero-meta div{text-align:center;min-width:64px;padding:5px 8px}.manual-hero-meta strong{color:var(--forest);font-family:var(--font-display);font-size:18px;font-weight:600;line-height:1.1;display:block}.manual-hero-meta span{color:var(--muted);margin-top:2px;font-size:8.5px;display:block}.manual-layout{grid-template-columns:250px minmax(0,1fr);align-items:start;gap:18px;display:grid}.manual-toc{min-width:0;position:sticky;top:84px}.manual-toc-card{border:1px solid var(--line);background:var(--paper);min-width:0;box-shadow:var(--shadow-card);border-radius:18px;padding:15px}.manual-toc-head{border-bottom:1px solid var(--line);color:var(--green);align-items:center;gap:7px;padding:0 6px 9px;font-size:11px;font-weight:600;display:flex}.manual-toc-list{flex-direction:column;gap:2px;min-width:0;max-width:100%;padding-top:7px;display:flex}.manual-toc button{width:100%;color:var(--ink-soft);text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;padding:7px 6px;font-size:10.5px;transition:background .15s,color .15s;display:flex}.manual-toc button:hover{color:var(--green);background:#f3edf4}.manual-toc-index{width:22px;color:var(--muted-2);font-family:var(--font-display);flex-shrink:0;font-size:8.5px}.manual-toc-arrow{color:var(--muted-2);flex-shrink:0;margin-left:auto}.manual-toc-note{color:#7c6420;background:#faf5e7;border-radius:9px;gap:6px;margin-top:10px;padding:9px;font-size:9px;line-height:1.45;display:flex}.manual-toc-note svg{color:#b0881f;flex-shrink:0;margin-top:1px}.manual-content{flex-direction:column;gap:16px;min-width:0;display:flex}.manual-section{border:1px solid var(--line);background:var(--paper);box-shadow:var(--shadow-card);border-radius:22px;padding:24px;scroll-margin-top:90px}.manual-section-head{align-items:flex-start;gap:12px;margin-bottom:15px;display:flex}.manual-number{width:40px;height:40px;color:var(--green);font-family:var(--font-display);background:linear-gradient(145deg,#f3e7f5,#fff5db);border-radius:12px;flex-shrink:0;place-items:center;font-size:12px;font-weight:700;display:grid}.manual-section-head>div{flex:1;min-width:0}.manual-section-head h2{color:var(--forest);font-family:var(--font-display);letter-spacing:-.02em;font-size:18px;font-weight:600;line-height:1.25}.manual-section-head p{color:var(--muted);margin-top:3px;font-size:10.5px;line-height:1.5}.manual-section-icon{width:32px;height:32px;color:var(--green-2);background:#f4eef5;border-radius:9px;flex-shrink:0;place-items:center;display:grid}.manual-lead{color:var(--muted);margin-bottom:13px;font-size:11.5px;line-height:1.7}.manual-subhead{color:var(--forest);font-family:var(--font-display);margin:18px 0 10px;font-size:13.5px;font-weight:600}.manual-section .info-note{margin-top:14px}.manual-section .info-note strong{color:inherit}.manual-steps{grid-template-columns:repeat(auto-fit,minmax(205px,1fr));gap:9px;display:grid}.manual-step{border:1px solid var(--line);background:linear-gradient(160deg,#fbf8fc,#fffdf6);border-radius:14px;padding:14px}.manual-step-number{min-width:27px;height:24px;color:var(--green);font-family:var(--font-display);letter-spacing:.04em;background:#efe2f1;border-radius:7px;place-items:center;padding:0 6px;font-size:9px;font-weight:700;display:inline-grid}.manual-step h4{color:var(--ink);margin-top:8px;font-size:11.5px;line-height:1.35}.manual-step p{color:var(--muted);margin-top:4px;font-size:10px;line-height:1.6}.manual-link{color:var(--green);background:0 0;border:0;align-items:center;gap:4px;margin-top:9px;padding:0;font-size:10px;font-weight:600;display:inline-flex}.manual-link:hover{color:var(--forest);text-decoration:underline}.manual-grid{gap:10px;display:grid}.manual-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.manual-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.manual-panel{border:1px solid var(--line);background:#faf8fa;border-radius:14px;padding:15px}.manual-panel h4{color:var(--ink);align-items:center;gap:6px;font-size:11.5px;line-height:1.35;display:flex}.manual-panel h4 svg{color:var(--green-2);flex-shrink:0}.manual-panel>p{color:var(--muted);margin-top:6px;font-size:10.5px;line-height:1.65}.manual-panel .manual-list{margin-top:7px}.manual-design-step{position:relative}.manual-design-step .manual-step-number{position:absolute;top:13px;right:13px}.manual-design-step h4{padding-right:38px}.manual-list{flex-direction:column;gap:6px;display:flex}.manual-list li{color:var(--muted);align-items:flex-start;gap:6px;font-size:10px;line-height:1.55;display:flex}.manual-list li svg{color:var(--green-2);flex-shrink:0;margin-top:1.5px}.manual-list li strong{color:var(--ink-soft);font-weight:600}.manual-inline-plus{background:var(--lime-soft);width:14px;height:14px;color:var(--green);border-radius:4px;flex-shrink:0;place-items:center;margin-top:1px;font-size:12px;font-weight:700;line-height:1;display:grid}.manual-guide-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.manual-guide-card{border:1px solid var(--line);background:#fffdf7;border-radius:13px;align-items:flex-start;gap:10px;padding:13px;display:flex}.manual-guide-icon{width:31px;height:31px;color:var(--green);background:#efe4f0;border-radius:9px;flex-shrink:0;place-items:center;display:grid}.manual-guide-card>div{min-width:0}.manual-guide-card h4{color:var(--ink);font-size:11px}.manual-guide-card p{color:var(--muted);margin-top:3px;font-size:9.5px;line-height:1.5}.manual-guide-card .manual-list{gap:4px;margin-top:6px}.manual-guide-card .manual-list li{font-size:9.5px}.manual-faq{flex-direction:column;gap:6px;display:flex}.manual-faq details{border:1px solid var(--line);background:#faf8fa;border-radius:11px;overflow:hidden}.manual-faq summary{color:var(--ink);cursor:pointer;align-items:center;gap:9px;padding:10px 12px;font-size:11px;font-weight:600;list-style:none;display:flex}.manual-faq summary::-webkit-details-marker{display:none}.manual-faq-index{color:var(--green);font-family:var(--font-display);flex-shrink:0;font-size:9px}.manual-faq summary>span:nth-child(2){flex:1}.manual-faq summary>svg{color:var(--muted-2);flex-shrink:0;transition:transform .18s}.manual-faq details[open] summary{border-bottom:1px solid var(--line)}.manual-faq details[open] summary>svg{transform:rotate(90deg)}.manual-faq details p{color:var(--muted);padding:10px 12px;font-size:10.5px;line-height:1.7}.manual-glossary{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;display:grid}.manual-glossary-item{border:1px solid var(--line);background:#faf8fa;border-radius:11px;padding:11px}.manual-glossary-item strong{color:var(--green);font-family:var(--font-display);font-size:10.5px;display:block}.manual-glossary-item p{color:var(--muted);margin-top:3px;font-size:9.5px;line-height:1.55}.manual-cta{background:linear-gradient(135deg,#f6edf8,#fff8e6);border:1px solid #e3d0e5;border-radius:15px;justify-content:space-between;align-items:center;gap:14px;margin-top:16px;padding:16px;display:flex}.manual-cta h3{color:var(--forest);font-family:var(--font-display);margin-top:3px;font-size:15px;font-weight:600}.manual-cta p{color:var(--muted);margin-top:3px;font-size:10px;line-height:1.5}.manual-cta-actions{flex-wrap:wrap;flex-shrink:0;gap:7px;display:flex}@media print{.manual-page>.page-header{display:block}.manual-hero{box-shadow:none;background:0 0;border:0;border-radius:0;padding:0 0 12px;display:block}.manual-hero-icon,.manual-hero-meta{display:none}.manual-layout{display:block}.manual-toc{display:none}.manual-section{box-shadow:none;background:#fff;border:0;border-bottom:1px solid #ddd;border-radius:0;margin:0 0 14px;padding:0 0 14px}.manual-section-head{break-after:avoid;page-break-after:avoid;margin-bottom:8px}.manual-step,.manual-panel,.manual-guide-card,.manual-glossary-item,.manual-faq details{break-inside:avoid;page-break-inside:avoid}.manual-steps,.manual-grid,.manual-guide-grid,.manual-glossary{gap:6px}.manual-cta{display:none}}@media (width<=1280px){.app-content{padding:26px 24px 38px}.topbar{padding:0 24px}.app-footer{padding:4px 24px 26px}.design-layout{grid-template-columns:minmax(0,1fr) 310px}.save-state{display:none}}@media (width<=1120px){.overview-hero-grid,.finance-hero-grid,.references-hero-grid,.dashboard-grid.two-one,.dashboard-grid.chart-equipment,.finance-two-col,.finance-bottom-grid,.equipment-bottom-grid,.method-grid,.reference-bottom-grid,.simulation-bottom-grid,.design-layout{grid-template-columns:minmax(0,1fr)}.design-summary{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;display:grid;position:static}.simulation-main-grid{grid-template-columns:minmax(0,1fr)}.sim-side{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;display:grid}.stats-grid,.equipment-top-stats,.finance-kpi-grid,.reference-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.quote-layout{grid-template-columns:minmax(0,1fr)}.quote-sidebar{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid;position:static}.quote-cta-card{grid-column:span 2}.program-hero-card{align-items:flex-start}.program-hero-badge{flex:0 0 168px}}@media (width<=900px){.sidebar{display:none}.mobile-nav{z-index:60;padding:7px 4px calc(7px + env(safe-area-inset-bottom));border-top:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);scrollbar-width:none;background:#fffbfef0;justify-content:flex-start;align-items:stretch;gap:1px;display:flex;position:fixed;bottom:0;left:0;right:0;overflow-x:auto;box-shadow:0 -10px 30px -22px #3b0a4d80}.mobile-nav::-webkit-scrollbar{display:none}.mobile-nav button{min-width:50px;color:var(--muted);background:0 0;border:0;border-radius:9px;flex-direction:column;flex:1 0 50px;align-items:center;gap:3px;padding:4px 2px;font-size:9.5px;transition:color .16s,background .16s;display:flex}.mobile-nav button.active{color:var(--green);background:#eee9ee;font-weight:600}.app-content{padding:20px 18px 96px}.app-footer{padding:0 18px 92px}.topbar{min-height:63px;padding:0 18px}.topbar-mobile-brand{display:flex}.breadcrumb,.topbar-price,.price-badge{display:none}.topbar-right{margin-left:auto}.topbar-quote{padding:8px 10px}.topbar-quote span{display:none}.hero-card{grid-template-columns:minmax(0,1fr);min-height:0}.hero-copy{padding:26px 24px 8px}.hero-art{min-height:245px;padding:0 4px 14px}.hero-scene{max-width:410px}.hero-float-card.float-savings{bottom:20px;left:18px}.hero-float-card.float-co2{top:12px;right:18px}.design-summary,.sim-side,.quote-sidebar{grid-template-columns:minmax(0,1fr)}.quote-cta-card{grid-column:auto}.scenario-grid{grid-template-columns:minmax(0,1fr)}.panel-grid{grid-template-columns:repeat(auto-fill,minmax(215px,1fr))}.inverter-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}.quote-paper{padding:28px 26px}.quote-system-banner,.quote-return-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quote-parties{grid-template-columns:minmax(0,1fr)}.program-hero-card{flex-direction:column;align-items:stretch}.program-hero-badge{flex:none;align-self:flex-start;width:178px}.program-hero-copy h2{max-width:none}}@media (width<=640px){.page{gap:13px}.card,.form-card,.chart-card,.equipment-section,.simulation-controls,.flow-card,.live-status-card,.sim-summary-card,.daily-chart-card,.monthly-production-card,.scenario-card,.sensitivity-card,.impact-card,.loan-card,.assumptions-card,.capex-card,.source-section,.method-card,.assumption-card,.price-reference-card,.quick-facts-card,.faq-section,.status-card,.payback-card,.equipment-summary,.quote-action-card,.quote-edit-card,.quote-source-card,.quote-cta-card{padding:17px}.app-content{padding:16px 13px 94px}.page-header h1{font-size:24px}.page-header p{font-size:11.5px}.page-header-actions{width:100%}.page-header-actions .btn{flex:1}.stats-grid,.equipment-top-stats,.finance-kpi-grid,.reference-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.donut-layout{grid-template-columns:minmax(0,1fr);gap:4px}.donut-wrap{min-height:230px}.stat-card{padding:14px 13px 12px}.stat-value{font-size:19px}.stat-sub{font-size:9.5px}.hero-copy{padding:21px 17px 4px}.hero-copy h2{font-size:clamp(27px,8vw,36px)}.hero-copy>p{font-size:11.5px}.hero-metrics{gap:9px 16px;margin-top:14px}.hero-metrics strong{font-size:13.5px}.hero-actions{margin-top:14px}.hero-actions .btn{flex:1}.hero-art{min-height:205px}.hero-float-card{padding:6px 8px}.hero-float-card.float-savings{bottom:10px;left:10px}.hero-float-card.float-co2{top:4px;right:10px}.float-icon{width:24px;height:24px}.float-icon svg{width:13px;height:13px}.float-card strong,.hero-float-card strong{font-size:10.5px}.capacity-editor{gap:8px}.capacity-step{width:33px;height:33px}.capacity-input-wrap{flex:1;justify-content:center}.capacity-input-wrap input{width:84px;font-size:27px}.capacity-note{border-top:1px dashed var(--line-strong);border-left:0;flex-wrap:wrap;align-items:baseline;gap:3px 7px;width:100%;margin-left:0;padding:7px 0 0;display:flex}.capacity-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.form-card-head{flex-wrap:wrap}.form-card-head>.badge{margin-left:0}.form-grid.two,.system-type-grid,.incentive-grid{grid-template-columns:minmax(0,1fr)}.roof-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.battery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.kwh-result{grid-template-columns:minmax(0,1fr)}.usage-estimate{grid-template-columns:minmax(0,1fr);gap:6px}.incentive-card .select-check{align-self:flex-end;margin-top:2px;position:static}.next-step-banner{flex-direction:column;align-items:flex-start;padding:19px}.next-step-actions{width:100%}.next-step-actions .btn{flex:1}.equipment-row{grid-template-columns:30px minmax(0,1fr)}.equipment-price{grid-column:2;justify-self:start}.panel-grid,.inverter-grid{grid-template-columns:minmax(0,1fr)}.auto-inverter{align-items:flex-start}.auto-inverter-icon{width:33px;height:33px}.bom-summary{gap:10px}.bom-summary-metrics{justify-content:space-between;width:100%}.bom-summary>.btn{width:100%;margin-left:0}.benchmark-row .badge{margin-left:0}.month-strip{align-items:flex-start}.month-pills button{min-width:28px}.month-badge{margin-left:0}.time-controller{align-items:flex-start}.time-slider{flex-basis:calc(100% - 56px)}.time-status{margin-left:auto}.energy-flow{height:386px}.flow-node{border-radius:10px;min-width:82px;padding:5px 6px}.flow-node strong{font-size:10px}.node-icon{border-radius:7px;width:23px;height:23px;margin-top:-16px}.node-icon svg{width:14px;height:14px}.node-kicker{font-size:6.5px}.node-sub{display:none}.battery-mini{width:40px;margin:1px 0 0}.node-solar{left:18%!important}.node-home,.node-grid{left:82%!important}.flow-status{flex-direction:column;align-items:flex-start;gap:4px;bottom:7px;left:8px;right:8px}.flow-footer{font-size:9px}.finance-hero-card,.program-hero-card{flex-direction:column;align-items:flex-start;padding:20px}.finance-return-visual{align-self:center}.return-ring{width:132px;height:132px}.return-ring-inner{width:104px;height:104px}.loan-inputs,.loan-result,.assumption-summary,.assumption-grid{grid-template-columns:minmax(0,1fr)}.sensitivity-head span,.sensitivity-row>span,.sensitivity-row>strong{padding:6px 4px;font-size:8.5px}.sensitivity-head span:first-child,.sensitivity-row>span{font-size:9px}.quote-paper{border-radius:8px;padding:20px 15px}.quote-head{flex-wrap:wrap;gap:10px}.quote-title{text-align:left}.quote-meta{text-align:left;flex-wrap:wrap;gap:5px 14px;width:100%;display:flex}.quote-meta>div{margin-bottom:0}.quote-system-banner,.quote-return-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.spec-grid{grid-template-columns:minmax(0,1fr)}.quote-totals-section{flex-direction:column}.quote-incentive-note{max-width:100%}.quote-totals{flex-basis:auto;width:100%}.quote-signatures{grid-template-columns:minmax(0,1fr);gap:24px}.quote-footer{flex-direction:column}.quote-footer>div:last-child{text-align:left}.program-hero-card{padding:20px}.program-points{grid-template-columns:minmax(0,1fr)}.program-hero-badge{align-self:stretch;width:100%}.source-grid{grid-template-columns:minmax(0,1fr)}.app-footer{padding:0 13px 88px;font-size:10px}.next-step-actions .btn,.summary-actions .btn{min-height:38px}.rotated{transform:rotate(180deg)}}.rotated{transform:rotate(180deg)}@media (width<=400px){.project-modal-fields{grid-template-columns:minmax(0,1fr)}.project-modal{width:calc(100vw - 26px);padding:18px}.battery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.roof-grid,.quote-system-banner,.quote-return-grid{grid-template-columns:minmax(0,1fr)}.mobile-nav button{font-size:9px}.hero-float-card.float-co2{display:none}.month-pills button{min-width:26px;font-size:9.5px}}@page{size:A4;margin:12mm}@media print{html,body{background:#fff!important}*{-webkit-print-color-adjust:exact;print-color-adjust:exact}.sidebar,.topbar,.mobile-nav,.app-footer,.page-header-actions,.quote-sidebar{display:none!important}.app-content{max-width:none;padding:0!important}.page{gap:0;animation:none}.quote-page>.page-header{display:none}.quote-layout{display:block}.quote-paper{box-shadow:none;background:#fff;border:0;border-radius:0;padding:0;overflow:visible}.quote-watermark{color:#74045f0a}.quote-table{font-size:8pt}.quote-table tr,.quote-section,.quote-totals-section,.quote-signatures,.quote-footer{page-break-inside:avoid}.btn{display:none!important}}.topbar-project{display:none}.project-modal-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.project-manager{border:1px solid var(--line);background:var(--paper);border-radius:22px;flex-direction:column;width:min(860px,100vw - 40px);max-height:88vh;display:flex;overflow:hidden;box-shadow:0 30px 80px -28px #24042ea6}.project-manager.manager-form-mode{width:min(500px,100vw - 40px)}.project-manager-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;padding:20px 22px 15px;display:flex}.project-manager-head>div:first-child{min-width:0}.project-manager-head span{color:var(--green);font-family:var(--font-display);letter-spacing:.14em;font-size:9px;display:block}.project-manager-head h3{color:var(--ink);align-items:center;gap:8px;margin-top:2px;font-size:14px;display:flex}.project-manager-head h3 small{background:var(--lime-soft);min-width:21px;height:21px;color:var(--green);font-family:var(--font-body);letter-spacing:0;border-radius:999px;justify-content:center;align-items:center;padding:0 6px;font-size:10.5px;font-weight:700;display:inline-flex}.project-toolbar{border-bottom:1px solid var(--line);background:#fffdfb;align-items:center;gap:8px;padding:14px 22px;display:flex}.project-search{flex:1;min-width:0;position:relative}.project-search svg{color:var(--muted-2);pointer-events:none;position:absolute;top:50%;left:11px;transform:translateY(-50%)}.project-search input{border:1px solid var(--line-strong);width:100%;color:var(--ink);background:#f9f8f9;border-radius:10px;outline:none;padding:10px 12px 10px 34px;font-size:12px;transition:border-color .16s,box-shadow .16s,background .16s}.project-search input:focus{border-color:var(--green-2);background:#fff;box-shadow:0 0 0 3px #8c1a761f}.project-toolbar .btn{flex-shrink:0}.project-feedback{border:1px solid #0000;border-radius:10px;margin:12px 22px 0;padding:9px 11px;font-size:11.5px;line-height:1.4}.project-feedback.success{color:#3f6737;background:#f0f8ee;border-color:#5e825238}.project-feedback.error{color:#9d3c3c;background:#fdf0ef;border-color:#af44442e}.project-list{flex-direction:column;flex:1;gap:8px;min-height:220px;padding:14px 16px 16px;display:flex;overflow-y:auto}.project-list-item{border:1px solid var(--line);background:#fffdfb;border-radius:14px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:12px 13px;transition:border-color .16s,background .16s,box-shadow .16s;display:grid}.project-list-item:hover{border-color:var(--line-strong);background:#fff;box-shadow:0 10px 22px -20px #3b0a4d8c}.project-list-item.is-active{background:linear-gradient(135deg,#74045f0e,#d6a52b0e);border-color:#74045f52}.project-list-main{min-width:0;color:inherit;text-align:left;background:0 0;border:0;flex-direction:column;gap:2px;padding:2px 0;display:flex}.project-list-title{min-width:0;color:var(--ink);align-items:center;gap:7px;font-size:12.5px;font-weight:650;display:flex}.project-list-title>span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-active-pill{background:var(--lime-soft);color:var(--green);letter-spacing:.02em;border-radius:999px;flex-shrink:0;padding:2px 6px;font-size:9px;font-weight:700}.project-list-customer,.project-list-updated{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.project-list-updated{color:var(--muted-2);font-size:10px}.project-list-metrics{flex-shrink:0;gap:18px;display:flex}.project-metric{flex-direction:column;align-items:flex-end;gap:1px;min-width:74px;display:flex}.project-metric span{color:var(--muted-2);letter-spacing:.04em;white-space:nowrap;font-size:9px}.project-metric strong{color:var(--ink-soft);white-space:nowrap;font-size:11.5px;font-weight:650}.project-list-actions{flex-shrink:0;gap:3px;display:flex}.project-icon-btn{border:1px solid var(--line);width:30px;height:30px;color:var(--muted);background:#fffdfb;border-radius:9px;place-items:center;transition:border-color .16s,background .16s,color .16s;display:grid}.project-icon-btn:hover{border-color:var(--line-strong);color:var(--green);background:#f4eef5}.project-icon-btn.danger:hover{color:var(--red);background:#fdf0ee;border-color:#cf5f4b47}.project-list-empty{min-height:190px;color:var(--muted);text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:5px;padding:24px;display:flex}.project-list-empty svg{color:var(--muted-2);margin-bottom:4px}.project-list-empty strong{color:var(--ink-soft);font-size:12px}.project-list-empty span{font-size:11px}.project-manager-footer{border-top:1px solid var(--line);background:#fbf7fb;justify-content:space-between;align-items:center;gap:14px;padding:12px 22px;display:flex}.project-footer-copy{flex-direction:column;gap:1px;min-width:0;display:flex}.project-footer-copy strong{color:var(--ink-soft);font-size:11px;font-weight:650}.project-footer-copy span{color:var(--muted);font-size:10px}.project-footer-actions{flex-shrink:0;gap:6px;display:flex}.project-form{padding:18px 22px 20px;overflow-y:auto}.project-form-lead{color:var(--muted);margin-bottom:14px;font-size:11.5px;line-height:1.55}.project-form-fields{flex-direction:column;gap:10px;display:flex}.project-form-actions{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;margin-top:18px;padding-top:14px;display:flex}@media (width<=900px){.topbar-project{display:inline-flex}}@media (width<=760px){.project-manager{width:calc(100vw - 24px);max-height:92vh}.project-manager.manager-form-mode{width:calc(100vw - 24px)}.project-toolbar{flex-wrap:wrap}.project-toolbar .btn{width:100%}.project-list-item{grid-template-columns:minmax(0,1fr) auto;gap:9px 10px}.project-list-metrics{grid-column:1/-1;justify-content:space-between;gap:8px}.project-metric{text-align:left;align-items:flex-start;min-width:0}.project-list-actions{grid-area:1/2}.project-manager-footer{flex-direction:column;align-items:stretch}.project-footer-actions .btn{flex:1}}@media (width<=480px){.project-manager,.project-manager.manager-form-mode{width:calc(100vw - 18px)}.project-manager-head{padding:16px 16px 12px}.project-toolbar,.project-manager-footer{padding-left:16px;padding-right:16px}.project-feedback{margin-left:16px;margin-right:16px}.project-list{padding-left:12px;padding-right:12px}.project-form{padding-left:16px;padding-right:16px}.project-modal-fields{grid-template-columns:minmax(0,1fr)}.project-list-metrics{flex-wrap:wrap}.project-footer-actions{width:100%}}@media print{.project-modal-backdrop{display:none!important}}.quote-history-empty{color:var(--muted);font-size:11.5px;line-height:1.5}.quote-history-list{flex-direction:column;gap:8px;display:flex}.quote-revision-item{border:1px solid var(--line);background:#fffdfb;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;padding:10px 11px;display:flex}.quote-revision-copy{flex-direction:column;gap:2px;min-width:0;display:flex}.quote-revision-copy strong{color:var(--ink);font-size:11.5px;font-weight:650}.quote-revision-copy span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:10.5px;overflow:hidden}.quote-revision-copy small{color:var(--muted-2);white-space:nowrap;font-size:10px}.quote-revision-actions{flex-shrink:0;gap:4px;display:flex}.auth-loading{min-height:100vh;color:var(--muted);place-items:center;font-size:13px;display:grid}.auth-screen{background:radial-gradient(900px 520px at 92% -12%, #e9cdee8c 0%, transparent 62%), radial-gradient(760px 420px at -8% 18%, #ebdaf080 0%, transparent 58%), var(--cream);place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{border:1px solid var(--line);background:var(--paper);width:min(460px,100%);box-shadow:var(--shadow-float);border-radius:24px;padding:28px}.auth-brand{align-items:center;gap:12px;margin-bottom:18px;display:flex}.auth-brand>div{flex-direction:column;gap:2px;display:flex}.auth-brand strong{color:var(--ink);font-family:var(--font-display);letter-spacing:.08em;font-size:14px}.auth-brand span{color:var(--muted);letter-spacing:.18em;font-size:9.5px}.auth-copy{margin-bottom:18px}.auth-copy h1{color:var(--ink);margin-bottom:6px;font-size:20px}.auth-copy p{color:var(--muted);font-size:12px;line-height:1.6}.auth-note{color:var(--muted);align-items:center;gap:8px;margin-top:14px;font-size:11.5px;display:flex}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=1280px){.manual-layout{grid-template-columns:1fr}.manual-toc{position:static}.manual-toc-list{flex-direction:row;gap:6px;padding-bottom:4px;overflow-x:auto}.manual-toc button{background:#faf8fa;flex:none;width:auto;min-width:180px}.manual-toc-arrow,.manual-toc-note{display:none}.manual-hero{grid-template-columns:auto minmax(0,1fr)}.manual-hero-meta{grid-column:1/-1;grid-template-columns:repeat(3,1fr)}}@media (width<=640px){.manual-hero{grid-template-columns:1fr;gap:12px}.manual-hero-icon{border-radius:15px;width:48px;height:48px}.manual-hero-meta{grid-column:auto}.manual-grid.two,.manual-grid.three,.manual-guide-grid{grid-template-columns:1fr}.manual-section{padding:18px}.manual-section-head h2{font-size:16px}.manual-number{width:34px;height:34px}.manual-section-icon{display:none}.manual-cta{flex-direction:column;align-items:flex-start}.manual-cta-actions{width:100%}.manual-cta-actions .btn{flex:1}}
