/**
 * Arcana Lexicon Styles
 * 
 * These are baseline styles that can be overridden by your theme or Elementor.
 * The classes are intentionally specific to avoid conflicts.
 */

/* ==========================================================================
   Lexicon Terms on Posts
   ========================================================================== */

.arcana-lexicon-section {
    margin-top: 3rem;
    padding-top: 2rem;
    border-top: 1px solid currentColor;
    opacity: 0.9;
}

.arcana-lexicon-heading {
    font-size: 1.5rem;
    margin-bottom: 1.5rem;
}

.arcana-lexicon-terms {
    /* Single column by default */
}

.arcana-lexicon-terms--columns {
    column-count: 1;
    column-gap: 2rem;
}

/* Two columns on tablet and up */
@media (min-width: 768px) {
    .arcana-lexicon-terms--columns {
        column-count: 2;
    }
}

.arcana-lexicon-entry {
    margin-bottom: 1rem;
    break-inside: avoid;
    page-break-inside: avoid;
}

.arcana-lexicon-term-link {
    text-decoration: none;
}

.arcana-lexicon-term-link:hover .arcana-lexicon-term-name {
    text-decoration: underline;
}

.arcana-lexicon-term-name {
    /* Inherits font styling from theme */
}

.arcana-lexicon-separator {
    margin: 0 0.25em;
    opacity: 0.7;
}

.arcana-lexicon-definition {
    /* Inherits font styling from theme */
}


/* ==========================================================================
   Lexicon Archive Page
   ========================================================================== */

.arcana-lexicon-archive {
    /* Container for the full archive */
}

/* Letter Navigation */
.arcana-lexicon-nav {
    margin-bottom: 2rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid currentColor;
    opacity: 0.8;
}

.arcana-lexicon-nav-list {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem 1rem;
    list-style: none;
    padding: 0;
    margin: 0;
}

.arcana-lexicon-nav-list li {
    margin: 0;
    padding: 0;
}

.arcana-lexicon-nav-list a {
    display: inline-block;
    padding: 0.25rem 0.5rem;
    text-decoration: none;
    font-weight: 600;
}

.arcana-lexicon-nav-list a:hover {
    text-decoration: underline;
}

/* Letter Groups */
.arcana-lexicon-letter-group {
    margin-bottom: 2.5rem;
}

.arcana-lexicon-letter-heading {
    font-size: 2rem;
    margin-bottom: 1rem;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid currentColor;
}

.arcana-lexicon-archive-entry {
    margin-bottom: 0.75rem;
}

/* Archive entries use same styling as post entries */
.arcana-lexicon-archive .arcana-lexicon-entry {
    margin-bottom: 0.75rem;
}


/* ==========================================================================
   Utility Classes (for Elementor or manual use)
   ========================================================================== */

/* Force single column */
.arcana-lexicon-terms--single-column {
    column-count: 1 !important;
}

/* Force two columns regardless of screen size */
.arcana-lexicon-terms--force-columns {
    column-count: 2 !important;
}

/* Hide the section heading if needed */
.arcana-lexicon-section--no-heading .arcana-lexicon-heading {
    display: none;
}

/* Compact spacing variant */
.arcana-lexicon-terms--compact .arcana-lexicon-entry {
    margin-bottom: 0.5rem;
}

/* Larger separator for visual emphasis */
.arcana-lexicon-terms--large-separator .arcana-lexicon-separator {
    margin: 0 0.5em;
    font-size: 1.2em;
}
