/* C27.0 · Contract / order / archive module. Uses the same Crew Up palette and Montserrat. */
.document-orderConfirmation,.document-contractDocs,.document-projectArchive{height:auto!important;min-height:1120px!important;overflow:visible!important}
.contract-doc{font-family:"Montserrat",Arial,sans-serif;color:#17253f;padding:4px 0 28px;display:flex;flex-direction:column;gap:18px}
.contract-title{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;border-bottom:1px solid #dfe3e8;padding-bottom:18px}.contract-title h2{font-size:28px;line-height:1.08;margin:4px 0 8px}.contract-title p{margin:0;max-width:700px;color:#687180;line-height:1.5}.contract-title .eyebrow{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#7b8490}
.contract-status{display:inline-flex;align-items:center;white-space:nowrap;border-radius:999px;padding:8px 11px;font-size:10px;font-weight:700;background:#f0f2f4;color:#5e6874}.contract-status.confirmed{background:#e5f2eb;color:#285b43}.contract-status.changed{background:#fff0e9;color:#a44f2d}.contract-status.draft{background:#f2f3f5;color:#687180}
.contract-warning{border-left:5px solid #f5a999;background:#fff5f1;padding:14px 16px;border-radius:10px;display:flex;flex-direction:column;gap:5px;color:#65392b}.contract-warning.compact{font-size:11px;line-height:1.5}.contract-warning strong{font-size:12px}.contract-warning span{font-size:11px;line-height:1.45}
.contract-grid{display:grid;gap:16px}.contract-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.contract-card,.legal-editor{border:1px solid #dfe3e8;border-radius:14px;background:#fff;padding:18px;box-shadow:0 7px 20px rgba(23,37,63,.035)}.contract-card>span,.legal-editor>header .eyebrow{display:block;color:#7b8490;text-transform:uppercase;font-size:9px;letter-spacing:.09em;font-weight:700;margin-bottom:12px}.contract-card label{display:flex;flex-direction:column;gap:5px;font-size:10px;font-weight:600;margin-top:10px}.contract-card input,.contract-card select,.contract-card textarea,.legal-editor textarea,.legal-version-row input{width:100%;box-sizing:border-box;border:1px solid #dfe3e8;border-radius:8px;padding:9px 10px;background:#fbfcfd;color:#17253f;font:inherit}.contract-card textarea,.legal-editor textarea{line-height:1.55;resize:vertical}.contract-card input[readonly],.contract-card textarea[readonly]{background:#f4f5f6;color:#5f6975}.contract-check{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid #eef0f2}.contract-check label{display:flex;flex-direction:row;align-items:center;gap:8px;margin:0}.contract-check input{width:auto}.contract-check small,.contract-note{font-size:9px;color:#7a8490;line-height:1.45}
.contract-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.contract-summary-grid div{background:#f8f9fa;border-radius:10px;padding:12px}.contract-summary-grid small{display:block;text-transform:uppercase;letter-spacing:.06em;color:#7b8490;font-size:8px;margin-bottom:5px}.contract-summary-grid strong{display:block;font-size:11px;line-height:1.35}.contract-summary-grid p{font-size:9px;color:#687180;line-height:1.4;margin:4px 0 0}.contract-copy{display:grid;grid-template-columns:150px 1fr;gap:10px 16px;margin-top:12px}.contract-copy strong{font-size:10px}.contract-copy p{font-size:10px;line-height:1.55;margin:0;color:#4f5965}.contract-actions{display:flex;flex-wrap:wrap;gap:9px;align-items:center}.contract-note-field textarea{min-height:86px}
.contract-changes .contract-change-list{display:flex;flex-direction:column;gap:8px}.contract-change-list article{background:#f8f9fa;border-radius:9px;padding:11px}.contract-change-list strong{font-size:10px}.contract-change-list p{font-size:10px;line-height:1.45;margin:5px 0 0}.contract-change-add{display:grid;grid-template-columns:1fr auto;gap:9px;align-items:end;margin-top:10px}.contract-change-add textarea{border:1px solid #dfe3e8;border-radius:8px;padding:9px;min-height:58px}
.privacy-check .privacy-category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 12px;margin:14px 0}.privacy-category-grid label{display:flex;flex-direction:row;align-items:center;gap:7px;margin:0;background:#f8f9fa;padding:8px;border-radius:8px}.privacy-category-grid input{width:auto}
.legal-editor{padding:0;overflow:hidden}.legal-editor>header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:18px 18px 10px}.legal-editor h3{font-size:16px;margin:3px 0 5px}.legal-editor header p{font-size:9px;color:#687180;margin:0}.legal-version-badge{background:#edf3f5;color:#345f68;font-size:9px;font-weight:700;border-radius:999px;padding:7px 9px}.legal-editor>.contract-warning{margin:0 18px 12px}.legal-editor>textarea{border-radius:0;border-left:0;border-right:0;min-height:480px;padding:18px;background:#fbfcfd;font-family:"Montserrat",Arial,sans-serif;font-size:10px}.legal-version-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:14px 18px 0}.legal-version-row label{display:flex;flex-direction:column;gap:5px;font-size:9px;font-weight:600}.legal-editor>.contract-actions{padding:12px 18px 16px}.legal-history{border-top:1px solid #e5e8eb;padding:12px 18px}.legal-history summary{cursor:pointer;font-size:10px;font-weight:700}.legal-history button{width:100%;border:0;background:transparent;display:flex;justify-content:space-between;padding:8px 4px;color:#687180;cursor:pointer}.legal-history button.active{color:#17253f;background:#f2f6f7;border-radius:7px}.legal-history button strong{font-size:9px}.legal-history button span{font-size:9px}
.archive-progress{display:flex;align-items:center;gap:14px}.archive-progress>div{width:220px;height:8px;background:#e9ecef;border-radius:999px;overflow:hidden}.archive-progress i{display:block;height:100%;width:var(--archive-progress);background:#78c3a7}.archive-progress strong{font-size:10px}.closure-checks>label{display:grid;grid-template-columns:auto 1fr;align-items:start;gap:10px;padding:10px 0;border-bottom:1px solid #eef0f2;margin:0}.closure-checks>label:last-child{border-bottom:0}.closure-checks input{width:auto;margin-top:2px}.closure-checks strong{display:block;font-size:10px}.closure-checks small{display:block;color:#7b8490;font-size:9px;margin-top:3px}.archive-content-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.archive-content-grid article{background:#f8f9fa;border-radius:10px;padding:13px}.archive-content-grid strong{font-size:10px}.archive-content-grid p{font-size:9px;line-height:1.5;color:#687180;margin:5px 0 0}
.contract-doc-group .doc-sublist{overflow:hidden}.contract-doc-group.collapsed .doc-sublist{display:none}.contract-doc-group.open .doc-sublist{display:block}
@media(max-width:1100px){.contract-grid.two,.contract-summary-grid,.archive-content-grid{grid-template-columns:1fr 1fr}.contract-copy{grid-template-columns:1fr}.privacy-check .privacy-category-grid{grid-template-columns:1fr}}
@media print{.document-orderConfirmation,.document-projectArchive{height:auto!important;min-height:0!important}.document-contractDocs{display:none!important}.contract-card,.legal-editor{box-shadow:none}.contract-actions,.legal-history,.legal-version-row{display:none!important}}

.offer-package-card .contract-actions{margin-top:14px}.contract-package-history{display:block;margin-top:12px;color:#687180;font-size:9px;line-height:1.45}

/* C27.0.4 · Annahmedokumentation + unterschriebener Rückläufer */
.contract-acceptance-card .contract-note{margin:-2px 0 12px}.contract-inline-action{display:flex;flex-direction:column;align-items:flex-start;gap:7px;margin-top:14px;padding-top:14px;border-top:1px solid #eef0f2}.contract-inline-action small{font-size:9px;line-height:1.45;color:#7b8490}.contract-accepted-state{margin-top:14px;padding:11px 12px;border-radius:9px;background:#eaf5ef;color:#285b43;display:flex;flex-direction:column;gap:3px}.contract-accepted-state strong{font-size:10px}.contract-accepted-state span{font-size:9px;line-height:1.4}
.contract-return-card{border-left:5px solid #97bae2}.contract-return-card.has-return{border-left-color:#78c3a7}.contract-return-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:12px}.contract-return-head h3{font-size:14px;line-height:1.25;margin:0 0 5px}.contract-return-head p{margin:0;color:#687180;font-size:10px;line-height:1.5;max-width:720px}.contract-return-ready{white-space:nowrap;background:#e5f2eb;color:#285b43;border-radius:999px;padding:7px 10px;font-size:9px}.contract-return-empty{border:1px dashed #ccd4dc;background:#fafbfc;border-radius:10px;padding:15px;display:flex;flex-direction:column;gap:4px}.contract-return-empty strong{font-size:10px}.contract-return-empty span{font-size:9px;color:#7b8490}.contract-return-list{display:flex;flex-direction:column;gap:8px}.contract-return-list article{display:flex;align-items:center;justify-content:space-between;gap:14px;background:#f8f9fa;border-radius:10px;padding:11px 12px}.contract-return-list article>div:first-child{min-width:0}.contract-return-list article>div:first-child strong{display:block;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.contract-return-list article>div:first-child span{display:block;margin-top:3px;color:#7b8490;font-size:9px}.contract-return-list article>div:last-child{display:flex;gap:6px;flex-shrink:0}.contract-return-card>.contract-actions{margin-top:12px}.contract-return-note{margin:10px 0 0}.button.ghost.danger{color:#9c4b42}
@media(max-width:900px){.contract-return-head,.contract-return-list article{flex-direction:column;align-items:flex-start}.contract-return-ready{white-space:normal}}

/* C27.1.2 · kundenbezogene Auftragsnummer + interne Vorgangs-ID */
.contract-field-hint{display:block;margin:5px 0 0;color:#7b8490;font-size:8.5px;line-height:1.45}
.optional-label{font-weight:500;color:#8a929c;font-size:8px;margin-left:4px}
.contract-internal-id{margin-top:12px;padding:10px 12px;border:1px dashed #ccd4dc;border-radius:9px;background:#f8f9fa;display:grid;grid-template-columns:auto 1fr;gap:3px 8px;align-items:baseline}
.contract-internal-id strong{font-size:8px;text-transform:uppercase;letter-spacing:.08em;color:#7b8490}.contract-internal-id span{font-size:10px;font-weight:700;color:#17253f}.contract-internal-id small{grid-column:1/-1;font-size:8.5px;color:#7b8490;line-height:1.4}

/* C27.1.3 · kompakte Auftragsbestätigung */
.contract-confirmation-preview{border-left:5px solid #97bae2}
.contract-confirmation-scope{margin-top:14px;padding-top:14px;border-top:1px solid #eef0f2}
.contract-confirmation-scope>strong{display:block;font-size:10px;margin-bottom:8px}
.contract-confirmation-scope ul{margin:0;padding-left:18px;display:grid;gap:5px}
.contract-confirmation-scope li{font-size:9.5px;line-height:1.45;color:#4f5965}
.contract-confirmation-scope p{margin:10px 0 0;font-size:9px;line-height:1.5;color:#7b8490}

/* C27.1.3.2 · final contract controls */
.contract-tax-choice{border-left:5px solid #DB8F4B}
.contract-tax-preview{display:flex;flex-direction:column;gap:4px;margin-top:12px;padding:12px 14px;border-radius:10px;background:#f8f9fa}
.contract-tax-preview strong{font-size:15px;line-height:1.2}.contract-tax-preview span{font-size:9px;line-height:1.45;color:#687180}
.legal-version-row .span-2{grid-column:1/-1}


/* === C27.3.7 · Order Confirmation Renderer Rebuild ===
   Customer confirmation PDF now uses the same browser-rendered A4/card primitives
   as Offer V2. The accent is a true child of the rounded, overflow-hidden card;
   no separate PDF vector seam can exist. */
.contract-confirm-document-c2737{--confirm-soft:#f7f8f9}
.contract-confirm-page-c2737{font-family:"Montserrat",Arial,sans-serif;color:var(--offer-ink)}
.contract-confirm-page-c2737 .offer-v2-head{top:38px;height:82px}
.contract-confirm-page-c2737 .offer-v2-logo{width:122px;height:82px;top:0}
.contract-confirm-page-c2737 .offer-v2-ferment-logo{width:112px!important;height:86px!important}
.contract-confirm-page-c2737 .offer-v2-cobrand{top:-5px;height:88px;width:225px}
.contract-confirm-page-c2737 .offer-v2-cobrand .offer-v2-ferment-logo{width:91px!important;height:76px!important}
.contract-confirm-page-c2737 .offer-v2-cobrand .offer-v2-crew-cobrand{width:91px!important;height:66px!important}
.contract-confirm-page-c2737 .offer-v2-wed-brand-c2711{top:2px}
.contract-confirm-page-c2737 .offer-v2-body{top:126px;bottom:70px;display:flex;flex-direction:column;gap:15px}
.contract-confirm-title-c2737{margin:0;font-size:30px;line-height:1.08;letter-spacing:-.025em;font-weight:700;color:var(--offer-ink)}
.contract-confirm-subtitle-c2737{margin:9px 0 0;font-size:10.4px;line-height:1.4;color:var(--offer-muted);white-space:normal}
.contract-confirm-ref-c2737{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:15px 18px;background:var(--confirm-soft);border-radius:11px}
.contract-confirm-ref-c2737.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.contract-confirm-ref-c2737>div{display:grid;gap:6px;min-width:0}
.contract-confirm-ref-c2737 small,.contract-confirm-kicker-c2737{font-size:7.1px;line-height:1.2;font-weight:700;text-transform:uppercase;letter-spacing:.02em;color:#7687a0}
.contract-confirm-ref-c2737 strong{font-size:10.7px;line-height:1.25;color:var(--offer-ink);overflow-wrap:anywhere}
.contract-confirm-card-c2737{padding:18px 20px 16px 27px;border-radius:12px}
.contract-confirm-card-c2737 .offer-v2-card-accent{width:8px}
.contract-confirm-card-c2737 .offer-v2-card-label{margin-bottom:13px}
.contract-confirm-job-grid-c2737{display:grid;grid-template-columns:1fr 1fr;column-gap:38px;row-gap:12px}
.contract-confirm-job-col-c2737{display:grid;gap:12px;align-content:start}
.contract-confirm-field-c2737{display:grid;gap:3px;min-width:0}
.contract-confirm-field-c2737 small{font-size:7.2px;line-height:1.2;color:var(--offer-muted)}
.contract-confirm-field-c2737 div{font-size:9.2px;line-height:1.35;color:var(--offer-ink);white-space:pre-line;overflow-wrap:anywhere}
.contract-confirm-services-c2737{display:grid;gap:7px;margin:0;padding:0;list-style:none}
.contract-confirm-services-c2737 li{display:grid;grid-template-columns:9px minmax(0,1fr);gap:7px;align-items:start;font-size:8.8px;line-height:1.3;color:var(--offer-ink)}
.contract-confirm-services-c2737 .offer-v2-bullet,.contract-confirm-grounds-c2737 .offer-v2-bullet{display:block;color:var(--offer-accent);font-size:12px;line-height:.9}
.contract-confirm-reference-c2737{margin:10px 0 0;font-size:7.6px;line-height:1.35;color:var(--offer-muted)}
.contract-confirm-bottom-c2737{display:grid;grid-template-columns:228px minmax(0,1fr);gap:18px;align-items:stretch}
.contract-confirm-bottom-c2737>.offer-v2-card{height:100%}
.contract-confirm-total-c2737{display:block;margin:0 0 11px;font-size:14px;line-height:1.15;color:var(--offer-ink)}
.contract-confirm-price-details-c2737{display:grid;gap:4px;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid var(--offer-line);font-size:7.8px;line-height:1.3;color:var(--offer-ink)}
.contract-confirm-tax-c2737{margin:0;font-size:7.6px;line-height:1.35;color:var(--offer-muted)}
.contract-confirm-grounds-c2737{display:grid;gap:8px;margin:0;padding:0;list-style:none}
.contract-confirm-grounds-c2737 li{display:grid;grid-template-columns:9px minmax(0,1fr);gap:7px;font-size:8.4px;line-height:1.35;color:var(--offer-ink)}
.contract-confirm-grounds-c2737 a{color:inherit;text-decoration:none}
.contract-confirm-thanks-c2737{margin:0;font-size:8.7px;line-height:1.3;font-weight:600;color:var(--offer-ink)}
.contract-confirm-notes-c2737{font-size:9px;line-height:1.5;color:var(--offer-ink);white-space:pre-line}
.contract-confirm-page-c2737 .offer-v2-footer{bottom:22px}
.contract-confirm-document-c2737[data-offer-theme="ferment"]{--confirm-soft:rgba(245,241,197,.35)}
/* === END C27.3.7 === */


/* === C27.3.8 · ORDER CONFIRMATION HEADER POLISH ===
   Customer/format/date already live in the reference and order cards.
   Keep the document heading intentionally minimal: one title, brand mark above. */
.contract-confirm-heading-c2738{display:flex;align-items:flex-end;min-height:40px;margin:0 0 1px}
.contract-confirm-page-c2738 .contract-confirm-title-c2737{margin:0}
/* === END C27.3.8 === */
