.growfund-page-container .growfund-textarea {
  width: 100%;
  padding: var(--growfund-spacing-3);
  border: 1px solid var(--growfund-gray-8);
  border-radius: var(--growfund-radius-3);
  font-size: var(--growfund-font-size-3);
  line-height: 21px;
  background-color: var(--growfund-gray-1);
  color: var(--growfund-gray-16);
  transition: all 0.2s ease;
  resize: vertical;
  min-height: 100px;
  font-family: inherit;
}

.growfund-page-container .growfund-textarea:focus {
  outline: none;
  border-color: var(--growfund-blue-3);
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

.growfund-page-container .growfund-textarea::placeholder {
  color: var(--growfund-gray-12);
  font-size: var(--growfund-font-size-3);
  line-height: 21px;
}

.growfund-page-container .growfund-textarea:disabled {
  opacity: 0.5;
  cursor: not-allowed;
  background-color: var(--growfund-gray-4);
}

/* Textarea States */
.growfund-page-container .growfund-textarea.growfund-textarea--error {
  border-color: var(--growfund-red-6);
}

.growfund-page-container .growfund-textarea.growfund-textarea--error:focus {
  border-color: var(--growfund-red-6);
  box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.1);
}

.growfund-page-container .growfund-textarea.growfund-textarea--success {
  border-color: var(--growfund-green-6);
}

.growfund-page-container .growfund-textarea.growfund-textarea--success:focus {
  border-color: var(--growfund-green-6);
  box-shadow: 0 0 0 3px rgba(34, 197, 94, 0.1);
}

/* Size Variants */
.growfund-page-container .growfund-textarea--sm {
  padding: var(--growfund-spacing-1) var(--growfund-spacing-3);
  font-size: var(--growfund-font-size-xs);
  min-height: 80px;
}

.growfund-page-container .growfund-textarea--lg {
  padding: var(--growfund-spacing-3) var(--growfund-spacing-5);
  font-size: var(--growfund-font-size-base);
  min-height: 120px;
}

/* Height Variants */
.growfund-page-container .growfund-textarea--xs {
  min-height: 60px;
}

.growfund-page-container .growfund-textarea--xl {
  min-height: 150px;
}

/* Disable resize */
.growfund-page-container .growfund-textarea--no-resize {
  resize: none;
}

/* Responsive Design */
@media (max-width: 1023px) {
  .growfund-page-container .growfund-textarea {
    font-size: var(--growfund-font-size-4);
    padding: var(--growfund-spacing-4);
  }

  .growfund-page-container .growfund-textarea--sm {
    padding: var(--growfund-spacing-2) var(--growfund-spacing-4);
    font-size: var(--growfund-font-size-3);
  }

  .growfund-page-container .growfund-textarea--lg {
    padding: var(--growfund-spacing-4) var(--growfund-spacing-6);
    font-size: var(--growfund-font-size-5);
  }
}