/* A4 editor and the printable document deliberately share their geometry. */
.document-editor-panel{width:100%;min-width:0;padding:0;border:1px solid var(--line);background:var(--background);border-radius:12px;overflow:auto;height:calc(100dvh - 240px);min-height:420px}.document-editor-panel[hidden]{display:none}.document-editing{max-width:none!important;width:100%}.document-editor-panel .doc-toolbar{top:0}.document-editor-panel .doc-paper-scroll{min-height:0}.doc-toolbar{position:sticky;top:0;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 20px;background:var(--panel);border-bottom:1px solid var(--line);flex-wrap:wrap}.doc-toolbar-actions{display:flex;gap:8px;flex-wrap:wrap}.doc-save-state{font-size:12px;color:var(--muted)}.doc-info{font-size:13px;margin:14px 24px;color:var(--muted)}.doc-editor-error{color:var(--error-text);padding:0 24px}.doc-editor-error:empty{display:none}.doc-paper-scroll{padding:8px 24px 32px;overflow:auto}.doc-paper{width:210mm;min-height:297mm;padding:15mm 14mm 12mm;margin:auto;background:#fff;color:#142a39;box-shadow:0 8px 32px #0002;font:12px Arial,sans-serif;box-sizing:border-box}.doc-paper *{box-sizing:border-box}.doc-paper h2{font-size:15px;color:#123e4a;margin:7px 0}.doc-paper h3{font-size:11px;text-transform:uppercase;letter-spacing:1px;margin:0 0 8px;color:#47606a}.doc-paper-header{display:grid;grid-template-columns:1fr 76mm;gap:15mm;padding-bottom:8mm;border-bottom:2px solid #126b73}.doc-paper-header>div:first-child{line-height:1.6}.doc-cgcv-logo{width:42mm;height:auto;display:block;max-height:28mm;object-fit:contain;object-position:left}.doc-document-meta{display:flex;flex-direction:column;gap:6px}.doc-document-meta>strong{font-size:10px;color:#8d5730;letter-spacing:.5px}.doc-document-meta>select{font-size:24px!important;font-weight:bold;color:#124e61!important}.doc-paper input,.doc-paper select,.doc-paper textarea{font:inherit;color:#142a39!important;background:#fff!important;border:1px solid #e0e6e9;border-radius:3px;padding:5px;max-width:100%;width:100%;margin:0;box-shadow:none;line-height:1.45}.doc-paper input:hover,.doc-paper textarea:hover,.doc-paper select:hover{border-color:#9eb8c2}.doc-paper input:focus,.doc-paper textarea:focus,.doc-paper select:focus{outline:2px solid #2d858e;outline-offset:0}.doc-paper textarea{resize:vertical;min-height:38px;white-space:pre-wrap}.doc-paper label{font-size:11px;margin:4px 0;display:block}.doc-paper label>input{margin-top:3px}.doc-address{white-space:pre-wrap;overflow-wrap:anywhere}.doc-customer{margin:8mm 0 9mm auto;width:88mm;padding:5mm;border:1px solid #d9e3e8;background:#f7fafb}.doc-customer input,.doc-customer textarea{display:block;margin:4px 0}.doc-customer input[data-doc="customer.name"]{font-weight:bold}.doc-lines table{width:100%;table-layout:fixed;border-collapse:collapse;font-size:11px}.doc-lines th{background:#126273;color:white;font-weight:500;padding:8px 5px;font-size:10px;border:0;text-align:right}.doc-lines th:first-child{text-align:left;width:39%}.doc-lines th:nth-child(2){width:9%}.doc-lines th:nth-child(3){width:10%}.doc-lines th:nth-child(4){width:12%}.doc-lines th:nth-child(5){width:9%}.doc-lines th:last-child{width:9mm}.doc-lines td{padding:9px 3px 3px;vertical-align:top;border:0}.doc-lines input[type=number]{text-align:right;padding:4px 1px;-moz-appearance:textfield}.doc-lines input::-webkit-inner-spin-button{appearance:none}.doc-lines td.doc-line-total{text-align:right;padding-top:15px;font-weight:600;white-space:nowrap}.doc-designation>select{font-size:10px;margin-bottom:4px;color:#526873!important}.doc-designation>input{font-weight:bold}.doc-description-row td{padding:0 3px 8px;border-bottom:1px solid #dce6e9}.doc-description-row textarea{font-size:11px;min-height:35px;line-height:1.5}.doc-row-tools button{display:inline-block;padding:3px;margin:1px;min-width:20px;font-size:12px}.doc-add-line{margin-top:10px}.doc-bottom-grid{display:grid;grid-template-columns:1fr 68mm;gap:8mm;margin-top:9mm}.doc-conditions label{margin-bottom:10px}.doc-totals{background:#f3f8f9;padding:5mm;align-self:start}.doc-totals>div{display:flex;justify-content:space-between;gap:12px;padding:7px 0;font-size:12px}.doc-totals strong{white-space:nowrap}.doc-totals .doc-grand-total{border-top:2px solid #126273;margin-top:6px;padding-top:12px;color:#124e61;font-size:15px}.doc-totals p{font-size:10px;line-height:1.5}.doc-legal-footer{margin-top:10mm;padding-top:5mm;border-top:1px solid #d5dfe3;font-size:9px;color:#506671;line-height:1.6}.doc-legal-footer p{font-style:italic;font-size:9px}.issuer-settings{width:min(600px,95vw)}.issuer-settings p{font-size:13px}.issuer-error{color:var(--error-text)}
.document-print-page{margin:0;background:white}.document-print-page .doc-paper{box-shadow:none;min-height:0;width:auto;padding:0;margin:0;font-size:10px}.document-print-page .doc-print-value{display:block;white-space:pre-wrap;overflow-wrap:anywhere;min-height:1em}.document-print-page .doc-paper-header{break-inside:avoid}.document-print-page .doc-customer{break-inside:avoid}.document-print-page .doc-lines thead{display:table-header-group}.document-print-page .doc-lines tr{break-inside:avoid}.document-print-page .doc-description-row{break-before:avoid}.document-print-page .doc-legal-footer,.document-print-page .doc-bottom-grid{break-inside:avoid}.document-print-page .doc-document-meta>span:first-child{font-size:24px;font-weight:bold}.document-print-page .doc-designation .doc-print-value{font-weight:bold}.document-print-page .doc-description-row .doc-print-value{font-weight:normal}.document-print-page .doc-customer{padding:4mm}.document-print-page .no-print{display:none!important}@page{size:A4;margin:14mm}
@media(max-width:700px){.doc-toolbar{padding:10px}.doc-toolbar-actions{width:100%}.doc-paper-scroll{padding:8px 12px 24px}.doc-toolbar button{font-size:12px}}
.doc-paper{position:relative;padding-bottom:18mm}.doc-paper+.doc-paper{margin-top:26px}.doc-page-number{position:absolute;bottom:6mm;left:14mm;right:14mm;border-top:1px solid #dce6e9;padding-top:3mm;text-align:right;color:#6c8089;font-size:10px}.doc-continuation-heading{display:flex;justify-content:space-between;gap:20px;color:#174e5d;font-size:11px;border-bottom:2px solid #126273;padding-bottom:12px;margin-bottom:20px}.doc-paper textarea{max-height:220px;overflow:auto}.doc-description-row textarea{resize:none}

/* Expand the editable paper to the workspace; PDF output keeps its A4 geometry. */
.document-editor-panel .doc-paper-scroll{padding:8px 12px 24px}.document-editor-panel .doc-paper{width:100%;min-width:740px;min-height:0;aspect-ratio:210/297;margin-inline:0}.document-editor-panel .doc-paper+.doc-paper{margin-top:26px}

/* Point sizes keep the editable sheet comfortable to read. */
.document-editor-panel .doc-paper{font-size:12pt}
.document-editor-panel .doc-paper h2{font-size:14pt}
.document-editor-panel .doc-paper h3,.document-editor-panel .doc-paper label{font-size:11pt}
.document-editor-panel .doc-lines table,.document-editor-panel .doc-description-row textarea,.document-editor-panel .doc-totals>div{font-size:12pt}
.document-editor-panel .doc-lines th,.document-editor-panel .doc-designation>select{font-size:10pt}
.document-editor-panel .doc-document-meta>strong{font-size:10pt}
.document-editor-panel .doc-legal-footer,.document-editor-panel .doc-legal-footer p,.document-editor-panel .doc-totals p,.document-editor-panel .doc-page-number,.document-editor-panel .doc-continuation-heading{font-size:10pt}
.document-editor-panel .doc-totals .doc-grand-total{font-size:14pt}
.document-editor-panel .doc-lines th:first-child{width:33%}
.document-editor-panel .doc-lines th:nth-child(4){width:15%}
.document-editor-panel .doc-lines td.doc-line-total{white-space:normal;overflow-wrap:anywhere}
/* One reading size throughout the editable sheet, including native selects. */
.document-editor-panel .doc-paper,
.document-editor-panel .doc-paper input,
.document-editor-panel .doc-paper select,
.document-editor-panel .doc-paper textarea,
.document-editor-panel .doc-paper label,
.document-editor-panel .doc-paper th,
.document-editor-panel .doc-paper td,
.document-editor-panel .doc-paper h2,
.document-editor-panel .doc-paper h3,
.document-editor-panel .doc-paper p,
.document-editor-panel .doc-paper strong,
.document-editor-panel .doc-paper button,
.document-editor-panel .doc-paper .doc-totals>div,
.document-editor-panel .doc-paper .doc-legal-footer,
.document-editor-panel .doc-paper .doc-page-number,
.document-editor-panel .doc-paper .doc-continuation-heading{font-size:12pt!important}

.document-validation-confirmation{width:min(560px,calc(100vw - 32px));padding:24px;border:1px solid var(--line);border-radius:14px;background:var(--panel);color:var(--foreground)}.document-validation-confirmation h2{margin:0 0 18px}.document-validation-confirmation p{line-height:1.6}.document-validation-confirmation .validation-lock-notice{padding:16px;border-left:4px solid #f08b18;background:var(--background);border-radius:6px;margin:20px 0}.document-validation-confirmation .validation-lock-notice strong{display:block;margin-bottom:6px}.document-validation-confirmation .actions{flex-wrap:wrap}

.document-editor-panel .doc-paper [aria-invalid="true"]{border:2px solid #b14430;outline-color:#b14430}.document-editor-panel .doc-validation-field-error{color:#a32f20;font-weight:600;margin:4px 0 10px}

.doc-row-tools button svg{width:16px;height:16px;display:block;pointer-events:none}
