/* EU Withdrawal Button - Form Styles */

#euwb-withdrawal-form-wrapper {
  max-width: 800px !important;
  margin: 0 auto !important;
  padding: 2rem 1rem !important;
  box-sizing: border-box !important;
}

.euwb-info-box {
  background: #f9f9f9 !important;
  border: 2px solid #e5e5e5 !important;
  border-radius: 12px !important;
  padding: 1.5rem !important;
  margin-bottom: 2rem !important;
  box-sizing: border-box !important;
}

.euwb-info-box h3 {
  font-size: 1.25rem !important;
  font-weight: 600 !important;
  margin: 0 0 1rem !important;
  color: #111 !important;
}

.euwb-info-box ul {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.euwb-info-box li {
  padding: 0.5rem 0 0.5rem 1.5rem !important;
  position: relative !important;
  line-height: 1.6 !important;
  color: #333 !important;
}

.euwb-info-box li:before {
  content: "✓" !important;
  position: absolute !important;
  left: 0 !important;
  color: #16a34a !important;
  font-weight: bold !important;
  font-size: 1.1rem !important;
}

.euwb-form-container {
  background: #fff !important;
  border: 2px solid #e5e5e5 !important;
  border-radius: 12px !important;
  padding: clamp(2rem, 5vw, 3rem) !important;
  box-sizing: border-box !important;
}

.euwb-form-title {
  font-size: clamp(1.5rem, 3vw, 2rem);
  font-weight: 600;
  margin: 0 0 0.5rem;
  color: #111;
  text-align: center;
}

.euwb-form-subtitle {
  font-size: 1rem;
  line-height: 1.6;
  color: #666;
  text-align: center;
  margin: 0 0 2rem;
}

.euwb-form-group {
  margin-bottom: 1.5rem !important;
}

.euwb-form-group label {
  display: block !important;
  font-weight: 600 !important;
  margin-bottom: 0.5rem !important;
  color: #333 !important;
  font-size: 0.95rem !important;
}

.euwb-form-group .required {
  color: #dc2626 !important;
}

.euwb-form-group .optional {
  color: #999 !important;
  font-weight: 400 !important;
  font-size: 0.9rem !important;
}

.euwb-field-description {
  font-size: 0.875rem;
  color: #666;
  margin: 0.25rem 0 0;
}

#euwb-withdrawal-form input[type="text"],
#euwb-withdrawal-form input[type="email"],
#euwb-withdrawal-form input[type="tel"],
#euwb-withdrawal-form select,
#euwb-withdrawal-form textarea {
  width: 100% !important;
  padding: 14px 18px !important;
  border: 2px solid #e5e5e5 !important;
  border-radius: 8px !important;
  font-size: 1rem !important;
  font-family: inherit !important;
  transition: border-color 0.3s ease, box-shadow 0.3s ease !important;
  background: #fff !important;
  box-sizing: border-box !important;
  max-width: 100% !important;
}

#euwb-withdrawal-form input:focus,
#euwb-withdrawal-form select:focus,
#euwb-withdrawal-form textarea:focus {
  outline: none !important;
  border-color: #000 !important;
  box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.05) !important;
}

#euwb-withdrawal-form textarea {
  resize: vertical !important;
  min-height: 100px !important;
}

.euwb-submit-btn {
  background: #000 !important;
  color: #fff !important;
  border: none !important;
  padding: 16px 40px !important;
  border-radius: 8px !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  transition: opacity 0.3s ease, transform 0.2s ease !important;
  width: 100% !important;
  font-family: inherit !important;
  box-sizing: border-box !important;
}

.euwb-submit-btn:hover {
  opacity: 0.9;
  transform: translateY(-1px);
}

.euwb-submit-btn:active {
  transform: translateY(0);
}

.euwb-submit-btn:disabled {
  opacity: 0.6;
  cursor: not-allowed;
  transform: none;
}

.euwb-form-response {
  margin: 1.5rem 0;
  padding: 1rem;
  border-radius: 8px;
  text-align: center;
  display: none;
  line-height: 1.6;
}

.euwb-form-response.success {
  background: #d1fae5;
  color: #065f46;
  border: 2px solid #6ee7b7;
  display: block;
  font-size: 1.05rem;
}

.euwb-form-response.success strong {
  color: #047857;
}

.euwb-form-response.error {
  background: #fee2e2;
  color: #991b1b;
  border: 2px solid #fca5a5;
  display: block;
}

/* Cloudflare Turnstile */
.cf-turnstile {
  margin: 1rem 0;
}

/* Responsive */
@media (max-width: 768px) {
  #euwb-withdrawal-form-wrapper {
    padding: 1rem 0.5rem;
  }
  
  .euwb-form-container {
    padding: 1.5rem;
  }
}
