/* Enhance only initialized native controls; without JavaScript the original
   labelled, required file input remains visible and fully usable. */
.platform-upload {
  position: relative;
  display: grid;
  align-content: center;
  justify-items: center;
  gap: 8px;
  width: 100%;
  min-width: 0;
  min-height: 144px;
  margin: 0;
  padding: 18px 14px;
  box-sizing: border-box;
  border: 0;
  border-radius: 14px;
  background: transparent;
  color: var(--text, #172033);
  text-align: center;
  cursor: pointer;
}
.platform-upload:focus-within { outline: 3px solid rgba(255, 101, 0, .24); outline-offset: 2px; }
.platform-upload[aria-disabled="true"] { opacity: .6; cursor: not-allowed; }
.platform-upload > .platform-upload-symbol {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  margin: 0;
  border-radius: 50%;
  background: var(--orange-soft, #fff2e8);
  color: var(--orange, #ff6500);
}
.platform-upload-symbol svg { display: block; width: 25px; height: 25px; }
.platform-upload > .platform-upload-preview {
  display: block;
  width: 160px;
  max-width: 100%;
  height: 112px;
  margin: 0;
  border: 0;
  border-radius: 14px;
  object-fit: contain;
}
.platform-upload-label { max-width: 100%; font-size: 12px; line-height: 1.5; font-weight: 700; }
.platform-upload-name { display: block; max-width: 100%; color: var(--muted, #6b7280); font-size: 11px; line-height: 1.5; font-weight: 400; overflow-wrap: anywhere; }
.platform-upload > input[type="file"].platform-upload-input {
  position: absolute !important;
  inset: 0 !important;
  z-index: 2;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: inherit !important;
  background: transparent !important;
  box-shadow: none !important;
  opacity: 0 !important;
  cursor: inherit;
}
.platform-upload > [hidden], [data-enhanced-upload-decoration] { display: none !important; }
