/* 
 * Global Focus Ring Removal
 * This file removes all focus rings and outlines from the entire project
 * to ensure consistent styling without focus indicators.
 */

/* === GLOBAL FOCUS RING REMOVAL === */
/* Remove all focus rings globally */
*:focus,
*:focus-visible,
*:focus-within {
  outline: none !important;
}

/* Remove focus rings from all interactive elements */
button:focus,
input:focus,
select:focus,
textarea:focus,
a:focus,
[tabindex]:focus,
[role="button"]:focus,
[role="tab"]:focus,
[role="menuitem"]:focus {
  outline: none !important;
  /* Keep our styled box-shadow for consistent form aesthetics */
}

/* Remove focus styles */
.btn:focus,
.btn.focus,
.form-control:focus,
.form-control.focus,
.custom-select:focus,
.custom-select.focus,
.custom-checkbox input[type="checkbox"]:focus,
.custom-radio input[type="radio"]:focus {
  outline: none !important;
  /* Keep our styled box-shadow and hover states for better UX */
}

/* Remove any remaining focus styles */
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
a:focus-visible,
[tabindex]:focus-visible {
  outline: none !important;
  box-shadow: none !important;
}

/* Specific focus removal for promise buttons */
.checkBtn:focus,
.crossBtn:focus,
.checkBtn:focus-visible,
.crossBtn:focus-visible,
.checkBtn:focus-within,
.crossBtn:focus-within {
  outline: none !important;
  box-shadow: none !important;
}

/* Remove focus from action buttons */
.action-btn:focus,
.action-btn:focus-visible,
.action-btn:focus-within {
  outline: none !important;
  /* Don't override hover box-shadow */
}

/* Ensure action button hover effects work properly */
.action-btn:focus:hover,
.action-btn:focus-visible:hover,
.action-btn:focus-within:hover {
  box-shadow: var(--shadow-md) !important;
}

/* === TOP NAVIGATION EXCEPTIONS === */
/* Preserve navigation bar drop shadow when focused */
.top-nav:focus-within,
.top-nav:focus,
.top-nav:focus-visible {
  box-shadow: 
    0 2px 20px rgba(0, 0, 0, 0.08),
    0 1px 3px rgba(0, 0, 0, 0.05),
    var(--shadow-md) !important;
}

/* Allow navigation buttons to be focused without breaking shadow */
.top-nav *:focus,
.top-nav *:focus-visible,
.top-nav .top-nav-menu-toggle:focus,
.top-nav .top-nav-icon:focus {
  outline: none !important;
  /* Don't remove box-shadow - let parent handle it */
  box-shadow: inherit !important;
}
