:root{--qt-line:#e4e7ec;--qt-soft:#f7f8fa;--qt-ink:#26303d;--qt-muted:#6b7684;--qt-row:42px}.project-head{margin-bottom:12px}.project-head .back-link{margin-bottom:6px}.project-head-row{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:12px}.project-head-copy{min-width:0}.project-title-line{display:flex;align-items:baseline;gap:18px;flex-wrap:wrap;margin-top:4px}.project-title-line h1{font-size:25px;font-weight:800;letter-spacing:-.8px;line-height:1.25;margin:0}.project-title-line .detail-meta{font-size:12px;gap:14px}.project-head .workspace-tabs{margin-bottom:0}.project-head .workspace-tab{padding-bottom:11px}.journey-panel{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:0 2px 10px #1f293708}.journey{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding:10px 12px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#fcfcfd,#f8f9fb)}.journey-step{position:relative;display:flex;align-items:center;gap:11px;border:0;background:none;padding:8px 12px;border-radius:10px;text-align:left;min-width:0;color:var(--qt-muted)}.journey-step:hover{background:#f1f3f6}.journey-step.selected{background:#fff;box-shadow:0 1px 4px #1f293714,0 0 0 1px #eceef2}.journey-dot{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;border:1.5px solid #dfe3e8;background:#fff;font-size:12px;font-weight:800;color:#9aa3ae;z-index:1}.journey-dot svg{width:16px;height:16px}.journey-copy{display:flex;flex-direction:column;min-width:0}.journey-copy strong{font-size:13px;font-weight:800;color:#4d5765;white-space:nowrap}.journey-copy small{font-size:11px;color:#8b94a0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}.journey-line{position:absolute;right:-18px;top:50%;width:24px;height:2px;background:#e3e6ea;border-radius:2px}.journey-step.done .journey-dot{background:#edf6f0;border-color:#cfe5d7;color:#3f7d5a}.journey-step.done .journey-line{background:#bcd9c6}.journey-step.done .journey-copy strong{color:#3f6d53}.journey-step.current .journey-dot{border-color:var(--red);color:var(--red);background:#fff6f4}.journey-step.current .journey-copy strong{color:var(--qt-ink)}.journey-step.selected .journey-dot{background:var(--red);border-color:var(--red);color:#fff;box-shadow:0 0 0 4px #c91b1218}.journey-step.done.selected .journey-dot{background:#3f7d5a;border-color:#3f7d5a;color:#fff;box-shadow:0 0 0 4px #3f7d5a1f}.journey-step.selected .journey-copy strong{color:var(--qt-ink)}.journey-content{padding:0}.step-workspace{display:flex;flex-direction:column;min-width:0;width:100%}.step-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 14px;border-bottom:1px solid var(--line);background:#fff}.step-toolbar-side{display:flex;align-items:center;gap:10px;flex-shrink:0}.step-toolbar-side .stage-documents-button{min-height:36px;padding:6px 10px;font-size:12px}.step-toolbar-title{display:flex;align-items:center;gap:10px;min-width:0}.step-toolbar-title>svg{width:30px;height:30px;padding:6px;border-radius:8px;background:var(--red-soft);color:var(--red);flex-shrink:0}.step-toolbar-title strong{display:block;font-size:14px}.step-toolbar-title span{display:block;font-size:11px;color:var(--qt-muted)}.step-body{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:0;min-height:0}.step-main,.step-rail{min-width:0;padding:14px;display:flex;flex-direction:column;gap:12px}.step-rail{border-left:1px solid var(--line);background:#fafbfc}.wz-tabs{min-width:0;overflow-x:auto;scrollbar-width:thin}.wz-tabs ol{display:flex;gap:4px;list-style:none;margin:0;padding:2px}.wz-tab{display:flex;align-items:center;gap:8px;border:1px solid transparent;background:none;border-radius:999px;padding:6px 12px 6px 6px;font-size:12px;font-weight:700;color:#6b7581;white-space:nowrap;min-height:36px}.wz-tab:hover:not(:disabled){background:#f3f4f7}.wz-tab-number{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:#eef0f3;color:#7c8592;font-size:11px;font-weight:800;flex-shrink:0}.wz-tab-number svg{width:13px;height:13px}.wz-tab.done .wz-tab-number{background:#e6f3ea;color:#3f7d5a}.wz-tab.active{background:var(--red-soft);border-color:#f2d3cd;color:#a8241a}.wz-tab.active .wz-tab-number{background:var(--red);color:#fff}.wz-tab:disabled{opacity:.45}.save-indicator{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:#8a939e;white-space:nowrap}.save-indicator svg{width:15px;height:15px}.save-indicator.saved{color:#3f7d5a}.save-indicator.saving{color:#6b7684}.save-indicator.error{color:#b3261e}.save-indicator .text-link{font-size:11px;color:inherit;text-decoration:underline;padding:0;margin-left:2px}.step-banner{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:10px;border:1px solid #e3e8ef;background:#f6f8fb;font-size:12px;color:#55606e}.step-banner>svg{width:20px;height:20px;flex-shrink:0;color:#6c7a8c}.step-banner>div{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:2px;line-height:1.5}.step-banner strong{font-size:13px;color:#2f3946}.step-banner.info{background:#f2f6fc;border-color:#d9e4f3}.step-banner.info>svg{color:#4b74a6}.step-banner.success{background:#f1f8f3;border-color:#d4e9db}.step-banner.success>svg{color:#3f7d5a}.step-banner.warning{background:#fff8ec;border-color:#f0dfba}.step-banner.warning>svg{color:#a0711f}.step-banner .btn{flex-shrink:0}.qt-total-card{border-radius:12px;padding:14px 16px;background:linear-gradient(145deg,#2b1715,#4a1d18 55%,#7a1f15);color:#fff;box-shadow:0 8px 24px #5a1a1222}.qt-total-card .eyebrow{color:#f3c3b9;letter-spacing:.12em}.qt-total-card output{display:block;font-size:26px;font-weight:800;letter-spacing:-.8px;margin:4px 0 2px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.qt-total-card>small{display:block;font-size:11px;color:#f1d4cd}.qt-total-card dl{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px;margin:12px 0 0;padding-top:12px;border-top:1px solid #ffffff22}.qt-total-card dl div{min-width:0}.qt-total-card dt{font-size:10px;color:#eeb9ad}.qt-total-card dd{margin:2px 0 0;font-size:13px;font-weight:750;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.next-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px;display:flex;flex-direction:column;align-items:flex-start;gap:6px}.next-card-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:9px;background:var(--red-soft);color:var(--red);margin-bottom:4px}.next-card-icon svg{width:17px;height:17px}.next-card.done .next-card-icon{background:#e9f4ed;color:#3f7d5a}.next-card .eyebrow{color:#a7766b}.next-card.done .eyebrow{color:#5d8a6f}.next-card h3{font-size:17px;font-weight:800;letter-spacing:-.4px;line-height:1.35}.next-card>p{font-size:12px;color:var(--qt-muted);line-height:1.65}.next-card>.btn{width:100%;margin-top:6px;min-height:42px;font-size:12px}.next-card-reason{font-size:11px!important;color:#a0711f!important}.next-card-link{font-size:12px;padding:4px 0}.next-card-gates{list-style:none;margin:8px 0 0;padding:10px 0 0;border-top:1px solid #eef0f3;width:100%;display:flex;flex-direction:column;gap:6px}.next-card-gates li{display:flex;align-items:center;gap:8px;font-size:12px;color:#8a939e}.next-card-gates svg{width:15px;height:15px;flex-shrink:0;color:#b2b9c2}.next-card-gates li.ok{color:#3f6d53}.next-card-gates li.ok svg{color:#3f7d5a}.qt-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:9px;background:var(--tone-bg,#f1f3f6);color:var(--tone-fg,#5f6b78)}.qt-icon-sm{width:30px;height:30px;border-radius:8px}.qt-icon-sm svg{width:16px;height:16px}.qt-icon-md{width:36px;height:36px}.qt-icon-md svg{width:18px;height:18px}.qt-icon-lg{width:44px;height:44px;border-radius:11px}.qt-icon-lg svg{width:22px;height:22px}[data-tone=blue]{--tone-bg:#eaf1fb;--tone-fg:#3d6aa8;--tone-bar:#7aa0d6}[data-tone=brick]{--tone-bg:#fbede7;--tone-fg:#b4532f;--tone-bar:#e08a68}[data-tone=slate]{--tone-bg:#edf0f4;--tone-fg:#55657a;--tone-bar:#93a2b5}[data-tone=amber]{--tone-bg:#fcf2df;--tone-fg:#a8711a;--tone-bar:#e2b45c}[data-tone=teal]{--tone-bg:#e5f4f0;--tone-fg:#2b7b6c;--tone-bar:#62b3a2}[data-tone=violet]{--tone-bg:#f1ecfb;--tone-fg:#6c55a6;--tone-bar:#a690d6}[data-tone=sky]{--tone-bg:#e7f3fb;--tone-fg:#2f7ca3;--tone-bar:#6fb2d8}[data-tone=cyan]{--tone-bg:#e4f5f7;--tone-fg:#2a8190;--tone-bar:#5fb8c4}[data-tone=rose]{--tone-bg:#fbebf0;--tone-fg:#b2476a;--tone-bar:#e08aa6}[data-tone=green]{--tone-bg:#e9f5ec;--tone-fg:#3c7d50;--tone-bar:#78b78b}[data-tone=labor]{--tone-bg:#f4efe6;--tone-fg:#7a6542;--tone-bar:#c4a774}.qt-editor{display:grid;grid-template-columns:232px minmax(0,1fr);gap:12px;min-height:0;flex:1 1}.qt-editor-single{grid-template-columns:minmax(0,1fr)}.qt-nav{display:flex;flex-direction:column;min-height:0;border:1px solid var(--qt-line);border-radius:12px;background:#fff;padding:8px;gap:2px;overflow:auto}.qt-nav-title{font-size:10px;font-weight:800;letter-spacing:.11em;text-transform:uppercase;color:#9aa2ad;padding:6px 8px 4px}.qt-nav ol{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.qt-nav-item{display:flex;align-items:center;gap:10px;width:100%;border:1px solid transparent;background:none;border-radius:9px;padding:6px 8px;text-align:left;min-height:44px}.qt-nav-item:hover{background:#f5f6f8}.qt-nav-item.active{background:#fff5f2;border-color:#f3d6cf}.qt-nav-copy{display:flex;flex-direction:column;min-width:0;flex:1 1}.qt-nav-copy strong{font-size:12.5px;font-weight:750;color:#39424e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.qt-nav-copy small{font-size:11px;color:#9aa2ad;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.qt-nav-item.filled .qt-nav-copy small{color:#5f7a68;font-weight:650}.qt-nav-item.active .qt-nav-copy strong{color:#a8241a}.qt-nav-check{display:flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:#e3f2e8;color:#3f7d5a;flex-shrink:0}.qt-nav-check svg{width:11px;height:11px}.qt-nav-summary{margin-top:auto;border-top:1px solid #eef0f3;padding:10px 8px 4px;display:flex;flex-direction:column;gap:6px}.qt-nav-summary div{display:flex;justify-content:space-between;gap:8px;font-size:11px;color:var(--qt-muted)}.qt-nav-summary strong{color:#3a4450;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.qt-nav-summary .total{font-size:12px;color:#2b3440;padding-top:6px;border-top:1px dashed #e3e6ea}.qt-panel{display:flex;flex-direction:column;min-height:0;min-width:0;border:1px solid var(--qt-line);border-radius:12px;background:#fff;overflow:hidden}.qt-panel-header{display:flex;align-items:center;gap:12px;padding:12px 14px;border-bottom:1px solid #eef0f3}.qt-panel-title{flex:1 1;min-width:0}.qt-panel-title .eyebrow{font-size:9px;color:#9a8c86}.qt-panel-title h3{font-size:17px;font-weight:800;letter-spacing:-.4px;line-height:1.3}.qt-panel-title p{font-size:11.5px;color:var(--qt-muted);line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.qt-panel-total{text-align:right;flex-shrink:0}.qt-panel-total span{display:block;font-size:10px;color:#9aa2ad}.qt-panel-total strong{display:block;font-size:19px;font-weight:800;letter-spacing:-.5px;color:var(--qt-ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.qt-panel-total small{display:block;font-size:10.5px;color:#8a939e}.qt-view-switch{display:flex;gap:4px;padding:8px 14px 0}.qt-view-switch button{border:0;background:none;border-bottom:2px solid transparent;padding:6px 4px;margin-right:10px;font-size:12px;font-weight:700;color:#7d8693;display:flex;align-items:center;gap:6px}.qt-view-switch button.active{color:#a8241a;border-bottom-color:var(--red)}.qt-count{font-size:10px;background:#eef0f3;color:#6b7581;padding:1px 6px;border-radius:5px}.qt-panel-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 14px;border-top:1px solid #eef0f3;background:#fbfbfc}.qt-step-count{font-size:11px;color:#9aa2ad}.qt-items{flex:1 1;min-height:0;overflow:auto;padding:6px 8px 8px}.qt-item{display:grid;grid-template-columns:38px minmax(0,1fr) 150px 118px 58px;align-items:center;gap:10px;min-height:var(--qt-row);padding:4px 6px;border-radius:9px}.qt-item:hover{background:#fafbfc}.qt-item.filled{background:#fffaf8}.qt-item.filled:hover{background:#fff5f2}.qt-code{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:24px;padding:0 6px;border-radius:6px;background:#f1f3f6;color:#6b7581;font-size:10.5px;font-weight:800;letter-spacing:.02em}.qt-item.filled .qt-code{background:#fbe5df;color:#a8241a}.qt-item-copy{min-width:0;display:flex;flex-direction:column}.qt-item-copy strong{font-size:12.5px;font-weight:700;color:#333c48;line-height:1.35}.qt-item-copy small{font-size:10.5px;color:#9aa2ad;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.qt-item-total{text-align:right;font-size:12.5px;font-weight:750;color:var(--qt-ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.qt-item-total.muted{color:#c2c8cf;font-weight:500}.qt-expand{display:flex;align-items:center;justify-content:center;gap:3px;border:1px solid transparent;background:none;border-radius:7px;color:#9aa2ad;font-size:10.5px;font-weight:700;height:30px;padding:0 4px}.qt-expand svg{width:13px;height:13px}.qt-expand:hover,.qt-expand[aria-expanded=true]{background:#f1f3f6;color:#55606e}.qt-expand[aria-expanded=true] svg:last-child{transform:rotate(180deg)}.qt-item-materials{margin:0 6px 6px 54px;border:1px solid #eef0f3;border-radius:9px;background:#fbfbfc;padding:6px 10px;font-size:11.5px}.qt-item-materials>div{display:grid;grid-template-columns:minmax(0,1fr) 110px 90px 100px;gap:8px;padding:4px 0;border-bottom:1px dashed #eceef1;color:#4f5967}.qt-item-materials>div:last-child{border-bottom:0}.qt-item-materials>div>span:not(:first-child){text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.qt-item-materials .qt-item-materials-head{font-size:10px;font-weight:750;text-transform:uppercase;letter-spacing:.05em;color:#9aa2ad;border-bottom:1px solid #e6e9ed}.qt-item-materials p{color:#9aa2ad;margin:4px 0}.qt-quantity{display:flex;align-items:center;gap:6px;height:36px;border:1px solid #dde1e7;border-radius:8px;background:#fff;padding:0 10px;min-width:0;transition:border-color .15s,box-shadow .15s}.qt-quantity:focus-within{border-color:var(--red);box-shadow:0 0 0 3px #c91b1214}.qt-quantity input{border:0;outline:0;background:transparent;width:100%;min-width:0;font-size:14px;font-weight:700;color:var(--qt-ink);text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;padding:0}.qt-quantity input::placeholder{color:#c3c9d0;font-weight:500}.qt-quantity.has-value{border-color:#e8bfb5;background:#fffdfc}.qt-quantity.is-disabled{background:#f6f7f9;border-color:#e8ebef}.qt-quantity.is-disabled input{color:#6b7581}.qt-quantity-unit{font-size:11px;color:#8a939e;white-space:nowrap;flex-shrink:0}.qt-materials{display:flex;flex-direction:column;gap:8px;padding:10px 14px;min-height:0;flex:1 1}.qt-materials-empty{flex:1 1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:30px;color:#8a939e;font-size:12px;text-align:center}.qt-materials-empty svg{width:28px;height:28px;color:#c3c9d0}.qt-search{display:flex;align-items:center;gap:8px;height:36px;border:1px solid var(--line);border-radius:8px;padding:0 10px;background:#fff;min-width:0}.qt-search svg{width:15px;height:15px;color:#9aa2ad;flex-shrink:0}.qt-search input{border:0;outline:0;width:100%;font-size:12px;background:transparent}.qt-table-scroll{overflow:auto;min-height:0;flex:1 1;border:1px solid #eef0f3;border-radius:10px}.qt-table{width:100%;border-collapse:collapse;font-size:12px}.qt-table th{position:sticky;top:0;z-index:1;background:#f8f9fb;text-align:left;font-size:10px;font-weight:750;text-transform:uppercase;letter-spacing:.05em;color:#8a939e;padding:9px 10px;border-bottom:1px solid #e9ecf0;white-space:nowrap}.qt-table td{padding:7px 10px;border-bottom:1px solid #f0f2f4;color:#3f4955;vertical-align:middle}.qt-table td small{display:block;font-size:10.5px;color:#9aa2ad;margin-top:1px}.qt-table .num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.qt-table .strong{font-weight:750;color:var(--qt-ink)}.qt-table tfoot td{position:sticky;bottom:0;background:#fff8f6;font-weight:750;border-top:1px solid #f0d9d3;color:#5d2a22}.qt-chips{display:flex;flex-wrap:wrap;gap:4px}.qt-chip{display:inline-flex;align-items:center;padding:2px 7px;border-radius:5px;background:#f1f3f6;color:#5f6a77;font-size:10.5px;font-weight:700;white-space:nowrap}.qt-labor{flex:1 1;min-height:0;overflow:auto;padding:6px 8px 8px}.qt-labor-row{display:grid;grid-template-columns:minmax(0,1fr) 96px 96px 156px 118px;align-items:center;gap:10px;min-height:52px;padding:4px 6px;border-radius:9px}.qt-labor-row:hover{background:#fafbfc}.qt-labor-row.filled{background:#fffaf8}.qt-field{display:flex;flex-direction:column;gap:2px;min-width:0}.qt-field>span{font-size:9.5px;font-weight:750;text-transform:uppercase;letter-spacing:.06em;color:#9aa2ad}.qt-field-wide{grid-column:span 2}.qt-labor-head{display:grid;grid-template-columns:minmax(0,1fr) 96px 96px 156px 118px;gap:10px;padding:2px 6px 6px;font-size:9.5px;font-weight:750;text-transform:uppercase;letter-spacing:.06em;color:#9aa2ad;border-bottom:1px solid #f0f2f4;margin-bottom:4px}.qt-labor-head span:last-child{text-align:right}.qt-labor-head .wide{grid-column:span 2}.qt-labor:not(.mixed) .qt-field>span{display:none}.qt-labor:not(.mixed) .qt-labor-row{min-height:var(--qt-row)}.qt-labor-formula{font-size:11px;color:#8a939e;line-height:1.4}.qt-summary{display:grid;grid-template-columns:minmax(330px,.85fr) minmax(0,1.15fr);gap:12px;min-height:0;flex:1 1}.qt-summary-main{display:flex;flex-direction:column;gap:12px;min-height:0;overflow:auto}.qt-alert{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;background:#fff8ec;border:1px solid #f0dfba;font-size:12px;color:#6e5320}.qt-alert>svg{width:18px;height:18px;flex-shrink:0;color:#a0711f}.qt-alert>div{flex:1 1;display:flex;flex-direction:column;gap:2px}.proposal-card,.qt-bars,.qt-price-build,.qt-summary-materials{border:1px solid var(--qt-line);border-radius:12px;background:#fff;padding:14px}.proposal-card h3,.qt-bars h3,.qt-price-build h3,.qt-summary-materials h3{font-size:13px;font-weight:800;color:#2f3946;margin-bottom:8px;display:flex;align-items:center;gap:8px}.proposal-card h3 svg{width:16px;height:16px;color:#9a6b5f}.qt-build-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:5px 0;font-size:12.5px;color:#4f5967}.qt-build-row strong{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--qt-ink)}.qt-build-row.sub{font-size:11px;color:#9aa2ad;padding-top:0}.qt-build-row.param{grid-template-columns:minmax(0,1fr) 112px 130px}.qt-build-row.param strong,.qt-build-row.param>span:last-child{text-align:right}.qt-build-row.param .qt-quantity{height:32px}.qt-build-row.subtotal{border-top:1px dashed #e3e6ea;margin-top:2px;padding-top:7px;font-weight:700;color:#2f3946}.qt-build-total{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:8px 0 6px;padding:12px 14px;border-radius:10px;background:linear-gradient(135deg,#fff3ef,#fde6df);color:#7a2014}.qt-build-total span{font-size:12px;font-weight:750}.qt-build-total output{font-size:22px;font-weight:800;letter-spacing:-.6px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.qt-bar{display:grid;grid-template-columns:30px minmax(90px,140px) minmax(0,1fr) 72px;align-items:center;gap:10px;padding:4px 0}.qt-bar-label{font-size:12px;font-weight:650;color:#3f4955;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.qt-bar-track{height:10px;border-radius:6px;background:#f1f3f6;overflow:hidden}.qt-bar-track span{display:block;height:100%;border-radius:6px;background:var(--tone-bar,#9aa2ad);transition:width .3s ease}.qt-bar strong{font-size:11.5px;text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:#3a4450}.qt-summary-materials{display:flex;flex-direction:column;gap:10px;min-height:0}.qt-summary-materials header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.qt-summary-materials header h3{margin-bottom:2px}.qt-summary-materials header p{font-size:11px;color:#8a939e}.qt-summary-tools{display:flex;gap:8px;align-items:center}.qt-summary-tools .qt-search{flex:1 1}.qt-materials-table td .qt-quantity{height:30px;width:96px;margin-left:auto;padding:0 8px}.qt-materials-table td{padding-top:5px;padding-bottom:5px}.qt-materials-table td .qt-quantity input{font-size:12px}.qt-row-toggle{display:flex;align-items:center;gap:8px;border:0;background:none;padding:0;text-align:left;min-width:0;color:inherit}.qt-row-toggle>svg{width:14px;height:14px;color:#a3abb5;flex-shrink:0;transition:transform .15s}.qt-row-toggle[aria-expanded=true]>svg{transform:rotate(180deg)}.qt-row-toggle strong{display:block;font-size:12px;font-weight:700;color:#333c48}.qt-breakdown td,.qt-materials-table tr.expanded td{background:#fffaf8}.qt-breakdown td{padding-top:0}.qt-breakdown td>span:first-child{font-size:10.5px;color:#9aa2ad;margin-right:6px}.qt-breakdown .qt-chip{margin:2px 4px 2px 0;background:#fff;border:1px solid #f0dcd6}.restart-row{display:flex;align-items:center;gap:10px;padding:8px 12px;border:1px dashed #dfe3e8;border-radius:10px;font-size:12px;color:var(--qt-muted)}.restart-row svg{width:16px;height:16px;flex-shrink:0}.restart-row span{flex:1 1}.design-panel,.plan-panel,.proposal-panel{display:flex;flex-direction:column;gap:12px;min-height:0}.proposal-hero{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 16px;border-radius:12px;background:linear-gradient(120deg,#fff,#fff6f3);border:1px solid #f1dcd5}.proposal-hero>div:first-child{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.proposal-hero .eyebrow{color:#a7766b}.proposal-hero strong{display:block;font-size:22px;font-weight:800;letter-spacing:-.6px;color:#2b1715;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.proposal-hero small{font-size:12px;color:#8a6a62}.proposal-status{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700;color:#55606e;background:#fff;border:1px solid var(--line);border-radius:999px;padding:7px 12px;white-space:nowrap}.proposal-dot{width:8px;height:8px;border-radius:50%;background:#c3c9d0}.proposal-dot.sent{background:#d6912b}.proposal-dot.ok{background:#3f9364}.proposal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}.proposal-card .installments{margin:6px 0 0}.proposal-card .payment-plan{padding:14px;margin-top:10px}.proposal-card .field textarea{min-height:90px}.proposal-pdf{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px;padding-top:12px;border-top:1px solid #eef0f3;font-size:12px;color:var(--qt-muted)}.proposal-pdf span{display:flex;align-items:center;gap:6px}.proposal-pdf svg{width:16px;height:16px;color:#3f7d5a}.proposal-note{display:flex;align-items:center;gap:8px;font-size:11.5px;color:#8a939e}.proposal-note svg{width:15px;height:15px}.design-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}.design-billing{display:flex;align-items:center;gap:16px;margin:12px 0;padding:10px 12px;border-radius:10px;background:var(--qt-soft)}.design-billing>div span{display:block;font-size:10px;color:#9aa2ad}.design-billing>div strong{font-size:15px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.design-billing .btn{margin-left:auto}.design-docs .stage-document-upload{margin-bottom:12px}.check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:14px}.check-tile{gap:10px;padding:12px;border:1px solid var(--qt-line);border-radius:10px}.check-tile,.check-tile>span{display:flex;align-items:center}.check-tile>span{justify-content:center;width:32px;height:32px;border-radius:50%;background:#fcf2df;color:#a8711a;flex-shrink:0}.check-tile.ok>span{background:#e6f3ea;color:#3f7d5a}.check-tile>span svg{width:16px;height:16px}.check-tile>div{flex:1 1;min-width:0}.check-tile strong{display:block;font-size:12.5px}.check-tile small{display:block;font-size:11px;color:#8a939e}.execution-head{display:flex;align-items:center;justify-content:space-between}.execution-head strong{font-size:24px;font-weight:800;color:#3f7d5a}.execution-bar{height:10px;border-radius:6px;background:#eef1f3;overflow:hidden;margin:4px 0 12px}.execution-bar span{display:block;height:100%;background:linear-gradient(90deg,#6aa986,#3f7d5a);border-radius:6px;transition:width .3s}.phase-list{display:flex;flex-direction:column;gap:4px}.phase-row{display:grid;grid-template-columns:30px minmax(140px,220px) minmax(0,1fr) 48px;align-items:center;gap:12px;padding:6px 8px;border-radius:9px}.phase-row:hover{background:#fafbfc}.phase-row.done{background:#f4faf6}.phase-copy strong{display:block;font-size:12.5px}.phase-copy small{display:block;font-size:11px;color:#8a939e}.phase-row input[type=range]{width:100%;accent-color:#3f7d5a}.phase-row output{font-size:12.5px;font-weight:800;text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.qt-empty{flex-direction:column;gap:6px;text-align:center;padding:24px;color:#8a939e}.qt-empty,.qt-empty span{display:flex;align-items:center}.qt-empty span{justify-content:center;width:40px;height:40px;border-radius:11px;background:#f1f3f6}.qt-empty strong{color:#3f4955}@media (min-width:1100px) and (min-height:660px){body:has(.journey-panel),html:has(.journey-panel){overflow:hidden}.workspace:has(.journey-panel){height:100dvh;min-height:0}.workspace:has(.journey-panel) .main-content{flex:1 1;min-height:0;display:flex;flex-direction:column;padding-bottom:14px}.workspace:has(.journey-panel) .app-footer{display:none}.journey-panel{flex:1 1;min-height:0;display:flex;flex-direction:column}.journey-content{display:flex}.journey-content,.step-body,.step-workspace{flex:1 1;min-height:0}.step-main{min-height:0;overflow:auto}.step-main:has(>.qt-editor),.step-main:has(>.qt-summary){overflow:hidden}.step-rail{min-height:0;overflow:auto}}@media (min-width:1700px){.main-content:has(.journey-panel){max-width:1680px}}@media (max-width:1380px){.qt-labor-head{grid-template-columns:minmax(0,1fr) 84px 84px 132px 104px}.step-body{grid-template-columns:minmax(0,1fr) 268px}.qt-editor{grid-template-columns:206px minmax(0,1fr)}.qt-item{grid-template-columns:36px minmax(0,1fr) 128px 104px 52px}.qt-labor-row{grid-template-columns:minmax(0,1fr) 84px 84px 132px 104px}.qt-summary{grid-template-columns:minmax(0,1fr);flex:none}.qt-summary-main{overflow:visible;min-height:auto}.step-main:has(>.qt-summary){overflow:auto}.qt-summary-materials{min-height:420px;max-height:560px}}@media (max-width:1100px){.step-body{grid-template-columns:1fr}.step-rail{border-left:0;border-top:1px solid var(--line);order:-1;display:grid;grid-template-columns:1fr 1fr}.journey-copy small{display:none}.design-panel,.proposal-grid{grid-template-columns:1fr}}.tab-label-short{display:none}.workspace-tab .tab-label,.workspace-tab .tab-label-short{padding:0;border-radius:0;background:none;font-size:inherit}@media (max-width:800px){.project-head-row{flex-direction:column;align-items:flex-start;gap:10px}.project-head .heading-actions a.btn{display:none}.project-head .heading-actions .btn{min-height:38px;padding:7px 12px}.project-title-line h1{font-size:22px}.project-title-line .detail-meta{gap:6px 12px;flex-wrap:wrap}.project-head .workspace-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;overflow:visible}.project-head .workspace-tab{flex-direction:column;justify-content:center;gap:3px;min-width:0;padding:6px 2px 9px;font-size:11px;text-align:center}.tab-label{display:none}.tab-label-short{display:inline;max-width:100%;overflow:hidden;text-overflow:ellipsis}.journey{grid-template-columns:repeat(4,minmax(0,1fr));overflow:visible;padding:10px 4px 8px}.journey-step{flex-direction:column;align-items:center;gap:5px;padding:4px 2px;text-align:center}.journey-step.selected,.journey-step:hover{background:none;box-shadow:none}.journey-dot{width:30px;height:30px}.journey-copy{align-items:center;width:100%}.journey-copy strong{max-width:100%;overflow:hidden;text-overflow:ellipsis;font-size:11px}.journey-step.selected .journey-copy strong{color:var(--red)}.journey-step.done.selected .journey-copy strong{color:#3f6d53}.journey-line{display:block;top:18px;left:calc(50% + 19px);right:auto;width:calc(100% - 38px)}.step-toolbar{flex-direction:column;align-items:stretch;padding:8px 12px}.step-toolbar-side{justify-content:space-between}.qt-nav,.wz-tabs{scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,transparent,#000 12px,#000 calc(100% - 28px),transparent);mask-image:linear-gradient(90deg,transparent,#000 12px,#000 calc(100% - 28px),transparent)}.qt-nav::-webkit-scrollbar,.wz-tabs::-webkit-scrollbar{display:none}.wz-tabs{margin:0 -12px;padding:0 12px}.wz-tabs ol{padding-right:28px}.step-body{display:flex;flex-direction:column}.step-rail{padding:10px;gap:8px}.qt-editor,.step-rail{grid-template-columns:1fr}.qt-nav{flex-direction:row;overflow-x:auto;padding:6px}.qt-nav ol{flex-direction:row;padding-right:28px}.qt-nav-item{width:auto;flex:0 0 auto;min-width:0;padding:6px 10px}.qt-nav-copy strong{max-width:160px}.qt-nav-summary,.qt-nav-title{display:none}.qt-item{grid-template-columns:34px 116px minmax(0,1fr) auto;grid-template-areas:"code copy copy copy" ". input total expand";row-gap:8px;padding:10px 4px;border-radius:0;border-bottom:1px solid #f1f3f5}.qt-item .qt-code{grid-area:code;align-self:start;margin-top:1px}.qt-item .qt-item-copy{grid-area:copy}.qt-item .qt-quantity{grid-area:input}.qt-item .qt-item-total{grid-area:total;text-align:left}.qt-item .qt-expand{grid-area:expand;justify-self:end}.qt-item-copy small{white-space:normal}.qt-item-materials{margin-left:6px}.qt-item-materials>div{grid-template-columns:minmax(0,1fr) 90px 90px}.qt-item-materials>div>span:nth-child(3),.qt-labor-head{display:none}.qt-labor:not(.mixed) .qt-field>span{display:block}.qt-labor-row{grid-template-columns:1fr 1fr;row-gap:8px;padding:10px 4px;border-radius:0;border-bottom:1px solid #f1f3f5}.qt-labor-row .qt-field-wide,.qt-labor-row .qt-item-copy{grid-column:1/-1}.qt-panel-header{flex-wrap:wrap}.qt-panel-total{text-align:left;width:100%;display:flex;align-items:baseline;gap:8px}.qt-panel-total small{margin-left:auto}.qt-build-row.param{grid-template-columns:minmax(0,1fr) 104px;row-gap:2px}.qt-build-row.param>span:last-child,.qt-build-row.param>strong{grid-column:1/-1;justify-self:end;white-space:nowrap}.proposal-hero{flex-direction:column;align-items:flex-start}.check-grid{grid-template-columns:1fr}.phase-row{grid-template-columns:30px minmax(0,1fr) 48px;grid-template-areas:"icon copy value" "range range range";row-gap:6px}.phase-row>.qt-icon{grid-area:icon}.phase-row .phase-copy{grid-area:copy}.phase-row input[type=range]{grid-area:range}.phase-row output{grid-area:value}}@media (prefers-reduced-motion:reduce){.execution-bar span,.qt-bar-track span{transition:none}}@media (min-width:801px) and (max-width:1440px){.qt-item-copy small{display:none}.qt-item{grid-template-columns:36px minmax(0,1fr) 116px 100px 48px;min-height:38px}.qt-item-copy strong{font-size:12px}.qt-panel-title p{display:none}}@media (min-width:1100px) and (max-height:860px){.main-content:has(.journey-panel){padding-top:12px}.project-head{margin-bottom:8px}.project-head .back-link{display:none}.project-head-row{margin-bottom:6px;align-items:center}.project-title-line h1{font-size:21px}.project-head .heading-actions .btn{min-height:36px;padding:7px 12px}.project-head .workspace-tab{padding-bottom:8px;min-height:28px}.journey{padding:6px 10px}.journey-step{padding:5px 10px}.journey-dot{width:28px;height:28px}.step-toolbar{padding:5px 12px}.wz-tab{min-height:32px;padding:4px 10px 4px 4px}.step-main,.step-rail{padding:10px;gap:10px}.step-banner{padding:6px 12px}.step-banner>div{flex-direction:row;align-items:baseline;gap:8px;flex-wrap:wrap}.step-banner strong{font-size:12px}.qt-panel-header{padding:8px 12px}.qt-icon-lg{width:36px;height:36px}.qt-panel-title h3{font-size:15px}.qt-panel-total strong{font-size:16px}.qt-view-switch{padding-top:4px}.qt-panel-footer{padding:6px 12px}.qt-total-card{padding:12px 14px}.qt-total-card output{font-size:22px}.qt-total-card dl{margin-top:8px;padding-top:8px;gap:6px 10px}.next-card{padding:12px}.next-card h3{font-size:15px}}@media (max-width:800px){.qt-total-card{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:baseline;column-gap:12px;padding:10px 14px}.qt-total-card .eyebrow{grid-column:1/-1}.qt-total-card output{font-size:21px;margin:2px 0 0}.qt-total-card>small{justify-self:end;text-align:right}.qt-total-card dl{display:none}.next-card{padding:12px;gap:4px}.next-card .eyebrow,.next-card-gates,.next-card-icon,.next-card>p:not(.next-card-reason){display:none}.next-card h3{font-size:15px}.next-card>.btn{margin-top:4px}.step-main{padding:10px}.step-toolbar-side .stage-documents-button{min-height:44px}}.catalog-tabs{display:inline-flex;margin-bottom:16px}.catalog-tabs .tab{font-size:12px;min-height:38px;padding:9px 14px}.catalog-tabs .tab svg{width:15px;height:15px}.catalog-card{display:flex;flex-direction:column;gap:12px;padding:16px}.catalog-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.catalog-toolbar .search-field{max-width:260px}.catalog-toolbar .search-field input{font-size:12px}.catalog-filter{flex-wrap:wrap}.catalog-filter .tab{font-size:11px}.catalog-actions{display:flex;gap:8px;margin-left:auto}.catalog-scroll{max-height:calc(100dvh - 330px);min-height:320px}.catalog-table td strong{font-size:12.5px}.catalog-table td .qt-quantity{width:150px;margin-left:auto;height:32px}.catalog-table tr.edited td{background:#fff8f2}.catalog-table tr.inactive td{opacity:.55}.catalog-table .group-row td{background:#f6f7f9;font-size:10.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#7a8592;position:sticky;top:33px}.labor-table td .qt-quantity{width:110px}.labor-table td input[type=checkbox]{accent-color:var(--red);width:16px;height:16px}.catalog-savebar{position:sticky;bottom:0;display:flex;align-items:center;gap:10px;justify-content:flex-end;padding:10px 12px;border:1px solid #f0d9d3;border-radius:10px;background:#fff8f6;font-size:12px;font-weight:700;color:#7a2014}.catalog-savebar>span{margin-right:auto}.recipes-layout{display:grid;grid-template-columns:230px 320px minmax(0,1fr);gap:14px;align-items:start}.recipes-sections{display:flex;flex-direction:column;gap:2px;padding:8px;margin:0}.recipes-items{padding:12px;max-height:calc(100dvh - 250px);overflow:auto;margin:0}.recipes-items .section-heading{margin-bottom:8px}.recipes-items .section-heading h2{font-size:15px}.recipe-item{display:flex;align-items:flex-start;gap:10px;width:100%;border:1px solid transparent;background:none;border-radius:9px;padding:8px;text-align:left}.recipe-item:hover{background:#f6f7f9}.recipe-item.active{background:#fff5f2;border-color:#f3d6cf}.recipe-item.inactive{opacity:.55}.recipe-item strong{display:block;font-size:12px;line-height:1.4;color:#333c48}.recipe-item small{display:block;font-size:10.5px;color:#9aa2ad}.recipe-form{display:flex;flex-direction:column;gap:12px;padding:16px;margin:0}.recipe-form .section-heading{margin-bottom:0}.recipe-form .section-heading h2{font-size:17px}.recipe-lines{display:flex;flex-direction:column;gap:6px;border-top:1px solid #eef0f3;padding-top:10px}.recipe-lines-head{font-size:10px;font-weight:750;text-transform:uppercase;letter-spacing:.05em;color:#9aa2ad}.recipe-line,.recipe-lines-head{display:grid;grid-template-columns:minmax(0,1fr) 200px 36px;gap:10px}.recipe-line{align-items:center;padding:6px 0;border-bottom:1px dashed #eceef1}.recipe-line strong{display:block;font-size:12.5px}.recipe-line small{display:block;font-size:10.5px;color:#9aa2ad;line-height:1.4}.recipe-coefficient input{width:100%;height:34px;border:1px solid #dde1e7;border-radius:8px;padding:0 10px;font-size:13px;font-weight:700;text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.recipe-coefficient input:focus{border-color:var(--red);outline:0;box-shadow:0 0 0 3px #c91b1214}.recipe-coefficient small{text-align:right}.recipe-coefficient small.invalid{color:#b3261e}.recipe-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid #eef0f3;padding-top:12px}.recipe-footer .modal-check{margin:0}.settings-card{max-width:760px;padding:20px}.settings-card h2{font-size:17px;margin-bottom:6px}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:16px 0}.settings-grid .field>span{margin-bottom:6px}@media(max-width:1200px){.recipes-layout{grid-template-columns:220px minmax(0,1fr)}.recipe-form{grid-column:1/-1}}@media(max-width:800px){.recipes-layout{grid-template-columns:1fr}.catalog-actions{margin-left:0}.settings-grid{grid-template-columns:1fr}.recipe-lines-head{display:none}.recipe-line{grid-template-columns:minmax(0,1fr) 36px}.recipe-coefficient{grid-column:1/-1;grid-row:2}}.dialog-content.split{width:900px;max-width:calc(100vw - 28px);overflow:hidden;display:flex;flex-direction:column}.modal-split{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:0;max-height:calc(100dvh - 30px)}.modal-aside{display:flex;flex-direction:column;gap:6px;min-height:0;overflow:auto;padding:26px 24px 22px;background:linear-gradient(165deg,#fff8f5,#fcefea 55%,#f7e5de);border-right:1px solid #f1e1da}.modal-aside .eyebrow{font-size:10px;font-weight:800;letter-spacing:.14em;color:#b2604e}.modal-aside h2{margin:2px 0 0;font-size:22px;font-weight:800;letter-spacing:-.6px;line-height:1.25;color:#2a2f37}.modal-aside .modal-description{margin:4px 0 0;font-size:12.5px;line-height:1.6;color:#7f6d66}.modal-main{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:auto}.modal-main fieldset,.modal-main>form{display:flex;flex-direction:column;flex:1 1;min-height:0}.modal-main fieldset{min-width:0;margin:0;padding:0;border:0}.modal-main .modal-body{flex:1 1;padding:30px 28px 14px}.dialog-content.split>.modal-close{position:absolute;top:12px;right:12px;z-index:3}.new-project-aside{display:flex;flex-direction:column;flex:1 1;gap:12px;margin-top:14px}.new-project-art{aspect-ratio:12/5;border-radius:14px;overflow:hidden;background:#fff;border:1px solid #f0dcd4;box-shadow:0 8px 24px #9b4a3514}.new-project-art img{display:block;width:100%;height:100%;object-fit:cover}.new-project-next{margin-top:auto;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#a47c70}.new-project-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.new-project-steps li{position:relative;display:flex;align-items:flex-start;gap:10px}.new-project-steps li>span{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;border:1.5px solid #e9cfc6;background:#fff;color:#b2604e;font-size:11px;font-weight:800;position:relative;z-index:1}.new-project-steps li:first-child>span{background:var(--red);border-color:var(--red);color:#fff;box-shadow:0 0 0 4px #c91b1214}.new-project-steps li:not(:last-child):after{content:"";position:absolute;left:11px;top:25px;bottom:-12px;width:2px;background:#eed8cf}.new-project-steps strong{display:block;font-size:12.5px;font-weight:800;line-height:1.3;color:#3b3f46}.new-project-steps small{display:block;font-size:11px;line-height:1.4;color:#8f7d76}.new-project-form{display:flex;flex-direction:column;gap:16px}.new-project-form .field,.new-project-form .full-width{margin:0}.new-project-form .client-picker>.field-hint{margin-top:6px}.new-project-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.8fr);gap:14px}.new-project-form textarea{min-height:66px;resize:none}.client-summary{display:flex;align-items:center;gap:12px;margin-top:10px;padding:10px 12px;border:1px solid #e8ecf0;border-radius:10px;background:#fafbfc}.client-summary .avatar{width:34px;height:34px;font-size:11px;border-color:#fff}.client-summary>div{display:flex;flex-direction:column;gap:3px;min-width:0}.client-summary strong{font-size:13px;color:#2f3742}.client-summary ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:3px 14px}.client-summary li{display:inline-flex;align-items:center;gap:5px;min-width:0;font-size:11.5px;color:#66717e;overflow-wrap:anywhere}.client-summary li svg{width:13px;height:13px;flex-shrink:0;color:#9aa3ae}.client-summary small{font-size:11.5px;color:#8a939e}@media (max-width:800px){.modal-split{grid-template-columns:1fr;overflow:auto}.modal-aside{overflow:visible;padding:20px 56px 2px 20px;background:#fff;border-right:0}.modal-aside h2{font-size:19px}.modal-aside .modal-description{font-size:12px;line-height:1.5}.new-project-aside{display:none}.modal-main{overflow:visible}.modal-main .modal-body{padding:14px 20px 12px}.new-project-form{gap:14px}.new-project-row{grid-template-columns:1fr}}