/* Compact Mode aktivierst du global durch: <body class="compact"> */

.shadow-1 { box-shadow: var(--elevation-1) !important; }
.shadow-2 { box-shadow: var(--elevation-2) !important; }
.shadow-3 { box-shadow: var(--elevation-3) !important; }

.rounded-lg { border-radius: var(--radius-lg) !important; }

.text-muted-strong { color: var(--text-muted) !important; }

.fs-xl { font-size: var(--font-size-xl) !important; }
.fs-2xl { font-size: var(--font-size-2xl) !important; }
.fs-3xl { font-size: var(--font-size-3xl) !important; }

.p-section { padding: var(--space-8) 0 !important; }

.bg-primary {
  background-color: var(--bs-primary) !important;
  color: var(--color-primary-contrast) !important;
}

.bg-secondary {
  background-color: var(--bs-secondary) !important;
  color: var(--color-secondary-contrast) !important;
}

.bg-success {
  background-color:var(--bs-success-bg-subtle) !important;
}

.bg-danger {
  background-color: var(--bs-danger-bg-subtle) !important;
}

.bg-warning {
  background-color: var(--bs-warning-bg-subtle) !important;
}

.bg-info {
  background-color: var(--bs-info-bg-subtle) !important;
}

.bg-light {
  background-color: var(--bs-light-bg-subtle) !important;
  color: var(--color-light-contrast) !important;
}

.bg-dark {
  background-color: var(--bs-dark-bg-subtle) !important;
  color: var(--color-dark-contrast) !important;
}

.bg-black {
  background-color: color-mix(in srgb, var(--tone-black) calc(var(--bs-bg-opacity, 1) * 100%), transparent) !important;
}

.bg-white {
  background-color: color-mix(in srgb, var(--tone-white) calc(var(--bs-bg-opacity, 1) * 100%), transparent) !important;
}

.bg-body {
  background-color: color-mix(in srgb, var(--bs-body-bg) calc(var(--bs-bg-opacity, 1) * 100%), transparent) !important;
}

.bg-body-secondary {
  background-color: color-mix(in srgb, var(--bs-secondary-bg) calc(var(--bs-bg-opacity, 1) * 100%), transparent) !important;
}

.bg-body-tertiary {
  background-color: color-mix(in srgb, var(--bs-tertiary-bg) calc(var(--bs-bg-opacity, 1) * 100%), transparent) !important;
}

.bg-transparent {
  background-color: transparent !important;
}

.bg-surface {
  background-color: var(--surface-1) !important;
}

.bg-surface-1 {
  background-color: var(--surface-1) !important;
}

.bg-surface-2 {
  background-color: var(--surface-2) !important;
}

.compact .btn { padding: 0.35rem 0.75rem !important; }
.compact .form-control { padding: 0.35rem 0.6rem !important; }
.compact .table td,
.compact .table th { padding: 0.4rem !important; }
.compact .card { padding: var(--space-3) !important; }

@media (prefers-reduced-motion: reduce) {
  * {
    transition: none !important;
  }
}

@media print {
  body {
    background: white !important;
    color: black !important;
  }

  .btn,
  .navbar,
  .offcanvas {
    display: none !important;
  }
}
