.pearl-desk { background: #f6f3ea; color: #103240; padding-block: 64px; }
.pearl-desk-heading { max-width: 760px; margin-bottom: 28px; }
.pearl-desk-heading h2 { font-size: clamp(2rem, 4vw, 3.6rem); line-height: 1.08; margin: 12px 0 18px; }
.pearl-desk p { line-height: 1.65; }
.pearl-desk [hidden] { display: none !important; }
.pearl-plan { max-width: 370px; margin-bottom: 28px; }
.pearl-desk label, .pearl-desk legend { font: 600 14px/1.5 Manrope, sans-serif; }
.pearl-plan > label, .pearl-field > label { display: block; margin-bottom: 7px; }
.pearl-plan select, .pearl-plan input, .pearl-field input, .pearl-field textarea { box-sizing: border-box; width: 100%; min-width: 0; border: 1px solid #86979b; background: #fffefa; color: #103240; padding: 12px; border-radius: 3px; font: 400 16px/1.5 Manrope, sans-serif; }
.pearl-field textarea { resize: vertical; }
.pearl-plan select:focus-visible, .pearl-plan input:focus-visible, .pearl-field input:focus-visible, .pearl-field textarea:focus-visible, .pearl-desk button:focus-visible, .pearl-checks input:focus-visible { outline: 3px solid #1d6580; outline-offset: 3px; }
.pearl-panels { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.pearl-option { min-width: 0; padding: 28px; background: #fffefa; border: 1px solid #cad1ca; border-radius: 4px; }
.pearl-option h3 { font: 500 32px/1.15 'Cormorant Garamond', Georgia, serif; margin: 0 0 24px; }
.pearl-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px 14px; }
.pearl-field { min-width: 0; }
.pearl-field-wide { grid-column: 1 / -1; }
.pearl-checks { padding: 18px 0 0; margin: 24px 0 0; border: 0; }
.pearl-checks label { display: flex; align-items: flex-start; gap: 10px; margin: 14px 0; font-weight: 400; }
.pearl-checks input { width: 20px; height: 20px; margin: 1px 0 0; flex: 0 0 20px; accent-color: #103240; }
.pearl-option-status { margin-top: 24px; border-top: 1px solid #cad1ca; padding-top: 18px; font-size: 14px; overflow-wrap: anywhere; }
.pearl-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; }
.pearl-desk button { padding: 14px 20px; min-height: 48px; border: 1px solid #103240; border-radius: 3px; font: 600 14px/1.5 Manrope, sans-serif; cursor: pointer; background: #103240; color: #fffefa; }
.pearl-desk button + button { background: transparent; color: #103240; }
.pearl-note { max-width: 820px; font-size: 14px; margin-top: 20px; }
.pearl-print-value { display: none; }
@media (max-width: 700px) { .pearl-panels { grid-template-columns: 1fr; } .pearl-option { padding: 20px; } .pearl-desk { padding-block: 40px; } }
@media (max-width: 380px) { .pearl-fields { grid-template-columns: 1fr; } }

.pearl-print-brand, .pearl-print-footer { display: none; }
@page { size: auto; margin: 16mm; }
@media print {
  html, body { background: #fff !important; color: #103240 !important; margin: 0 !important; padding: 0 !important; }
  .tool-page > :not(.pearl-desk), .pearl-actions, .pearl-plan, .pearl-desk-heading, .pearl-note, [data-pearl-message], .pearl-desk noscript { display: none !important; }
  .tool-page, .pearl-desk { display: block !important; width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important; background: #fff !important; }
  .pearl-panels { display: block; }
  .pearl-option { border: 0; border-radius: 0; padding: 4mm 2mm; background: #fff; break-after: page; }
  .pearl-option:last-child { break-after: auto; }
  .pearl-print-brand { display: block; border-bottom: 1px solid #103240; padding-bottom: 5mm; margin-bottom: 6mm; break-inside: avoid; }
  .pearl-print-brand img { display: block; width: 52mm; height: auto; margin-bottom: 4mm; }
  .pearl-print-brand p { font: 9pt/1.5 Arial, sans-serif; margin: 2mm 0 0; }
  .pearl-option h3 { font: 24pt/1.1 Georgia, serif; margin: 0 0 5mm; }
  .pearl-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2mm 6mm; }
  .pearl-field { break-inside: avoid; }
  .pearl-field label { font: bold 9pt/1.4 Arial, sans-serif; color: #103240; margin: 0; }
  .pearl-field input, .pearl-field textarea { display: none; }
  .pearl-print-value { display: block; font: 10pt/1.45 Arial, sans-serif; white-space: pre-wrap; overflow-wrap: anywhere; margin: 1mm 0 3mm; }
  .pearl-checks { margin: 3mm 0 0; padding: 3mm 0 0; break-inside: avoid; border-top: 1px solid #bbc7c9; }
  .pearl-checks legend { font: bold 10pt/1.5 Arial, sans-serif; }
  .pearl-checks label { font: 9pt/1.4 Arial, sans-serif; margin: 2mm 0; gap: 2mm; }
  .pearl-checks input { width: 3.5mm; height: 3.5mm; flex-basis: 3.5mm; }
  .pearl-option-status { font: 9pt/1.5 Arial, sans-serif; margin-top: 4mm; padding-top: 3mm; break-inside: avoid; }
  .pearl-print-footer { display: block; border-top: 1px solid #bbc7c9; margin-top: 5mm; padding-top: 3mm; break-inside: avoid; }
  .pearl-print-footer p { font: 8pt/1.4 Arial, sans-serif; margin: 1mm 0; }
}
