/* =========================================================
   IDUWA GLOBAL â€” STRICT EDGE STYLE
   ========================================================= */

:root {
  --iduwa-orange: #f39c12;

  --iduwa-danger: #b81616;
  --iduwa-danger-hover: #6b6b6b;
  --iduwa-dark: #6b6b6b;
  --iduwa-bg-light: #f4f6f9;
  --iduwa-border-color: #dee2e6;
  --iduwa-grey: #7a7a7a;
  --iduwa-white: #fff;
  --iduwa-dark-grey: #2c2e33;
  --iduwa-whatsapp: #2b7a48;
  --iduwa-whatsapp-hover: #3e5e4a;
}

/* =========================================================
   1. BASE
   ========================================================= */

html,
body {
  font-family: "Source Sans 3", sans-serif;
  background-color: var(--iduwa-bg-light);
  color: var(--iduwa-dark);
}

.fw-black {
  font-weight: 900;
}

/* =========================================================
   4. FORMS
   ========================================================= */

.form-control {
  border: 1px solid var(--iduwa-border-color);
  box-shadow: none !important;
}

.form-control:focus {
  border-color: var(--iduwa-orange) !important;
  background-color: #fffefb;
}

.form-select {
  border: 1px solid var(--iduwa-border-color);
  box-shadow: none !important;
}

.form-select:focus {
  border-color: var(--iduwa-orange) !important;
  background-color: #fffefb;
  box-shadow: 0 0 0 0.25rem rgba(243, 156, 18, 0.25) !important;
}

/* Fehlerzustand global im Dashboard */
.form-control.is-invalid,
.was-validated .form-control:invalid {
  border-color: #dc3545 !important;
  box-shadow: none !important;
  background-image: none !important;
}

.form-control.is-invalid:focus,
.was-validated .form-control:invalid:focus {
  border-color: #dc3545 !important;
  box-shadow: none !important;
  background-color: #fffefb;
}

.form-select.is-invalid,
.was-validated .form-select:invalid {
  border-color: #dc3545 !important;
  box-shadow: none !important;
  background-image: none !important;
}

.form-select.is-invalid:focus,
.was-validated .form-select:invalid:focus {
  border-color: #dc3545 !important;
  box-shadow: none !important;
  background-color: #fffefb;
}

.invalid-feedback {
  font-size: 0.8rem;
  font-weight: 600;
}

.form-check-input {
  cursor: pointer;
}

.form-check-input:checked {
  background-color: var(--iduwa-orange) !important;
  border-color: var(--iduwa-orange) !important;
}

.form-check-input:focus {
  border-color: var(--iduwa-orange) !important;
  box-shadow: 0 0 0 0.25rem rgba(243, 156, 18, 0.25) !important;
}

/* =========================================================
   5. CARDS / PANELS
   ========================================================= */

.card {
  border: 1px solid var(--iduwa-border-color) !important;
  box-shadow: none !important;
  background-color: #fff;
  margin-bottom: 1.5rem;
}

.card-header {
  background-color: #f8f9fa !important;
  border-bottom: 1px solid var(--iduwa-border-color) !important;
  color: var(--iduwa-dark) !important;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 0.85rem;
}

/* =========================================================
   6. TILES
   ========================================================= */

.iduwa-tile {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 1.5rem;
  border: 1px solid var(--iduwa-border-color);
  background-color: #fff;
  text-decoration: none;
  height: 100%;
  min-height: 140px;
  transition: all 0.15s ease-in-out;
}

.iduwa-tile i {
  font-size: 2.5rem;
  margin-bottom: 0.5rem;
  color: var(--iduwa-dark);
}

.iduwa-tile .tile-title {
  font-weight: bold;
  color: #000;
  text-transform: uppercase;
  font-size: 0.85rem;
}

.iduwa-tile .tile-desc {
  color: var(--iduwa-dark);
  font-size: 0.75rem;
  display: block;
}

.iduwa-tile:hover {
  border-color: var(--iduwa-orange) !important;
  background-color: #fffaf2;
  transform: translateY(-2px);
}

.iduwa-tile:hover i {
  color: var(--iduwa-orange);
}

/* =========================================================
   7. HOVER HELPERS
   ========================================================= */

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

.hover-bg-light-orange:hover {
  background-color: #fffaf2 !important;
}

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

.hover-icon-orange:hover i {
  color: var(--iduwa-orange) !important;
}

.iduwa-hover-effect:hover {
  border-color: var(--iduwa-orange) !important;
  background-color: #fffaf2 !important;
  transform: translateY(-2px);
  box-shadow: 0 4px 0 rgba(243, 156, 18, 0.1) !important;
}

/* =========================================================
   8. HEADER / NAVBAR SAFETY
   ========================================================= */

.app-header,
.app-header .navbar,
.app-header .container,
.app-header .container-fluid {
  overflow-x: clip;
}

.app-header * {
  max-width: 100%;
}

/* =========================================================
   9. USER MENU
   ========================================================= */

.user-menu .dropdown-menu {
  margin-top: 0.5rem;
}

.user-menu-avatar-lg {
  width: 80px;
  height: 80px;
  font-size: 1.5rem;
  border-radius: 50% !important;
  border: 3px solid var(--iduwa-orange) !important;
}
/* =========================================================
   10. Resp
   ========================================================= */
@media (max-width: 767.98px) {
  .user-menu {
    position: static;
  }

  .user-menu .dropdown-menu {
    position: fixed !important;
    left: 50% !important;
    right: auto !important;
    top: 70px !important;
    transform: translateX(-50%) !important;
    width: min(92vw, 360px);
    margin: 0 !important;
  }
}
/* =========================================================
   11. IDUWA MODAL â€” STRICT EDGE STYLE
   ========================================================= */
