/* Reset e Base */
.clarke-calculator-wrapper * {
  box-sizing: border-box !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Removido background e padding do wrapper principal */
.clarke-calculator-wrapper {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
  line-height: 1.5 !important;
  color: #1a3a2e !important;
}

.clarke-form-container,
.clarke-results-container {
  max-width: 1200px !important;
  margin: 0 auto !important;
}

/* Cards */
.clarke-card {
  background: white !important;
  border: 1px solid rgba(0, 86, 63, 0.1) !important;
  border-radius: 0.75rem !important;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1) !important;
  overflow: hidden !important;
}

.clarke-form-card {
  max-width: 42rem !important;
  margin: 0 auto !important;
}

.clarke-card-header {
  padding: 1.5rem !important;
  border-bottom: 1px solid rgba(0, 86, 63, 0.1) !important;
}

.clarke-card-title {
  font-size: 1.5rem !important;
  font-weight: 700 !important;
  color: #00563f !important;
  display: flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
  margin-bottom: 0.5rem !important;
}

.clarke-card-description {
  font-size: 0.875rem !important;
  color: #666 !important;
  margin-top: 0.5rem !important;
}

.clarke-card-content {
  padding: 1.5rem !important;
}

/* Form Elements */
.clarke-form-group {
  margin-bottom: 1.5rem !important;
}

.clarke-form-row {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 1rem !important;
  margin-bottom: 1.5rem !important;
}

@media (min-width: 768px) {
  .clarke-form-row {
    grid-template-columns: 1fr 1fr !important;
  }
}

.clarke-label {
  display: block !important;
  font-size: 0.875rem !important;
  font-weight: 600 !important;
  color: #1a3a2e !important;
  margin-bottom: 0.5rem !important;
}

.clarke-input,
.clarke-select {
  width: 100% !important;
  padding: 0.75rem !important;
  font-size: 1rem !important;
  border: 1px solid #e5e5e5 !important;
  border-radius: 0.5rem !important;
  background: white !important;
  color: #1a3a2e !important;
  transition: all 0.2s !important;
}

.clarke-input:focus,
.clarke-select:focus {
  outline: none !important;
  border-color: #00d97e !important;
  box-shadow: 0 0 0 3px rgba(0, 217, 126, 0.1) !important;
}

.clarke-help-text {
  font-size: 0.75rem !important;
  color: #999 !important;
  margin-top: 0.5rem !important;
}

/* Buttons */
.clarke-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0.5rem !important;
  padding: 0.875rem 1.5rem !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
  border: none !important;
  border-radius: 0.5rem !important;
  cursor: pointer !important;
  transition: all 0.2s !important;
  text-decoration: none !important;
}

.clarke-btn-primary {
  width: 100% !important;
  background: #00d97e !important;
  color: #1a3a2e !important;
  box-shadow: 0 4px 12px rgba(0, 217, 126, 0.3) !important;
}

.clarke-btn-primary:hover {
  background: #00c070 !important;
  box-shadow: 0 6px 16px rgba(0, 217, 126, 0.4) !important;
  transform: translateY(-1px) !important;
}

.clarke-btn-primary:disabled {
  opacity: 0.5 !important;
  cursor: not-allowed !important;
  transform: none !important;
}

.clarke-btn-outline {
  background: transparent !important;
  color: #00563f !important;
  border: 2px solid #00563f !important;
}

.clarke-btn-outline:hover {
  background: rgba(0, 86, 63, 0.1) !important;
}

/* Icons */
.clarke-icon {
  width: 1.25rem !important;
  height: 1.25rem !important;
  flex-shrink: 0 !important;
}

/* Results Section */
.clarke-results-container {
  display: flex !important;
  flex-direction: column !important;
  gap: 2rem !important;
}

.clarke-results-container.clarke-hidden {
  display: none !important;
}

.clarke-results-grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 1.25rem !important;
}

@media (min-width: 768px) {
  .clarke-results-grid {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

@media (min-width: 1024px) {
  .clarke-results-grid {
    grid-template-columns: repeat(3, 1fr) !important;
  }
}

/* Result Cards */
.clarke-result-card {
  background: white !important;
  border: 1px solid rgba(0, 86, 63, 0.2) !important;
  border-radius: 0.75rem !important;
  padding: 1.25rem !important;
  transition: all 0.2s !important;
}

.clarke-result-card:hover {
  border-color: rgba(0, 217, 126, 0.4) !important;
  box-shadow: 0 4px 12px rgba(0, 217, 126, 0.1) !important;
  transform: translateY(-1px) !important;
}

.clarke-result-card-destructive {
  background: linear-gradient(135deg, rgba(239, 68, 68, 0.05), rgba(239, 68, 68, 0.1)) !important;
  border: 1px solid rgba(239, 68, 68, 0.2) !important;
}

.clarke-result-card-success {
  background: linear-gradient(135deg, rgba(0, 86, 63, 0.05), rgba(0, 217, 126, 0.1)) !important;
  border: 1px solid rgba(0, 217, 126, 0.3) !important;
}

.clarke-result-label {
  font-size: 0.75rem !important;
  color: #666 !important;
  margin-bottom: 0.25rem !important;
  display: block !important;
}

.clarke-result-value {
  font-size: 1.5rem !important;
  font-weight: 700 !important;
  color: #00563f !important;
  display: block !important;
}

.clarke-result-value-large {
  font-size: 2rem !important;
}

.clarke-result-value-destructive {
  color: #ef4444 !important;
}

.clarke-result-value-success {
  color: #00d97e !important;
}

.clarke-result-value-warning {
  color: #f59e0b !important;
}

.clarke-result-sublabel {
  font-size: 0.75rem !important;
  color: #999 !important;
  margin-top: 0.25rem !important;
  display: block !important;
}

/* Alert */
.clarke-alert {
  background: rgba(0, 217, 126, 0.05) !important;
  border: 1px solid rgba(0, 217, 126, 0.2) !important;
  border-radius: 0.5rem !important;
  padding: 0.75rem 1rem !important;
  font-size: 0.75rem !important;
  color: #666 !important;
  line-height: 1.6 !important;
}

.clarke-alert strong {
  color: #00d97e !important;
  font-weight: 600 !important;
}

/* Divider */
.clarke-divider {
  position: relative !important;
  padding: 2rem 0 !important;
}

.clarke-divider::before {
  content: "" !important;
  position: absolute !important;
  top: 50% !important;
  left: 0 !important;
  right: 0 !important;
  height: 2px !important;
  background: linear-gradient(to right, transparent, rgba(0, 86, 63, 0.3), transparent) !important;
  border-top: 2px dashed rgba(0, 86, 63, 0.3) !important;
}

.clarke-divider-text {
  position: relative !important;
  display: inline-block !important;
  background: white !important;
  padding: 0 1.5rem !important;
  font-size: 0.875rem !important;
  font-weight: 600 !important;
  color: #00563f !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
}

/* Mercado Livre Section */
.clarke-ml-card {
  background: linear-gradient(135deg, rgba(0, 217, 126, 0.05), rgba(0, 217, 126, 0.1)) !important;
  border: 2px solid #00d97e !important;
  border-radius: 0.75rem !important;
  box-shadow: 0 20px 40px rgba(0, 217, 126, 0.2) !important;
}

.clarke-ml-header {
  text-align: center !important;
  padding: 1.5rem !important;
  border-bottom: 1px solid rgba(0, 217, 126, 0.2) !important;
}

.clarke-ml-badge {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
  background: #00d97e !important;
  color: #1a3a2e !important;
  padding: 0.5rem 1.25rem !important;
  border-radius: 9999px !important;
  font-size: 0.875rem !important;
  font-weight: 700 !important;
  box-shadow: 0 4px 12px rgba(0, 217, 126, 0.4) !important;
  margin-bottom: 1rem !important;
}

.clarke-ml-title {
  font-size: 2rem !important;
  font-weight: 700 !important;
  color: #00563f !important;
  margin-bottom: 0.5rem !important;
}

@media (min-width: 768px) {
  .clarke-ml-title {
    font-size: 2.5rem !important;
  }
}

.clarke-ml-subtitle {
  font-size: 1rem !important;
  color: #1a3a2e !important;
}

.clarke-ml-content {
  padding: 1.5rem !important;
}

.clarke-comparison-grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 1rem !important;
  margin-bottom: 1.5rem !important;
}

@media (min-width: 768px) {
  .clarke-comparison-grid {
    grid-template-columns: 1fr 1fr !important;
  }
}

.clarke-comparison-card {
  background: rgba(239, 68, 68, 0.1) !important;
  border: 2px solid rgba(239, 68, 68, 0.3) !important;
  border-radius: 0.5rem !important;
  padding: 1.25rem !important;
}

.clarke-comparison-card-success {
  background: rgba(0, 217, 126, 0.2) !important;
  border: 2px solid #00d97e !important;
  box-shadow: 0 4px 12px rgba(0, 217, 126, 0.2) !important;
}

.clarke-comparison-label {
  font-size: 0.875rem !important;
  color: #666 !important;
  margin-bottom: 0.25rem !important;
  display: block !important;
}

.clarke-comparison-label-success {
  color: #1a3a2e !important;
  font-weight: 700 !important;
}

.clarke-comparison-value {
  font-size: 1.5rem !important;
  font-weight: 700 !important;
  color: #ef4444 !important;
  margin-bottom: 0.5rem !important;
  display: block !important;
}

.clarke-comparison-value-success {
  color: #00d97e !important;
}

.clarke-comparison-note {
  font-size: 0.75rem !important;
  color: #666 !important;
}

.clarke-comparison-note-success {
  color: #1a3a2e !important;
  font-weight: 600 !important;
}

/* Benefits List */
.clarke-benefits-title {
  font-size: 1.125rem !important;
  font-weight: 700 !important;
  color: #00563f !important;
  margin-bottom: 0.75rem !important;
}

.clarke-benefits-list {
  display: flex !important;
  flex-direction: column !important;
  gap: 0.75rem !important;
  margin-bottom: 1.5rem !important;
}

.clarke-benefit-item {
  display: flex !important;
  gap: 0.75rem !important;
  align-items: flex-start !important;
  background: rgba(0, 217, 126, 0.05) !important;
  padding: 0.75rem !important;
  border-radius: 0.5rem !important;
  border: 1px solid rgba(0, 217, 126, 0.2) !important;
}

.clarke-benefit-icon {
  background: #00d97e !important;
  border-radius: 9999px !important;
  padding: 0.375rem !important;
  flex-shrink: 0 !important;
  margin-top: 0.125rem !important;
  box-shadow: 0 2px 6px rgba(0, 217, 126, 0.3) !important;
}

.clarke-benefit-icon svg {
  width: 1rem !important;
  height: 1rem !important;
  stroke: #1a3a2e !important;
}

.clarke-benefit-title {
  font-weight: 600 !important;
  color: #00563f !important;
  margin-bottom: 0.25rem !important;
  display: block !important;
}

.clarke-benefit-text {
  font-size: 0.875rem !important;
  color: #666 !important;
  line-height: 1.5 !important;
}

/* CTA Section */
.clarke-cta-section {
  margin-top: 1.5rem !important;
}

.clarke-btn-cta {
  width: 100% !important;
  background: #00d97e !important;
  color: #1a3a2e !important;
  font-size: 1rem !important;
  font-weight: 700 !important;
  padding: 1rem 1.5rem !important;
  box-shadow: 0 6px 16px rgba(0, 217, 126, 0.4) !important;
}

.clarke-btn-cta:hover {
  background: #00c070 !important;
  box-shadow: 0 8px 20px rgba(0, 217, 126, 0.5) !important;
}

.clarke-cta-note {
  text-align: center !important;
  font-size: 0.875rem !important;
  color: #666 !important;
  margin-top: 0.75rem !important;
}

.clarke-cta-note strong {
  color: #00563f !important;
}

/* Info Card */
.clarke-info-card {
  background: rgba(0, 86, 63, 0.05) !important;
  border: 1px solid rgba(0, 86, 63, 0.2) !important;
  border-radius: 0.75rem !important;
  padding: 1.5rem !important;
}

.clarke-info-text {
  font-size: 0.875rem !important;
  color: #1a3a2e !important;
  text-align: center !important;
  line-height: 1.6 !important;
}

.clarke-info-text strong {
  font-weight: 600 !important;
}

.clarke-info-text .clarke-highlight {
  color: #00d97e !important;
  font-weight: 700 !important;
}

/* Utility Classes */
.clarke-text-center {
  text-align: center !important;
}

.clarke-flex-between {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
}

.clarke-space-y-1 > * + * {
  margin-top: 0.25rem !important;
}

.clarke-space-y-2 > * + * {
  margin-top: 0.5rem !important;
}

/* Responsive */
@media (max-width: 767px) {
  .clarke-calculator-wrapper {
    padding: 1rem 0.5rem !important;
  }

  .clarke-card-content {
    padding: 1rem !important;
  }

  .clarke-ml-title {
    font-size: 1.5rem !important;
  }
}

/* Garantir que o botão de nova simulação só apareça quando os resultados estiverem visíveis */
#clarke-results-container[style*="display: none"] #clarke-nova-simulacao-btn,
#clarke-results-container[style*="display:none"] #clarke-nova-simulacao-btn {
  display: none !important;
}
