@charset "utf-8";

/*
 * BH Network Events
 * Global Typography and Readability Overrides
 *
 * Purpose:
 * - improve font sizes and contrast throughout the members area;
 * - override page-level 9px, 10px and 11px text;
 * - preserve layout, card dimensions, spacing and visual structure.
 *
 * This file should be loaded after page-level styles.
 */

:root {
    --bhne-font-micro: 12px;
    --bhne-font-small: 13px;
    --bhne-font-base: 14px;
    --bhne-font-medium: 15px;
    --bhne-font-large: 18px;
    --bhne-font-title: 20px;

    --bhne-text-main: #34393e;
    --bhne-text-secondary: #50575e;
    --bhne-text-muted: #626a71;
    --bhne-text-soft: #717981;
    --bhne-border-readable: #cdd2d6;
}

/* General body text */
body {
    color: var(--bhne-text-main);
}

p,
li,
td,
th,
label,
input,
select,
textarea {
    color: var(--bhne-text-main);
}

p,
li,
td {
    line-height: 1.6;
}

/*
 * Standard paragraphs and readable content.
 * Do not affect navigation, icons or headings.
 */
main p,
article p,
section p,
.card p,
.panel p,
.modal p,
.alert p,
.bhne-page p,
[class*="bhne-"][class*="-page"] p {
    font-size: var(--bhne-font-base) !important;
    color: var(--bhne-text-secondary) !important;
    line-height: 1.65 !important;
}

/* Lists inside normal content areas */
main li,
article li,
section li,
.card li,
.panel li,
.modal li,
.bhne-page li,
[class*="bhne-"][class*="-page"] li {
    font-size: var(--bhne-font-base);
    color: var(--bhne-text-secondary);
    line-height: 1.65;
}

/* Form controls */
input,
select,
textarea,
.form-control,
.custom-select {
    font-size: var(--bhne-font-base) !important;
    color: var(--bhne-text-main) !important;
    border-color: var(--bhne-border-readable);
}

input::placeholder,
textarea::placeholder,
.form-control::placeholder {
    color: #737b82 !important;
    opacity: 1 !important;
}

label,
.form-label,
.control-label,
.bhne-label,
[class*="bhne-"][class*="-label"] {
    font-size: var(--bhne-font-base);
    color: var(--bhne-text-main);
    font-weight: 400;
}

/* Help text, descriptions and secondary copy */
small,
.form-text,
.help-block,
.help-text,
.text-muted,
.bhne-help,
.bhne-field-help,
.bhne-description,
.bhne-descr,
.bhne-subtitle,
.bhne-page-subtitle,
.bhne-section-text,
.bhne-card-description,
.bhne-card-subtitle,
.bhne-guide-summary,
.bhne-path-text,
.bhne-support-text,
[class*="bhne-"][class*="-help"],
[class*="bhne-"][class*="-descr"],
[class*="bhne-"][class*="-description"],
[class*="bhne-"][class*="-subtitle"],
[class*="bhne-"][class*="-summary"],
[class*="bhne-"][class*="-text"] {
    font-size: var(--bhne-font-small) !important;
    color: var(--bhne-text-muted) !important;
    line-height: 1.55 !important;
}

/*
 * Micro labels and metadata.
 * 12px is the absolute minimum used by the BHNE interface.
 */
.bhne-eyebrow,
.bhne-guides-eyebrow,
.bhne-data-label,
.bhne-site-slot,
.bhne-created,
.bhne-meta,
.bhne-metadata,
.bhne-kicker,
.bhne-overline,
[class*="bhne-"][class*="-eyebrow"],
[class*="bhne-"][class*="-meta"],
[class*="bhne-"][class*="-slot"],
[class*="bhne-"][class*="-created"],
[class*="bhne-"][class*="-kicker"],
[class*="bhne-"][class*="-overline"] {
    font-size: var(--bhne-font-micro) !important;
    color: var(--bhne-text-muted) !important;
    line-height: 1.45 !important;
}

/* Card names, values and accordion titles */
.bhne-guide-name,
.bhne-site-name,
.bhne-data-value,
.bhne-card-title,
.bhne-item-title,
.bhne-stat-value,
[class*="bhne-"][class*="-name"],
[class*="bhne-"][class*="-value"] {
    color: var(--bhne-text-main) !important;
}

.bhne-guide-name,
.bhne-card-title,
.bhne-item-title {
    font-size: var(--bhne-font-medium) !important;
}

/* Internal headings: compact, not oversized */
.bhne-section-title,
.bhne-support-title,
.bhne-empty-title,
.bhne-card-heading {
    color: var(--bhne-text-main) !important;
}

.bhne-section-title,
.bhne-support-title {
    font-size: var(--bhne-font-large) !important;
}

.bhne-guides-title,
.bhne-page-title,
.bhne-active-title {
    font-size: var(--bhne-font-title) !important;
}

/* Notes and informational boxes */
.bhne-guide-note,
.bhne-note,
.bhne-leaderboard-note,
.bhne-info,
.bhne-alert,
.alert {
    font-size: var(--bhne-font-small) !important;
    line-height: 1.6 !important;
}

.bhne-guide-note,
.bhne-note,
.bhne-leaderboard-note,
.bhne-info {
    color: var(--bhne-text-secondary) !important;
}

/* Tables */
table th {
    font-size: var(--bhne-font-small);
    color: var(--bhne-text-main);
}

table td {
    font-size: var(--bhne-font-base);
    color: var(--bhne-text-secondary);
}

/* Buttons remain compact but readable */
button,
.btn,
.buttonlink,
.bhne-button,
.bhne-support-button {
    font-size: var(--bhne-font-small);
}

/*
 * Explicit corrections for the current Guides page.
 */
.bhne-guides-eyebrow {
    font-size: var(--bhne-font-base) !important;
    color: #f1d5d7 !important;
}

.bhne-guides-subtitle,
.bhne-path-text,
.bhne-section-text {
    font-size: var(--bhne-font-base) !important;
}

.bhne-guide-content p,
.bhne-guide-content li {
    font-size: var(--bhne-font-medium) !important;
    color: #495057 !important;
}

.bhne-guide-summary,
.bhne-guide-note,
.bhne-support-text {
    font-size: var(--bhne-font-small) !important;
}



/* =========================================================
 * Dashboard readability overrides
 * ========================================================= */

/* Red hero card: keep all important text bright and readable */
.bhne-dashboard-hero,
.bhne-dashboard-hero p,
.bhne-dashboard-hero span,
.bhne-dashboard-hero div {
    color: #ffffff;
}

.bhne-dashboard-eyebrow,
.bhne-server-label {
    font-size: 12px !important;
    color: #f3dfe1 !important;
    line-height: 1.45 !important;
}

.bhne-dashboard-subtitle {
    font-size: 14px !important;
    color: #ffffff !important;
    line-height: 1.65 !important;
}

.bhne-server-time {
    background: rgba(255, 255, 255, 0.14) !important;
    border-color: rgba(255, 255, 255, 0.38) !important;
}

.bhne-server-value {
    font-size: 14px !important;
    color: #ffffff !important;
    line-height: 1.45 !important;
}

/* Dashboard micro labels */
.bhne-section-kicker,
.bhne-metric-action,
.bhne-focus-label,
.bhne-panel-link,
.bhne-winner-rank,
.bhne-results-table th,
.bhne-status-pill,
.bhne-live-badge,
.bhne-next-badge {
    font-size: 12px !important;
}

/* Dashboard secondary content */
.bhne-metric-label,
.bhne-focus-type,
.bhne-setup-label,
.bhne-setup-note,
.bhne-quick-link,
.bhne-winner-name,
.bhne-winner-event,
.bhne-empty-small,
.bhne-empty-focus,
.bhne-results-table td {
    font-size: 13px !important;
    color: #50575e !important;
    line-height: 1.55 !important;
}

/* Stronger contrast for dashboard text */
.bhne-metric-label,
.bhne-focus-type,
.bhne-setup-label,
.bhne-setup-note,
.bhne-winner-name,
.bhne-winner-event,
.bhne-empty-small,
.bhne-empty-focus {
    color: #50575e !important;
}

.bhne-focus-label,
.bhne-results-table th {
    color: #5f676e !important;
}

.bhne-panel-link,
.bhne-metric-action,
.bhne-winner-rank {
    color: #8f1b23 !important;
}

/* Main card values remain compact but clearer */
.bhne-focus-value,
.bhne-panel-title,
.bhne-guide-name,
.bhne-site-name,
.bhne-data-value {
    color: #34393e !important;
}

.bhne-quick-link {
    color: #34393e !important;
}

/* Preserve white text inside the dashboard hero only */
.bhne-dashboard-hero .bhne-dashboard-title,
.bhne-dashboard-hero .bhne-dashboard-subtitle,
.bhne-dashboard-hero .bhne-dashboard-eyebrow,
.bhne-dashboard-hero .bhne-server-label,
.bhne-dashboard-hero .bhne-server-value {
    color: #ffffff !important;
}


/*
 * Mobile: remain readable without enlarging headings excessively.
 */
@media (max-width: 620px) {
    main p,
    article p,
    section p,
    .card p,
    .panel p,
    .bhne-page p,
    [class*="bhne-"][class*="-page"] p {
        font-size: var(--bhne-font-base) !important;
    }

    .bhne-guide-content p,
    .bhne-guide-content li {
        font-size: var(--bhne-font-base) !important;
    }

    .bhne-guides-title,
    .bhne-page-title,
    .bhne-active-title {
        font-size: var(--bhne-font-title) !important;
    }
}


/* =========================================================
 * Create Event readability overrides
 * ========================================================= */

.bhne-help,
.bhne-form-help,
.bhne-field-help,
.bhne-example,
.bhne-card-subtitle {
    font-size: 13px !important;
    color: #555d64 !important;
    line-height: 1.55 !important;
}

.bhne-site-option-name {
    font-size: 14px !important;
    color: #34393e !important;
    font-weight: 500 !important;
}

.bhne-site-option {
    color: #34393e !important;
}

.bhne-card-header,
.bhne-label {
    color: #34393e !important;
}

.bhne-select,
.bhne-input,
.bhne-textarea {
    font-size: 14px !important;
    color: #34393e !important;
    border-color: #cdd2d6 !important;
}

.bhne-select option {
    color: #34393e;
}

.bhne-wallet-label {
    font-size: 12px !important;
    color: #555d64 !important;
}

.bhne-wallet-balance {
    color: #34393e !important;
}


/* Final Create Event contrast pass */
.bhne-help,
.bhne-form-help,
.bhne-field-help,
.bhne-example,
.bhne-card-subtitle,
.bhne-section-header,
.bhne-section-label {
    color: #4f565d !important;
}

.bhne-card-header,
.bhne-section-title {
    color: #34393e !important;
    font-size: 14px !important;
    font-weight: 600 !important;
}
