/* Add here all your CSS customizations */
/* flatpickr-theme-ecoresupply.css */
.flatpickr-calendar {
  font-family: Arial, sans-serif;
  background-color: #f1f1f1;
  border-radius: 10px;
}

.flatpickr-day {
  color: #333;
}

.flatpickr-day.selected {
  background-color: #21b995; /* Cor verde EcoResupply */
  color: white;
}

.flatpickr-day:hover {
  background-color: #ddd;
}

.flatpickr-current-month {
  color: #21b995; /* Cor do mês atual */
}

.flatpickr-next-month,
.flatpickr-prev-month {
  color: #21b995;
}

.select2-container--default .select2-selection--single {
  background-color: #fff; /* <-- Agora fundo branco */
  border: 1px solid #e0e6ed;
  border-radius: 0.5rem;
  height: 2.8125rem; /* igual aos inputs */
  padding: 0.45rem 1rem;
  font-size: 0.9375rem;
  font-family: "Open Sans", sans-serif;
  color: #6c757d;
  display: flex;
  align-items: center;
}

.select2-container--default
  .select2-selection--single
  .select2-selection__rendered {
  color: #6c757d;
  line-height: 1.4rem;
  font-weight: 400;
  font-size: 0.9375rem;
}

.select2-container--default
  .select2-selection--single
  .select2-selection__arrow {
  height: 2.8125rem;
  top: 0.35rem;
  right: 0.75rem;
}

.select2-container--default .select2-dropdown {
  border: 1px solid #dee2e6;
  border-radius: 0.5rem;
  font-family: "Open Sans", sans-serif;
}

.select2-results__option {
  font-size: 0.9375rem;
  padding: 0.45rem 1rem;
}

.select2-results__option--highlighted.select2-results__option--selectable {
  background-color: #21b995 !important; /* Verde EcoResupply */
  color: #fff !important;
}

.select2-results__option--selected {
  background-color: #e5faf3 !important; /* Verde muito claro */
  color: #21b995 !important;
}

.select2-search--dropdown .select2-search__field {
  border-radius: 0.5rem;
  padding: 0.5rem;
  border: 1px solid #dee2e6;
  font-family: "Open Sans", sans-serif;
}

.btn-eco {
  background: #21b995;
  color: #fff;
  border-radius: 6px;
  font-weight: 600;
}
.bg-eco-light {
  background: #fcfcfc !important;
}
.text-eco {
  color: #21b995 !important;
}

.eco-section-title {
  color: #21b995;
  font-weight: 700;
}
.eco-label {
  color: #2a3c22;
  font-weight: 500;
}
.eco-btn {
  background: #21b995;
  color: #fff !important;
  border: none;
  border-radius: 6px;
  padding: 10px 36px;
  font-weight: 600;
  letter-spacing: 0.5px;
  transition: background 0.2s;
}
.eco-btn:hover {
  background: #189578;
  color: #fff !important;
}
.accordion-button {
  background: #fff !important;
  color: #252a2c;
  font-weight: 600;
}
.accordion-item {
  border: none;
  margin-bottom: 10px;
  border-radius: 8px;
  box-shadow: 0 2px 8px #0001;
}
.accordion-body {
  background: #f7f7f7 !important;
  border-radius: 0 0 8px 8px;
}
.form-control:focus {
  border-color: #21b995;
  box-shadow: 0 0 0 0.2rem #21b99522;
}
.list-unstyled .fa-comment {
  color: #21b995;
}

.input-custom,
.form-control,
.form-select {
  border: 1.5px solid #21b99533 !important;
  border-radius: 8px !important;
  box-shadow: none !important;
  transition: border-color 0.15s;
}
.input-custom:focus,
.form-control:focus,
.form-select:focus {
  border-color: #21b995 !important;
  box-shadow: 0 0 0 1.5px #21b99544;
}

.custom-hover-card {
  transition: box-shadow 0.3s, transform 0.3s;
}
.custom-hover-card:hover {
  box-shadow: 0 0 32px 0 #21b99533, 0 6px 24px rgba(0, 0, 0, 0.08);
  transform: translateY(-6px) scale(1.02);
  border-color: #21b995 !important;
}
.object-fit-cover {
  object-fit: cover;
}
.ratio-16x9 {
  aspect-ratio: 16 / 9;
}

.product-card .card-body {
  min-height: 220px; /* Ajusta conforme necessário */
  display: flex;
  flex-direction: column;
}

.product-card .card-text {
  flex-grow: 1;
}

.badge-moderation {
  background: #ffc107 !important;
  color: #222 !important;
  font-size: 0.97rem;
  font-weight: 600;
  border-radius: 12px;
  padding: 0.25em 1em;
  box-shadow: 0 1px 4px #8882;
  white-space: nowrap;
  opacity: 0.97;
}
.badge-approve {
  background: #21b995 !important;
  color: #fff !important;
  font-size: 0.97rem;
  font-weight: 600;
  border-radius: 12px;
  padding: 0.25em 1em;
  box-shadow: 0 1px 4px #8882;
  white-space: nowrap;
  opacity: 0.97;
}
.badge-rejected {
  background: #dc3545 !important;
  color: #fff !important;
  font-size: 0.97rem;
  font-weight: 600;
  border-radius: 12px;
  padding: 0.25em 1em;
  box-shadow: 0 1px 4px #8882;
  white-space: nowrap;
  opacity: 0.97;
}

.campo-obrigatorio input,
.campo-obrigatorio select,
.campo-obrigatorio textarea {
  border: 2px solid #21b995 !important;
  box-shadow: 0 0 8px #21b99540;
  background: #e8f9f5 !important;
  transition: border-color 0.2s, box-shadow 0.2s;
}

.campo-obrigatorio input:focus,
.campo-obrigatorio select:focus,
.campo-obrigatorio textarea:focus {
  border: 2px solid #189578 !important;
  box-shadow: 0 0 10px #18957844;
  background: #e0f7f3 !important;
}

.eco-spin {
  animation: eco-spin-anim 1.2s linear infinite;
  filter: drop-shadow(0 0 12px #21b99599);
}

.btn .fa, .btn .fas, .btn .far, .btn .fab {
    vertical-align: middle;
}
.btn .ms-1 {
    margin-left: 0.35rem !important;
}


@keyframes eco-spin-anim {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@media (prefers-color-scheme: dark) {
  #global-spinner {
    background: rgba(20, 32, 20, 0.96) !important;
  }
}

/* ------------------------- */
/* BOOTSTRAP BUTTON OVERRIDES ECORESUPPLY */
/* ------------------------- */

.btn-primary,
.btn-success,
.bg-success,
.bg-primary {
  background-color: #21b995 !important;
  border-color: #21b995 !important;
  color: #fff !important;
}

.btn-primary:hover,
.btn-success:hover,
.bg-success:hover,
.bg-primary:hover,
.btn-primary:focus,
.btn-success:focus,
.bg-success:focus,
.bg-primary:focus {
  background-color: #189578 !important;
  border-color: #189578 !important;
  color: #fff !important;
}

.btn-primary:active,
.btn-success:active,
.bg-success:active,
.bg-primary:active {
  background-color: #158c70 !important;
  border-color: #158c70 !important;
  color: #fff !important;
}

.btn-outline-primary,
.btn-outline-success {
  color: #21b995 !important;
  border-color: #21b995 !important;
  background: transparent !important;
}

.btn-outline-primary:hover,
.btn-outline-success:hover,
.btn-outline-primary:focus,
.btn-outline-success:focus {
  background: #21b995 !important;
  color: #fff !important;
  border-color: #21b995 !important;
}

.btn-outline-primary:active,
.btn-outline-success:active {
  background: #158c70 !important;
  color: #fff !important;
  border-color: #158c70 !important;
}

.btn-secondary,
.bg-secondary {
  background-color: #0f2e50 !important;
  border-color: #0f2e50 !important;
  color: #fff !important;
}

.btn-secondary:hover,
.bg-secondary:hover,
.btn-secondary:focus,
.bg-secondary:focus {
  background-color: #163b68 !important;
  border-color: #163b68 !important;
  color: #fff !important;
}

.btn-secondary:active,
.bg-secondary:active {
  background-color: #0d2238 !important;
  border-color: #0d2238 !important;
  color: #fff !important;
}

.btn-outline-secondary {
  color: #0f2e50 !important;
  border-color: #0f2e50 !important;
  background: transparent !important;
}

.btn-outline-secondary:hover,
.btn-outline-secondary:focus {
  background: #0f2e50 !important;
  color: #fff !important;
  border-color: #0f2e50 !important;
}

.btn-outline-secondary:active {
  background: #0d2238 !important;
  color: #fff !important;
  border-color: #0d2238 !important;
}

/* Texto */
.text-primary,
.text-success {
  color: #21b995 !important;
}
.text-secondary {
  color: #0f2e50 !important;
}

/* Badges */
.badge-primary,
.badge-success {
  background: #21b995 !important;
  color: #fff !important;
}
.badge-secondary {
  background: #0f2e50 !important;
  color: #fff !important;
}

/* Alerts */
.alert-success,
.alert-primary {
  background: #e5faf3 !important;
  color: #189578 !important;
  border-color: #21b995 !important;
}
.alert-secondary {
  background: #e7eef6 !important;
  color: #0f2e50 !important;
  border-color: #0f2e50 !important;
}

/* Focus shadow */
.btn:focus,
.btn-primary:focus,
.btn-success:focus,
.btn-secondary:focus {
  box-shadow: 0 0 0 0.18rem #21b99544 !important;
}

/* Disabled */
.btn-primary:disabled,
.btn-success:disabled,
.btn-secondary:disabled {
  background: #8be2c7 !important;
  border-color: #8be2c7 !important;
  color: #e9ecef !important;
}

.btn-outline-primary:disabled,
.btn-outline-success:disabled,
.btn-outline-secondary:disabled {
  color: #b9bfc9 !important;
  border-color: #b9bfc9 !important;
  background: #f5f6fa !important;
}

/* ------------------------- */
/* FIM BOOTSTRAP OVERRIDES   */
/* ------------------------- */

@media (max-width: 400px) {
  .notyf__toast {
    min-width: 90vw !important;
    font-size: 1rem;
    padding: 1rem !important;
  }
}

@media (max-width: 991.98px) {
  #mainNav .dropdown-menu.show {
    display: block !important;
  }
}

@media (max-width: 991.98px) {
  .dropdown-mega-content {
    padding: 1rem !important;
    overflow-y: auto;
    max-height: 400px;
  }
  .dropdown-menu.show {
    display: block !important;
  }
}
