.cesium-clouds-lab {
  position: absolute; right: 16px; bottom: 76px; z-index: 8;
  width: min(270px, calc(100% - 32px)); box-sizing: border-box;
  max-height: calc(100% - 100px); overflow-y: auto;
  padding: 13px 16px; border: 1px solid #708789; border-radius: 10px;
  background: #111e26ed; color: #edf3f6; box-shadow: 0 6px 24px #0004;
  font: 13px/1.45 system-ui, sans-serif;
}
.cesium-clouds-lab[hidden] { display: none; }
.cesium-map > .cesium-clouds-lab { left: 50%; right: auto; transform: translateX(-50%); }
.cesium-clouds-lab summary { cursor: pointer; color: #ffd08a; font-weight: 650; letter-spacing: .06em; }
.cesium-clouds-lab p { color: #b8c8d0; margin: 9px 0; }
.cesium-clouds-lab label { display: block; margin: 10px 0; }
.cesium-clouds-lab input[type="checkbox"] { width: auto; accent-color: #75cfce; }
.cesium-clouds-lab input[type="range"] { display: block; width: 100%; accent-color: #75cfce; }
.cesium-clouds-lab output { float: right; }
.cesium-clouds-lab select, .cesium-clouds-lab button {
  color: #edf3f6; background: #283f4c; border: 1px solid #6a8491; border-radius: 5px; padding: 6px 10px;
}
.cesium-clouds-lab select { float: right; }
.cesium-clouds-lab small { display: block; margin-top: 10px; color: #b8c8d0; }
.cesium-clouds-actions { display: flex; flex-wrap: wrap; gap: 6px; clear: both; padding-top: 10px; }
.cesium-clouds-lab-embedded {
  position: static; width: 100%; max-height: none; overflow: visible;
  padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none;
}
.cesium-clouds-lab-embedded :disabled { opacity: .5; cursor: not-allowed; }
.cesium-clouds-indicator {
  position: absolute; z-index: 8; top: 112px; left: 50%; transform: translateX(-50%);
  padding: 4px 10px; border-radius: 5px; background: #111e26e8; color: #ffd08a;
  font: 12px/1.4 system-ui, sans-serif; pointer-events: none;
}
.cesium-clouds-indicator[hidden] { display: none; }
.clouds-preview-page { margin: 0; background: #142330; color: #edf3f6; font: 14px system-ui, sans-serif; }
.clouds-preview-map { position: absolute; inset: 0; }
.clouds-preview-header { position: absolute; top: 18px; left: 18px; z-index: 2; max-width: min(500px, calc(100% - 68px)); padding: 14px 16px; border-radius: 10px; background: #111e26e8; }
.clouds-preview-header h1 { margin: 0 0 5px; font-size: 18px; }
.clouds-preview-header p { margin: 5px 0; color: #b8c8d0; }
.clouds-preview-header a { color: #8fdddc; }
.clouds-preview-header button { margin-top: 8px; padding: 6px 12px; cursor: pointer; }
