/* ============================================
   DROPDOWN MENUS - ACL Cloud v15.0
   Ultra-specific styles to prevent any CSS interference
   ============================================ */

/* File manager dropdown (rendered via portal at body) */
body > .ptero-dropdown-menu {
  position: fixed !important;
  min-width: 200px !important;
  max-width: 280px !important;
  background: var(--bg-secondary) !important;
  border: 1px solid var(--border) !important;
  border-radius: 12px !important;
  padding: 6px !important;
  box-shadow: 0 10px 40px var(--overlay) !important;
  z-index: 99999 !important;
  overflow: visible !important;
  isolation: isolate !important;
  pointer-events: auto !important;
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  margin: 0 !important;
  /* Reset any inherited styles */
  font-size: 13px !important;
  font-weight: 400 !important;
  color: var(--text-primary) !important;
  text-align: left !important;
  line-height: 1.4 !important;
}

/* Ensure no child elements create white blocks */
body > .ptero-dropdown-menu > * {
  background-color: transparent !important;
  box-shadow: none !important;
  max-width: 100% !important;
}

/* Dropdown button rows - the action items */
body > .ptero-dropdown-menu > .dropdown-btn-row,
body > .ptero-dropdown-menu .dropdown-btn-row {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 9px 12px;
  background: transparent;
  border: none;
  border-radius: 8px;
  color: var(--text-primary);
  font-size: 13px;
  font-weight: 500;
  cursor: pointer;
  transition: background 0.12s ease, color 0.12s ease, transform 0.12s ease;
  text-align: left;
  outline: none;
  box-shadow: none;
  pointer-events: auto;
  opacity: 1;
  visibility: visible;
  position: relative;
  z-index: 1;
  margin: 0;
  overflow: visible;
  transform: none;
  max-height: none;
  min-height: 0;
  text-decoration: none;
}

body > .ptero-dropdown-menu > .dropdown-btn-row:hover,
body > .ptero-dropdown-menu .dropdown-btn-row:hover {
  background: rgba(255, 255, 255, 0.1) !important;
  color: #fff !important;
  transform: translateX(2px);
}

[data-theme="light"] body > .ptero-dropdown-menu > .dropdown-btn-row:hover,
[data-theme="light"] body > .ptero-dropdown-menu .dropdown-btn-row:hover {
  background: rgba(0, 0, 0, 0.06) !important;
  color: var(--text-primary) !important;
}

/* SVG icons inside dropdown buttons */
body > .ptero-dropdown-menu .dropdown-btn-row svg {
  width: 14px;
  height: 14px;
  max-width: 14px;
  max-height: 14px;
  min-width: 14px;
  min-height: 14px;
  color: var(--text-placeholder);
  flex-shrink: 0;
  display: inline-block;
  overflow: visible;
  font-size: 14px;
}

/* Text spans inside dropdown buttons */
body > .ptero-dropdown-menu .dropdown-btn-row span {
  color: var(--text-primary);
  font-size: 13px;
  font-weight: 500;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Danger variant */
body > .ptero-dropdown-menu > .dropdown-btn-row--danger,
body > .ptero-dropdown-menu .dropdown-btn-row--danger {
  color: var(--error);
}

body > .ptero-dropdown-menu > .dropdown-btn-row--danger:hover,
body > .ptero-dropdown-menu .dropdown-btn-row--danger:hover {
  background: var(--error-muted) !important;
  color: var(--error) !important;
  transform: translateX(2px);
}

body > .ptero-dropdown-menu .dropdown-btn-row--danger svg {
  color: var(--error);
}

/* Context menu (right-click) */
.fe-ctx-menu,
.context-menu {
  position: fixed;
  min-width: 120px;
  background: var(--bg-secondary);
  border: 1px solid var(--border);
  border-radius: 10px;
  padding: 4px;
  box-shadow: 0 8px 24px var(--border);
  z-index: 10000;
}

[data-theme="dark"] .fe-ctx-menu,
[data-theme="dark"] .context-menu {
  background: var(--bg-secondary);
  border-color: var(--border);
  box-shadow: var(--shadow-md);
}

.fe-ctx-menu-item {
  display: block;
  width: 100%;
  padding: 8px 12px;
  background: transparent;
  border: none;
  border-radius: 6px;
  color: var(--text-primary);
  font-size: 13px;
  cursor: pointer;
  text-align: left;
  transition: background 0.12s ease;
}

.fe-ctx-menu-item:hover {
  background: var(--bg-hover);
}

[data-theme="dark"] .fe-ctx-menu-item {
  color: var(--text-primary);
}

[data-theme="dark"] .fe-ctx-menu-item:hover {
  background: var(--border);
}

/* Dropdown dividers */
.dropdown-divider,
.menu-divider {
  height: 1px;
  background: var(--border);
  margin: 6px 0;
  border: none;
}

[data-theme="dark"] .dropdown-divider,
[data-theme="dark"] .menu-divider {
  background: var(--border);
}
