/* Footer Component Styles */

/* ============================================
   Default Footer (Site-wide)
   ============================================ */

/* Override MudAppBar's fixed positioning and force centering */
::deep .dhcs-footer-default.mud-appbar,
::deep .mud-appbar.dhcs-footer-default {
  position: relative !important;
  bottom: auto !important;
  left: auto !important;
  right: auto !important;
  width: 100% !important;
}

::deep .dhcs-footer-default .mud-toolbar-gutters {
  justify-content: center !important;
  display: flex !important;
  flex-wrap: wrap !important;
}

/* Screen reader only text */
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}

/* ============================================
   Sticky Footer (In-container)
   ============================================ */

.dhcs-footer-sticky {
  border-top: 1px solid var(--mud-palette-divider);
  background-color: var(--mud-palette-surface);
}

.dhcs-footer-last-saved {
  font-size: 0.875rem;
  color: var(--mud-palette-text-secondary);
}

.dhcs-footer-button {
  min-width: 80px;
  transition: all 0.2s ease-in-out;
}

.dhcs-footer-button:hover:not(:disabled) {
  transform: translateY(-1px);
}

.dhcs-footer-button:focus {
  outline: 2px solid var(--mud-palette-primary);
  outline-offset: 2px;
}

.dhcs-footer-button:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

/* ============================================
   Responsive Design
   ============================================ */

@media (max-width: 768px) {
  .dhcs-footer-default {
    flex-wrap: wrap;
    justify-content: center;
  }

  .dhcs-footer-link {
    margin: 0.5rem;
  }

  .dhcs-footer-sticky {
    flex-wrap: wrap;
    gap: 0.5rem;
  }

  .dhcs-footer-last-saved {
    width: 100%;
    text-align: center;
    margin-bottom: 0.5rem;
  }
}

/* ============================================
   High Contrast Mode Support
   ============================================ */

@media (prefers-contrast: high) {
  .dhcs-footer-link {
    border: 1px solid currentColor;
    padding: 0.5rem;
  }

  .dhcs-footer-button {
    border: 2px solid currentColor;
  }
}

/* ============================================
   Reduced Motion Support
   ============================================ */

@media (prefers-reduced-motion: reduce) {
  .dhcs-footer-link,
  .dhcs-footer-button {
    transition: none;
  }

  .dhcs-footer-button:hover:not(:disabled) {
    transform: none;
  }
}

/* ============================================
   Print Styles
   ============================================ */

@media print {
  .dhcs-footer-default,
  .dhcs-footer-sticky {
    display: none;
  }
}
