.inspection-page .app-frame { overflow-x: clip; }
.visit-list-table { min-width: 1050px; }
.visit-list-table th { font-size: .75rem; }
.visit-list-table td { padding-block: 1rem; }
.inspection-detail { padding: 24px; min-width: 0; }
.inspection-toolbar { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 16px; margin-block-end: 20px; }
.inspection-viewport { max-width: 100%; overflow-x: auto; padding: 2px 2px 18px; }
.inspection-viewport:focus-visible, .inspection-photos a:focus-visible, .inspection-carousel:focus-visible, .inspection-carousel button:focus-visible { outline: 3px solid #206bc4; outline-offset: 2px; }
.inspection-sheet { box-sizing: border-box; width: 210mm; min-height: 297mm; padding: 9mm 7mm 6mm; margin-inline: auto; background: #fff; color: #202020; border: 1px solid #d5d7da; font: 11px/1.9 Vazirmatn, Tahoma, sans-serif; }
.inspection-letterhead { min-height: 37mm; position: relative; }
.inspection-organization { text-align: center; font-size: 10px; line-height: 1.95; }
.inspection-emblem { display: block; font: 49px/1.15 'Times New Roman', serif; padding-block-end: 4px; }
.inspection-reference { position: absolute; top: 20mm; left: 1mm; width: 55mm; font-size: 10px; line-height: 1.9; }
.inspection-reference span { overflow-wrap: anywhere; }
.inspection-sheet h1 { font: 600 11px/1.9 Vazirmatn, Tahoma, sans-serif; text-align: center; margin: 5mm 0 1mm; }
.inspection-introduction { text-align: justify; margin: 0 0 1.5mm; font-size: 10px; }
.inspection-form { border-collapse: collapse; table-layout: fixed; width: 100%; border: 1.5px solid #202020; }
.inspection-form th, .inspection-form td { border: 1px solid #202020; padding: .5mm 1mm; font-weight: 400; vertical-align: middle; }
.inspection-form thead th { text-align: center; font-weight: 600; padding: 1mm .4mm; }
.inspection-col-number { width: 4%; }
.inspection-col-indicator { width: 22%; }
.inspection-col-question { width: 42%; }
.inspection-col-answer { width: calc(14% / var(--answer-count)); }
.inspection-col-notes { width: 18%; }
.inspection-form .inspection-indicator-title { text-align: center; font-weight: 500; font-size: 10px; line-height: 1.6; }
.inspection-indicator > tr:first-child > * { border-top-width: 1.5px; }
.inspection-question { text-align: center; font-size: 9px; line-height: 1.5; overflow-wrap: anywhere; }
.inspection-form .inspection-answer { text-align: center; padding: 0; font-size: 15px; line-height: 1; }
.inspection-answer small { display: block; font-size: 8px; line-height: 1.2; }
.inspection-notes { white-space: pre-wrap; overflow-wrap: anywhere; font-size: 9px; line-height: 1.5; }
.inspection-total { height: 9mm; text-align: center; }
.inspection-form .inspection-explanation { height: 31mm; vertical-align: top; }
.inspection-form .inspection-signatures { vertical-align: top; }
.inspection-signatures > div { display: flex; justify-content: space-around; gap: 1mm; padding-top: 2mm; font-size: 8px; }
.inspection-signatures strong { display: block; font-size: 8px; font-weight: 400; margin-top: 3mm; }
.inspection-sheet-footer { display: flex; justify-content: space-between; gap: 3mm; padding-top: 2mm; font-size: 8px; }
.inspection-footnote { font-size: 8px; margin-block: 2mm 0; }
.inspection-no-answers { height: 100mm; text-align: center; }
.inspection-photos { box-sizing: border-box; max-width: 210mm; margin: 20px auto 0; background: #fff; border: 1px solid #d5d7da; padding: 24px; color: #202020; }
.inspection-photos h2 { font-size: 1rem; margin-bottom: 8px; }
.inspection-photos header p { font-size: .8rem; margin-bottom: 20px; }
.inspection-photo-grid { border: 1px solid #d5d7da; }
.inspection-photo-grid figure { margin-block: 0; padding: 8px; }
.inspection-photo-grid a { display: block; }
.inspection-photo-grid img { width: 100%; height: clamp(240px, 55vh, 520px); object-fit: contain; display: block; }
.inspection-photo-grid figcaption { text-align: center; margin-top: 8px; font-size: .75rem; }
.inspection-image-error { font-size: .75rem; margin: 8px 0 0; }
.inspection-carousel-controls { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 16px; }
@media (max-width: 767.98px) {
  .inspection-detail { padding: 16px 12px; }
  .inspection-toolbar .btn { flex: 1; }
  .inspection-toolbar .btn-list { width: 100%; }
  .inspection-carousel-controls { flex-wrap: wrap; }
  .inspection-carousel-controls span { order: 1; width: 100%; text-align: center; }
  .inspection-photos { padding: 16px; }
}
@media print {
  @page { size: A4 portrait; margin: 7mm; }
  html, body { width: auto !important; min-width: 0 !important; background: #fff !important; }
  .app-sidebar, .app-topbar, .app-footer, .app-skip-link, .app-nav-backdrop, .d-print-none { display: none !important; }
  .app-frame, .app-main, .app-content, .content-wrapper { display: block !important; margin: 0 !important; padding: 0 !important; width: auto !important; min-height: 0 !important; }
  .inspection-page .app-frame { overflow: visible; }
  .inspection-detail, .inspection-viewport { margin: 0; padding: 0; overflow: visible; }
  .inspection-sheet { width: 196mm; min-height: 0; padding: 0; margin: 0; border: 0; font-size: 8pt; }
  .inspection-form thead { display: table-header-group; }
  .inspection-form tr, .inspection-ending { break-inside: avoid; }
  .inspection-letterhead, .inspection-sheet h1, .inspection-introduction { break-after: avoid; }
  .inspection-photos { width: 196mm; max-width: none; padding: 0; margin: 0; border: 0; break-before: page; }
  .inspection-photos header { break-after: avoid; }
  .inspection-photo-grid { display: block; overflow: visible; border: 0; }
  .inspection-photo-grid .carousel-item { display: block !important; float: none; width: 100%; margin: 0 0 6mm; transform: none !important; transition: none !important; break-inside: avoid; border: 1px solid #202020; }
  .inspection-photo-grid img { height: 102mm; }
  .inspection-completion-note { font-size: 8pt; border: 1px solid #202020; background: #fff; }
}
