body { background: #f8f9fa; }
#kiosk { max-width: 1100px; margin: 0 auto; }
#step-area { background: #fff; }
#harness-name{margin-bottom:1rem}
.btn[style*="pointer-events:none"]{opacity:0.85}
/* Scrollable boxes for long tables (used in admin operator logs) */
.scrollbox{max-height:360px;overflow:auto;padding:6px}
.scrollbox-sm{max-height:220px;overflow:auto;padding:6px}
.scrollbox table{margin-bottom:0}

/* Make table headers sticky when inside a scrollbox */
.scrollbox thead th,
.scrollbox-sm thead th{
	position: sticky;
	top: 0;
	background: inherit; /* inherit from container (bg-light) */
	z-index: 5;
}
.scrollbox thead th{box-shadow: 0 2px 0 rgba(0,0,0,0.03);} 

/* Image display: make the wrapper a responsive frame and let the image
	 occupy the maximum space while preserving aspect ratio. */
#image-wrapper{
  width: 100%;
  max-width: 1000px; /* limit for very large screens */
  max-height: 70vh; /* don't exceed viewport height */
  display: block;
  text-align: center; /* center inline image */
  overflow: visible; /* avoid clipping bottom if layout shifts */
  background: transparent; /* no gray bars; inherit step-area background */
}
#image-wrapper img{
  display: inline-block;
  vertical-align: middle;
  /* Scale image to fit the wrapper without cropping. The browser will
     letterbox if aspect ratios differ. */
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 70vh; /* cap to viewport fraction */
  object-fit: contain;
  object-position: center center;
}

/* New fixed header + scrollable body pattern for log tables */
.log-table { width: 100%; }
.log-table .header-table { margin-bottom: 0; table-layout: fixed; }
.log-table .header-table th { background: #fff; border-bottom: 1px solid rgba(0,0,0,0.08); font-weight:700; }
.log-table .data-scroll { max-height: 360px; overflow: auto; }
.log-table .data-scroll-sm { max-height: 220px; overflow: auto; }
.log-table .body-table { margin-bottom: 0; table-layout: fixed; }
.log-table .body-table td, .log-table .header-table th { padding-top: .35rem; padding-bottom: .35rem; }

/* ensure header and body column widths align by using colgroup in templates */
