[data-heic-upload-limit] .upload-limit-controls {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 12px;
  margin: 16px 0;
}
[data-heic-upload-limit] label { display: grid; gap: 6px; }
[data-heic-upload-limit] input,
[data-heic-upload-limit] select,
[data-heic-upload-limit] button {
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  padding: 10px;
  border: 1px solid currentColor;
  border-radius: 8px;
  color: inherit;
  background: transparent;
  font: inherit;
}
[data-heic-upload-limit] select option { color: #111827; background: #ffffff; }
[data-heic-upload-limit] button { cursor: pointer; }
[data-heic-upload-limit] button:disabled { opacity: .55; cursor: default; }
[data-heic-upload-limit] input:focus-visible,
[data-heic-upload-limit] select:focus-visible,
[data-heic-upload-limit] button:focus-visible { outline: 3px solid #60a5fa; outline-offset: 3px; }
[data-heic-upload-limit] output { display: block; margin: 12px 0; }
[data-heic-upload-limit] table { width: 100%; border-collapse: collapse; margin: 12px 0; }
[data-heic-upload-limit] th,
[data-heic-upload-limit] td { padding: 8px; text-align: left; border-bottom: 1px solid currentColor; }
@media (max-width: 480px) {
  [data-heic-upload-limit] .upload-limit-controls { grid-template-columns: minmax(0, 1fr); }
}
