/* Shared page/header standard for primary app areas.
   Canonical classes are site-*; older area-specific names below are compatibility aliases only. */

.site-page,
.ww-page,
.page-layout,
.allgames-page,
.courses-page,
.groups-page,
.help-page,
.profile-page,
.tournaments-page,
.tournament-page,
.tournament-dashboard,
.ti-page,
.tr-page,
.ts-page,
.tu-page,
.teams-page,
.tc-page,
.players-page,
.flights-page,
.sms-page {
    max-width: 1400px;
    margin-inline: auto;
    padding: 1rem 0 2rem;
}

.site-layout,
.page-layout {
    display: grid;
    align-items: stretch;
}

.site-main,
.page-main,
.event-main {
    min-width: 0;
}

.site-shell,
.ww-shell,
.page-card,
.content-card,
.allgames-shell,
.courses-shell,
.page-shell,
.group-shell,
.profile-shell,
.help-layout,
.tournaments-shell,
.tournament-shell {
    border-radius: 16px;
}

.site-header,
.site-page-header,
.ww-page-header,
.site-card-header,
.page-card-header,
.standard-card-header,
.event-card-header,
.allgames-header,
.courses-header,
.group-header-card,
.help-hero,
.profile-hero,
.tournaments-header,
.tournament-hero,
.td-hero,
.ti-hero,
.tr-hero,
.ts-success-hero,
.tu-hero,
.teams-hero,
.tc-hero,
.players-hero,
.flights-hero,
.sms-hero {
    align-items: flex-start !important;
    background: linear-gradient(180deg, rgba(0,0,0,.02), rgba(0,0,0,0)) !important;
    border: 1px solid rgba(0,0,0,.08) !important;
    border-radius: 18px !important;
    box-shadow: 0 10px 30px rgba(0,0,0,.06) !important;
    color: var(--dark-text, #595959) !important;
    display: flex;
    gap: 1rem !important;
    justify-content: space-between !important;
    margin-bottom: .75rem !important;
    min-height: 125px !important;
    overflow: hidden;
    padding: 1.5rem 1.5rem 1rem !important;
}

.site-eyebrow,
.ww-page-eyebrow,
.page-eyebrow,
.standard-eyebrow,
.event-eyebrow,
.courses-eyebrow,
.eyebrow,
.profile-eyebrow,
.td-kicker,
.ti-eyebrow,
.ti-kicker,
.tr-kicker,
.ts-badge,
.tournament-kicker,
.tu-kicker,
.teams-kicker,
.tc-kicker,
.players-kicker,
.flights-kicker,
.sms-kicker {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    color: var(--dark, var(--brand-primary, #008000)) !important;
    font-size: .72rem !important;
    font-weight: 700 !important;
    letter-spacing: .08em !important;
    line-height: 1.2 !important;
    margin: 0 0 .35rem !important;
    padding: 0 !important;
    text-transform: uppercase !important;
}

.site-title,
.site-page-title,
.ww-page-title,
.page-title,
.standard-title,
.site-card-title,
.event-card-title,
.courses-title,
.group-title,
.group-name,
.help-hero-title,
.profile-title,
.tournaments-title-wrap h2,
.tournament-hero-title,
.td-hero h1,
.ti-hero h1,
.ti-hero-title,
.ti-title,
.tr-hero-title,
.ts-success-hero h1,
.ts-title,
.tu-hero h1,
.teams-hero h1,
.tc-hero h1,
.players-hero h1,
.flights-hero h1,
.sms-hero h1 {
    color: var(--header, var(--dark-text, #595959)) !important;
    font-size: 1.45rem !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
    line-height: 1.15 !important;
    margin: 0 !important;
}

.site-subtitle,
.site-page-subtitle,
.ww-page-subtitle,
.page-subtitle,
.standard-subtitle,
.site-card-subtitle,
.event-card-subtitle,
.courses-subtitle,
.group-subtitle,
.help-hero-subtitle,
.profile-subtitle,
.tournaments-subtitle,
.tournament-hero-text,
.td-hero p,
.ti-hero p,
.ti-hero-subtitle,
.ti-subtitle,
.tr-hero-subtitle,
.ts-success-hero p,
.ts-subtitle,
.tu-hero p,
.teams-hero p,
.tc-hero p,
.players-hero p,
.flights-hero p,
.sms-hero p {
    color: var(--dark-text, #595959) !important;
    font-size: .95rem !important;
    line-height: 1.4 !important;
    margin: .25rem 0 0 !important;
    max-width: 850px;
    opacity: 1 !important;
}

.site-button-bar,
.site-page-actions,
.ww-page-actions,
.button-bar,
.page-button-bar,
.standard-button-bar,
.courses-header-actions,
.hero-actions,
.ti-hero-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: .5rem !important;
}

.site-header .btn,
.site-page-header .btn,
.ww-page-header .btn,
.site-card-header .btn,
.page-card-header .btn,
.standard-card-header .btn,
.event-card-header .btn,
.allgames-header .btn,
.courses-header .btn,
.group-header-card .btn,
.help-hero .btn,
.profile-hero .btn,
.tournaments-header .btn,
.tournament-hero .btn,
.td-hero .btn,
.ti-hero .btn,
.tr-hero .btn,
.tu-hero .btn,
.teams-hero .btn,
.tc-hero .btn,
.players-hero .btn,
.flights-hero .btn,
.sms-hero .btn,
.btn-create-tournament {
    border-radius: 12px !important;
    font-weight: 600;
    min-width: auto !important;
    padding: .38rem .75rem !important;
}

.site-header-top,
.event-header-top,
.page-header-top {
    align-items: flex-start;
    gap: 1rem;
}

.site-module-content,
.module-content {
    background: #fff;
    border: 1px solid rgba(0,0,0,.08);
    border-radius: 0 0 18px 18px;
    padding: 1.25rem;
}

.site-card,
.event-card,
.standard-card,
.page-card {
    background: #fff;
    border: 1px solid rgba(0,0,0,.08);
    border-radius: 18px;
    box-shadow: 0 10px 30px rgba(0,0,0,.06);
    overflow: hidden;
}

.event-hub .site-header,
.event-hub .site-card-header {
    display: block;
}

.event-hub .site-header > div,
.event-hub .site-card-header > div {
    width: 100%;
}

.event-hub .site-header .d-flex.align-items-center,
.event-hub .site-card-header .d-flex.align-items-center {
    gap: .75rem;
    flex-wrap: wrap;
}

.event-hub .site-subtitle,
.event-hub .site-card-subtitle {
    flex: 1 1 420px;
    margin-top: .45rem !important;
}

.event-hub .site-subtitle + .d-flex,
.event-hub .site-card-subtitle + .d-flex {
    margin-left: auto !important;
}

.site-header .subpill,
.site-card-header .subpill,
.event-card-header .subpill,
.allgames-header .subpill,
.courses-pill,
.summary-pill,
.panel-count {
    border-radius: 999px !important;
    font-size: .75rem !important;
    font-weight: 700 !important;
    padding: .3rem .6rem !important;
}

.allgames-subrow {
    margin-top: .55rem !important;
}

.allgames-shell,
.courses-list-panel,
.course-detail-panel,
.toolbar-card,
.section-card,
.content-card,
.help-nav-card,
.help-content-card,
.profile-photo-card,
.tournaments-shell,
.tournaments-table-wrap,
.td-panel,
.ti-panel,
.tr-card,
.verify-card,
.tu-panel,
.teams-panel,
.tc-panel,
.players-panel,
.flights-panel,
.sms-panel,
.page-card {
    border-color: var(--card-border, var(--banner-border)) !important;
    border-radius: 14px !important;
    box-shadow: 0 4px 14px rgba(0,0,0,.03) !important;
}

.ti-hero::after,
.site-header::after {
    display: none !important;
}

.site-header-main,
.td-hero-main,
.ti-title-wrap,
.site-header-content,
.ti-hero-content,
.tournaments-title-wrap {
    min-width: 0;
}

.site-header-content,
.ti-hero-content {
    width: 100%;
}

.td-signup,
.ti-signup-link {
    border-radius: 10px !important;
    box-shadow: 0 6px 18px rgba(0,0,0,.08) !important;
}

@media (max-width: 767.98px) {
    .site-page,
    .ww-page,
    .page-layout,
    .allgames-page,
    .courses-page,
    .groups-page,
    .help-page,
    .profile-page,
    .tournaments-page,
    .tournament-page,
    .tournament-dashboard,
    .ti-page,
    .tr-page,
    .ts-page,
    .tu-page,
    .teams-page,
    .tc-page,
    .players-page,
    .flights-page,
    .sms-page {
        padding: .75rem 0 1.5rem;
    }

    .site-header,
    .site-page-header,
    .ww-page-header,
    .site-card-header,
    .page-card-header,
    .standard-card-header,
    .event-card-header,
    .allgames-header,
    .courses-header,
    .group-header-card,
    .help-hero,
    .profile-hero,
    .tournaments-header,
    .tournament-hero,
    .td-hero,
    .ti-hero,
    .tr-hero,
    .ts-success-hero,
    .tu-hero,
    .teams-hero,
    .tc-hero,
    .players-hero,
    .flights-hero,
    .sms-hero {
        flex-direction: column;
        min-height: 0 !important;
        padding: 1rem !important;
    }

    .site-title,
    .site-page-title,
    .ww-page-title,
    .page-title,
    .standard-title,
    .site-card-title,
    .event-card-title,
    .courses-title,
    .group-title,
    .group-name,
    .help-hero-title,
    .profile-title,
    .tournaments-title-wrap h2,
    .tournament-hero-title,
    .td-hero h1,
    .ti-hero h1,
    .ti-hero-title,
    .ti-title,
    .tr-hero-title,
    .ts-success-hero h1,
    .ts-title,
    .tu-hero h1,
    .teams-hero h1,
    .tc-hero h1,
    .players-hero h1,
    .flights-hero h1,
    .sms-hero h1 {
        font-size: 1.3rem !important;
    }
}
