.public-brand-footer{max-width:1600px;margin:34px auto 0;padding:22px clamp(16px,3vw,42px);border-top:1px solid color-mix(in srgb,var(--brand-text,#111827) 10%,transparent);display:flex;align-items:flex-start;justify-content:space-between;gap:24px;color:var(--brand-muted,#667085);font-size:12px;line-height:1.55}
.public-brand-footer-main{display:flex;align-items:flex-start;gap:14px;min-width:0}.public-brand-footer-main .brand-asset-box{max-width:120px!important;height:46px!important}.public-brand-footer-copy strong{display:block;color:var(--brand-text,#111827);font-size:13px}.public-brand-footer-copy span{display:block;margin-top:3px}.public-brand-footer-meta{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px 14px;text-align:right}.public-brand-footer-meta a{color:var(--brand-text,#111827);text-decoration:none;font-weight:650}.public-brand-footer-meta a:hover{color:var(--brand-accent)}.public-brand-footer-credit{width:100%;margin-top:5px;font-size:10px;color:var(--brand-muted,#667085)}
@media(max-width:720px){.public-brand-footer{flex-direction:column}.public-brand-footer-meta{justify-content:flex-start;text-align:left}.public-brand-footer-main{width:100%}}.live-platform-credit{position:fixed;right:14px;bottom:10px;z-index:90;padding:5px 8px;border-radius:999px;background:rgba(15,23,42,.72);color:#fff;font-size:9px;font-weight:700;letter-spacing:.04em;backdrop-filter:blur(8px);pointer-events:none}
/* WHITE LABEL LEGACY ACCENT OVERRIDES
   Presentation-only compatibility for older public/member/live components that predate theme tokens. */
.public-nav nav a.active,.public-nav nav a:hover,
.public-nav .navbar-nav .public-nav-signout button:hover,
.public-nav .navbar-nav .public-nav-signout button:focus{
    background:color-mix(in srgb,var(--brand) 9%,#fff)!important;
    color:var(--brand)!important;
}
.step-heading>span,.event-date,.tournament-date,.quick-grid a>span{
    background:color-mix(in srgb,var(--brand) 9%,#fff)!important;
    color:var(--brand)!important;
}
.public-event-card:hover,.product-card:hover{
    border-color:color-mix(in srgb,var(--brand) 42%,#d0d5dd)!important;
    box-shadow:0 8px 18px rgba(var(--brand-rgb),.08)!important;
}
.login-hero{
    background:radial-gradient(circle at 20% 25%,rgba(var(--brand-rgb),.30),transparent 35%),linear-gradient(145deg,var(--nav),var(--nav-2))!important;
}
.hero-badge,.brand-mark{box-shadow:0 20px 50px rgba(var(--brand-rgb),.22)!important}
.member-card-body p,
.live-header span,
.live-team small,
.live-queue>div>span,
.up-next-head div span,
.live-up-next>article>div span,
.live-brand-copy>span,
.live-status-icon,
.live-section-heading>div span,
.live-court-status,
.live-result-score small{
    color:var(--brand-accent)!important;
}
.openplay-display-page{
    background:radial-gradient(circle at 8% -10%,rgba(var(--brand-rgb),.12),transparent 26%),#07101f!important;
}
.openplay-display-page .live-brand-block>.brand-asset-fallback{
    background:linear-gradient(145deg,var(--brand),var(--brand-dark))!important;
    box-shadow:0 10px 25px rgba(var(--brand-rgb),.25)!important;
}
.openplay-display-page .live-up-next>article>div{
    background:linear-gradient(90deg,rgba(var(--brand-rgb),.18),#17243a)!important;
}
.live-court-status:before{background:var(--brand-accent)!important;box-shadow:0 0 0 4px rgba(var(--brand-accent-rgb),.12)!important}
/* PUBLIC TYPOGRAPHY NORMALIZATION 2026-10-03 */
.public-site,.login-page,.live-display,.member-card-wrap{
    font-family:var(--brand-font,-apple-system,BlinkMacSystemFont,"Segoe UI Variable","Segoe UI","Helvetica Neue",Arial,sans-serif)!important;
    font-synthesis:none;
    text-rendering:optimizeLegibility;
    -webkit-font-smoothing:antialiased;
    -moz-osx-font-smoothing:grayscale;
}
.public-site button,.public-site input,.public-site select,.public-site textarea,
.login-page button,.login-page input,.login-page select,.login-page textarea{
    font-family:inherit!important;
}
.public-site h1,.public-site h2,.public-site h3,.public-site h4,
.login-page h1,.login-page h2,
.live-display h1,.live-display h2,.live-display h3{
    font-weight:750;
    letter-spacing:-.025em;
}
.public-site strong,.public-site b{font-weight:700}
.public-site .public-kicker,.public-site .eyebrow,
.live-display .eyebrow{letter-spacing:.10em;font-weight:750}
/* PHASE 12 PUBLIC ACCESSIBILITY */
.public-site :where(a,button,input,select,textarea,summary,[tabindex]):focus-visible,
.login-page :where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{
    outline:3px solid rgba(var(--brand-accent-rgb),.28);
    outline-offset:2px;
}
.public-confirm-dialog:focus{outline:none}
.public-confirm-card .button{min-height:42px}
@media(prefers-reduced-motion:reduce){
    .public-site *, .public-site *::before, .public-site *::after,
    .login-page *, .login-page *::before, .login-page *::after,
    .live-display *, .live-display *::before, .live-display *::after{
        scroll-behavior:auto!important;
        animation-duration:.01ms!important;
        animation-iteration-count:1!important;
        transition-duration:.01ms!important;
    }
}
/* OPEN SANS PUBLIC HARD OVERRIDE 2026-10-03
   Older public styles declare element-level serif fonts. Force the product
   typography on public/customer surfaces so links, cards and controls do not
   fall back to Times New Roman. */
body.public-site,
body.public-site *,
body.login-page,
body.login-page *,
body.member-web-app,
body.member-web-app *,
body.openplay-display-page,
body.openplay-display-page *{
    font-family:"Open Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
}
/* PUBLIC SPORT HERO 2026-10-03 */
.public-sport-hero{
    width:100%;
    margin:0 0 24px;
    padding:34px 36px;
    border:1px solid color-mix(in srgb,var(--brand-text,#111827) 10%,transparent);
    border-radius:24px;
    background:var(--brand-surface,#fff);
    box-shadow:0 12px 32px rgba(15,23,42,.05);
}
.public-sport-kicker{
    display:inline-block;
    margin-bottom:12px;
    color:var(--brand-accent-dark,var(--brand-accent));
    font-size:11px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}
.public-sport-hero h1{
    max-width:980px;
    margin:0;
    color:var(--brand-text,#111827);
    font-size:clamp(38px,5vw,68px);
    line-height:.98;
    font-weight:800;
    letter-spacing:-.045em;
}
.public-sport-hero p{
    max-width:900px;
    margin:18px 0 0;
    color:var(--brand-muted,#667085);
    font-size:clamp(15px,1.35vw,19px);
    line-height:1.55;
}
.public-container>.public-sport-hero{
    margin-top:0;
}
@media(max-width:720px){
    .public-sport-hero{
        padding:24px 22px;
        border-radius:18px;
        margin-bottom:18px;
    }
    .public-sport-hero h1{
        font-size:clamp(30px,10vw,44px);
        line-height:1.02;
    }
    .public-sport-hero p{font-size:14px}
}

/* LOGO-ONLY PUBLIC FOOTER 2026-10-03 */
.public-brand-footer.public-brand-footer--logo-only{
    max-width:1600px;
    margin:34px auto 0;
    padding:22px clamp(16px,3vw,42px);
    display:flex;
    justify-content:center;
    align-items:center;
    text-align:center;
}
.public-brand-footer-center{
    width:100%;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:8px;
}
.public-brand-footer-center .brand-asset-box{
    margin:0 auto!important;
}
.public-brand-footer--logo-only .public-brand-footer-credit{
    width:auto;
    margin:0;
    text-align:center;
}

/* MEMBER AUTH OPEN SANS FIX 2026-10-03 */
body.staff-login-page,
body.staff-login-page *,
body.member-auth-page,
body.member-auth-page *{
    font-family:"Open Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
}
