/*
 * Buzzen V5 Build 0134 — readability/accessibility pass.
 *
 * This sheet is intentionally scoped to the recently modernized member-facing
 * surfaces. It loads after page-specific theme sheets so readable text sizes
 * stay consistent without redesigning unrelated legacy pages.
 */

.buzzen-phase2-home-member,
.buzzen-members-page,
.buzzen-memorial-page,
.buzzen-album-theme-page,
.buzzen-blog-theme-page {
    line-height: 1.55;
}

/* Logged-in portal ------------------------------------------------------- */
.buzzen-phase2-home-member .buzzen-section-heading > div > span,
.buzzen-account-tool-group-header span:not(.buzzen-account-tool-group-icon) {
    font-size: .75rem;
}

.buzzen-account-tool-copy strong {
    font-size: .92rem;
    line-height: 1.3;
}

.buzzen-account-tool-copy small {
    font-size: .82rem;
    line-height: 1.45;
}

.buzzen-relay-dashboard-live,
.buzzen-relay-dashboard-kicker {
    font-size: .72rem;
}

.buzzen-relay-dashboard-track > p,
.buzzen-relay-dashboard-dj {
    font-size: .84rem;
    line-height: 1.45;
}

.buzzen-relay-dashboard-status strong {
    font-size: .84rem;
}

.buzzen-relay-dashboard-status span,
.buzzen-relay-dashboard-actions a {
    font-size: .8rem;
    line-height: 1.4;
}

/* Members directory ----------------------------------------------------- */
.buzzen-members-page .buzzen-members-card-header p,
.buzzen-members-page .buzzen-members-results-head p,
.buzzen-members-page .buzzen-members-results-note {
    font-size: .9rem;
    line-height: 1.55;
}

.buzzen-members-page .buzzen-members-more-filters summary small,
.buzzen-members-page .buzzen-members-form-footer > span,
.buzzen-members-page .buzzen-members-active-label,
.buzzen-members-page .buzzen-members-side-title-action > a {
    font-size: .82rem;
}

.buzzen-members-page .buzzen-members-filter-chip {
    font-size: .8rem;
    line-height: 1.35;
}

.buzzen-members-page .buzzen-member-realname,
.buzzen-members-page .buzzen-member-result-meta,
.buzzen-members-page .buzzen-member-detail-list > div,
.buzzen-members-page .buzzen-members-spotlight-heading > span {
    font-size: .84rem;
    line-height: 1.5;
}

.buzzen-members-page .buzzen-members-spotlight-item small,
.buzzen-members-page .buzzen-members-mini-card small {
    font-size: .76rem;
    line-height: 1.4;
}

.buzzen-members-page .buzzen-members-mini-card strong {
    font-size: .84rem;
}

.buzzen-members-page .buzzen-members-results-empty span {
    font-size: .84rem;
    line-height: 1.5;
}

/* Memorial wall/detail -------------------------------------------------- */
.buzzen-memorial-help > div > strong {
    font-size: .9rem;
}

.buzzen-memorial-help > div > span,
.buzzen-memorial-search-head p,
.buzzen-memorial-subsection-head p,
.buzzen-memorial-page .buzzen-memorial-card-body p {
    font-size: .9rem;
    line-height: 1.6;
}

.buzzen-memorial-result-count,
.buzzen-memorial-active-filter,
.buzzen-memorial-page .buzzen-memorial-realname,
.buzzen-memorial-page .buzzen-memorial-meta,
.buzzen-memorial-page .buzzen-memorial-older-comments summary,
.buzzen-memorial-comment-date,
.buzzen-memorial-comment-form-meta,
.buzzen-memorial-signin-card span {
    font-size: .84rem;
    line-height: 1.45;
}

.buzzen-memorial-photo-label,
.buzzen-memorial-detail-photo-label,
.buzzen-memorial-detail-stats small,
.buzzen-memorial-pending-badge {
    font-size: .72rem;
}

.buzzen-memorial-detail-stats strong,
.buzzen-memorial-signin-card strong {
    font-size: .9rem;
}

.buzzen-memorial-page .buzzen-memorial-bio {
    font-size: .96rem;
    line-height: 1.75;
}

/* Albums / picture ------------------------------------------------------ */
.buzzen-album-theme-pills span,
.buzzen-album-theme-pills a,
.buzzen-album-theme-hero-panel > span,
.buzzen-album-dark-card > span,
.buzzen-album-theme-hero-panel > small,
.buzzen-album-switcher > span,
.buzzen-album-switcher a,
.buzzen-album-side-heading span {
    font-size: .82rem;
}

.buzzen-album-theme-hero-panel > p,
.buzzen-album-dark-card > p,
.buzzen-album-side-empty,
.buzzen-album-privacy-note {
    font-size: .9rem;
    line-height: 1.55;
}

.buzzen-gallery-filter-chip,
.buzzen-gallery-photo-meta,
.buzzen-gallery-album-name,
.buzzen-picture-refresh-meta,
.buzzen-picture-owner-link,
.buzzen-picture-keyboard-help,
.buzzen-picture-comment-label-row > span {
    font-size: .78rem;
    line-height: 1.4;
}

.buzzen-gallery-owner-name,
.buzzen-gallery-description,
.buzzen-picture-refresh-hero-copy > p,
.buzzen-picture-interaction-note,
.buzzen-picture-like-summary > span,
.buzzen-picture-like-summary > strong,
.buzzen-picture-detail-list dd,
.buzzen-picture-danger-card p,
.buzzen-picture-comment p {
    font-size: .9rem;
    line-height: 1.55;
}

.buzzen-picture-like-button,
.buzzen-picture-follow-button,
.buzzen-picture-navlink,
.buzzen-picture-navlink a,
.buzzen-picture-album-return,
.buzzen-picture-detail-list dt,
.buzzen-picture-danger-card span,
.buzzen-picture-comment-meta a,
.buzzen-picture-comment-meta span,
.buzzen-picture-comment-delete,
.buzzen-picture-likepeople-card > summary,
.buzzen-picture-report-card > summary,
.buzzen-picture-likeperson {
    font-size: .82rem;
    line-height: 1.45;
}

/* Blogs / Blog reader --------------------------------------------------- */
.buzzen-blog-hub-stats span,
.buzzen-blog-filter-form label,
.buzzen-blog-results-bar strong,
.buzzen-blog-results-bar > div:first-child span,
.buzzen-blog-filter-chip,
.buzzen-blog-modern-author strong,
.buzzen-blog-modern-author small,
.buzzen-blog-category-list a,
.buzzen-blog-category-list a strong,
.buzzen-blog-reader-author strong,
.buzzen-blog-reader-author small,
.buzzen-blog-reader-toolbar .btn,
.buzzen-blog-back-link,
.buzzen-blog-like-manager,
.buzzen-blog-comment-help,
.buzzen-blog-homepage-link {
    font-size: .82rem;
    line-height: 1.45;
}

.buzzen-blog-private-pill,
.buzzen-blog-category-pill,
.buzzen-blog-reader-stats small,
.buzzen-blog-post-nav small {
    font-size: .72rem;
    line-height: 1.35;
}

.buzzen-blog-modern-body p,
.buzzen-blog-side-card > p,
.buzzen-blog-side-list li,
.buzzen-blog-comment-body p,
.buzzen-blog-author-card p {
    font-size: .9rem;
    line-height: 1.6;
}

.buzzen-blog-modern-card > footer > a,
.buzzen-blog-modern-stats,
.buzzen-blog-tool-list a,
.buzzen-blog-tool-list button,
.buzzen-blog-author-actions .btn,
.buzzen-blog-post-nav > div > a,
.buzzen-blog-post-nav > div > span {
    font-size: .82rem;
    line-height: 1.4;
}

.buzzen-blog-reading-body {
    font-size: 1rem;
    line-height: 1.75;
}

.buzzen-blog-reading-body p,
.buzzen-blog-reading-body li,
.buzzen-blog-reading-body blockquote {
    line-height: 1.75;
}

/* Keep touch/mobile reading comfortable rather than shrinking body copy. */
@media (max-width: 575.98px) {
    .buzzen-blog-reading-body {
        font-size: .96rem;
    }

    .buzzen-members-page .buzzen-members-card-header p,
    .buzzen-members-page .buzzen-members-results-head p,
    .buzzen-memorial-help > div > span,
    .buzzen-memorial-page .buzzen-memorial-card-body p,
    .buzzen-gallery-description,
    .buzzen-blog-modern-body p,
    .buzzen-blog-comment-body p {
        line-height: 1.62;
    }
}

/* Build 0138 — shared V5 pagination consistency.
   Keep pagination controls visually identical across modernized V5 pages while
   leaving legacy/non-V5 surfaces untouched. This layer loads after page themes. */
.buzzen-v5-page .pagination {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 4px;
    margin-bottom: 0;
}

.buzzen-v5-page .pagination .page-item {
    margin: 0;
}

.buzzen-v5-page .pagination .page-link {
    min-width: 36px;
    height: 36px;
    padding: .4rem .55rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #d9e6ef;
    border-radius: 7px !important;
    background: #fff;
    color: #176a9e;
    font-size: .875rem;
    font-weight: 750;
    line-height: 1;
    text-align: center;
    text-decoration: none;
    box-shadow: none;
}

.buzzen-v5-page .pagination .page-link:hover {
    border-color: #a9cfe6;
    background: #eef7fc;
    color: #0c5f92;
}

.buzzen-v5-page .pagination .page-link:focus-visible {
    position: relative;
    z-index: 2;
    border-color: #1b79bd;
    outline: 0;
    box-shadow: 0 0 0 3px rgba(27, 121, 189, .16);
}

.buzzen-v5-page .pagination .page-item.active .page-link {
    border-color: #176a9e;
    background: #176a9e;
    color: #fff;
}

.buzzen-v5-page .pagination .page-item.disabled .page-link {
    border-color: #e2ebf2;
    background: #f5f8fa;
    color: #91a3af;
    opacity: 1;
    pointer-events: none;
}

@media (max-width: 575.98px) {
    .buzzen-v5-page .pagination {
        gap: 5px;
    }

    .buzzen-v5-page .pagination .page-link {
        min-width: 38px;
        height: 38px;
    }
}
