#sim-footer-container {
  position: fixed;
  left: 1rem;
  bottom: 1rem;
  z-index: 50;
  display: flex;
  align-items: center;
  width: fit-content;
  max-width: calc(100vw - 2rem);
  padding: 0.25rem;
  border: 1px solid #e5e7eb;
  border-radius: 9999px;
  background: rgba(255, 255, 255, 0.85);
  color: #374151;
  font: 500 0.875rem/1.4 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  box-shadow: 0 10px 25px -12px rgba(15, 23, 42, 0.6);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  transition: background-color 0.2s ease, box-shadow 0.2s ease;
}

#sim-footer-container:hover {
  background: rgba(255, 255, 255, 0.95);
  box-shadow: 0 14px 30px -16px rgba(15, 23, 42, 0.7);
}

#sim-footer-toggle,
#sim-footer-actions > .sim-footer-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 2.5rem;
  height: 2.5rem;
  padding: 0;
  border: 0;
  border-radius: 9999px;
  background: transparent;
  transition: background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
}

#sim-footer-toggle {
  color: #6b7280;
}

#sim-footer-toggle:hover {
  background: #e5e7eb;
}

#sim-footer-toggle:focus-visible,
#sim-footer-actions > .sim-footer-action:focus-visible {
  outline: none;
  box-shadow: 0 0 0 2px #ffffff, 0 0 0 4px #2563eb;
}

#sim-footer-toggle svg,
#sim-footer-actions > .sim-footer-action svg {
  width: 1rem;
  height: 1rem;
}

#sim-footer-breadcrumbs {
  display: flex;
  align-items: center;
  min-width: 0;
  max-width: min(48rem, calc(100vw - 10rem));
  overflow: hidden;
  white-space: nowrap;
  opacity: 1;
  padding-right: 0.5rem;
  transition: max-width 0.3s ease, opacity 0.2s ease, padding-right 0.3s ease;
}

#sim-footer-breadcrumbs.sim-footer-breadcrumbs--collapsed {
  max-width: 0;
  opacity: 0;
  padding-right: 0;
}

#sim-footer-breadcrumbs a,
#sim-footer-breadcrumbs span {
  flex-shrink: 0;
}

.sim-footer-link {
  color: #2563eb;
  text-decoration: none;
  transition: color 0.2s ease;
}

.sim-footer-link:hover {
  color: #1d4ed8;
}

.sim-footer-link--home {
  display: inline-flex;
  align-items: center;
  font-weight: 600;
}

.sim-footer-home-icon {
  width: 1rem;
  height: 1rem;
  margin-right: 0.25rem;
}

.sim-footer-separator {
  margin: 0 0.5rem;
  color: #9ca3af;
}

.sim-footer-current {
  color: #6b7280;
  font-weight: 600;
}

#sim-footer-actions {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  gap: 0.125rem;
  margin-left: 0.25rem;
  padding-left: 0.25rem;
  border-left: 1px solid #e5e7eb;
  transition: margin-left 0.3s ease, padding-left 0.3s ease, border-color 0.2s ease;
}

#sim-footer-container.sim-footer-container--collapsed #sim-footer-actions {
  margin-left: 0;
  padding-left: 0;
  border-left-color: transparent;
}

#sim-footer-actions > .sim-footer-action {
  color: inherit;
}

#sim-share-btn {
  color: #2563eb;
}

#sim-share-btn:hover {
  background: #dbeafe;
}

#sim-reset-btn {
  color: #d97706;
}

#sim-reset-btn:hover {
  background: #fef3c7;
}

#sim-task-btn {
  color: #059669;
  text-decoration: none;
}

#sim-task-btn:hover {
  background: #dcfce7;
}

@media (max-width: 640px) {
  #sim-footer-container {
    left: 0.75rem;
    bottom: 0.75rem;
    max-width: calc(100vw - 1.5rem);
  }

  #sim-footer-breadcrumbs {
    max-width: calc(100vw - 8.5rem);
  }
}
