.contracts-header,.contract-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.contract-actions{justify-content:flex-start;margin:16px 0}.contracts-stage{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.contracts-stage span{background:var(--card,#fff);border:1px solid var(--line,#d2dbe2);border-radius:20px;padding:7px 14px;font-size:13px}.contracts-stage .current{background:#193e48;color:white;border-color:#193e48}.contract-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.contract-grid .wide{grid-column:1/-1}.contract-grid label,.contract-template-form label{display:block;font-size:13px;font-weight:600;text-transform:none;letter-spacing:normal}.contract-grid input,.contract-grid textarea,.contract-grid select,.contract-template-form input,.contract-template-form textarea{display:block;width:100%;margin-top:7px;box-sizing:border-box}.contract-grid textarea{min-height:90px}.contract-long{min-height:300px!important}.contract-signers{display:grid;grid-template-columns:1fr 1.3fr 1fr auto;gap:10px;align-items:end;margin:12px 0}.contract-signers input{width:100%}.contract-values{display:grid;gap:8px}.contract-value{display:grid;grid-template-columns:1fr 140px;gap:12px;align-items:center}.contract-value textarea{min-height:42px}.contract-value span{text-align:right}.contract-paper{background:white;color:#1c2f38;max-width:850px;padding:48px;margin:24px auto;box-shadow:0 2px 12px #12263115;border:1px solid #d6dfe4;font-family:Arial,sans-serif;font-size:14px;line-height:1.65}.contract-paper header{border-bottom:2px solid #234c55;padding-bottom:18px}.contract-paper header img{max-width:180px;max-height:64px;object-fit:contain}.contract-paper h2{font-size:25px;line-height:1.25}.contract-company{font-weight:bold;letter-spacing:.04em}.contract-paper h3{font-size:16px;margin:0 0 12px}.contract-paper section{margin:26px 0;break-inside:auto}.contract-copy{white-space:pre-wrap;overflow-wrap:anywhere}.contract-parties{display:grid;grid-template-columns:1fr 1fr;gap:24px}.contract-paper table{border-collapse:collapse;width:100%;font-size:14px}.contract-paper th,.contract-paper td{text-align:left;border-bottom:1px solid #d8e1e5;padding:10px 0;white-space:pre-wrap;overflow-wrap:anywhere}.contract-paper th:last-child,.contract-paper td:last-child{text-align:right;min-width:110px;padding-left:18px}.contract-paper tfoot{background:#eff5f4;font-weight:bold}.contract-callout{padding:16px;background:#edf5f3;border:1px solid #c5dbd6;border-radius:10px;margin:16px 0}.contract-link{word-break:break-all;width:100%;box-sizing:border-box}.contract-status{color:#42616d;font-size:14px;white-space:pre-wrap}.contract-dialog{width:min(960px,95vw);max-height:92vh;border:1px solid #bdccd2;border-radius:14px;padding:24px;box-sizing:border-box}.contract-dialog::backdrop{background:#11242caa}.contract-dialog[open]{display:block}.contract-dialog textarea{width:100%;box-sizing:border-box}.contract-template-form{display:grid;gap:16px}.contract-template-form textarea{min-height:140px}.contract-signature-card{max-width:850px;margin:20px auto;padding:32px;background:white;border:1px solid #c8d7db;border-radius:12px}.contract-signature-card label{display:block;margin:14px 0}.contract-signature-card input[type=text]{width:100%;box-sizing:border-box;padding:12px}.contract-signature-card button{padding:12px 20px;border:0;border-radius:8px;background:#194b50;color:white;cursor:pointer}.contract-signature-card button:disabled{opacity:.5;cursor:default}.contract-signature-card input[type=checkbox]{margin-right:8px}.contract-signer-state{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid #e1e7ea}.contract-muted{font-size:13px;color:#556c76}.contract-list-row{width:100%;text-align:left;padding:18px;display:flex;justify-content:space-between;gap:12px;margin:8px 0}.contract-list-row span{display:block}.contract-list-row small{display:block;color:#536d78;margin-top:5px}@media(max-width:650px){.contract-grid,.contract-parties{grid-template-columns:1fr}.contract-paper{padding:22px;margin:16px 0}.contract-signers{grid-template-columns:1fr}.contract-signature-card{padding:20px}.contract-value{grid-template-columns:1fr 100px}.contract-dialog{padding:16px}.contract-list-row{flex-wrap:wrap}}@media print{body{background:white}.contract-paper{border:0;box-shadow:none;padding:0;margin:0;max-width:none}.contract-actions,.contract-signature-card,.contracts-header,.contracts-stage{display:none}}

/* Contract paper stays readable independently of the app theme and global bar styles. */
.contract-paper>header{display:block;position:static;background:transparent;color:inherit;padding:0 0 18px;box-shadow:none;min-height:0}.contract-dialog{--ink:#14202b;--muted:#5c6b78;--line:#c7d0d7;--bg:#fff;--card:#fff;--sunken:#e4e9ec;--field:#fff;--brand:#14202b;--on-brand:#f4f7f9;--accent:#b64b16;--on-accent:#fff;color:var(--ink);background:white;color-scheme:light}.contract-status{color:var(--muted,#42616d)}

/* US Letter pages share the measured PDF layout. The responsive SVG scales the
   whole page without reflowing the customer's copy into different page breaks. */
.contract-reference{max-width:980px;margin:18px auto;color:#000}.contract-reference-page{background:#fff;box-shadow:0 1px 8px #0002;margin:0 0 20px;break-after:page}.contract-reference-page svg{display:block;width:100%;height:auto}.contract-copy-choice{display:flex;align-items:center;gap:8px;font-size:13px!important;text-transform:none!important;letter-spacing:normal!important}.contract-copy-choice select{width:auto}.contract-value{grid-template-columns:minmax(200px,1fr) 180px 130px}.contract-logo-choice{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:18px}.contract-logo-choice p{width:100%;margin:0}.contract-logo-choice label{padding:10px;border:1px solid var(--line);border-radius:8px;cursor:pointer;font-size:13px;text-transform:none;letter-spacing:normal}.contract-logo-choice span{font-size:13px}.contract-dialog:has(.contract-reference){width:min(1060px,98vw)}@media(max-width:650px){.contract-value{grid-template-columns:1fr 100px}.contract-value textarea{grid-column:1/-1}.contract-value select{width:100%}.contract-reference{margin:12px -8px}.contract-reference-page{margin-bottom:12px}}@media print{.contract-reference{max-width:none;margin:0}.contract-reference-page{box-shadow:none;margin:0;width:8.5in;height:11in}.contract-reference-page:last-child{break-after:auto}@page{size:letter;margin:0}}

.contract-reference-scroll{overflow:auto;max-width:100%}.contract-zoom-label{display:flex;align-items:center;gap:10px;font:13px Arial,sans-serif;text-transform:none;letter-spacing:normal;margin:12px 0}.contract-zoom-label select{font:inherit;width:auto;padding:6px 10px}@media print{.contract-zoom-label{display:none}.contract-reference-scroll{overflow:visible}.contract-reference{width:auto!important;max-width:none!important}}

/* The agreement is visible while project details are filled in; standard
   company wording is kept together rather than repeated as empty-looking fields. */
.contract-template-summary{padding:20px;background:var(--bg);border:1px solid var(--line);border-radius:12px;margin:16px 0;color:var(--ink)}
.contract-template-summary h2,.contract-template-summary h3{margin-top:0}.contract-template-summary p{font-size:14px;line-height:1.6}
.contract-template-wording summary{font-weight:700;cursor:pointer}.contract-template-wording summary span{display:block;font-size:12px;font-weight:400;color:var(--muted);margin-top:6px}.contract-template-wording>p{font-size:13px;color:var(--muted)}
.contract-estimate-choice{display:flex;flex-direction:column;gap:5px;width:100%;text-align:left;white-space:normal;background:var(--card);color:var(--ink);border:1px solid var(--line);margin:8px 0;padding:14px}.contract-estimate-choice span{font-size:12px;color:var(--muted)}
.contract-compose{min-width:0}.contract-compose #contract-body{min-width:0}.contract-preview-panel{min-width:0}.contract-preview-panel h2{margin-top:0}.contract-preview-panel>p{font-size:13px;color:var(--muted)}.contract-preview-panel .contract-paper{padding:24px;box-sizing:border-box}.contract-preview-panel .contract-parties{grid-template-columns:1fr}.contract-preview-panel .contract-paper{overflow-wrap:anywhere}
@media(min-width:1200px){.contract-compose{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:24px;align-items:start}.contract-preview-panel{position:sticky;top:90px;max-height:calc(100vh - 120px);overflow:auto}.contract-compose .contract-grid{grid-template-columns:1fr}.contract-compose .contract-signers{grid-template-columns:1fr 1fr}.contract-compose .contract-value{grid-template-columns:1fr 110px}.contract-compose .contract-value textarea{grid-column:1/-1}}
@media(max-width:650px){.contract-preview-panel{padding:12px}.contract-preview-panel .contract-paper{padding:16px}.contract-template-summary{padding:16px}.contract-signers{grid-template-columns:1fr}}
.contract-more-actions{position:relative;font-size:13px}.contract-more-actions summary{cursor:pointer;padding:12px}.contract-more-actions[open]>.contract-actions{position:absolute;right:0;top:32px;z-index:15;min-width:250px;padding:12px;background:var(--card);border:1px solid var(--line);border-radius:10px;box-shadow:0 8px 30px #0002;flex-direction:column;align-items:stretch}.contract-more-actions button{white-space:normal;text-align:left}
