/* Scoped worksheet styles; shared type, colour and spacing come from seo.css. */
.quote-worksheet{margin-block:32px;padding:24px;background:var(--surface);border:1px solid var(--line);border-radius:14px;min-width:0}
.quote-worksheet h2{margin:0 0 20px;font-size:clamp(30px,4vw,38px)}
.quote-worksheet h3{font-size:28px;margin:28px 0 16px}
.quote-intro{font-size:17px}
.quote-private{padding:16px;margin-bottom:28px;background:var(--ground);border-left:3px solid var(--violet);font-size:14px;line-height:1.5}
.quote-worksheet fieldset{min-width:0;border:0;padding:0;margin:0 0 24px}
.quote-worksheet legend{font-weight:750;font-size:18px;line-height:1.4;padding:0;margin-bottom:16px}
.quote-more{margin:0 0 28px;border:1px solid var(--line);border-radius:10px}
.quote-more summary{min-height:46px;padding:12px 16px;font:700 16px/1.4 var(--body);color:var(--violet);cursor:pointer;overflow-wrap:anywhere}
.quote-more summary::marker{color:var(--violet)}
.quote-more[open] summary{margin-bottom:20px;border-bottom:1px solid var(--line)}
.quote-more>.quote-meta,.quote-more>.quote-scope-fields{margin-inline:16px}
.quote-meta-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.quote-full{grid-column:1/-1}
.quote-field{display:flex;flex-direction:column;min-width:0}
.quote-field label{font-size:15px;font-weight:700;line-height:1.4;margin-bottom:8px}
.quote-field input,.quote-field textarea{display:block;width:100%;min-width:0;min-height:48px;border:1px solid var(--secondary);border-radius:6px;padding:10px 12px;background:var(--surface);color:var(--ink);font:400 16px/1.4 var(--body)}
.quote-field textarea{resize:vertical;min-height:96px}
.quote-field input[aria-invalid=true],.quote-field textarea[aria-invalid=true]{border:2px solid var(--ink);background:var(--butter)}
.quote-field small,.quote-help,.quote-count{font-size:14px;line-height:1.5;color:var(--secondary)}
.quote-field small{margin-top:8px}
.quote-field-error{font-size:14px;font-weight:700;line-height:1.5;margin-top:8px}
.quote-field-error:empty{display:none}
.quote-scope-fields{display:grid;gap:20px;margin-bottom:28px}
.quote-worksheet .quote-line{padding:20px;border:1px solid var(--line);border-radius:10px;background:var(--ground)}
.quote-line legend{padding-inline:8px;margin-left:-8px;margin-bottom:0;background:var(--surface);border-radius:4px}
.quote-line-actions{display:flex;justify-content:flex-end;margin-bottom:12px}
.quote-line-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.3fr);gap:16px}
.quote-description{grid-column:1/-1}
.quote-worksheet button{font:700 15px/1.3 var(--body);cursor:pointer}
.quote-worksheet button:disabled{opacity:.55;cursor:default}
.quote-worksheet button:disabled:hover{background:var(--surface)}
.quote-worksheet .button{border:0;font-size:16px}
.quote-secondary,.quote-remove{display:inline-flex;justify-content:center;align-items:center;min-height:46px;padding:10px 16px;border:1px solid var(--violet);border-radius:999px;background:var(--surface);color:var(--violet);text-align:center}
.quote-secondary:hover,.quote-remove:hover{background:var(--ground)}
.quote-remove{font-size:14px!important;padding:8px 12px;min-height:44px}
.quote-row-controls{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;margin-bottom:24px}
.quote-example-control{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding-top:24px;border-top:1px solid var(--line)}
.quote-main-actions,.quote-export-actions{display:flex;flex-wrap:wrap;gap:12px 16px;margin-top:24px}
.quote-main-actions .button{min-height:50px}
.quote-errors{padding:16px;margin-top:24px;background:var(--butter);border-left:3px solid var(--ink);font-size:15px}
.quote-errors p{font-weight:700;margin-bottom:12px}
.quote-errors ul{margin:0;padding-left:20px}
.quote-errors li{margin-bottom:8px}
.quote-errors li:last-child{margin-bottom:0}
.quote-status{font-size:15px;font-weight:650;line-height:1.5;margin:24px 0 0}
.quote-preview{padding:24px;margin-top:24px;border:1px solid var(--line);border-radius:10px;background:var(--ground);overflow-wrap:anywhere}
.quote-preview-label{font-size:14px;font-weight:700;margin-bottom:8px}
.quote-preview h3{margin:0 0 24px}
.quote-details{margin:0 0 24px;font-size:15px}
.quote-details>div{padding-block:10px;border-top:1px solid var(--line)}
.quote-details dt{font-weight:700;margin-bottom:4px}
.quote-details dd{margin:0;white-space:pre-wrap}
.quote-notes{margin-block:20px}
.quote-notes h4{font:750 16px/1.4 var(--body);margin:0 0 8px}
.quote-notes p{font-size:15px;white-space:pre-wrap;margin:0}
.quote-preview-table{margin:24px 0}
.quote-preview-table table{min-width:500px}
.quote-preview-table th,.quote-preview-table td{padding:10px 12px;font-size:14px}
.quote-preview-table thead th{white-space:nowrap;overflow-wrap:normal}
.quote-table-hint{font-size:14px;line-height:1.5;color:var(--secondary);margin-bottom:12px}
.quote-preview-table td:nth-last-child(-n+2){white-space:nowrap}
.quote-preview-table tfoot{font-weight:750;background:var(--butter)}
.quote-preview-total{font:800 clamp(30px,4vw,40px)/1.15 var(--display);margin-bottom:12px;overflow-wrap:anywhere}
.quote-preview-basis,.quote-review-notice,.quote-print-source{font-size:14px;line-height:1.5}
.quote-review-notice{padding-top:16px;margin-bottom:0;border-top:1px solid var(--line);font-weight:650}
.quote-print-source{margin-top:16px;margin-bottom:0}
.quote-export-help{margin-top:16px;margin-bottom:0}
@media(max-width:559px){
  .quote-worksheet{padding:16px}
  .quote-meta-fields{grid-template-columns:minmax(0,1fr)}
  .quote-worksheet .quote-line{padding:16px}
  .quote-line-fields{grid-template-columns:minmax(0,1fr)}
  .quote-preview{padding:16px}
  .quote-main-actions .button{width:100%}
}
@media print{
  body.printing-quote-worksheet{background:#fff;color:#000;font:11pt/1.4 Arial,sans-serif}
  body.printing-quote-worksheet>.skip,body.printing-quote-worksheet>.site-header,body.printing-quote-worksheet>.site-footer,body.printing-quote-worksheet main>:not(.content-layout),body.printing-quote-worksheet .aside{display:none!important}
  body.printing-quote-worksheet .wrap{max-width:none;padding:0}
  body.printing-quote-worksheet .content-layout{display:block}
  body.printing-quote-worksheet .prose{max-width:none}
  body.printing-quote-worksheet .prose>:not(.quote-worksheet){display:none!important}
  body.printing-quote-worksheet .quote-worksheet{padding:0;margin:0;border:0;background:#fff}
  body.printing-quote-worksheet .quote-worksheet>:not(.quote-preview){display:none!important}
  body.printing-quote-worksheet .quote-preview{padding:0;margin:0;border:0;border-radius:0;background:#fff;outline:0}
  body.printing-quote-worksheet .quote-preview-label{font-size:10pt}
  body.printing-quote-worksheet .quote-table-hint{display:none}
  body.printing-quote-worksheet .quote-preview h3{font:700 20pt/1.2 Arial,sans-serif;margin-bottom:18pt}
  body.printing-quote-worksheet .quote-notes,body.printing-quote-worksheet .quote-details>div{break-inside:avoid}
  body.printing-quote-worksheet .quote-details,body.printing-quote-worksheet .quote-notes p,body.printing-quote-worksheet .quote-notes h4{font-size:10pt}
  body.printing-quote-worksheet .quote-preview-table{overflow:visible;margin-block:16pt}
  body.printing-quote-worksheet table{min-width:0;width:100%;table-layout:fixed;background:#fff}
  body.printing-quote-worksheet thead{display:table-header-group}
  body.printing-quote-worksheet tr{break-inside:avoid}
  body.printing-quote-worksheet th,body.printing-quote-worksheet td{font-size:9pt;padding:7pt 5pt;background:#fff!important;border-bottom:1px solid #aaa;overflow-wrap:anywhere}
  body.printing-quote-worksheet table th:first-child{width:36%}
  body.printing-quote-worksheet .quote-preview-table td:nth-last-child(-n+2){white-space:normal}
  body.printing-quote-worksheet .quote-preview-total{font:700 22pt/1.2 Arial,sans-serif}
  body.printing-quote-worksheet .quote-preview-basis,body.printing-quote-worksheet .quote-review-notice,body.printing-quote-worksheet .quote-print-source{font-size:9pt}
}
