/* Quotation V2 UI polish: layout only. Existing route names, field names and actions remain unchanged. */
.q-modal{box-sizing:border-box;width:100%;max-width:100%;min-width:0;padding:clamp(16px,2vw,28px);align-items:center;justify-content:center;overflow-x:hidden}
.q-modal .crm-editor{box-sizing:border-box;width:min(92vw,1400px);max-width:100%;min-width:0;max-height:calc(100dvh - 40px);overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;background:#fff}
.q-modal .crm-editor-header{padding:22px 30px;background:linear-gradient(110deg,#f6fafc,#edf6f8);border-bottom:1px solid #d5e2e8}
.q-modal .crm-editor-header h3{font-size:22px;letter-spacing:-.01em}
.q-form{display:block;box-sizing:border-box;width:100%;max-width:100%;min-width:0;padding:0;margin:0;color:#183d52}
.q-fields{display:block;box-sizing:border-box;width:100%;max-width:100%;min-width:0;padding:0;margin:0;border:0}
.q-summary{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:15px 30px;background:#f0f7f8;border-bottom:1px solid #dce7eb}
.q-tag{display:inline-block;font-size:10px;font-weight:800;letter-spacing:.09em;color:#39727d;background:#e8f4f3;border-radius:4px;padding:5px 7px}
.q-number{font-size:15px;color:#17364d}.q-save-state{margin-left:auto;font-size:12px;font-weight:800;letter-spacing:.04em;color:#407167}
.q-section{box-sizing:border-box;width:100%;max-width:100%;min-width:0;padding:24px 30px;border-bottom:1px solid #e0e8ed;background:#fff}
.q-section h4{margin:0 0 16px;font-size:16px;color:#17364d}.q-section-copy{margin:-7px 0 16px;color:#627c89;font-size:12px}
.q-identity{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr);gap:14px;margin-bottom:18px}
.q-form .q-identity input{background:#f2f5f7;color:#526975;cursor:default}
.q-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.q-terms-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.q-form label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:750;line-height:1.25;min-width:0;color:#294a5b}
.q-form input,.q-form select,.q-form textarea{box-sizing:border-box;width:100%;min-width:0;border:1px solid #c8d8e0;border-radius:7px;padding:10px 11px;font:inherit;font-size:13px;color:#183d52;background-color:#fff}
.q-form input:focus,.q-form select:focus,.q-form textarea:focus{outline:3px solid #8bc6e244;border-color:#2378a5}.q-form textarea{min-height:82px;resize:vertical}.q-wide{grid-column:1/-1}
.q-internal{padding:14px 16px;background:#fff9ed;border:1px solid #efdfba;border-radius:9px}.q-internal span{font-size:10px;color:#84651d;letter-spacing:.04em}
.q-section-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:17px}.q-section-heading h4{margin:0 0 5px}.q-section-heading p{font-size:12px;color:#627c89;margin:0;max-width:680px}.q-section-heading .q-add{white-space:nowrap;min-height:40px;color:#176a78;background:#fff;border:1px solid #9dc8d0;padding:8px 15px;box-shadow:0 2px 5px #17364d0d}
.q-line{width:100%;min-width:0;margin:0 0 16px;padding:17px 18px;border:1px solid #ccdce3;border-radius:10px;background:#fcfefe;box-shadow:0 4px 12px #17364d08}.q-line-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.q-line-title{font-size:11px;font-weight:850;letter-spacing:.11em;color:#39727d}.q-remove{color:#a23e3e!important;background:transparent!important;border:1px solid transparent!important;font-size:12px;padding:5px 7px!important;min-height:30px}.q-remove:hover,.q-remove:focus-visible{border-color:#e5bcbc!important;background:#fff6f6!important}
.q-line-main{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1.2fr) minmax(0,.7fr) minmax(0,.8fr) minmax(0,1fr) minmax(0,1fr);gap:12px;align-items:start}.q-line-extra{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.8fr) minmax(0,.9fr) minmax(0,2fr);gap:12px;margin-top:14px;padding-top:14px;border-top:1px dashed #dce7eb}.q-product-picker{position:relative;min-width:0;max-width:100%}.q-product-source{display:block;color:#67808c;font-size:10px;line-height:1.4;margin-top:5px}.q-options{position:absolute;z-index:8;top:64px;left:0;width:min(420px,75vw);max-height:230px;overflow:auto;background:#fff;border:1px solid #bbcfd9;border-radius:7px;box-shadow:0 8px 24px #183d5233}.q-options button{display:block;text-align:left;white-space:normal;background:#fff;color:#183d52;width:100%;border:0;border-radius:0;border-bottom:1px solid #e4edef;padding:10px;font-size:12px}.q-options button:hover,.q-options button:focus-visible{background:#e7f3f4}.q-options .q-custom{color:#677d89;background:#f5f8fa}
.q-feedback{margin:0;padding:0 30px;color:#17685d;font-size:13px;font-weight:700;overflow-wrap:anywhere}.q-feedback:not(:empty){padding:16px 30px}.q-error,.q-line-error{color:#ac3030}.q-form [aria-invalid=true]{border:2px solid #ba3b3b}.q-documents{padding:0 30px}.q-documents p{font-size:12px;color:#5e7984}.q-documents .q-link{margin:0 8px 16px 0}
.q-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;padding:16px 30px;position:sticky;bottom:0;background:#fff;border-top:1px solid #dce6eb;box-shadow:0 -6px 18px #17364d0b;z-index:9}.q-actions button{min-height:42px;font-size:13px}.q-actions [data-q-cancel]{margin-right:auto;background:#fff;color:#496572;border:1px solid #ccdce3}.q-actions .q-save{background:#fff;color:#176a78;border:1px solid #82b4bd}.q-actions .q-generate{background:#126b7a}.q-form button:disabled{opacity:.55;cursor:wait}
.q-link{display:inline-block;border:1px solid #bdd4dc;padding:9px 12px;border-radius:7px;text-decoration:none;font-size:12px;font-weight:750;color:#126578;background:#fff}.q-history-card{padding:20px!important;border:1px solid #d2e2e7!important;border-radius:11px;margin-bottom:14px;background:#fff;box-shadow:0 5px 14px #17364d08;overflow-wrap:anywhere}.q-card-heading{display:flex;justify-content:space-between;gap:12px;align-items:center}.q-card-heading h4{margin:9px 0 0;font-size:19px;letter-spacing:-.01em}.q-status{font-size:10px;font-weight:850;letter-spacing:.04em;color:#376f65;border-radius:20px;background:#e8f5ee;padding:7px 10px}.q-products{font-size:13px;font-weight:650;color:#496978;margin:16px 0}.q-card-facts{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:12px;padding:15px 0;margin:0;border-top:1px solid #edf2f4;border-bottom:1px solid #edf2f4}.q-card-facts dt{font-size:10px;color:#6c8390;margin-bottom:5px;text-transform:uppercase;letter-spacing:.03em}.q-card-facts dd{font-size:12px;font-weight:750;margin:0}.q-card-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding-top:15px}.q-card-actions button{font-size:12px;background:#f1f7f8;color:#1d6473;border:1px solid #c5dce1;padding:9px 12px}.q-legacy .q-tag{margin-right:12px;background:#eff1f3;color:#6b7982}.q-loading{padding:30px}.q-history-error{padding:12px;background:#fff2ef;color:#9e3434}.q-form :disabled{opacity:1}.q-fields:disabled input,.q-fields:disabled select,.q-fields:disabled textarea{background:#f6f8f9;color:#496572}.q-line-error:empty{display:none}.q-field-error{display:block;font-size:12px;line-height:1.4;color:#ac3030;font-weight:600;margin-top:4px}.q-copy-context{margin:16px 30px 0;padding:12px 16px;border-left:3px solid #176a78;background:#f0f7f8;color:#183d52;line-height:1.6;font-size:13px}.q-family{padding:20px}.q-family button{margin-top:8px}
@media(max-width:1199px){.q-modal .crm-editor{width:100%;max-width:100%}.q-grid,.q-terms-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.q-identity{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.q-identity>label:last-child{grid-column:1/-1}.q-line-main{grid-template-columns:repeat(3,minmax(0,1fr))}.q-product-picker{grid-column:span 2}.q-line-main>label:last-child{grid-column:auto}.q-line-extra{grid-template-columns:repeat(2,minmax(0,1fr))}.q-card-facts{grid-template-columns:repeat(3,minmax(0,1fr)}}
@media(max-width:600px){.q-modal{padding:0;align-items:stretch}.q-modal .crm-editor{width:100%;max-height:100dvh;border-radius:0}.q-modal .crm-editor-header{padding:16px}.q-summary{padding:14px 16px;gap:8px}.q-summary .q-number{font-size:13px}.q-save-state{margin-left:0}.q-section{padding:18px 16px}.q-identity,.q-grid,.q-terms-grid{grid-template-columns:1fr}.q-line{padding:14px}.q-line-main,.q-line-extra{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.q-product-picker{grid-column:1/-1}.q-line-main>label:nth-child(2),.q-line-main>label:last-child,.q-line-extra>label:last-child{grid-column:1/-1}.q-line-extra{margin-top:12px;padding-top:12px}.q-section-heading{flex-wrap:wrap}.q-section-heading .q-add{width:100%}.q-form input,.q-form select,.q-form textarea{font-size:16px}.q-actions{padding:12px;gap:8px}.q-actions button{flex:1;min-width:0;white-space:normal}.q-actions .q-generate,.q-actions .q-issue{flex-basis:100%}.q-feedback:not(:empty){padding:14px 16px}.q-documents{padding:0 16px}.q-card-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.q-card-heading h4{font-size:16px}.q-history-card{padding:16px!important}.q-options{width:100%;max-width:100%}.q-form{overflow-wrap:anywhere}.q-copy-context{margin:14px 16px 0}.q-family{padding:16px}}