/* Base Wrapper Styles */
#salesfire-subscribe-wrapper {
  padding: 24px;
  border-radius: 6px;
  font-family: inherit;
}

/* Dark Background (Default) */
#salesfire-subscribe-wrapper.salesfire-dark {
  background-color: #292929;
  color: #ffffff;
}

/* Light Background */
#salesfire-subscribe-wrapper.salesfire-light {
  background-color: #ffffff;
  color: #333333;
  border: 1px solid #e0e0e0;
}

/* Footer specific styles - unchanged */
.footer-widgets #salesfire-subscribe-wrapper {
  padding: 0 !important;
  border: none;
  background: transparent;
}

/* Form Groups */
.sf-form-group {
  margin-bottom: 16px;
}

.sf-form-group label {
  display: block;
  margin-bottom: 6px;
  font-size: 16px;
  font-weight: 500;
}

/* Dark theme labels */
.salesfire-dark .sf-form-group label {
  color: #ffffff;
}

/* Light theme labels */
.salesfire-light .sf-form-group label {
  color: #333333;
}

/* Input Fields - Dark Theme */
.salesfire-dark #salesfire-subscribe-form .sf-form-group input[type="text"],
.salesfire-dark #salesfire-subscribe-form .sf-form-group input[type="email"],
.salesfire-dark #salesfire-subscribe-form .sf-form-group input[type="tel"] {
  width: 100% !important;
  padding: 6px 10px !important;
  font-size: 14px !important;
  border: 1px solid #555 !important;
  border-radius: 4px !important;
  background-color: #1f1f1f !important;
  color: #ffffff !important;
  font-weight: normal !important;
  box-sizing: border-box;
}

.salesfire-dark #salesfire-subscribe-form .sf-form-group input::placeholder {
  color: #cccccc !important;
}

/* Input Fields - Light Theme */
.salesfire-light #salesfire-subscribe-form .sf-form-group input[type="text"],
.salesfire-light #salesfire-subscribe-form .sf-form-group input[type="email"],
.salesfire-light #salesfire-subscribe-form .sf-form-group input[type="tel"] {
  width: 100% !important;
  padding: 6px 10px !important;
  font-size: 14px !important;
  border: 1px solid #ddd !important;
  border-radius: 4px !important;
  background-color: #ffffff !important;
  color: #333333 !important;
  font-weight: normal !important;
  box-sizing: border-box;
}

.salesfire-light #salesfire-subscribe-form .sf-form-group input::placeholder {
  color: #888888 !important;
}

/* Error States - Dark Theme */
.salesfire-dark .sf-form-group.has-error input {
  border-color: #e74c3c !important;
  background-color: #3a1f1f !important;
}

/* Error States - Light Theme */
.salesfire-light .sf-form-group.has-error input {
  border-color: #e74c3c !important;
  background-color: #fdf2f2 !important;
}

/* Help Block / Errors */
.sf-help-block {
  color: #ff6b6b;
  font-size: 13px;
  margin-top: 4px;
  display: none;
}

/* Channels Section */
#salesfire-channels {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
  font-size: 14px;
}

/* Dark theme channels */
.salesfire-dark #salesfire-channels label {
  font-weight: normal;
  color: #ffffff;
}

/* Light theme channels */
.salesfire-light #salesfire-channels label {
  font-weight: normal;
  color: #333333;
}

#channels-error {
  color: #ff6b6b;
  font-size: 13px;
  margin-top: 4px;
  display: none;
}

/* Submit Button */
#salesfire-submit-btn {
  background-color: #007cba;
  color: #ffffff;
  padding: 8px 16px;
  font-size: 14px;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  transition: background-color 0.2s ease;
}

#salesfire-submit-btn:hover {
  background-color: #006ba1;
}

#salesfire-submit-btn:disabled {
  background-color: #444;
  cursor: not-allowed;
}

/* Loader - Dark Theme */
.salesfire-dark #salesfire-loading {
  display: none;
  margin-top: 16px;
  color: #ffffff;
}

/* Loader - Light Theme */
.salesfire-light #salesfire-loading {
  display: none;
  margin-top: 16px;
  color: #333333;
}

/* Response Messages */
#salesfire-response {
  margin-top: 16px;
  padding: 14px;
  border-radius: 4px;
  font-size: 14px;
  display: none;
}

/* Dark theme response messages */
.salesfire-dark #salesfire-response.alert-success {
  background-color: #155724;
  color: #d4edda;
  border: 1px solid #1d7a40;
}

.salesfire-dark #salesfire-response.alert-danger {
  background-color: #721c24;
  color: #f8d7da;
  border: 1px solid #a94442;
}

/* Light theme response messages */
.salesfire-light #salesfire-response.alert-success {
  background-color: #d4edda;
  color: #155724;
  border: 1px solid #c3e6cb;
}

.salesfire-light #salesfire-response.alert-danger {
  background-color: #f8d7da;
  color: #721c24;
  border: 1px solid #f5c6cb;
}

.sf-form-row {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

@media (min-width: 768px) {
  .sf-form-row {
    flex-direction: row;
  }

  .sf-form-row .sf-form-group {
    flex: 1;
  }

  .sf-form-row .sf-form-group:not(:last-child) {
    margin-right: 16px;
  }
}