/* Small additions to the shared estimate, following the existing visual system. */
.unknown-area-choice { display:flex; align-items:center; gap:10px; margin:18px 0 4px; cursor:pointer; font-size:14px; }
.unknown-area-choice input { width:18px; height:18px; flex:0 0 18px; accent-color:#163e35; }
.request-preferences { margin:22px 0 8px; border-top:1px solid #dce2dc; padding-top:16px; }
.request-preferences > summary { cursor:pointer; font-weight:650; font-size:14px; padding:8px 0; }
.request-preferences[open] > summary { margin-bottom:12px; }
.request-preferences .field { min-width:0; }
.request-preferences input,.request-preferences select { width:100%; min-width:0; }
.estimate-tools { display:flex; flex-wrap:wrap; gap:8px; margin-top:16px; }
.estimate-tools button { flex:1 1 auto; min-height:44px; padding:9px 12px; border:1px solid #cbd7cd; border-radius:10px; background:transparent; color:#163e35; font:inherit; font-size:13px; cursor:pointer; }
.estimate-tools button:hover { background:#edf3ed; }
.estimate-tools button:focus-visible,.request-preferences summary:focus-visible { outline:2px solid #163e35; outline-offset:3px; }
.estimate-tool-status { margin:8px 0 0; color:#395346; font-size:13px; }
.estimate-copy-fallback { width:100%; min-height:140px; margin-top:10px; font:inherit; font-size:13px; white-space:pre-wrap; }
.estimate-print { display:none; }
@media print {
  body.printing-estimate > :not(#estimatePrint) { display:none !important; }
  body.printing-estimate #estimatePrint { display:block !important; color:#142c22; padding:12mm; font:12pt/1.5 Arial,sans-serif; }
  body.printing-estimate #estimatePrint h1 { font-size:24pt; margin:0 0 8pt; }
  body.printing-estimate #estimatePrint h2 { font-size:16pt; margin:0 0 16pt; }
  body.printing-estimate #estimatePrint pre { white-space:pre-wrap; overflow-wrap:anywhere; font:inherit; }
  body.printing-estimate #estimatePrint footer { display:block; margin-top:20pt; padding:12pt 0 0; border-top:1px solid #888; background:none; color:inherit; font-size:10pt; }
}
