/* auv-hull-shape-search: page-specific styles, served from this origin so the CSP needs no 'unsafe-inline'. */
html { scroll-behavior: smooth; }
body { background: #f7faf8; }
.contour-hero {
  background-color: #051823;
  background-image:
    radial-gradient(ellipse at 78% 30%, rgba(34, 211, 238, 0.18), transparent 46%),
    repeating-radial-gradient(ellipse at 72% 118%, transparent 0 34px, rgba(103, 232, 249, 0.10) 34px 35px),
    linear-gradient(180deg, #051823 0%, #082f3f 100%);
}
.harbour-grid {
  background-image:
    linear-gradient(rgba(15, 23, 42, 0.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(15, 23, 42, 0.06) 1px, transparent 1px);
  background-size: 34px 34px;
}
.prose-block p + p { margin-top: 1rem; }
.data-table td, .data-table th { vertical-align: top; }
.print-only { display: none; }
@media print {
  @page { size: letter; margin: 14mm 14mm 16mm; }
  body { background: #fff; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  body > header, body > footer, .no-print { display: none !important; }
  .print-only { display: block; }
  section { padding-top: 1.25rem !important; padding-bottom: 1.25rem !important; }
  .contour-hero > div { padding-top: 1.75rem !important; padding-bottom: 1.75rem !important; }
  .data-table { font-size: 11px; }
  .data-table td, .data-table th { padding: 6px 8px !important; }
  .print-break { break-before: page; }
  tr, .avoid-break { break-inside: avoid; }
  h2 { break-after: avoid; }
  .overflow-x-auto { overflow: visible !important; }
  html { font-size: 11.5px; }
  .contour-hero h1 { font-size: 2.4rem !important; }
  .mt-8, .mt-10 { margin-top: 1.25rem !important; }
}
