body,html{height:100%;overflow:hidden}body{background:var(--bzi-midnight);color:var(--bzi-graphite);font-size:14px;line-height:1.6}.app{background:var(--surface);display:grid;grid-template-columns:280px 1fr 340px;height:calc(100vh - 64px);width:100vw}header{background:var(--navy);border-bottom:1px solid hsla(0,0%,100%,.08);gap:16px;grid-column:1/-1;padding:0 24px}.logo-mark,header{align-items:center;display:flex}.logo-mark{border-radius:8px;color:#fff;flex-shrink:0;font-family:var(--font-mono);font-size:16px;font-weight:700;height:32px;justify-content:center;width:32px}header h1{color:#fff;font-size:15px;font-weight:500;letter-spacing:-.01em}header h1 span{color:hsla(0,0%,100%,.4);font-size:12px;margin-left:2px}.header-right{align-items:center;display:flex;gap:10px;margin-left:auto}.hs-badge{background:rgba(0,135,90,.15);color:#00875a}.hs-badge,.saved-badge{border:1px solid rgba(0,135,90,.3);border-radius:20px;font-size:11px;padding:3px 10px}.saved-badge{align-items:center;background:rgba(0,135,90,.2);color:#4ade80;display:none;gap:5px}.reset-btn{background:hsla(0,0%,100%,.08);border:1px solid hsla(0,0%,100%,.12);border-radius:6px;color:hsla(0,0%,100%,.7);cursor:pointer;font-family:DM Sans,sans-serif;font-size:12px;padding:5px 12px}.reset-btn:hover{background:hsla(0,0%,100%,.14);color:#fff}.sidebar-left{background:#fff;border-right:1px solid var(--border);height:100%;overflow-y:auto;padding:20px 0}.sidebar-section-label{color:var(--muted);font-size:10px;font-weight:600;letter-spacing:.1em;padding:0 20px 8px;text-transform:uppercase}.nav-item{align-items:center;border-left:2px solid transparent;color:var(--slate);cursor:pointer;display:flex;font-size:13px;gap:10px;padding:8px 20px;transition:all .12s}.nav-item:hover{background:var(--surface)}.nav-item.active{background:var(--accent-light);border-left-color:var(--accent);color:var(--accent);font-weight:500}.nav-item.locked{opacity:.4;pointer-events:none}.nav-dot{background:var(--border-strong);border-radius:50%;flex-shrink:0;height:7px;width:7px}.nav-item.active .nav-dot{background:var(--accent)}.nav-item.done .nav-dot{background:var(--green)!important}.main-content{height:100%;overflow-y:auto;padding:28px 32px}.phase-header{margin-bottom:24px}.phase-header h2{color:var(--navy);font-size:22px;font-weight:600;letter-spacing:-.03em;line-height:1.2;margin-bottom:4px}.phase-header p{color:var(--muted);font-size:13px}.question-card{background:#fff;border:1px solid var(--border);border-radius:12px;margin-bottom:12px;padding:18px 20px;transition:border-color .15s}.question-card.answered{background:#fafcff;border-color:#bfd4ff}.question-card.flagged{background:var(--warning-light);border-color:var(--warning)}.question-card.info-card{background:var(--accent-light);border-color:var(--accent)}.question-card.danger-card{background:var(--red-light);border-color:#fca5a5}.question-card.orange-card{background:#fff7ed;border-color:#fdba74}.question-label{color:var(--navy);font-size:13px;font-weight:500;margin-bottom:6px}.question-hint{color:var(--muted);font-size:12px;line-height:1.5;margin-bottom:12px}.options-grid{display:flex;flex-wrap:wrap;gap:8px}.opt-btn{background:var(--surface);border:1px solid var(--border-strong);border-radius:8px;color:var(--slate);cursor:pointer;font-family:DM Sans,sans-serif;font-size:12px;padding:8px 16px;transition:all .12s}.opt-btn:hover{background:var(--accent-light);border-color:var(--accent);color:var(--accent)}.opt-btn.selected{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:500}.opt-btn.selected-orange{background:var(--orange);border-color:var(--orange);color:#fff;font-weight:500}.opt-btn.selected-amber{background:var(--amber);border-color:var(--amber);color:#fff;font-weight:500}.inline-number{background:#fff;border:1px solid var(--border-strong);border-radius:8px;color:var(--navy);font-family:DM Sans,sans-serif;font-size:14px;outline:none;padding:9px 14px;width:140px}.inline-number:focus{border-color:var(--accent)}.inline-text{background:#fff;border:1px solid var(--border-strong);border-radius:8px;color:var(--navy);display:block;font-family:DM Sans,sans-serif;font-size:13px;margin-top:6px;outline:none;padding:9px 14px;width:100%}.inline-text:focus{border-color:var(--accent)}.trigger-alert{align-items:flex-start;border:1px solid;border-radius:8px;display:flex;font-size:12px;gap:10px;line-height:1.5;margin-top:12px;padding:12px 14px}.trigger-alert.warn{background:var(--warning-light);border-color:#fcd34d;color:#92400e}.trigger-alert.danger{background:var(--red-light);border-color:#fca5a5;color:#7f1d1d}.trigger-alert.info{background:var(--accent-light);border-color:var(--accent);color:var(--navy)}.trigger-alert.success{background:var(--green-light);border-color:#6ee7b7;color:#064e3b}.trigger-alert.orange{background:#fff7ed;border-color:#fdba74;color:#9a3412}.trigger-icon{flex-shrink:0;font-size:14px;margin-top:1px}.toggle-row{align-items:center;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:12px 0}.toggle-row:last-child{border-bottom:none}.toggle-info{flex:1}.toggle-label{color:var(--navy);font-size:13px;font-weight:500}.toggle-desc{color:var(--muted);font-size:11px;margin-top:2px}.toggle-price{color:var(--green);font-family:DM Mono,monospace;font-size:13px;font-weight:600;margin-right:14px}.toggle{background:var(--border-strong);border-radius:11px;cursor:pointer;flex-shrink:0;height:22px;position:relative;transition:background .2s;width:40px}.toggle.on{background:var(--green)}.toggle:after{background:#fff;border-radius:50%;box-shadow:0 1px 3px rgba(0,0,0,.2);content:"";height:16px;left:3px;position:absolute;top:3px;transition:left .2s;width:16px}.toggle.on:after{left:21px}.nav-footer{align-items:center;border-top:1px solid var(--border);display:flex;justify-content:space-between;margin-top:28px;padding-top:20px}.btn-back{background:#fff;border:1px solid var(--border-strong);border-radius:8px;color:var(--slate);cursor:pointer;font-family:DM Sans,sans-serif;font-size:13px;padding:10px 22px}.btn-back:hover{background:var(--surface)}.btn-next{background:var(--accent);border:none;border-radius:8px;color:#fff;cursor:pointer;font-family:DM Sans,sans-serif;font-size:13px;font-weight:500;padding:10px 24px}.btn-next:hover{background:var(--accent-mid)}.btn-next:disabled{opacity:.4;pointer-events:none}.size-grid{display:grid;gap:8px;grid-template-columns:1fr 1fr 1fr;margin-top:8px}.size-card{background:#fff;border:1.5px solid var(--border);border-radius:10px;cursor:pointer;padding:12px 10px;text-align:center;transition:all .12s}.size-card h4{color:var(--navy);font-size:12px;font-weight:600;margin-bottom:2px}.size-card p{color:var(--muted);font-size:10px;line-height:1.4}.sidebar-right{background:#fff;border-left:1px solid var(--border);flex-direction:column;height:100%;padding:0}.sidebar-right,.sr-body{display:flex;overflow-y:auto}.sr-body{flex:1;flex-direction:column;gap:14px;padding:20px}.panel-title{color:var(--muted);font-size:10px;font-weight:600;letter-spacing:.1em;margin-bottom:10px;text-transform:uppercase}.est-hero{background:var(--navy);border-radius:12px;color:#fff;padding:18px}.est-hero .label{color:hsla(0,0%,100%,.45);font-size:10px;letter-spacing:.07em;margin-bottom:4px;text-transform:uppercase}.est-hero .amount{color:#fff;font-size:30px;font-weight:700;letter-spacing:-.04em;line-height:1}.est-hero .sub{color:hsla(0,0%,100%,.45);font-size:11px;margin-top:4px}.est-hero .timeline-row{align-items:center;border-top:1px solid hsla(0,0%,100%,.08);display:flex;justify-content:space-between;margin-top:12px;padding-top:12px}.est-hero .timeline-label{color:hsla(0,0%,100%,.45);font-size:10px;letter-spacing:.06em;text-transform:uppercase}.est-hero .timeline-val{color:#fff;font-size:13px;font-weight:600}.breakdown-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:14px}.breakdown-row{border-bottom:1px solid var(--border);display:flex;font-size:12px;justify-content:space-between;padding:5px 0}.breakdown-row:last-child{border-bottom:none}.breakdown-row .lbl{color:var(--slate);font-size:11px}.breakdown-row .val{color:var(--navy);font-family:DM Mono,monospace;font-size:11px}.breakdown-row .val.add{color:var(--amber)}.breakdown-total{border-top:2px solid var(--border);display:flex;font-size:13px;font-weight:600;justify-content:space-between;margin-top:4px;padding:8px 0 0}.addon-chip{align-items:center;background:var(--green-light);border:1px solid #6ee7b7;border-radius:20px;color:var(--green);display:flex;font-size:11px;gap:6px;margin-bottom:4px;padding:4px 10px}.addon-chip.off{background:var(--surface);border-color:var(--border);color:var(--muted)}.addon-summary{display:flex;flex-direction:column;gap:5px}.apply-btn{background:var(--bzi-blue);border:none;border-radius:9px;color:#fff;cursor:pointer;font-family:DM Sans,sans-serif;font-size:13px;font-weight:600;padding:12px;transition:background .15s;width:100%}.apply-btn:hover{background:var(--bzi-blue-hover)}.copy-btn{background:var(--accent);border:none;border-radius:9px;color:#fff;cursor:pointer;font-family:DM Sans,sans-serif;font-size:13px;font-weight:500;margin-bottom:6px;padding:10px;width:100%}.copy-btn:hover{background:var(--accent-mid)}.modal-overlay{align-items:center;background:rgba(10,22,40,.75);display:none;inset:0;justify-content:center;position:fixed;z-index:150}.modal-overlay.open{display:flex}.modal-card{background:#fff;border-radius:16px;max-height:85vh;max-width:90vw;overflow-y:auto;padding:28px;width:520px}.modal-card h2{color:var(--navy);font-size:18px;font-weight:700;letter-spacing:-.02em;margin-bottom:4px}.modal-card p{color:var(--muted);font-size:13px;margin-bottom:20px}.modal-field{margin-bottom:14px}.modal-field label{color:var(--muted);display:block;font-size:11px;font-weight:600;letter-spacing:.07em;margin-bottom:5px;text-transform:uppercase}.modal-input{border:1px solid var(--border-strong);border-radius:8px;color:var(--navy);font-family:DM Sans,sans-serif;font-size:13px;outline:none;padding:9px 12px;width:100%}.modal-input:focus{border-color:var(--accent)}.deal-results{border:1px solid var(--border);border-radius:8px;margin-top:4px;max-height:200px;overflow:hidden;overflow-y:auto}.deal-result-item{border-bottom:1px solid var(--border);color:var(--navy);cursor:pointer;font-size:13px;padding:9px 12px;transition:background .1s}.deal-result-item:last-child{border-bottom:none}.deal-result-item:hover{background:var(--accent-light)}.deal-result-meta{color:var(--muted);font-size:11px}.deal-create-row{background:var(--surface);border-top:1px solid var(--border);color:var(--accent);cursor:pointer;font-size:12px;padding:9px 12px}.deal-create-row:hover{background:var(--accent-light)}.modal-footer{display:flex;gap:10px;margin-top:20px}.modal-btn{border:1px solid transparent;border-radius:8px;cursor:pointer;flex:1;font-family:DM Sans,sans-serif;font-size:13px;font-weight:500;padding:10px}.modal-btn.primary{background:var(--bzi-blue);border-color:var(--bzi-blue);color:#fff}.modal-btn.primary:hover{background:var(--bzi-blue-hover)}.modal-btn.primary:disabled{opacity:.5;pointer-events:none}.modal-btn.secondary{background:#fff;border-color:var(--border-strong);color:var(--navy)}.new-deal-fields{display:none}.submit-progress{align-items:center;background:var(--accent-light);border-radius:8px;color:var(--navy);display:none;font-size:12px;gap:10px;margin-top:12px;padding:10px 14px}.submit-progress.show{display:flex}.spinner{animation:spin .8s linear infinite;border:2px solid var(--accent-light);border-radius:50%;border-top-color:var(--accent);flex-shrink:0;height:16px;width:16px}@keyframes spin{to{transform:rotate(1turn)}}.submit-success{background:var(--green-light);border:1px solid #6ee7b7;border-radius:8px;color:#064e3b;display:none;font-size:12px;margin-top:12px;padding:12px 14px}.submit-success.show{display:block}.submit-error{background:var(--red-light);border:1px solid #fca5a5;border-radius:8px;color:#7f1d1d;display:none;font-size:12px;margin-top:12px;padding:12px 14px}.submit-error.show{display:block}.summary-block{background:#fff;border:1px solid var(--border);border-radius:12px;margin-bottom:12px;padding:18px 20px}.summary-block h3{color:var(--muted);font-size:10px;font-weight:600;letter-spacing:.08em;margin-bottom:12px;text-transform:uppercase}.sum-line{align-items:flex-start;border-bottom:1px solid var(--border);display:flex;font-size:13px;gap:16px;justify-content:space-between;padding:6px 0}.sum-line:last-child{border-bottom:none}.sum-line .key{color:var(--slate);flex-shrink:0;font-size:12px}.sum-line .val{color:var(--navy);font-size:12px;font-weight:500;text-align:right}@keyframes slideIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.animate-in{animation:slideIn .2s ease forwards}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:3px}.proj-drawer{background:#fff;border-left:1px solid var(--border);box-shadow:-4px 0 20px rgba(0,0,0,.08);display:flex;flex-direction:column;height:calc(100vh - 64px);position:fixed;right:0;top:64px;transform:translateX(100%);transition:transform .25s ease;width:320px;z-index:100}.proj-drawer.open{transform:translateX(0)}.proj-drawer-header{align-items:center;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:16px 20px}.proj-drawer-header h3{color:var(--navy);font-size:14px;font-weight:600}.proj-drawer-close{color:var(--muted);cursor:pointer;font-size:18px;line-height:1}.proj-drawer-body{flex:1;overflow-y:auto;padding:16px}.proj-item{border:1px solid var(--border);border-radius:10px;cursor:pointer;margin-bottom:8px;padding:12px 14px;transition:all .12s}.proj-item.active,.proj-item:hover{background:var(--accent-light);border-color:var(--accent)}.proj-item-name{color:var(--navy);font-size:13px;font-weight:500;margin-bottom:2px}.proj-item-meta{color:var(--muted);display:flex;flex-wrap:wrap;font-size:11px;gap:8px}.proj-status{border-radius:10px;font-size:10px;font-weight:600;padding:1px 7px}.status-draft{background:var(--surface);border:1px solid var(--border);color:var(--muted)}.status-applied{background:var(--green-light);color:var(--green)}.proj-actions{display:flex;gap:6px;margin-top:8px}.proj-btn{background:var(--surface);border:1px solid var(--border-strong);border-radius:6px;color:var(--slate);cursor:pointer;font-family:DM Sans,sans-serif;font-size:11px;padding:4px 10px}.proj-btn:hover{background:var(--border)}.proj-btn.danger{border-color:rgba(220,38,38,.3);color:var(--red)}.proj-btn.danger:hover{background:var(--red-light)}.new-proj-btn{background:var(--accent);border:none;border-radius:8px;color:#fff;cursor:pointer;font-family:DM Sans,sans-serif;font-size:13px;font-weight:500;margin-bottom:12px;padding:10px;width:100%}.new-proj-btn:hover{background:var(--accent-mid)}