/**
 * Theme Name: Twenty Twenty-Five Child
 * Template:   twentytwentyfive
 */

/* 1. ROOT VARIABLES & GLOBAL TYPOGRAPHY */
:root {
    --wp--preset--font-family--valkyrie-b: "Valkyrie B", "Times New Roman", serif;
}

body {
    font-feature-settings: "liga" 1, "dlig" 1, "onum" 0;
}

strong, b {
    font-weight: bold;
}

/* 2. NAVIGATION & HEADINGS */
.wp-block-navigation-item__label,
.wp-block-site-title a {
    font-family: "Concourse 4", "Helvetica Neue", Helvetica, sans-serif;
    font-size: 1.2em; /* Using em for better relative scaling */
}

/* 3. IMAGES & FIGURES */
img {
    border-radius: 4px;
    border: 1px solid #eee;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
    padding: 6px;
    background-color: white;
}

/* Remove decorative styling from specific utility images */
img.journal-cover,
.toc-graphic {
    display: block;
    margin: 0 auto;
}

img.journal-cover {
    margin-bottom: 0 !important;
}

.toc-graphic {
    width: 80%;
    max-width: 100%;
    height: auto;
    margin-bottom: 1.5rem;
}

/* 4. LIST STYLING (Scoped to Post Content) */
.entry-content ul, 
ul.wp-block-list {
    padding-inline-start: 1.25em;
    list-style-type: none; /* Removes default bullets */
}

.entry-content ul li {
    position: relative;
}

/* Custom bullet character */
.entry-content ul li::before {
    content: "›";
    font-weight: bold;
    display: inline-block;
    width: 0.6em;
    margin-left: -0.6em;
    transform: translateY(-0.08em);
}

/* Ensure bullets don't appear in navigation or specific classes */
.hide-bullets li::before, 
.wp-block-navigation-item::before {
    content: none !important;
}

li.group-alumni-list {
    margin-bottom: 0.5em !important;
}

/* 5. GROUP MEMBER COMPONENT */
.group-member {
    margin-bottom: 3rem;
    clear: both;
    overflow: hidden; /* Modern clearfix */
}

.group-portrait {
    float: right;
    margin-left: 20px;
    margin-bottom: 15px;
    max-width: 200px;
    height: auto;
}

.group-member-heading {
    margin-bottom: 1rem;
}

@media (max-width: 600px) {
    .group-portrait {
        float: none;
        display: block;
        margin: 0 auto 1.5rem auto;
        max-width: 100%;
    }
}

/* 6. PUBLICATION UTILITIES */
p.publication-links.full-publication {
    text-align: center;
}

/* 7. QUERY PAGINATION (GRID LAYOUT) */
.wp-block-query-pagination {
    display: grid !important;
    grid-template-columns: 1fr auto 1fr;
    width: 100%;
    align-items: center;
    gap: 20px;
}

/* Pagination Placement */
.wp-block-query-pagination-previous { grid-column: 1; justify-self: start; }
.wp-block-query-pagination-numbers  { grid-column: 2; justify-self: center; display: flex; gap: 0.3em; margin: 0 !important; }
.wp-block-query-pagination-next      { grid-column: 3; justify-self: end; }

/* Ghost State Logic: Arrows appear even when no link exists */
.wp-block-query-pagination:not(:has(.wp-block-query-pagination-previous))::before {
    grid-column: 1;
    content: "«";
    color: #bbbbbb;
    opacity: 0.5;
}

.wp-block-query-pagination:not(:has(.wp-block-query-pagination-next))::after {
    grid-column: 3;
    content: "»";
    justify-self: end;
    color: #bbbbbb;
    opacity: 0.5;
}

/* Commas between numbers */
.wp-block-query-pagination-numbers *:not(:last-child)::after {
    content: ",";
    margin-right: 2px;
}
