@charset "UTF-8";.boq-estimator-page{background:#151824;min-height:100vh;padding:1.5rem 0 3rem}.boq-estimator{--forest: #151824;--forest-mid: #1E212D;--sage: #43B854;--sage-light: #5ecf6e;--brass: #DAAE5D;--brass-hover: #e8c078;--sand: #151824;--cream: #1E212D;--surface: #1A1D27;--surface-raised: #232631;--white: #292C3A;--stone-dk: #F0F1F3;--stone: #D4D5D8;--stone-lt: #9A9CA3;--border: #3a3f4f;--border-lt: #2C2F3A;--green-pale: #1a2e1f;--red: #e05555;--red-lt: #ff6b6b;font-family:inherit;background:transparent;margin:0;color:var(--stone-dk);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}.boq-estimator *,.boq-estimator *:before,.boq-estimator *:after{box-sizing:border-box}.boq-estimator .container{max-width:1060px;margin:0 auto 48px;background:var(--surface);border:1px solid var(--border-lt);border-radius:12px;overflow:hidden;padding:0;box-shadow:0 8px 32px #00000040}.boq-estimator h1{margin:0}.boq-estimator h3{margin:0 0 14px;color:var(--sage);font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:1px;padding-bottom:8px;border-bottom:1px solid var(--border-lt)}.boq-estimator label{font-weight:500;color:var(--stone-dk);font-size:11.5px;display:block;margin-top:6px;margin-bottom:3px;letter-spacing:.15px}.boq-estimator select,.boq-estimator input[type=text],.boq-estimator input[type=number],.boq-estimator input[type=date]{width:100%;padding:8px 10px;border-radius:6px;border:1px solid var(--border);margin:0 0 10px;background:var(--white);font-family:DM Sans,sans-serif;font-size:13px;color:var(--stone-dk);outline:none;transition:border-color .15s,box-shadow .15s}.boq-estimator select:focus,.boq-estimator input:focus{border-color:var(--sage);box-shadow:0 0 0 3px #4a80601a}.boq-estimator .unit-inline{width:68px!important;margin:0 0 0 3px!important;display:inline-block!important}.boq-estimator .unit-custom-inp{width:66px!important;margin-left:4px!important;display:inline-block!important}.boq-estimator .grid-2{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.boq-estimator .grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:0 16px}.boq-estimator #topBar{display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--surface-raised);border-bottom:1px solid var(--border-lt);padding:10px 32px;flex-wrap:wrap;box-shadow:var(--shadow-xs);margin-bottom:24px}.boq-estimator #currencyBar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.boq-estimator #currencyBar label{margin:0;font-size:11.5px;display:inline;color:var(--stone);font-weight:500}.boq-estimator #currencyBar select{width:auto;margin:0;padding:5px 8px;font-size:12px}.boq-estimator #currencyBar>span,.boq-estimator .currency-hint{font-size:10px;color:var(--stone-lt)}.boq-estimator #docActions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.boq-estimator #saveStatus{font-size:10.5px;color:var(--sage);font-style:italic}.boq-estimator #topBar{margin-bottom:16px}.boq-estimator .info-block{background:var(--surface-raised);border:1px solid var(--border-lt);border-left:3px solid var(--sage);border-radius:var(--radius);padding:18px 20px 12px;margin-bottom:16px;box-shadow:var(--shadow-xs)}.boq-estimator .zone-block{margin-bottom:20px;background:var(--surface-raised);border-radius:var(--radius);border:1px solid var(--border-lt);border-left:3px solid var(--forest-mid);padding:18px 18px 14px;box-shadow:var(--shadow-xs);transition:box-shadow .2s,border-left-color .2s}.boq-estimator .zone-block:hover{box-shadow:var(--shadow-sm);border-left-color:var(--forest)}.boq-estimator .zone-block input[type=text]{border-color:var(--border);background:var(--white)}.boq-estimator .zone-pw,.boq-estimator .zone-block.zone-pw{border-left-color:var(--brass);background:var(--surface-raised)}.boq-estimator .zone-pw:hover{border-left-color:var(--brass-hover)}.boq-estimator .zone-pw-label{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--brass);background:#a8711e14;padding:3px 10px;border-radius:4px;border:1px solid rgba(168,113,30,.2);white-space:nowrap}.boq-estimator .actions{display:flex;gap:8px;align-items:center;margin-top:8px;flex-wrap:wrap}.boq-estimator .scope-name{color:var(--sage-light);font-size:13px;font-weight:600}.boq-estimator .detail-expand-cell{padding:4px 8px;background:var(--surface)}.boq-estimator .maint-visits{text-align:center;font-size:12px;color:var(--stone-lt)}.boq-estimator .label-required{color:var(--red-lt);font-size:10px;font-weight:700}.boq-estimator .trn-input{letter-spacing:1.5px;font-weight:600}.boq-estimator .boq-rate-banner{display:none;align-items:center;gap:12px;background:#daae5d1f;border:1px solid rgba(218,174,93,.35);border-radius:var(--radius);padding:10px 16px;margin-bottom:8px}.boq-estimator .boq-rate-banner-icon{font-size:18px}.boq-estimator .boq-rate-banner-msg{font-size:12.5px;color:var(--brass);flex:1}.boq-estimator .boq-rate-banner-close{background:none;border:none;color:var(--brass);font-size:16px;cursor:pointer;padding:0 4px;line-height:1}.boq-estimator .amc-summary{background:var(--green-pale);border:1px solid rgba(67,184,84,.25);border-radius:var(--radius);padding:14px 16px}.boq-estimator .amc-summary-meta{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;font-size:12.5px;color:var(--stone);margin-bottom:8px}.boq-estimator .amc-summary-meta strong{color:var(--stone-dk)}.boq-estimator .amc-summary-divider{border:none;border-top:1px solid rgba(67,184,84,.2);margin:6px 0}.boq-estimator .amc-summary-row{display:flex;justify-content:space-between;font-size:12.5px;color:var(--stone);padding:3px 0}.boq-estimator .amc-summary-total{display:flex;justify-content:space-between;font-size:15px;font-weight:700;color:var(--sage);border-top:1px solid rgba(67,184,84,.2);margin-top:8px;padding-top:8px}.boq-estimator table{width:100%;border-collapse:collapse;margin-bottom:12px;background:transparent;border-radius:6px;overflow:hidden;border:1px solid var(--border);box-shadow:none}.boq-estimator th,.boq-estimator td{padding:7px 9px;border:1px solid var(--border);font-size:12.5px;color:var(--stone-dk)}.boq-estimator th{background:var(--forest-mid);color:#ffffffeb;font-weight:600;font-size:10.5px;text-transform:uppercase;letter-spacing:.5px;border-color:var(--border)}.boq-estimator tr.boq-line-row td{background:var(--surface-raised);vertical-align:top}.boq-estimator tr.boq-line-row:hover td{background:#282b38}.boq-estimator tr.boq-detail-row td{background:var(--surface)!important;padding:0;border-top:none}.boq-estimator tr.boq-detail-row:hover td{background:var(--surface)!important}.boq-estimator .subtablehead th{background:var(--white);color:var(--stone);font-size:10px;text-transform:none;letter-spacing:0}.boq-estimator td.serial{text-align:center;color:var(--stone-lt);font-size:10.5px;font-weight:600;white-space:nowrap;width:36px}.boq-estimator .notes-inp{width:100%!important;margin-top:3px!important;font-size:11px!important;color:var(--stone-lt)!important;border:1px dashed var(--border)!important;background:var(--white)!important;padding:3px 7px!important;font-style:italic;border-radius:4px}.boq-estimator table select,.boq-estimator table input[type=text],.boq-estimator table input[type=number]{background:var(--surface-raised);border-color:var(--border);color:var(--stone-dk)}.boq-estimator table input[type=text]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.boq-estimator .totals-block{text-align:right;margin-top:20px;font-size:13.5px;background:var(--forest);border-radius:var(--radius);padding:18px 22px 16px;color:#ffffffa6;box-shadow:var(--shadow-md)}.boq-estimator .totals-block .trow{display:flex;justify-content:flex-end;gap:16px;padding:3px 0}.boq-estimator .totals-block .tlabel{color:#fff9;min-width:250px;text-align:right;font-size:12.5px}.boq-estimator .totals-block .tval{min-width:128px;text-align:right;color:#ffffffd9;font-weight:500}.boq-estimator .totals-block .grandrow{font-size:21px;font-weight:700;color:#fff;border-top:1px solid rgba(255,255,255,.18);margin-top:10px;padding-top:10px}.boq-estimator .totals-block .grandrow .tlabel{color:#fffc;font-weight:600}.boq-estimator .totals-block .discrow .tval{color:#f4a07a}.boq-estimator .totals-block .provrow .tval{color:#a0d4b4}.boq-estimator textarea{width:100%;border-radius:6px;border:1px solid var(--border);margin-top:4px;margin-bottom:8px;padding:10px 12px;font-size:12.5px;font-family:DM Sans,sans-serif;background:var(--white);color:var(--stone-dk);line-height:1.6;resize:vertical}.boq-estimator textarea:focus{outline:none;border-color:var(--sage);box-shadow:0 0 0 3px #4a80601a}.boq-estimator .details-box{width:100%;border-radius:5px;border:1px solid var(--border);padding:10px;font-size:12.5px;background:var(--surface-raised);color:var(--stone-dk)}.boq-estimator .details-hidden{display:none}.boq-estimator .details-visible{display:block;margin:8px 0 2px}.boq-estimator button{background:var(--forest);color:#fff;border:none;padding:9px 18px;font-size:13px;font-family:DM Sans,sans-serif;font-weight:600;border-radius:6px;cursor:pointer;transition:background .15s,transform .08s;letter-spacing:.1px}.boq-estimator button:hover{background:var(--forest-mid)}.boq-estimator button:active{transform:scale(.98)}.boq-estimator button.secondary{background:var(--sage)}.boq-estimator button.secondary:hover{background:var(--forest-mid)}.boq-estimator button.delete{background:var(--red)}.boq-estimator button.delete:hover{background:var(--red-lt)}.boq-estimator button.rowbtn{font-size:11px;padding:3px 9px;background:var(--surface-raised);color:var(--stone);border:1px solid var(--border);border-radius:4px;font-weight:500}.boq-estimator button.rowbtn:hover{background:var(--cream);color:var(--stone-dk)}.boq-estimator button.smallbtn{font-size:12px;padding:5px 12px}.boq-estimator .row-actions{display:flex;gap:5px}.boq-estimator hr{margin:24px 0;border:none;border-top:1px solid var(--border-lt)}.boq-estimator input[readonly],.boq-estimator input[tabindex="-1"]{background:var(--cream)!important;color:var(--stone-lt)!important;border:1px dashed var(--border)!important}.boq-estimator #maintBlock input[type=number]{width:120px!important;display:inline-block!important}@media (max-width: 700px){.boq-estimator .grid-2,.boq-estimator .grid-3{grid-template-columns:1fr}.boq-estimator h1{padding:18px 16px;font-size:17px}.boq-estimator #topBar{padding:10px 16px;flex-direction:column;align-items:flex-start}.boq-estimator th,.boq-estimator td{font-size:11px;padding:5px}.boq-estimator td.serial{display:none}.boq-estimator .info-block,.boq-estimator #zonesContainer,.boq-estimator .actions,.boq-estimator hr,.boq-estimator .container>label,.boq-estimator .container>textarea,.boq-estimator .container>br,.boq-estimator .container>button{margin-left:12px;margin-right:12px}}.boq-estimator .app-header{background:var(--forest);padding:26px 32px 22px;border-bottom:1px solid rgba(255,255,255,.07);margin-bottom:0}.boq-estimator .app-header-brand{font-size:20px;font-weight:700;color:#fff;letter-spacing:-.3px;display:flex;align-items:center;gap:10px}.boq-estimator .app-header-brand:before{content:"";display:inline-block;width:8px;height:8px;background:var(--sage-light);border-radius:50%;flex-shrink:0}.boq-estimator .app-header-sub{font-size:12.5px;color:#ffffff85;margin-top:5px;letter-spacing:.1px;padding-left:18px}.boq-estimator .acc-section{margin:0 24px 6px}.boq-estimator .acc-hdr{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--surface-raised);border:1px solid var(--border-lt);border-radius:8px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:background .15s,border-color .15s}.boq-estimator .acc-section.open .acc-hdr{border-radius:8px 8px 0 0;border-bottom-color:transparent;background:var(--forest)}.boq-estimator .acc-hdr:hover{background:#282b38;border-color:var(--border)}.boq-estimator .acc-section.open .acc-hdr:hover{background:var(--forest-mid)}.boq-estimator .acc-num{width:22px;height:22px;background:#43b85426;color:var(--sage);border-radius:50%;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .15s,color .15s}.boq-estimator .acc-section.open .acc-num{background:#ffffff26;color:#fff}.boq-estimator .acc-title{font-size:13px;font-weight:600;color:var(--stone-dk);letter-spacing:.1px;flex-shrink:0}.boq-estimator .acc-section.open .acc-title{color:#fff}.boq-estimator .acc-hint{font-size:11.5px;color:var(--stone);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-left:8px}.boq-estimator .acc-section.open .acc-hint{color:#ffffff80}.boq-estimator .acc-chevron{font-size:20px;color:var(--stone-lt);line-height:1;transition:transform .2s,color .15s;margin-left:auto;flex-shrink:0}.boq-estimator .acc-section.open .acc-chevron{transform:rotate(90deg);color:#ffffffb3}.boq-estimator .acc-body{display:none;background:var(--surface);border:1px solid var(--border-lt);border-top:none;border-radius:0 0 8px 8px;padding:18px 20px 14px;animation:accOpen .18s ease-out}.boq-estimator .acc-section.open .acc-body{display:block}@keyframes accOpen{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.boq-estimator .acc-body>.info-block,.boq-estimator .acc-body .info-block{border:none;border-radius:0;box-shadow:none;margin-bottom:0;padding:0;background:transparent}.boq-estimator .totals-wrap{margin:8px 24px 0}.boq-estimator .export-row{display:flex;gap:10px;margin:16px 24px 32px;flex-wrap:wrap}.boq-estimator #paywallOverlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:#08120cd1;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);align-items:center;justify-content:center;padding:16px}.boq-estimator #paywallBox{background:var(--surface-raised);border-radius:12px;max-width:456px;width:100%;padding:40px 36px 32px;box-shadow:var(--shadow-lg);border:1px solid var(--border-lt);text-align:center}.boq-estimator #paywallBox .pw-icon{font-size:34px;margin-bottom:8px}.boq-estimator #paywallBox h2{color:var(--forest);margin:0 0 8px;font-size:20px;font-weight:700;letter-spacing:-.3px}.boq-estimator #paywallBox .pw-sub{color:var(--stone);font-size:13.5px;margin-bottom:20px;line-height:1.65}.boq-estimator #paywallBox .pw-price{font-size:38px;font-weight:700;color:var(--forest);margin-bottom:2px;letter-spacing:-1.5px}.boq-estimator #paywallBox .pw-price-note{font-size:11px;color:var(--stone-lt);margin-bottom:20px;letter-spacing:.3px;text-transform:uppercase}.boq-estimator #paywallBox .pw-features{text-align:left;background:var(--green-pale);border-radius:8px;padding:13px 16px;margin-bottom:22px;font-size:13px;color:var(--stone-dk);border:1px solid rgba(74,128,96,.15)}.boq-estimator #paywallBox .pw-features li{margin-bottom:6px;list-style:none;padding-left:2px}.boq-estimator #paywallBox .pw-features li:before{content:"✓  ";color:var(--sage);font-weight:700}.boq-estimator #paywallBox .pw-pay-btn{display:block;width:100%;padding:14px;background:var(--brass);color:#fff;border:none;border-radius:8px;font-size:15px;font-weight:700;cursor:pointer;margin-bottom:20px;text-decoration:none;letter-spacing:.1px;transition:background .15s;font-family:DM Sans,sans-serif}.boq-estimator #paywallBox .pw-pay-btn:hover{background:var(--brass-hover)}.boq-estimator #paywallBox .pw-divider{display:flex;align-items:center;gap:10px;color:var(--stone-lt);font-size:11px;margin-bottom:14px;letter-spacing:.3px;text-transform:uppercase}.boq-estimator #paywallBox .pw-divider:before,.boq-estimator #paywallBox .pw-divider:after{content:"";flex:1;height:1px;background:var(--border)}.boq-estimator #paywallBox .pw-code-row{display:flex;gap:8px;margin-bottom:8px}.boq-estimator #paywallBox #unlockCodeInput{flex:1;padding:10px 12px;border-radius:6px;border:1px solid var(--border);font-size:14px;background:var(--surface-raised);color:var(--forest);letter-spacing:3px;text-transform:uppercase;outline:none;font-weight:700;font-family:DM Sans,monospace}.boq-estimator #paywallBox #unlockCodeInput:focus{border-color:var(--sage);box-shadow:0 0 0 3px #4a80601a}.boq-estimator #paywallBox .pw-unlock-btn{padding:10px 20px;background:var(--forest);color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;font-family:DM Sans,sans-serif}.boq-estimator #paywallBox .pw-unlock-btn:hover{background:var(--forest-mid)}.boq-estimator #paywallBox #unlockError{color:var(--red);font-size:12px;min-height:18px;margin-bottom:6px}.boq-estimator #paywallBox .pw-close{background:none;border:none;color:var(--stone-lt);font-size:11.5px;cursor:pointer;margin-top:8px;text-decoration:underline;font-family:DM Sans,sans-serif}.boq-estimator #paywallBox .pw-close:hover{color:var(--stone)}.boq-estimator .boq-lead-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:9998;background:#000000bf;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);align-items:center;justify-content:center;padding:16px}.boq-estimator .boq-lead-box{position:relative;background:#1e212d;border:1px solid #2C2F3A;border-radius:12px;max-width:440px;width:100%;padding:36px 32px 28px;box-shadow:0 16px 48px #0006;text-align:center}.boq-estimator .boq-lead-box .boq-lead-close{position:absolute;top:12px;right:14px;width:32px;height:32px;padding:0;border:none;border-radius:6px;background:transparent;color:#b9babd;font-size:22px;line-height:1;cursor:pointer;transition:color .15s,background .15s}.boq-estimator .boq-lead-box .boq-lead-close:hover{color:#fff;background:#ffffff14}.boq-estimator .boq-lead-box .boq-lead-icon{font-size:30px;margin-bottom:10px}.boq-estimator .boq-lead-box h2{color:#fff;margin:0 0 8px;font-size:20px;font-weight:700;letter-spacing:-.2px}.boq-estimator .boq-lead-box p{color:#b9babd;font-size:13.5px;margin-bottom:22px;line-height:1.65}.boq-estimator .boq-lead-box input{width:100%;padding:10px 12px;border:1px solid #2C2F3A;border-radius:6px;font-size:13.5px;margin-bottom:10px;background:#292c3a;color:#fff;box-sizing:border-box;font-family:inherit}.boq-estimator .boq-lead-box input:last-of-type{margin-bottom:18px}.boq-estimator .boq-lead-box .boq-lead-submit{width:100%;padding:14px;background:#43b854;color:#fff;border:none;border-radius:8px;font-size:15px;font-weight:700;cursor:pointer;font-family:inherit;letter-spacing:.1px}.boq-estimator .boq-lead-box .boq-lead-submit:hover{filter:brightness(1.08)}.boq-estimator .boq-lead-box #leadError{color:#ff6b6b;font-size:12px;min-height:16px;margin-top:8px}
