/* =========================================================
   CORE SETUP & TOKENS 
   ========================================================= */

.link-iduwa {
  color: var(--iduwa-orange);
  text-decoration: none;
  font-weight: 600; /* 'bold' oder 600 für bessere Sichtbarkeit */
  display: inline-block; /* Vergrößert die Klickfläche minimal */
  padding: 2px 0; /* Bessere Haptik auf Touch-Displays */
}

.link-iduwa:hover {
  color: var(--iduwa-grey) !important;
  text-decoration: none;
}
.link-hover-white:hover {
  color: var(--brand-idu) !important;
  text-decoration: underline;
}
.btn-iduwa-outline-orange {
  background-color: #fff !important;
  color: var(--iduwa-orange) !important;
  border: 1px solid var(--iduwa-orange) !important;

  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.5px;
  border-radius: 4px !important;
  text-transform: uppercase;
  transition: all 0.2s ease-in-out;
  display: flex;
  align-items: center;
  justify-content: center;
}

.btn-iduwa-outline-orange:hover,
.btn-iduwa-outline-orange:focus,
.btn-iduwa-outline-orange:active {
  background-color: var(--iduwa-grey) !important;
  color: var(--iduwa-white) !important;
  border-color: var(--iduwa-grey) !important;
}

.btn-iduwa-outline-orange:disabled,
.btn-iduwa-outline-orange.disabled {
  background-color: #fff !important;
  color: var(--iduwa-grey) !important;
  border-color: var(--iduwa-grey) !important;
  opacity: 0.65;
}
.btn-iduwa-orange,
.btn-iduwa-outline-orange,
.btn-iduwa-outline-grey,
.btn-iduwa-outline-danger,
.btn-iduwa-outline-whatsapp,
.btn-iduwa-grey,
.btn-iduwa-danger,
.btn-iduwa-whatsapp {
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.5px;
  border-radius: 4px !important;
  text-transform: uppercase;
  transition: all 0.2s ease-in-out;
  display: flex;
  align-items: center;
  justify-content: center;
  border-width: 1px !important;
}

.btn-iduwa-outline-orange,
.btn-iduwa-outline-grey,
.btn-iduwa-outline-danger,
.btn-iduwa-outline-whatsapp {
  box-shadow:
    0 10px 28px rgba(0, 0, 0, 0.15),
    0 4px 10px rgba(0, 0, 0, 0.1) !important;
}

/* Orange Border -> Grey */
.btn-iduwa-orange {
  background-color: var(--iduwa-white) !important;
  border-color: var(--iduwa-orange) !important;
  color: var(--iduwa-orange) !important;
}

.btn-iduwa-orange:hover,
.btn-iduwa-orange:focus,
.btn-iduwa-orange:active {
  background-color: var(--iduwa-grey) !important;
  border-color: var(--iduwa-grey) !important;
  color: var(--iduwa-white) !important;
}

/* Grey -> Orange */
.btn-iduwa-grey {
  background-color: var(--iduwa-white) !important;
  border-color: var(--iduwa-grey) !important;
  color: var(--iduwa-grey) !important;
}

.btn-iduwa-grey:hover,
.btn-iduwa-grey:focus,
.btn-iduwa-grey:active {
  background-color: var(--iduwa-orange) !important;
  border-color: var(--iduwa-orange) !important;
  color: #fff !important;
}

.btn-iduwa-outline-grey {
  background-color: #fff !important;
  color: var(--iduwa-grey) !important;
  border: 3px solid var(--iduwa-grey) !important;
}

.btn-iduwa-outline-grey:hover,
.btn-iduwa-outline-grey:focus,
.btn-iduwa-outline-grey:active {
  color: var(--iduwa-orange) !important;
  border-color: var(--iduwa-orange) !important;
}
.btn-iduwa-danger {
  background-color: var(--iduwa-danger) !important;
  color: #fff !important;
}

.btn-iduwa-danger:hover {
  background-color: var(--iduwa-grey) !important;
  color: var(--iduwa-white) !important;
}

.btn-iduwa-outline-danger {
  background-color: #fff !important;
  color: var(--iduwa-danger) !important;
  border: 3px solid var(--iduwa-danger) !important;
}

.btn-iduwa-outline-danger:hover,
.btn-iduwa-outline-danger:focus,
.btn-iduwa-outline-danger:active {
  color: var(--iduwa-grey) !important;
  border-color: var(--iduwa-grey) !important;
}
.btn-iduwa-whatsapp {
  background-color: var(--iduwa-whatsapp) !important;
  color: #fff !important;
}

.btn-iduwa-whatsapp:hover {
  background-color: var(--iduwa-whatsapp-hover) !important;
  color: #fff !important;
}

.btn-iduwa-outline-whatsapp {
  background-color: #fff !important;
  color: var(--iduwa-whatsapp) !important;
  border: 3px solid var(--iduwa-whatsapp) !important;
}

.btn-iduwa-outline-whatsapp:hover,
.btn-iduwa-outline-whatsapp:focus,
.btn-iduwa-outline-whatsapp:active {
  color: var(--iduwa-whatsapp-hover) !important;
  border-color: var(--iduwa-whatsapp-hover) !important;
}

.btn-iduwa-outline-grey:disabled,
.btn-iduwa-outline-grey.disabled,
.btn-iduwa-outline-danger:disabled,
.btn-iduwa-outline-danger.disabled,
.btn-iduwa-outline-whatsapp:disabled,
.btn-iduwa-outline-whatsapp.disabled {
  background-color: #fff !important;
  color: var(--iduwa-grey) !important;
  border-color: var(--iduwa-grey) !important;
  opacity: 0.65;
}

.btn-iduwa-orange.btn-sm,
.btn-iduwa-outline-orange.btn-sm,
.btn-iduwa-outline-grey.btn-sm,
.btn-iduwa-outline-danger.btn-sm,
.btn-iduwa-outline-whatsapp.btn-sm,
.btn-iduwa-grey.btn-sm,
.btn-iduwa-danger.btn-sm,
.btn-iduwa-whatsapp.btn-sm {
  font-size: 0.875rem;
  padding: 0.25rem 0.5rem;
}

/* =========================================================
   TYPOGRAPHY & TEXT UTILITIES
   ========================================================= */

.iduwa-logo {
  font-weight: 800;
  letter-spacing: 1px;
}

.x-small {
  font-size: 0.65rem;
  font-weight: 700;
  text-transform: uppercase;
}

.text-orange {
  color: var(--iduwa-orange) !important;
}
/* =========================================================
   2. UTILITIES
   ========================================================= */

.text-iduwa-orange {
  color: var(--iduwa-orange) !important;
}

.text-iduwa-dark {
  color: var(--iduwa-dark) !important;
}

.bg-iduwa-orange {
  background-color: var(--iduwa-orange) !important;
  color: #fff !important;
}
.bg-iduwa-dark {
  background-color: var(--iduwa-dark) !important;
}
.bg-iduwa-dark-grey {
  background-color: var(--iduwa-dark-grey) !important;
}
.bg-iduwa-whatsapp {
  background-color: var(--iduwa-whatsapp) !important;
  color: #fff !important;
}
.iduwa-header-border {
  border-bottom: 2px solid var(--iduwa-border-color) !important;
}
.icon-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  text-decoration: none;
  line-height: 1;
  transition:
    background-color 0.15s ease,
    color 0.15s ease,
    transform 0.15s ease;
}

.icon-action i {
  font-size: 1.9rem;
  line-height: 1;
}

.icon-action:hover {
  background: #fff7e8;
  color: #f39c12 !important;
}

.icon-action:active {
  transform: scale(0.94);
}

.icon-action.is-disabled {
  pointer-events: none;
  cursor: default;
}

/* Desktop etwas kompakter */
@media (min-width: 768px) {
  .icon-action {
    width: 42px;
    height: 42px;
  }

  .icon-action i {
    font-size: 1.45rem;
  }
}
