:root{--bg:#080b12;--surface:#0f1319;--surface-2:#161b25;--surface-3:#1c2230;--border:#222a3a;--border-light:#2e3850;--text:#dce1ed;--text-dim:#7a84a0;--text-muted:#4e5670;--accent-fw:#3b82f6;--accent-sw:#8b5cf6;--accent-o2:#22d3ee;--accent-water:#2563eb;--accent-green:#10b981;--accent-amber:#f59e0b;--accent-red:#ef4444;--accent-pink:#ec4899;--accent-indigo:#6366f1;--accent-orange:#f97316;--accent-teal:#06b6d4;--xtb:#3d9bff;--trinity:#c76dff;--radius:12px;--radius-sm:8px}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);min-height:100vh;font-family:Outfit,sans-serif;overflow-x:hidden}.override-badge{letter-spacing:.5px;text-transform:uppercase;border-radius:3px;align-items:center;gap:3px;padding:2px 7px;font-size:8px;font-weight:700;display:inline-flex}.override-badge.auto{color:var(--accent-green);background:#10b9811a}.override-badge.manual{color:var(--accent-amber);background:#f59e0b1f;animation:2s ease-in-out overridePulse}@keyframes overridePulse{0%{box-shadow:0 0 #f59e0b4d}70%{box-shadow:0 0 0 6px #f59e0b00}to{box-shadow:0 0 #f59e0b00}}.unit-override-select{cursor:pointer;transition:border-color .2s;border:1px solid var(--border)!important;color:#1f2937!important;background:#fff!important;border-radius:5px!important;outline:none!important;padding:5px 8px!important;font-family:JetBrains Mono,monospace!important;font-size:10px!important}.unit-override-select option{color:#1f2937;background:#fff}.unit-override-select:focus{border-color:var(--accent-amber)!important}.unit-override-select.is-overridden{border-color:var(--accent-amber)!important;background:#fff7eb!important}.override-reset{color:var(--accent-amber);cursor:pointer;background:0 0;border:1px solid #f59e0b4d;border-radius:4px;margin-left:6px;padding:3px 8px;font-family:Outfit,sans-serif;font-size:9px;font-weight:600;transition:all .2s}.override-reset:hover{border-color:var(--accent-amber);background:#f59e0b1a}.landing{z-index:1000;justify-content:center;align-items:center;width:100%;height:100%;transition:opacity .6s,visibility .6s;display:flex;position:fixed;top:0;left:0}.landing.hidden{opacity:0;visibility:hidden;pointer-events:none}.landing video{object-fit:cover;width:100%;height:100%;position:absolute;top:0;left:0}.landing-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#06080eb8;width:100%;height:100%;position:absolute;top:0;left:0}.landing-content{z-index:2;text-align:center;max-width:640px;padding:24px;animation:.8s fadeSlideUp;position:relative}.landing-logo{opacity:.9;margin-bottom:20px}.landing-logo img{width:auto;height:32px}.landing-title{letter-spacing:-1px;color:#fff;margin-bottom:10px;font-size:clamp(28px,5vw,42px);font-weight:800;line-height:1.15}.landing-title span{background:linear-gradient(135deg,var(--accent-fw),var(--accent-o2));-webkit-text-fill-color:transparent;-webkit-background-clip:text}.landing-sub{color:var(--text-dim);margin-bottom:36px;font-size:14px;line-height:1.6}.mode-selector{justify-content:center;gap:14px;display:flex}.mode-btn{border-radius:var(--radius);letter-spacing:.5px;cursor:pointer;border:1.5px solid var(--border);padding:14px 36px;font-family:Outfit,sans-serif;font-size:14px;font-weight:700;transition:all .3s}.mode-btn.customer{color:var(--accent-green);background:#10b98114;border-color:#10b9814d}.mode-btn.customer:hover{border-color:var(--accent-green);background:#10b9812e;box-shadow:0 4px 20px #10b98133}.mode-btn.moleaer{color:var(--accent-fw);background:#3b82f614;border-color:#3b82f64d}.mode-btn.moleaer:hover{border-color:var(--accent-fw);background:#3b82f62e;box-shadow:0 4px 20px #3b82f633}.mode-btn.start{color:#5aa9ff;letter-spacing:.4px;box-shadow:none;background:#5aa9ff26;border:1.5px solid #5aa9ff8c;border-radius:10px;padding:16px 60px;font-size:15px}.mode-btn.start:hover{color:#8fc3ff;background:#5aa9ff3b;border-color:#5aa9ff;transform:translateY(-1px);box-shadow:0 0 0 3px #5aa9ff1f}.topbar{background:var(--bg);z-index:100;border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;height:64px;padding:0 clamp(12px,4vw,40px);display:flex;position:sticky;top:0;box-shadow:0 2px 16px #00000040}.moleaer-logo{height:32px;display:block}.topbar-steps{flex-wrap:wrap;align-items:center;gap:2px;display:flex}.step-pill{letter-spacing:.4px;color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:16px;padding:5px 12px;font-size:10px;font-weight:600;transition:all .3s}.step-pill.active{color:#fff;background:var(--surface-3);border-color:var(--border-light)}.step-pill.completed{color:var(--accent-green);border-color:#10b98140}.step-connector{background:var(--border);width:12px;height:1px}.topbar-mode{letter-spacing:1px;text-transform:uppercase;cursor:pointer;border-radius:4px;padding:4px 10px;font-family:JetBrains Mono,monospace;font-size:9px;font-weight:700}.topbar-mode.customer-mode{color:var(--accent-green);background:#10b9811a;border:1px solid #10b98133}.topbar-mode.moleaer-mode{color:var(--accent-fw);background:#3b82f61a;border:1px solid #3b82f633}.main{max-width:1200px;margin:0 auto;padding:24px 20px 80px}.view{display:none}.view.active{animation:.4s fadeSlideUp;display:block}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.section-block{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:16px;padding:20px}.section-block h2{letter-spacing:1px;text-transform:uppercase;color:var(--text-dim);margin-bottom:16px;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:700}.section-block h2 .dot{vertical-align:middle;border-radius:3px;width:7px;height:7px;margin-right:7px;display:inline-block}.form-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;display:grid}.form-group{flex-direction:column;gap:4px;display:flex}.form-group label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.5px;font-size:10px;font-weight:600}.form-group input,.form-group select{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);outline:none;padding:9px 11px;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:500;transition:border-color .2s}.form-group input:focus,.form-group select:focus{border-color:var(--accent-fw)}.form-group input::placeholder{color:var(--text-muted)}.form-group select option{background:var(--surface-2)}.form-group .field-error{border-color:var(--accent-red)!important}.error-msg{color:var(--accent-red);margin-top:1px;font-size:9px}.tank-groups-container{flex-direction:column;gap:10px;margin-top:10px;display:flex}.tg-card{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:14px;position:relative}.tg-card-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.tg-card-title{font-family:JetBrains Mono,monospace;font-size:12px;font-weight:700}.tg-remove{border:1px solid var(--border);color:var(--accent-red);cursor:pointer;background:0 0;border-radius:5px;padding:3px 8px;font-family:Outfit,sans-serif;font-size:10px;font-weight:600;transition:all .2s}.tg-remove:hover{border-color:var(--accent-red);background:#ef44441a}.btn{border-radius:var(--radius-sm);cursor:pointer;letter-spacing:.3px;border:none;align-items:center;gap:6px;padding:9px 18px;font-family:Outfit,sans-serif;font-size:12px;font-weight:600;transition:all .25s;display:inline-flex}.btn-primary{background:linear-gradient(135deg,var(--accent-fw),var(--accent-sw));color:#fff;box-shadow:0 4px 16px #3b82f633}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 6px 24px #3b82f64d}.btn-ghost{background:var(--surface-2);color:var(--text-dim);border:1px solid var(--border)}.btn-ghost:hover{border-color:var(--border-light);color:var(--text)}.btn-add{color:var(--accent-green);background:#10b98114;border:1px dashed #10b9814d;justify-content:center;width:100%;padding:10px}.btn-add:hover{border-color:var(--accent-green);background:#10b98124}.actions-bar{justify-content:space-between;gap:10px;margin-top:20px;display:flex}.results-header{text-align:center;margin-bottom:24px}.results-header h1{letter-spacing:-.5px;color:#fff;margin-bottom:4px;font-family:Outfit,sans-serif;font-size:22px;font-weight:700}.results-header p{color:var(--text-dim);font-size:12px}.rec-section{margin-bottom:24px}.rec-section-header{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;padding-bottom:8px;display:flex}.rec-section-badge{letter-spacing:.8px;text-transform:uppercase;border-radius:5px;padding:3px 8px;font-family:JetBrains Mono,monospace;font-size:9px;font-weight:700}.rec-section-title{font-size:14px;font-weight:700}.rec-section-meta{color:var(--text-dim);margin-left:auto;font-family:JetBrains Mono,monospace;font-size:11px}.rec-options{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));align-items:stretch;gap:16px;display:grid}.rec-card{background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius);cursor:pointer;flex-direction:column;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex;position:relative;overflow:hidden}.rec-card:hover{border-color:var(--accent-indigo);transform:translateY(-2px)}.rec-card.selected{border-width:2.5px!important;border-color:#ff7a00!important;box-shadow:0 0 0 1px #ff7a00,0 0 22px #ff7a0073!important}.rec-card.selected .rec-card-label .select-chip{color:#1a0d00;background:#ff7a00}.rec-card .select-chip{letter-spacing:.5px;color:var(--accent-indigo);text-transform:uppercase;background:#6366f12e;border-radius:3px;margin-left:auto;padding:2px 7px;font-size:9px;font-weight:800}.rec-card-body{flex-direction:column;flex:1;display:flex}.gauge2{border-top:1px dashed var(--border);flex-direction:column;align-items:center;margin-top:auto;padding-top:12px;display:flex}.gauge2-svg{width:230px;height:135px}.gauge2-lbl{color:var(--text-dim);text-transform:uppercase;letter-spacing:.6px;margin-top:4px;font-size:10px;font-weight:700}.gauge2-legend{color:var(--text-dim);gap:10px;margin-top:6px;font-size:9px;display:flex}.gauge2-legend span{align-items:center;gap:4px;display:flex}.gauge2-legend i{border-radius:2px;width:8px;height:8px;display:inline-block}.report-status{color:var(--text-dim);min-height:16px;margin-bottom:10px;font-size:12px}.report-status.err{color:#f87171}.report-preview-wrap{border:1px solid var(--border);border-radius:var(--radius);background:#525659;overflow:hidden}.report-preview{background:#525659;border:0;width:100%;height:78vh;min-height:520px;display:block}.gauge-price-row{border-top:1px dashed var(--border);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:12px;margin-top:auto;padding-top:12px;display:grid}.gauge-price-row .gauge2{border-top:none;margin-top:0;padding-top:0}.gauge-price-row .gauge2-svg{width:100%;max-width:190px;height:auto}.gauge-price-row .gauge2-legend{flex-wrap:wrap;justify-content:center;gap:4px 8px}.price-panel{background:var(--surface-2);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:8px;padding:10px 12px;display:flex}.pp-label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.6px;font-size:9px;font-weight:700}.pp-val{color:var(--text);font-family:JetBrains Mono,monospace;font-size:15px;font-weight:700}.pp-val.pp-total{color:var(--accent-fw);font-size:18px}.pp-meta{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:9px;line-height:1.5}.rec-card-label{letter-spacing:.6px;text-transform:uppercase;border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:6px;padding:8px 14px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700;display:flex}.rec-card-label .tag{border-radius:3px;padding:2px 6px;font-size:8px;font-weight:700}.rec-card-body{padding:12px 14px}.rec-table{border-collapse:collapse;width:100%;font-size:11px}.rec-table th{text-align:left;color:var(--text-muted);text-transform:uppercase;letter-spacing:.4px;border-bottom:1px solid var(--border);padding:5px 8px 5px 0;font-size:10px;font-weight:500}.rec-table td{border-bottom:1px solid #222a3a80;padding:6px 8px 6px 0;font-family:JetBrains Mono,monospace;font-size:11px}.rec-table tr:last-child td{border-bottom:none}.val-o2{color:var(--accent-o2)}.val-water{color:var(--accent-fw)}.val-green{color:var(--accent-green)}.val-amber{color:var(--accent-amber)}.val-red{color:var(--accent-red)}.val-xtb{color:var(--xtb)}.val-trinity{color:var(--trinity)}.status-badge{border-radius:3px;align-items:center;gap:3px;padding:2px 6px;font-size:9px;font-weight:700;display:inline-flex}.status-badge.ok{color:var(--accent-green);background:#10b9811a}.status-badge.warn{color:var(--accent-amber);background:#f59e0b1a}.status-badge.conflict{color:var(--accent-red);background:#ef44441a}.totals-bar{border-radius:var(--radius);background:linear-gradient(135deg,#2563eb0f,#22d3ee0f);border:1px solid #2563eb26;flex-wrap:wrap;gap:20px;margin-bottom:20px;padding:14px 18px;display:flex}.totals-item{text-align:center;flex:1;min-width:90px}.totals-label{text-transform:uppercase;letter-spacing:.7px;color:var(--text-dim);margin-bottom:2px;font-size:9px}.totals-value{color:#fff;font-family:JetBrains Mono,monospace;font-size:14px;font-weight:700}.option-selector{justify-content:center;margin-bottom:20px;display:flex}.toggle-switch-results{background:var(--surface-2);border:1px solid var(--border);cursor:pointer;border-radius:8px;display:flex;position:relative;overflow:hidden}.toggle-opt{z-index:2;letter-spacing:.5px;text-transform:uppercase;color:var(--text-dim);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;padding:8px 18px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:600;transition:color .3s;position:relative}.toggle-opt.active{color:#fff}.toggle-slider-results{background:linear-gradient(135deg,var(--accent-fw),var(--accent-sw));z-index:1;border-radius:6px;width:calc(50% - 3px);height:calc(100% - 6px);transition:transform .35s cubic-bezier(.4,0,.2,1);position:absolute;top:3px;left:3px;box-shadow:0 2px 10px #3b82f633}.toggle-slider-results.tank-only{transform:translate(100%)}.grand-total-card{border-radius:var(--radius);background:linear-gradient(135deg,#2563eb14,#8b5cf614);border:1px solid #6366f140;margin-bottom:18px;padding:18px}.grand-total-card h3{letter-spacing:1px;text-transform:uppercase;color:var(--text-dim);margin-bottom:12px;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:700}.grand-total-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;display:grid}.grand-total-item{border-radius:var(--radius-sm);text-align:center;background:#0003;padding:10px 12px}.gt-model{margin-bottom:3px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:600}.gt-qty{color:#fff;font-family:JetBrains Mono,monospace;font-size:20px;font-weight:800}.gt-label{color:var(--text-muted);margin-top:1px;font-size:9px}.commercial-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:14px;overflow:hidden}.commercial-card-header{letter-spacing:.6px;text-transform:uppercase;border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:12px 16px;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:700;display:flex}.commercial-line{border-bottom:1px solid #222a3a80;justify-content:space-between;align-items:center;padding:12px 16px;transition:background .15s;display:flex}.commercial-line:last-child{border-bottom:none}.commercial-line:hover{background:#ffffff04}.commercial-model{min-width:120px;font-family:JetBrains Mono,monospace;font-size:13px;font-weight:700}.commercial-qty{text-align:right;min-width:60px;font-family:JetBrains Mono,monospace;font-size:18px;font-weight:800}.commercial-detail{color:var(--text-dim);flex:1;padding:0 16px;font-size:11px;line-height:1.5}.commercial-detail span{margin-right:14px;display:inline-block}.breakdown-note{color:var(--text-muted);padding:4px 16px 8px;font-size:10px;font-style:italic}.spec-grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:6px;margin-top:8px;padding:8px 16px 12px;display:grid}.spec-item{background:var(--surface-2);text-align:center;border-radius:5px;padding:6px 8px}.spec-item .spec-label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);margin-bottom:2px;font-size:8px}.spec-item .spec-val{color:var(--text);font-family:JetBrains Mono,monospace;font-size:11px;font-weight:600}.pricing-table{border-collapse:collapse;width:100%;font-size:12px}.pricing-table th{letter-spacing:.8px;text-transform:uppercase;color:var(--text-dim);text-align:right;border-bottom:2px solid var(--border);background:var(--surface-2);padding:10px 12px;font-family:JetBrains Mono,monospace;font-size:9px;font-weight:700}.pricing-table th:first-child{text-align:left}.pricing-table td{text-align:right;border-bottom:1px solid var(--border);font-variant-numeric:tabular-nums;padding:10px 12px;font-family:JetBrains Mono,monospace;font-size:12px}.pricing-table td:first-child{text-align:left;font-weight:700}.pricing-table tr:hover td{background:#ffffff04}.pricing-table tr.pricing-subtotal td{border-top:2px solid var(--border-light);color:#fff;padding-top:12px;font-weight:700}.pricing-table tr.pricing-grand td{color:#fff;background:#6366f10a;border-top:3px solid #6366f166;padding:14px 12px;font-size:14px;font-weight:800}.pricing-section-row td{background:var(--surface-2);letter-spacing:1px;text-transform:uppercase;color:var(--text-dim)!important;border-bottom:1px solid var(--border)!important;padding:8px 12px!important;font-size:10px!important;font-weight:700!important}.pricing-table .strikethrough{color:var(--text-muted);font-weight:400;text-decoration:line-through}.pricing-table .discounted{color:var(--accent-green);font-weight:700}.savings-banner{border-radius:var(--radius-sm);color:var(--accent-green);background:#10b9810f;border:1px solid #10b98133;justify-content:center;align-items:center;gap:8px;margin-top:12px;padding:10px 14px;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:600;display:flex}.valve-toggle-compact{border:1px solid var(--border);background:var(--surface-2);border-radius:6px;display:inline-flex;overflow:hidden}.valve-btn{letter-spacing:.4px;text-transform:uppercase;color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:5px 14px;font-family:JetBrains Mono,monospace;font-size:9px;font-weight:600;transition:all .2s}.valve-btn.active{background:var(--accent-green);color:#fff}.valve-btn:first-child{border-right:1px solid var(--border)}.discount-control{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);align-items:center;gap:12px;padding:10px 16px;display:flex}.discount-label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;font-size:10px;font-weight:600}.discount-slider-wrap{flex:1;align-items:center;gap:8px;max-width:280px;display:flex}.discount-slider{appearance:none;background:var(--surface-3);cursor:pointer;border-radius:3px;outline:none;flex:1;height:5px}.discount-slider::-webkit-slider-thumb{-webkit-appearance:none;background:var(--accent-green);cursor:pointer;border-radius:50%;width:16px;height:16px;box-shadow:0 2px 6px #10b98166}.discount-slider::-moz-range-thumb{background:var(--accent-green);cursor:pointer;border:none;border-radius:50%;width:16px;height:16px}.discount-value-display{color:var(--accent-green);text-align:center;min-width:44px;font-family:JetBrains Mono,monospace;font-size:16px;font-weight:800}.discount-value-display.has-discount{color:var(--accent-amber)}.commercial-controls{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px;display:grid}.commercial-controls .section-block{margin-bottom:0}.customer-output{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-top:20px;padding:18px}.customer-output h3{letter-spacing:.8px;text-transform:uppercase;color:var(--text-dim);margin-bottom:12px;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:700}.output-row{border-bottom:1px solid #222a3a66;justify-content:space-between;padding:6px 0;font-size:12px;display:flex}.output-row:last-child{border-bottom:none}.output-row .olabel{color:var(--text-dim)}.output-row .ovalue{color:#fff;font-family:JetBrains Mono,monospace;font-weight:600}.sizing-notes{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-dim);margin-top:6px;padding:12px 16px;font-size:11px;line-height:1.7}.sizing-notes strong{color:var(--text)}.ras-diagram .rd-title{color:#fff;text-align:center;letter-spacing:-.5px;margin-bottom:4px;font-family:Outfit,sans-serif;font-size:22px;font-weight:700}.ras-diagram .rd-subtitle{text-align:center;color:var(--text-dim);margin-bottom:20px;font-size:12px}.ras-diagram .rd-legend{flex-wrap:wrap;justify-content:center;gap:16px;margin-bottom:20px;display:flex}.ras-diagram .rd-legend-item{color:var(--text-dim);align-items:center;gap:5px;font-size:11px;display:flex}.ras-diagram .rd-legend-swatch{border-radius:2px;width:20px;height:3px}.ras-diagram .rd-section{border:1px solid var(--border);background:#111b2e80;border-radius:14px;max-width:1120px;margin:0 auto 16px;padding:14px 10px 16px}.ras-diagram .rd-section-title{text-align:center;letter-spacing:1px;padding:8px 0 4px;font-size:16px;font-weight:700}.ras-diagram .rd-section-subtitle{text-align:center;color:var(--text-dim);margin-bottom:14px;font-size:11px}.ras-diagram .rd-card-grid{justify-content:center;gap:10px;display:grid}.ras-diagram .rd-card{background:var(--surface);border:1.5px solid var(--border);border-radius:8px;overflow:hidden}.ras-diagram .rd-card-header{text-align:center;letter-spacing:.4px;padding:6px 8px;font-size:13px;font-weight:700}.ras-diagram .rd-card-body{padding:6px 8px 8px}.ras-diagram .rd-tanks{flex-wrap:wrap;justify-content:center;gap:3px;margin-bottom:6px;display:flex}.ras-diagram .rd-tank-icon{color:#5ba3f5;background:#1a2744;border:1px solid #2a4060;border-radius:4px;justify-content:center;align-items:center;width:24px;height:24px;font-family:JetBrains Mono,monospace;font-size:7px;display:flex}.ras-diagram .rd-data-row{border-bottom:1px solid #1e2d4599;justify-content:space-between;align-items:center;padding:2px 0;font-size:10px;display:flex}.ras-diagram .rd-data-row:last-child{border-bottom:none}.ras-diagram .rd-data-label{color:var(--text-dim)}.ras-diagram .rd-data-value{color:#fff;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:600}.ras-diagram .rd-water{color:#5ba3f5}.ras-diagram .rd-o2{color:#22d3ee}.ras-diagram .rd-flow-section{text-align:center;margin-bottom:4px}.ras-diagram .rd-flow-section svg{width:100%;max-width:1080px;margin:0 auto;display:block}.ras-diagram .rd-summary-bar{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:center;gap:24px;margin-top:6px;padding-top:8px;display:flex}.ras-diagram .rd-summary-item{text-align:center}.ras-diagram .rd-summary-label{text-transform:uppercase;letter-spacing:.7px;color:var(--text-dim);font-size:9px}.ras-diagram .rd-summary-value{color:#fff;font-family:JetBrains Mono,monospace;font-size:13px;font-weight:600}.ras-diagram .rd-grand-total{background:linear-gradient(135deg,#2563eb14,#22d3ee14);border:1px solid #1e3a5f;border-radius:10px;max-width:1120px;margin:0 auto;padding:12px}.ras-diagram .rd-bars-wrap{flex-wrap:wrap;gap:20px;margin-top:12px;display:flex}.ras-diagram .rd-bars-container{flex:1;min-width:260px;max-width:400px}.ras-diagram .rd-bars-title{text-align:center;text-transform:uppercase;letter-spacing:.8px;color:var(--text-dim);margin-bottom:4px;font-size:9px}.ras-diagram .rd-bar-row{align-items:center;gap:5px;margin:2px 0;display:flex}.ras-diagram .rd-bar-label{color:var(--text-dim);text-align:right;flex-shrink:0;width:22px;font-family:JetBrains Mono,monospace;font-size:8px}.ras-diagram .rd-bar-track{background:#1a2744;border-radius:3px;flex:1;height:6px;overflow:hidden}.ras-diagram .rd-bar-fill{border-radius:3px;height:100%;transition:width .5s}.ras-diagram .rd-bar-amount{color:var(--text-dim);flex-shrink:0;width:60px;font-family:JetBrains Mono,monospace;font-size:8px}@keyframes rdFlowDash{to{stroke-dashoffset:-20px}}.rd-flow-anim{animation:1s linear infinite rdFlowDash}.date-picker-wrap{align-items:center;display:flex;position:relative}.date-picker-wrap .date-display{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);cursor:pointer;outline:none;width:100%;padding:9px 36px 9px 11px;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:500;transition:border-color .2s}.date-picker-wrap .date-display:focus{border-color:var(--accent-fw)}.date-picker-wrap .date-display::placeholder{color:var(--text-muted)}.date-picker-wrap .date-native{opacity:0;cursor:pointer;z-index:1;width:100%;height:100%;position:absolute;top:0;left:0}.date-cal-btn{cursor:pointer;z-index:2;opacity:.6;background:0 0;border:none;padding:2px;font-size:14px;line-height:1;transition:opacity .2s;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.date-cal-btn:hover{opacity:1}.proposal-header{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:20px;padding:20px 24px}.proposal-header-grid{grid-template-columns:1fr 1fr;gap:8px 32px;display:grid}.proposal-header-row{border-bottom:1px solid #222a3a4d;justify-content:space-between;padding:5px 0;display:flex}.proposal-header-row:last-child{border-bottom:none}.ph-label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.4px;font-size:11px;font-weight:500}.ph-value{color:#fff;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:600}.proposal-content-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:16px;padding:24px 28px}.proposal-content-section h3{letter-spacing:.8px;text-transform:uppercase;border-bottom:1px solid var(--border);margin-bottom:14px;padding-bottom:8px;font-family:JetBrains Mono,monospace;font-size:13px;font-weight:700}.proposal-content-section h3 .pc-accent{vertical-align:middle;border-radius:1px;width:24px;height:2px;margin-right:8px;display:inline-block}.proposal-content-section p{color:var(--text-dim);margin-bottom:12px;font-size:13px;line-height:1.75}.proposal-content-section p:last-child{margin-bottom:0}.commercial-header{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);max-width:1100px;margin:0 auto 24px;padding:22px 28px;position:relative}.commercial-header-row{grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;display:grid}.commercial-header-spacer{display:block}.commercial-header-title{text-align:center}.commercial-header-title h1{letter-spacing:-.5px;color:#fff;margin-bottom:4px;font-family:Outfit,sans-serif;font-size:26px;font-weight:800}.commercial-header-title p{color:var(--text-dim);font-family:JetBrains Mono,monospace;font-size:12px}.commercial-header-logo{justify-content:flex-end;align-items:center;display:flex}.commercial-logo{width:auto;height:34px;display:block}.commercial-header-controls{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:18px;padding-top:14px;display:flex}.currency-toggle{background:var(--surface-2);border:1px solid var(--border);border-radius:8px;display:inline-flex;overflow:hidden}.cur-btn{color:var(--text-dim);cursor:pointer;letter-spacing:.6px;background:0 0;border:none;padding:8px 18px;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:700;transition:all .2s}.cur-btn:hover{color:var(--text)}.cur-btn.active{background:linear-gradient(135deg,var(--accent-fw),var(--accent-sw));color:#fff}.currency-rate-info{color:var(--text-dim);align-items:center;gap:6px;font-family:JetBrains Mono,monospace;font-size:10px;display:flex}.cri-value{color:var(--accent-o2);font-weight:700}.cri-source{color:var(--accent-green);letter-spacing:.4px;text-transform:uppercase;background:#10b98114;border-radius:4px;padding:2px 7px;font-size:9px;font-weight:600}.cri-source.fallback{color:var(--accent-amber);background:#f59e0b14}@media (max-width:700px){.commercial-header-row{grid-template-columns:1fr}.commercial-header-spacer{display:none}.commercial-header-logo{justify-content:center}}.lang-toggle{background:#ffffff0d;border:1px solid #ffffff1f;border-radius:6px;margin-right:10px;display:inline-flex;overflow:hidden}.lang-btn{color:#ffffff8c;letter-spacing:.6px;cursor:pointer;text-transform:uppercase;background:0 0;border:none;padding:5px 9px;font-family:JetBrains Mono,monospace;font-size:9px;font-weight:700;transition:all .2s}.lang-btn:hover{color:#fff}.lang-btn.active{color:#fff;background:#3b82f640}.sizing-mode-card.active{background:#10b9810f!important}.sizing-mode-card.calc-active{border-color:var(--accent-fw)!important;background:#3b82f60f!important}.sizing-mode-card:hover{transform:translateY(-1px);box-shadow:0 4px 16px #0003}.facility-type-card:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0003}.facility-type-card.ras-active{border-color:var(--accent-orange)!important;background:#f973160f!important}.facility-type-card.flow-active{border-color:var(--accent-fw)!important;background:#3b82f60f!important}.facility-type-card.hybrid-active{border-color:var(--accent-sw)!important;background:#8b5cf60f!important}.biomass-host{--bio-bg:#0e1726;--bio-panel:#152033;--bio-panel2:#1c2942;--bio-border:#27375a;--bio-text:#e6ecf5;--bio-muted:#9aa9c2;--bio-accent:#3b82f6;--bio-accent2:#22d3ee;--bio-good:#10b981;--bio-warn:#f59e0b;--bio-bad:#ef4444;--bio-input-bg:#0b1422;--bio-input-border:#2c3e63;color:var(--bio-text);font-family:Arial,Helvetica,sans-serif;font-size:13px;line-height:1.45}.biomass-host *{box-sizing:border-box}.biomass-host .bio-grid{grid-template-columns:repeat(12,1fr);gap:14px;display:grid}.biomass-host .bio-card{background:var(--bio-panel);border:1px solid var(--bio-border);border-radius:10px;padding:14px 16px}.biomass-host .bio-card h3{text-transform:uppercase;letter-spacing:1.1px;color:var(--bio-accent2);border-bottom:1px dashed var(--bio-border);margin:0 0 12px;padding-bottom:6px;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:700}.biomass-host .bio-col-6{grid-column:span 6}.biomass-host .bio-col-12{grid-column:span 12}@media (max-width:900px){.biomass-host .bio-col-6{grid-column:span 12}}.biomass-host label.bio-field{grid-template-columns:1.3fr 1fr;align-items:center;gap:10px;margin:7px 0;font-size:12px;display:grid}.biomass-host label.bio-field .bio-help{color:var(--bio-muted);margin-top:2px;font-size:10px;display:block}.biomass-host input[type=number].bio-input,.biomass-host select.bio-input{background:var(--bio-input-bg);border:1px solid var(--bio-input-border);width:100%;color:var(--bio-text);border-radius:6px;padding:7px 9px;font-family:inherit;font-size:12px}.biomass-host input[type=number].bio-input:focus,.biomass-host select.bio-input:focus{border-color:var(--bio-accent);outline:none;box-shadow:0 0 0 2px #3b82f62e}.biomass-host input.bio-preset-driven{background:#0e1c33;border-color:#3b6394}.biomass-host .bio-pill{color:#bcd2f7;background:#1f3a66;border-radius:999px;margin-left:4px;padding:1px 7px;font-size:10px;display:inline-block}.biomass-host .bio-pill.bio-preset{color:#9ee9d3;background:#1f4d44}.biomass-host .bio-results-table{border-collapse:collapse;width:100%;font-size:12px}.biomass-host .bio-results-table td{border-bottom:1px solid var(--bio-border);padding:6px 8px}.biomass-host .bio-results-table td.bio-label{color:var(--bio-muted);width:55%}.biomass-host .bio-results-table td.bio-value{text-align:right;font-variant-numeric:tabular-nums;color:var(--bio-accent2);font-weight:600}.biomass-host .bio-results-table td.bio-unit{color:var(--bio-muted);text-align:left;width:25%;font-size:10px}.biomass-host .bio-summary-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;display:grid}.biomass-host .bio-stat{background:var(--bio-panel2);border:1px solid var(--bio-border);border-radius:8px;padding:10px 12px}.biomass-host .bio-stat .bio-k{color:var(--bio-muted);text-transform:uppercase;letter-spacing:.6px;font-size:10px}.biomass-host .bio-stat .bio-v{color:var(--bio-text);font-variant-numeric:tabular-nums;margin-top:2px;font-size:18px;font-weight:700}.biomass-host .bio-stat .bio-u{color:var(--bio-muted);font-size:10px}.biomass-host .bio-preset-banner{color:#bcd2f7;background:#22d3ee0f;border:1px solid #20425a;border-radius:6px;margin-top:8px;padding:7px 10px;font-size:11px}.biomass-host .bio-preset-banner b{color:var(--bio-accent2)}.biomass-host .bio-stage-notes{color:var(--bio-muted);margin-top:3px;font-size:10px;font-style:italic;display:block}.biomass-host .bio-action-btn{background:var(--bio-input-bg);border:1px solid var(--bio-input-border);color:var(--bio-text);cursor:pointer;border-radius:6px;margin-right:4px;padding:6px 12px;font-family:inherit;font-size:11px;transition:all .15s}.biomass-host .bio-action-btn:hover{border-color:var(--bio-accent)}.biomass-host .bio-action-btn.bio-primary{background:var(--bio-accent);color:#fff;border-color:var(--bio-accent);padding:7px 14px;font-size:12px;font-weight:600}.biomass-host .bio-action-btn.bio-primary:hover{background:#2563eb;border-color:#2563eb}.biomass-host .bio-action-btn.bio-danger:hover{border-color:var(--bio-bad);color:var(--bio-bad)}.biomass-host .bio-tank-bar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:10px;display:flex}.biomass-host .bio-group-label{flex:1;align-items:center;gap:6px;min-width:240px;font-size:12px;display:flex}.biomass-host .bio-group-label select{flex:1}.biomass-host .bio-ref-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:11px}.biomass-host .bio-ref-table th,.biomass-host .bio-ref-table td{border:1px solid var(--bio-border);text-align:right;padding:5px 7px}.biomass-host .bio-ref-table th:first-child,.biomass-host .bio-ref-table td:first-child{text-align:left}.biomass-host .bio-ref-table th{background:var(--bio-panel2);color:var(--bio-muted)}.biomass-host .bio-empty-row td{text-align:center;color:var(--bio-muted);padding:14px;font-style:italic}.biomass-host .bio-toggle{background:var(--bio-input-bg);border:1px solid var(--bio-input-border);border-radius:6px;display:inline-flex;overflow:hidden}.biomass-host .bio-toggle button{color:var(--bio-muted);cursor:pointer;background:0 0;border:none;padding:5px 12px;font-family:inherit;font-size:11px}.biomass-host .bio-toggle button.active{background:var(--bio-accent);color:#fff}.biomass-host .bio-row-flex{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.biomass-host .bio-chart-wrap{height:280px;margin-top:12px;padding:6px 4px;position:relative}.biomass-host .bio-chart-caption{color:var(--bio-muted);text-align:center;margin-top:6px;font-size:11px;font-style:italic}.report-sheet{--mo-primary:#0085ca;--mo-primary-dark:#0085ca;--mo-primary-light:#e8f4fb;--mo-accent-light:#7ccee9;--mo-text:#1f2937;--mo-text-dim:#4b5563;--mo-text-muted:#6b7280;--mo-border:#d9d9d6;--mo-border-light:#ecece9;--mo-row-alt:#f6f6f4;--mo-good:#97d700;--mo-good-light:#ecf7d1;--mo-amber:#ed8b00;--mo-red:#fe5000;color:var(--mo-text);background:#fff;border-radius:4px;max-width:900px;margin:0 auto;padding:0 0 40px;font-family:Outfit,Segoe UI,Arial,sans-serif;font-size:13px;line-height:1.55;overflow:hidden;box-shadow:0 4px 32px #00000040}.report-letterhead{background:var(--mo-primary-dark);color:#fff;justify-content:space-between;align-items:center;gap:24px;padding:28px 44px 24px;display:flex}.report-letterhead-logo{filter:brightness(0)invert();width:auto;height:38px}.report-letterhead-address{text-align:right;color:#ffffffe6;font-size:11px;line-height:1.55}.report-letterhead-address .rla-name{color:#fff;margin-bottom:2px;font-size:12px;font-weight:700}.report-body{color:var(--mo-text);padding:28px 44px 20px}.report-title{color:var(--mo-primary);letter-spacing:-.3px;text-align:center;margin:0 0 8px;font-size:26px;font-weight:800;line-height:1.2}.report-title-sub{color:var(--mo-primary);letter-spacing:-.3px;text-align:center;margin:0;font-size:22px;font-weight:800;line-height:1.2}.report-title-rule{background:var(--mo-primary);border-radius:1.5px;height:3px;margin:14px 0 20px}.report-proj-card{background:var(--mo-row-alt);border-left:4px solid var(--mo-primary);border-radius:4px;grid-template-columns:1fr 1fr;gap:4px 32px;margin-bottom:22px;padding:14px 20px;display:grid}.report-proj-row{border-bottom:1px solid #0000000a;justify-content:space-between;align-items:baseline;padding:3px 0;font-size:12.5px;display:flex}.report-proj-row:last-child{border-bottom:none}.report-proj-row .rp-label{color:var(--mo-text-dim)}.report-proj-row .rp-value{color:var(--mo-text);text-align:right;font-weight:700}.report-section{break-inside:avoid;margin:22px 0 14px}.report-section-head{border-bottom:1px solid var(--mo-border);align-items:center;gap:10px;margin-bottom:12px;padding-bottom:7px;display:flex}.report-section-badge{background:var(--mo-primary);color:#fff;border-radius:3px;padding:2px 9px;font-size:12px;font-weight:700;line-height:1.4}.report-section-title{color:var(--mo-primary);letter-spacing:-.2px;font-size:16px;font-weight:700}.report-section p{color:var(--mo-text);margin:0 0 10px}.report-section p strong{color:var(--mo-text);font-weight:700}.report-callout{background:var(--mo-row-alt);border-left:4px solid var(--mo-primary);border-radius:4px;justify-content:space-between;align-items:center;gap:16px;margin:12px 0;padding:12px 16px;font-size:12.5px;display:flex}.report-callout-tag{border:2px solid var(--mo-good);color:var(--mo-good);letter-spacing:.6px;white-space:nowrap;text-align:center;background:#fff;border-radius:3px;padding:5px 10px;font-size:10.5px;font-weight:800;line-height:1.3}.report-callout-tag.warn{border-color:var(--mo-amber);color:var(--mo-amber)}.report-callout-tag.bad{border-color:var(--mo-red);color:var(--mo-red)}.report-two-col{grid-template-columns:1fr 1fr;gap:18px;display:grid}.report-table{border-collapse:collapse;width:100%;font-size:12px}.report-table thead th{background:var(--mo-primary-light);color:var(--mo-primary);text-align:left;border-bottom:2px solid var(--mo-primary);padding:8px 12px;font-size:12px;font-weight:700}.report-table thead th:last-child{text-align:right}.report-table tbody td{border-bottom:1px solid var(--mo-border-light);padding:8px 12px;font-size:12px}.report-table tbody td.rt-label{color:var(--mo-text-dim)}.report-table tbody td.rt-value{text-align:right;color:var(--mo-text);font-weight:600}.report-table.wide thead th{background:var(--mo-primary);color:#fff}.report-table.wide tbody tr:nth-child(odd) td{background:var(--mo-row-alt)}.report-metrics{grid-template-columns:repeat(4,1fr);gap:12px;margin:4px 0 18px;display:grid}.report-metric{border:1px solid var(--mo-border);background:#fff;border-radius:5px;padding:12px 14px}.report-metric.ok{border-color:var(--mo-good);background:var(--mo-good-light)}.report-metric .rm-label{letter-spacing:.6px;text-transform:uppercase;color:var(--mo-text-dim);font-size:9.5px;font-weight:700}.report-metric .rm-value{color:var(--mo-text);margin-top:2px;font-size:22px;font-weight:800;line-height:1.1}.report-metric .rm-unit{color:var(--mo-text-dim);font-size:11px;font-weight:600}.report-metric.ok .rm-value{color:var(--mo-good)}.report-bars{margin-top:12px}.report-bar-row{align-items:center;gap:12px;margin:7px 0;font-size:11.5px;display:flex}.report-bar-label{color:var(--mo-text-dim);flex:0 0 110px}.report-bar-track{background:var(--mo-border-light);border-radius:3px;flex:1;height:18px;position:relative;overflow:hidden}.report-bar-fill{background:var(--mo-primary);border-radius:3px;height:100%;transition:width .3s}.report-bar-fill.light{background:var(--mo-accent-light)}.report-bar-fill.gray{background:var(--mo-border)}.report-bar-amount{color:var(--mo-text);text-align:right;flex:0 0 90px;font-weight:700}.report-list{margin:4px 0 0;padding-left:20px;list-style:outside}.report-list li{color:var(--mo-text);padding:4px 0;font-size:12.5px;line-height:1.6}.report-list li::marker{color:var(--mo-primary)}.report-footer{border-top:1px solid var(--mo-border-light);color:var(--mo-text-muted);background:#fff;justify-content:space-between;align-items:center;padding:14px 44px;font-size:10.5px;display:flex}@media print{body>:not(.main){display:none!important}.main{max-width:none!important;padding:0!important;display:block!important}.view:not(.active){display:none!important}#view-pricing.view{display:block!important}.topbar,.no-print,.actions-bar.no-print{display:none!important}.report-sheet{box-shadow:none!important;border-radius:0!important;max-width:100%!important;margin:0!important}.report-section{page-break-inside:avoid;break-inside:avoid}@page{size:letter portrait;margin:12mm 10mm}}.report-sheet .report-body{padding:28px 44px 20px}@media (max-width:900px){.ras-diagram .rd-card-grid{grid-template-columns:repeat(2,1fr)!important}.commercial-controls{grid-template-columns:1fr}}@media (max-width:700px){.topbar{padding:0 10px}.topbar-steps{display:none}.main{padding:14px 8px 60px}.form-grid{grid-template-columns:1fr 1fr}.totals-bar{gap:8px}.section-block{padding:14px}.mode-selector{flex-direction:column;align-items:center}}@media (max-width:500px){.ras-diagram .rd-card-grid{grid-template-columns:1fr!important}.form-grid{grid-template-columns:1fr}}@media (max-width:480px){.moleaer-logo{height:25px}}
