.ijc-import {
  margin: 0 0 28px;
  padding: 24px;
  border: 1px solid #cfd9e4;
  border-left: 5px solid #76449a;
  border-radius: 16px;
  background: linear-gradient(135deg, #faf7fd 0%, #f2f7fc 100%);
  color: #172433;
  font-family: "IBM Plex Sans", "Segoe UI", Arial, sans-serif;
}

.ijc-import[hidden],
.ijc-import [hidden] {
  display: none !important;
}

.ijc-import__heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
}

.ijc-import__heading h2 {
  margin: 0 0 6px;
  color: #172433;
  font: 700 clamp(22px, 3vw, 30px)/1.15 "IBM Plex Sans", "Segoe UI", Arial, sans-serif;
}

.ijc-import__heading p,
.ijc-import__privacy,
.ijc-import__help {
  margin: 0;
  color: #536579;
  font-size: 15px;
  line-height: 1.55;
}

.ijc-import__privacy {
  flex: 0 0 auto;
  padding: 7px 11px;
  border: 1px solid #bfd5c8;
  border-radius: 999px;
  background: #f1faf5;
  color: #276342;
  font-size: 12px;
  font-weight: 700;
}

.ijc-import__controls {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  margin-top: 20px;
}

.ijc-import__file {
  min-width: 0;
  padding: 11px 13px;
  border: 1px solid #b9c8d7;
  border-radius: 10px;
  background: #fff;
  color: #24374a;
  font: inherit;
}

.ijc-import__button {
  min-height: 46px;
  padding: 11px 18px;
  border: 1px solid #76449a;
  border-radius: 10px;
  background: #76449a;
  color: #fff;
  font: 700 14px/1.2 "IBM Plex Sans", "Segoe UI", Arial, sans-serif;
  cursor: pointer;
}

.ijc-import__button:hover,
.ijc-import__button:focus-visible {
  background: #5d337b;
}

.ijc-import__button:disabled {
  cursor: wait;
  opacity: .6;
}

.ijc-import__button--secondary {
  border-color: #aebdcb;
  background: #fff;
  color: #23364a;
}

.ijc-import__button--secondary:hover,
.ijc-import__button--secondary:focus-visible {
  background: #edf3f8;
}

.ijc-import__help {
  margin-top: 9px;
  font-size: 12px;
}

.ijc-import__status {
  min-height: 22px;
  margin: 12px 0 0;
  color: #3f5469;
  font-size: 13px;
  font-weight: 600;
}

.ijc-import__status.is-error {
  color: #a12828;
}

.ijc-import__review {
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid #d6e0e9;
}

.ijc-import__review h3 {
  margin: 0 0 5px;
  color: #172433;
  font: 700 20px/1.25 "IBM Plex Sans", "Segoe UI", Arial, sans-serif;
}

.ijc-import__summary {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin: 14px 0;
}

.ijc-import__summary span {
  padding: 6px 9px;
  border: 1px solid #c6d5e2;
  border-radius: 999px;
  background: #fff;
  color: #344d65;
  font-size: 12px;
  font-weight: 700;
}

.ijc-import__raw {
  width: 100%;
  min-height: 190px;
  max-height: 360px;
  box-sizing: border-box;
  padding: 13px;
  border: 1px solid #c5d1dc;
  border-radius: 10px;
  background: #fff;
  color: #26394d;
  font: 13px/1.5 ui-monospace, SFMono-Regular, Consolas, monospace;
  resize: vertical;
}

.ijc-import__choice {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin: 14px 0;
}

.ijc-import__choice label {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: #30465b;
  font-size: 13px;
  font-weight: 650;
}

.ijc-import__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

@media (max-width: 700px) {
  .ijc-import {
    padding: 18px;
  }

  .ijc-import__heading,
  .ijc-import__controls,
  .ijc-import__actions {
    display: flex;
    flex-direction: column;
  }

  .ijc-import__privacy {
    align-self: flex-start;
  }

  .ijc-import__button,
  .ijc-import__file {
    width: 100%;
    box-sizing: border-box;
  }
}

