
/* EnsureLoc Quick-Add compact layout — visual only, manifest-safe */
body[data-portal-page="add"] .portal-main {
  width: min(92vw, 760px) !important;
  max-width: 760px !important;
  min-height: auto !important;
  margin: 22px auto 36px !important;
  padding: 0 !important;
}

body[data-portal-page="add"] .step,
body[data-portal-page="add"] #uploadTargetCard {
  width: 100% !important;
  max-width: 760px !important;
}

body[data-portal-page="add"] .step {
  padding: 24px 26px !important;
}

body[data-portal-page="add"] h2 {
  font-size: clamp(1.7rem, 3vw, 2.05rem) !important;
  line-height: 1.1 !important;
  margin-bottom: 6px !important;
}

body[data-portal-page="add"] .lede {
  margin-bottom: 16px !important;
}

body[data-portal-page="add"] .field {
  margin-bottom: 12px !important;
}

body[data-portal-page="add"] input,
body[data-portal-page="add"] select,
body[data-portal-page="add"] textarea,
body[data-portal-page="add"] .btn {
  min-height: 46px !important;
}

body[data-portal-page="add"] .type-grid {
  gap: 10px !important;
}

body[data-portal-page="add"] .file-drop {
  padding: 22px !important;
}

body[data-portal-page="add"] .step-actions {
  margin-top: 18px !important;
}

@media (max-width: 640px) {
  body[data-portal-page="add"] .portal-main {
    width: min(94vw, 560px) !important;
    margin-top: 14px !important;
  }

  body[data-portal-page="add"] .step {
    padding: 20px 18px !important;
  }

  body[data-portal-page="add"] .portal-header h1 {
    font-size: 1.25rem !important;
  }
}


/* Basic document scan control — frontend only, uses existing upload flow */
body[data-portal-page="add"] .capture-actions {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

@media (max-width: 640px) {
  body[data-portal-page="add"] .capture-actions {
    grid-template-columns: 1fr !important;
  }
}
