/**
 * Citation Links Styling
 * For \cite{...} syntax that creates links to bibliography entries
 * WCAG 2.1 Level AA Compliant
 */

.citation-link {
    /* Visual distinction - blue color with sufficient contrast */
    /* Color contrast ratio: 4.52:1 on white background (WCAG AA compliant) */
    color: var(--color-link);
    text-decoration: none;
    font-weight: 600;

    /* Ensure no extra spacing */
    margin: 0;
    padding: 0 0.1em;

    /* Subtle styling for citation numbers */
    border-bottom: 1px solid transparent;
    transition: var(--transition-fast);
}

.citation-link:hover {
    /* Hover state - add background highlight */
    background-color: var(--color-link-hover-bg);
    border-bottom-color: var(--color-link);
}

.citation-link:focus {
    /* Remove default outline, will use focus-visible instead */
    outline: none;
    border-bottom-color: var(--color-link);
}

/* Focus visible for keyboard navigation (keyboard users only) */
.citation-link:focus-visible {
    /* High visibility focus indicator */
    outline: 2px solid var(--color-link);
    outline-offset: 2px;
    border-radius: 2px;
    background-color: var(--color-link-focus-bg);
}

/* Active state (when clicking) */
.citation-link:active {
    background-color: var(--color-link-active-bg);
}

/* Visited state - keep same color for consistency */
.citation-link:visited {
    color: var(--color-link);
}

/* High contrast mode support */
@media (prefers-contrast: high) {
    .citation-link {
        text-decoration: underline;
        font-weight: 700;
    }

    .citation-link:focus-visible {
        outline-width: 3px;
        outline-style: solid;
    }
}

/* Dark mode support */
@media (prefers-color-scheme: dark) {
    .citation-link {
        /* Lighter blue for dark backgrounds */
        /* Color contrast ratio: 4.54:1 on dark background (WCAG AA compliant) */
        color: var(--color-link);
    }

    .citation-link:hover {
        background-color: var(--color-link-hover-bg);
        border-bottom-color: var(--color-link);
    }

    .citation-link:focus-visible {
        outline-color: var(--color-link);
        background-color: var(--color-link-focus-bg);
    }

    .citation-link:visited {
        color: var(--color-link);
    }
}

[data-theme="dark"] .citation-link {
    /* Lighter blue for dark backgrounds */
    /* Color contrast ratio: 4.54:1 on dark background (WCAG AA compliant) */
    color: var(--color-link);
}

[data-theme="dark"] .citation-link:hover {
    background-color: var(--color-link-hover-bg);
    border-bottom-color: var(--color-link);
}

[data-theme="dark"] .citation-link:focus-visible {
    outline-color: var(--color-link);
    background-color: var(--color-link-focus-bg);
}

[data-theme="dark"] .citation-link:visited {
    color: var(--color-link);
}

/* Reduced motion support */
@media (prefers-reduced-motion: reduce) {
    .citation-link {
        transition: none;
    }
}

/* Print styles */
@media print {
    .citation-link {
        color: #000;
        text-decoration: none;
        font-weight: 600;
    }

    /* Don't show href in print for citations (numbers are sufficient) */
    .citation-link::after {
        content: "";
    }
}

/* Forced colors mode (Windows High Contrast) */
@media (forced-colors: active) {
    .citation-link {
        color: LinkText;
        forced-color-adjust: auto;
    }

    .citation-link:visited {
        color: VisitedText;
    }

    .citation-link:focus-visible {
        outline: 2px solid;
    }
}
