/**
 * Link Styles with Animated Underlines
 * Excludes Layout Builder UI elements
 */

/* Base link reset */
a {
  color: var(--color-primary);
  text-decoration: none;
  transition: color 0.3s ease;
}

a:hover {
  color: var(--color-primary-dark);
}

a:focus {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
  border-radius: 2px;
}

/* Content links with animated underline - excluding Layout Builder UI */
#block-modern-minimal-atomic-content a:not(.layout-builder__link):not(.use-ajax):not(.contextual-links a):not([class*="button"]):not([href^="http"]):not([href$=".pdf"]):not([href$=".doc"]):not([href$=".docx"]):not([href$=".zip"]) {
  position: relative;
  color: var(--color-primary);
  font-weight: 500;
}

/* Underline for regular internal links only */
#block-modern-minimal-atomic-content a:not(.layout-builder__link):not(.use-ajax):not(.contextual-links a):not([class*="button"]):not([href^="http"]):not([href$=".pdf"]):not([href$=".doc"]):not([href$=".docx"]):not([href$=".zip"])::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 100%;
  height: 2px;
  background: var(--color-primary);
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  transform-origin: left;
}

#block-modern-minimal-atomic-content a:not(.layout-builder__link):not(.use-ajax):not(.contextual-links a):not([class*="button"]):hover {
  color: var(--color-primary-dark);
}

#block-modern-minimal-atomic-content a:not(.layout-builder__link):not(.use-ajax):not(.contextual-links a):not([class*="button"]):not([href^="http"]):not([href$=".pdf"]):not([href$=".doc"]):not([href$=".docx"]):not([href$=".zip"]):hover::after {
  transform: scaleX(0);
  transform-origin: right;
}

/* External links indicator - AFTER the text */
#block-modern-minimal-atomic-content a[href^="http"]:not(.layout-builder__link):not(.use-ajax) {
  position: relative;
  color: var(--color-primary);
  font-weight: 500;
}

#block-modern-minimal-atomic-content a[href^="http"]:not(.layout-builder__link):not(.use-ajax)::after {
  content: ' ↗';
  display: inline;
  font-size: 0.875em;
  opacity: 0.6;
}

/* File download links - AFTER the text */
#block-modern-minimal-atomic-content a[href$=".pdf"]:not(.layout-builder__link),
#block-modern-minimal-atomic-content a[href$=".doc"]:not(.layout-builder__link),
#block-modern-minimal-atomic-content a[href$=".docx"]:not(.layout-builder__link),
#block-modern-minimal-atomic-content a[href$=".zip"]:not(.layout-builder__link) {
  position: relative;
  color: var(--color-primary);
  font-weight: 500;
}

#block-modern-minimal-atomic-content a[href$=".pdf"]:not(.layout-builder__link)::after,
#block-modern-minimal-atomic-content a[href$=".doc"]:not(.layout-builder__link)::after,
#block-modern-minimal-atomic-content a[href$=".docx"]:not(.layout-builder__link)::after,
#block-modern-minimal-atomic-content a[href$=".zip"]:not(.layout-builder__link)::after {
  content: ' 📄';
  display: inline;
  margin-left: 4px;
}

/* Visited links - excluding Layout Builder */
#block-modern-minimal-atomic-content a:visited:not(.layout-builder__link) {
  color: var(--color-primary-dark);
}

/* Active state - excluding Layout Builder */
#block-modern-minimal-atomic-content a:active:not(.layout-builder__link) {
  color: var(--color-primary);
  transform: translateY(1px);
}

/* Ensure Layout Builder links have default styling */
.layout-builder__link,
.use-ajax,
.contextual-links a {
  position: static !important;
  font-weight: normal !important;
}

.layout-builder__link::after,
.layout-builder__link::before,
.use-ajax::after,
.use-ajax::before,
.contextual-links a::after,
.contextual-links a::before {
  display: none !important;
}