.i2imax-upload-input {
  display: none;
}

.i2imax-upload-zone {
  width: 100%;
  display: block;
  padding: 18px;
  border: 1px dashed rgba(139, 92, 246, 0.3);
  border-radius: 22px;
  background: linear-gradient(180deg, rgba(247, 240, 255, 0.94), rgba(252, 248, 255, 0.98));
  color: #14394c;
  text-align: center;
}

.i2imax-upload-zone.has-image {
  padding-bottom: 14px;
}

.i2imax-upload-copy strong {
  display: block;
  font-size: 1rem;
  font-weight: 800;
}

.i2imax-upload-copy span {
  display: block;
  margin-top: 6px;
  color: #5f7584;
  font-size: 0.84rem;
  line-height: 1.6;
}

.i2imax-compose-preview-wrap {
  margin-top: 16px;
}

.i2imax-compose-preview {
  display: block;
  max-width: 100%;
  max-height: 260px;
  margin: 0 auto;
  border-radius: 18px;
  box-shadow: 0 20px 44px rgba(20, 57, 76, 0.18);
}

.i2imax-upload-actions {
  display: flex;
  justify-content: center;
  gap: 10px;
  margin: 12px 0 20px;
}

.i2imax-mini-btn {
  min-width: 112px;
  min-height: 40px;
  padding: 0 16px;
  border: 1px solid rgba(20, 57, 76, 0.1);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.92);
  color: #14394c;
  font-size: 0.86rem;
  font-weight: 700;
  box-shadow: 0 10px 22px rgba(139, 92, 246, 0.08);
}

.i2imax-preview-grid {
  display: grid;
  gap: 14px;
}

.i2imax-preview-block {
  padding: 16px;
  border-radius: 22px;
  background: linear-gradient(180deg, rgba(255, 250, 255, 0.86), rgba(248, 243, 255, 0.88));
  border: 1px solid rgba(130, 103, 196, 0.1);
}

.i2imax-preview-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 12px;
  color: #14394c;
}

.i2imax-preview-head span {
  font-size: 0.92rem;
  font-weight: 800;
}

.i2imax-preview-head small {
  color: #7a8c99;
  font-size: 0.76rem;
  font-weight: 600;
}

.i2imax-preview-wrap {
  min-height: 260px;
}

.i2imax-preview-image {
  display: block;
  max-width: 100%;
  max-height: 360px;
  border-radius: 18px;
  box-shadow: 0 20px 44px rgba(20, 57, 76, 0.18);
  cursor: zoom-in;
}

@media (min-width: 721px) {
  .i2imax-preview-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .i2imax-upload-actions {
    flex-direction: column;
  }

  .i2imax-mini-btn {
    width: 100%;
  }

  .i2imax-preview-wrap {
    min-height: 220px;
    padding: 14px;
  }

  .i2imax-preview-image {
    max-height: 300px;
  }
}
