/* โหงวเฮ้ง — camera page only (loaded from hong-heng.html) */

.hh-layout {
  display: grid;
  gap: 1rem;
}

@media (min-width: 840px) {
  .hh-layout {
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
    align-items: start;
  }
}

.hh-stage {
  position: relative;
  border-radius: 16px;
  overflow: hidden;
  border: 1px solid var(--line-silver);
  background: #070b18;
  aspect-ratio: 3 / 4;
  max-height: min(72dvh, 640px);
}

.hh-stage video,
.hh-stage canvas {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.hh-stage canvas,
.hh-stage .cam-freeze {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.hh-consent,
.hh-share-public {
  display: grid;
  gap: 0.55rem;
  margin: 0.75rem 0;
  padding: 0.85rem 0.95rem;
  border-radius: 14px;
  border: 1px solid var(--line-silver);
  background: rgba(20, 27, 51, 0.55);
  font-size: 0.92rem;
  line-height: 1.5;
}

.hh-consent label,
.hh-share-public label {
  display: flex;
  gap: 0.65rem;
  align-items: flex-start;
  min-height: 44px;
}

.hh-consent input[type="checkbox"],
.hh-share-public input[type="checkbox"] {
  width: 1.15rem;
  height: 1.15rem;
  min-width: 1.15rem;
  margin-top: 0.2rem;
  flex-shrink: 0;
}

.hh-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
}

.hh-actions .btn {
  min-height: 44px;
}

.hh-status {
  margin: 0.5rem 0 0;
  font-size: 0.88rem;
}

.hh-subtitle {
  margin: 0.15rem 0 0.5rem;
  font-size: 0.88rem;
  color: var(--muted, #b8b0a0);
}

html.samta-camera-page .hh-stage video,
html.samta-camera-page .hh-stage canvas {
  -webkit-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
}

@media print {
  html.samta-camera-page .hh-stage,
  html.samta-camera-page video,
  html.samta-camera-page canvas {
    visibility: hidden !important;
  }
}
