
.service-quote-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,330px),1fr));gap:20px;margin-bottom:24px}.service-quote-card{border-top:4px solid #b6914e}.service-quote-card h3{font-size:1.25rem;margin:8px 0 16px}.service-price-summary{margin:20px 0}.service-price-summary div{display:flex;justify-content:space-between;gap:18px;border-bottom:1px solid #e2e8ec;padding:10px 0}.service-price-summary dt{font-size:.875rem}.service-price-summary dd{margin:0;font-weight:700;white-space:nowrap}.shared-allocation{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:20px;padding:10px 0}#service-quote-workspace textarea,#service-quote-workspace select,#service-quote-workspace input:not([type=checkbox]),#pricing-workspace textarea,#pricing-workspace input,#pricing-workspace select{width:100%;max-width:100%}#sq-terms .fields label,#pricing-workspace .fields label{display:flex;flex-direction:column;gap:8px}#sq-terms details{margin:20px 0}#sq-terms .check{margin:16px 0}#sq-send-note{margin:10px 0}#sq-error{white-space:pre-line}#service-quote-workspace .row{gap:18px;flex-wrap:wrap}.service-quote-card .actions{flex-wrap:wrap}.service-quote-card .help{font-size:.875rem}.service-workbook>summary{font-size:1.15rem;font-weight:700;padding:20px;cursor:pointer}.service-workbook[open]>summary{border-bottom:1px solid #dbe2e7;margin-bottom:20px}@media(max-width:650px){.shared-allocation{grid-template-columns:1fr;gap:6px}.service-price-summary div{flex-wrap:wrap;gap:4px}.service-quote-grid{grid-template-columns:1fr}}
.service-workbook .commercial-kpis,.service-workbook .worksheet-bottom .quote-summary{display:none}.service-workbook .worksheet-bottom{grid-template-columns:1fr}
.pricing-services button[aria-pressed=true] small{color:#d7e5ec}.pricing-editor .billing-form{gap:16px}.pricing-editor .billing-form>label{margin:8px 0}
.pricing-services{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:24px 0}.pricing-services button{border:1px solid var(--line);border-top:3px solid var(--gold);border-radius:8px;background:#fff;color:var(--ink);padding:18px;text-align:left;font:inherit;cursor:pointer}.pricing-services button[aria-pressed=true]{background:var(--ink);color:#fff}.pricing-services span,.pricing-services small{display:block}.pricing-services span{font-weight:650;line-height:1.4}.pricing-services small{font-size:.875rem;margin-top:8px}.pricing-scope h2{font-size:1.35rem;max-width:850px;line-height:1.5}.pricing-scope-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin:24px 0}.pricing-scope-grid h3{font-size:1rem;margin:0 0 8px}.pricing-scope-grid p{margin:0;line-height:1.65}.pricing-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr);gap:24px;align-items:start;margin-top:24px}.pricing-catalogue,.pricing-editor,.pricing-item>div{min-width:0}.pricing-group{margin-bottom:16px;overflow:hidden}.pricing-group>summary{font-weight:650;cursor:pointer;padding:20px 24px;min-height:48px}.pricing-group>summary span{float:right;color:var(--muted);font-weight:400}.pricing-group[open]>summary{border-bottom:1px solid var(--line)}.pricing-item{display:flex;align-items:flex-start;gap:20px;padding:24px;border-bottom:1px solid var(--line)}.pricing-item:last-child{border-bottom:0}.pricing-item.is-selected{box-shadow:inset 3px 0 var(--gold)}.pricing-item h3{font-size:1.05rem;margin:0 0 10px;line-height:1.45}.pricing-item p{font-size:.95rem;line-height:1.65;color:var(--muted);margin:0 0 16px}.pricing-item .btn{flex-shrink:0;min-height:44px}.pricing-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:.875rem}.pricing-editor{border-top:3px solid var(--gold);position:sticky;top:20px}.pricing-editor h2{font-size:1.3rem;line-height:1.4}.pricing-editor p{font-size:.95rem;line-height:1.6}.pricing-editor form>label{display:flex;flex-direction:column;gap:8px;margin:20px 0;font-size:.9rem}.pricing-editor .fields{margin:20px 0}.pricing-controls{border-block:1px solid var(--line);padding:16px 0;margin:20px 0}.pricing-controls summary{cursor:pointer;font-weight:600}.pricing-editor .pricing-check{flex-direction:row;align-items:flex-start;gap:12px}.pricing-editor .pricing-check input{width:18px!important;min-height:18px;height:18px;flex-shrink:0;margin-top:3px}.pricing-status:empty{display:none}.pricing-status{color:#176157}.pricing-services button:focus-visible,.pricing-group summary:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.qg-commercial-guide{border-block:1px solid var(--line);padding:16px 0;margin:16px 0}.qg-commercial-guide p,.qg-scope-help p{font-size:.95rem;line-height:1.6}.qg-scope-note{margin:16px 0}.qg #qg-offering-review li{margin:10px 0;line-height:1.6}.qg #qg-offering-review .notice{border-left:3px solid var(--gold);padding:16px 20px}.pricing-layout .help{font-size:.875rem;line-height:1.6}@media(max-width:1100px){.pricing-services{grid-template-columns:1fr 1fr}.pricing-layout{grid-template-columns:1fr}.pricing-editor{position:static;grid-row:1}.pricing-item>div{flex:1}}@media(max-width:600px){.pricing-services{gap:8px}.pricing-services button{padding:14px;font-size:.9rem}.pricing-scope-grid{grid-template-columns:1fr;gap:20px}.pricing-item{flex-direction:column;padding:20px}.pricing-item .btn{align-self:flex-start}.pricing-editor .fields{grid-template-columns:1fr}.pricing-group>summary{padding:18px 20px}}
.quote-project-context{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:6px 0 20px;border-bottom:1px solid var(--line);margin-bottom:24px;font-size:.95rem}.quote-project-context a{color:var(--ink)}
.qg-reorder{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;padding:6px 12px;border-bottom:1px solid var(--line);background:#f5f7f7}.qg-reorder>div{display:flex;gap:6px}.qg-reorder .btn,.qg-drag-handle{min-height:44px;padding:6px 10px;font-size:.875rem}.qg-drag-handle{display:flex;align-items:center;gap:8px;border:0;border-radius:5px;background:transparent;color:var(--ink);cursor:grab}.qg-drag-handle>span{font-size:1.4rem}.qg-drag-handle:active{cursor:grabbing}.qg-reorder button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.qg-reorder button:disabled{opacity:.4;cursor:default}.qg-charge.qg-dragging{opacity:.5}.qg-charge.qg-drop-before{border-top:4px solid var(--gold)}.qg-charge.qg-drop-after{border-bottom:4px solid var(--gold)}
.qg h3{font-size:1.2rem;line-height:1.4;margin:0 0 12px}.qg label{display:flex;flex-direction:column;gap:8px;font-weight:600;font-size:.875rem}.qg input,.qg select,.qg textarea{font-size:1rem;min-height:44px;box-sizing:border-box;border-radius:6px}.qg textarea{resize:vertical}.qg p{margin:8px 0 18px}.qg .eyebrow{font-size:.75rem;color:#82632b;letter-spacing:.1em}.qg-back{display:inline-block;margin:0 0 16px;color:var(--ink);text-underline-offset:4px}.qg-status{padding:7px 14px;border:1px solid var(--line);border-radius:24px;background:#fff;white-space:nowrap;font-size:.875rem}.qg-steps{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#fff;margin-bottom:24px}.qg-steps .btn{border:0;border-radius:0;border-right:1px solid var(--line);display:flex;align-items:center;justify-content:flex-start;gap:10px;padding:16px;color:var(--ink);background:transparent}.qg-steps .btn:last-child{border:0}.qg-steps .btn span{display:grid;place-items:center;flex:0 0 26px;height:26px;border:1px solid var(--line);border-radius:50%;font-size:.8rem}.qg-steps [aria-current=step]{background:var(--ink);color:white}.qg-steps [aria-current=step] span{border-color:var(--gold);color:#ebd29d}.qg-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:24px;align-items:start}.qg-layout>div{min-width:0}.qg-panel{background:white;border:1px solid var(--line);border-radius:10px;padding:28px}.qg-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:22px 0}.qg-client{display:flex;flex-direction:column;gap:5px;border-left:3px solid var(--gold);background:#f7f8f8;padding:16px 20px;margin:24px 0;font-size:.9rem}.qg-client a{margin-top:8px;color:var(--ink)}.qg-client span,.qg-muted{color:var(--muted);font-size:.9rem}.qg-summary{position:sticky;top:24px;padding:24px;background:#fff;border:1px solid var(--line);border-top:3px solid var(--gold);border-radius:8px;font-size:.9rem}.qg-summary dl{margin:20px 0}.qg-summary dl>div{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--line)}.qg-summary dd{margin:0;white-space:nowrap;font-weight:600}.qg-summary .qg-total{border:0;padding-top:18px;font-weight:700;font-size:1.1rem}.qg-internal{padding:16px;background:#f3f5f5;border-radius:6px;margin:14px 0}.qg-internal>span{font-size:.65rem;letter-spacing:.07em;color:var(--muted)}.qg-internal p{font-size:.8rem;margin:8px 0}.qg-internal strong{font-size:1.3rem}.qg-caution{color:#895411}.qg-footer{border-top:1px solid var(--line);padding-top:22px;margin-top:28px;display:flex;align-items:center;justify-content:space-between;gap:16px}.qg-footer>span{font-size:.8rem;color:var(--muted)}.qg .actions{display:flex;gap:10px;flex-wrap:wrap}.qg-section-heading{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:16px}.qg-section-heading .btn{flex-shrink:0}.qg-charge{border:1px solid var(--line);border-radius:8px;margin:18px 0;background:#fff;overflow:hidden}.qg-charge-title{display:flex;align-items:center;gap:12px;padding:16px;background:#f5f7f7}.qg-charge-title>label{flex:1;min-width:0}.qg-charge-title input{font-weight:600;background:white}.qg-charge-title .btn{padding:8px 12px;font-size:.8rem}.qg-charge-grid{display:grid;grid-template-columns:80px 110px 1fr 1fr;gap:12px;padding:18px 16px}.qg-charge-grid label{font-size:.8rem}.qg-line-total{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;padding-top:12px;border-top:1px solid var(--line);font-size:.85rem}.qg-line-total strong{font-size:1.1rem;font-variant-numeric:tabular-nums}.qg-charge-bottom{padding:0 16px 16px}.qg-charge-bottom>label{max-width:320px}.qg-charge-bottom details{margin-top:16px;font-size:.875rem}.qg summary{cursor:pointer;font-weight:600;min-height:28px}.qg-item-help{font-size:.8rem;padding:0 16px;color:var(--muted)}.qg-add{display:flex;align-items:end;gap:12px;border:1px dashed #a8b8bf;border-radius:8px;padding:16px;margin:24px 0 8px}.qg-add label{flex:1;min-width:0}.qg-empty{text-align:center;padding:30px 20px;border:1px dashed var(--line);border-radius:8px;margin:22px 0}.qg-empty p{color:var(--muted);font-size:.9rem;margin:10px 0}.qg-review-total{display:grid;gap:5px;border-left:3px solid var(--gold);padding:20px;background:#f7f8f8;margin:24px 0}.qg-review-total strong{font-size:2rem}.qg-review-total small{color:var(--muted)}.qg-terms,.qg-legacy{padding:18px 0;border-top:1px solid var(--line);margin:12px 0}.qg-terms>label{margin:18px 0}.qg .qg-check{display:flex;flex-direction:row;align-items:flex-start;gap:12px;font-weight:400;margin:18px 0;font-size:.9rem}.qg .qg-check input{flex:0 0 18px;width:18px;height:18px;min-height:18px;margin-top:3px;accent-color:var(--ink)}.qg-check small{display:block;color:var(--muted)}.qg-review-checks{border-top:1px solid var(--line);padding-top:6px;margin:12px 0 24px}.qg-send,.qg-history{border-top:1px solid var(--line);margin-top:30px;padding-top:24px}.qg-send .actions{margin-top:20px}.qg-history-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 0;border-bottom:1px solid var(--line)}.qg-history-row p{margin:4px 0;font-size:.85rem;color:var(--muted)}.qg-history>a{display:inline-block;margin-top:22px;color:var(--ink)}.qg-bundle{margin-top:28px;max-width:850px}.qg .error{white-space:pre-line}.qg .error:empty{display:none}.qg dialog{border:1px solid var(--line);border-radius:10px;padding:28px;max-width:calc(100vw - 32px);max-height:90vh;overflow:auto;color:var(--ink)}.qg dialog::backdrop{background:#062a3b88}.qg-dialog-head{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:18px}.qg-dialog-head h2{font-size:1.3rem;margin:0}.qg-preview-dialog{width:1000px}.qg-preview-dialog iframe{width:100%;height:65vh;border:1px solid var(--line)}.qg-decision-dialog{width:540px}.qg-decision-dialog label{margin:18px 0}.qg-decision-dialog .btn[type=submit]{margin-top:18px}
.invoice-format{display:grid;grid-template-columns:1fr 1fr;gap:16px;border:0;padding:0;margin:24px 0}.invoice-format legend{font-weight:700;margin-bottom:14px}.invoice-format label{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:12px;padding:20px;border:1px solid var(--line);border-radius:8px;cursor:pointer}.invoice-format label:has(input:checked){border-color:var(--gold);background:#faf8f2;box-shadow:inset 0 0 0 1px var(--gold)}.invoice-format input{width:18px!important;height:18px;min-height:18px;flex:0 0 18px;margin-top:3px;accent-color:var(--ink)}.invoice-format strong,.invoice-format small{display:block}.invoice-format small{font-weight:400;color:var(--muted);line-height:1.5;margin-top:6px}.invoice-created{padding:16px 20px;border-left:3px solid var(--gold);background:#f7f8f8;margin:20px 0}
@media(max-width:1200px){.qg-layout{grid-template-columns:minmax(0,1fr) 250px;gap:18px}.qg-panel{padding:22px}.qg-charge-grid{grid-template-columns:1fr 1fr}.qg-summary{padding:18px}.qg-section-heading{flex-wrap:wrap}}
@media(max-width:960px){.qg-layout{grid-template-columns:1fr}.qg-summary{position:static}.qg-steps .btn{padding:12px;font-size:.8rem}.qg-footer{flex-wrap:wrap}}
@media(max-width:600px){.quote-project-context{flex-wrap:wrap}.qg-heading h2{font-size:1.5rem}.qg-steps{grid-template-columns:1fr 1fr}.qg-steps .btn{border-bottom:1px solid var(--line);padding:12px;font-size:.8rem}.qg-steps .btn:nth-child(2){border-right:0}.qg-panel{padding:18px}.qg-fields{grid-template-columns:1fr;gap:16px}.qg-charge-title{align-items:stretch;flex-direction:column;padding:12px}.qg-charge-title .btn{align-self:flex-end}.qg-charge-grid{padding:16px 12px}.qg-charge-bottom{padding:0 12px 14px}.qg-add{align-items:stretch;flex-direction:column}.qg-history-row{align-items:flex-start;flex-direction:column}.qg-footer .actions{width:100%}.qg-footer .btn{flex:1}.qg-dialog-head{align-items:flex-start}.qg-dialog-head h2{font-size:1.1rem}.qg dialog{padding:18px}.invoice-format{grid-template-columns:1fr}.qg-review-total strong{font-size:1.7rem}}
.qg{font-size:1rem;line-height:1.55;color:var(--ink)}.qg-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin:12px 0 28px}.qg-heading h2{font-size:1.9rem;margin:0 0 8px}.qg-heading p{margin:0;color:var(--muted)}.qg-services{display:grid;gap:16px}.qg-service{display:flex;align-items:center;gap:24px;padding:28px;border:1px solid var(--line);border-radius:10px;background:white;text-decoration:none;color:inherit;transition:border-color .15s,box-shadow .15s}.qg-service:hover{border-color:var(--gold);box-shadow:0 6px 20px #082b3810}.qg-service h3{margin:0 0 6px;font-size:1.3rem}.qg-service p{margin:0;color:var(--muted);font-size:.95rem}.qg-number{color:var(--gold);font-size:1.5rem;font-variant-numeric:tabular-nums}.qg-open{margin-left:auto;font-weight:600;white-space:nowrap;font-size:.95rem}.qg .btn{font-size:.9rem;min-height:44px}.qg :focus-visible{outline:3px solid #af8d43;outline-offset:3px}@media(max-width:760px){.qg-heading{align-items:flex-start;flex-direction:column}.qg-service{flex-wrap:wrap;padding:22px;gap:14px}.qg-service>div{flex:1;min-width:180px}.qg-open{margin-left:36px}}
.pricing-selling{display:block;margin:16px 0 10px;font-size:1.2rem;font-variant-numeric:tabular-nums;color:var(--ink)}.pricing-selling small{font-size:.8rem;font-weight:400;color:var(--muted);margin-left:6px}.pricing-approval{display:flex;gap:24px;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:20px;margin-top:24px}.pricing-approval p{margin:0;max-width:70ch}.pricing-approval .btn{flex-shrink:0;max-width:100%;white-space:normal}.pricing-sources{padding-left:20px;max-width:90ch}.pricing-sources li{margin:16px 0}.pricing-sources p{margin:6px 0;font-size:.875rem}.pricing-status:empty{display:none}.pricing-status{border-left:3px solid var(--gold);padding:12px 18px;background:white}.qg-cost-review .btn{flex-shrink:0}.qg-cost-review .qg-history-row:last-child{border-bottom:0}@media(max-width:1100px){.pricing-approval{align-items:flex-start;flex-direction:column}}@media(max-width:600px){.pricing-selling small{display:block;margin:4px 0}}
