/* ==============================================================
   FILE-MANAGER HEADER – ICON-ONLY (but allow "Zip" text)
   ============================================================== */

/* 1. GLOBAL RESET for every button inside the header */
.fm-header .btn,
.fm-header .btn-group .btn,
.fm-header .dropdown-toggle,
.fm-header .btn-outline-secondary,
.fm-header .btn-outline-primary,
.fm-header .fm-btn-pill,
.fm-header .fm-refresh,
.fm-header .fm-breadcrumb-chip {
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  outline: none !important;
  box-shadow: none !important;
  padding: 6px 8px !important;
  min-width: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--fm-text) !important;
  transition: transform .18s ease, color .18s ease;
}

/* 2. HIDE TEXT — BUT KEEP .fm-zip-label and spinner */
.fm-header .btn > span:not(.fm-zip-label),
.fm-header .btn > .dropdown-toggle::after {
  display: none !important;
}

.fm-header .btn > .spinner-border {
  display: inline-block !important;
}

/* 3. HOVER ANIMATION */
.fm-header .btn:hover {
  transform: scale(1.15) rotate(8deg);
  color: var(--fm-accent) !important;
}

.fm-header .btn:hover svg {
  transform: scale(1.2) rotate(8deg);
}

/* 4. ACTIVE / PRESSED */
.fm-header .btn:active,
.fm-header .btn.active {
  animation: fmPulse .3s ease;
  color: var(--fm-accent) !important;
}

.fm-header .btn.active svg {
  stroke: var(--fm-accent);
  transform: scale(1.1);
}

/* 5. ZIP BUTTON: Show "Zip" text */
.fm-header .btn:has(.fm-zip-label) {
  padding: 6px 12px !important;
  min-width: 48px;
  font-weight: 500;
  font-size: 0.875rem;
}

.fm-header .btn:has(.fm-zip-label):hover {
  transform: scale(1.12) rotate(4deg);
}

/* 6. SVG ICONS */
.fm-header .btn svg {
  width: 1.25rem;
  height: 1.25rem;
  display: block;
  pointer-events: none;
}

/* 7. SPINNER SIZE */
.fm-header .spinner-border-sm {
  width: 1.25rem;
  height: 1.25rem;
  margin: 0 !important;
}

/* 8. PULSE ANIMATION */
@keyframes fmPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.25); }
}
/* ==============================================================
   ARROW & NEW BUTTONS – FLAT, NO BORDERS, NO ANIMATIONS
   ============================================================== */

/* Target all relevant buttons: back, forward, new dropdown */
.fm-sidebar .btn,
.fm-drawer .btn,
.fm-toolbar .btn,
.fm-toolbar .dropdown-toggle,
.btn[title="Up one level"],
.btn[title="No parent"],
.btn[title="Forward (coming soon)"],
.btn:has(i.fas.fa-plus) {

  /* Visual reset */
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  outline: none !important;
  box-shadow: none !important;

  /* Size & layout */
  padding: 6px 8px !important;
  min-width: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;

  /* Text/icon color */
  color: var(--fm-text) !important;

  /* REMOVE ALL TRANSITIONS & ANIMATIONS */
  transition: none !important;
  transform: none !important;
}

/* Ensure no hover/active changes */
.fm-sidebar .btn:hover,
.fm-drawer .btn:hover,
.fm-toolbar .btn:hover,
.fm-toolbar .dropdown-toggle:hover,
.fm-sidebar .btn:active,
.fm-drawer .btn:active,
.fm-toolbar .btn:active,
.fm-toolbar .dropdown-toggle:active {
  background: transparent !important;
  color: var(--fm-text) !important;
  transform: none !important;
  animation: none !important;
}

/* Hide dropdown caret (New button) */
.fm-toolbar .dropdown-toggle::after {
  display: none !important;
}

/* Icon sizing */
.fm-sidebar .btn i,
.fm-drawer .btn i,
.fm-toolbar .btn i {
  font-size: 1.1rem;
  pointer-events: none;
}

/* Optional: subtle focus ring for accessibility */
.fm-sidebar .btn:focus-visible,
.fm-drawer .btn:focus-visible,
.fm-toolbar .btn:focus-visible {
  outline: 2px solid var(--fm-ring) !important;
  outline-offset: 2px;
}
