@media (min-width: 801px) and (min-height: 650px) {
  html, body { height: 100%; overflow: hidden; }
  body { display: grid; grid-template-rows: minmax(0, 1fr); }
  main { min-height: 0; display: grid; grid-template-rows: minmax(210px, 55%) 28px minmax(0, 1fr); gap: 0; }
  .camera-grid { min-height: 0; }
  .camera-grid article { min-height: 0; }
  .camera-grid iframe, .camera-grid video, .camera-grid video-stream { height: 100%; min-height: 0; }
  .zones-heading { height: 28px; min-height: 28px; }
  .thermal-grid { min-height: 0; height: 100%; padding-left: 4px; align-items: stretch; grid-auto-rows: minmax(0, 1fr); }
  .thermal-card { min-height: 0; height: 100%; padding: clamp(10px, 1.2vh, 16px); display: grid; grid-template-rows: auto auto auto minmax(72px, 1fr); }
  .card-header { padding-bottom: clamp(7px, 1vh, 12px); }
  .region-number { width: clamp(38px, 5vh, 48px); height: clamp(38px, 5vh, 48px); font-size: clamp(21px, 3vh, 28px); }
  .region-title { font-size: clamp(16px, 2.2vh, 21px); }
  .temperature { padding: clamp(8px, 1.4vh, 16px) 0; font-size: clamp(38px, 6vh, 62px); }
  .temperature .unit { font-size: clamp(20px, 3vh, 28px); }
  .alarm-row { padding: clamp(7px, 1.2vh, 13px) 4px; }
  .alarm-label { font-size: clamp(11px, 1.7vh, 15px); }
  .alarm-value { font-size: clamp(18px, 2.7vh, 24px); }
  .status { width: clamp(38px, 5vh, 48px); height: clamp(38px, 5vh, 48px); font-size: clamp(24px, 3.5vh, 31px); }
  .chart { min-height: 72px; height: auto; margin-top: clamp(5px, 1vh, 10px); }
  .chart-time, .chart-label { font-size: clamp(10px, 1.45vh, 13px); }
}
.floating-settings { position: fixed; z-index: 20; top: 7px; right: 11px; padding: 8px 11px; border: 1px solid #b9d0dc99; border-radius: 5px; background: transparent; color: #fff; font-size: 10px; font-weight: 700; text-decoration: none; text-shadow: 0 1px 4px #000; }
.floating-channel { position: fixed; z-index: 20; top: 7px; left: 11px; padding: 8px 13px; border: 1px solid #35d1ef; border-radius: 5px; background: #07141dcc; color: #fff; font-size: 10px; font-weight: 800; cursor: pointer; }
.floating-channel:focus { outline: 3px solid #fff; outline-offset: 2px; }
